:root{--sf-img-0: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjIwIiB2aWV3Qm94PSIwIDAgMjQgMjAiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Im0wIDBoMjR2MjBoLTI0eiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Im0xOC41NzIxNTI1IDE1Ljg3MzEzMTRoLTIuMjEzNzUxdi0yLjE2MTAwNDNoMi4yMTM3NTF6bS0zLjI2NDc3MDMgMGgtMi4yMTQ5MDI2di0yLjE2MTAwNDNoMi4yMTQ5MDI2em0zLjEyNjU2OTItMTEuNTY5OTY0Mjl2NS44MjU0MDU5OSAxLjUyNTI3OTNoLTE2Ljg2NjI5MDQ1di0xLjUyNTI3OTMtNS44MjU0MDU5OXptLTYuNDc5MDk3MSAxMS41Njk5NjQyOWgtMTAuMzU0NDg1NzZ2LTIuMTE2MDg4OWgxMC4zNTQ0ODU3NnptLTExLjk1NDg1NDMtMTMuMDczMTMxNHY2Ljc0NDIxMjgzIDcuNzIyNDQ2MTdoMjB2LTcuNzIyNDQ2MTctNi43NDQyMTI4M3oiIGZpbGw9IiMzMzMiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgLTEgMCAxOC4wNjcpIi8+PHJlY3QgZmlsbD0iIzMzMyIgaGVpZ2h0PSIxMCIgcng9IjEiIHN0cm9rZT0iIzMzMyIgd2lkdGg9IjE0LjkwNiIgeD0iOCIgeT0iOSIvPjxjaXJjbGUgY3g9IjE1LjQ1MyIgY3k9IjE0IiBmaWxsPSIjZmZmIiByPSIzLjQ5MSIvPjxjaXJjbGUgY3g9IjE1LjQ1MyIgY3k9IjE0IiBmaWxsPSIjMzMzIiByPSIxLjYwNCIvPjwvZz48L3N2Zz4=");--sf-img-39: url("data:image/jpeg;base64,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");--sf-img-33: url("data:image/jpeg;base64,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");--sf-img-34: url("data:image/jpeg;base64,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");--sf-img-35: url("data:image/jpeg;base64,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");--sf-img-36: url("data:image/jpeg;base64,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");--sf-img-37: url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD//gA7Q1JFQVRPUjogZ2QtanBlZyB2MS4wICh1c2luZyBJSkcgSlBFRyB2NjIpLCBxdWFsaXR5ID0gODIK/9sAQwAGBAQFBAQGBQUFBgYGBwkOCQkICAkSDQ0KDhUSFhYVEhQUFxohHBcYHxkUFB0nHR8iIyUlJRYcKSwoJCshJCUk/9sAQwEGBgYJCAkRCQkRJBgUGCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQk/8AAEQgAlgCWAwEiAAIRAQMRAf/EAB8AAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKC//EALUQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+v/EAB8BAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKC//EALURAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/aAAwDAQACEQMRAD8A+qaKKKACiiigAqO5cx20rjqqEj8qkqrqriPTblz0WMmk9hrc8WvRvvZVz0Y5+tOCqi5qjHcGWeSQnlmJqSSbA5rwpO7PqIxskhlwjXU0UIOA7gE+g7n8q09Ow83yDaCflHoKyLCcXF5cuh5trWSXH5Ln/wAezV7SrtISjsQQBSS2BrV+R1AtykeT3qk+7zKfceI4FjCYHSqa6vbN8zOAPrVyt0MYqXVE0kBljZSSMjtXOXOsXXh2cC4YzWbnAfuh9D/jW3ca9ZRpkOvHvXPu/wDwkkk8arugAwx7VEkuhvTTS95aHSWWq2t/GrIwwR2rQiEbdCK8imlvfB97ht72jHg/3f8A61dno/iGO7iV1cEEZqoy7hKndXiztYdqEelWXdQmRXPRaiSOtTfbiRjNaqorGDou5NdSfP8AjRVGa5HUmisnLU2jHQ9fooor3T5YKKKKACqmroZNLulUZJjbH5VbpHUOpU9CMGk1dWGnZ3PnGGfbI8Z7MRTNRv1t4Sx9KseLbKTQ/Ed3buNo8wsvuD3rktdvz5TAN2rwnFqVj6qlJSipCab4hutNuri+hIYOjRMrdGU9RUEPjhGYxoWhOeEfnHsDWeHxaIvquT+NYE9lMZyYkJya1jFNWZlOfLK6O0uvFF3PblbeWMS9FLDIH4Vlppura2+J9TumB6hW2L+QpNE0O+lKk2srZPavQdF0SS2dfMEcQ6/OwqHJR0RondXMnw78OvnVp7qbZ3UMefxr03T9ItrC0W2giVI1HQUmnRWiKC13CD6bhWxEsLr+7kRvoQauMW9Wc1Wo9jk/EOgw3ts8bKG49K8pkN34TvyhLG1Lcf7P/wBavd7tUYEcGuL8VeHor6BsoM4qJRsXRqmfpPiFLmJTvBz71tx6grL1ryCdbzw9clFLGHPT0rf0rxR5qgE5rNxa2OtNSPQWuw1FYdvdmdAwOaKm47I+j6KKK+iPjwooooAKKKKAPPfi94T/ALW0g6tapm6tF+cAcvH/APWrwObS5rwEAEivr2RFlRo3UMrAgg9CK8D1vQl8OeJLmwK/ut2+Inuh5FedjYcvvo9fLq906bPK9rwMlvNhCCEy3AHalv8ATrqGfCvvQgMrx/dYeoxXQ+N9GSRmdRtDjII7GuS8AaFeahqt5ZT3c6pEoxtYgZLdcVlStKNztnLkdzb0me7jwBPIAOfvGtyC8A+aRmbPUk812eg/CzS5bRvtM87zZbEgbGPTj2rpvDPw90OG0iju7VLuUrh5JOcn+lHsm3oaPM6aj1PLW1O0xhFJbr94morfVLq4lI097x2XqIgzY/KvY/DHg/StF1C+SO2j2O/BcZIGOmfrmorafQND8RzaTbzW1tfXCC48gMAzoSRkDuMqelUqTtcylmau1FXPIG8R+KIbwWccV1JMeQkiHOKqS+P/ABBElwLnTXxbkq+V5z6V6VrXjrwno3iz+zr27hivPLAL7MhcnO1mA+X15ryTxr8VkuNS1Gx0PShdCVjHDMWP7xsYyExk89OeaXsm9iHi+bVxsZv/AAmVl4huFtpYtk0pwoK960tH8PY1YxEHayBsH1p3wx+Gt2m3W/EADXIJMaYGFP4en8/pXawWarr78fdjA/Wsa1ovlibUpN6tD7LTvs0WwjNFbLeXEBk4ornsbczPbaKKK+jPkwooooAKKKKACuA+LGimayg1iJMvbHZJj+6eh/A/zrv657xZrFrDaTacY1uJZ0Kuh6Kp7n3rGuouDUjfDuSqJxPFb7Tp9dtFjtk3v2PYfU1qeFPhfLpl1/akl1mZlwyJwmPf1NbttbR26LHEoSMdlq4+qPa2roDjAxlugrzKSUVqz2qjlLSJxHjn4rN8PNQW0ttLGoQtEHLmcx7WJIIxtPHGc5rkrX9pjXLeFUXw9ZswXBbzmAz64xV3Vbq21fxWEeBZ7OOJopHdQyljzg10ek6R4S8q2kn0fTvnG1w1uvy+5GPb9a2jVXUynheV6xbPNLX4u/EjW9XuLjT71bdLh93kR26OicAcbwT29eua2rH4YeLPFjSeJdTvXnugQN8zlXOD0XAwAD6YHNeoWup6JpFzL9hsoUhZQc28QTJ9O3tUUuqahqaSi3Z7SyzlyDyBxnnv64FVz3NKdKS1UbebOKufhfo66Z9tnvZRq0rZWMsGbB67x+fOe/epvDngKx0qQSGPdM3353GZDn+Eeg+lb1zqGl2LBbLdK4+UyNzv+grRsVlCefcf61uQv90f41E52Vjbk5fee/n+iLW1YohGihVUYAHasAIU1Z5COGAFb3LAmsy4ixNuriqO+o6aJWcE0VUklwcUVHMXY94oorh9Q16/07WL1IHwqSfdYZHTNfQVKihZs+ao0XVbSO4ornfD/i6PVZvslyiw3P8ADg/K/wBPQ10VVCakrompTlB8skFBIAyTgCorq6hsrd7idxHFGMsx7V534h8YXGskwWeYbMfe5+aT6+3tWdatGmtdy6NCVV6bHQ674uWMta6YweTo03VV+nqa5N4pH3Slizk7izHJJplimVDHoealvrtLeElsYArzKlWVR3kepSpKn7sStLcJbIWcjiuJ17xMmo3baTb3Qgmkicxt23AcfrXofhbwfJ4lcalqgdNOzmKHODP7n0X+f06+Y/FzwNJo3iFGs1aOPO+ErxhScgfgcinGlLlU5bG0a8FP2cfiMDSL9bFPs0ikSKcNk5JbvzWwNUYFCuNoFcvPBeTkM8P77u44JqSDTtZmIVI2I+lJyR60MQmtTpv7dMSnPPB61BLrt1fSLDFvlfAAROAPr6fWorLwTq15g3Bbae2cV1uk+EGsEA2hf90UufsZ1K8ehDouktCRc3JV5v4VH3U/+vXRQguBkc06GwWEAck1ZjjVDmobZxSm5O7EYbIzWXdHqau3k4VcZrFu7kKpyaymyoIrXEuGorJu9QUN96iosa3PpquC8YRLb66zAj9/Erke4+X+grva8+8Zy+b4lEYHMcCj9Sf617uJ+A+ewX8Q52YvbTrNGxR0IZWHY16NH4ss10a3vpnBllTPlJ94sOD9BkGvPbiMTMEz06kVZgtl2hUGAK4KdaVO/KeliKUKtr9BfEGv3usTDzjst1OVhTp+Pqaw1jJIMreVGvIx3HtXQSWiLgnqKzbtreH55ChVeQrCuefNJ3kzWnyxXLFE9veFbczSLsU8gH0q34W0GTxbefbLpWGlQt0PH2hh/CP9kdz+HriDw14eufGVz59zvg0eI4JX5TOR/Cp9PU/gPb1S2tobOCO3t4kihjUKiIMBQOwrrw2Hc/ent+ZyYrEKneEN/wAv+CPVQihVAVQMADoBXG/FHQhqmiLdogMto2Sf9g9f1x+tdnTJoY7iF4ZVDRyKVZT3Br0ZwUouLPLpzcJKSPnuOyt3P3Fz3rWs7aOLbtAxmovFejTeFNaaCQN9nl+aGUjhx/iO9Mtb5GAJbP414couLsz6WMlOKkjbhk2f0q7HcqTk449axVvEP8WKk80MM+YBVRnYzcLmlPcIxwpqrPcCJMk81Re9SHJLjFcxrvilEDJG25unFKUrlRpmjqmsojEbq5rUNd3AgH8KwLrVpJ3JLEk1VzJMeTxUcvc2SLNzfvK+QSfpRSwWmRnFFO6HY+wL29g0+3ae4cIi/rXmOoTvqeqXN2u4CZs89QvQCn6z4gk17UySStujERJnjHr9TT/L2AAfnXViMR7R8sdkeTh8P7Jc0t2JFarGvqaVplhGeKSWV0XgZrndZv7s5igt5Wdu4XgVz35TpUXJ2J9X8SQ2qnLgH61oeCfB1x4rcarq6yR6aDmKI/Kbj39l/nXNeGNCt7nXoJddBS1Q7338hschcDnk163P440q2QR2sUsoUYUKuxQPTn/CtsPGEnz1H8iMVKUFyUVq+p0UMMdvEkMMaxxoAqoowFA7AU+uEu/H17ICLa2hhHq2WI/lVSLx3rED5dYbkd0Kbc/Qiu763TWh5qwVVq56NUVzd29nGZLiaOJB1LsBXjWt/FvWWd4ohHaY4wq5P5muF1bxZf6kxa4upZSf7zE0pYuP2dRxwU38Wh6/438b+FtSsJNMmhOpFvulPl2N2YN2P0rzWHwnrElu1zp08ckQ5EcrbXA+vQ/pXO6bc77lWkORmvRv7ais9KXawHy1zzaqu8jrpuVBWgcFqGpalpDbb2LySO5YEfoaoHx2VGPtC/gaPGl+t/AXBz1rz4Kd3pWPs4ndCq2tUdhe+Mp7kFUdiD36VmG6luDl3NZUSmtC2UnAqXFI2jK5ZiTca0LaLJ6VDbw8dK07WHkcVm2aJFm3g+XgUVft4SV4FFZNjO308EBHbsOtar3yxrgnJ7AdaxjP5aKBwAKSzuN16m7kdatOxxNczNfyrqcbifLU9BjJqvLbMg3SStjOK0p7lY4xg8459qy7mXzkKg9aqSQQHKigfKM+9EQYk7gBTHuBFGFOBgVTm1mC3Ul5FGPeiyW4tZbI1SEAqnPdRwnIIyK5TVvHltbhgkg47k1hf8JJd35MgWURHo/lnb+fShy00NYUX9os+I51n1GVkxj2rAk+9WixMoLk5JNVZIauGxFRakMM5iIx1p2reIJVtCgc5PaoZ/3YJrGuUedyTnFbJmHKOGom5tmjc5NZ8MO5qHjaF8jpV2wi8w5pSZrBCw2vTitC2tORgVYhtOBxVyKHZjArFyOqMR9taVp29sFxUVuAMHvWhBz2rJs0Rct4QFoqe3XK0VBLZfmfGB1Jq1ZQeXIGPXrVJV8yVSema1hwFq1qcuxZkge62gZx3qQ2Cxp81PtZwi4q4kKXB5OfYVqlcyc3t0OfvoBICoOc8VkR+E9OIJmSWfJziSRiB+Ga63UbVYEJGM47Vh/acOVJqJKz1NYS00KqaDpds2+Kxt1cfxBBn86leJCpXaMelTGVTyTVK71G2t87pFH40hptnN63ZJZ3AKACN+QPQ96y3AxV/WdQF/KrRq3lrwD2NUMFqqL0KcdSnLD5hqBrEAZxWssOR0pwt93GKfMHIcxeWGRkCpNGsyzlcdDW9Jp+49KsaTpRjuMleDQ56DULO4sFgdoyKk+wsDwK3Y7TaelTC0B6is9y1IwUtiB0qxApDAEVqtaY6CmR2Z8wVLKUiW3jOzpRWhDb7VHFFIlyCCMFc1YLEgH0oorSBzTLELnbmrdnM4y2T9KKKaYnsRX0zzsVzjHrXM61cnS7We4C7zGhbHTNFFTPc0guhyOianrniu4liS4gs4YyA5GWbn0HH867PT/C1haDzZvMvJv785z+Q6UUVckk9CpSfQuXEcUiGJo1KdCpHFcZd2i297JEv3Vbj6UUVI4j1iFTJbqaKKhs0Rat7RWbmta2s41GcCiihCkSKgxmnY4xRRVEiMAaltoQTk0UVLG9jQSMY6UUUVRif//Z");--sf-img-38: url("data:image/jpeg;base64,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");--sf-img-40: url("data:image/jpeg;base64,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")}

:root{--wm-toolbar-height:65px}#wm-ipp-base{padding:0;margin:0;border:none;background:none transparent}#wm-ipp{z-index:2147483647}#wm-ipp,#wm-ipp *{font-family:Lucida Grande,Helvetica,Arial,sans-serif;font-size:12px;line-height:1.2;letter-spacing:0;width:auto;height:auto;max-width:none;max-height:none;min-width:0!important;min-height:0;outline:none;float:none;text-align:left;border:none;color:#000;text-indent:0;position:initial;background:none}#wm-ipp div,#wm-ipp canvas{display:block}#wm-ipp div,#wm-ipp tr,#wm-ipp td,#wm-ipp a,#wm-ipp form{padding:0;margin:0;border:none;border-radius:0;background-color:transparent;background-image:none;height:auto}#wm-ipp table{border:none;border-collapse:collapse;margin:0;padding:0;width:auto;font-size:inherit}#wm-ipp form input{padding:1px!important;height:auto;display:inline;margin:0;color:#000;background:none #fff;border:1px solid #666}#wm-ipp form input[type=submit]{padding:0 8px!important;margin:1px 0 1px 5px!important;width:auto!important;border:1px solid #000!important;background:#fff!important;color:#000!important}#wm-ipp form input[type=submit]:hover{background:#eee!important;cursor:pointer!important}#wm-ipp form input[type=submit]:active{transform:translateY(1px)}#wm-ipp a{display:inline}#wm-ipp a:hover{text-decoration:underline}#wm-ipp a.wm-btn:hover{text-decoration:none;color:#ff0!important}#wm-ipp a.wm-btn:hover span{color:#ff0!important}#wm-ipp #wm-ipp-inside{margin:0 6px;border:5px solid #000;border-top:none;background-color:rgba(255,255,255,0.9);-moz-box-shadow:1px 1px 4px #333;-webkit-box-shadow:1px 1px 4px #333;box-shadow:1px 1px 4px #333;border-radius:0 0 8px 8px}#wm-ipp #wm-logo{padding:0 10px;vertical-align:middle;min-width:100px;flex:0 0 100px}#wm-ipp .c{padding-left:4px}#wm-ipp .c .u{margin-top:4px!important}#wm-ipp .n{padding:0 0 0 5px!important;vertical-align:bottom}#wm-ipp .n a{text-decoration:none;color:#33f;font-weight:bold}#wm-ipp .n .b{padding:0 6px 0 0!important;text-align:right!important;overflow:visible;white-space:nowrap;color:#99a;vertical-align:middle}#wm-ipp .n .y .b{padding:0 6px 2px 0!important}#wm-ipp .n .c{background:#000;color:#ff0;font-weight:bold;padding:0!important;text-align:center}#wm-ipp .n td.f{padding:0 0 0 6px!important;text-align:left!important;overflow:visible;white-space:nowrap;color:#99a;vertical-align:middle}#wm-ipp .n tr.m td{text-transform:uppercase;white-space:nowrap;padding:2px 0}#wm-ipp .c .s{padding:0 5px 0 0!important;vertical-align:bottom}#wm-ipp #wm-nav-captures{white-space:nowrap}#wm-ipp .c .s a.t{color:#33f;font-weight:bold;line-height:1.8}#wm-ipp .c .s div.r{color:#666;font-size:9px;white-space:nowrap}#wm-ipp .c .k{padding-bottom:1px}#wm-ipp .c .s{padding:0 5px 2px 0!important}#wm-ipp td#displayMonthEl{padding:2px 0!important}#wm-ipp td#displayYearEl{padding:0 0 2px 0!important}div#wm-ipp-sparkline{white-space:nowrap;background-color:#fff;cursor:pointer;line-height:0.9}#wm-sparkline-canvas{position:relative;z-index:9012;max-width:none}#wm-ipp-sparkline div.yt{position:absolute;z-index:9010!important;background-color:#ff0!important;top:0}#wm-ipp-sparkline div.mt{position:absolute;z-index:9013!important;background-color:#ec008c!important;top:0}#wm-ipp .r{margin-left:4px}#wm-ipp .r a{color:#33f;border:none;position:relative;background-color:transparent;background-repeat:no-repeat!important;background-position:100% 100%!important;text-decoration:none}#wm-ipp #wm-capinfo{border-radius:0 0 4px 4px}#wm-ipp #wm-expand{right:1px;bottom:-1px;color:#ffffff;background-color:#666!important;padding:0 5px 0 3px!important;border-radius:3px 3px 0 0!important}#wm-ipp #wm-expand span{color:#ffffff}#wm-ipp #wm-expand #wm-expand-icon{display:inline-block;transition:transform 0.5s;transform-origin:50% 45%}#wm-ipp #wmtb{text-align:right}#wm-ipp #wmtb #wmtbURL{width:calc(100% - 45px)}#wm-ipp #wm-graph-anchor{border-right:1px solid #ccc}@media (max-width:414px){#wm-ipp .xxs{display:none!important}}@media (min-width:1055px){#wm-ipp #wm-graph-anchor{display:block!important}}@media (max-width:1054px){#wm-ipp #wm-graph-anchor{display:none!important}}@media (max-width:1163px){#wm-logo{display:none!important}}#wm-btns{white-space:nowrap;margin-top:-2px}#wm-btns #wm-save-snapshot-open{margin-right:7px;top:-6px}#wm-btns #wm-sign-in{box-sizing:content-box;margin-right:7px;top:-8px;border:2px #000 solid;border-radius:14px;padding-right:2px;padding-bottom:2px;width:11px;height:11px}#wm-btns #wm-sign-in>.iconochive-person{font-size:12.5px}#wm-ipp #wm-share{display:flex;align-items:flex-end;justify-content:space-between}#wm-share>#wm-screenshot{display:inline-block;margin-right:3px}#wm-share>#wm-video{display:inline-block;margin-right:3px;visibility:hidden}#wm-video>.iconochive-movies{color:#000;display:inline-block;font-size:150%;margin-bottom:2px}#wm-btns #wm-save-snapshot-in-progress{font-size:160%;opacity:0.5;position:relative;margin-right:7px;top:-5px}.wm-icon-screen-shot{background:var(--sf-img-0) no-repeat!important;background-size:contain!important;width:22px!important;height:19px!important;display:inline-block}#donato{border-bottom:1px solid #999!important}#donato #donato-base{width:100%;height:100%;margin:0;padding:0;position:absolute;z-index:2147483639}

@font-face{font-family:"Iconochive-Regular";src:url(data:font/woff;base64,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)format("woff");font-weight:normal;font-style:normal}[class^="iconochive-"]{font-family:"Iconochive-Regular"!important;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.iconochive-movies:before{content:"🎞"}.iconochive-web:before{content:"🗔"}.iconochive-question:before{content:"⍰"}.iconochive-person:before{content:"👤"}.iconochive-down-solid:before{content:"▾"}.iconochive-remove-circle:before{content:"❎"}.iconochive-twitter:before{content:"🐦"}.iconochive-facebook:before{content:"f"}

@-webkit-keyframes cf7ic-load{0%,80%,100%{box-shadow:0 2.5em 0-1.3em}40%{box-shadow:0 2.5em 0 0}}@keyframes cf7ic-load{0%,80%,100%{box-shadow:0 2.5em 0-1.3em}40%{box-shadow:0 2.5em 0 0}}:where(.wp-block-button__link){border-radius:9999px;box-shadow:none;padding:calc(.667em + 2px) calc(1.333em + 2px);text-decoration:none}:where(.wp-block-calendar table:not(.has-background) th){background:#ddd}@media (min-width:782px){}@media (max-width:781px){}@media (min-width:782px){}:where(.wp-block-columns){margin-bottom:1.75em}:where(.wp-block-columns.has-background){padding:1.25em 2.375em}:where(.wp-block-post-comments input[type=submit]){border:none}@supports (position:sticky){.wp-block-cover-image:after,.wp-block-cover:after{content:none}}@supports (-webkit-touch-callout:inherit){.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax,.wp-block-cover__image-background.has-parallax,video.wp-block-cover__video-background.has-parallax{background-attachment:scroll}}@media (prefers-reduced-motion:reduce){}:where(.wp-block-cover-image:not(.has-text-color)),:where(.wp-block-cover:not(.has-text-color)){color:#fff}:where(.wp-block-cover-image.is-light:not(.has-text-color)),:where(.wp-block-cover.is-light:not(.has-text-color)){color:#000}:where(.wp-block-file){margin-bottom:1.5em}:where(.wp-block-file__button){border-radius:2em;display:inline-block;padding:.5em 1em}:where(.wp-block-file__button):is(a):active,:where(.wp-block-file__button):is(a):focus,:where(.wp-block-file__button):is(a):hover,:where(.wp-block-file__button):is(a):visited{box-shadow:none;color:#fff;opacity:.85;text-decoration:none}@media (min-width:600px){}@media (min-width:600px){}@supports ((-webkit-mask-image:none) or (mask-image:none)) or (-webkit-mask-image:none){.wp-block-image.is-style-circle-mask img{border-radius:0;-webkit-mask-image:url(data:image/svg+xml;utf8,<svg\ viewBox=\"0\ 0\ 100\ 100\"\ xmlns=\"http://www.w3.org/2000/svg\"><circle\ cx=\"50\"\ cy=\"50\"\ r=\"50\"\/><\/svg>);mask-image:url(data:image/svg+xml;utf8,<svg\ viewBox=\"0\ 0\ 100\ 100\"\ xmlns=\"http://www.w3.org/2000/svg\"><circle\ cx=\"50\"\ cy=\"50\"\ r=\"50\"\/><\/svg>);mask-mode:alpha;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}}@media (prefers-reduced-motion:no-preference){}@keyframes turn-on-visibility{0%{opacity:0}to{opacity:1}}@keyframes turn-off-visibility{0%{opacity:1;visibility:visible}99%{opacity:0;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes lightbox-zoom-in{0%{transform:translate(calc(-50vw + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale))}to{transform:translate(-50%,-50%) scale(1)}}@keyframes lightbox-zoom-out{0%{transform:translate(-50%,-50%) scale(1);visibility:visible}99%{visibility:visible}to{transform:translate(calc(-50vw + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale));visibility:hidden}}:where(.wp-block-latest-comments:not([style*=line-height] .wp-block-latest-comments__comment)){line-height:1.1}:where(.wp-block-latest-comments:not([style*=line-height] .wp-block-latest-comments__comment-excerpt p)){line-height:1.8}@media (min-width:600px){}ul{box-sizing:border-box}@media (max-width:600px){}@media (min-width:782px){}@media (min-width:782px){}:where(.wp-block-navigation.has-background .wp-block-navigation-item a:not(.wp-element-button)),:where(.wp-block-navigation.has-background .wp-block-navigation-submenu a:not(.wp-element-button)){padding:.5em 1em}:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item a:not(.wp-element-button)),:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu a:not(.wp-element-button)),:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu button.wp-block-navigation-item__content),:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-pages-list__item button.wp-block-navigation-item__content){padding:.5em 1em}@media (min-width:782px){}@keyframes overlay-menu__fade-in-animation{0%{opacity:0;transform:translateY(.5em)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){}@media (min-width:600px){}@media (min-width:600px){}@media (min-width:782px){}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}:where(.wp-block-post-excerpt){margin-bottom:var(--wp--style--block-gap);margin-top:var(--wp--style--block-gap)}:where(.wp-block-preformatted.has-background){padding:1.25em 2.375em}:where(.wp-block-pullquote){margin:0 0 1em}@media (min-width:600px){}@media (max-width:600px){}@media (min-width:600px){}:where(.wp-block-search__button){border:1px solid #ccc;padding:6px 10px}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper){border:1px solid #949494;box-sizing:border-box;padding:4px}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) :where(.wp-block-search__button){padding:4px 8px}@media (prefers-reduced-motion:reduce){}:where(.wp-block-term-description){margin-bottom:var(--wp--style--block-gap);margin-top:var(--wp--style--block-gap)}:where(pre.wp-block-verse){font-family:inherit}@supports (position:sticky){.wp-block-video [poster]{object-fit:cover}}.entry-content{counter-reset:footnotes}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.screen-reader-text{word-wrap:normal!important;-webkit-clip-path:inset(50%)}.screen-reader-text:focus{clip:auto!important;background-color:#ddd;-webkit-clip-path:none;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style*=border-top-color]){border-top-style:solid}html :where([style*=border-right-color]){border-right-style:solid}html :where([style*=border-bottom-color]){border-bottom-style:solid}html :where([style*=border-left-color]){border-left-style:solid}html :where([style*=border-width]){border-style:solid}html :where([style*=border-top-width]){border-top-style:solid}html :where([style*=border-right-width]){border-right-style:solid}html :where([style*=border-bottom-width]){border-bottom-style:solid}html :where([style*=border-left-width]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0}}@media (prefers-reduced-motion:reduce){}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes blink{from{opacity:0}50%{opacity:1}to{opacity:0}}/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-bolt:before{content:""}.fa-pause:before{content:""}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;src:url(data:text/html;base64,DQo8IURPQ1RZUEUgaHRtbD4NCjxodG1sIGxhbmc9ImlkLUlEIj4NCg0KPGhlYWQ+DQogICAgPHN0eWxlPg0KICAgICAgICBhLA0KICAgICAgICBodG1sIHsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24sDQogICAgICAgIHN1cCB7DQogICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUNCiAgICAgICAgfQ0KDQogICAgICAgIGJvZHksDQogICAgICAgIGJ1dHRvbiwNCiAgICAgICAgZmlndXJlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMA0KICAgICAgICB9DQoNCiAgICAgICAgYm9keSwNCiAgICAgICAgaHRtbCB7DQogICAgICAgICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7DQogICAgICAgICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tdHdpdHRlcjpiZWZvcmUsDQogICAgICAgIC5scWQgew0KICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIC5ub3RpZiwNCiAgICAgICAgLm1lZGlhX19saW5rOmJlZm9yZSwNCiAgICAgICAgLm5hdmJhci1maXJzdCAubmF2X19pdGVtLA0KICAgICAgICAubmF2YmFyLXNlY29uZCAubmF2X19pdGVtLA0KICAgICAgICAudGFibGUtd3JhcCB0ZCB7DQogICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLA0KICAgICAgICAubmF2YmFyLXNlY29uZCAubmF2IGEsDQogICAgICAgIHRhYmxlIHRkIHsNCiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3ANCiAgICAgICAgfQ0KDQogICAgICAgIGEsDQogICAgICAgIGlucyB7DQogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIGFydGljbGUsDQogICAgICAgIGZpZ2NhcHRpb24sDQogICAgICAgIGZpZ3VyZSwNCiAgICAgICAgZm9vdGVyLA0KICAgICAgICBoZWFkZXIsDQogICAgICAgIG5hdiB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jaw0KICAgICAgICB9DQoNCiAgICAgICAgaHRtbCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24sDQogICAgICAgIGh0bWwgew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsDQogICAgICAgIH0NCg0KICAgICAgICBhIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IDAgMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dCwgb3BhY2l0eSAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIC4zcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQsIG9wYWNpdHkgLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIC4zcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQsIG9wYWNpdHkgLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dCwgb3BhY2l0eSAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3MgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgYTphY3RpdmUsDQogICAgICAgIGE6Zm9jdXMsDQogICAgICAgIGE6aG92ZXIsDQogICAgICAgIGJ1dHRvbjpmb2N1cyB7DQogICAgICAgICAgICBvdXRsaW5lOiAwDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIHN0cm9uZywNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmQtY2xvc2UsDQogICAgICAgIC5xdW90ZXNpc2lwIGJsb2NrcXVvdGUsDQogICAgICAgIHN0cm9uZyB7DQogICAgICAgICAgICBmb250LXdlaWdodDogNzAwDQogICAgICAgIH0NCg0KICAgICAgICBzdXAgew0KICAgICAgICAgICAgZm9udC1zaXplOiA3NSU7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHRvcDogLS41ZW0NCiAgICAgICAgfQ0KDQogICAgICAgIGltZyB7DQogICAgICAgICAgICBib3JkZXI6IDA7DQogICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24gew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7DQogICAgICAgICAgICBmb250LXNpemU6IDEwMCU7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsOw0KICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgYXBwZWFyYW5jZTogYnV0dG9uOw0KICAgICAgICAgICAgDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19kYXRlLA0KICAgICAgICAuZGV0YWlsX19tZWRpYS1jYXB0aW9uLA0KICAgICAgICAuZm9vdGVyIC5uYXYsDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbSwNCiAgICAgICAgLnF1b3Rlc2lzaXAsDQogICAgICAgIGJvZHkgew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IEhlbHZldGljYS1GRiwgQXJpYWwsIFRhaG9tYSwgc2Fucy1zZXJpZg0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0biwNCiAgICAgICAgYm9keSB7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS40DQogICAgICAgIH0NCg0KICAgICAgICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIgew0KICAgICAgICAgICAgYm9yZGVyOiAwOw0KICAgICAgICAgICAgcGFkZGluZzogMA0KICAgICAgICB9DQoNCiAgICAgICAgdGFibGUgew0KICAgICAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsNCiAgICAgICAgICAgIGJvcmRlci1zcGFjaW5nOiAwDQogICAgICAgIH0NCg0KICAgICAgICA6cm9vdCB7DQogICAgICAgICAgICAtLWt1bGVyLTE6ICMyMTQwOWE7DQogICAgICAgICAgICAtLWt1bGVyLTI6ICMwMDdjYmQ7DQogICAgICAgICAgICAtLWt1bGVyLTM6ICNlZjY3MmY7DQogICAgICAgICAgICAtLWt1bGVyLTE6ICM1NjJiNzc7DQogICAgICAgICAgICAtLWt1bGVyLTI6ICM4MTJlODg7DQogICAgICAgICAgICAtLWt1bGVyLTM6ICNhYTI0OGMNCiAgICAgICAgfQ0KDQogICAgICAgIGJvZHkgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7DQogICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOw0KICAgICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQNCiAgICAgICAgfQ0KDQogICAgICAgICosDQogICAgICAgIDphZnRlciwNCiAgICAgICAgOmJlZm9yZSB7DQogICAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94DQogICAgICAgIH0NCg0KICAgICAgICAuY2xlYXJmaXg6YWZ0ZXIsDQogICAgICAgIC5jbGVhcmZpeDpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIiAiOw0KICAgICAgICAgICAgZGlzcGxheTogdGFibGUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jbGVhcmZpeDphZnRlciB7DQogICAgICAgICAgICBjbGVhcjogYm90aA0KICAgICAgICB9DQoNCiAgICAgICAgYTpob3ZlciB7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSkNCiAgICAgICAgfQ0KDQogICAgICAgIHAgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIGlucyB7DQogICAgICAgICAgICBkaXNwbGF5OiBjb250ZW50cw0KICAgICAgICB9DQoNCiAgICAgICAgdWwgew0KICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMjRweDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICB1bCBsaSB7DQogICAgICAgICAgICBwYWRkaW5nOiA4cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgZm9vdGVyLA0KICAgICAgICBoZWFkZXIgew0KICAgICAgICAgICAgZGlzcGxheTogdGFibGU7DQogICAgICAgICAgICB3aWR0aDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6MTAyNHB4KSB7DQoNCiAgICAgICAgICAgIGZvb3RlciwNCiAgICAgICAgICAgIGhlYWRlciB7DQogICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIGgxLA0KICAgICAgICBoMiwNCiAgICAgICAgaDMsDQogICAgICAgIGg0LA0KICAgICAgICBoNSwNCiAgICAgICAgaDYgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zDQogICAgICAgIH0NCg0KICAgICAgICBoMSB7DQogICAgICAgICAgICBmb250LXNpemU6IDQwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLS1tZCwNCiAgICAgICAgaDIgew0KICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4DQogICAgICAgIH0NCg0KICAgICAgICBoMyB7DQogICAgICAgICAgICBmb250LXNpemU6IDI4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIGg0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgaDUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4DQogICAgICAgIH0NCg0KICAgICAgICBoNiB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb250LXh4cyB7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvbnRhaW5lciB7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygyNnB4IC8gMS40NDQ0NDQ0NDQ0NDQpOw0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygyNnB4IC8gMS40NDQ0NDQ0NDQ0NDQpOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8NCiAgICAgICAgfQ0KDQogICAgICAgIC5ncmlkLXJvdyB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTI2cHggLyA0LjMzMzMzMzMzMzMpOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0yNnB4IC8gNC4zMzMzMzMzMzMzKQ0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94LA0KICAgICAgICAudGFibGUtd3JhcCB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm5vLWd1dHRlciB7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5vLWd1dHRlcj5bY2xhc3MqPWNvbHVtbi1dIHsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2x1bW4tNiwNCiAgICAgICAgLmNvbHVtbi1hdXRvIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDI2cHggLyA0LjMzMzMzMzMzMzMpOw0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygyNnB4IC8gNC4zMzMzMzMzMzMzKQ0KICAgICAgICB9DQoNCiAgICAgICAgLmNvbHVtbi1hdXRvIHsNCiAgICAgICAgICAgIC1tcy1mbGV4OiAwIDAgYXV0bzsNCiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvOw0KICAgICAgICAgICAgd2lkdGg6IGF1dG87DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2x1bW4tNiB7DQogICAgICAgICAgICAtbXMtZmxleDogY2FsYyg2IC8gMTIpOw0KICAgICAgICAgICAgZmxleDogMCAwIGNhbGMoMTAwJSAvICgxMiAvIDYpKTsNCiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC8gKDEyIC8gNikpDQogICAgICAgIH0NCg0KICAgICAgICB0YWJsZSB0ZCB7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjNiM2IzOw0KICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZS13cmFwIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsNCiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaA0KICAgICAgICB9DQoNCiAgICAgICAgLmxxZCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tZGVmYXVsdCwNCiAgICAgICAgYnV0dG9uIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxxZCBpbWcgew0KICAgICAgICAgICAgZGlzcGxheTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94IHsNCiAgICAgICAgICAgIGhlaWdodDogMDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAuNHMgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLA0KICAgICAgICAuaWNvbiB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94LS0xNi05LA0KICAgICAgICAucmF0aW9ib3gucmF0aW9fMTZfOSB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlDQogICAgICAgIH0NCg0KICAgICAgICAucmF0aW9ib3ggaWZyYW1lIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAucmF0aW9ib3gtLTQtMyB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzUlDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24gew0KICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtby10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4gew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24sDQogICAgICAgIC5pY29uLWl0ZW0gew0KICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tc20gew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgcGFkZGluZzogY2FsYygxMnB4IC8gMykgMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tbWQgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDZweDsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG46aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBvcGFjaXR5OiAuOA0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tb3V0bGluZSB7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwOw0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAwIDAgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24gew0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLS14cyB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4gLmljb24gew0KICAgICAgICAgICAgbWFyZ2luOiAwIDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudCwNCiAgICAgICAgLmxpc3QtY29udGVudF9faXRlbTpsYXN0LWNoaWxkIHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWFycm93LXJpZ2h0OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDY5Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tY2hldnJvbi1kb3duOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDZkIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tYXJyb3ctdXA6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcNmYiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1saXZlLXR2OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDc1Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tY2xvc2U6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcNGYiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1ub3RpZmljYXRpb24tYmc6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcMjIiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1jb21tZW50OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDJkIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tbGluazpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlw3ZSINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWZhY2Vib29rOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDYxIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tdHdpdHRlcjpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICB3aWR0aDogMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogMThweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMTgnIGhlaWdodD0nMTcnIHZpZXdCb3g9JzAgMCAxOCAxNycgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHBzOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J00wLjQyNTk4NiAwLjg3NzQ0MUw2Ljk5NDM3IDkuNjU1OTFMMC4zOTA2MjUgMTYuNzkwMUgxLjg3NThMNy42NTczOSAxMC41Mzk5TDEyLjMzMzkgMTYuNzkwMUgxNy4zOTA2TDEwLjQ1OTggNy41MTY1NUwxNi42MDM4IDAuODc3NDQxSDE1LjExODdMOS43OTY3NiA2LjYzMjUxTDUuNDkxNTEgMC44Nzc0NDFIMC40MzQ4MjdIMC40MjU5ODZaTTIuNjA5NTUgMS45NzM2NEg0LjkzNDU3TDE1LjE5ODIgMTUuNjkzOUgxMi44NzMyTDIuNjA5NTUgMS45NzM2NFonIGZpbGw9J3doaXRlJy8lM0UlM0Mvc3ZnJTNFJTBBIik7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWluc3RhZ3JhbTpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlxlMDA2Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tbGlua2VkaW46YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcZTAwNyINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLXlvdXR1YmU6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcZTAwOCINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLXdoYXRzYXBwOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXGUwMGMiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi10ZWxlZ3JhbTpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlxlMDBlIg0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSwNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSB7DQogICAgICAgICAgICBsZWZ0OiAtMTAwJTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIG9wYWNpdHk6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5jb3B5X3VybCAubm90aWYgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgcGFkZGluZzogOHB4Ow0KICAgICAgICAgICAgbWFyZ2luOiAwOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgei1pbmRleDogNTsNCiAgICAgICAgICAgIGJvdHRvbTogMDsNCiAgICAgICAgICAgIGxlZnQ6IDUwJTsNCiAgICAgICAgICAgIHdpZHRoOiBhdXRvOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOw0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBzY2FsZSgwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIC5ub3RpZjpiZWZvcmUgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZDsNCiAgICAgICAgICAgIHJpZ2h0OiA1MCU7DQogICAgICAgICAgICBtYXJnaW46IDAgLTdweCAwIDA7DQogICAgICAgICAgICB0b3A6IDEwMCU7DQogICAgICAgICAgICBib3JkZXItdG9wOiA4cHggc29saWQgcmVkOw0KICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50Ow0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSB7DQogICAgICAgICAgICB6LWluZGV4OiA1Ow0KICAgICAgICAgICAgcmlnaHQ6IDA7DQogICAgICAgICAgICBoZWlnaHQ6IDA7DQogICAgICAgICAgICB0b3A6IDg4cHg7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSwNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSAubWVkaWEtLWxlZnQgew0KICAgICAgICAgICAgaGVpZ2h0OiA2MnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX190ZXh0IHsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX190aXRsZSB7DQogICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4Ow0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX19saW5rIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGFiZWwgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOw0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xNWRlZywgMGRlZyk7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2tldygtMTVkZWcsIDBkZWcpOw0KICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2tldygtMTVkZWcsIDBkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBza2V3KC0xNWRlZywgMGRlZyk7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXcoLTE1ZGVnLCAwZGVnKTsNCiAgICAgICAgICAgIGxlZnQ6IC04cHg7DQogICAgICAgICAgICB0b3A6IGF1dG87DQogICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAyNHB4Ow0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgYm94LXNoYWRvdzogMCA2cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgLjgpDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCJpbWFnZXMvYmctZGV0aWtwYWdpLndlYnAiKSB0b3AvMTAxJSBuby1yZXBlYXQgI2ZmNGMwNTsNCiAgICAgICAgICAgIGJvdHRvbTogMTAwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAxMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAuMnMgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpX19jb250ZW50IHsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggNTBweCA1MHB4IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1kZXRpa3BhZ2lfX2Nsb3NlIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHotaW5kZXg6IDU7DQogICAgICAgICAgICB3aWR0aDogMjdweDsNCiAgICAgICAgICAgIGhlaWdodDogMjdweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgdG9wOiAtMTNweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7DQogICAgICAgICAgICBjb2xvcjogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSAubWVkaWEtLWxlZnQgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICB3aWR0aDogMTEwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDgwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAzDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmUgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmUgc3BhbiB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZlNjAwOw0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHggMCAyMHB4Ow0KICAgICAgICAgICAgY29sb3I6ICNlZTQwMjM7DQogICAgICAgICAgICBmb250LXNpemU6IDlweDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSBzcGFuOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHdpZHRoOiA3cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDdweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogM3B4Ow0KICAgICAgICAgICAgbGVmdDogN3B4Ow0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgICAgICAgICAgIGFuaW1hdGlvbjogMXMgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICAtbW96LWFuaW1hdGlvbjogMXMgaW5maW5pdGUgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogMXMgaW5maW5pdGUgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjYzcyMDI2DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmVfX2JvZHkgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBnYXA6IDE2cHg7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19sZWZ0IHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19yaWdodCB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZ2FwOiAxNnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4Ow0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX3RleHQgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBsaW5lLWNsYW1wOiAzOw0KICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzOw0KICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICB3aWR0aDogODAlOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogLTdweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19yaWdodF9fYnV0dG9uIHsNCiAgICAgICAgICAgIHdpZHRoOiAyMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX2J1dHRvbl9fcGxheSB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmVfX2JvZHlfX3JpZ2h0X19idXR0b25fX3BhdXNlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgQGtleWZyYW1lcyBsaXZlLWRldGlrcGFnaSB7DQoNCiAgICAgICAgICAgIDAlLA0KICAgICAgICAgICAgMTAwJSB7DQogICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZjYzQzZg0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICA1MCUgew0KICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNjNzIwMjYNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXIgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwIDA7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgLjE1KTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7DQogICAgICAgICAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7DQogICAgICAgICAgICB0b3A6IDA7DQogICAgICAgICAgICB6LWluZGV4OiAyNjsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDENCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3l0LA0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLm1lbnUtYnV0dG9uIHNwYW4sDQogICAgICAgIC5ub3RpZl9fYmFsb24gew0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkDQogICAgICAgIH0NCg0KICAgICAgICAuaGVhZGVyX19sZWZ0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgbGVmdDogLTEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXJfX3JpZ2h0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBoZWlnaHQ6IDQxcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXJfX2JyYW5kIHsNCiAgICAgICAgICAgIGhlaWdodDogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9fYnJhbmQgaW1nIHsNCiAgICAgICAgICAgIGhlaWdodDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbiB7DQogICAgICAgICAgICB3aWR0aDogNDNweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzVweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDhweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbi0tbGl2ZSB7DQogICAgICAgICAgICBjb2xvcjogIzIxNDA5YQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbi0tbm90aWYgew0KICAgICAgICAgICAgY29sb3I6ICM5OTkNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZW51LWJ1dHRvbiB7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7DQogICAgICAgICAgICB3aWR0aDogNDBweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lbnUtYnV0dG9uX193cmFwIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMTVweDsNCiAgICAgICAgICAgIGxlZnQ6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZW51LWJ1dHRvbiBzcGFuIHsNCiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICAgICAgICAgIGhlaWdodDogMnB4Ow0KICAgICAgICAgICAgd2lkdGg6IDIwcHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMjE0MDlhOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4Ow0KICAgICAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTsNCiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOw0KICAgICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuDQogICAgICAgIH0NCg0KICAgICAgICAubWVudS1idXR0b24gc3BhbjpmaXJzdC1jaGlsZCwNCiAgICAgICAgLnRvcC0wIHsNCiAgICAgICAgICAgIHRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lbnUtYnV0dG9uIHNwYW46bnRoLWNoaWxkKDIpIHsNCiAgICAgICAgICAgIHRvcDogN3B4DQogICAgICAgIH0NCg0KICAgICAgICAubWVudS1idXR0b24gc3BhbjpudGgtY2hpbGQoMykgew0KICAgICAgICAgICAgdG9wOiAxNHB4Ow0KICAgICAgICAgICAgd2lkdGg6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSAubWVudS1idXR0b24gc3BhbjpmaXJzdC1jaGlsZCB7DQogICAgICAgICAgICB0b3A6IDhweDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSAubWVudS1idXR0b24gc3BhbjpudGgtY2hpbGQoMikgew0KICAgICAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgICAgIGxlZnQ6IC02MHB4DQogICAgICAgIH0NCg0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLm1lbnUtYnV0dG9uIHNwYW46bnRoLWNoaWxkKDMpIHsNCiAgICAgICAgICAgIHRvcDogOHB4Ow0KICAgICAgICAgICAgd2lkdGg6IDIwcHg7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTsNCiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5ub3RpZl9fYmFsb24gew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgd2lkdGg6IDIycHg7DQogICAgICAgICAgICBoZWlnaHQ6IDIycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHg7DQogICAgICAgICAgICByaWdodDogLTRweDsNCiAgICAgICAgICAgIHRvcDogMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19kYXRlLA0KICAgICAgICAubWVkaWFfX3RleHQgew0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0LWNvbnRlbnQgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uLA0KICAgICAgICAubGlzdC1jb250ZW50X19pdGVtOmZpcnN0LWNoaWxkIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwOw0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uIC5saXN0LWNvbnRlbnRfX2l0ZW06Zmlyc3QtY2hpbGQgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uIC5saXN0LWNvbnRlbnRfX2l0ZW06bGFzdC1jaGlsZCwNCiAgICAgICAgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdC1jb250ZW50LS1jb2x1bW4gLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZmxleDogMQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCh3aGl0ZSwgYmxhY2spOw0KICAgICAgICAgICAgbWFzay1pbWFnZTogcmFkaWFsLWdyYWRpZW50KHdoaXRlLCBibGFjayk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIC5saWhhdGpnIGEsDQogICAgICAgIC5tZWRpYV9faW1hZ2UgYSwNCiAgICAgICAgLm5hdiBhIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX3RleHQgew0KICAgICAgICAgICAgZmxleDogMTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWMNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYV9fdGl0bGUgew0KICAgICAgICAgICAgbWFyZ2luOiAwOw0KICAgICAgICAgICAgZmxleDogMQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc3VidGl0bGUsDQogICAgICAgIC5tZWRpYV9fc3VidGl0bGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19kYXRlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjUNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYV9fYXV0aG9yIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHotaW5kZXg6IDM7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHg7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBjb2xvcjogIzMzMw0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdpZHRoOiAyNXB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAyNXB4Ow0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2F1dGhvciBhOmhvdmVyIHsNCiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2xpbmsgew0KICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYw0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19saW5rOmJlZm9yZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIGJvdHRvbTogMDsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICB0b3A6IDA7DQogICAgICAgICAgICByaWdodDogMDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICB6LWluZGV4OiAyDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2xhYmVsIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogNHB4Ow0KICAgICAgICAgICAgbGVmdDogNHB4Ow0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWEtLWxlZnQsDQogICAgICAgIC50ZXh0LWxpc3Qgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LA0KICAgICAgICAuYm94LWFkcywNCiAgICAgICAgLnRleHQtbGlzdCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYS0tbGVmdCB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQNCiAgICAgICAgfQ0KDQogICAgICAgIC50ZXh0LWxpc3Qgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLnRleHQtbGlzdF9fZGF0YSB7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1hZHMgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7DQogICAgICAgICAgICB6LWluZGV4OiAxOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1hZHMtLWNvbnRhaW5lciB7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygtMjZweCAvIDEuNDQ0NDQ0NDQ0NDQ0KTsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygtMjZweCAvIDEuNDQ0NDQ0NDQ0NDQ0KQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90IHsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBtYXJnaW46IDAgYXV0bzsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3ZjcNCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdD4qIHsNCiAgICAgICAgICAgIGZsZXg6IDEgMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90IGltZyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBoZWlnaHQ6IGF1dG8NCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgY29udGVudDogIkFkdmVydGlzZW1lbnQiOw0KICAgICAgICAgICAgbGVmdDogNTAlOw0KICAgICAgICAgICAgdG9wOiA1MCU7DQogICAgICAgICAgICBoZWlnaHQ6IDUwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAtMTsNCiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHdpZHRoPSczMicgaGVpZ2h0PSczMicgdmlld0JveD0nMCAwIDMyIDMyJyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHhtbG5zOnhsaW5rPSdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJyUzRSUzQ3JlY3Qgb3BhY2l0eT0nMC4yJyB3aWR0aD0nMzInIGhlaWdodD0nMzInIGZpbGw9J3VybCglMjNwYXR0ZXJuMCknLyUzRSUzQ2RlZnMlM0UlM0NwYXR0ZXJuIGlkPSdwYXR0ZXJuMCcgcGF0dGVybkNvbnRlbnRVbml0cz0nb2JqZWN0Qm91bmRpbmdCb3gnIHdpZHRoPScxJyBoZWlnaHQ9JzEnJTNFJTNDdXNlIHhsaW5rOmhyZWY9JyUyM2ltYWdlMCcgdHJhbnNmb3JtPSdzY2FsZSgwLjAxNTYyNSknLyUzRSUzQy9wYXR0ZXJuJTNFJTNDaW1hZ2UgaWQ9J2ltYWdlMCcgd2lkdGg9JzY0JyBoZWlnaHQ9JzY0JyB4bGluazpocmVmPSdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQU1BQUFDZHQ0SHNBQUFBQVhOU1IwSUIyY2tzZndBQUFBbHdTRmx6QUFBTEV3QUFDeE1CQUpxY0dBQUFBWjVRVEZSRkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWx2UW1QZ0FBQUlwMFVrNVRBQlZUZnFYTDMrejVNNDNTL3Y4TmM5VVFnTzRCWWVvZXhEdnBZZ09Pc1ZncU9EY1IvY3gwRmdKSGllWXhCVi9vWkJQeVJQczhkY0NWd2IyTUtEMlNmSjZCUHlZYXlLdlVRU1d5aEdlYmg3eWZscTkvclpESk5nNEg0Tk5SWHFiOHRBbldvR3pPK1BiRlhVc01IZGdmNURDL3cxQlBMZWNjM01ZNll3U0s2eVB0RDNMUWk4cW5mVklZdUV5S0R3QUFBdXhKUkVGVWVKeWxWK2QvMHpBUVZiYVRTSEgyYmltUVF0Z1V3Z2d0QVZvb3BleFNhRXZabyt5OXdncGx3MzlOYkRtT3JIRjJmdHpIbC9kZUxPbDB1a05JRVQ1L0lCZ0tSelF0RWc0RkEzNmZpaWVQYUN5T2lTTndQQmIxcWs3b1NTS05wSjd3SUUrbE0zSzVFWmwweWtXZXplWFZjaVB5dVN5a0x4Umh1UkhGZ2xwZktydnJDU21YVlBxSzVrVlBpRmFSeXF0RDN1UkdERlVsK21IdmVrS0dSWWNCL3QvOEJtSDlFSHZOaUJscldZemJoeEs0Zitzb2FUMkxhWTZ6S01Ebkp6TWdaU1lmc2k3NUl6VWd4WDVPNW1DOXdvRGtldnFVUy82ckRQSzltNVYyMGFzTVNKcmlDZUQrd2dZWldoOTBONzNTZ09nbXJxZy9YZ3lTQmh4VkM3V2Fpd0V4Nm1STUxoN2RFTjJZcmZzMmJkNENHY1M2Y0Z3bUwyNjFrMlRiOWgxcWczaTMvbU1SMW5ZNkNsOXFUR21BZmNndm9ydDJJMmxJRElnZkJRU3NzVWV1bHhvRVVGREE5aXIwVW9NZ0d1V2hmYjMxUi9jM0Q0eFB1QmlFVUppSERsSjJ0V1h1YnVNUWJCQkdFZjRETFBiaEhuQUVOSWdndnBaWnRXN1NCaHBUa0lFbUdCeWw1R045WkJvMjRKWnduSEpuV093RXVBUnVFMmNwOXlTTG5RSTNNZVFFVGxQdU5JdkZ3R1BrRXVrTTVaNWxzWE5nSW5HcGZKNXk1MWlzQlJoYzRDL1RQT1ZlWkRFZE1QRHoxL2tTNVRwc0Y5UUczZXZNRlpUR29zbGR1aXg0U2cyV2tWRFNybER5MVQ0eUF4Z1lCOFFWMVd1VVhMZFRjUjY2QzJiejZTenIxNjI4RzdNY2J0d0VERzZaT1BldzNMYm8xVHQzVis3ZGY0QVFZRURQaDN2YThFTmJ3ZldVNHRQMmlQN0FQYTZSeDBnZXFzZFZlTjZmUFBWbVVMWWJaNzdCZVBiY3FWeVNHOWdOaHRqaU5NYVp4bjdpaGZ4bGVzbHNrZGhrNVZzbDgvZlVxOWthZVYwdzQ0MkQ4ZllkKzVHeU5tK2wzWHpmcm9tNDllc0g1ekxCUmxNV0gva3RIckRWYmZINkFadnR1VS9pS1EvUTd1UFBkVkdQL252Z1FGNUhuczZrU3U5cDZNTE5MMnE5TWZaMVlIbW5BbzU5Q0I0ODhXcmdxNHZjQ05Yb2k1ZS9MWHFRbThFUDN4amo3ejhXM0hWczlNYi8ybXI3NTYvZmYvNnFlUDhBSUpHN1ZBU0g1QUFBQUFBQVNVVk9SSzVDWUlJPScvJTNFJTNDL2RlZnMlM0UlM0Mvc3ZnJTNFIik7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0Ow0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDRweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjRweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDNweCAwOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIGNvbG9yOiAjOTk5Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3RfX25hbWUgew0KICAgICAgICAgICAgZGlzcGxheTogbm9uZTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSA0MHB4KTsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4Ow0KICAgICAgICAgICAgei1pbmRleDogLTE7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBjb2xvcjogI2NjYw0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1zbWIgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MHB4Ow0KICAgICAgICAgICAgei1pbmRleDogMjsNCiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgY2FsYyg0cHggLyAyKSA0cHggMCByZ2JhKDAsIDAsIDAsIC4xNSk7DQogICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5Ow0KICAgICAgICAgICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5Ow0KICAgICAgICAgICAgdG9wOiAwDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtbWItY29udGFpbmVyIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiA1MDZweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICAgICAgICAgICAgY2xpcDogcmVjdChhdXRvLCBhdXRvLCBhdXRvLCBhdXRvKTsNCiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLWJiLA0KICAgICAgICAuYWRzLXNsb3QtLW1iIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLW1iIHsNCiAgICAgICAgICAgIHdpZHRoOiAzMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogNDgwcHg7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiAyNnB4ICFpbXBvcnRhbnQ7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDsNCiAgICAgICAgICAgIHotaW5kZXg6IDEgIWltcG9ydGFudDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvYWRzL21lZ2EtYmlsbGJvYXJkLXBsYWNlaG9sZGVyLndlYnAiKQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1iYiB7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGhlaWdodDogMTU2cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL2Fkcy9iaWxsYm9hcmQtcGxhY2Vob2xkZXIud2VicCIpOw0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNw0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1zYiB7DQogICAgICAgICAgICB3aWR0aDogMzAwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDI1MHB4DQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLWliIHsNCiAgICAgICAgICAgIHdpZHRoOiAzMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogNTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmQgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MjRweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICBib3R0b206IDA7DQogICAgICAgICAgICByaWdodDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHAgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBmb250LXNpemU6IDEwcHg7DQogICAgICAgICAgICBwYWRkaW5nOiAycHggMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAubWVnYWJpbGxib2FyZC1jbG9zZSB7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICByaWdodDogY2FsYyg1MCUgLSAxNjBweCk7DQogICAgICAgICAgICBwYWRkaW5nOiA1cHggMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZ3QtOCB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLnBkdC0xMiB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucGRiLTEyIHsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5wZHQtMTYgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDE2cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLnBkYi0xNiB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAubWd0LTE2IHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLm1nYi0xNiB7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC53LTEwMCB7DQogICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuZmxleC1jZW50ZXIgew0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuYm94X190aXRsZSwNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSAubWVkaWFfX2xhYmVsLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGluaywNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nLA0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnLXRpdGxlLA0KICAgICAgICAuZGV0YWlsX19zdWJ0aXRsZSwNCiAgICAgICAgLmZvbnQtZmFtaWx5LWJhc2UtMiwNCiAgICAgICAgLm1lZGlhX19zdWJ0aXRsZSwNCiAgICAgICAgLm1lZGlhX190aXRsZSwNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiBhIHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDANCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXZfX2l0ZW0sDQogICAgICAgIC5kZXRhaWxfX2RhdGUsDQogICAgICAgIC5kZXRhaWxfX21lZGlhLWNhcHRpb24sDQogICAgICAgIC5mb290ZXIgLm5hdiwNCiAgICAgICAgLmZvb3Rlcl9fY29weSwNCiAgICAgICAgLm1lZGlhX19kYXRlIHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDANCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX3RpdGxlLA0KICAgICAgICAuZGV0YWlsX190aXRsZSwNCiAgICAgICAgLmZvbnQtYmFzZS1zZW1pYm9sZCwNCiAgICAgICAgLmxpbmtzaXNpcCBhLA0KICAgICAgICAubmF2LA0KICAgICAgICAucGFnZV9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90OmJlZm9yZSwNCiAgICAgICAgLmJveF9faGVhZGVyIGEsDQogICAgICAgIC5ib3hfX3RpdGxlLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGFiZWwsDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX19saW5rLA0KICAgICAgICAuYnRuLA0KICAgICAgICAuY29sbGFwc2libGVfX3RvcCwNCiAgICAgICAgLmRldGFpbF9fYXV0aG9yLA0KICAgICAgICAuZGV0YWlsX19ib2R5LXRhZyAubmF2X19pdGVtLA0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnLXRpdGxlLA0KICAgICAgICAuZGV0YWlsX19zdWJ0aXRsZSwNCiAgICAgICAgLmRldGFpbF9fdGl0bGUsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX3RleHQsDQogICAgICAgIC5mb250LWZhbWlseS1iYXNlLTIsDQogICAgICAgIC5mb290ZXIsDQogICAgICAgIC5mb290ZXItdGl0bGUsDQogICAgICAgIC5saW5rc2lzaXAsDQogICAgICAgIC5saXN0X19iZXJpdGFfX2l0ZW1fX2JvdHRvbV9fZGF0ZSwNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX190aXRsZSwNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9fdGl0bGUsDQogICAgICAgIC5tZWRpYV9fYXV0aG9yLA0KICAgICAgICAubWVkaWFfX3N1YnRpdGxlLA0KICAgICAgICAubWVkaWFfX3RpdGxlLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2LWZyYW1lYmFyX190aXRsZSwNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIsDQogICAgICAgIC5wYWdlX190aXRsZSwNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fdG9wLA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3LA0KICAgICAgICAudGV4dC1saXN0IHsNCiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBNb250c2VycmF0LUZGLCBBcmlhbCwgVGFob21hLCBzYW5zLXNlcmlmDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QsDQogICAgICAgIC5hZHMtc2xvdC0tYmIsDQogICAgICAgIC5hZHMtc2xvdC1tYi1jb250YWluZXIsDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUsDQogICAgICAgIC5icmVha2luZy1kZXRpa3BhZ2lfX2Nsb3NlLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fdGV4dCwNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZywNCiAgICAgICAgLmRpc3BsYXktZmxleCwNCiAgICAgICAgLmZvb3Rlcl9fYXBwLXN0b3JlLA0KICAgICAgICAubmF2YmFyLWZpcnN0LA0KICAgICAgICAubm90aWZfX2JhbG9uLA0KICAgICAgICAuc3RpY2t5LXNoYXJlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94Ow0KICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRhZyAubmF2LA0KICAgICAgICAubGlzdC1jb250ZW50X19pdGVtLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2LS1jZW50ZXIgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IHdyYXANCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX2hlYWRlciwNCiAgICAgICAgLmZsZXgtYmV0d2VlbiwNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIsDQogICAgICAgIC5wYWdlX19oZWFkZXIgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IHdyYXA7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QsDQogICAgICAgIC5kZXRhaWxfX25ld3N0YWcsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSwNCiAgICAgICAgLmhlYWRlcl9faWNvbiwNCiAgICAgICAgLmljb24taXRlbSwNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHAsDQogICAgICAgIC50ZXh0LWNlbnRlciB7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LA0KICAgICAgICAuYWRzLXNsb3QtLWJiLA0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpX19jbG9zZSwNCiAgICAgICAgLm5vdGlmX19iYWxvbiwNCiAgICAgICAgLnN0aWNreS1zaGFyZSB7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5jb3B5X3VybCAubm90aWYsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXZfX2l0ZW0sDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50LA0KICAgICAgICAubWVkaWEtLWltYWdlLXJhZGl1cyAubWVkaWFfX2ltYWdlLA0KICAgICAgICAubWVkaWFfX2xhYmVsIHsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaV9fY2xvc2UsDQogICAgICAgIC5jaXJjbGUsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSBzcGFuOmJlZm9yZSwNCiAgICAgICAgLmljb24taXRlbSAuY29tbWVudC1jb3VudCwNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyLA0KICAgICAgICAubmF2X19pdGVtLS1uZXcgYTphZnRlciB7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xvci1ibGFjayB7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSAubWVkaWFfX3RleHQsDQogICAgICAgIC5tZWdhYmlsbGJvYXJkX19zd2lwZSBwIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuY29sb3ItcHVycGxlLWxpZ2h0LTIgew0KICAgICAgICAgICAgY29sb3I6ICM4MTJlODgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zdGlja3ktc2hhcmVfX3dyYXAgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyIGltZywNCiAgICAgICAgLm1lZGlhX19pbWFnZSBhPio+aW1nIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7DQogICAgICAgICAgICB3aWR0aDogYXV0bzsNCiAgICAgICAgICAgIGhlaWdodDogYXV0bzsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICB0b3A6IDUwJTsNCiAgICAgICAgICAgIGxlZnQ6IDUwJTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCkNCiAgICAgICAgfQ0KDQogICAgICAgIC53cmFwLXpvb20gew0KICAgICAgICAgICAgei1pbmRleDogNjY2Ow0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93biwNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlDQogICAgICAgIH0NCg0KICAgICAgICAuaW1nLXpvb21vdXQsDQogICAgICAgIC53cmFwLXpvb20gew0KICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOw0KICAgICAgICAgICAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0Ow0KICAgICAgICAgICAgY3Vyc29yOiAtbW96LXpvb20tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAucF9pbWdfem9vbWluLA0KICAgICAgICAud3JhcC16b29tIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zczsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzOw0KICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcw0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudSB7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDRweDsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgICAgICBtaW4td2lkdGg6IDE1MHB4Ow0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiAxMDAlOw0KICAgICAgICAgICAgbGVmdDogLThweDsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIHotaW5kZXg6IDMNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50IHsNCiAgICAgICAgICAgIG1pbi13aWR0aDogMjAwcHg7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBtYXJnaW46IDhweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudV9fY29udGVudDphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGxlZnQ6IDI4cHg7DQogICAgICAgICAgICB3aWR0aDogMDsNCiAgICAgICAgICAgIGhlaWdodDogMDsNCiAgICAgICAgICAgIHRvcDogMDsNCiAgICAgICAgICAgIGJvcmRlcjogNnB4IHNvbGlkICMwMDA7DQogICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmZmYgI2ZmZjsNCiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7DQogICAgICAgICAgICBib3gtc2hhZG93OiAtMnB4IDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIC4wNSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50LWFydGljbGUgew0KICAgICAgICAgICAgbWluLXdpZHRoOiAyNjBweDsNCiAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7DQogICAgICAgICAgICBwYWRkaW5nOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudS0tcmlnaHQgLmRyb3Bkb3duLW1lbnVfX2NvbnRlbnQ6YWZ0ZXIgew0KICAgICAgICAgICAgbGVmdDogYXV0bzsNCiAgICAgICAgICAgIHJpZ2h0OiAycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51LS1yaWdodCB7DQogICAgICAgICAgICBsZWZ0OiBhdXRvOw0KICAgICAgICAgICAgcmlnaHQ6IC04cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bj4uaWNvbiB7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXMgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gsDQogICAgICAgIC5kZXRhaWxfX21lZGlhLA0KICAgICAgICAuZGV0YWlsX19tdWx0aXBsZS1wYWdpbmcgew0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMThweDsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMThweDsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX2hlYWRlciB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBmb250LXNpemU6IDIzcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX3RpdGxlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNTYyYjc3DQogICAgICAgIH0NCg0KICAgICAgICAuYm94IHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsNCiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4cHg7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveF9faGVhZGVyIGEsDQogICAgICAgIC5uYXYsDQogICAgICAgIC5uYXZfX2l0ZW0gew0KICAgICAgICAgICAgcGFkZGluZzogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveF9fbG9nbyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4Ow0KICAgICAgICAgICAgbWF4LWhlaWdodDogNDVweDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAucGFnZV9faGVhZGVyIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX190aXRsZSB7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBmb250LXNpemU6IDIzcHg7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIgew0KICAgICAgICAgICAgY29sb3I6ICM5OTk7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGEgew0KICAgICAgICAgICAgY29sb3I6ICM5OTk7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIi8iOw0KICAgICAgICAgICAgcGFkZGluZzogMCA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdl9faXRlbTpsYXN0LWNoaWxkIGE6YWZ0ZXIsDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGE6bGFzdC1jaGlsZDphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIg0KICAgICAgICB9DQoNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIgYTpob3ZlciB7DQogICAgICAgICAgICBjb2xvcjogIzMzMw0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdl9faXRlbS0tbmV3IGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICB3aWR0aDogNXB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiA1cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7DQogICAgICAgICAgICBwb3NpdGlvbjogbWlkZGxlOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdl9faXRlbSBhLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2X19pdGVtLA0KICAgICAgICAubmF2X19pdGVtLS1uZXcsDQogICAgICAgIC5uYXZiYXIsDQogICAgICAgIC5uYXZiYXItc2Vjb25kIC5uYXYgYSwNCiAgICAgICAgLm5hdmJhci1zaGFkb3csDQogICAgICAgIC5yZWRpcmVjdCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYgew0KICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsNCiAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiBhIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweCA4cHg7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3ZjcNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZfX2l0ZW0gYSB7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMjRweCA0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3RlciAubmF2X19pdGVtIGEgew0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBjb2xvcjogIzY2Ng0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3RlciAubmF2X19pdGVtIGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIi4iOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiAtMTJweDsNCiAgICAgICAgICAgIHJpZ2h0OiAtNHB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4Ow0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3cgLm5hdmJhci0tc2Nyb2xsIC5uYXZfX2l0ZW06Zmlyc3QtY2hpbGQgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNnB4DQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXNoYWRvdyAubmF2YmFyLS1zY3JvbGwgLm5hdl9faXRlbTpsYXN0LWNoaWxkIHsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdl9faXRlbTpsYXN0LWNoaWxkIGEgew0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdl9faXRlbSB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1maXJzdCAubmF2X19pdGVtLS1hY3RpdmUgYSB7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keS10YWcgLm5hdl9faXRlbSB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwOw0KICAgICAgICAgICAgbWFyZ2luOiA0cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxNnB4Ow0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdiB7DQogICAgICAgICAgICBtYXJnaW46IDI0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci0tc2Nyb2xsIC5uYXYgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDRweDsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdiB7DQogICAgICAgICAgICBoZWlnaHQ6IDQ1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdiwNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiB7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvOw0KICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOw0KICAgICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IG5vd3JhcA0KICAgICAgICB9DQoNCiAgICAgICAgLmJhY2stdG9wLA0KICAgICAgICAubmF2LS1jZW50ZXIgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdjo6LXdlYmtpdC1zY3JvbGxiYXIsDQogICAgICAgIC5uYXZiYXItc2Vjb25kIC5uYXY6Oi13ZWJraXQtc2Nyb2xsYmFyIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXYgew0KICAgICAgICAgICAgbWFyZ2luOiA4cHggLTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlciAubmF2YmFyIHsNCiAgICAgICAgICAgIGhlaWdodDogMzVweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItc2hhZG93OmFmdGVyLA0KICAgICAgICAubmF2YmFyLXNoYWRvdzpiZWZvcmUgew0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICIiDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLS1zY3JvbGwgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW4gIWltcG9ydGFudDsNCiAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbCAhaW1wb3J0YW50Ow0KICAgICAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXdyYXAgew0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3cgew0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMThweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3c6YmVmb3JlIHsNCiAgICAgICAgICAgIHdpZHRoOiAxOHB4Ow0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChyaWdodCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyaWdodCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXNoYWRvdzphZnRlciB7DQogICAgICAgICAgICB3aWR0aDogMjRweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICNmZmYgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5iYWNrLXRvcCB7DQogICAgICAgICAgICB3aWR0aDogNDBweDsNCiAgICAgICAgICAgIGhlaWdodDogNDBweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHJpZ2h0OiA4cHg7DQogICAgICAgICAgICBib3R0b206IDYwcHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwNCwgMjA0LCAyMDQsIC41KTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBmb250LXNpemU6IDIycHg7DQogICAgICAgICAgICB6LWluZGV4OiAxMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJhY2stdG9wIGEgew0KICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24td3JhcCAubGlzdC1jb250ZW50X19pdGVtOmxhc3QtY2hpbGQgew0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX190aXRsZSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIsDQogICAgICAgIC5saW5rc2lzaXAgc3Ryb25nLA0KICAgICAgICAubGlzdC1jb250ZW50LS1jb2x1bW4gLm1lZGlhX190aXRsZSwNCiAgICAgICAgLm1lZGlhX19sYWJlbCB7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX3N1YnRpdGxlLA0KICAgICAgICAubWVkaWFfX3N1YnRpdGxlIHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1rdWxlci0zKQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19sYWJlbCB7DQogICAgICAgICAgICBwYWRkaW5nOiA1cHggMTJweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzcNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYS0tbGVmdCAubWVkaWFfX2ltYWdlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMCAxMnB4IDAgMDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nIC50ZXh0LWxpc3RfX2RhdGEgew0KICAgICAgICAgICAgY29sb3I6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1ibHVlLWJhc2Ugew0KICAgICAgICAgICAgYmFja2dyb3VuZDogIzIxNDA5YTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1ibHVlLWJhc2U6aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4tLWJsdWUtYmFzZS5idG4tLW91dGxpbmUgew0KICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMjE0MDlhOw0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4tLXBhZ2luZyB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1rdWxlci0xKTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1wYWdpbmc6aG92ZXIsDQogICAgICAgIC5pY29uLWl0ZW06aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgew0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2U2ZTZlNjsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19sb2dvIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXJfX2xvZ28gaW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiAxNjBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlcl9fc29jaWFsIHsNCiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXJfX2NvcHkgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlcl9fYm9yZGVyIHsNCiAgICAgICAgICAgIGhlaWdodDogNHB4Ow0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2sNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXItdGl0bGUsDQogICAgICAgIC5mb290ZXJfX2dldC1hcHAgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyLXRpdGxlX19wYXJ0b2Ygew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlci10aXRsZV9fcGFydG9mIGltZyB7DQogICAgICAgICAgICB3aWR0aDogODBweDsNCiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207DQogICAgICAgICAgICBtYXJnaW46IDAgMCAzcHggM3B4DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19hcHAtc3RvcmUgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19hcHAtc3RvcmUgaW1nIHsNCiAgICAgICAgICAgIG1hcmdpbjogMTZweCAycHg7DQogICAgICAgICAgICB3aWR0aDogYXV0bzsNCiAgICAgICAgICAgIGhlaWdodDogMzRweA0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6MzU5cHgpIHsNCiAgICAgICAgICAgIC5mb290ZXJfX2FwcC1zdG9yZSBpbWcgew0KICAgICAgICAgICAgICAgIGhlaWdodDogMjVweA0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJvdHRvbS1zdGlja3kgew0KICAgICAgICAgICAgaGVpZ2h0OiAwDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX3BhZ2Ugew0KICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBtYXJnaW46IDAgMCAxNnB4Ow0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZzogOHB4IDEycHg7DQogICAgICAgICAgICBjb2xvcjogI2Y3ZjdmNzsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MDBweCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC43OSwgLjMzLCAuNjQsIC44Mik7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguNzksIC4zMywgLjY0LCAuODIpDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQgcD5hLA0KICAgICAgICAuZGV0YWlsX190aXRsZSwNCiAgICAgICAgLnJlZGlyZWN0X19jbG9zZS1idG4gew0KICAgICAgICAgICAgY29sb3I6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW1lbnUsDQogICAgICAgIC5zdGlja3ktc2hhcmUgew0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtby10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX3BhZ2UgaDMsDQogICAgICAgIC5yZWRpcmVjdF9fcGFnZSBoNCB7DQogICAgICAgICAgICBjb2xvcjogI2Y3ZjdmNw0KICAgICAgICB9DQoNCiAgICAgICAgLnJlZGlyZWN0X19wYWdlIGg0IHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7DQogICAgICAgICAgICBtYXgtaGVpZ2h0OiA0OHB4Ow0KICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3ggIWltcG9ydGFudDsNCiAgICAgICAgICAgIGxpbmUtY2xhbXA6IDM7DQogICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7DQogICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOw0KICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbA0KICAgICAgICB9DQoNCiAgICAgICAgLnJlZGlyZWN0X19jbG9zZSB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX2Nsb3NlLWJ0biB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgd2lkdGg6IDMwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDMwcHg7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2UzZjVmZTk5Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhX19pbWFnZS5pbWcteHNzIHsNCiAgICAgICAgICAgIHdpZHRoOiA1NnB4DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhX190ZXh0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWRpcmVjdCAubWVkaWFfX3RleHQubm9tYXJnaW4gew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOw0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWRpcmVjdCAubWVkaWFfX3RleHQubm9tYXJnaW4+OmZpcnN0LWNoaWxkIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhIHsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLnN0aWNreS1zaGFyZSB7DQogICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI3Ow0KICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkOw0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgaGVpZ2h0OiAwOw0KICAgICAgICAgICAgYm90dG9tOiAtMTAwcHg7DQogICAgICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLmJveC1tZW51LA0KICAgICAgICAuc3RpY2t5LXNoYXJlLS1zdGlja2VkIHsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7DQogICAgICAgICAgICBvcGFjaXR5OiAxDQogICAgICAgIH0NCg0KICAgICAgICAuc3RpY2t5LXNoYXJlX193cmFwIHsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOHB4Ow0KICAgICAgICAgICAgYm94LXNoYWRvdzogMCBjYWxjKDRweCAvIDIpIDRweCAwIHJnYmEoMCwgMCwgMCwgLjE1KTsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zdGlja3ktc2hhcmUtLXN0aWNrZWQgew0KICAgICAgICAgICAgYm90dG9tOiAwOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7DQogICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsIC5zdGlja3ktc2hhcmUgLmljb24taXRlbSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB3aWR0aDogMjZweDsNCiAgICAgICAgICAgIGhlaWdodDogMjZweDsNCiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbSAuY29tbWVudC1jb3VudCB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICBmb250LXNpemU6IDEwcHg7DQogICAgICAgICAgICB0b3A6IC00cHg7DQogICAgICAgICAgICByaWdodDogLTRweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDAgNHB4Ow0KICAgICAgICAgICAgbWluLXdpZHRoOiAxNXB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2VkMTMxYg0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9faGVhZGVyIHsNCiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4Ow0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgLmRldGFpbF9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2RhdGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX3N1YnRpdGxlIHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7DQogICAgICAgICAgICBjb2xvcjogI2Y3OTMxZA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYXV0aG9yIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19sYWJlbCB7DQogICAgICAgICAgICBjb2xvcjogI2FhMjQ4Yw0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbWVkaWEgew0KICAgICAgICAgICAgcGFkZGluZzogMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbWVkaWEtaW1hZ2U+aW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbWluLWhlaWdodDogMjExcHg7DQogICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB6LWluZGV4OiAyDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19tZWRpYS1pbWFnZSAuaW1nLXpvb21vdXQgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX21lZGlhLWNhcHRpb24gew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMThweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc2hhcmUsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keSwNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0PnA6bnRoLW9mLXR5cGUoMikgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0IGltZyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5wOmZpcnN0LW9mLXR5cGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQ+aDIsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5oMyB7DQogICAgICAgICAgICBmb250LXNpemU6IDE4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5oNCwNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0Pmg1LA0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQ+aDYsDQogICAgICAgIC5saW5rc2lzaXAgYSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dCB0YWJsZSB7DQogICAgICAgICAgICB3aWR0aDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc2hhcmUgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZyB7DQogICAgICAgICAgICBtYXJnaW46IDE2cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZy10aXRsZSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBmbGV4OiAxDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnIGltZyB7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nIHsNCiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMThweCAwOw0KICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBjb2xvcjogIzk5OTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwLA0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXBfdGFibGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEyMCU7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmxpbmtzaXNpcCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBtYXJnaW46IDhweCAwOw0KICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjNTYyYjc3DQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIHRkLA0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXBfdGFibGUgdGQsDQogICAgICAgIC5xdW90ZXNpc2lwIHRkIHsNCiAgICAgICAgICAgIGJvcmRlcjogbm9uZTsNCiAgICAgICAgICAgIHBhZGRpbmc6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5saW5rc2lzaXAgYSB7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3NzsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIC5saWhhdGpnIHsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpbmtzaXNpcCAubGloYXRqZyBzdHJvbmcgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5xdW90ZXNpc2lwIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwOw0KICAgICAgICAgICAgcGFkZGluZzogMDsNCiAgICAgICAgICAgIGJvcmRlcjogMDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fYm90dG9tLA0KICAgICAgICAucHJvZmlsZV9fYm94X190b3Agew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWwNCiAgICAgICAgfQ0KDQogICAgICAgIC5xdW90ZXNpc2lwIGJsb2NrcXVvdGUgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDsNCiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweCAwIDI0cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMTIwJTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICAucXVvdGVzaXNpcCBibG9ja3F1b3RlOmJlZm9yZSB7DQogICAgICAgICAgICBmb250LWZhbWlseTogZGV0aWtuZXR3b3JrLUZGOw0KICAgICAgICAgICAgY29udGVudDogIlw3YiI7DQogICAgICAgICAgICBmb250LXNpemU6IDQ1cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGNvbG9yOiAjOTk5DQogICAgICAgIH0NCg0KICAgICAgICAucXVvdGVzaXNpcCBjaXRlIHsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwX3RhYmxlIHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7DQogICAgICAgICAgICBjb2xvcjogIzY2NjsNCiAgICAgICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQNCiAgICAgICAgfQ0KDQogICAgICAgIC5waWNfYXJ0aWtlbF9zaXNpcCB7DQogICAgICAgICAgICBjb2xvcjogIzk5OQ0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwIC5waWMgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXAgLnBpYyBpbWcgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IGF1dG87DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICB0b3A6IGF1dG87DQogICAgICAgICAgICBsZWZ0OiBhdXRvOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogbm9uZTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bw0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwIC5waWM+c3BhbiB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2DQogICAgICAgIH0NCg0KICAgICAgICAuc2lzaXBfZW1iZWRfc29zbWVkIGlmcmFtZSB7DQogICAgICAgICAgICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDBweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucHJvZmlsZV9fYm94IHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7DQogICAgICAgICAgICBtYXJnaW46IDI0cHggMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fdG9wIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzc7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGhlaWdodDogNDFweDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweCA4cHggMCAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAucHJvZmlsZV9fYm94X19ib3R0b20gew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7DQogICAgICAgICAgICBjb2xvcjogIzAwMDsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbV9faW1nIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMTJweDsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fYm90dG9tX19pbWcgaW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiA0OHB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiA0OHB4Ow0KICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlOw0KICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbV9fdGV4dCB7DQogICAgICAgICAgICBtYXJnaW46IDEycHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbSB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsNCiAgICAgICAgICAgIG1hcmdpbjogNXB4IDRweDsNCiAgICAgICAgICAgIHdpZHRoOiAzMnB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAzMnB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4Ow0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsIC5pY29uLWl0ZW0gew0KICAgICAgICAgICAgd2lkdGg6IDM1cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDM1cHg7DQogICAgICAgICAgICBwYWRkaW5nOiAycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2ZiIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzYzVhOTkNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3R3IHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2lnIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1ODUxZGI7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LXJhZGlhbC1ncmFkaWVudChsZWZ0IGJvdHRvbSwgZWxsaXBzZSBjb3ZlciwgI2ZmZGM4MCAxNSUsICNlMTMwNmMgNTUlLCAjNTg1MWRiIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQobGVmdCBib3R0b20sIGVsbGlwc2UgY292ZXIsICNmZmRjODAgMTUlLCAjZTEzMDZjIDU1JSwgIzU4NTFkYiAxMDAlKTsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGxlZnQgYm90dG9tLCAjZmZkYzgwIDE1JSwgI2UxMzA2YyA1NSUsICM1ODUxZGIgMTAwJSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2luIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDc3YjUNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3dhIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogIzI1ZDM2Ng0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbV9fdGVsZSB7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwOGMNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2xpbmsgew0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjOTk5DQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHsNCiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgY29sb3I6ICM3MjczNzQ7DQogICAgICAgICAgICBmb250LXNpemU6IDEzcHg7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuDQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHRyIHRkIHsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMWYyZjM7DQogICAgICAgICAgICBwYWRkaW5nOiA3cHggMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLnRhYmxlU3BlYyB0ciB0ZDpmaXJzdC1jaGlsZCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmOGY5Ow0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIHdpZHRoOiA0MCUNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHIgdGQ6bnRoLWNoaWxkKDIpIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHIgdGQudGl0bGUgew0KICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS41Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHRyOmhvdmVyIHRkIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZTYNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHI6aG92ZXIgdGQudGl0bGUgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fdGV4dCwNCiAgICAgICAgLmZvb3Rlcl9fYm9yZGVyIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzc7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM1NjJiNzcgNTAlLCAjYWEyNDhjIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNTYyYjc3IDUwJSwgI2FhMjQ4YyAxMDAlKTsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM1NjJiNzcgNTAlLCAjYWEyNDhjIDEwMCUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm90dG9tLXN0aWNreSB7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICBib3R0b206IDA7DQogICAgICAgICAgICBsZWZ0OiAwOw0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICB6LWluZGV4OiAyNg0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19pbWFnZS5pbWcteHNzIHsNCiAgICAgICAgICAgIHdpZHRoOiA1NnB4DQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGUgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNzsNCiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHg7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgICAgICAgICAgb3V0bGluZTogMDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xsYXBzaWJsZV9fdG9wIHsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGVfX3RvcDo6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImltYWdlcy9wYXRoLWRvd24ucG5nIik7DQogICAgICAgICAgICBmbG9hdDogcmlnaHQ7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsNCiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQogICAgICAgICAgICBoZWlnaHQ6IDEzcHg7DQogICAgICAgICAgICB3aWR0aDogMjNweDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5hY3RpdmUgLmNvbGxhcHNpYmxlX190b3A6OmFmdGVyIHsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xsYXBzaWJsZV9fY29udGVudCB7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IC41cyBlYXNlLW91dDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICBtYXgtaGVpZ2h0OiAwOw0KICAgICAgICAgICAgcGFkZGluZzogMCAxNnB4DQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGVfX2NvbnRlbnQgYSB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jaw0KICAgICAgICB9DQoNCiAgICAgICAgLm1ndC0wIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmZzLTE0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuYWN0aXZlX19jb250ZW50IHsNCiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwMDBweDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzIGVhc2UtaW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xvcl9fYmx1ZSB7DQogICAgICAgICAgICBjb2xvcjogIzIxNDA5YSAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucG9zaXRpb24tcmVsYXRpdmUgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0X19iZXJpdGEgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7DQogICAgICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdF9fYmVyaXRhX190aXRsZSB7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgICAgICBmb250LXdlaWdodDogNjAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0X19iZXJpdGFfX2l0ZW0gew0KICAgICAgICAgICAgd2lkdGg6IDE1MHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdF9fYmVyaXRhX19pdGVtX190b3Agew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fdG9wX19sb2dvIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMnB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX190aXRsZSB7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgICAgICBmb250LXdlaWdodDogNTAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7DQogICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA0cHg7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX19kYXRlIHsNCiAgICAgICAgICAgIGNvbG9yOiAjOWI5YjliOw0KICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxM3B4Ow0KICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0uMjJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmtvbWVudGFyX2JveCB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogOTBweA0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsNCiAgICAgICAgICAgIC5rb21lbnRhcl9ib3ggew0KICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2MHB4DQogICAgICAgICAgICB9DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZmxleC1mbG93OiB3cmFwOw0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faXRlbSBhLA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5zYl9jbG9zZSB7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhcl9fdGl0bGUsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgLmdldF9hcHAsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgc3Ryb25nLA0KICAgICAgICAudXNlci1sb2dfX2xvZ2luLA0KICAgICAgICAudXNlci1sb2dfX25hbWUgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMA0KICAgICAgICB9DQoNCiAgICAgICAgLnNtYXJ0YmFubmVyX25ldyAuc2JfY2xvc2Ugew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOw0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheSB7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTsNCiAgICAgICAgICAgIHRvcDogNTNweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgYm90dG9tOiAwOw0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIG1hcmdpbjogMTJweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweDsNCiAgICAgICAgICAgIHotaW5kZXg6IDEwMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW92ZXJsYXlfX2hlYWRlciB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZsZXgtZmxvdzogd3JhcDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheV9faGVhZGVyLW5hdiB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICByaWdodDogMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDMNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheS0tYXJyb3ctbG9nbzphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHdpZHRoOiAwOw0KICAgICAgICAgICAgaGVpZ2h0OiAwOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgbGVmdDogMTA0cHg7DQogICAgICAgICAgICBib3JkZXI6IDhweCBzb2xpZCAjMDAwOw0KICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmZmICNmZmY7DQogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpOw0KICAgICAgICAgICAgYm94LXNoYWRvdzogLTNweCAzcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAuMDUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW92ZXJsYXlfX2JvZHkgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiA1MHB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDhweDsNCiAgICAgICAgICAgIGJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgbGVmdDogOHB4Ow0KICAgICAgICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsICFpbXBvcnRhbnQ7DQogICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGwgIWltcG9ydGFudDsNCiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaA0KICAgICAgICB9DQoNCiAgICAgICAgLmpzLW1lbnUtYWN0aXZlIGhlYWRlci5oZWFkZXIsDQogICAgICAgIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1tZW51IHsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZyAubWVkaWFfX2F1dGhvciB7DQogICAgICAgICAgICBtYXJnaW46IDANCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZyAubWVkaWFfX2F1dGhvci1pbWFnZS1hdmF0YXIgew0KICAgICAgICAgICAgd2lkdGg6IDM1cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDM1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZ19fbG9naW4gew0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWE7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgew0KICAgICAgICAgICAgcGFkZGluZzogOHB4IDA7DQogICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2YwZjBmMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2LA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IHN0cm9uZyB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pdGVtIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsNCiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWwNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faXRlbSBhIHsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pdGVtLW5ldyB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7DQogICAgICAgICAgICBwYWRkaW5nOiAwIDRweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7DQogICAgICAgICAgICBjb2xvcjogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pY29uIHsNCiAgICAgICAgICAgIHdpZHRoOiAyM3B4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAyM3B4Ow0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faWNvbiBpbWcgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdi0tdHdvLWNvbCB7DQogICAgICAgICAgICBjb2x1bW5zOiAyOw0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW5zOiAyOw0KICAgICAgICAgICAgLW1vei1jb2x1bW5zOiAyOw0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAwOw0KICAgICAgICAgICAgLW1vei1jb2x1bW4tZ2FwOiAwOw0KICAgICAgICAgICAgY29sdW1uLWdhcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2LnBsMTUgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4Ow0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiA1cHg7DQogICAgICAgICAgICAtbW96LWNvbHVtbi1nYXA6IDVweDsNCiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhcl9fdGl0bGUgew0KICAgICAgICAgICAgcGFkZGluZzogNHB4Ow0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICMzMzMNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOw0KICAgICAgICAgICAgei1pbmRleDogMjU7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC42KTsNCiAgICAgICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmpzLW1lbnUtYWN0aXZlIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIG9wYWNpdHk6IDENCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogODhweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MHB4Ow0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHg7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBmb250LXNpemU6IDExcHg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI3DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5hcHBfbG9nbyB7DQogICAgICAgICAgICBoZWlnaHQ6IDM2cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgLmdldF9hcHAgew0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5zYl9jbG9zZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgICAgICBoZWlnaHQ6IDE0cHg7DQogICAgICAgICAgICB3aWR0aDogMTRweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDsNCiAgICAgICAgICAgIHRvcDogNXB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDVweDsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXc+ZGl2PnNwYW4gew0KICAgICAgICAgICAgaGVpZ2h0OiAzMXB4DQogICAgICAgIH0NCg0KICAgICAgICAubi1jb2x1bW5zLTIgew0KICAgICAgICAgICAgZGlzcGxheTogZ3JpZDsNCiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7DQogICAgICAgICAgICBmb250LXdlaWdodDogNzAwOw0KICAgICAgICB9DQoNCiAgICAgICAgLm4tY29sdW1ucy0yIGEgew0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICB9DQoNCiAgICAgICAgLmxvZ2luLA0KICAgICAgICAucmVnaXN0ZXIgew0KICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7DQogICAgICAgICAgICBwYWRkaW5nOiAxM3B4IDEwcHg7DQogICAgICAgIH0NCg0KICAgICAgICAubG9naW4sDQogICAgICAgIC5sb2dpbi1idXR0b24gew0KICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZjA5MDkgMCwgIzVlMWIxYiAxMDAlKTsNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWdpc3RlciwNCiAgICAgICAgLnJlZ2lzdGVyLWJ1dHRvbiB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmYjAyIDAsICNlN2QwMDAgMTAwJSk7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmZmZmOw0KICAgICAgICB9DQogICAgPC9zdHlsZT4NCiAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCINCiAgICAgICAgY29udGVudD0iaW5pdGlhbC1zY2FsZSA9IDEuMCwgdXNlci1zY2FsYWJsZSA9IG5vLCB3aWR0aD1kZXZpY2Utd2lkdGgsIGhlaWdodD1kZXZpY2UtaGVpZ2h0LCBtYXhpbXVtLXNjYWxlPTEuMCI+DQogICAgPG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSIgY29udGVudD0ieWVzIiAvPg0KICAgIDxsaW5rIHJlbD0iaWNvbiIgdHlwZT0iaW1hZ2UvcG5nIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyI+DQogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyI+DQogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyIgLz4NCiAgICA8bWV0YSBjb250ZW50PSJpZCIgbmFtZT0ibGFuZ3VhZ2UiIC8+DQogICAgPG1ldGEgY29udGVudD0iaWQiIG5hbWU9Imdlby5jb3VudHJ5IiAvPg0KICAgIDxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtbGFuZ3VhZ2UiIGNvbnRlbnQ9IkluLUlkIiAvPg0KICAgIDx0aXRsZT5LdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbTwvdGl0bGU+DQogICAgPGxpbmsgcmVsPSJhbXBodG1sIiBocmVmPSJodHRwczovL2hpbmRpa2VzYXRoLmNvbS9hbXAuaHRtbCI+DQogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgaXRlbXByb3A9ImRlc2NyaXB0aW9uIiAvPg0KICAgIDxtZXRhIG5hbWU9Im9yaWdpbmFsVGl0bGUiIGNvbnRlbnQ9Ikt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiAvPg0KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0iYXJ0aWNsZSIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6c2l0ZV9uYW1lIiBjb250ZW50PSJLVURBSklUVSIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9Ikt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZSIgY29udGVudD0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzpkZXNjcmlwdGlvbiIgY29udGVudD0iS3VkYWppdHUsIHNpdHVzIHBlcm1haW5hbiBvbmxpbmUgdGVycGVyY2F5YSAyNCBqYW0uIE5pa21hdGkgYmVyYmFnYWkgcGVybWFpbmFuIG1lbmFyaWsgZGFuIGxheWFuYW4gdGVyYmFpayB1bnR1ayBwZW5nYWxhbWFuIHNsb3QgeWFuZyB0YWsgdGVybHVwYWthbiEuIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzp1cmwiIGNvbnRlbnQ9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICA8bWV0YSBwcm9wZXJ0eT0iZmI6YXBwX2lkIiBjb250ZW50PSIxODc5NjAyNzEyMzcxNDkiIC8+DQogICAgPG1ldGEgcHJvcGVydHk9ImZiOmFkbWlucyIgY29udGVudD0iMTAwMDAwNjA3NTY2Njk0IiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTp0eXBlIiBjb250ZW50PSJpbWFnZS9qcGVnIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTp3aWR0aCIgY29udGVudD0iNjUwIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTpoZWlnaHQiIGNvbnRlbnQ9IjM2NiIgLz4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCINCiAgICAgICAgY29udGVudD0iaW5pdGlhbC1zY2FsZSA9IDEuMCwgdXNlci1zY2FsYWJsZSA9IG5vLCB3aWR0aD1kZXZpY2Utd2lkdGgsIGhlaWdodD1kZXZpY2UtaGVpZ2h0LCBtYXhpbXVtLXNjYWxlPTEuMCI+DQogICAgPG1ldGEgbmFtZT0iY29weXJpZ2h0IiBjb250ZW50PSJLVURBSklUVSIgaXRlbXByb3A9ImRhdGVsaW5lIiAvPg0KICAgIDxtZXRhIG5hbWU9InA6ZG9tYWluX3ZlcmlmeSIgY29udGVudD0iMjA1N2I4NmJmNjFlNWEzNDZlMjJhMzgwYzZmZWNmODkiIC8+DQogICAgPG1ldGEgbmFtZT0ia2FuYWxpZCIgY29udGVudD0iMi0xMDUtMTAxMC0zOTgiIC8+DQogICAgPG1ldGEgbmFtZT0iYXJ0aWNsZWlkIiBjb250ZW50PSI3NDcwMTIzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGV0eXBlIiBjb250ZW50PSJzaW5nbGVwYWdlIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGVkZXdhc2EiIGNvbnRlbnQ9ImRld2FzYXRpZGFrIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGVob2F4IiBjb250ZW50PSJkZWZhdWx0IiAvPg0KICAgIDxtZXRhIG5hbWU9ImNyZWF0ZWRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTM6NTY6NDEiIC8+DQogICAgPG1ldGEgbmFtZT0icHVibGlzaGRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTQ6MDQ6MjUiIC8+DQogICAgPG1ldGEgbmFtZT0iY29udGVudHR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2VuZXdzIiAvPg0KICAgIDxtZXRhIG5hbWU9InBsYXRmb3JtIiBjb250ZW50PSJtb2JpbGUiIC8+DQogICAgPG1ldGEgbmFtZT0iaGxfbmhsX3dwIiBjb250ZW50PSJub25oZWFkbGluZS0wIiAvPg0KICAgIDxtZXRhIG5hbWU9ImhsX25obF9rYW5hbCIgY29udGVudD0ibm9uaGVhZGxpbmUtMC0yLTEwNSIgLz4NCiAgICA8bWV0YSBuYW1lPSJ2aWRlb3ByZXNlbnQiIGNvbnRlbnQ9Ik5vIiAvPg0KICAgIDxtZXRhIG5hbWU9Imdvb2dsZS1zaXRlLXZlcmlmaWNhdGlvbiIgY29udGVudD0ibzFOVzN5ZmVoSDFFb1NWTTFWSnNWVmplVk9jOWhpZEctZXhMaFFHTl9zdyIgLz4NCg0KDQoNCiAgICA8bWV0YSBuYW1lPSJpZGZva3VzIiBjb250ZW50PSJrdWRhaml0dSIgLz4NCiAgICA8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IktVREFKSVRVIiAvPg0KICAgIDxtZXRhIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgaXRlbXByb3A9ImhlYWRsaW5lIiAvPg0KICAgIDxtZXRhIG5hbWU9ImtleXdvcmRzIiBjb250ZW50PSJrdWRhaml0dSwga3VkYSBqaXR1LCBrdWRhIGppdHUgbG9naW4sIGt1ZGEgaml0dSB0b2dlbCwgUlRQIGt1ZGFqaXR1LCBoZXlsaW5rLm1lIGt1ZGFqaXR1LCBrdWRhaml0dSBsb2dpbiwgZGFmdGFyIGt1ZGFqaXR1LCBrdWRhaml0dSBuZXQgIiBpdGVtcHJvcD0ia2V5d29yZHMiIC8+DQogICAgPG1ldGEgbmFtZT0idGh1bWJuYWlsVXJsIiBjb250ZW50PSJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODA/dz02NTAiIGl0ZW1wcm9wPSJ0aHVtYm5haWxVcmwiIC8+DQogICAgPG1ldGEgcHJvcGVydHk9ImFydGljbGU6YXV0aG9yIiBjb250ZW50PSJodHRwczovL3d3dy5mYWNlYm9vay5jb20vIiBpdGVtcHJvcD0iYXV0aG9yIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJhcnRpY2xlOnB1Ymxpc2hlciIgY29udGVudD0iaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tLyIgLz4NCiAgICA8bWV0YSBuYW1lPSJwdWJkYXRlIiBjb250ZW50PSIyMDI0LTA4LTAyVDE0LTA0LTI1WiIgaXRlbXByb3A9ImRhdGVQdWJsaXNoZWQiIC8+DQogICAgPG1ldGEgY29udGVudD0iMjAyNC0wOC0wMlQxMy01Ni00MVoiIGl0ZW1wcm9wPSJkYXRlQ3JlYXRlZCIgLz4NCiAgICA8bWV0YQ0KICAgICAgICBjb250ZW50PSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgaXRlbXByb3A9InVybCIgLz4NCg0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6Y2FyZCIgY29udGVudD0ic3VtbWFyeV9sYXJnZV9pbWFnZSIgLz4NCiAgICA8bWV0YSBuYW1lPSJ0d2l0dGVyOnNpdGUiIGNvbnRlbnQ9Imt1ZGFqaXR1IiAvPg0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6c2l0ZTppZCIgY29udGVudD0ia3VkYWppdHUiIC8+DQogICAgPG1ldGEgbmFtZT0idHdpdHRlcjpjcmVhdG9yIiBjb250ZW50PSJrdWRhaml0dSIgLz4gIA0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgLz4NCiAgICA8bWV0YSBuYW1lPSJ0d2l0dGVyOmltYWdlIg0KICAgICAgICBjb250ZW50PSJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiIC8+DQoNCg0KICAgIDxsaW5rIHJlbD0iY2Fub25pY2FsIg0KICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6YWNjdHlwZSIgY29udGVudD0iYWNjLUtVREFKSVRVIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azprYW5hbGlkIiBjb250ZW50PSIzOTgiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOmFydGljbGVpZCIgY29udGVudD0iNzQ3MDEyMyIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6YXJ0aWNsZXR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2UiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOmFydGljbGVkZXdhc2EiIGNvbnRlbnQ9ImRld2FzYXRpZGFrIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azphcnRpY2xlaG9heCIgY29udGVudD0iZGVmYXVsdCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6Y3JlYXRlZGRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTM6NTY6NDEiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOnB1Ymxpc2hkYXRlIiBjb250ZW50PSIyMDI0LzA4LzAyIDE0OjA0OjI1IiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azpjcmVhdGVkZGF0ZXVuaXgiIGNvbnRlbnQ9IjE3MjI1ODE4MDEwMDAiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOnB1Ymxpc2hkYXRldW5peCIgY29udGVudD0iMTcyMjU4MjI2NTAwMCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6Y29udGVudHR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2VuZXdzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azpwbGF0Zm9ybSIgY29udGVudD0ibW9iaWxlIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azp2aWRlb3ByZXNlbnQiIGNvbnRlbnQ9Ik5vIiAvPg0KDQogICAgPG1ldGEgbmFtZT0iZHRrOmlkZm9rdXMiIGNvbnRlbnQ9Imt1ZGFqaXR1IiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azphdXRob3IiIGNvbnRlbnQ9IktVREFKSVRVIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azprZXl3b3JkcyIgY29udGVudD0ia3VkYWppdHUsIGt1ZGEgaml0dSwga3VkYSBqaXR1IGxvZ2luLCBrdWRhIGppdHUgdG9nZWwsIFJUUCBrdWRhaml0dSwgaGV5bGluay5tZSBrdWRhaml0dSwga3VkYWppdHUgbG9naW4sIGRhZnRhciBrdWRhaml0dSwga3VkYWppdHUgbmV0ICIgaXRlbXByb3A9ImtleXdvcmRzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azp0aHVtYm5haWxVcmwiIGNvbnRlbnQ9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MD93PTY1MCIgaXRlbXByb3A9InRodW1ibmFpbFVybCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6c3RhdHVzIiBjb250ZW50PSIxIiAvPg0KDQogICAgPHNjcmlwdCBhc3luYyBpZD0iZWJ4IiBzcmM9Imh0dHBzOi8vYXBwbGV0cy5lYnhjZG4uY29tL2VieC5qcyI+PC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj4NCnsNCiAgICAiQGNvbnRleHQiOiAiaHR0cHM6Ly9zY2hlbWEub3JnIiwNCiAgICAiQHR5cGUiOiAiQnJlYWRjcnVtYkxpc3QiLA0KICAgICJpdGVtTGlzdEVsZW1lbnQiOiBbDQogICAgew0KICAgICAgICAiQHR5cGUiOiAiTGlzdEl0ZW0iLA0KICAgICAgICAicG9zaXRpb24iOiAxLA0KICAgICAgICAibmFtZSI6ICJLVURBSklUVSIsDQogICAgICAgICJpdGVtIjogIiMjIyINCiAgICB9LA0KICAgIHsNCiAgICAgICAgIkB0eXBlIjogIkxpc3RJdGVtIiwNCiAgICAgICAgInBvc2l0aW9uIjogMiwNCiAgICAgICAgIm5hbWUiOiAiQ3liZXJsaWZlIiwNCiAgICAgICAgIml0ZW0iOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9uZXdzIg0KICAgIH0sDQogICAgew0KICAgICAgICAiQHR5cGUiOiAiTGlzdEl0ZW0iLA0KICAgICAgICAicG9zaXRpb24iOiAzLA0KICAgICAgICAibmFtZSI6ICJDeWJlciBMaWZlIiwNCiAgICAgICAgIml0ZW0iOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlci1saWZlIg0KICAgIH0NCl19DQo8L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vbGQranNvbiI+DQogICAgCXsNCiAgICAJCSJAY29udGV4dCI6ICJodHRwczovL3NjaGVtYS5vcmciLA0KICAgIAkJIkB0eXBlIjogIldlYlBhZ2UiLA0KICAgIAkJImhlYWRsaW5lIjogIkt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiwNCiAgICAJCSJ1cmwiOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSIsDQogICAgCQkiZGF0ZVB1Ymxpc2hlZCI6ICIyMDI0LTA4LTAyVDE0OjA0OjI1KzA3OjAwIiwNCiAgICAJCSJpbWFnZSI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiLA0KCQkJInRodW1ibmFpbFVybCI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODA/dz0yMDAiDQogICAgCX0NCiAgICAJPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj4NCgkJew0KCQkJIkBjb250ZXh0IjogImh0dHBzOi8vc2NoZW1hLm9yZyIsDQoJCQkiQHR5cGUiOiAiTmV3c0FydGljbGUiLA0KCQkJIm1haW5FbnRpdHlPZlBhZ2UiOiB7DQoJCQkJIkB0eXBlIjogIldlYlBhZ2UiLA0KCQkJCSJAaWQiOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSINCgkJCX0sDQoJCQkiaGVhZGxpbmUiOiAiS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iLA0KCQkJImltYWdlIjogew0KCQkJCSJAdHlwZSI6ICJJbWFnZU9iamVjdCIsDQoJCQkgICAgInVybCI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiDQogICAgICAgICAgICB9LA0KCQkJImRhdGVQdWJsaXNoZWQiOiAiMjAyNC0wOC0wMlQxNDowNDoyNSswNzowMCIsDQoJCQkiZGF0ZU1vZGlmaWVkIjogIjIwMjQtMDgtMDJUMTQ6MDQ6MjUrMDc6MDAiLA0KCQkJImF1dGhvciI6IHsNCgkJCQkiQHR5cGUiOiAiUGVyc29uIiwNCgkJCQkibmFtZSI6ICJLVURBSklUVSINCgkJCX0sDQoJCQkicHVibGlzaGVyIjogew0KCQkJCSJAdHlwZSI6ICJPcmdhbml6YXRpb24iLA0KCQkJCSJuYW1lIjogImRldGlrY29tIiwNCgkJCQkibG9nbyI6IHsNCgkJCQkJIkB0eXBlIjogIkltYWdlT2JqZWN0IiwNCgkJCQkJInVybCI6ICJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZGV0aWsyL2ltYWdlcy9sb2dvLmpwZyINCgkJCQl9DQoJCQl9LA0KCQkJImRlc2NyaXB0aW9uIjogIkt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiINCgkJfQ0KICAgIAk8L3NjcmlwdD4NCiAgICA8c2NyaXB0PnZhciB3aWRfbWV0aG9kID0gIkdFVCI7PC9zY3JpcHQ+DQogICAgPCEtLXM6ZHRrcHJ2LS0+DQogICAgPCEtLWU6ZHRrcHJ2LS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgaWYgKG5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1VDQnJvd3Nlci9pKSAmJiBkb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbCA9PSAnaHR0cDonKSB7DQogICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICdodHRwczovLycgKyBkb2N1bWVudC5sb2NhdGlvbi5ob3N0ICsgZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWU7DQogICAgICAgIH0NCiAgICA8L3NjcmlwdD4NCg0KICAgIDwhLS0gUkVRVUlSRUQgLS0+DQoNCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCINCiAgICAgICAgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL2pxdWVyeS1taW4tMy4yLjEuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgdmFyIGR0a0dUTURMID0geyBkYXRhOiB7fSwgZ2V0TWV0YTogZnVuY3Rpb24gKGEsIHQpIHsgcmV0dXJuIG51bGwgIT09IChlID0gZG9jdW1lbnQuaGVhZC5xdWVyeVNlbGVjdG9yKCJbIiArIGEgKyAnPSInICsgdCArICciXScpKSA/IGUuY29udGVudCA6IG51bGwgfSwgYWRkRGF0YUxheWVyOiBmdW5jdGlvbiAoYSwgdCwgciA9IG51bGwpIHsgbnVsbCA9PT0gciAmJiAociA9IHQpLCBudWxsICE9PSAodmFsID0gZHRrR1RNREwuZ2V0TWV0YShhLCB0KSkgJiYgIiIgIT0gdmFsICYmIChkdGtHVE1ETC5kYXRhW3JdID0gdmFsKSB9LCBhZGRDdXN0b21EaW1lbnNpb246IGZ1bmN0aW9uIChhKSB7IGZvciAoaSA9IDA7IGkgPCBhLmxlbmd0aDsgaSsrKXN3aXRjaCAoYVtpXSkgeyBjYXNlICJrYW5hbGlkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImthbmFsaWQiKTsgYnJlYWs7IGNhc2UgImFydGljbGVpZCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJhcnRpY2xlaWQiKTsgYnJlYWs7IGNhc2UgImFydGljbGV0eXBlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGV0eXBlIik7IGJyZWFrOyBjYXNlICJhcnRpY2xlZGV3YXNhIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGVkZXdhc2EiKTsgYnJlYWs7IGNhc2UgImFydGljbGVob2F4IjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGVob2F4Iik7IGJyZWFrOyBjYXNlICJjcmVhdGVkYXRlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImNyZWF0ZWRhdGUiKTsgYnJlYWs7IGNhc2UgInB1Ymxpc2hkYXRlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInB1Ymxpc2hkYXRlIik7IGJyZWFrOyBjYXNlICJrZXl3b3JkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImtleXdvcmRzIiwgImtleXdvcmQiKTsgYnJlYWs7IGNhc2UgImlkZm9rdXMiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaWRmb2t1cyIpOyBicmVhazsgY2FzZSAibmFtYWZva3VzIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgIm5hbWFmb2t1cyIpOyBicmVhazsgY2FzZSAiaWRwcm9ncmFtIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImlkcHJvZ3JhbSIpOyBicmVhazsgY2FzZSAibmFtYXByb2dyYW0iOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAibmFtYXByb2dyYW0iKTsgYnJlYWs7IGNhc2UgInBhZ2VzaXplIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInBhZ2VzaXplIik7IGJyZWFrOyBjYXNlICJwYWdlbnVtYmVyIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInBhZ2VudW1iZXIiKTsgYnJlYWs7IGNhc2UgInZpZGVvcHJlc2VudCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJ2aWRlb3ByZXNlbnQiKTsgYnJlYWs7IGNhc2UgInZpZGVvX2lkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInZpZGVvX2lkIik7IGJyZWFrOyBjYXNlICJyZWZmZXJhbF91cmwiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAicmVmZmVyYWxfdXJsIik7IGJyZWFrOyBjYXNlICJjb250ZW50dHlwZSI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJjb250ZW50dHlwZSIpOyBicmVhazsgY2FzZSAicGxhdGZvcm0iOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAicGxhdGZvcm0iKTsgYnJlYWs7IGNhc2UgImF1dGhvciI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJhdXRob3IiKTsgYnJlYWs7IGNhc2UgInRpdGxlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJwcm9wZXJ0eSIsICJvZzp0aXRsZSIsICJ0aXRsZSIpOyBicmVhazsgY2FzZSAic3ViY2F0ZWdvcmkiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAic3ViY2F0ZWdvcmkiKTsgYnJlYWs7IGNhc2UgImtleXdvcmRrYW5hbCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJrZXl3b3Jka2FuYWwiKTsgYnJlYWs7IGNhc2UgImR1cmF0aW9uIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImR1cmF0aW9uIik7IGJyZWFrOyBjYXNlICJobF9uaGxfd3AiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaGxfbmhsX3dwIik7IGJyZWFrOyBjYXNlICJobF9uaGxfa2FuYWwiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaGxfbmhsX2thbmFsIik7IGJyZWFrOyBjYXNlICJvcmlnaW5hbFRpdGxlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgIm9yaWdpbmFsVGl0bGUiKTsgYnJlYWs7IGNhc2UgInZpZGVvX3N0b3J5X3VybCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJ2aWRlb19zdG9yeV91cmwiKSB9IH0sIGdlbmVyYXRlOiBmdW5jdGlvbiAoKSB7IHJldHVybiBjb250ZW50dHlwZSA9IGR0a0dUTURMLmdldE1ldGEoIm5hbWUiLCAiY29udGVudHR5cGUiKSwgZHRrR1RNREwuYWRkQ3VzdG9tRGltZW5zaW9uKFsia2FuYWxpZCIsICJhcnRpY2xlaWQiLCAiYXJ0aWNsZXR5cGUiLCAiYXJ0aWNsZWRld2FzYSIsICJhcnRpY2xlaG9heCIsICJjcmVhdGVkYXRlIiwgInB1Ymxpc2hkYXRlIiwgImtleXdvcmQiLCAiaWRmb2t1cyIsICJuYW1hZm9rdXMiLCAiaWRwcm9ncmFtIiwgIm5hbWFwcm9ncmFtIiwgInBhZ2VzaXplIiwgInBhZ2VudW1iZXIiLCAidmlkZW9wcmVzZW50IiwgInZpZGVvX2lkIiwgImNvbnRlbnR0eXBlIiwgInBsYXRmb3JtIiwgImF1dGhvciIsICJzdWJjYXRlZ29yaSIsICJrZXl3b3Jka2FuYWwiLCAiZHVyYXRpb24iLCAiaGxfbmhsX3dwIiwgImhsX25obF9rYW5hbCIsICJvcmlnaW5hbFRpdGxlIiwgInZpZGVvX3N0b3J5X3VybCJdKSwgZHRrR1RNREwuZGF0YS5ldmVudCA9ICJhcnRpY2xlUHVzaCIsIGR0a0dUTURMLmRhdGEgfSB9OyBkYXRhTGF5ZXIgPSBbZHRrR1RNREwuZ2VuZXJhdGUoKV07IHZhciBfcHQgPSBmdW5jdGlvbiAoYSwgdCwgciwgZCwgbikgeyBjb25zb2xlLmxvZygiX19wdDpndG1kbCIpLCB2b2lkIDAgPT09IHQgJiYgYS5oYXNBdHRyaWJ1dGUoImR0ci1ldnQiKSAmJiAodCA9IGEuZ2V0QXR0cmlidXRlKCJkdHItZXZ0IiksIGQgPSBhLmdldEF0dHJpYnV0ZSgiZHRyLWFjdCIpICsgIiAiICsgYS5nZXRBdHRyaWJ1dGUoImR0ci1pZHgiKSwgciA9IGEuZ2V0QXR0cmlidXRlKCJkdHItdHRsIikpOyB2YXIgbyA9IHsgZXZlbnQ6ICJwYW5lbCB0cmFja2luZyIsIGFjdGlvbjogImtsaWsgIiArIGQsIHBhbmVsbmFtZTogdC50b0xvd2VyQ2FzZSgpLCBwdF9mcm9tX3R5cGU6ICQoIm1ldGFbbmFtZT1jb250ZW50dHlwZV0iKS5hdHRyKCJjb250ZW50IiksIHB0X2Zyb21fa2FuYWw6ICQoIm1ldGFbbmFtZT1rYW5hbGlkXSIpLmF0dHIoImNvbnRlbnQiKSwgcHRfdG9fdXJsOiBhLmhyZWYsIHB0X3BsYXRmb3JtOiAkKCJtZXRhW25hbWU9cGxhdGZvcm1dIikuYXR0cigiY29udGVudCIpLCBwdF90b19wYWdlOiByIH07IGlmICh2b2lkIDAgIT09IG4pIHZhciBvID0gJC5leHRlbmQobywgbik7IGNvbnNvbGUubG9nKCJkYXRhbGF5ZXIgcHVzaCIsIG8pLCBkYXRhTGF5ZXIucHVzaChvKSB9OyAkKGZ1bmN0aW9uICgpIHsgcHVzaEV2ZW50ID0gZnVuY3Rpb24gKGEsIHQsIHIpIHsgdmFyIGQ7IGQgPSAidW5kZWZpbmVkIiAhPSB0eXBlb2YgYmFzZWthbmFsICYmIG51bGwgIT09IGJhc2VrYW5hbCA/IGJhc2VrYW5hbCA6IGJhc2V1cmwsIGRhdGFMYXllci5wdXNoKHsgZXZlbnQ6ICIiICsgYSwgYmNfbmF2X3VybDogIiIgKyB0LCBiY19kb21haW46ICIiICsgZCwgYmNfdGl0bGU6ICIiICsgciwgYmFjYV9qdWdhX2FpZDogIiIgKyBnZXRBcnRpY2xlSWQoYSwgdCkgfSkgfSwgZ2V0QXJ0aWNsZUlkID0gZnVuY3Rpb24gKGEsIHQpIHsgcmV0dXJuIChhcklEID0gKGFyclVybCA9IHQuc3BsaXQoIi8iKSkubGVuZ3RoID4gOSA/IGFyclVybFsyXS5pbmRleE9mKCJtLmRldGlrIikgPiAtMSB8fCBhcnJVcmxbMl0uaW5kZXhPZigibWRldi5kZXRpayIpID4gLTEgPyB0LmluZGV4T2YoIi9+IikgPiAtMSA/IGFyclVybFsxMF0gOiBhcnJVcmxbOV0gOiBhcnJVcmxbM10uaW5kZXhPZigic2VwYWtib2xhIikgPiAtMSA/IGFyclVybFs5XSA6IGFyclVybFs4XSA6IGFyclVybFsyXS5pbmRleE9mKCJnYXJ1ZGEuZGV0aWsiKSA+IC0xID8gdC5pbmRleE9mKCIvfiIpID4gLTEgPyBhcnJVcmxbNl0gOiBhcnJVcmxbNV0gOiB0LmluZGV4T2YoIi9+IikgPiAtMSA/ICJzZXBha2JvbGEiID09IGFyclVybFs0XSA/IGFyclVybFs2XSA6IGFyclVybFs1XSA6ICJzZXBha2JvbGEiID09IGFyclVybFszXSA/IGFyclVybFs1XSA6IGFyclVybFs0XSkuaW5kZXhPZigiZC0iKSA+IC0xICYmIChhcklEID0gYXJJRC5zcGxpdCgiLSIpWzFdKSwgYXJJRCB9LCAkKCIjcmVsYXRlZGd0bSBhIikuY2xpY2soZnVuY3Rpb24gKCkgeyBwdXNoRXZlbnQoImJlcml0YXRlcmthaXQiLCAkKHRoaXMpLmF0dHIoImhyZWYiKSwgJCh0aGlzKS50ZXh0KCkudHJpbSgpKSB9KSwgJCgiI3JlYWR0b29ndG0iKS5oYXNDbGFzcygibGlzdF9fb3RoZXJfX2l0ZW0iKSA/IChzZWxlY3RvciA9ICQoIiNyZWFkdG9vZ3RtIGg1IGEiKSwgc2V0ID0gITApIDogKHNlbGVjdG9yID0gJCgiI3JlYWR0b29ndG0gYSIpLCBzZXQgPSAhMSksIHNlbGVjdG9yLmNsaWNrKGZ1bmN0aW9uICgpIHsgdmFyIGE7ICQoImgyIiwgdGhpcykubGVuZ3RoICYmIChhID0gJCgiaDIiLCB0aGlzKS50ZXh0KCkudHJpbSgpKSwgJCgiaDMiLCB0aGlzKS5sZW5ndGggJiYgKGEgPSAkKCJoMyIsIHRoaXMpLnRleHQoKS50cmltKCkpLCAkKCJoNCIsIHRoaXMpLmxlbmd0aCAmJiAoYSA9ICQoImg0IHN0cm9uZyIsIHRoaXMpLmxlbmd0aCA/ICQoImg0IHN0cm9uZyIsIHRoaXMpLnRleHQoKS50cmltKCkgOiAkKCJoNCIsIHRoaXMpLnRleHQoKS50cmltKCkpLCAhMCA9PSBzZXQgJiYgKGEgPSAkKHRoaXMpLnRleHQoKS50cmltKCkpLCAkKCJoNiIsIHRoaXMpLmxlbmd0aCAmJiAoYSA9ICQoImg2IiwgdGhpcykudGV4dCgpLnRyaW0oKSksIHB1c2hFdmVudCgiYmFjYWp1Z2EiLCAkKHRoaXMpLmF0dHIoImhyZWYiKSwgYSkgfSkgfSk7DQogICAgPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiDQogICAgICAgIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2xpYnMvbGl2ZWNvdW50ZXIvZGV0aWtMaXZlVXNlckNvdW50ZXJSZXNwb25zZS5qcz92PTIwMjQwODAyMTUiIGRlZmVyPjwvc2NyaXB0Pg0KDQogICAgPCEtLSBzOnByZWxvYWQgLS0+DQogICAgPCEtLSBlOnByZWxvYWQgLS0+DQoNCg0KDQogICAgPCEtLSBEeW5hbWljIFByb3Zpc2lvbmluZyAtLT4NCiAgICA8c2NyaXB0IGFzeW5jIHNyYz0iLy9taWNyby5ydWJpY29ucHJvamVjdC5jb20vcHJlYmlkL2R5bmFtaWMvMTE1MzAuanMiPjwvc2NyaXB0Pg0KDQogICAgPCEtLSBTdGFydCBUYWcgREZQIC0tPg0KICAgIDxzY3JpcHQgYXN5bmMgc3JjPSJodHRwczovL3NlY3VyZXB1YmFkcy5nLmRvdWJsZWNsaWNrLm5ldC90YWcvanMvZ3B0LmpzIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgYXN5bmMgc3JjPSIvL3NlcnZnMS5uZXQvby5qcz91aWQ9OGVjMDhiZjE0MWJlMGNiNDMxZTA0ZGM5IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pg0KICAgIDwhLS0gT3B0aW1hIFRhZyAtLT4NCg0KICAgIDwhLS0gSW5zdXJhZCB0YWcgLS0+DQogICAgPHNjcmlwdCBhc3luYyBzcmM9Imh0dHBzOi8vY2RuLmluc3VyYWRzLmNvbS9ib290c3RyYXAvUzlIN09NWkIuanMiPjwvc2NyaXB0Pg0KDQoNCg0KICAgIDwhLS0gRTp0YWdoZWFkIC0tPg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgdmFyIGJhc2V1cmwgPSAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbSIsDQogICAgICAgICAgICBhc3NldF91cmwgPSAiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2luZXQyL20iLA0KICAgICAgICAgICAgc2l0ZV9pZCA9ICI1IiwNCiAgICAgICAgICAgIGNoYW5uZWxfaWQgPSAiMTA1IiwNCiAgICAgICAgICAgIHJlc3BvbnNpdmUgPSBmYWxzZSwNCiAgICAgICAgICAgIGl0cF9sb2NhbHNfYWN0aXZlID0gZmFsc2UsDQogICAgICAgICAgICBpdHBfc2l0ZV9uYW1lID0gIktVREFKSVRVIg0KICAgIDwvc2NyaXB0Pg0KDQogICAgPCEtLXByb2ZpbGVfYWQ6ZGV0aWtfaW5ldC0tPg0KICAgIDwhLS1sYXlvdXRfdHlwZTptb2JpbGUtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIGZ1bmN0aW9uIGdldFNjcmlwdChlLCB0KSB7IHZhciBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7IGEuc3JjID0gZTsgdmFyIG4gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLCBkID0gITE7IGEub25sb2FkID0gYS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7IGQgfHwgdGhpcy5yZWFkeVN0YXRlICYmICJsb2FkZWQiICE9IHRoaXMucmVhZHlTdGF0ZSAmJiAiY29tcGxldGUiICE9IHRoaXMucmVhZHlTdGF0ZSB8fCAoZCA9ICEwLCB0KCksIGEub25sb2FkID0gYS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBudWxsLCBuLnJlbW92ZUNoaWxkKGEpKSB9LCBuLmFwcGVuZENoaWxkKGEpIH0NCiAgICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIGZ1bmN0aW9uIGl0cEdldEZpbGVOYW1lRnJvbVVybChpKSB7IHJldHVybiBuZXcgVVJMKGkpLnBhdGhuYW1lLnNwbGl0KCIvIikucG9wKCkuc3BsaXQoIi4iKS5zbGljZSgwLCAtMSkuam9pbigiIikgfSBmdW5jdGlvbiBpdHBJbml0U2Nyb2xsQXNzZXQoaSwgbiwgdCA9IGZ1bmN0aW9uICgpIHsgfSkgeyBsZXQgZSA9ICJpbml0ZWQiICsgaXRwR2V0RmlsZU5hbWVGcm9tVXJsKGkpOyB3aW5kb3dbZV0gPSAhMSwgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsIChmdW5jdGlvbiAoKSB7IHdpbmRvd1tlXSB8fCB3aW5kb3cuc2Nyb2xsWSA8PSBuIHx8ICh3aW5kb3dbZV0gPSAhMCwgZ2V0U2NyaXB0KGksIHQpKSB9KSkgfQ0KICAgIDwvc2NyaXB0Pg0KPC9oZWFkPg0KDQo8Ym9keT4NCiAgICA8ZGl2IGNsYXNzPSJoZWFkZXItdG9wIj48L2Rpdj4NCiAgICA8aGVhZGVyIGNsYXNzPSJoZWFkZXIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZC1yb3cgbm8tZ3V0dGVyIGZsZXgtYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sdW1uLWF1dG8gaGVhZGVyX19sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ibWVudUNsaWNrIiBjbGFzcz0ibWVudS1idXR0b24iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ibWVudSBoYW1idXJnZXIiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItYWN0PSJtZW51IGhhbWJ1cmdlciIgb25jbGljaz0iX3B0KHRoaXMpIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lbnUtYnV0dG9uX193cmFwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaGVhZGVyX19icmFuZCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPScjIyMnIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ibG9nbyBLVURBSklUVSIgZHRyLWFjdD0ibG9nbyBLVURBSklUVSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiPjxpbWcgd2lkdGg9JzExNicgaGVpZ2h0PScyNCcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjPSdodHRwczovL2F3c2ltYWdlcy5kZXRpay5uZXQuaWQvY29tbXVuaXR5L21lZGlhL3Zpc3VhbC8yMDIwLzA5LzE3L2xvZ28tZGV0aWtpbmV0LnBuZz9kPTEnDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSdLVURBSklUVScgYWx0PSdLVURBSklUVScgY2xhc3M9J2xvZ28nIC8+PC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2x1bW4tYXV0byBoZWFkZXJfX3JpZ2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0ic2VhcmNoIiBkdHItc2VjPSJzZWFyY2giIGR0ci1hY3Q9InNlYXJjaCIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9zZWFyY2giIGlkPSJzZWFyY2hDbGljayIgY2xhc3M9ImhlYWRlcl9faWNvbiBoZWFkZXJfX2ljb24tLXNlYXJjaCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLXNlYXJjaCI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJidXR0b24gbGl2ZSB0diIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItdHRsPSJsaXZlIHR2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJoZWFkZXJfX2ljb24gaGVhZGVyX19pY29uLS1saXZlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tbGl2ZS10diI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdmJhciBuYXZiYXItc2hhZG93Ij4NCg0KDQogICAgICAgICAgICAgICAgPG5hdiBjbGFzcz0ibmF2YmFyLWZpcnN0IG5hdmJhci0tc2Nyb2xsIj4NCiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjEiIGR0ci10dGw9IkhvbWUiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIb21lIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMiIgZHRyLXR0bD0iR2FkZ2V0IiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR2FkZ2V0IDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyIgZHRyLXR0bD0iQ3liZXJsaWZlIiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3liZXJsaWZlIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNCIgZHRyLXR0bD0iR2FtZXMgJmFtcDsgRXNwb3J0IiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR2FtZXMgJiBFc3BvcnQgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI1IiBkdHItdHRsPSJCdXNpbmVzcyAmYW1wOyBQb2xpY3kiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCdXNpbmVzcyAmIFBvbGljeSA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjYiIGR0ci10dGw9IlNjaWVuY2UiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTY2llbmNlIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNyIgZHRyLXR0bD0iVGVsZWNvbW11bmljYXRpb24iIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZWxlY29tbXVuaWNhdGlvbiA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjgiIGR0ci10dGw9IlRpcHMgJmFtcDsgVHJpayIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpcHMgJiBUcmlrIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iOSIgZHRyLXR0bD0iRm90byIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG8gPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIxMCIgZHRyLXR0bD0iVmlkZW8iIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWaWRlbyA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjExIiBkdHItdHRsPSJJbmRla3MiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmRla3MgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIxMiIgZHRyLXR0bD0iU2VjdXJpdHkiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZWN1cml0eSA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KDQogICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgPC9uYXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9oZWFkZXI+DQoNCg0KDQoNCg0KICAgIDxkaXY+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLXdyYXAgIG5hdmJhci1zaGFkb3ciPg0KICAgICAgICAgICAgICAgIDxuYXYgY2xhc3M9Im5hdmJhci1zZWNvbmQgbmF2YmFyLS1zY3JvbGwiPg0KICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiI+DQogICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFM6bmF2YmFyIC0tPiA8IS0tIEU6bmF2YmFyIC0tPiA8IS0tIFM6bmF2YmFyMiAtLT4gPCEtLSBFOm5hdmJhcjIgLS0+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2X19pdGVtLS1uZXcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJzZWNvbmQgbmF2YmFyIiBkdHItYWN0PSJzZWNvbmQgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjEiIGR0ci10dGw9IkdhZGdldCBvZiB0aGUgTW9udGgiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHYWRnZXQgb2YgdGhlIE1vbnRoIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2X19pdGVtLS1uZXcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJzZWNvbmQgbmF2YmFyIiBkdHItYWN0PSJzZWNvbmQgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjIiIGR0ci10dGw9IkxhYiBHYWRnZXQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMYWIgR2FkZ2V0IDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9InNlY29uZCBuYXZiYXIiIGR0ci1hY3Q9InNlY29uZCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyIgZHRyLXR0bD0iS29tcGFyYXNpIEdhZGdldCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvbXBhcmFzaSBHYWRnZXQgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ic2Vjb25kIG5hdmJhciIgZHRyLWFjdD0ic2Vjb25kIG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI0IiBkdHItdHRsPSJGb3Rvc3RvcCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG9zdG9wIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9InNlY29uZCBuYXZiYXIiIGR0ci1hY3Q9InNlY29uZCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNSIgZHRyLXR0bD0iSW5ldCBHcmFmaXMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmV0IEdyYWZpcyA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KDQogICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgPC9uYXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPCEtLSBTOkZSQU1FQkFSIFdJREdFVC0tPg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9jc3MvbS9mcmFtZWJhci5jc3M/dj0yMDI0MDgwMjE1NDQzIiB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXkgYm94LW92ZXJsYXktLWFycm93LWxvZ28gYm94LW1lbnUgZnJhbWViYXJhc3NldC1sYXp5Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXlfX2hlYWRlciI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSB1c2VyLWxvZyI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX2F1dGhvciI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InN0YXR1c191c2VyX25mIiBjbGFzcz0iZnJhbWViYXJfdXNlciIgc3R5bGU9ImRpc3BsYXk6aW5oZXJpdCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fYXV0aG9yLWltYWdlLWF2YXRhciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvZnJhbWViYXIvdXNlcl9kZWZhdWx0LndlYnAiIGFsdD0ia3VkYWppdHUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idXNlci1sb2dfX25hbWUiPkhhbG8gRGV0aWtlcjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0idXNlci1sb2dfX2xvZ2luIj5Nb2hvbiBUdW5nZ3UuLi48L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXlfX2JvZHkiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiI+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvd2VicC9mcmFtZWJhci9mYXZpY29uLWRldGlrLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSJrdWRhaml0dSIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtjb20NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tdHdvLWNvbCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2hpbmRpa2VzYXRoLmNvbS8iIHRhcmdldD0iIF9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19Nb3N0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXJwb3B1bGVyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9oaW5kaWtlc2F0aC5jb20vIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19saXZldHYud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpdmUgVFYNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19raXJpbV90dWxpc2FuLTN4LndlYnAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLaXJpbSBUdWxpc2FuDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9oaW5kaWtlc2F0aC5jb20vIiB0YXJnZXQ9IiBfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfcGVtaWx1LTN4LndlYnAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1BlbWlsdQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faXRlbS1uZXciPk5FVzwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXJfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgS2F0ZWdvcmkgQmVyaXRhIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tdHdvLWNvbCI+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa05ld3MiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19kZXRpay0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtOZXdzDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9ImRldGlrRmluYW5jZSIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19maW5hbmNlLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0ZpbmFuY2UNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyMjIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJLVURBSklUVSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2luZXQtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtVREFKSVRVDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0hvdCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2hvdC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtIb3QNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrU3BvcnQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19zcG9ydC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtTcG9ydA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iU2VwYWtib2xhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc2VwYWtib2xhLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXBha2JvbGENCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyBkdHItZXZ0PSIgaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtPdG8iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19vdG8tM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrT3RvDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa1RyYXZlbCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3RyYXZlbC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtUcmF2ZWwNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrRm9vZCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2Zvb2QtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrRm9vZA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtIZWFsdGgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19oZWFsdGgtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSGVhbHRoDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJXb2xpcG9wIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfd29saXBvcC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgV29saXBvcA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iRGV0aWtYIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfWC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1IiB3aWR0aD0iMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRGV0aWtYDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIyMERldGlrIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfMjBELTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMERldGlrDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0ZvdG8iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19mb3RvLndlYnAiIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0ZvdG8NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrRWR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfZWR1LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0VkdQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtIaWttYWgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19IaWttYWgud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSGlrbWFoDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9ImRldGlrUHJvcGVydGkiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNwcm9wZXJ0aS53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtQcm9wZXJ0aQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtQb3AiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY29ucG9wLndlYnAiIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1BvcA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2l0ZW0tbmV3Ij5ORVc8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXIiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1mcmFtZWJhcl9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICBEYWVyYWggPC9kaXY+DQogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2LS10d28tY29sIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrSmF0ZW5nIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfamF0ZW5nLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0phdGVuZw0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtKYXRpbSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2phdGltLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0phdGltDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0phYmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfamFiYXItM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSmFiYXINCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrU3Vsc2VsIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc3Vsc2VsLTJ4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bHNlbA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtTdW11dCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3N1bXV0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bXV0DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImgjIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0JhbGkiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY29uZGV0aWtiYWxpLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0JhbGkNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkeD0iZGV0aWtTdW1iYWdzZWwiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc3VtYmFnc2VsLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bWJhZ3NlbA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtKb2dqYSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2pvZ2phLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0pvZ2phDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faXRlbS1uZXciPk5FVzwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1mcmFtZWJhciI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgIExheWFuYW4gPC9kaXY+DQogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2LS10d28tY29sIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IlBhc2FuZyBNYXRhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfcGFzYW5nX21hdGEtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhc2FuZyBNYXRhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJhZHNtYXJ0Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19hZHNtYXJ0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZHNtYXJ0DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJGb3J1bSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2ZvcnVtLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBGb3J1bQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtFdmVudCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2V2ZW50LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0V2ZW50DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IlRyYW5zIFNub3cgV29ybGQiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfdHJhbnNfc25vd19sYXRlc3Qud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zIFNub3cgV29ybGQNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkeD0iVHJhbnMgU3R1ZGlvIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3RyYW5zX3N0dWRpb19sYXRlc3Qud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zIFN0dWRpbw0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJiZXJidWF0YmFpay5pZCIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9sb2dvLWJlcmJ1YXRiYWlraWQud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlcmJ1YXRiYWlrLmlkDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9Inppc3dhZmN0YXJzYS5pZCIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY196aXN3YWZvay53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgemlzd2FmY3RhcnNhLmlkDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IlNpZ25hdHVyZSBBd2FyZHMiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvZmF2aWNvbi1zaWduYXR1cmUlMjAoMSkud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpZ25hdHVyZSBBd2FyZHMNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pdGVtLW5ldyI+TkVXPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXJfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgRGV0aWsgTmV0d29yayA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBuYXYtLXR3by1jb2wiPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJDTk4gSW5kb25lc2lhIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2Nubi0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ05OIEluZG9uZXNpYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIGR0ci1ldnQ9IiBoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IkNOQkMgSW5kb25lc2lhIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX0NOQkMtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENOQkMgSW5kb25lc2lhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJIYWkgQnVuZGEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19oYWlfYnVuZGEtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEhhaSBCdW5kYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iSW5zZXJ0TGl2ZSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2luc2VydC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSW5zZXJ0TGl2ZQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iQmVhdXR5bmVzaWEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19iZWF1dHluZXNpYS0xLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCZWF1dHluZXNpYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJGZW1hbGUgRGFpbHkiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfZmVtYWxlX2RhaWx5LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBGZW1hbGUgRGFpbHkNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IkNYTyBNZWRpYSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2N4by53ZWJwIiBhbHQ9Imt1ZGFqaXR1IiB3aWR0aD0iMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ1hPIE1lZGlhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheSBzZWFyY2gtY29udGFpbmVyIHNlYXJjaGFzc2V0LWxhenkiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9faGVhZGVyIGdyaWQtcm93Ij4NCiAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBpZD0ic2VhcmNoQ2xvc2UiIGNsYXNzPSJjb2x1bW4tYXV0byBkaXNwbGF5LWZsZXggYWxpZ24taXRlbXMtY2VudGVyIj4NCiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS1zbSBpY29uLWFycm93LWxlZnQiPjwvaT4NCiAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbHVtbiI+DQogICAgICAgICAgICAgICAgPGZvcm0gYWN0aW9uPSIjIiBtZXRob2Q9IkdFVCI+DQogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0ic2VhcmNoLXRleHQiIG5hbWU9InF1ZXJ5IiBjbGFzcz0ic2VhcmNoLW92ZXJsYXlfX2lucHV0Ig0KICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9IkNhcmkgZGkgZGV0aWtjb20iIHJlcXVpcmVkIGF1dG9jb21wbGV0ZT0ib2ZmIj4NCiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic2l0ZWlkIiB2YWx1ZT0iNSIgLz4NCiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic291cmNlX2thbmFsIiB2YWx1ZT0idHJ1ZSIgLz4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imljb24tcmlnaHQgaGlkZS1lbGVtZW50IiBpZD0iY2xlYXItc2VhcmNoLXRleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvaWNvbi1jbGVhci53ZWJwP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIGFsdD0ia3VkYWppdHUiPg0KICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgPC9mb3JtPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9fYm9keSI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9fYm9keS1jb250ZW50Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaC1zZWN0aW9uX190aXRsZSI+WWFuZyBzZWRhbmcgcmFtYWkgZGljYXJpIDxpbWcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvaWNvbi1ob3Qud2VicD92PTIwMjQwODAyMTU0NDMiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Im1nbC04IiB3aWR0aD0iMTIiIGhlaWdodD0iMTUiIGFsdD0ia3VkYWppdHUiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8b2wgY2xhc3M9InNlYXJjaC1zZWN0aW9uX19saXN0IiBpZD0idG9wLWtleXdvcmQtc2VhcmNoIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyI+PHNwYW4gY2xhc3M9ImZvbnQtYm9sZCI+TG9hZGluZy4uLiA8L3NwYW4+PC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgIDwvb2w+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VhcmNoLXNlY3Rpb24iPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbl9fdGl0bGUiPlRlcmFraGlyIHlhbmcgZGljYXJpPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxvbCBjbGFzcz0ic2VhcmNoLXNlY3Rpb25fX2xpc3QiIGlkPSJsYXN0LXNlYXJjaCI+DQogICAgICAgICAgICAgICAgICAgICAgICBMb2FkaW5nLi4uDQogICAgICAgICAgICAgICAgICAgIDwvb2w+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaC1vdmVybGF5X19ib2R5LXN1Z2dlc3QgaGlkZS1lbGVtZW50Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbiI+DQogICAgICAgICAgICAgICAgICAgIDxvbCBjbGFzcz0ic2VhcmNoLXNlY3Rpb25fX2xpc3QiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHN1Z2dlc3Q+PC9zdWdnZXN0Pg0KICAgICAgICAgICAgICAgICAgICA8L29sPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDxzY3JpcHQ+DQogICAgICAgIGxldCB1cmxQYXJhbWV0ZXIgPSAnbnVsbCc7DQogICAgPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9qb25hcGVkaWEuY29tL2Fzc2V0cy9qcy9mcmFtZWJhci9zZWFyY2guanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCINCiAgICAgICAgc3JjPSJodHRwczovL2pvbmFwZWRpYS5jb20vYXNzZXRzL2pzL2ZyYW1lYmFyL3NlYXJjaC1hdXRvY29tcGxldGUuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIHZhciBjbGljayA9ICQoIiNtZW51Q2xpY2siKTsNCiAgICAgICAgdmFyIHNlYXJjaCA9ICQoIiNzZWFyY2hDbGljayIpOw0KICAgICAgICB2YXIgY2xvc2VTZWFyY2ggPSAkKCIjc2VhcmNoQ2xvc2UiKTsNCiAgICAgICAgZnVuY3Rpb24gb3Blbl9tZW51KCkgew0KICAgICAgICAgICAgJCgiYm9keSIpLmFwcGVuZCgiPGRpdiBjbGFzcz0nanMtb3ZlcmxheSc+PC9kaXY+Iik7DQogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCJib2R5IikuYWRkQ2xhc3MoImpzLW1lbnUtYWN0aXZlIik7DQogICAgICAgICAgICB9LCAxMDApOw0KICAgICAgICB9DQogICAgICAgIGZ1bmN0aW9uIGNsb3NlX21lbnUoKSB7DQogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCIuanMtb3ZlcmxheSIpLnJlbW92ZSgpOw0KICAgICAgICAgICAgfSwgMzAwKTsNCiAgICAgICAgICAgICQoImJvZHkiKS5yZW1vdmVDbGFzcygianMtbWVudS1hY3RpdmUiKTsNCiAgICAgICAgfQ0KICAgICAgICBjbGljay5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgdmFyIGZyYW1lYmFyYXNzZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJmcmFtZWJhcmFzc2V0LWxhenkiKTsNCiAgICAgICAgICAgIGlmIChmcmFtZWJhcmFzc2V0Lmxlbmd0aCAhPSAwKSB7DQogICAgICAgICAgICAgICAgdmFyIGltZ2ZyYW1lYmFyYXNzZXQgPSBmcmFtZWJhcmFzc2V0WzBdLnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLXNyY10iKTsNCiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGltZ2ZyYW1lYmFyYXNzZXQubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgICAgICAgaW1nZnJhbWViYXJhc3NldFtpXS5zZXRBdHRyaWJ1dGUoInNyYyIsIGltZ2ZyYW1lYmFyYXNzZXRbaV0uZ2V0QXR0cmlidXRlKCJkYXRhLXNyYyIpKTsNCiAgICAgICAgICAgICAgICAgICAgaW1nZnJhbWViYXJhc3NldFtpXS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtc3JjIikNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICBpZiAoJCgiYm9keSIpLmhhc0NsYXNzKCJqcy1tZW51LWFjdGl2ZSIpKSB7DQogICAgICAgICAgICAgICAgY2xvc2VfbWVudSgpOw0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICBvcGVuX21lbnUoKTsNCiAgICAgICAgICAgICAgICB2YXIgc2Nyb2xsID0gJCh3aW5kb3cpLnNjcm9sbFRvcCgpOw0KICAgICAgICAgICAgICAgIHZhciBoZWlnaHRfYmlsbGJvYXJkID0gJCgiI21lZ2FiaWxsYm9hcmQiKS5oZWlnaHQoKTsNCiAgICAgICAgICAgICAgICBpZiAoKCQoIiNtZWdhYmlsbGJvYXJkIikubGVuZ3RoKSAmJiAoc2Nyb2xsIDwgaGVpZ2h0X2JpbGxib2FyZCkpIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiaHRtbCwgYm9keSIpLmFuaW1hdGUoeyBzY3JvbGxUb3A6IGhlaWdodF9iaWxsYm9hcmQgfSk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgJChkb2N1bWVudCkuYmluZCgibW91c2V1cCB0b3VjaGVuZCIsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICAgICAgdmFyIHRoaXNfY2xpY2sgPSAkKCIuYm94LW92ZXJsYXksICNtZW51Q2xpY2siKTsNCiAgICAgICAgICAgICAgICBpZiAoJCgiYm9keSIpLmhhc0NsYXNzKCJqcy1tZW51LWFjdGl2ZSIpKSB7DQogICAgICAgICAgICAgICAgICAgIGlmICgNCiAgICAgICAgICAgICAgICAgICAgICAgICF0aGlzX2NsaWNrLmlzKGUudGFyZ2V0KSAmJi8vIGlmIHRoZSB0YXJnZXQgb2YgdGhlIGNsaWNrIGlzbid0IHRoZSBjb250YWluZXIuLi4NCiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXNfY2xpY2suaGFzKGUudGFyZ2V0KS5sZW5ndGggPT09IDANCiAgICAgICAgICAgICAgICAgICAgKSB7IC8vIC4uLiBub3IgYSBkZXNjZW5kYW50IG9mIHRoZSBjb250YWluZXINCiAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5qcy1vdmVybGF5IikucmVtb3ZlKCk7DQogICAgICAgICAgICAgICAgICAgICAgICB9LCAzMDApOw0KICAgICAgICAgICAgICAgICAgICAgICAgJCgiYm9keSIpLnJlbW92ZUNsYXNzKCJqcy1tZW51LWFjdGl2ZSIpOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQogICAgICAgICAgICAkKGRvY3VtZW50KS5vbigibW91c2V3aGVlbCIsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICAgICAgdmFyIHNjcm9sbCA9ICQod2luZG93KS5zY3JvbGxUb3AoKTsNCiAgICAgICAgICAgICAgICBpZiAoKCQoImJvZHkiKS5oYXNDbGFzcygianMtbWVudS1hY3RpdmUiKSkgJiYgKCQoIiNtZWdhYmlsbGJvYXJkIikubGVuZ3RoKSAmJiAoc2Nyb2xsIDwgaGVpZ2h0X2JpbGxib2FyZCkpIHsNCiAgICAgICAgICAgICAgICAgICAgY2xvc2VfbWVudSgpOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgJChkb2N1bWVudCkub24oInRvdWNobW92ZSIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKGRvY3VtZW50KS50cmlnZ2VyKCJtb3VzZXdoZWVsIik7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSk7DQogICAgICAgIC8vIE5FVyBTRUFSQ0gNCiAgICAgICAgZnVuY3Rpb24gb3Blbl9zZWFyY2goKSB7DQogICAgICAgICAgICAkKCJib2R5IikuYXBwZW5kKCI8ZGl2IGNsYXNzPSdqcy1vdmVybGF5Jz48L2Rpdj4iKTsNCiAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9faW5wdXQiKS5mb2N1cygpOw0KICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgJCgiYm9keSIpLmFkZENsYXNzKCJzZWFyY2gtYWN0aXZlIik7DQogICAgICAgICAgICB9LCAxMDApOw0KICAgICAgICB9DQogICAgICAgIGZ1bmN0aW9uIGNsb3NlX3NlYXJjaCgpIHsNCiAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICQoIi5qcy1vdmVybGF5IikucmVtb3ZlKCk7DQogICAgICAgICAgICB9LCAzMDApOw0KICAgICAgICAgICAgJCgiYm9keSIpLnJlbW92ZUNsYXNzKCJzZWFyY2gtYWN0aXZlIik7DQogICAgICAgIH0NCiAgICAgICAgc2VhcmNoLmNsaWNrKGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICB2YXIgc2VhcmNoYXNzZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJzZWFyY2hhc3NldC1sYXp5Iik7DQogICAgICAgICAgICBpZiAoc2VhcmNoYXNzZXQubGVuZ3RoICE9IDApIHsNCiAgICAgICAgICAgICAgICB2YXIgaW1nc2VhcmNoYXNzZXQgPSBzZWFyY2hhc3NldFswXS5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1zcmNdIik7DQogICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbWdzZWFyY2hhc3NldC5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICAgICAgICBpbWdzZWFyY2hhc3NldFtpXS5zZXRBdHRyaWJ1dGUoInNyYyIsIGltZ3NlYXJjaGFzc2V0W2ldLmdldEF0dHJpYnV0ZSgiZGF0YS1zcmMiKSk7DQogICAgICAgICAgICAgICAgICAgIGltZ3NlYXJjaGFzc2V0W2ldLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1zcmMiKQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIEZyYW1lYmFyU2VhcmNoKCkub25Mb2FkKCk7DQogICAgICAgICAgICBDb29raWVzU2VhcmNoKCkub25Mb2FkKCk7DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICBvcGVuX3NlYXJjaCgpOw0KICAgICAgICB9KTsNCiAgICAgICAgY2xvc2VTZWFyY2guY2xpY2soZnVuY3Rpb24gKGUpIHsNCiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTsNCiAgICAgICAgICAgIGNsb3NlX3NlYXJjaCgpOw0KICAgICAgICB9KTsNCiAgICAgICAgJCgiLmNsZWFyLWxpc3QiKS5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgJCh0aGlzKS5wYXJlbnQoImxpIikucmVtb3ZlKCk7DQogICAgICAgIH0pOw0KICAgICAgICB2YXIgdGV4dENvdW50ID0gJCgiI3NlYXJjaC10ZXh0Iik7DQogICAgICAgIHRleHRDb3VudC5vbigna2V5dXAgbW91c2V1cCcsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICB2YXIgY2hhcnNFbnRlcmVkID0gdGV4dENvdW50LnZhbCgpLmxlbmd0aDsNCiAgICAgICAgICAgIGlmIChjaGFyc0VudGVyZWQgPiAwKSB7DQogICAgICAgICAgICAgICAgJCgiI2NsZWFyLXNlYXJjaC10ZXh0IikucmVtb3ZlQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1jb250ZW50IikuYWRkQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1zdWdnZXN0IikucmVtb3ZlQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAkKCIjY2xlYXItc2VhcmNoLXRleHQiKS5hZGRDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LXN1Z2dlc3QiKS5hZGRDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LWNvbnRlbnQiKS5yZW1vdmVDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0pOw0KICAgICAgICAkKCIjY2xlYXItc2VhcmNoLXRleHQiKS5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgdGV4dENvdW50LnZhbCgiIik7DQogICAgICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCJoaWRlLWVsZW1lbnQiKTsNCiAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1zdWdnZXN0IikuYWRkQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LWNvbnRlbnQiKS5yZW1vdmVDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgIH0pOw0KICAgIDwvc2NyaXB0Pg0KDQogICAgPHN0eWxlPg0KICAgICAgICBAaW1wb3J0IHVybCgiaHR0cHM6Ly9hd3NjZG5zdGF0aWMuZGV0aWsubmV0LmlkL2xpdmUvX3JtYmFzc2V0cy9zY3JvbGxwYWdlL3Njcm9sbHBhZ2UuY3NzIik7DQogICAgPC9zdHlsZT4NCiAgICA8ZGl2IGNsYXNzPSJib3gtYWRzIHRleHQtY2VudGVyIHNjcm9sbHBhZ2UiIHN0eWxlPSJkaXNwbGF5OiBub25lOyBiYWNrZ3JvdW5kLWNvbG9yOiNGOEY4Rjg7aGVpZ2h0OiAxODBweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoNCjEwMCU7bWFyZ2luLXRvcDogMTVweDsiPg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KDQoNCg0KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlX19oZWFkZXIiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFnZV9fYnJlYWRjcnVtYiI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyMjIiBjbGFzcz0iaG9tZSI+S1VEQUpJVFU8L2E+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImJyZWFkY3J1bWIiIGR0ci1zZWM9ImJyZWFkY3J1bWJrYW5hbCIgZHRyLWFjdD0iYnJlYWRjcnVtYiBrYW5hbCINCiAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItdHRsPSJDeWJlcmxpZmUiPkN5YmVybGlmZTwvYT4NCg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KDQoNCg0KICAgICAgICA8YXJ0aWNsZSBjbGFzcz0iZGV0YWlsIj4NCg0KDQoNCg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX2hlYWRlciI+DQoNCiAgICAgICAgICAgICAgICA8aDEgY2xhc3M9ImRldGFpbF9fdGl0bGUiPkt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtPC9oMT4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX2F1dGhvciI+S1VEQUpJVFU8L2Rpdj4NCg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPg0KDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibi1jb2x1bW5zLTIiPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2t1ZGFqaXR1LnNob3J0Lmd5L2t1ZGFqaXR1LWRhZnRhciIgcmVsPSJub2ZvbGxvdyBub3JlZmVycmVyIiBjbGFzcz0ibG9naW4iPkxPR0lOPC9hPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2t1ZGFqaXR1LnNob3J0Lmd5L2t1ZGFqaXR1LWRhZnRhciIgcmVsPSJub2ZvbGxvdyBub3JlZmVycmVyIiBjbGFzcz0icmVnaXN0ZXIiPkRBRlRBUjwvYT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KDQoNCg0KDQoNCg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRldGFpbF9fbWVkaWEiPg0KICAgICAgICAgICAgICAgICAgICA8ZmlndXJlIGR0ci1ldnQ9ImNvdmVyIGltYWdlIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImNvdmVyIGltYWdlIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iZGV0YWlsX19tZWRpYS1pbWFnZSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIiBhbHQ9Ikt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJLdWRhaml0dSIgY2xhc3M9InBfaW1nX3pvb21pbiBpbWctem9vbWluIiAvPg0KDQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uIGNsYXNzPSJkZXRhaWxfX21lZGlhLWNhcHRpb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG86IEtVREFKSVRVPC9maWdjYXB0aW9uPg0KICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8cD5LdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS48L3A+DQogICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJsaW5rc2lzaXAiPg0KICAgICAgICAgICAgICAgICAgICA8dGJvZHk+DQogICAgICAgICAgICAgICAgICAgICAgICA8dHI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsaWhhdGpnIj48c3Ryb25nPkJhY2EganVnYTogPC9zdHJvbmc+PGEgZGF0YS1sYWJlbD0iTGlzdCBCZXJpdGEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1hY3Rpb249IkJlcml0YSBQaWxpaGFuIiBkYXRhLWNhdGVnb3J5PSJEZXRpbCBBcnRpa2VsIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyI+VmlyYWwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbTwvYT48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4NCiAgICAgICAgICAgICAgICA8L3RhYmxlPg0KICAgICAgICAgICAgICAgIDxiciAvPjxiciAvPg0KICAgICAgICAgICAgICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvZW1iZWQvdmlldy1jb3VudGVyL2Nzcy92aWRlby1waXAuY3NzP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWV2cCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFldnBfX2hlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZXZwX19sb2dvIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJwaWN0dXJlIGluIHBpY3R1cmUiIGR0ci1zZWM9InBpY3R1cmUgaW4gcGljdHVyZSIgZHRyLWFjdD0ibG9nbyAyMGRldGlrIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGhyZWY9Imh0dHBzOi8vMjAuZGV0aWsuY29tLyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy9sb2dvL2xvZ29fMjBkZXRpa19uZXcucG5nP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIzNiIgaGVpZ2h0PSIxNiIgYWx0PSIyMEQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPHNjcmlwdD4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgkKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZWZhdWx0T2Zmc2V0SCA9IDEuNjc7IC8vIERlZmluZSB5b3VyIGRlZmF1bHQgdmFsdWUgaGVyZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZGVmYXVsdERldGFpbFRpdGxlT2Zmc2V0VG9wID0gOTY4OyAvLyBEZWZhdWx0IG9mZnNldCB0b3AgcG9zaXRpb24gaWYgLmRldGFpbF9fdGl0bGUgaXMgbm90IGZvdW5kDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZXRhaWxUaXRsZU9mZnNldFRvcCA9ICQoIi5kZXRhaWxfX3RpdGxlIikubGVuZ3RoDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICQoIi5kZXRhaWxfX3RpdGxlIikub2Zmc2V0KCkudG9wDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGRlZmF1bHREZXRhaWxUaXRsZU9mZnNldFRvcDsNCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgYWV2cEggPSAkKCIuZGV0YWlsX190aXRsZSIpLm91dGVySGVpZ2h0KCksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJIID0gJCgiLmhlYWRlciIpLm91dGVySGVpZ2h0KCksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXRIID0gYWV2cEggJiYgaGVhZGVySCA/IGFldnBIIC0gaGVhZGVySCA6IGRlZmF1bHRPZmZzZXRIOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHdpbmRvdykub24oInNjcm9sbCIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBzY3JvbGwgPSAkKHdpbmRvdykuc2Nyb2xsVG9wKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc2Nyb2xsID49IGRldGFpbFRpdGxlT2Zmc2V0VG9wICsgb2Zmc2V0SCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5waXAtdmlkX190cmlnZ2VyIikuYWRkQ2xhc3MoImZsb3ciKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNjcm9sbCA8PSBkZXRhaWxUaXRsZU9mZnNldFRvcCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5waXAtdmlkIikuYWRkQ2xhc3MoImhpZGUiKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLnBpcC12aWQiKS5yZW1vdmVDbGFzcygiaGlkZSIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJUyBJTiBWSUVXUE9SVCBERVRFQ1QgRUxFTUVOVA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkLmZuLmlzSW5WaWV3cG9ydCA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlbGVtZW50VG9wID0gJCh0aGlzKS5vZmZzZXQoKS50b3A7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZWxlbWVudEJvdHRvbSA9IGVsZW1lbnRUb3AgKyAkKHRoaXMpLm91dGVySGVpZ2h0KCk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2aWV3cG9ydFRvcCA9ICQod2luZG93KS5zY3JvbGxUb3AoKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2aWV3cG9ydEJvdHRvbSA9IHZpZXdwb3J0VG9wICsgJCh3aW5kb3cpLmhlaWdodCgpOw0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZWxlbWVudEJvdHRvbSA+IHZpZXdwb3J0VG9wICYmIGVsZW1lbnRUb3AgPCB2aWV3cG9ydEJvdHRvbTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZMT0FUIFZJREVPIFRyYW5zaXN0aW9uIEZPUiBCUkVBS0lORyBORVdTDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQuZm4uZmxvYXRlciA9IGZ1bmN0aW9uIChvcHRpb25zKSB7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkQ2xhc3MoImZsb3ctaW4iKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBibG9jayA9ICQodGhpcyk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIiN2aWRlby1waXBfX2Nsb3NlIikuY2xpY2soZnVuY3Rpb24gKGUpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvd091dCgpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrLnJlbW92ZUNsYXNzKCJmbG93LWluIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGZsb3dPdXQoKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLmZsb3ctaW4iKS5yZW1vdmVDbGFzcygiZmxvd2VkIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBmbG93SW4oKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLmZsb3ctaW4iKS5hZGRDbGFzcygiZmxvd2VkIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAkKHdpbmRvdykuc2Nyb2xsKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgiLnBpcC12aWRfX3RyaWdnZXIiKS5pc0luVmlld3BvcnQoKSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG93T3V0KCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG93SW4oKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEluaXRpYWxpemUgcGlwZXINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gcGlwX3ZpZGVvKCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLnBpcC12aWQiKS5mbG9hdGVyKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmFsc2UpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpcF92aWRlbygpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2NyaXB0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGJyIC8+DQogICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPihLVURBSklUVSk8L3N0cm9uZz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX3NoYXJlIG1nYi0xNiI+DQoNCiAgICAgICAgPGRpdiBjbGFzcz0ianMtcmVzZXQtcmVkaXJlY3QgYWN0aXZlIj48L2Rpdj4NCg0KICAgICAgICA8ZGl2IGNsYXNzPSJzdGlja3ktc2hhcmUiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGV0YWlsX19zaGFyZSBzdGlja3ktc2hhcmVfX3dyYXAiPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZsb2F0aW5nIGtvbWVudGFyIiBkdHItc2VjPSJ0b21ib2wga29tZW50YXIiIGR0ci1hY3Q9InRvbWJvbCBrb21lbnRhciIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJrb21lbnRhciIgcmVsPSJub2ZvbGxvdyIgaHJlZj0iI2NvbW0xIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gY2xpY2t0b19jb21tZW50IHNoLWtvbWVudGFyIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24gaWNvbi0tbWQgaWNvbi1jb21tZW50IGNvbG9yLWJsYWNrIj48L2k+DQogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50LWNvdW50Ij4wPC9zcGFuPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmbG9hdGluZyBzaGFyZSIgZHRyLXNlYz0ic2hhcmUgc29jbWVkIiBkdHItYWN0PSJzaGFyZSBmYWNlYm9vayIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJmYWNlYm9vayIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJmYiBpY29uLWl0ZW0gaWNvbi1pdGVtX19mYiINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT1mYWNlYm9vayZ1dG1fY2FtcGFpZ249ZGV0aWtjb21zb2NtZWQmdXRtX21lZGl1bT1idG4mdXRtX2NvbnRlbnQ9aW5ldCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS14cyBpY29uLWZhY2Vib29rIj48L2k+DQogICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZsb2F0aW5nIHNoYXJlIiBkdHItc2VjPSJzaGFyZSBzb2NtZWQiIGR0ci1hY3Q9InNoYXJlIHR3aXR0ZXIiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0idHdpdHRlciIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJ0dyBpY29uLWl0ZW0gaWNvbi1pdGVtX190dyINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT10d2l0dGVyJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24tdHdpdHRlciI+PC9pPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmbG9hdGluZyBzaGFyZSIgZHRyLXNlYz0ic2hhcmUgc29jbWVkIiBkdHItYWN0PSJzaGFyZSB3aGF0c2FwcCIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJ3aGF0c2FwcCIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJ3aGF0c2FwIGljb24taXRlbSBpY29uLWl0ZW1fX3dhIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYT91dG1fc291cmNlPXdoYXRzYXBwJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24td2hhdHNhcHAiPjwvaT4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZmxvYXRpbmcgc2hhcmUiIGR0ci1zZWM9InNoYXJlIHNvY21lZCIgZHRyLWFjdD0ic2hhcmUgdGVsZWdyYW0iIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0idGVsZWdyYW0iIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0idGVsZSBpY29uLWl0ZW0gaWNvbi1pdGVtX190ZWxlIHNoLXRlbGVncmFtIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYT91dG1fc291cmNlPXRlbGVncmFtJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24tdGVsZWdyYW0iPjwvaT4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZmxvYXRpbmcgc2hhcmUiIGR0ci1zZWM9IiIgZHRyLWFjdD0iY29weSBsaW5rIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci10dGw9ImxpbmsiIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9fbGluayBjb3B5X3VybCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT1jb3B5X3VybCZ1dG1fY2FtcGFpZ249ZGV0aWtjb21zb2NtZWQmdXRtX21lZGl1bT1idG4mdXRtX2NvbnRlbnQ9aW5ldCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS14cyBpY29uLWxpbmsiPjwvaT4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5vdGlmIj5UYXV0YW4gdGVsYWggZGlzYWxpbjwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgPHNjcmlwdD4NCiAgICAgICAgICAgIGdldFNjcmlwdCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9zaGFyZWJveC5pdHAuanM/dj0yMDI0MDgwMjE1NDQzIiwgZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICAgICBzaGFyZUJveC5ydW4oJCgnLnN0aWNreS1zaGFyZScpKTsNCiAgICAgICAgICAgICAgICAgICAgLy8gc2hhcmVCb3guY291bnRDb21tZW50KCQoJy5zaC1rb21lbnRhcicpKTsNCiAgICAgICAgICAgICAgICB9LCA1MDApOw0KICAgICAgICAgICAgfSkNCg0KICAgICAgICAgICAgZnVuY3Rpb24gc2V0SW50ZXJzZWN0T2JlcnNlcnZlcihlbGVtLCBvYm9wdGlvbnMpIHsNCiAgICAgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoDQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIChlbnRyaWVzKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAvLyBubyBpbnRlcnNlY3Rpb24gd2l0aCBzY3JlZW4NCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlbnRyaWVzWzBdLmludGVyc2VjdGlvblJhdGlvID09PSAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5xdWVyeVNlbGVjdG9yKCIuc3RpY2t5LXNoYXJlIikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNsYXNzTGlzdC5hZGQoInN0aWNreS1zaGFyZS0tc3RpY2tlZCIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgLy8gZnVsbHkgaW50ZXJzZWN0cyB3aXRoIHNjcmVlbg0KICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoZW50cmllc1swXS5pbnRlcnNlY3Rpb25SYXRpbyA9PT0gMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucXVlcnlTZWxlY3RvcigiLnN0aWNreS1zaGFyZSIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jbGFzc0xpc3QucmVtb3ZlKCJzdGlja3ktc2hhcmUtLXN0aWNrZWQiKTsNCiAgICAgICAgICAgICAgICAgICAgfSwgb2JvcHRpb25zDQogICAgICAgICAgICAgICAgKTsNCiAgICAgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGVsZW0pOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgY29uc3QgaGVhZGVyQ2xhc3MgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuaGVhZGVyJyk7DQoNCiAgICAgICAgICAgIGxldCBvYm9wdGlvbnMgPSB7DQogICAgICAgICAgICAgICAgdGhyZXNob2xkOiBbMCwgMV0sDQogICAgICAgICAgICAgICAgcm9vdE1hcmdpbjogIjQ3NXB4Ig0KICAgICAgICAgICAgfTsNCg0KICAgICAgICAgICAgaWYgKGhlYWRlckNsYXNzLmNsYXNzTGlzdC5jb250YWlucygnaGVhZGVyLS0yMGQnKSkgew0KICAgICAgICAgICAgICAgIG9ib3B0aW9ucyA9IHsNCiAgICAgICAgICAgICAgICAgICAgdGhyZXNob2xkOiBbMCwgMV0sDQogICAgICAgICAgICAgICAgICAgIHJvb3RNYXJnaW46ICI0NzBweCINCiAgICAgICAgICAgICAgICB9Ow0KICAgICAgICAgICAgICAgIHNldEludGVyc2VjdE9iZXJzZXJ2ZXIoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmhlYWRlci10b3AtMjBkIiksIG9ib3B0aW9ucyk7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIHNldEludGVyc2VjdE9iZXJzZXJ2ZXIoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmhlYWRlci10b3AiKSwgb2JvcHRpb25zKTsNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgLy8gVVAvRE9XTg0KICAgICAgICAgICAgdmFyIGlTY3JvbGxQb3MgPSAwOw0KICAgICAgICAgICAgdmFyICR3aW5kb3cgPSAkKHdpbmRvdyk7DQogICAgICAgICAgICAkd2luZG93LnNjcm9sbChmdW5jdGlvbiAoKSB7DQoNCiAgICAgICAgICAgICAgICB2YXIgaUN1clNjcm9sbFBvcyA9ICQodGhpcykuc2Nyb2xsVG9wKCk7DQogICAgICAgICAgICAgICAgdmFyIGZ0SGVpZ2h0ID0gJCgiZm9vdGVyLmZvb3RlciIpLmhlaWdodCgpOw0KICAgICAgICAgICAgICAgIHZhciBkSGVpZ2h0ID0gJCgiaHRtbCIpLm91dGVySGVpZ2h0KCkgLSBmdEhlaWdodDsNCiAgICAgICAgICAgICAgICB2YXIgb2Zmc2V0ID0gaUN1clNjcm9sbFBvcyArICR3aW5kb3cuaW5uZXJIZWlnaHQoKTsNCg0KICAgICAgICAgICAgICAgIGlmIChvZmZzZXQgPj0gZEhlaWdodCkgew0KICAgICAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnQXQgdGhlIGJvdHRvbScpOw0KICAgICAgICAgICAgICAgICAgICAkKCIuc3RpY2t5LXNoYXJlLS1zdGlja2VkIikuY3NzKCJvcGFjaXR5IiwgMCk7DQogICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiLnN0aWNreS1zaGFyZS0tc3RpY2tlZCIpLmNzcygib3BhY2l0eSIsICIiKTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgLy8gc2hhcmUgJiBjb21tZW50IHNjcmlwdA0KICAgICAgICAgICAgJCgiLmNvcHlfdXJsIikuY2xpY2soZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICQodGhpcykuY2hpbGRyZW4oIi5ub3RpZiIpLmFkZENsYXNzKCJ1cmxfY29waWVkIik7DQogICAgICAgICAgICAgICAgdmFyIGR1bW15ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKSwNCiAgICAgICAgICAgICAgICAgICAgdGV4dCA9ICQodGhpcykuYXR0cignZGF0YS11cmwnKTsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGR1bW15KTsNCiAgICAgICAgICAgICAgICBkdW1teS52YWx1ZSA9IHRleHQ7DQogICAgICAgICAgICAgICAgZHVtbXkuc2VsZWN0KCk7DQogICAgICAgICAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2NvcHknKTsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGR1bW15KTsNCiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiLm5vdGlmIikucmVtb3ZlQ2xhc3MoInVybF9jb3BpZWQiKTsNCiAgICAgICAgICAgICAgICB9LCAxNTAwKTsNCiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgIHZhciBhcnRpY2xlID0gew0KICAgICAgICAgICAgICAgIGlkbmV3czogNzQ3MDEyMywNCiAgICAgICAgICAgICAgICBpZGthbmFsOiAzOTgNCiAgICAgICAgICAgIH0NCiAgICAgICAgPC9zY3JpcHQ+DQoNCg0KICAgIDwvZGl2Pg0KDQoNCg0KICAgIDwvYXJ0aWNsZT4NCg0KDQoNCiAgICA8IS0tIFM6cGFydG5lcl9ib3ggLS0+IDwhLS0gRTpwYXJ0bmVyX2JveCAtLT4NCg0KICAgIDxkaXYgY2xhc3M9ImJveCBib3gtLWtvbWVudGFyIGNvbW1lbnQiPg0KICAgICAgICA8IS0tUzpLT01FTlRBUi0tPg0KDQogICAgICAgIDxkaXYgaWQ9InRoZWNvbW1lbnQyIiBjbGFzcz0iZGV0YWlsX2FyZWEiPg0KICAgICAgICAgICAgPHN0eWxlPg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWZvbnQtYm9sZCB7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1mb3JtIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0biB7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EtRkYsIEFyaWFsLCBUYWhvbWEsIHNhbnMtc2VyaWY7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQtRkYsIEFyaWFsLCBUYWhvbWEsIHNhbnMtc2VyaWY7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1udWxsIHsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4Ow0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWNvbG9yLWJsYWNrIHsNCiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuLA0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0bjpob3ZlciB7DQogICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICN0aGVjb21tZW50MiB7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogSGVsdmV0aWNhLUZGLCBBcmlhbCwgVGFob21hLCBzYW5zLXNlcmlmOw0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7DQogICAgICAgICAgICAgICAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOw0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsNCiAgICAgICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tbWd0LTEyIHsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweCAhaW1wb3J0YW50Ow0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLW1nYi0xMiB7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHggIWltcG9ydGFudDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1mb250LXNtIHsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4Ow0KICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDsNCiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94Ow0KICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsNCiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7DQogICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50Ow0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dCAwczsNCiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0IDBzOw0KICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1ib2R5LS1kZXRpa25ld3MgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxNDA5YTsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1idG46aG92ZXIgew0KICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7DQogICAgICAgICAgICAgICAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT04MCk7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1ib2R5IHsNCiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWNvbW1lbnQtbGVhZCB7DQogICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTZweCAxOHB4IDE4cHg7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7DQogICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHsNCiAgICAgICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1sZWFkIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHg7DQogICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4Ow0KICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1mb3JtIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0biB7DQogICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCA4cHg7DQogICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWVudHJ5IHsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzZweDsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzZweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LW51bGwgew0KICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjOTk5Ow0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIDwvc3R5bGU+DQoNCiAgICAgICAgICAgIDxkaXYNCiAgICAgICAgICAgICAgICBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWJvZHkga29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWJvZHktLWRldGlrbmV3cyBjdXN0b20tbWluLXNuZWFrLXBlZWsiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1sZWFkIj4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtvbWVudGFyLWlmcmFtZS1taW4tZm9udC1ib2xkIj5Lb21lbnRhcjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgPGZvcm0gYWN0aW9uPSIjIiBpZD0iZm9ybS1jb21tZW50LXYyIiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWZvcm0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYS9rb21lbnRhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1idG4ga29tZW50YXItaWZyYW1lLW1pbi1tZ3QtMTIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigzMywgNjQsIDE1NCk7Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBLaXJpbSBLb21lbnRhcg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWVudHJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LW51bGwiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJrb21lbnRhci1pZnJhbWUtbWluLWZvbnQtYm9sZCBrb21lbnRhci1pZnJhbWUtbWluLWNvbG9yLWJsYWNrIGtvbWVudGFyLWlmcmFtZS1taW4tZm9udC1zbSBrb21lbnRhci1pZnJhbWUtbWluLW1nYi0xMiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQmVsdW0gYWRhIGtvbWVudGFyLjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY3VzdG9tLW1pbi1zbmVhay1wZWVrLWVtcHR5LXdvcmRpbmciPkphZGlsYWggeWFuZyBwZXJ0YW1hIGJlcmtvbWVudGFyIGRpIHNpbmk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgPCEtLSBTOiBORVcgUFJPIEtPTlRSQSAtLT4NCiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgICAgICAgICAgdmFyIGluaXRlZENvbW1lbnQgPSBmYWxzZTsNCiAgICAgICAgICAgICQod2luZG93KS5vbignc2Nyb2xsJywgZnVuY3Rpb24gKCkgew0KDQogICAgICAgICAgICAgICAgaWYgKGluaXRlZENvbW1lbnQpIHsgcmV0dXJuOyB9DQogICAgICAgICAgICAgICAgaWYgKCQod2luZG93KS5zY3JvbGxUb3AoKSA8PSAzMDApIHsgcmV0dXJuOyB9DQogICAgICAgICAgICAgICAgaWYgKHBhcnNlSW50KCQoJy5jb21tZW50LWNvdW50OmZpcnN0JykudGV4dCgpKSA8PSAwKSB7IHJldHVybjsgfQ0KDQogICAgICAgICAgICAgICAgaW5pdGVkQ29tbWVudCA9IHRydWU7DQogICAgICAgICAgICAgICAgZ2V0U2NyaXB0KCJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvbGlicy9jb21tZW50L3YyL2pzL3pvaWQubWluLmpzPzIwMjQwODAyMTUiLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgICAgIGdldFNjcmlwdCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2xpYnMvY29tbWVudC92Mi9qcy9icmlkZ2UuanM/MjAyNDA4MDIxNSIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJyN0aGVjb21tZW50MicpLmh0bWwoJycpOw0KICAgICAgICAgICAgICAgICAgICAgICAgQ29tbWVudENvbXBvbmVudCh7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWRBcnRpa2VsOiA3NDcwMTIzLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGthbmFsOiAzOTgsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0ZTogIjAyLTA4LTIwMjQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAiS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudElkOiA5OCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVmaXg6ICJkdGsiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2tvbnRyYTogMCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZW1idWthRGlza3VzaTogIiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgc25lYWtQZWVrOiAxLA0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAga2FuYWxBZHM6ICJkZXRpa19pbmV0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnZBZHM6ICJtb2JpbGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTG9naW4sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25SZXNpemUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25TY3JvbGwsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25BbGVydA0KICAgICAgICAgICAgICAgICAgICAgICAgfSkucmVuZGVyKCcjdGhlY29tbWVudDInKTsNCg0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICB9KQ0KICAgICAgICA8L3NjcmlwdD4NCiAgICAgICAgPCEtLSBFOiBORVcgUFJPIEtPTlRSQSAtLT4NCg0KICAgICAgICA8IS0tRTpLT01FTlRBUi0tPg0KICAgIDwvZGl2Pg0KICAgIDxzdHlsZT4NCiAgICAgICAgI2J0X3RrdCBhcnRpY2xlOm50aC1jaGlsZChuKzcpIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgIH0NCiAgICA8L3N0eWxlPg0KDQogICAgPGRpdiBjbGFzcz0iYm94IGNiLWJlcml0YS10ZXJrYWl0Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94X19oZWFkZXIiPg0KICAgICAgICAgICAgPGgyIGNsYXNzPSJib3hfX3RpdGxlIj5CZXJpdGEgVGVya2FpdDwvaDI+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGlkPSJidF90a3QiIGNsYXNzPSJsaXN0LWNvbnRlbnQgbGlzdC1jb250ZW50LS1ib3JkZXJlZCBoaWRlLW9mLWxpc3QtNiI+DQogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibGlzdC1jb250ZW50X19pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSBtZWRpYS0tbGVmdCBtZWRpYS0taW1hZ2UtcmFkaXVzIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZWRpYV9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImJlcml0YSB0ZXJrYWl0IiBkdHItc2VjPSIiIGR0ci1hY3Q9ImFydGlrZWwiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkPSI3NDY5NzA3IiBkdHItdHRsPSJFbG9uIE11c2sgU2luZGlyIFBldGluanUgT2xpbXBpYWRlIFdhbml0YSB5YW5nIERpZHVnYSBQcmlhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgY2xhc3M9Im1lZGlhX19saW5rIj5FbG9uIE11c2sgU2luZGlyIFBldGluanUgT2xpbXBpYWRlIFdhbml0YSB5YW5nIERpZHVnYQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmlhPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2FydGljbGU+DQogICAgICAgICAgICA8IS0tIFM6bmF0aXZlYmVyaXRhdGVya2FpdCAtLT48aW5zIGRhdGEtbGFiZWxuYW1lPSJuYXRpdmViZXJpdGF0ZXJrYWl0IiBkYXRhLXJldml2ZS16b25laWQ9IjM4MTYiDQogICAgICAgICAgICAgICAgZGF0YS1yZXZpdmUtaWQ9IjBjY2VlY2I5Y2FlOWY1MWEzMTEyM2M1NDE5MTBkNTliIj48L2lucz48IS0tIEU6bmF0aXZlYmVyaXRhdGVya2FpdCAtLT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0Njk1OTYiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IlBldGVtYmFrIFR1cmtpIGt1ZGFqaXR1IFBvc3RpbmcgUGVyYWsgT2xpbXBpYWRlIEJhbmppciBLb21lbnRhciBLb2NhayINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJtZWRpYV9fbGluayI+UGV0ZW1iYWsgVHVya2kga3VkYWppdHUgUG9zdGluZyBQZXJhayBPbGltcGlhZGUgQmFuamlyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvbWVudGFyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvY2FrPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2FydGljbGU+DQogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibGlzdC1jb250ZW50X19pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSBtZWRpYS0tbGVmdCBtZWRpYS0taW1hZ2UtcmFkaXVzIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZWRpYV9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImJlcml0YSB0ZXJrYWl0IiBkdHItc2VjPSIiIGR0ci1hY3Q9ImFydGlrZWwiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkPSI3NDY5NTQ2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJWaXJhbCBTZWVrb3IgTGViYWggR2FuZ2d1IEF0bGV0IFBhbmFoIEtvcnNlbCBkaSBTYWF0IE1lbmVudHVrYW4iIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0ibWVkaWFfX2xpbmsiPlZpcmFsIFNlZWtvciBMZWJhaCBHYW5nZ3UgQXRsZXQgUGFuYWggS29yc2VsIGRpIFNhYXQgTWVuZW50dWthbjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9hcnRpY2xlPg0KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Imxpc3QtY29udGVudF9faXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEgbWVkaWEtLWxlZnQgbWVkaWEtLWltYWdlLXJhZGl1cyI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhX190ZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibWVkaWFfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJiZXJpdGEgdGVya2FpdCIgZHRyLXNlYz0iIiBkdHItYWN0PSJhcnRpa2VsIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZD0iNzQ3MDIwMiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0iQXRsZXQgQW5nZ2FyIE5hZGEgSGFmZXogQmVydGFuZGluZyBzYWF0IEhhbWlsIDcgQnVsYW4gZGkgT2xpbXBpYWRlIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Im1lZGlhX19saW5rIj5BdGxldCBBbmdnYXIgTmFkYSBIYWZleiBCZXJ0YW5kaW5nIHNhYXQgSGFtaWwgNyBCdWxhbiBkaQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPbGltcGlhZGU8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvYXJ0aWNsZT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0NzAxMDgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IkFobGkgU29yb3RpICYjMDM5O1BvbHVzaSYjMDM5OyBUaW5qYSBkaSBTdW5nYWkgU2VpbmUgTG9rYXNpIFRyaWF0bG9uIGt1ZGFqaXR1IGxvZ2luIDIwMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0ibWVkaWFfX2xpbmsiPkFobGkgU29yb3RpICdQb2x1c2knIFRpbmphIGRpIFN1bmdhaSBTZWluZSBMb2thc2kgVHJpYXRsb24NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT2xpbXBpYWRlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhcmlzIDIwMjQ8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvYXJ0aWNsZT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0Njk1NTUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IlBvdHJldCBBdGxldCBBbmdnYXIgTWVzaXIgeWFuZyBWaXJhbCB1c2FpIFVtdW1rYW4gSGFtaWwgZGkga3VkYWppdHUgbG9naW4gMjAyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJtZWRpYV9fbGluayI+UG90cmV0IEF0bGV0IEFuZ2dhciBNZXNpciB5YW5nIFZpcmFsIHVzYWkgVW11bWthbiBIYW1pbCBkaQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPbGltcGlhZGUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFyaXMgMjAyNDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9hcnRpY2xlPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDxkaXYgZC13aWRnZXQ9Im5ld3NmZWVkX3JlY29tbWVuZGF0aW9uIiBkLXJlY29tbWVuZGF0aW9uPjwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJqcy1zaG93LXJlZGlyZWN0LWFydGljbGUiPjwvZGl2Pg0KDQogICAgPGRpdiBkLXdpZGdldD0ib3RoZXJfYXJ0aWNsZXMiIGQtcGFyYW1zPSIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJkd2lkZ2V0X21vYmlsZSBwaC12ZXJ0aWNhbCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIHBoLXRpdGxlIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIgYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW4tbGVmdCBwaC1jb2wtNCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXBpY3R1cmUiPjwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImluLXJpZ2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcm93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00IGJpZyBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbi1sZWZ0IHBoLWNvbC00Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcGljdHVyZSI+PC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW4tcmlnaHQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTEyIGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQgYmlnIGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImluLWxlZnQgcGgtY29sLTQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1waWN0dXJlIj48L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbi1yaWdodCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIgYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCBiaWcgZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj48aW1nIHN0eWxlPSJkaXNwbGF5Om5vbmUiIC8+DQogICAgPC9kaXY+DQoNCiAgICA8ZGl2IGQtd2lkZ2V0PSJkZXRhaWxfbW9zdHBvcHVsYXIiIGQtcGFyYW1zPSIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJkd2lkZ2V0X21vYmlsZSBwaC1saXN0Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0gcGgtdGl0bGUiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00IGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQgZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTEyIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcm93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2PiA8aW1nIHN0eWxlPSJkaXNwbGF5Om5vbmUiIC8+DQogICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPCEtLSBTOkZvb3RlciAtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgaWYgKGhlbHBlci5pbnZpZXcoJCgiZm9vdGVyIikpKSB7DQogICAgICAgICAgICAgICAgICAgIHZhciBmcmFtZWZvb3RlciA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoImZvb3Rlci1sYXp5Iik7DQogICAgICAgICAgICAgICAgICAgIGlmIChmcmFtZWZvb3Rlci5sZW5ndGggIT0gMCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGltZ2ZyYW1lZm9vdGVyID0gZnJhbWVmb290ZXJbMF0ucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtc3JjXSIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbWdmcmFtZWZvb3Rlci5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZ2ZyYW1lZm9vdGVyW2ldLnNldEF0dHJpYnV0ZSgic3JjIiwgaW1nZnJhbWVmb290ZXJbaV0uZ2V0QXR0cmlidXRlKCJkYXRhLXNyYyIpKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWdmcmFtZWZvb3RlcltpXS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtc3JjIikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KICAgICAgICB9KTsNCiAgICA8L3NjcmlwdD4NCiAgICA8Zm9vdGVyIGNsYXNzPSJmb290ZXIgZm9vdGVyLWxhenkiIGlkPSJmb290ZXIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJfX2JvcmRlciI+PC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9ImxvZ29kZXRpayIgZHRyLWFjdD0ibG9nbyBkZXRpayIgb25jbGljaz0iX3B0KHRoaXMpIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICBjbGFzcz0iZm9vdGVyX19sb2dvIj4NCiAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy93ZWJwL20vbG9nb19kZXRpa2NvbS53ZWJwP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgYWx0PSJpbWctYWx0IiB0aXRsZT0iaW1nLXRpdGxlIiB3aWR0aD0iMTYwIiBoZWlnaHQ9IjMwIj4NCiAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlci10aXRsZSBmb290ZXItdGl0bGVfX3BhcnRvZiI+cGFydCBvZiA8aW1nDQogICAgICAgICAgICAgICAgICAgIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy93ZWJwL2xvZ29fZGV0aWtuZXR3b3JrLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICBhbHQ9ImltZy1hbHQiIHRpdGxlPSJpbWctdGl0bGUiIHdpZHRoPSI4MCIgaGVpZ2h0PSIyOSI+PC9kaXY+DQogICAgICAgICAgICA8bmF2Pg0KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tY2VudGVyIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJyZWRha3NpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWRha3NpIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InBlZG9tYW4gbWVkaWEgc2liZXIiIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiByZWw9Im5vZm9sbG93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQZWRvbWFuIE1lZGlhIFNpYmVyIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJrYXJpciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgS2FyaXIgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSBsYXlhbmFuIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImtvdGFrIHBvcyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgS290YWsgUG9zIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJpbmZvIGlrbGFuIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiByZWw9Im5vZm9sbG93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmZvIElrbGFuIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InByaXZhY3kgcG9saWN5IiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpdmFjeSBQb2xpY3kgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSBsYXlhbmFuIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRpc2NsYWltZXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIHJlbD0ibm9mb2xsb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpc2NsYWltZXIgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L25hdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9fc29jaWFsIj4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ic29jbWVkIGRldGlrY29tIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IndoYXRzYXBwIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICAgICAgY2xhc3M9Imljb24taXRlbSBpY29uLWl0ZW1fX3dhIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24gaWNvbi13aGF0c2FwcCI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJmYWNlYm9vayIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX19mYiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tZmFjZWJvb2siPjwvaT4gPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZvb3RlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJzb2NtZWQgZGV0aWtjb20iIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0idHdpdHRlciIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX190dyI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tdHdpdHRlciI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJpbnN0YWdyYW0iDQogICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9faWciPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLWluc3RhZ3JhbSI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJsaW5rZWRpbiIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX19pbiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tbGlua2VkaW4iPjwvaT4gPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZvb3RlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJzb2NtZWQgZGV0aWtjb20iIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0ieW91dHViZSIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX195dCI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24teW91dHViZSI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJ0aWt0b2siIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9fdGsiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLXRpa3RvayI+PC9pPiA8L2E+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPHNjcmlwdD4NCiAgICAgICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgICAgICB2YXIgbXlTY3JvbGxQb3MgPSAkKCcubmF2YmFyLWZpcnN0IHVsIGxpLm5hdl9faXRlbS0tYWN0aXZlJykucG9zaXRpb24oKS5sZWZ0IC0gJCgnLm5hdmJhci1maXJzdCB1bCBsaS5uYXZfX2l0ZW0tLWFjdGl2ZScpLndpZHRoKCk7DQoNCiAgICAgICAgICAgICAgICAgICAgaWYgKCQoJy5zY3JvbGxfX3dyYXAgbGk6bnRoLWNoaWxkKDIpJykuaGFzQ2xhc3MoJ25hdl9faXRlbS0tYWN0aXZlJykpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJy5uYXZiYXItZmlyc3QgdWwnKS5hbmltYXRlKHsgc2Nyb2xsTGVmdDogMCB9KTsNCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJy5uYXZiYXItZmlyc3QgdWwnKS5hbmltYXRlKHsgc2Nyb2xsTGVmdDogbXlTY3JvbGxQb3MgfSk7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdbYWN0aXZlU2Nyb2xsTGV2ZWwgbm90IEZvdW5kXScpDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgPC9zY3JpcHQ+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJfX2dldC1hcHAiPg0KICAgICAgICAgICAgICAgIERvd25sb2FkIGFwbGlrYXNpIGRldGlrY29tDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyX19hcHAtc3RvcmUiPg0KICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibGluayBidWlsZGluZyBmb290ZXIiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InBsYXkgc3RvcmUiIGhyZWY9Imh0dHBzOi8vcGxheS5nb29nbGUuY29tL3N0b3JlL2FwcHMvZGV0YWlscz9pZD1vcmcuZGV0aWtjb20ucnNzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL3dlYnAvbS9zdG9yZS1hbmRyb2lkLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0icGxheSBzdG9yZSIgdGl0bGU9IlBsYXkgU3RvcmUiIHdpZHRoPSI5OCIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImxpbmsgYnVpbGRpbmcgZm9vdGVyIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJhcHAgc3RvcmUiIGhyZWY9Imh0dHBzOi8vYXBwcy5hcHBsZS5jb20vaWQvYXBwL2RldGlrY29tLWJlcml0YS10ZXJsZW5na2FwL2lkNDQyOTE0OTg4Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL3dlYnAvbS9zdG9yZS1pb3Mud2VicD92PTIwMjQwODAyMTU0NDMiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSJhcHAgc3RvcmUiIHRpdGxlPSJBcHAgU3RvcmUiIHdpZHRoPSI5NyIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImxpbmsgYnVpbGRpbmcgZm9vdGVyIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJhcHAgZ2FsbGVyeSIgaHJlZj0iaHR0cHM6Ly9hcHBnYWxsZXJ5NS5odWF3ZWkuY29tLyMvYXBwL0MxMDA2NzIwNDUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvd2VicC9tL3N0b3JlLWh1YXdlaS1hcHBzLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0iYXBwIGdhbGxlcnkiIHRpdGxlPSJBcHAgR2FsbGVyeSIgd2lkdGg9IjExNCIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyX19jb3B5Ij4NCiAgICAgICAgICAgICAgICBDb3B5cmlnaHQgQCAyMDI0IGRldGlrY29tLCBBbGwgcmlnaHQgcmVzZXJ2ZWQNCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBkLXdpZGdldD0iYnl0ZWRhbmNlIiBkLWxvYWRlZD0iMSIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+PC9kaXY+DQogICAgPC9mb290ZXI+DQoNCiAgICA8IS0tIHM6bmV4dEFydGljbGVSZXBvIC0tPg0KICAgIDxkaXYgY2xhc3M9ImJvdHRvbS1zdGlja3kiPg0KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgICAgICAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgdmFyIGZiYW5lciA9ICQoJy5mb290ZXJfYmFubmVyJyk7DQogICAgICAgICAgICAgICAgdmFyIGJ0bVN0aWNreSA9ICQoJy5ib3R0b20tc3RpY2t5Jyk7DQogICAgICAgICAgICAgICAgdmFyIHNoclN0aWNreSA9ICQoJy5zdGlja3ktc2hhcmUnKTsNCiAgICAgICAgICAgICAgICB2YXIgZmJhbmVySGVpZ2h0ID0gZmJhbmVyLm91dGVySGVpZ2h0KCk7DQoNCiAgICAgICAgICAgICAgICBpZiAoZmJhbmVyKSB7DQogICAgICAgICAgICAgICAgICAgIGJ0bVN0aWNreS5jc3MoJ2JvdHRvbScsIGZiYW5lckhlaWdodCk7DQogICAgICAgICAgICAgICAgICAgIHNoclN0aWNreS5jc3MoJ2JvdHRvbScsIGZiYW5lckhlaWdodCk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIDwvc2NyaXB0Pg0KICAgIDwvZGl2Pg0KICAgIDwhLS0gZTpuZXh0QXJ0aWNsZVJlcG8gLS0+DQoNCiAgICA8IS0tIFM6ZGV0aWsuanMgLS0+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9kZXRpay52My4yLmpzP3Y9MjAyNDA4MDIxNTQ0MyI+PC9zY3JpcHQ+DQogICAgPCEtLSBTOmRldGlrLmpzIC0tPg0KDQogICAgPHNjcmlwdD4NCiAgICAgICAgbGV0IGluaXRlZG9lbWJlZGl0cHYyID0gZmFsc2U7DQogICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICBpZiAoaW5pdGVkb2VtYmVkaXRwdjIpIHsgcmV0dXJuOyB9DQogICAgICAgICAgICBpZiAod2luZG93LnNjcm9sbFkgPD0gMTAwKSB7IHJldHVybjsgfQ0KICAgICAgICAgICAgaW5pdGVkb2VtYmVkaXRwdjIgPSB0cnVlOw0KICAgICAgICAgICAgZ2V0U2NyaXB0KCdodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL29lbWJlZC5pdHAudjIuanM/dj0yMDI0MDgwMjE1NDQzJywgZnVuY3Rpb24gKCkgew0KDQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSkNCg0KICAgIDwvc2NyaXB0Pg0KDQogICAgPCEtLSBTOnRhZ2Zvb3QgLS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgdmFyIGxvYWRTY3JpcHRBc3luYyA9IGZ1bmN0aW9uICh1cmkpIHsNCiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7DQogICAgICAgICAgICAgICAgdmFyIHRhZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOw0KICAgICAgICAgICAgICAgIHRhZy5zcmMgPSB1cmk7DQogICAgICAgICAgICAgICAgdGFnLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgICAgICAgICB0YWcub25sb2FkID0gKCkgPT4gew0KICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7DQogICAgICAgICAgICAgICAgfTsNCiAgICAgICAgICAgICAgICB2YXIgZmlyc3RTY3JpcHRUYWcgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0JylbMF07DQogICAgICAgICAgICAgICAgZmlyc3RTY3JpcHRUYWcucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodGFnLCBmaXJzdFNjcmlwdFRhZyk7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfQ0KICAgICAgICB2YXIgc2NyaXB0TG9hZGVkID0gbG9hZFNjcmlwdEFzeW5jKCdodHRwczovL25ld3Jldml2ZS5kZXRpay5jb20vZGVsaXZlcnkvYXN5bmNqcy5waHAnKTsNCg0KICAgICAgICBzY3JpcHRMb2FkZWQudGhlbihmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB3aW5kb3cucmV2aXZlQXN5bmNbIjBjY2VlY2I5Y2FlOWY1MWEzMTEyM2M1NDE5MTBkNTliIl0uYWRkRXZlbnRMaXN0ZW5lcignYWZ0ZXJSZW5kZXJCYW5uZXInLCBydkNhbGxiYWNrQmFubmVyKTsNCg0KICAgICAgICAgICAgZnVuY3Rpb24gcnZDYWxsYmFja0Jhbm5lcihkYXRhKSB7DQoNCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhkYXRhKTsNCiAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgZGF0YS5kZXRhaWwubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgICAgICAgY2hlY2tCYW5uZXJBdmFpbGFibGUoZGF0YS5kZXRhaWxbaV0sIDkyMywgaW50ZXJzdGl0aWFsLCB0cnVlKTsNCiAgICAgICAgICAgICAgICAgICAgY2hlY2tCYW5uZXJBdmFpbGFibGUoZGF0YS5kZXRhaWxbaV0sIDkyMSwgZGV0ZWN0SGVpZ2h0QmwsIHRydWUpOw0KICAgICAgICAgICAgICAgICAgICBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhLmRldGFpbFtpXSwgMTA5NiwgZGV0ZWN0V2lkdGhOYXZBZHMsIHRydWUpOw0KICAgICAgICAgICAgICAgICAgICBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhLmRldGFpbFtpXSwgMTQ4MiwgZGV0ZWN0V2lkdGhOYXZBZHMsIHRydWUpOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgfQ0KICAgICAgICB9KTsNCg0KICAgICAgICBmdW5jdGlvbiBhZHNfcmVtb3ZlKHBhcmFtKSB7DQogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChwYXJhbSkucmVtb3ZlKCk7DQogICAgICAgIH0NCg0KICAgICAgICBmdW5jdGlvbiBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhRGV0YWlsLCBjaGVja1pvbmUsIGNhbGxGdW5jLCBhdmFpbGFibGUgPSBmYWxzZSkgew0KICAgICAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgICAgICB2YXIgc2hvdyA9IGF2YWlsYWJsZSA/IDEgOiAwOw0KICAgICAgICAgICAgICAgIGlmIChzaG93ID09IDApIHsNCiAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGFEZXRhaWwuem9uZWlkID09IGNoZWNrWm9uZSAmJiBkYXRhRGV0YWlsLmJhbm5lcmlkID09IHNob3cpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxGdW5jKCk7DQogICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnem9uZSBpZCBhZGp1c3RtZW50IDogJyArIGNoZWNrWm9uZSk7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgaWYgKHNob3cgPT0gMSkgew0KICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YURldGFpbC56b25laWQgPT0gY2hlY2tab25lICYmIGRhdGFEZXRhaWwuYmFubmVyaWQgPj0gc2hvdykgew0KICAgICAgICAgICAgICAgICAgICAgICAgY2FsbEZ1bmMoKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCd6b25lIGlkIGFkanVzdG1lbnQgOiAnICsgY2hlY2tab25lKTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgIDwvc2NyaXB0Pg0KDQoNCg0KICAgIDwhLS0gUGl4ZWwgVGFnIEF1ZGllbmNlIERGUCAtLT4NCg0KICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4NCiAgICAgICAgdmFyIGF4ZWwgPSBNYXRoLnJhbmRvbSgpICsgJyc7DQogICAgICAgIHZhciBhID0gYXhlbCAqIDEwMDAwMDAwMDAwMDAwOw0KICAgICAgICBkb2N1bWVudC53cml0ZSgnPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPScgKyBhICsgJztkY19zZWc9MTAxMDc5MTM4OTtnZW49TWFsZT8iIHdpZHRoPTEgaGVpZ2h0PTEgYm9yZGVyPTAvPicpOw0KICAgIDwvc2NyaXB0Pg0KICAgIDxub3NjcmlwdD4NCiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPTE7ZGNfc2VnPTEwMTA3OTEzODk7Z2VuPU1hbGU/Ig0KICAgICAgICAgICAgd2lkdGg9MSBoZWlnaHQ9MSBib3JkZXI9MCAvPg0KICAgIDwvbm9zY3JpcHQ+DQoNCiAgICA8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+DQogICAgICAgIHZhciBheGVsID0gTWF0aC5yYW5kb20oKSArICcnOw0KICAgICAgICB2YXIgYSA9IGF4ZWwgKiAxMDAwMDAwMDAwMDAwMDsNCiAgICAgICAgZG9jdW1lbnQud3JpdGUoJzxpbWcgc3JjPSJodHRwczovL3B1YmFkcy5nLmRvdWJsZWNsaWNrLm5ldC9hY3Rpdml0eTtkY19pdT0vNDkwNTUzNi9ERlBBdWRpZW5jZVBpeGVsO29yZD0nICsgYSArICc7ZGNfc2VnPTEwMDk4NzU3MjQ7Z2VuPUZlbWFsZT8iIHdpZHRoPTEgaGVpZ2h0PTEgYm9yZGVyPTAvPicpOw0KICAgIDwvc2NyaXB0Pg0KICAgIDxub3NjcmlwdD4NCiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPTE7ZGNfc2VnPTEwMDk4NzU3MjQ7Z2VuPUZlbWFsZT8iDQogICAgICAgICAgICB3aWR0aD0xIGhlaWdodD0xIGJvcmRlcj0wIC8+DQogICAgPC9ub3NjcmlwdD4NCg0KICAgIDwhLS0gRW5kIFBpeGVsIFRhZyBBdWRpZW5jZSBERlAgLS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgZ29vZ2xldGFnLmNtZC5wdXNoKGZ1bmN0aW9uICgpIHsgZ29vZ2xldGFnLmRpc3BsYXkoJ2Rpdi1ncHQtYWQtMTUzNjUxNDU4MzE0MS0wJyk7IH0pOw0KICAgIDwvc2NyaXB0Pg0KICAgIDwhLS0gRTp0YWdmb290IC0tPg0KICAgIDwhLS0gRTpGb290ZXIgLS0+DQoNCiAgICA8IS0tIFM6c3RpY2t5c3RhdGljYmFubmVyIC0tPg0KICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9iYW5uZXIgYWRzLXNsb3QiDQogICAgICAgIHN0eWxlPSJkaXNwbGF5Om5vbmU7IHotaW5kZXg6IDk5OTk7cG9zaXRpb246IGZpeGVkOyBib3R0b206IDA7d2lkdGg6IDEwMCU7IHBhZGRpbmctdG9wOiAzMHB4O3BhZGRpbmctYm90dG9tOiAyMHB4OyBiYWNrZ3JvdW5kOiByZ2IoMjI0IDIyNCAyMjUpOyI+DQogICAgICAgIDxzdHlsZT4NCiAgICAgICAgICAgIC5mb290ZXJfYmFubmVyOjpiZWZvcmUgew0KICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIC5mbG9hdGluZ3NoYXJlLA0KICAgICAgICAgICAgYVtkdHItc2VjPSJiYWNrIHRvIHRvcCJdIHsNCiAgICAgICAgICAgICAgICBib3R0b206IDExMHB4Ow0KICAgICAgICAgICAgfQ0KICAgICAgICA8L3N0eWxlPg0KICAgICAgICA8c3BhbiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgY2xhc3M9InNzYi1jbG9zZSINCiAgICAgICAgICAgIHN0eWxlPSJjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO3Bvc2l0aW9uOiBhYnNvbHV0ZTtyaWdodDogNSU7dG9wOiAzcHg7aGVpZ2h0OiAyMHB4O2JhY2tncm91bmQtY29sb3I6IHdoaXRlO2JvcmRlci1yYWRpdXM6IDUwJTsgei1pbmRleDo5OTk5OTsiPjxpbWcNCiAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vYXdzY2Ruc3RhdGljLmRldGlrLm5ldC5pZC9saXZlL19ybWJhc3NldHMvc3NiL2Nsb3NlLXJvdW5kZWQucG5nIg0KICAgICAgICAgICAgICAgIHN0eWxlPSJ3aWR0aDogMjBweDtoZWlnaHQ6IDIwcHg7Ij48L3NwYW4+DQogICAgICAgIDxkaXYgY2xhc3M9InNzYi1jb250ZW50IiBzdHlsZT0ibWluLWhlaWdodDogNTBweDsiPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDwhLS0gPHNjcmlwdD4NCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgJCgiLnNzYi1jbG9zZSIpLmNsaWNrKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCIuZm9vdGVyX2Jhbm5lciIpLnJlbW92ZSgpOw0KICAgICAgICAgICAgICAgICQoImFbZHRyLXNlYz0nYmFjayB0byB0b3AnXSIpLmFuaW1hdGUoeyAiYm90dG9tIjogIjYwcHgiIH0sIDMwMCk7DQogICAgICAgICAgICAgICAgJCgiLmJhY2stdG9wIikuYW5pbWF0ZSh7ICJib3R0b20iOiAiNjBweCIgfSwgMzAwKTsNCiAgICAgICAgICAgICAgICAkKCIuc3RpY2t5LXNoYXJlIikuY3NzKHsgImJvdHRvbSI6ICIwIiB9KTsNCiAgICAgICAgICAgICAgICAkKCIuZmxvYXRpbmdzaGFyZSIpLmNzcyh7ICJib3R0b20iOiAiNjBweCIsICJtYXJnaW4tYm90dG9tIjogInVuc2V0IiB9KTsNCiAgICAgICAgICAgIH0pOw0KICAgICAgICB9KTsNCiAgICA8L3NjcmlwdD5FOnN0aWNreXN0YXRpY2Jhbm5lciAtLT4NCg0KDQogICAgPCEtLSBDT1JFIFNUWUxFIC0tPg0KDQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvaW5ldDIvbS9jc3Mvc3R5bGUuY3NzP3Y9MjAyNDA4MDIxNTQ0MyIgYXM9InN0eWxlIg0KICAgICAgICBvbmxvYWQ9InRoaXMub25sb2FkPW51bGw7dGhpcy5yZWw9J3N0eWxlc2hlZXQnIj4NCiAgICA8bm9zY3JpcHQ+DQogICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2luZXQyL20vY3NzL3N0eWxlLmNzcz92PTIwMjQwODAyMTU0NDMiPg0KICAgIDwvbm9zY3JpcHQ+DQoNCg0KDQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9saXF1aWRpbWFnZS5qcz92PTIwMjQwODAyMTU0NDMiPjwvc2NyaXB0Pg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvanMvYWRzY2xvc2UuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCg0KICAgIDwhLS0gczpmb290ZXIgYXNzZXQgbWFuYWdlciAtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL2xpbmtjb3BpZWRwb3AuanM/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICBkZWZlcj0iIj48L3NjcmlwdD4NCiAgICA8IS0tIGU6Zm9vdGVyIGFzc2V0IG1hbmFnZXIgLS0+DQogICAgPCEtLSBzOmZvb3RlciBpbmxpbmUgLS0+DQogICAgPHNjcmlwdD4gICAgICAgICAgICBnZXRTY3JpcHQoJ2h0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvanMvem9vbWltZy5qcz92PTIwMjQwODAyMTU0NDMnLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB6b29tX2ltZyh7IHN0YXR1czogdHJ1ZSwgbV92aWV3cG9ydDogMTAgfSk7IC8vWm9vbSBJbWFnZSBTaXplIFZpZXdwb3J0DQogICAgICAgIH0pPC9zY3JpcHQ+DQogICAgPCEtLSBlOmZvb3RlciBpbmxpbmUgLS0+DQo8L2JvZHk+DQoNCjwvaHRtbD4NCjwhLS1yZXBsYWNlZC0tPg==)format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;src:url(data:text/html;base64,DQo8IURPQ1RZUEUgaHRtbD4NCjxodG1sIGxhbmc9ImlkLUlEIj4NCg0KPGhlYWQ+DQogICAgPHN0eWxlPg0KICAgICAgICBhLA0KICAgICAgICBodG1sIHsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24sDQogICAgICAgIHN1cCB7DQogICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUNCiAgICAgICAgfQ0KDQogICAgICAgIGJvZHksDQogICAgICAgIGJ1dHRvbiwNCiAgICAgICAgZmlndXJlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMA0KICAgICAgICB9DQoNCiAgICAgICAgYm9keSwNCiAgICAgICAgaHRtbCB7DQogICAgICAgICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7DQogICAgICAgICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tdHdpdHRlcjpiZWZvcmUsDQogICAgICAgIC5scWQgew0KICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIC5ub3RpZiwNCiAgICAgICAgLm1lZGlhX19saW5rOmJlZm9yZSwNCiAgICAgICAgLm5hdmJhci1maXJzdCAubmF2X19pdGVtLA0KICAgICAgICAubmF2YmFyLXNlY29uZCAubmF2X19pdGVtLA0KICAgICAgICAudGFibGUtd3JhcCB0ZCB7DQogICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLA0KICAgICAgICAubmF2YmFyLXNlY29uZCAubmF2IGEsDQogICAgICAgIHRhYmxlIHRkIHsNCiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3ANCiAgICAgICAgfQ0KDQogICAgICAgIGEsDQogICAgICAgIGlucyB7DQogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIGFydGljbGUsDQogICAgICAgIGZpZ2NhcHRpb24sDQogICAgICAgIGZpZ3VyZSwNCiAgICAgICAgZm9vdGVyLA0KICAgICAgICBoZWFkZXIsDQogICAgICAgIG5hdiB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jaw0KICAgICAgICB9DQoNCiAgICAgICAgaHRtbCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24sDQogICAgICAgIGh0bWwgew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsDQogICAgICAgIH0NCg0KICAgICAgICBhIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IDAgMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dCwgb3BhY2l0eSAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIC4zcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQsIG9wYWNpdHkgLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIC4zcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQsIG9wYWNpdHkgLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dCwgb3BhY2l0eSAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3MgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgYTphY3RpdmUsDQogICAgICAgIGE6Zm9jdXMsDQogICAgICAgIGE6aG92ZXIsDQogICAgICAgIGJ1dHRvbjpmb2N1cyB7DQogICAgICAgICAgICBvdXRsaW5lOiAwDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIHN0cm9uZywNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmQtY2xvc2UsDQogICAgICAgIC5xdW90ZXNpc2lwIGJsb2NrcXVvdGUsDQogICAgICAgIHN0cm9uZyB7DQogICAgICAgICAgICBmb250LXdlaWdodDogNzAwDQogICAgICAgIH0NCg0KICAgICAgICBzdXAgew0KICAgICAgICAgICAgZm9udC1zaXplOiA3NSU7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHRvcDogLS41ZW0NCiAgICAgICAgfQ0KDQogICAgICAgIGltZyB7DQogICAgICAgICAgICBib3JkZXI6IDA7DQogICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24gew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7DQogICAgICAgICAgICBmb250LXNpemU6IDEwMCU7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsOw0KICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgYXBwZWFyYW5jZTogYnV0dG9uOw0KICAgICAgICAgICAgDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19kYXRlLA0KICAgICAgICAuZGV0YWlsX19tZWRpYS1jYXB0aW9uLA0KICAgICAgICAuZm9vdGVyIC5uYXYsDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbSwNCiAgICAgICAgLnF1b3Rlc2lzaXAsDQogICAgICAgIGJvZHkgew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IEhlbHZldGljYS1GRiwgQXJpYWwsIFRhaG9tYSwgc2Fucy1zZXJpZg0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0biwNCiAgICAgICAgYm9keSB7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS40DQogICAgICAgIH0NCg0KICAgICAgICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIgew0KICAgICAgICAgICAgYm9yZGVyOiAwOw0KICAgICAgICAgICAgcGFkZGluZzogMA0KICAgICAgICB9DQoNCiAgICAgICAgdGFibGUgew0KICAgICAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsNCiAgICAgICAgICAgIGJvcmRlci1zcGFjaW5nOiAwDQogICAgICAgIH0NCg0KICAgICAgICA6cm9vdCB7DQogICAgICAgICAgICAtLWt1bGVyLTE6ICMyMTQwOWE7DQogICAgICAgICAgICAtLWt1bGVyLTI6ICMwMDdjYmQ7DQogICAgICAgICAgICAtLWt1bGVyLTM6ICNlZjY3MmY7DQogICAgICAgICAgICAtLWt1bGVyLTE6ICM1NjJiNzc7DQogICAgICAgICAgICAtLWt1bGVyLTI6ICM4MTJlODg7DQogICAgICAgICAgICAtLWt1bGVyLTM6ICNhYTI0OGMNCiAgICAgICAgfQ0KDQogICAgICAgIGJvZHkgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7DQogICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOw0KICAgICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQNCiAgICAgICAgfQ0KDQogICAgICAgICosDQogICAgICAgIDphZnRlciwNCiAgICAgICAgOmJlZm9yZSB7DQogICAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94DQogICAgICAgIH0NCg0KICAgICAgICAuY2xlYXJmaXg6YWZ0ZXIsDQogICAgICAgIC5jbGVhcmZpeDpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIiAiOw0KICAgICAgICAgICAgZGlzcGxheTogdGFibGUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jbGVhcmZpeDphZnRlciB7DQogICAgICAgICAgICBjbGVhcjogYm90aA0KICAgICAgICB9DQoNCiAgICAgICAgYTpob3ZlciB7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSkNCiAgICAgICAgfQ0KDQogICAgICAgIHAgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIGlucyB7DQogICAgICAgICAgICBkaXNwbGF5OiBjb250ZW50cw0KICAgICAgICB9DQoNCiAgICAgICAgdWwgew0KICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMjRweDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICB1bCBsaSB7DQogICAgICAgICAgICBwYWRkaW5nOiA4cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgZm9vdGVyLA0KICAgICAgICBoZWFkZXIgew0KICAgICAgICAgICAgZGlzcGxheTogdGFibGU7DQogICAgICAgICAgICB3aWR0aDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6MTAyNHB4KSB7DQoNCiAgICAgICAgICAgIGZvb3RlciwNCiAgICAgICAgICAgIGhlYWRlciB7DQogICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIGgxLA0KICAgICAgICBoMiwNCiAgICAgICAgaDMsDQogICAgICAgIGg0LA0KICAgICAgICBoNSwNCiAgICAgICAgaDYgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zDQogICAgICAgIH0NCg0KICAgICAgICBoMSB7DQogICAgICAgICAgICBmb250LXNpemU6IDQwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLS1tZCwNCiAgICAgICAgaDIgew0KICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4DQogICAgICAgIH0NCg0KICAgICAgICBoMyB7DQogICAgICAgICAgICBmb250LXNpemU6IDI4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIGg0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgaDUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4DQogICAgICAgIH0NCg0KICAgICAgICBoNiB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb250LXh4cyB7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvbnRhaW5lciB7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygyNnB4IC8gMS40NDQ0NDQ0NDQ0NDQpOw0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygyNnB4IC8gMS40NDQ0NDQ0NDQ0NDQpOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8NCiAgICAgICAgfQ0KDQogICAgICAgIC5ncmlkLXJvdyB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTI2cHggLyA0LjMzMzMzMzMzMzMpOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0yNnB4IC8gNC4zMzMzMzMzMzMzKQ0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94LA0KICAgICAgICAudGFibGUtd3JhcCB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm5vLWd1dHRlciB7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5vLWd1dHRlcj5bY2xhc3MqPWNvbHVtbi1dIHsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2x1bW4tNiwNCiAgICAgICAgLmNvbHVtbi1hdXRvIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDI2cHggLyA0LjMzMzMzMzMzMzMpOw0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygyNnB4IC8gNC4zMzMzMzMzMzMzKQ0KICAgICAgICB9DQoNCiAgICAgICAgLmNvbHVtbi1hdXRvIHsNCiAgICAgICAgICAgIC1tcy1mbGV4OiAwIDAgYXV0bzsNCiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvOw0KICAgICAgICAgICAgd2lkdGg6IGF1dG87DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2x1bW4tNiB7DQogICAgICAgICAgICAtbXMtZmxleDogY2FsYyg2IC8gMTIpOw0KICAgICAgICAgICAgZmxleDogMCAwIGNhbGMoMTAwJSAvICgxMiAvIDYpKTsNCiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC8gKDEyIC8gNikpDQogICAgICAgIH0NCg0KICAgICAgICB0YWJsZSB0ZCB7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjNiM2IzOw0KICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZS13cmFwIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsNCiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaA0KICAgICAgICB9DQoNCiAgICAgICAgLmxxZCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tZGVmYXVsdCwNCiAgICAgICAgYnV0dG9uIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxxZCBpbWcgew0KICAgICAgICAgICAgZGlzcGxheTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94IHsNCiAgICAgICAgICAgIGhlaWdodDogMDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAuNHMgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLA0KICAgICAgICAuaWNvbiB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94LS0xNi05LA0KICAgICAgICAucmF0aW9ib3gucmF0aW9fMTZfOSB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlDQogICAgICAgIH0NCg0KICAgICAgICAucmF0aW9ib3ggaWZyYW1lIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAucmF0aW9ib3gtLTQtMyB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzUlDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24gew0KICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtby10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4gew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24sDQogICAgICAgIC5pY29uLWl0ZW0gew0KICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tc20gew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgcGFkZGluZzogY2FsYygxMnB4IC8gMykgMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tbWQgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDZweDsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG46aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBvcGFjaXR5OiAuOA0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tb3V0bGluZSB7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwOw0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAwIDAgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24gew0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLS14cyB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4gLmljb24gew0KICAgICAgICAgICAgbWFyZ2luOiAwIDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudCwNCiAgICAgICAgLmxpc3QtY29udGVudF9faXRlbTpsYXN0LWNoaWxkIHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWFycm93LXJpZ2h0OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDY5Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tY2hldnJvbi1kb3duOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDZkIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tYXJyb3ctdXA6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcNmYiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1saXZlLXR2OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDc1Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tY2xvc2U6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcNGYiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1ub3RpZmljYXRpb24tYmc6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcMjIiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1jb21tZW50OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDJkIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tbGluazpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlw3ZSINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWZhY2Vib29rOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDYxIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tdHdpdHRlcjpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICB3aWR0aDogMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogMThweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMTgnIGhlaWdodD0nMTcnIHZpZXdCb3g9JzAgMCAxOCAxNycgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHBzOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J00wLjQyNTk4NiAwLjg3NzQ0MUw2Ljk5NDM3IDkuNjU1OTFMMC4zOTA2MjUgMTYuNzkwMUgxLjg3NThMNy42NTczOSAxMC41Mzk5TDEyLjMzMzkgMTYuNzkwMUgxNy4zOTA2TDEwLjQ1OTggNy41MTY1NUwxNi42MDM4IDAuODc3NDQxSDE1LjExODdMOS43OTY3NiA2LjYzMjUxTDUuNDkxNTEgMC44Nzc0NDFIMC40MzQ4MjdIMC40MjU5ODZaTTIuNjA5NTUgMS45NzM2NEg0LjkzNDU3TDE1LjE5ODIgMTUuNjkzOUgxMi44NzMyTDIuNjA5NTUgMS45NzM2NFonIGZpbGw9J3doaXRlJy8lM0UlM0Mvc3ZnJTNFJTBBIik7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWluc3RhZ3JhbTpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlxlMDA2Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tbGlua2VkaW46YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcZTAwNyINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLXlvdXR1YmU6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcZTAwOCINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLXdoYXRzYXBwOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXGUwMGMiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi10ZWxlZ3JhbTpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlxlMDBlIg0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSwNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSB7DQogICAgICAgICAgICBsZWZ0OiAtMTAwJTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIG9wYWNpdHk6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5jb3B5X3VybCAubm90aWYgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgcGFkZGluZzogOHB4Ow0KICAgICAgICAgICAgbWFyZ2luOiAwOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgei1pbmRleDogNTsNCiAgICAgICAgICAgIGJvdHRvbTogMDsNCiAgICAgICAgICAgIGxlZnQ6IDUwJTsNCiAgICAgICAgICAgIHdpZHRoOiBhdXRvOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOw0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBzY2FsZSgwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIC5ub3RpZjpiZWZvcmUgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZDsNCiAgICAgICAgICAgIHJpZ2h0OiA1MCU7DQogICAgICAgICAgICBtYXJnaW46IDAgLTdweCAwIDA7DQogICAgICAgICAgICB0b3A6IDEwMCU7DQogICAgICAgICAgICBib3JkZXItdG9wOiA4cHggc29saWQgcmVkOw0KICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50Ow0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSB7DQogICAgICAgICAgICB6LWluZGV4OiA1Ow0KICAgICAgICAgICAgcmlnaHQ6IDA7DQogICAgICAgICAgICBoZWlnaHQ6IDA7DQogICAgICAgICAgICB0b3A6IDg4cHg7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSwNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSAubWVkaWEtLWxlZnQgew0KICAgICAgICAgICAgaGVpZ2h0OiA2MnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX190ZXh0IHsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX190aXRsZSB7DQogICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4Ow0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX19saW5rIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGFiZWwgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOw0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xNWRlZywgMGRlZyk7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2tldygtMTVkZWcsIDBkZWcpOw0KICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2tldygtMTVkZWcsIDBkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBza2V3KC0xNWRlZywgMGRlZyk7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXcoLTE1ZGVnLCAwZGVnKTsNCiAgICAgICAgICAgIGxlZnQ6IC04cHg7DQogICAgICAgICAgICB0b3A6IGF1dG87DQogICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAyNHB4Ow0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgYm94LXNoYWRvdzogMCA2cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgLjgpDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCJpbWFnZXMvYmctZGV0aWtwYWdpLndlYnAiKSB0b3AvMTAxJSBuby1yZXBlYXQgI2ZmNGMwNTsNCiAgICAgICAgICAgIGJvdHRvbTogMTAwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAxMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAuMnMgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpX19jb250ZW50IHsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggNTBweCA1MHB4IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1kZXRpa3BhZ2lfX2Nsb3NlIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHotaW5kZXg6IDU7DQogICAgICAgICAgICB3aWR0aDogMjdweDsNCiAgICAgICAgICAgIGhlaWdodDogMjdweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgdG9wOiAtMTNweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7DQogICAgICAgICAgICBjb2xvcjogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSAubWVkaWEtLWxlZnQgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICB3aWR0aDogMTEwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDgwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAzDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmUgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmUgc3BhbiB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZlNjAwOw0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHggMCAyMHB4Ow0KICAgICAgICAgICAgY29sb3I6ICNlZTQwMjM7DQogICAgICAgICAgICBmb250LXNpemU6IDlweDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSBzcGFuOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHdpZHRoOiA3cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDdweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogM3B4Ow0KICAgICAgICAgICAgbGVmdDogN3B4Ow0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgICAgICAgICAgIGFuaW1hdGlvbjogMXMgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICAtbW96LWFuaW1hdGlvbjogMXMgaW5maW5pdGUgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogMXMgaW5maW5pdGUgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjYzcyMDI2DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmVfX2JvZHkgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBnYXA6IDE2cHg7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19sZWZ0IHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19yaWdodCB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZ2FwOiAxNnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4Ow0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX3RleHQgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBsaW5lLWNsYW1wOiAzOw0KICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzOw0KICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICB3aWR0aDogODAlOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogLTdweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19yaWdodF9fYnV0dG9uIHsNCiAgICAgICAgICAgIHdpZHRoOiAyMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX2J1dHRvbl9fcGxheSB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmVfX2JvZHlfX3JpZ2h0X19idXR0b25fX3BhdXNlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgQGtleWZyYW1lcyBsaXZlLWRldGlrcGFnaSB7DQoNCiAgICAgICAgICAgIDAlLA0KICAgICAgICAgICAgMTAwJSB7DQogICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZjYzQzZg0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICA1MCUgew0KICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNjNzIwMjYNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXIgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwIDA7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgLjE1KTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7DQogICAgICAgICAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7DQogICAgICAgICAgICB0b3A6IDA7DQogICAgICAgICAgICB6LWluZGV4OiAyNjsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDENCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3l0LA0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLm1lbnUtYnV0dG9uIHNwYW4sDQogICAgICAgIC5ub3RpZl9fYmFsb24gew0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkDQogICAgICAgIH0NCg0KICAgICAgICAuaGVhZGVyX19sZWZ0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgbGVmdDogLTEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXJfX3JpZ2h0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBoZWlnaHQ6IDQxcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXJfX2JyYW5kIHsNCiAgICAgICAgICAgIGhlaWdodDogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9fYnJhbmQgaW1nIHsNCiAgICAgICAgICAgIGhlaWdodDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbiB7DQogICAgICAgICAgICB3aWR0aDogNDNweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzVweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDhweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbi0tbGl2ZSB7DQogICAgICAgICAgICBjb2xvcjogIzIxNDA5YQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbi0tbm90aWYgew0KICAgICAgICAgICAgY29sb3I6ICM5OTkNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZW51LWJ1dHRvbiB7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7DQogICAgICAgICAgICB3aWR0aDogNDBweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lbnUtYnV0dG9uX193cmFwIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMTVweDsNCiAgICAgICAgICAgIGxlZnQ6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZW51LWJ1dHRvbiBzcGFuIHsNCiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICAgICAgICAgIGhlaWdodDogMnB4Ow0KICAgICAgICAgICAgd2lkdGg6IDIwcHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMjE0MDlhOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4Ow0KICAgICAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTsNCiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOw0KICAgICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuDQogICAgICAgIH0NCg0KICAgICAgICAubWVudS1idXR0b24gc3BhbjpmaXJzdC1jaGlsZCwNCiAgICAgICAgLnRvcC0wIHsNCiAgICAgICAgICAgIHRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lbnUtYnV0dG9uIHNwYW46bnRoLWNoaWxkKDIpIHsNCiAgICAgICAgICAgIHRvcDogN3B4DQogICAgICAgIH0NCg0KICAgICAgICAubWVudS1idXR0b24gc3BhbjpudGgtY2hpbGQoMykgew0KICAgICAgICAgICAgdG9wOiAxNHB4Ow0KICAgICAgICAgICAgd2lkdGg6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSAubWVudS1idXR0b24gc3BhbjpmaXJzdC1jaGlsZCB7DQogICAgICAgICAgICB0b3A6IDhweDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSAubWVudS1idXR0b24gc3BhbjpudGgtY2hpbGQoMikgew0KICAgICAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgICAgIGxlZnQ6IC02MHB4DQogICAgICAgIH0NCg0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLm1lbnUtYnV0dG9uIHNwYW46bnRoLWNoaWxkKDMpIHsNCiAgICAgICAgICAgIHRvcDogOHB4Ow0KICAgICAgICAgICAgd2lkdGg6IDIwcHg7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTsNCiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5ub3RpZl9fYmFsb24gew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgd2lkdGg6IDIycHg7DQogICAgICAgICAgICBoZWlnaHQ6IDIycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHg7DQogICAgICAgICAgICByaWdodDogLTRweDsNCiAgICAgICAgICAgIHRvcDogMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19kYXRlLA0KICAgICAgICAubWVkaWFfX3RleHQgew0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0LWNvbnRlbnQgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uLA0KICAgICAgICAubGlzdC1jb250ZW50X19pdGVtOmZpcnN0LWNoaWxkIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwOw0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uIC5saXN0LWNvbnRlbnRfX2l0ZW06Zmlyc3QtY2hpbGQgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uIC5saXN0LWNvbnRlbnRfX2l0ZW06bGFzdC1jaGlsZCwNCiAgICAgICAgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdC1jb250ZW50LS1jb2x1bW4gLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZmxleDogMQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCh3aGl0ZSwgYmxhY2spOw0KICAgICAgICAgICAgbWFzay1pbWFnZTogcmFkaWFsLWdyYWRpZW50KHdoaXRlLCBibGFjayk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIC5saWhhdGpnIGEsDQogICAgICAgIC5tZWRpYV9faW1hZ2UgYSwNCiAgICAgICAgLm5hdiBhIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX3RleHQgew0KICAgICAgICAgICAgZmxleDogMTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWMNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYV9fdGl0bGUgew0KICAgICAgICAgICAgbWFyZ2luOiAwOw0KICAgICAgICAgICAgZmxleDogMQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc3VidGl0bGUsDQogICAgICAgIC5tZWRpYV9fc3VidGl0bGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19kYXRlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjUNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYV9fYXV0aG9yIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHotaW5kZXg6IDM7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHg7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBjb2xvcjogIzMzMw0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdpZHRoOiAyNXB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAyNXB4Ow0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2F1dGhvciBhOmhvdmVyIHsNCiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2xpbmsgew0KICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYw0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19saW5rOmJlZm9yZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIGJvdHRvbTogMDsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICB0b3A6IDA7DQogICAgICAgICAgICByaWdodDogMDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICB6LWluZGV4OiAyDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2xhYmVsIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogNHB4Ow0KICAgICAgICAgICAgbGVmdDogNHB4Ow0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWEtLWxlZnQsDQogICAgICAgIC50ZXh0LWxpc3Qgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LA0KICAgICAgICAuYm94LWFkcywNCiAgICAgICAgLnRleHQtbGlzdCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYS0tbGVmdCB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQNCiAgICAgICAgfQ0KDQogICAgICAgIC50ZXh0LWxpc3Qgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLnRleHQtbGlzdF9fZGF0YSB7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1hZHMgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7DQogICAgICAgICAgICB6LWluZGV4OiAxOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1hZHMtLWNvbnRhaW5lciB7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygtMjZweCAvIDEuNDQ0NDQ0NDQ0NDQ0KTsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygtMjZweCAvIDEuNDQ0NDQ0NDQ0NDQ0KQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90IHsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBtYXJnaW46IDAgYXV0bzsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3ZjcNCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdD4qIHsNCiAgICAgICAgICAgIGZsZXg6IDEgMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90IGltZyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBoZWlnaHQ6IGF1dG8NCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgY29udGVudDogIkFkdmVydGlzZW1lbnQiOw0KICAgICAgICAgICAgbGVmdDogNTAlOw0KICAgICAgICAgICAgdG9wOiA1MCU7DQogICAgICAgICAgICBoZWlnaHQ6IDUwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAtMTsNCiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHdpZHRoPSczMicgaGVpZ2h0PSczMicgdmlld0JveD0nMCAwIDMyIDMyJyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHhtbG5zOnhsaW5rPSdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJyUzRSUzQ3JlY3Qgb3BhY2l0eT0nMC4yJyB3aWR0aD0nMzInIGhlaWdodD0nMzInIGZpbGw9J3VybCglMjNwYXR0ZXJuMCknLyUzRSUzQ2RlZnMlM0UlM0NwYXR0ZXJuIGlkPSdwYXR0ZXJuMCcgcGF0dGVybkNvbnRlbnRVbml0cz0nb2JqZWN0Qm91bmRpbmdCb3gnIHdpZHRoPScxJyBoZWlnaHQ9JzEnJTNFJTNDdXNlIHhsaW5rOmhyZWY9JyUyM2ltYWdlMCcgdHJhbnNmb3JtPSdzY2FsZSgwLjAxNTYyNSknLyUzRSUzQy9wYXR0ZXJuJTNFJTNDaW1hZ2UgaWQ9J2ltYWdlMCcgd2lkdGg9JzY0JyBoZWlnaHQ9JzY0JyB4bGluazpocmVmPSdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQU1BQUFDZHQ0SHNBQUFBQVhOU1IwSUIyY2tzZndBQUFBbHdTRmx6QUFBTEV3QUFDeE1CQUpxY0dBQUFBWjVRVEZSRkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWx2UW1QZ0FBQUlwMFVrNVRBQlZUZnFYTDMrejVNNDNTL3Y4TmM5VVFnTzRCWWVvZXhEdnBZZ09Pc1ZncU9EY1IvY3gwRmdKSGllWXhCVi9vWkJQeVJQczhkY0NWd2IyTUtEMlNmSjZCUHlZYXlLdlVRU1d5aEdlYmg3eWZscTkvclpESk5nNEg0Tk5SWHFiOHRBbldvR3pPK1BiRlhVc01IZGdmNURDL3cxQlBMZWNjM01ZNll3U0s2eVB0RDNMUWk4cW5mVklZdUV5S0R3QUFBdXhKUkVGVWVKeWxWK2QvMHpBUVZiYVRTSEgyYmltUVF0Z1V3Z2d0QVZvb3BleFNhRXZabyt5OXdncGx3MzlOYkRtT3JIRjJmdHpIbC9kZUxPbDB1a05JRVQ1L0lCZ0tSelF0RWc0RkEzNmZpaWVQYUN5T2lTTndQQmIxcWs3b1NTS05wSjd3SUUrbE0zSzVFWmwweWtXZXplWFZjaVB5dVN5a0x4Umh1UkhGZ2xwZktydnJDU21YVlBxSzVrVlBpRmFSeXF0RDN1UkdERlVsK21IdmVrS0dSWWNCL3QvOEJtSDlFSHZOaUJscldZemJoeEs0Zitzb2FUMkxhWTZ6S01Ebkp6TWdaU1lmc2k3NUl6VWd4WDVPNW1DOXdvRGtldnFVUy82ckRQSzltNVYyMGFzTVNKcmlDZUQrd2dZWldoOTBONzNTZ09nbXJxZy9YZ3lTQmh4VkM3V2Fpd0V4Nm1STUxoN2RFTjJZcmZzMmJkNENHY1M2Y0Z3bUwyNjFrMlRiOWgxcWczaTMvbU1SMW5ZNkNsOXFUR21BZmNndm9ydDJJMmxJRElnZkJRU3NzVWV1bHhvRVVGREE5aXIwVW9NZ0d1V2hmYjMxUi9jM0Q0eFB1QmlFVUppSERsSjJ0V1h1YnVNUWJCQkdFZjRETFBiaEhuQUVOSWdndnBaWnRXN1NCaHBUa0lFbUdCeWw1R045WkJvMjRKWnduSEpuV093RXVBUnVFMmNwOXlTTG5RSTNNZVFFVGxQdU5JdkZ3R1BrRXVrTTVaNWxzWE5nSW5HcGZKNXk1MWlzQlJoYzRDL1RQT1ZlWkRFZE1QRHoxL2tTNVRwc0Y5UUczZXZNRlpUR29zbGR1aXg0U2cyV2tWRFNybER5MVQ0eUF4Z1lCOFFWMVd1VVhMZFRjUjY2QzJiejZTenIxNjI4RzdNY2J0d0VERzZaT1BldzNMYm8xVHQzVis3ZGY0QVFZRURQaDN2YThFTmJ3ZldVNHRQMmlQN0FQYTZSeDBnZXFzZFZlTjZmUFBWbVVMWWJaNzdCZVBiY3FWeVNHOWdOaHRqaU5NYVp4bjdpaGZ4bGVzbHNrZGhrNVZzbDgvZlVxOWthZVYwdzQ0MkQ4ZllkKzVHeU5tK2wzWHpmcm9tNDllc0g1ekxCUmxNV0gva3RIckRWYmZINkFadnR1VS9pS1EvUTd1UFBkVkdQL252Z1FGNUhuczZrU3U5cDZNTE5MMnE5TWZaMVlIbW5BbzU5Q0I0ODhXcmdxNHZjQ05Yb2k1ZS9MWHFRbThFUDN4amo3ejhXM0hWczlNYi8ybXI3NTYvZmYvNnFlUDhBSUpHN1ZBU0g1QUFBQUFBQVNVVk9SSzVDWUlJPScvJTNFJTNDL2RlZnMlM0UlM0Mvc3ZnJTNFIik7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0Ow0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDRweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjRweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDNweCAwOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIGNvbG9yOiAjOTk5Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3RfX25hbWUgew0KICAgICAgICAgICAgZGlzcGxheTogbm9uZTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSA0MHB4KTsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4Ow0KICAgICAgICAgICAgei1pbmRleDogLTE7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBjb2xvcjogI2NjYw0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1zbWIgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MHB4Ow0KICAgICAgICAgICAgei1pbmRleDogMjsNCiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgY2FsYyg0cHggLyAyKSA0cHggMCByZ2JhKDAsIDAsIDAsIC4xNSk7DQogICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5Ow0KICAgICAgICAgICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5Ow0KICAgICAgICAgICAgdG9wOiAwDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtbWItY29udGFpbmVyIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiA1MDZweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICAgICAgICAgICAgY2xpcDogcmVjdChhdXRvLCBhdXRvLCBhdXRvLCBhdXRvKTsNCiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLWJiLA0KICAgICAgICAuYWRzLXNsb3QtLW1iIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLW1iIHsNCiAgICAgICAgICAgIHdpZHRoOiAzMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogNDgwcHg7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiAyNnB4ICFpbXBvcnRhbnQ7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDsNCiAgICAgICAgICAgIHotaW5kZXg6IDEgIWltcG9ydGFudDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvYWRzL21lZ2EtYmlsbGJvYXJkLXBsYWNlaG9sZGVyLndlYnAiKQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1iYiB7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGhlaWdodDogMTU2cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL2Fkcy9iaWxsYm9hcmQtcGxhY2Vob2xkZXIud2VicCIpOw0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNw0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1zYiB7DQogICAgICAgICAgICB3aWR0aDogMzAwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDI1MHB4DQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLWliIHsNCiAgICAgICAgICAgIHdpZHRoOiAzMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogNTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmQgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MjRweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICBib3R0b206IDA7DQogICAgICAgICAgICByaWdodDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHAgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBmb250LXNpemU6IDEwcHg7DQogICAgICAgICAgICBwYWRkaW5nOiAycHggMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAubWVnYWJpbGxib2FyZC1jbG9zZSB7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICByaWdodDogY2FsYyg1MCUgLSAxNjBweCk7DQogICAgICAgICAgICBwYWRkaW5nOiA1cHggMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZ3QtOCB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLnBkdC0xMiB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucGRiLTEyIHsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5wZHQtMTYgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDE2cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLnBkYi0xNiB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAubWd0LTE2IHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLm1nYi0xNiB7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC53LTEwMCB7DQogICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuZmxleC1jZW50ZXIgew0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuYm94X190aXRsZSwNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSAubWVkaWFfX2xhYmVsLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGluaywNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nLA0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnLXRpdGxlLA0KICAgICAgICAuZGV0YWlsX19zdWJ0aXRsZSwNCiAgICAgICAgLmZvbnQtZmFtaWx5LWJhc2UtMiwNCiAgICAgICAgLm1lZGlhX19zdWJ0aXRsZSwNCiAgICAgICAgLm1lZGlhX190aXRsZSwNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiBhIHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDANCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXZfX2l0ZW0sDQogICAgICAgIC5kZXRhaWxfX2RhdGUsDQogICAgICAgIC5kZXRhaWxfX21lZGlhLWNhcHRpb24sDQogICAgICAgIC5mb290ZXIgLm5hdiwNCiAgICAgICAgLmZvb3Rlcl9fY29weSwNCiAgICAgICAgLm1lZGlhX19kYXRlIHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDANCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX3RpdGxlLA0KICAgICAgICAuZGV0YWlsX190aXRsZSwNCiAgICAgICAgLmZvbnQtYmFzZS1zZW1pYm9sZCwNCiAgICAgICAgLmxpbmtzaXNpcCBhLA0KICAgICAgICAubmF2LA0KICAgICAgICAucGFnZV9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90OmJlZm9yZSwNCiAgICAgICAgLmJveF9faGVhZGVyIGEsDQogICAgICAgIC5ib3hfX3RpdGxlLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGFiZWwsDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX19saW5rLA0KICAgICAgICAuYnRuLA0KICAgICAgICAuY29sbGFwc2libGVfX3RvcCwNCiAgICAgICAgLmRldGFpbF9fYXV0aG9yLA0KICAgICAgICAuZGV0YWlsX19ib2R5LXRhZyAubmF2X19pdGVtLA0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnLXRpdGxlLA0KICAgICAgICAuZGV0YWlsX19zdWJ0aXRsZSwNCiAgICAgICAgLmRldGFpbF9fdGl0bGUsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX3RleHQsDQogICAgICAgIC5mb250LWZhbWlseS1iYXNlLTIsDQogICAgICAgIC5mb290ZXIsDQogICAgICAgIC5mb290ZXItdGl0bGUsDQogICAgICAgIC5saW5rc2lzaXAsDQogICAgICAgIC5saXN0X19iZXJpdGFfX2l0ZW1fX2JvdHRvbV9fZGF0ZSwNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX190aXRsZSwNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9fdGl0bGUsDQogICAgICAgIC5tZWRpYV9fYXV0aG9yLA0KICAgICAgICAubWVkaWFfX3N1YnRpdGxlLA0KICAgICAgICAubWVkaWFfX3RpdGxlLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2LWZyYW1lYmFyX190aXRsZSwNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIsDQogICAgICAgIC5wYWdlX190aXRsZSwNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fdG9wLA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3LA0KICAgICAgICAudGV4dC1saXN0IHsNCiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBNb250c2VycmF0LUZGLCBBcmlhbCwgVGFob21hLCBzYW5zLXNlcmlmDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QsDQogICAgICAgIC5hZHMtc2xvdC0tYmIsDQogICAgICAgIC5hZHMtc2xvdC1tYi1jb250YWluZXIsDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUsDQogICAgICAgIC5icmVha2luZy1kZXRpa3BhZ2lfX2Nsb3NlLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fdGV4dCwNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZywNCiAgICAgICAgLmRpc3BsYXktZmxleCwNCiAgICAgICAgLmZvb3Rlcl9fYXBwLXN0b3JlLA0KICAgICAgICAubmF2YmFyLWZpcnN0LA0KICAgICAgICAubm90aWZfX2JhbG9uLA0KICAgICAgICAuc3RpY2t5LXNoYXJlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94Ow0KICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRhZyAubmF2LA0KICAgICAgICAubGlzdC1jb250ZW50X19pdGVtLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2LS1jZW50ZXIgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IHdyYXANCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX2hlYWRlciwNCiAgICAgICAgLmZsZXgtYmV0d2VlbiwNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIsDQogICAgICAgIC5wYWdlX19oZWFkZXIgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IHdyYXA7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QsDQogICAgICAgIC5kZXRhaWxfX25ld3N0YWcsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSwNCiAgICAgICAgLmhlYWRlcl9faWNvbiwNCiAgICAgICAgLmljb24taXRlbSwNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHAsDQogICAgICAgIC50ZXh0LWNlbnRlciB7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LA0KICAgICAgICAuYWRzLXNsb3QtLWJiLA0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpX19jbG9zZSwNCiAgICAgICAgLm5vdGlmX19iYWxvbiwNCiAgICAgICAgLnN0aWNreS1zaGFyZSB7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5jb3B5X3VybCAubm90aWYsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXZfX2l0ZW0sDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50LA0KICAgICAgICAubWVkaWEtLWltYWdlLXJhZGl1cyAubWVkaWFfX2ltYWdlLA0KICAgICAgICAubWVkaWFfX2xhYmVsIHsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaV9fY2xvc2UsDQogICAgICAgIC5jaXJjbGUsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSBzcGFuOmJlZm9yZSwNCiAgICAgICAgLmljb24taXRlbSAuY29tbWVudC1jb3VudCwNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyLA0KICAgICAgICAubmF2X19pdGVtLS1uZXcgYTphZnRlciB7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xvci1ibGFjayB7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSAubWVkaWFfX3RleHQsDQogICAgICAgIC5tZWdhYmlsbGJvYXJkX19zd2lwZSBwIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuY29sb3ItcHVycGxlLWxpZ2h0LTIgew0KICAgICAgICAgICAgY29sb3I6ICM4MTJlODgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zdGlja3ktc2hhcmVfX3dyYXAgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyIGltZywNCiAgICAgICAgLm1lZGlhX19pbWFnZSBhPio+aW1nIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7DQogICAgICAgICAgICB3aWR0aDogYXV0bzsNCiAgICAgICAgICAgIGhlaWdodDogYXV0bzsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICB0b3A6IDUwJTsNCiAgICAgICAgICAgIGxlZnQ6IDUwJTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCkNCiAgICAgICAgfQ0KDQogICAgICAgIC53cmFwLXpvb20gew0KICAgICAgICAgICAgei1pbmRleDogNjY2Ow0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93biwNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlDQogICAgICAgIH0NCg0KICAgICAgICAuaW1nLXpvb21vdXQsDQogICAgICAgIC53cmFwLXpvb20gew0KICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOw0KICAgICAgICAgICAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0Ow0KICAgICAgICAgICAgY3Vyc29yOiAtbW96LXpvb20tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAucF9pbWdfem9vbWluLA0KICAgICAgICAud3JhcC16b29tIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zczsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzOw0KICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcw0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudSB7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDRweDsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgICAgICBtaW4td2lkdGg6IDE1MHB4Ow0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiAxMDAlOw0KICAgICAgICAgICAgbGVmdDogLThweDsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIHotaW5kZXg6IDMNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50IHsNCiAgICAgICAgICAgIG1pbi13aWR0aDogMjAwcHg7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBtYXJnaW46IDhweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudV9fY29udGVudDphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGxlZnQ6IDI4cHg7DQogICAgICAgICAgICB3aWR0aDogMDsNCiAgICAgICAgICAgIGhlaWdodDogMDsNCiAgICAgICAgICAgIHRvcDogMDsNCiAgICAgICAgICAgIGJvcmRlcjogNnB4IHNvbGlkICMwMDA7DQogICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmZmYgI2ZmZjsNCiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7DQogICAgICAgICAgICBib3gtc2hhZG93OiAtMnB4IDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIC4wNSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50LWFydGljbGUgew0KICAgICAgICAgICAgbWluLXdpZHRoOiAyNjBweDsNCiAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7DQogICAgICAgICAgICBwYWRkaW5nOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudS0tcmlnaHQgLmRyb3Bkb3duLW1lbnVfX2NvbnRlbnQ6YWZ0ZXIgew0KICAgICAgICAgICAgbGVmdDogYXV0bzsNCiAgICAgICAgICAgIHJpZ2h0OiAycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51LS1yaWdodCB7DQogICAgICAgICAgICBsZWZ0OiBhdXRvOw0KICAgICAgICAgICAgcmlnaHQ6IC04cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bj4uaWNvbiB7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXMgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gsDQogICAgICAgIC5kZXRhaWxfX21lZGlhLA0KICAgICAgICAuZGV0YWlsX19tdWx0aXBsZS1wYWdpbmcgew0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMThweDsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMThweDsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX2hlYWRlciB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBmb250LXNpemU6IDIzcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX3RpdGxlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNTYyYjc3DQogICAgICAgIH0NCg0KICAgICAgICAuYm94IHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsNCiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4cHg7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveF9faGVhZGVyIGEsDQogICAgICAgIC5uYXYsDQogICAgICAgIC5uYXZfX2l0ZW0gew0KICAgICAgICAgICAgcGFkZGluZzogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveF9fbG9nbyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4Ow0KICAgICAgICAgICAgbWF4LWhlaWdodDogNDVweDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAucGFnZV9faGVhZGVyIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX190aXRsZSB7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBmb250LXNpemU6IDIzcHg7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIgew0KICAgICAgICAgICAgY29sb3I6ICM5OTk7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGEgew0KICAgICAgICAgICAgY29sb3I6ICM5OTk7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIi8iOw0KICAgICAgICAgICAgcGFkZGluZzogMCA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdl9faXRlbTpsYXN0LWNoaWxkIGE6YWZ0ZXIsDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGE6bGFzdC1jaGlsZDphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIg0KICAgICAgICB9DQoNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIgYTpob3ZlciB7DQogICAgICAgICAgICBjb2xvcjogIzMzMw0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdl9faXRlbS0tbmV3IGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICB3aWR0aDogNXB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiA1cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7DQogICAgICAgICAgICBwb3NpdGlvbjogbWlkZGxlOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdl9faXRlbSBhLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2X19pdGVtLA0KICAgICAgICAubmF2X19pdGVtLS1uZXcsDQogICAgICAgIC5uYXZiYXIsDQogICAgICAgIC5uYXZiYXItc2Vjb25kIC5uYXYgYSwNCiAgICAgICAgLm5hdmJhci1zaGFkb3csDQogICAgICAgIC5yZWRpcmVjdCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYgew0KICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsNCiAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiBhIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweCA4cHg7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3ZjcNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZfX2l0ZW0gYSB7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMjRweCA0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3RlciAubmF2X19pdGVtIGEgew0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBjb2xvcjogIzY2Ng0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3RlciAubmF2X19pdGVtIGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIi4iOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiAtMTJweDsNCiAgICAgICAgICAgIHJpZ2h0OiAtNHB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4Ow0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3cgLm5hdmJhci0tc2Nyb2xsIC5uYXZfX2l0ZW06Zmlyc3QtY2hpbGQgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNnB4DQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXNoYWRvdyAubmF2YmFyLS1zY3JvbGwgLm5hdl9faXRlbTpsYXN0LWNoaWxkIHsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdl9faXRlbTpsYXN0LWNoaWxkIGEgew0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdl9faXRlbSB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1maXJzdCAubmF2X19pdGVtLS1hY3RpdmUgYSB7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keS10YWcgLm5hdl9faXRlbSB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwOw0KICAgICAgICAgICAgbWFyZ2luOiA0cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxNnB4Ow0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdiB7DQogICAgICAgICAgICBtYXJnaW46IDI0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci0tc2Nyb2xsIC5uYXYgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDRweDsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdiB7DQogICAgICAgICAgICBoZWlnaHQ6IDQ1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdiwNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiB7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvOw0KICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOw0KICAgICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IG5vd3JhcA0KICAgICAgICB9DQoNCiAgICAgICAgLmJhY2stdG9wLA0KICAgICAgICAubmF2LS1jZW50ZXIgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdjo6LXdlYmtpdC1zY3JvbGxiYXIsDQogICAgICAgIC5uYXZiYXItc2Vjb25kIC5uYXY6Oi13ZWJraXQtc2Nyb2xsYmFyIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXYgew0KICAgICAgICAgICAgbWFyZ2luOiA4cHggLTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlciAubmF2YmFyIHsNCiAgICAgICAgICAgIGhlaWdodDogMzVweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItc2hhZG93OmFmdGVyLA0KICAgICAgICAubmF2YmFyLXNoYWRvdzpiZWZvcmUgew0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICIiDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLS1zY3JvbGwgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW4gIWltcG9ydGFudDsNCiAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbCAhaW1wb3J0YW50Ow0KICAgICAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXdyYXAgew0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3cgew0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMThweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3c6YmVmb3JlIHsNCiAgICAgICAgICAgIHdpZHRoOiAxOHB4Ow0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChyaWdodCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyaWdodCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXNoYWRvdzphZnRlciB7DQogICAgICAgICAgICB3aWR0aDogMjRweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICNmZmYgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5iYWNrLXRvcCB7DQogICAgICAgICAgICB3aWR0aDogNDBweDsNCiAgICAgICAgICAgIGhlaWdodDogNDBweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHJpZ2h0OiA4cHg7DQogICAgICAgICAgICBib3R0b206IDYwcHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwNCwgMjA0LCAyMDQsIC41KTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBmb250LXNpemU6IDIycHg7DQogICAgICAgICAgICB6LWluZGV4OiAxMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJhY2stdG9wIGEgew0KICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24td3JhcCAubGlzdC1jb250ZW50X19pdGVtOmxhc3QtY2hpbGQgew0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX190aXRsZSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIsDQogICAgICAgIC5saW5rc2lzaXAgc3Ryb25nLA0KICAgICAgICAubGlzdC1jb250ZW50LS1jb2x1bW4gLm1lZGlhX190aXRsZSwNCiAgICAgICAgLm1lZGlhX19sYWJlbCB7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX3N1YnRpdGxlLA0KICAgICAgICAubWVkaWFfX3N1YnRpdGxlIHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1rdWxlci0zKQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19sYWJlbCB7DQogICAgICAgICAgICBwYWRkaW5nOiA1cHggMTJweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzcNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYS0tbGVmdCAubWVkaWFfX2ltYWdlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMCAxMnB4IDAgMDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nIC50ZXh0LWxpc3RfX2RhdGEgew0KICAgICAgICAgICAgY29sb3I6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1ibHVlLWJhc2Ugew0KICAgICAgICAgICAgYmFja2dyb3VuZDogIzIxNDA5YTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1ibHVlLWJhc2U6aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4tLWJsdWUtYmFzZS5idG4tLW91dGxpbmUgew0KICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMjE0MDlhOw0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4tLXBhZ2luZyB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1rdWxlci0xKTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1wYWdpbmc6aG92ZXIsDQogICAgICAgIC5pY29uLWl0ZW06aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgew0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2U2ZTZlNjsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19sb2dvIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXJfX2xvZ28gaW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiAxNjBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlcl9fc29jaWFsIHsNCiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXJfX2NvcHkgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlcl9fYm9yZGVyIHsNCiAgICAgICAgICAgIGhlaWdodDogNHB4Ow0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2sNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXItdGl0bGUsDQogICAgICAgIC5mb290ZXJfX2dldC1hcHAgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyLXRpdGxlX19wYXJ0b2Ygew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlci10aXRsZV9fcGFydG9mIGltZyB7DQogICAgICAgICAgICB3aWR0aDogODBweDsNCiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207DQogICAgICAgICAgICBtYXJnaW46IDAgMCAzcHggM3B4DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19hcHAtc3RvcmUgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19hcHAtc3RvcmUgaW1nIHsNCiAgICAgICAgICAgIG1hcmdpbjogMTZweCAycHg7DQogICAgICAgICAgICB3aWR0aDogYXV0bzsNCiAgICAgICAgICAgIGhlaWdodDogMzRweA0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6MzU5cHgpIHsNCiAgICAgICAgICAgIC5mb290ZXJfX2FwcC1zdG9yZSBpbWcgew0KICAgICAgICAgICAgICAgIGhlaWdodDogMjVweA0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJvdHRvbS1zdGlja3kgew0KICAgICAgICAgICAgaGVpZ2h0OiAwDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX3BhZ2Ugew0KICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBtYXJnaW46IDAgMCAxNnB4Ow0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZzogOHB4IDEycHg7DQogICAgICAgICAgICBjb2xvcjogI2Y3ZjdmNzsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MDBweCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC43OSwgLjMzLCAuNjQsIC44Mik7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguNzksIC4zMywgLjY0LCAuODIpDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQgcD5hLA0KICAgICAgICAuZGV0YWlsX190aXRsZSwNCiAgICAgICAgLnJlZGlyZWN0X19jbG9zZS1idG4gew0KICAgICAgICAgICAgY29sb3I6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW1lbnUsDQogICAgICAgIC5zdGlja3ktc2hhcmUgew0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtby10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX3BhZ2UgaDMsDQogICAgICAgIC5yZWRpcmVjdF9fcGFnZSBoNCB7DQogICAgICAgICAgICBjb2xvcjogI2Y3ZjdmNw0KICAgICAgICB9DQoNCiAgICAgICAgLnJlZGlyZWN0X19wYWdlIGg0IHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7DQogICAgICAgICAgICBtYXgtaGVpZ2h0OiA0OHB4Ow0KICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3ggIWltcG9ydGFudDsNCiAgICAgICAgICAgIGxpbmUtY2xhbXA6IDM7DQogICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7DQogICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOw0KICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbA0KICAgICAgICB9DQoNCiAgICAgICAgLnJlZGlyZWN0X19jbG9zZSB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX2Nsb3NlLWJ0biB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgd2lkdGg6IDMwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDMwcHg7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2UzZjVmZTk5Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhX19pbWFnZS5pbWcteHNzIHsNCiAgICAgICAgICAgIHdpZHRoOiA1NnB4DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhX190ZXh0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWRpcmVjdCAubWVkaWFfX3RleHQubm9tYXJnaW4gew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOw0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWRpcmVjdCAubWVkaWFfX3RleHQubm9tYXJnaW4+OmZpcnN0LWNoaWxkIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhIHsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLnN0aWNreS1zaGFyZSB7DQogICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI3Ow0KICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkOw0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgaGVpZ2h0OiAwOw0KICAgICAgICAgICAgYm90dG9tOiAtMTAwcHg7DQogICAgICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLmJveC1tZW51LA0KICAgICAgICAuc3RpY2t5LXNoYXJlLS1zdGlja2VkIHsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7DQogICAgICAgICAgICBvcGFjaXR5OiAxDQogICAgICAgIH0NCg0KICAgICAgICAuc3RpY2t5LXNoYXJlX193cmFwIHsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOHB4Ow0KICAgICAgICAgICAgYm94LXNoYWRvdzogMCBjYWxjKDRweCAvIDIpIDRweCAwIHJnYmEoMCwgMCwgMCwgLjE1KTsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zdGlja3ktc2hhcmUtLXN0aWNrZWQgew0KICAgICAgICAgICAgYm90dG9tOiAwOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7DQogICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsIC5zdGlja3ktc2hhcmUgLmljb24taXRlbSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB3aWR0aDogMjZweDsNCiAgICAgICAgICAgIGhlaWdodDogMjZweDsNCiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbSAuY29tbWVudC1jb3VudCB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICBmb250LXNpemU6IDEwcHg7DQogICAgICAgICAgICB0b3A6IC00cHg7DQogICAgICAgICAgICByaWdodDogLTRweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDAgNHB4Ow0KICAgICAgICAgICAgbWluLXdpZHRoOiAxNXB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2VkMTMxYg0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9faGVhZGVyIHsNCiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4Ow0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgLmRldGFpbF9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2RhdGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX3N1YnRpdGxlIHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7DQogICAgICAgICAgICBjb2xvcjogI2Y3OTMxZA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYXV0aG9yIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19sYWJlbCB7DQogICAgICAgICAgICBjb2xvcjogI2FhMjQ4Yw0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbWVkaWEgew0KICAgICAgICAgICAgcGFkZGluZzogMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbWVkaWEtaW1hZ2U+aW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbWluLWhlaWdodDogMjExcHg7DQogICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB6LWluZGV4OiAyDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19tZWRpYS1pbWFnZSAuaW1nLXpvb21vdXQgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX21lZGlhLWNhcHRpb24gew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMThweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc2hhcmUsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keSwNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0PnA6bnRoLW9mLXR5cGUoMikgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0IGltZyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5wOmZpcnN0LW9mLXR5cGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQ+aDIsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5oMyB7DQogICAgICAgICAgICBmb250LXNpemU6IDE4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5oNCwNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0Pmg1LA0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQ+aDYsDQogICAgICAgIC5saW5rc2lzaXAgYSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dCB0YWJsZSB7DQogICAgICAgICAgICB3aWR0aDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc2hhcmUgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZyB7DQogICAgICAgICAgICBtYXJnaW46IDE2cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZy10aXRsZSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBmbGV4OiAxDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnIGltZyB7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nIHsNCiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMThweCAwOw0KICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBjb2xvcjogIzk5OTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwLA0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXBfdGFibGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEyMCU7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmxpbmtzaXNpcCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBtYXJnaW46IDhweCAwOw0KICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjNTYyYjc3DQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIHRkLA0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXBfdGFibGUgdGQsDQogICAgICAgIC5xdW90ZXNpc2lwIHRkIHsNCiAgICAgICAgICAgIGJvcmRlcjogbm9uZTsNCiAgICAgICAgICAgIHBhZGRpbmc6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5saW5rc2lzaXAgYSB7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3NzsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIC5saWhhdGpnIHsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpbmtzaXNpcCAubGloYXRqZyBzdHJvbmcgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5xdW90ZXNpc2lwIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwOw0KICAgICAgICAgICAgcGFkZGluZzogMDsNCiAgICAgICAgICAgIGJvcmRlcjogMDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fYm90dG9tLA0KICAgICAgICAucHJvZmlsZV9fYm94X190b3Agew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWwNCiAgICAgICAgfQ0KDQogICAgICAgIC5xdW90ZXNpc2lwIGJsb2NrcXVvdGUgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDsNCiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweCAwIDI0cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMTIwJTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICAucXVvdGVzaXNpcCBibG9ja3F1b3RlOmJlZm9yZSB7DQogICAgICAgICAgICBmb250LWZhbWlseTogZGV0aWtuZXR3b3JrLUZGOw0KICAgICAgICAgICAgY29udGVudDogIlw3YiI7DQogICAgICAgICAgICBmb250LXNpemU6IDQ1cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGNvbG9yOiAjOTk5DQogICAgICAgIH0NCg0KICAgICAgICAucXVvdGVzaXNpcCBjaXRlIHsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwX3RhYmxlIHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7DQogICAgICAgICAgICBjb2xvcjogIzY2NjsNCiAgICAgICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQNCiAgICAgICAgfQ0KDQogICAgICAgIC5waWNfYXJ0aWtlbF9zaXNpcCB7DQogICAgICAgICAgICBjb2xvcjogIzk5OQ0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwIC5waWMgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXAgLnBpYyBpbWcgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IGF1dG87DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICB0b3A6IGF1dG87DQogICAgICAgICAgICBsZWZ0OiBhdXRvOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogbm9uZTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bw0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwIC5waWM+c3BhbiB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2DQogICAgICAgIH0NCg0KICAgICAgICAuc2lzaXBfZW1iZWRfc29zbWVkIGlmcmFtZSB7DQogICAgICAgICAgICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDBweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucHJvZmlsZV9fYm94IHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7DQogICAgICAgICAgICBtYXJnaW46IDI0cHggMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fdG9wIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzc7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGhlaWdodDogNDFweDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweCA4cHggMCAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAucHJvZmlsZV9fYm94X19ib3R0b20gew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7DQogICAgICAgICAgICBjb2xvcjogIzAwMDsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbV9faW1nIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMTJweDsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fYm90dG9tX19pbWcgaW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiA0OHB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiA0OHB4Ow0KICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlOw0KICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbV9fdGV4dCB7DQogICAgICAgICAgICBtYXJnaW46IDEycHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbSB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsNCiAgICAgICAgICAgIG1hcmdpbjogNXB4IDRweDsNCiAgICAgICAgICAgIHdpZHRoOiAzMnB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAzMnB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4Ow0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsIC5pY29uLWl0ZW0gew0KICAgICAgICAgICAgd2lkdGg6IDM1cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDM1cHg7DQogICAgICAgICAgICBwYWRkaW5nOiAycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2ZiIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzYzVhOTkNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3R3IHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2lnIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1ODUxZGI7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LXJhZGlhbC1ncmFkaWVudChsZWZ0IGJvdHRvbSwgZWxsaXBzZSBjb3ZlciwgI2ZmZGM4MCAxNSUsICNlMTMwNmMgNTUlLCAjNTg1MWRiIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQobGVmdCBib3R0b20sIGVsbGlwc2UgY292ZXIsICNmZmRjODAgMTUlLCAjZTEzMDZjIDU1JSwgIzU4NTFkYiAxMDAlKTsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGxlZnQgYm90dG9tLCAjZmZkYzgwIDE1JSwgI2UxMzA2YyA1NSUsICM1ODUxZGIgMTAwJSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2luIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDc3YjUNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3dhIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogIzI1ZDM2Ng0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbV9fdGVsZSB7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwOGMNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2xpbmsgew0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjOTk5DQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHsNCiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgY29sb3I6ICM3MjczNzQ7DQogICAgICAgICAgICBmb250LXNpemU6IDEzcHg7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuDQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHRyIHRkIHsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMWYyZjM7DQogICAgICAgICAgICBwYWRkaW5nOiA3cHggMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLnRhYmxlU3BlYyB0ciB0ZDpmaXJzdC1jaGlsZCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmOGY5Ow0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIHdpZHRoOiA0MCUNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHIgdGQ6bnRoLWNoaWxkKDIpIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHIgdGQudGl0bGUgew0KICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS41Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHRyOmhvdmVyIHRkIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZTYNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHI6aG92ZXIgdGQudGl0bGUgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fdGV4dCwNCiAgICAgICAgLmZvb3Rlcl9fYm9yZGVyIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzc7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM1NjJiNzcgNTAlLCAjYWEyNDhjIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNTYyYjc3IDUwJSwgI2FhMjQ4YyAxMDAlKTsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM1NjJiNzcgNTAlLCAjYWEyNDhjIDEwMCUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm90dG9tLXN0aWNreSB7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICBib3R0b206IDA7DQogICAgICAgICAgICBsZWZ0OiAwOw0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICB6LWluZGV4OiAyNg0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19pbWFnZS5pbWcteHNzIHsNCiAgICAgICAgICAgIHdpZHRoOiA1NnB4DQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGUgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNzsNCiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHg7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgICAgICAgICAgb3V0bGluZTogMDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xsYXBzaWJsZV9fdG9wIHsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGVfX3RvcDo6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImltYWdlcy9wYXRoLWRvd24ucG5nIik7DQogICAgICAgICAgICBmbG9hdDogcmlnaHQ7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsNCiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQogICAgICAgICAgICBoZWlnaHQ6IDEzcHg7DQogICAgICAgICAgICB3aWR0aDogMjNweDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5hY3RpdmUgLmNvbGxhcHNpYmxlX190b3A6OmFmdGVyIHsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xsYXBzaWJsZV9fY29udGVudCB7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IC41cyBlYXNlLW91dDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICBtYXgtaGVpZ2h0OiAwOw0KICAgICAgICAgICAgcGFkZGluZzogMCAxNnB4DQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGVfX2NvbnRlbnQgYSB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jaw0KICAgICAgICB9DQoNCiAgICAgICAgLm1ndC0wIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmZzLTE0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuYWN0aXZlX19jb250ZW50IHsNCiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwMDBweDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzIGVhc2UtaW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xvcl9fYmx1ZSB7DQogICAgICAgICAgICBjb2xvcjogIzIxNDA5YSAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucG9zaXRpb24tcmVsYXRpdmUgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0X19iZXJpdGEgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7DQogICAgICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdF9fYmVyaXRhX190aXRsZSB7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgICAgICBmb250LXdlaWdodDogNjAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0X19iZXJpdGFfX2l0ZW0gew0KICAgICAgICAgICAgd2lkdGg6IDE1MHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdF9fYmVyaXRhX19pdGVtX190b3Agew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fdG9wX19sb2dvIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMnB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX190aXRsZSB7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgICAgICBmb250LXdlaWdodDogNTAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7DQogICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA0cHg7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX19kYXRlIHsNCiAgICAgICAgICAgIGNvbG9yOiAjOWI5YjliOw0KICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxM3B4Ow0KICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0uMjJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmtvbWVudGFyX2JveCB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogOTBweA0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsNCiAgICAgICAgICAgIC5rb21lbnRhcl9ib3ggew0KICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2MHB4DQogICAgICAgICAgICB9DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZmxleC1mbG93OiB3cmFwOw0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faXRlbSBhLA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5zYl9jbG9zZSB7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhcl9fdGl0bGUsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgLmdldF9hcHAsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgc3Ryb25nLA0KICAgICAgICAudXNlci1sb2dfX2xvZ2luLA0KICAgICAgICAudXNlci1sb2dfX25hbWUgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMA0KICAgICAgICB9DQoNCiAgICAgICAgLnNtYXJ0YmFubmVyX25ldyAuc2JfY2xvc2Ugew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOw0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheSB7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTsNCiAgICAgICAgICAgIHRvcDogNTNweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgYm90dG9tOiAwOw0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIG1hcmdpbjogMTJweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweDsNCiAgICAgICAgICAgIHotaW5kZXg6IDEwMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW92ZXJsYXlfX2hlYWRlciB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZsZXgtZmxvdzogd3JhcDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheV9faGVhZGVyLW5hdiB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICByaWdodDogMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDMNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheS0tYXJyb3ctbG9nbzphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHdpZHRoOiAwOw0KICAgICAgICAgICAgaGVpZ2h0OiAwOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgbGVmdDogMTA0cHg7DQogICAgICAgICAgICBib3JkZXI6IDhweCBzb2xpZCAjMDAwOw0KICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmZmICNmZmY7DQogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpOw0KICAgICAgICAgICAgYm94LXNoYWRvdzogLTNweCAzcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAuMDUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW92ZXJsYXlfX2JvZHkgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiA1MHB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDhweDsNCiAgICAgICAgICAgIGJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgbGVmdDogOHB4Ow0KICAgICAgICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsICFpbXBvcnRhbnQ7DQogICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGwgIWltcG9ydGFudDsNCiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaA0KICAgICAgICB9DQoNCiAgICAgICAgLmpzLW1lbnUtYWN0aXZlIGhlYWRlci5oZWFkZXIsDQogICAgICAgIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1tZW51IHsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZyAubWVkaWFfX2F1dGhvciB7DQogICAgICAgICAgICBtYXJnaW46IDANCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZyAubWVkaWFfX2F1dGhvci1pbWFnZS1hdmF0YXIgew0KICAgICAgICAgICAgd2lkdGg6IDM1cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDM1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZ19fbG9naW4gew0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWE7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgew0KICAgICAgICAgICAgcGFkZGluZzogOHB4IDA7DQogICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2YwZjBmMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2LA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IHN0cm9uZyB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pdGVtIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsNCiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWwNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faXRlbSBhIHsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pdGVtLW5ldyB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7DQogICAgICAgICAgICBwYWRkaW5nOiAwIDRweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7DQogICAgICAgICAgICBjb2xvcjogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pY29uIHsNCiAgICAgICAgICAgIHdpZHRoOiAyM3B4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAyM3B4Ow0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faWNvbiBpbWcgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdi0tdHdvLWNvbCB7DQogICAgICAgICAgICBjb2x1bW5zOiAyOw0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW5zOiAyOw0KICAgICAgICAgICAgLW1vei1jb2x1bW5zOiAyOw0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAwOw0KICAgICAgICAgICAgLW1vei1jb2x1bW4tZ2FwOiAwOw0KICAgICAgICAgICAgY29sdW1uLWdhcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2LnBsMTUgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4Ow0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiA1cHg7DQogICAgICAgICAgICAtbW96LWNvbHVtbi1nYXA6IDVweDsNCiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhcl9fdGl0bGUgew0KICAgICAgICAgICAgcGFkZGluZzogNHB4Ow0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICMzMzMNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOw0KICAgICAgICAgICAgei1pbmRleDogMjU7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC42KTsNCiAgICAgICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmpzLW1lbnUtYWN0aXZlIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIG9wYWNpdHk6IDENCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogODhweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MHB4Ow0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHg7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBmb250LXNpemU6IDExcHg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI3DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5hcHBfbG9nbyB7DQogICAgICAgICAgICBoZWlnaHQ6IDM2cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgLmdldF9hcHAgew0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5zYl9jbG9zZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgICAgICBoZWlnaHQ6IDE0cHg7DQogICAgICAgICAgICB3aWR0aDogMTRweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDsNCiAgICAgICAgICAgIHRvcDogNXB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDVweDsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXc+ZGl2PnNwYW4gew0KICAgICAgICAgICAgaGVpZ2h0OiAzMXB4DQogICAgICAgIH0NCg0KICAgICAgICAubi1jb2x1bW5zLTIgew0KICAgICAgICAgICAgZGlzcGxheTogZ3JpZDsNCiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7DQogICAgICAgICAgICBmb250LXdlaWdodDogNzAwOw0KICAgICAgICB9DQoNCiAgICAgICAgLm4tY29sdW1ucy0yIGEgew0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICB9DQoNCiAgICAgICAgLmxvZ2luLA0KICAgICAgICAucmVnaXN0ZXIgew0KICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7DQogICAgICAgICAgICBwYWRkaW5nOiAxM3B4IDEwcHg7DQogICAgICAgIH0NCg0KICAgICAgICAubG9naW4sDQogICAgICAgIC5sb2dpbi1idXR0b24gew0KICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZjA5MDkgMCwgIzVlMWIxYiAxMDAlKTsNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWdpc3RlciwNCiAgICAgICAgLnJlZ2lzdGVyLWJ1dHRvbiB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmYjAyIDAsICNlN2QwMDAgMTAwJSk7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmZmZmOw0KICAgICAgICB9DQogICAgPC9zdHlsZT4NCiAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCINCiAgICAgICAgY29udGVudD0iaW5pdGlhbC1zY2FsZSA9IDEuMCwgdXNlci1zY2FsYWJsZSA9IG5vLCB3aWR0aD1kZXZpY2Utd2lkdGgsIGhlaWdodD1kZXZpY2UtaGVpZ2h0LCBtYXhpbXVtLXNjYWxlPTEuMCI+DQogICAgPG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSIgY29udGVudD0ieWVzIiAvPg0KICAgIDxsaW5rIHJlbD0iaWNvbiIgdHlwZT0iaW1hZ2UvcG5nIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyI+DQogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyI+DQogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyIgLz4NCiAgICA8bWV0YSBjb250ZW50PSJpZCIgbmFtZT0ibGFuZ3VhZ2UiIC8+DQogICAgPG1ldGEgY29udGVudD0iaWQiIG5hbWU9Imdlby5jb3VudHJ5IiAvPg0KICAgIDxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtbGFuZ3VhZ2UiIGNvbnRlbnQ9IkluLUlkIiAvPg0KICAgIDx0aXRsZT5LdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbTwvdGl0bGU+DQogICAgPGxpbmsgcmVsPSJhbXBodG1sIiBocmVmPSJodHRwczovL2hpbmRpa2VzYXRoLmNvbS9hbXAuaHRtbCI+DQogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgaXRlbXByb3A9ImRlc2NyaXB0aW9uIiAvPg0KICAgIDxtZXRhIG5hbWU9Im9yaWdpbmFsVGl0bGUiIGNvbnRlbnQ9Ikt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiAvPg0KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0iYXJ0aWNsZSIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6c2l0ZV9uYW1lIiBjb250ZW50PSJLVURBSklUVSIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9Ikt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZSIgY29udGVudD0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzpkZXNjcmlwdGlvbiIgY29udGVudD0iS3VkYWppdHUsIHNpdHVzIHBlcm1haW5hbiBvbmxpbmUgdGVycGVyY2F5YSAyNCBqYW0uIE5pa21hdGkgYmVyYmFnYWkgcGVybWFpbmFuIG1lbmFyaWsgZGFuIGxheWFuYW4gdGVyYmFpayB1bnR1ayBwZW5nYWxhbWFuIHNsb3QgeWFuZyB0YWsgdGVybHVwYWthbiEuIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzp1cmwiIGNvbnRlbnQ9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICA8bWV0YSBwcm9wZXJ0eT0iZmI6YXBwX2lkIiBjb250ZW50PSIxODc5NjAyNzEyMzcxNDkiIC8+DQogICAgPG1ldGEgcHJvcGVydHk9ImZiOmFkbWlucyIgY29udGVudD0iMTAwMDAwNjA3NTY2Njk0IiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTp0eXBlIiBjb250ZW50PSJpbWFnZS9qcGVnIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTp3aWR0aCIgY29udGVudD0iNjUwIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTpoZWlnaHQiIGNvbnRlbnQ9IjM2NiIgLz4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCINCiAgICAgICAgY29udGVudD0iaW5pdGlhbC1zY2FsZSA9IDEuMCwgdXNlci1zY2FsYWJsZSA9IG5vLCB3aWR0aD1kZXZpY2Utd2lkdGgsIGhlaWdodD1kZXZpY2UtaGVpZ2h0LCBtYXhpbXVtLXNjYWxlPTEuMCI+DQogICAgPG1ldGEgbmFtZT0iY29weXJpZ2h0IiBjb250ZW50PSJLVURBSklUVSIgaXRlbXByb3A9ImRhdGVsaW5lIiAvPg0KICAgIDxtZXRhIG5hbWU9InA6ZG9tYWluX3ZlcmlmeSIgY29udGVudD0iMjA1N2I4NmJmNjFlNWEzNDZlMjJhMzgwYzZmZWNmODkiIC8+DQogICAgPG1ldGEgbmFtZT0ia2FuYWxpZCIgY29udGVudD0iMi0xMDUtMTAxMC0zOTgiIC8+DQogICAgPG1ldGEgbmFtZT0iYXJ0aWNsZWlkIiBjb250ZW50PSI3NDcwMTIzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGV0eXBlIiBjb250ZW50PSJzaW5nbGVwYWdlIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGVkZXdhc2EiIGNvbnRlbnQ9ImRld2FzYXRpZGFrIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGVob2F4IiBjb250ZW50PSJkZWZhdWx0IiAvPg0KICAgIDxtZXRhIG5hbWU9ImNyZWF0ZWRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTM6NTY6NDEiIC8+DQogICAgPG1ldGEgbmFtZT0icHVibGlzaGRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTQ6MDQ6MjUiIC8+DQogICAgPG1ldGEgbmFtZT0iY29udGVudHR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2VuZXdzIiAvPg0KICAgIDxtZXRhIG5hbWU9InBsYXRmb3JtIiBjb250ZW50PSJtb2JpbGUiIC8+DQogICAgPG1ldGEgbmFtZT0iaGxfbmhsX3dwIiBjb250ZW50PSJub25oZWFkbGluZS0wIiAvPg0KICAgIDxtZXRhIG5hbWU9ImhsX25obF9rYW5hbCIgY29udGVudD0ibm9uaGVhZGxpbmUtMC0yLTEwNSIgLz4NCiAgICA8bWV0YSBuYW1lPSJ2aWRlb3ByZXNlbnQiIGNvbnRlbnQ9Ik5vIiAvPg0KICAgIDxtZXRhIG5hbWU9Imdvb2dsZS1zaXRlLXZlcmlmaWNhdGlvbiIgY29udGVudD0ibzFOVzN5ZmVoSDFFb1NWTTFWSnNWVmplVk9jOWhpZEctZXhMaFFHTl9zdyIgLz4NCg0KDQoNCiAgICA8bWV0YSBuYW1lPSJpZGZva3VzIiBjb250ZW50PSJrdWRhaml0dSIgLz4NCiAgICA8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IktVREFKSVRVIiAvPg0KICAgIDxtZXRhIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgaXRlbXByb3A9ImhlYWRsaW5lIiAvPg0KICAgIDxtZXRhIG5hbWU9ImtleXdvcmRzIiBjb250ZW50PSJrdWRhaml0dSwga3VkYSBqaXR1LCBrdWRhIGppdHUgbG9naW4sIGt1ZGEgaml0dSB0b2dlbCwgUlRQIGt1ZGFqaXR1LCBoZXlsaW5rLm1lIGt1ZGFqaXR1LCBrdWRhaml0dSBsb2dpbiwgZGFmdGFyIGt1ZGFqaXR1LCBrdWRhaml0dSBuZXQgIiBpdGVtcHJvcD0ia2V5d29yZHMiIC8+DQogICAgPG1ldGEgbmFtZT0idGh1bWJuYWlsVXJsIiBjb250ZW50PSJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODA/dz02NTAiIGl0ZW1wcm9wPSJ0aHVtYm5haWxVcmwiIC8+DQogICAgPG1ldGEgcHJvcGVydHk9ImFydGljbGU6YXV0aG9yIiBjb250ZW50PSJodHRwczovL3d3dy5mYWNlYm9vay5jb20vIiBpdGVtcHJvcD0iYXV0aG9yIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJhcnRpY2xlOnB1Ymxpc2hlciIgY29udGVudD0iaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tLyIgLz4NCiAgICA8bWV0YSBuYW1lPSJwdWJkYXRlIiBjb250ZW50PSIyMDI0LTA4LTAyVDE0LTA0LTI1WiIgaXRlbXByb3A9ImRhdGVQdWJsaXNoZWQiIC8+DQogICAgPG1ldGEgY29udGVudD0iMjAyNC0wOC0wMlQxMy01Ni00MVoiIGl0ZW1wcm9wPSJkYXRlQ3JlYXRlZCIgLz4NCiAgICA8bWV0YQ0KICAgICAgICBjb250ZW50PSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgaXRlbXByb3A9InVybCIgLz4NCg0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6Y2FyZCIgY29udGVudD0ic3VtbWFyeV9sYXJnZV9pbWFnZSIgLz4NCiAgICA8bWV0YSBuYW1lPSJ0d2l0dGVyOnNpdGUiIGNvbnRlbnQ9Imt1ZGFqaXR1IiAvPg0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6c2l0ZTppZCIgY29udGVudD0ia3VkYWppdHUiIC8+DQogICAgPG1ldGEgbmFtZT0idHdpdHRlcjpjcmVhdG9yIiBjb250ZW50PSJrdWRhaml0dSIgLz4gIA0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgLz4NCiAgICA8bWV0YSBuYW1lPSJ0d2l0dGVyOmltYWdlIg0KICAgICAgICBjb250ZW50PSJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiIC8+DQoNCg0KICAgIDxsaW5rIHJlbD0iY2Fub25pY2FsIg0KICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6YWNjdHlwZSIgY29udGVudD0iYWNjLUtVREFKSVRVIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azprYW5hbGlkIiBjb250ZW50PSIzOTgiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOmFydGljbGVpZCIgY29udGVudD0iNzQ3MDEyMyIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6YXJ0aWNsZXR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2UiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOmFydGljbGVkZXdhc2EiIGNvbnRlbnQ9ImRld2FzYXRpZGFrIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azphcnRpY2xlaG9heCIgY29udGVudD0iZGVmYXVsdCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6Y3JlYXRlZGRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTM6NTY6NDEiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOnB1Ymxpc2hkYXRlIiBjb250ZW50PSIyMDI0LzA4LzAyIDE0OjA0OjI1IiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azpjcmVhdGVkZGF0ZXVuaXgiIGNvbnRlbnQ9IjE3MjI1ODE4MDEwMDAiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOnB1Ymxpc2hkYXRldW5peCIgY29udGVudD0iMTcyMjU4MjI2NTAwMCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6Y29udGVudHR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2VuZXdzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azpwbGF0Zm9ybSIgY29udGVudD0ibW9iaWxlIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azp2aWRlb3ByZXNlbnQiIGNvbnRlbnQ9Ik5vIiAvPg0KDQogICAgPG1ldGEgbmFtZT0iZHRrOmlkZm9rdXMiIGNvbnRlbnQ9Imt1ZGFqaXR1IiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azphdXRob3IiIGNvbnRlbnQ9IktVREFKSVRVIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azprZXl3b3JkcyIgY29udGVudD0ia3VkYWppdHUsIGt1ZGEgaml0dSwga3VkYSBqaXR1IGxvZ2luLCBrdWRhIGppdHUgdG9nZWwsIFJUUCBrdWRhaml0dSwgaGV5bGluay5tZSBrdWRhaml0dSwga3VkYWppdHUgbG9naW4sIGRhZnRhciBrdWRhaml0dSwga3VkYWppdHUgbmV0ICIgaXRlbXByb3A9ImtleXdvcmRzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azp0aHVtYm5haWxVcmwiIGNvbnRlbnQ9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MD93PTY1MCIgaXRlbXByb3A9InRodW1ibmFpbFVybCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6c3RhdHVzIiBjb250ZW50PSIxIiAvPg0KDQogICAgPHNjcmlwdCBhc3luYyBpZD0iZWJ4IiBzcmM9Imh0dHBzOi8vYXBwbGV0cy5lYnhjZG4uY29tL2VieC5qcyI+PC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj4NCnsNCiAgICAiQGNvbnRleHQiOiAiaHR0cHM6Ly9zY2hlbWEub3JnIiwNCiAgICAiQHR5cGUiOiAiQnJlYWRjcnVtYkxpc3QiLA0KICAgICJpdGVtTGlzdEVsZW1lbnQiOiBbDQogICAgew0KICAgICAgICAiQHR5cGUiOiAiTGlzdEl0ZW0iLA0KICAgICAgICAicG9zaXRpb24iOiAxLA0KICAgICAgICAibmFtZSI6ICJLVURBSklUVSIsDQogICAgICAgICJpdGVtIjogIiMjIyINCiAgICB9LA0KICAgIHsNCiAgICAgICAgIkB0eXBlIjogIkxpc3RJdGVtIiwNCiAgICAgICAgInBvc2l0aW9uIjogMiwNCiAgICAgICAgIm5hbWUiOiAiQ3liZXJsaWZlIiwNCiAgICAgICAgIml0ZW0iOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9uZXdzIg0KICAgIH0sDQogICAgew0KICAgICAgICAiQHR5cGUiOiAiTGlzdEl0ZW0iLA0KICAgICAgICAicG9zaXRpb24iOiAzLA0KICAgICAgICAibmFtZSI6ICJDeWJlciBMaWZlIiwNCiAgICAgICAgIml0ZW0iOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlci1saWZlIg0KICAgIH0NCl19DQo8L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vbGQranNvbiI+DQogICAgCXsNCiAgICAJCSJAY29udGV4dCI6ICJodHRwczovL3NjaGVtYS5vcmciLA0KICAgIAkJIkB0eXBlIjogIldlYlBhZ2UiLA0KICAgIAkJImhlYWRsaW5lIjogIkt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiwNCiAgICAJCSJ1cmwiOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSIsDQogICAgCQkiZGF0ZVB1Ymxpc2hlZCI6ICIyMDI0LTA4LTAyVDE0OjA0OjI1KzA3OjAwIiwNCiAgICAJCSJpbWFnZSI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiLA0KCQkJInRodW1ibmFpbFVybCI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODA/dz0yMDAiDQogICAgCX0NCiAgICAJPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj4NCgkJew0KCQkJIkBjb250ZXh0IjogImh0dHBzOi8vc2NoZW1hLm9yZyIsDQoJCQkiQHR5cGUiOiAiTmV3c0FydGljbGUiLA0KCQkJIm1haW5FbnRpdHlPZlBhZ2UiOiB7DQoJCQkJIkB0eXBlIjogIldlYlBhZ2UiLA0KCQkJCSJAaWQiOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSINCgkJCX0sDQoJCQkiaGVhZGxpbmUiOiAiS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iLA0KCQkJImltYWdlIjogew0KCQkJCSJAdHlwZSI6ICJJbWFnZU9iamVjdCIsDQoJCQkgICAgInVybCI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiDQogICAgICAgICAgICB9LA0KCQkJImRhdGVQdWJsaXNoZWQiOiAiMjAyNC0wOC0wMlQxNDowNDoyNSswNzowMCIsDQoJCQkiZGF0ZU1vZGlmaWVkIjogIjIwMjQtMDgtMDJUMTQ6MDQ6MjUrMDc6MDAiLA0KCQkJImF1dGhvciI6IHsNCgkJCQkiQHR5cGUiOiAiUGVyc29uIiwNCgkJCQkibmFtZSI6ICJLVURBSklUVSINCgkJCX0sDQoJCQkicHVibGlzaGVyIjogew0KCQkJCSJAdHlwZSI6ICJPcmdhbml6YXRpb24iLA0KCQkJCSJuYW1lIjogImRldGlrY29tIiwNCgkJCQkibG9nbyI6IHsNCgkJCQkJIkB0eXBlIjogIkltYWdlT2JqZWN0IiwNCgkJCQkJInVybCI6ICJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZGV0aWsyL2ltYWdlcy9sb2dvLmpwZyINCgkJCQl9DQoJCQl9LA0KCQkJImRlc2NyaXB0aW9uIjogIkt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiINCgkJfQ0KICAgIAk8L3NjcmlwdD4NCiAgICA8c2NyaXB0PnZhciB3aWRfbWV0aG9kID0gIkdFVCI7PC9zY3JpcHQ+DQogICAgPCEtLXM6ZHRrcHJ2LS0+DQogICAgPCEtLWU6ZHRrcHJ2LS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgaWYgKG5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1VDQnJvd3Nlci9pKSAmJiBkb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbCA9PSAnaHR0cDonKSB7DQogICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICdodHRwczovLycgKyBkb2N1bWVudC5sb2NhdGlvbi5ob3N0ICsgZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWU7DQogICAgICAgIH0NCiAgICA8L3NjcmlwdD4NCg0KICAgIDwhLS0gUkVRVUlSRUQgLS0+DQoNCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCINCiAgICAgICAgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL2pxdWVyeS1taW4tMy4yLjEuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgdmFyIGR0a0dUTURMID0geyBkYXRhOiB7fSwgZ2V0TWV0YTogZnVuY3Rpb24gKGEsIHQpIHsgcmV0dXJuIG51bGwgIT09IChlID0gZG9jdW1lbnQuaGVhZC5xdWVyeVNlbGVjdG9yKCJbIiArIGEgKyAnPSInICsgdCArICciXScpKSA/IGUuY29udGVudCA6IG51bGwgfSwgYWRkRGF0YUxheWVyOiBmdW5jdGlvbiAoYSwgdCwgciA9IG51bGwpIHsgbnVsbCA9PT0gciAmJiAociA9IHQpLCBudWxsICE9PSAodmFsID0gZHRrR1RNREwuZ2V0TWV0YShhLCB0KSkgJiYgIiIgIT0gdmFsICYmIChkdGtHVE1ETC5kYXRhW3JdID0gdmFsKSB9LCBhZGRDdXN0b21EaW1lbnNpb246IGZ1bmN0aW9uIChhKSB7IGZvciAoaSA9IDA7IGkgPCBhLmxlbmd0aDsgaSsrKXN3aXRjaCAoYVtpXSkgeyBjYXNlICJrYW5hbGlkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImthbmFsaWQiKTsgYnJlYWs7IGNhc2UgImFydGljbGVpZCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJhcnRpY2xlaWQiKTsgYnJlYWs7IGNhc2UgImFydGljbGV0eXBlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGV0eXBlIik7IGJyZWFrOyBjYXNlICJhcnRpY2xlZGV3YXNhIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGVkZXdhc2EiKTsgYnJlYWs7IGNhc2UgImFydGljbGVob2F4IjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGVob2F4Iik7IGJyZWFrOyBjYXNlICJjcmVhdGVkYXRlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImNyZWF0ZWRhdGUiKTsgYnJlYWs7IGNhc2UgInB1Ymxpc2hkYXRlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInB1Ymxpc2hkYXRlIik7IGJyZWFrOyBjYXNlICJrZXl3b3JkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImtleXdvcmRzIiwgImtleXdvcmQiKTsgYnJlYWs7IGNhc2UgImlkZm9rdXMiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaWRmb2t1cyIpOyBicmVhazsgY2FzZSAibmFtYWZva3VzIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgIm5hbWFmb2t1cyIpOyBicmVhazsgY2FzZSAiaWRwcm9ncmFtIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImlkcHJvZ3JhbSIpOyBicmVhazsgY2FzZSAibmFtYXByb2dyYW0iOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAibmFtYXByb2dyYW0iKTsgYnJlYWs7IGNhc2UgInBhZ2VzaXplIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInBhZ2VzaXplIik7IGJyZWFrOyBjYXNlICJwYWdlbnVtYmVyIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInBhZ2VudW1iZXIiKTsgYnJlYWs7IGNhc2UgInZpZGVvcHJlc2VudCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJ2aWRlb3ByZXNlbnQiKTsgYnJlYWs7IGNhc2UgInZpZGVvX2lkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInZpZGVvX2lkIik7IGJyZWFrOyBjYXNlICJyZWZmZXJhbF91cmwiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAicmVmZmVyYWxfdXJsIik7IGJyZWFrOyBjYXNlICJjb250ZW50dHlwZSI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJjb250ZW50dHlwZSIpOyBicmVhazsgY2FzZSAicGxhdGZvcm0iOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAicGxhdGZvcm0iKTsgYnJlYWs7IGNhc2UgImF1dGhvciI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJhdXRob3IiKTsgYnJlYWs7IGNhc2UgInRpdGxlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJwcm9wZXJ0eSIsICJvZzp0aXRsZSIsICJ0aXRsZSIpOyBicmVhazsgY2FzZSAic3ViY2F0ZWdvcmkiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAic3ViY2F0ZWdvcmkiKTsgYnJlYWs7IGNhc2UgImtleXdvcmRrYW5hbCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJrZXl3b3Jka2FuYWwiKTsgYnJlYWs7IGNhc2UgImR1cmF0aW9uIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImR1cmF0aW9uIik7IGJyZWFrOyBjYXNlICJobF9uaGxfd3AiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaGxfbmhsX3dwIik7IGJyZWFrOyBjYXNlICJobF9uaGxfa2FuYWwiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaGxfbmhsX2thbmFsIik7IGJyZWFrOyBjYXNlICJvcmlnaW5hbFRpdGxlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgIm9yaWdpbmFsVGl0bGUiKTsgYnJlYWs7IGNhc2UgInZpZGVvX3N0b3J5X3VybCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJ2aWRlb19zdG9yeV91cmwiKSB9IH0sIGdlbmVyYXRlOiBmdW5jdGlvbiAoKSB7IHJldHVybiBjb250ZW50dHlwZSA9IGR0a0dUTURMLmdldE1ldGEoIm5hbWUiLCAiY29udGVudHR5cGUiKSwgZHRrR1RNREwuYWRkQ3VzdG9tRGltZW5zaW9uKFsia2FuYWxpZCIsICJhcnRpY2xlaWQiLCAiYXJ0aWNsZXR5cGUiLCAiYXJ0aWNsZWRld2FzYSIsICJhcnRpY2xlaG9heCIsICJjcmVhdGVkYXRlIiwgInB1Ymxpc2hkYXRlIiwgImtleXdvcmQiLCAiaWRmb2t1cyIsICJuYW1hZm9rdXMiLCAiaWRwcm9ncmFtIiwgIm5hbWFwcm9ncmFtIiwgInBhZ2VzaXplIiwgInBhZ2VudW1iZXIiLCAidmlkZW9wcmVzZW50IiwgInZpZGVvX2lkIiwgImNvbnRlbnR0eXBlIiwgInBsYXRmb3JtIiwgImF1dGhvciIsICJzdWJjYXRlZ29yaSIsICJrZXl3b3Jka2FuYWwiLCAiZHVyYXRpb24iLCAiaGxfbmhsX3dwIiwgImhsX25obF9rYW5hbCIsICJvcmlnaW5hbFRpdGxlIiwgInZpZGVvX3N0b3J5X3VybCJdKSwgZHRrR1RNREwuZGF0YS5ldmVudCA9ICJhcnRpY2xlUHVzaCIsIGR0a0dUTURMLmRhdGEgfSB9OyBkYXRhTGF5ZXIgPSBbZHRrR1RNREwuZ2VuZXJhdGUoKV07IHZhciBfcHQgPSBmdW5jdGlvbiAoYSwgdCwgciwgZCwgbikgeyBjb25zb2xlLmxvZygiX19wdDpndG1kbCIpLCB2b2lkIDAgPT09IHQgJiYgYS5oYXNBdHRyaWJ1dGUoImR0ci1ldnQiKSAmJiAodCA9IGEuZ2V0QXR0cmlidXRlKCJkdHItZXZ0IiksIGQgPSBhLmdldEF0dHJpYnV0ZSgiZHRyLWFjdCIpICsgIiAiICsgYS5nZXRBdHRyaWJ1dGUoImR0ci1pZHgiKSwgciA9IGEuZ2V0QXR0cmlidXRlKCJkdHItdHRsIikpOyB2YXIgbyA9IHsgZXZlbnQ6ICJwYW5lbCB0cmFja2luZyIsIGFjdGlvbjogImtsaWsgIiArIGQsIHBhbmVsbmFtZTogdC50b0xvd2VyQ2FzZSgpLCBwdF9mcm9tX3R5cGU6ICQoIm1ldGFbbmFtZT1jb250ZW50dHlwZV0iKS5hdHRyKCJjb250ZW50IiksIHB0X2Zyb21fa2FuYWw6ICQoIm1ldGFbbmFtZT1rYW5hbGlkXSIpLmF0dHIoImNvbnRlbnQiKSwgcHRfdG9fdXJsOiBhLmhyZWYsIHB0X3BsYXRmb3JtOiAkKCJtZXRhW25hbWU9cGxhdGZvcm1dIikuYXR0cigiY29udGVudCIpLCBwdF90b19wYWdlOiByIH07IGlmICh2b2lkIDAgIT09IG4pIHZhciBvID0gJC5leHRlbmQobywgbik7IGNvbnNvbGUubG9nKCJkYXRhbGF5ZXIgcHVzaCIsIG8pLCBkYXRhTGF5ZXIucHVzaChvKSB9OyAkKGZ1bmN0aW9uICgpIHsgcHVzaEV2ZW50ID0gZnVuY3Rpb24gKGEsIHQsIHIpIHsgdmFyIGQ7IGQgPSAidW5kZWZpbmVkIiAhPSB0eXBlb2YgYmFzZWthbmFsICYmIG51bGwgIT09IGJhc2VrYW5hbCA/IGJhc2VrYW5hbCA6IGJhc2V1cmwsIGRhdGFMYXllci5wdXNoKHsgZXZlbnQ6ICIiICsgYSwgYmNfbmF2X3VybDogIiIgKyB0LCBiY19kb21haW46ICIiICsgZCwgYmNfdGl0bGU6ICIiICsgciwgYmFjYV9qdWdhX2FpZDogIiIgKyBnZXRBcnRpY2xlSWQoYSwgdCkgfSkgfSwgZ2V0QXJ0aWNsZUlkID0gZnVuY3Rpb24gKGEsIHQpIHsgcmV0dXJuIChhcklEID0gKGFyclVybCA9IHQuc3BsaXQoIi8iKSkubGVuZ3RoID4gOSA/IGFyclVybFsyXS5pbmRleE9mKCJtLmRldGlrIikgPiAtMSB8fCBhcnJVcmxbMl0uaW5kZXhPZigibWRldi5kZXRpayIpID4gLTEgPyB0LmluZGV4T2YoIi9+IikgPiAtMSA/IGFyclVybFsxMF0gOiBhcnJVcmxbOV0gOiBhcnJVcmxbM10uaW5kZXhPZigic2VwYWtib2xhIikgPiAtMSA/IGFyclVybFs5XSA6IGFyclVybFs4XSA6IGFyclVybFsyXS5pbmRleE9mKCJnYXJ1ZGEuZGV0aWsiKSA+IC0xID8gdC5pbmRleE9mKCIvfiIpID4gLTEgPyBhcnJVcmxbNl0gOiBhcnJVcmxbNV0gOiB0LmluZGV4T2YoIi9+IikgPiAtMSA/ICJzZXBha2JvbGEiID09IGFyclVybFs0XSA/IGFyclVybFs2XSA6IGFyclVybFs1XSA6ICJzZXBha2JvbGEiID09IGFyclVybFszXSA/IGFyclVybFs1XSA6IGFyclVybFs0XSkuaW5kZXhPZigiZC0iKSA+IC0xICYmIChhcklEID0gYXJJRC5zcGxpdCgiLSIpWzFdKSwgYXJJRCB9LCAkKCIjcmVsYXRlZGd0bSBhIikuY2xpY2soZnVuY3Rpb24gKCkgeyBwdXNoRXZlbnQoImJlcml0YXRlcmthaXQiLCAkKHRoaXMpLmF0dHIoImhyZWYiKSwgJCh0aGlzKS50ZXh0KCkudHJpbSgpKSB9KSwgJCgiI3JlYWR0b29ndG0iKS5oYXNDbGFzcygibGlzdF9fb3RoZXJfX2l0ZW0iKSA/IChzZWxlY3RvciA9ICQoIiNyZWFkdG9vZ3RtIGg1IGEiKSwgc2V0ID0gITApIDogKHNlbGVjdG9yID0gJCgiI3JlYWR0b29ndG0gYSIpLCBzZXQgPSAhMSksIHNlbGVjdG9yLmNsaWNrKGZ1bmN0aW9uICgpIHsgdmFyIGE7ICQoImgyIiwgdGhpcykubGVuZ3RoICYmIChhID0gJCgiaDIiLCB0aGlzKS50ZXh0KCkudHJpbSgpKSwgJCgiaDMiLCB0aGlzKS5sZW5ndGggJiYgKGEgPSAkKCJoMyIsIHRoaXMpLnRleHQoKS50cmltKCkpLCAkKCJoNCIsIHRoaXMpLmxlbmd0aCAmJiAoYSA9ICQoImg0IHN0cm9uZyIsIHRoaXMpLmxlbmd0aCA/ICQoImg0IHN0cm9uZyIsIHRoaXMpLnRleHQoKS50cmltKCkgOiAkKCJoNCIsIHRoaXMpLnRleHQoKS50cmltKCkpLCAhMCA9PSBzZXQgJiYgKGEgPSAkKHRoaXMpLnRleHQoKS50cmltKCkpLCAkKCJoNiIsIHRoaXMpLmxlbmd0aCAmJiAoYSA9ICQoImg2IiwgdGhpcykudGV4dCgpLnRyaW0oKSksIHB1c2hFdmVudCgiYmFjYWp1Z2EiLCAkKHRoaXMpLmF0dHIoImhyZWYiKSwgYSkgfSkgfSk7DQogICAgPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiDQogICAgICAgIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2xpYnMvbGl2ZWNvdW50ZXIvZGV0aWtMaXZlVXNlckNvdW50ZXJSZXNwb25zZS5qcz92PTIwMjQwODAyMTUiIGRlZmVyPjwvc2NyaXB0Pg0KDQogICAgPCEtLSBzOnByZWxvYWQgLS0+DQogICAgPCEtLSBlOnByZWxvYWQgLS0+DQoNCg0KDQogICAgPCEtLSBEeW5hbWljIFByb3Zpc2lvbmluZyAtLT4NCiAgICA8c2NyaXB0IGFzeW5jIHNyYz0iLy9taWNyby5ydWJpY29ucHJvamVjdC5jb20vcHJlYmlkL2R5bmFtaWMvMTE1MzAuanMiPjwvc2NyaXB0Pg0KDQogICAgPCEtLSBTdGFydCBUYWcgREZQIC0tPg0KICAgIDxzY3JpcHQgYXN5bmMgc3JjPSJodHRwczovL3NlY3VyZXB1YmFkcy5nLmRvdWJsZWNsaWNrLm5ldC90YWcvanMvZ3B0LmpzIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgYXN5bmMgc3JjPSIvL3NlcnZnMS5uZXQvby5qcz91aWQ9OGVjMDhiZjE0MWJlMGNiNDMxZTA0ZGM5IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pg0KICAgIDwhLS0gT3B0aW1hIFRhZyAtLT4NCg0KICAgIDwhLS0gSW5zdXJhZCB0YWcgLS0+DQogICAgPHNjcmlwdCBhc3luYyBzcmM9Imh0dHBzOi8vY2RuLmluc3VyYWRzLmNvbS9ib290c3RyYXAvUzlIN09NWkIuanMiPjwvc2NyaXB0Pg0KDQoNCg0KICAgIDwhLS0gRTp0YWdoZWFkIC0tPg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgdmFyIGJhc2V1cmwgPSAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbSIsDQogICAgICAgICAgICBhc3NldF91cmwgPSAiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2luZXQyL20iLA0KICAgICAgICAgICAgc2l0ZV9pZCA9ICI1IiwNCiAgICAgICAgICAgIGNoYW5uZWxfaWQgPSAiMTA1IiwNCiAgICAgICAgICAgIHJlc3BvbnNpdmUgPSBmYWxzZSwNCiAgICAgICAgICAgIGl0cF9sb2NhbHNfYWN0aXZlID0gZmFsc2UsDQogICAgICAgICAgICBpdHBfc2l0ZV9uYW1lID0gIktVREFKSVRVIg0KICAgIDwvc2NyaXB0Pg0KDQogICAgPCEtLXByb2ZpbGVfYWQ6ZGV0aWtfaW5ldC0tPg0KICAgIDwhLS1sYXlvdXRfdHlwZTptb2JpbGUtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIGZ1bmN0aW9uIGdldFNjcmlwdChlLCB0KSB7IHZhciBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7IGEuc3JjID0gZTsgdmFyIG4gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLCBkID0gITE7IGEub25sb2FkID0gYS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7IGQgfHwgdGhpcy5yZWFkeVN0YXRlICYmICJsb2FkZWQiICE9IHRoaXMucmVhZHlTdGF0ZSAmJiAiY29tcGxldGUiICE9IHRoaXMucmVhZHlTdGF0ZSB8fCAoZCA9ICEwLCB0KCksIGEub25sb2FkID0gYS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBudWxsLCBuLnJlbW92ZUNoaWxkKGEpKSB9LCBuLmFwcGVuZENoaWxkKGEpIH0NCiAgICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIGZ1bmN0aW9uIGl0cEdldEZpbGVOYW1lRnJvbVVybChpKSB7IHJldHVybiBuZXcgVVJMKGkpLnBhdGhuYW1lLnNwbGl0KCIvIikucG9wKCkuc3BsaXQoIi4iKS5zbGljZSgwLCAtMSkuam9pbigiIikgfSBmdW5jdGlvbiBpdHBJbml0U2Nyb2xsQXNzZXQoaSwgbiwgdCA9IGZ1bmN0aW9uICgpIHsgfSkgeyBsZXQgZSA9ICJpbml0ZWQiICsgaXRwR2V0RmlsZU5hbWVGcm9tVXJsKGkpOyB3aW5kb3dbZV0gPSAhMSwgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsIChmdW5jdGlvbiAoKSB7IHdpbmRvd1tlXSB8fCB3aW5kb3cuc2Nyb2xsWSA8PSBuIHx8ICh3aW5kb3dbZV0gPSAhMCwgZ2V0U2NyaXB0KGksIHQpKSB9KSkgfQ0KICAgIDwvc2NyaXB0Pg0KPC9oZWFkPg0KDQo8Ym9keT4NCiAgICA8ZGl2IGNsYXNzPSJoZWFkZXItdG9wIj48L2Rpdj4NCiAgICA8aGVhZGVyIGNsYXNzPSJoZWFkZXIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZC1yb3cgbm8tZ3V0dGVyIGZsZXgtYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sdW1uLWF1dG8gaGVhZGVyX19sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ibWVudUNsaWNrIiBjbGFzcz0ibWVudS1idXR0b24iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ibWVudSBoYW1idXJnZXIiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItYWN0PSJtZW51IGhhbWJ1cmdlciIgb25jbGljaz0iX3B0KHRoaXMpIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lbnUtYnV0dG9uX193cmFwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaGVhZGVyX19icmFuZCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPScjIyMnIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ibG9nbyBLVURBSklUVSIgZHRyLWFjdD0ibG9nbyBLVURBSklUVSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiPjxpbWcgd2lkdGg9JzExNicgaGVpZ2h0PScyNCcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjPSdodHRwczovL2F3c2ltYWdlcy5kZXRpay5uZXQuaWQvY29tbXVuaXR5L21lZGlhL3Zpc3VhbC8yMDIwLzA5LzE3L2xvZ28tZGV0aWtpbmV0LnBuZz9kPTEnDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSdLVURBSklUVScgYWx0PSdLVURBSklUVScgY2xhc3M9J2xvZ28nIC8+PC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2x1bW4tYXV0byBoZWFkZXJfX3JpZ2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0ic2VhcmNoIiBkdHItc2VjPSJzZWFyY2giIGR0ci1hY3Q9InNlYXJjaCIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9zZWFyY2giIGlkPSJzZWFyY2hDbGljayIgY2xhc3M9ImhlYWRlcl9faWNvbiBoZWFkZXJfX2ljb24tLXNlYXJjaCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLXNlYXJjaCI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJidXR0b24gbGl2ZSB0diIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItdHRsPSJsaXZlIHR2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJoZWFkZXJfX2ljb24gaGVhZGVyX19pY29uLS1saXZlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tbGl2ZS10diI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdmJhciBuYXZiYXItc2hhZG93Ij4NCg0KDQogICAgICAgICAgICAgICAgPG5hdiBjbGFzcz0ibmF2YmFyLWZpcnN0IG5hdmJhci0tc2Nyb2xsIj4NCiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjEiIGR0ci10dGw9IkhvbWUiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIb21lIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMiIgZHRyLXR0bD0iR2FkZ2V0IiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR2FkZ2V0IDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyIgZHRyLXR0bD0iQ3liZXJsaWZlIiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3liZXJsaWZlIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNCIgZHRyLXR0bD0iR2FtZXMgJmFtcDsgRXNwb3J0IiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR2FtZXMgJiBFc3BvcnQgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI1IiBkdHItdHRsPSJCdXNpbmVzcyAmYW1wOyBQb2xpY3kiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCdXNpbmVzcyAmIFBvbGljeSA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjYiIGR0ci10dGw9IlNjaWVuY2UiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTY2llbmNlIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNyIgZHRyLXR0bD0iVGVsZWNvbW11bmljYXRpb24iIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZWxlY29tbXVuaWNhdGlvbiA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjgiIGR0ci10dGw9IlRpcHMgJmFtcDsgVHJpayIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpcHMgJiBUcmlrIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iOSIgZHRyLXR0bD0iRm90byIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG8gPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIxMCIgZHRyLXR0bD0iVmlkZW8iIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWaWRlbyA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjExIiBkdHItdHRsPSJJbmRla3MiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmRla3MgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIxMiIgZHRyLXR0bD0iU2VjdXJpdHkiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZWN1cml0eSA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KDQogICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgPC9uYXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9oZWFkZXI+DQoNCg0KDQoNCg0KICAgIDxkaXY+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLXdyYXAgIG5hdmJhci1zaGFkb3ciPg0KICAgICAgICAgICAgICAgIDxuYXYgY2xhc3M9Im5hdmJhci1zZWNvbmQgbmF2YmFyLS1zY3JvbGwiPg0KICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiI+DQogICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFM6bmF2YmFyIC0tPiA8IS0tIEU6bmF2YmFyIC0tPiA8IS0tIFM6bmF2YmFyMiAtLT4gPCEtLSBFOm5hdmJhcjIgLS0+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2X19pdGVtLS1uZXcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJzZWNvbmQgbmF2YmFyIiBkdHItYWN0PSJzZWNvbmQgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjEiIGR0ci10dGw9IkdhZGdldCBvZiB0aGUgTW9udGgiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHYWRnZXQgb2YgdGhlIE1vbnRoIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2X19pdGVtLS1uZXcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJzZWNvbmQgbmF2YmFyIiBkdHItYWN0PSJzZWNvbmQgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjIiIGR0ci10dGw9IkxhYiBHYWRnZXQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMYWIgR2FkZ2V0IDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9InNlY29uZCBuYXZiYXIiIGR0ci1hY3Q9InNlY29uZCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyIgZHRyLXR0bD0iS29tcGFyYXNpIEdhZGdldCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvbXBhcmFzaSBHYWRnZXQgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ic2Vjb25kIG5hdmJhciIgZHRyLWFjdD0ic2Vjb25kIG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI0IiBkdHItdHRsPSJGb3Rvc3RvcCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG9zdG9wIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9InNlY29uZCBuYXZiYXIiIGR0ci1hY3Q9InNlY29uZCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNSIgZHRyLXR0bD0iSW5ldCBHcmFmaXMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmV0IEdyYWZpcyA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KDQogICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgPC9uYXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPCEtLSBTOkZSQU1FQkFSIFdJREdFVC0tPg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9jc3MvbS9mcmFtZWJhci5jc3M/dj0yMDI0MDgwMjE1NDQzIiB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXkgYm94LW92ZXJsYXktLWFycm93LWxvZ28gYm94LW1lbnUgZnJhbWViYXJhc3NldC1sYXp5Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXlfX2hlYWRlciI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSB1c2VyLWxvZyI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX2F1dGhvciI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InN0YXR1c191c2VyX25mIiBjbGFzcz0iZnJhbWViYXJfdXNlciIgc3R5bGU9ImRpc3BsYXk6aW5oZXJpdCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fYXV0aG9yLWltYWdlLWF2YXRhciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvZnJhbWViYXIvdXNlcl9kZWZhdWx0LndlYnAiIGFsdD0ia3VkYWppdHUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idXNlci1sb2dfX25hbWUiPkhhbG8gRGV0aWtlcjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0idXNlci1sb2dfX2xvZ2luIj5Nb2hvbiBUdW5nZ3UuLi48L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXlfX2JvZHkiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiI+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvd2VicC9mcmFtZWJhci9mYXZpY29uLWRldGlrLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSJrdWRhaml0dSIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtjb20NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tdHdvLWNvbCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2hpbmRpa2VzYXRoLmNvbS8iIHRhcmdldD0iIF9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19Nb3N0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXJwb3B1bGVyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9oaW5kaWtlc2F0aC5jb20vIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19saXZldHYud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpdmUgVFYNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19raXJpbV90dWxpc2FuLTN4LndlYnAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLaXJpbSBUdWxpc2FuDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9oaW5kaWtlc2F0aC5jb20vIiB0YXJnZXQ9IiBfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfcGVtaWx1LTN4LndlYnAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1BlbWlsdQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faXRlbS1uZXciPk5FVzwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXJfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgS2F0ZWdvcmkgQmVyaXRhIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tdHdvLWNvbCI+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa05ld3MiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19kZXRpay0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtOZXdzDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9ImRldGlrRmluYW5jZSIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19maW5hbmNlLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0ZpbmFuY2UNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyMjIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJLVURBSklUVSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2luZXQtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtVREFKSVRVDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0hvdCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2hvdC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtIb3QNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrU3BvcnQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19zcG9ydC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtTcG9ydA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iU2VwYWtib2xhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc2VwYWtib2xhLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXBha2JvbGENCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyBkdHItZXZ0PSIgaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtPdG8iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19vdG8tM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrT3RvDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa1RyYXZlbCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3RyYXZlbC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtUcmF2ZWwNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrRm9vZCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2Zvb2QtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrRm9vZA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtIZWFsdGgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19oZWFsdGgtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSGVhbHRoDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJXb2xpcG9wIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfd29saXBvcC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgV29saXBvcA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iRGV0aWtYIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfWC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1IiB3aWR0aD0iMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRGV0aWtYDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIyMERldGlrIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfMjBELTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMERldGlrDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0ZvdG8iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19mb3RvLndlYnAiIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0ZvdG8NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrRWR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfZWR1LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0VkdQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtIaWttYWgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19IaWttYWgud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSGlrbWFoDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9ImRldGlrUHJvcGVydGkiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNwcm9wZXJ0aS53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtQcm9wZXJ0aQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtQb3AiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY29ucG9wLndlYnAiIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1BvcA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2l0ZW0tbmV3Ij5ORVc8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXIiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1mcmFtZWJhcl9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICBEYWVyYWggPC9kaXY+DQogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2LS10d28tY29sIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrSmF0ZW5nIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfamF0ZW5nLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0phdGVuZw0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtKYXRpbSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2phdGltLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0phdGltDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0phYmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfamFiYXItM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSmFiYXINCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrU3Vsc2VsIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc3Vsc2VsLTJ4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bHNlbA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtTdW11dCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3N1bXV0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bXV0DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImgjIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0JhbGkiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY29uZGV0aWtiYWxpLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0JhbGkNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkeD0iZGV0aWtTdW1iYWdzZWwiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc3VtYmFnc2VsLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bWJhZ3NlbA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtKb2dqYSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2pvZ2phLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0pvZ2phDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faXRlbS1uZXciPk5FVzwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1mcmFtZWJhciI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgIExheWFuYW4gPC9kaXY+DQogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2LS10d28tY29sIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IlBhc2FuZyBNYXRhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfcGFzYW5nX21hdGEtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhc2FuZyBNYXRhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJhZHNtYXJ0Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19hZHNtYXJ0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZHNtYXJ0DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJGb3J1bSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2ZvcnVtLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBGb3J1bQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtFdmVudCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2V2ZW50LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0V2ZW50DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IlRyYW5zIFNub3cgV29ybGQiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfdHJhbnNfc25vd19sYXRlc3Qud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zIFNub3cgV29ybGQNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkeD0iVHJhbnMgU3R1ZGlvIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3RyYW5zX3N0dWRpb19sYXRlc3Qud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zIFN0dWRpbw0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJiZXJidWF0YmFpay5pZCIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9sb2dvLWJlcmJ1YXRiYWlraWQud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlcmJ1YXRiYWlrLmlkDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9Inppc3dhZmN0YXJzYS5pZCIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY196aXN3YWZvay53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgemlzd2FmY3RhcnNhLmlkDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IlNpZ25hdHVyZSBBd2FyZHMiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvZmF2aWNvbi1zaWduYXR1cmUlMjAoMSkud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpZ25hdHVyZSBBd2FyZHMNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pdGVtLW5ldyI+TkVXPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXJfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgRGV0aWsgTmV0d29yayA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBuYXYtLXR3by1jb2wiPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJDTk4gSW5kb25lc2lhIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2Nubi0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ05OIEluZG9uZXNpYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIGR0ci1ldnQ9IiBoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IkNOQkMgSW5kb25lc2lhIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX0NOQkMtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENOQkMgSW5kb25lc2lhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJIYWkgQnVuZGEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19oYWlfYnVuZGEtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEhhaSBCdW5kYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iSW5zZXJ0TGl2ZSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2luc2VydC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSW5zZXJ0TGl2ZQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iQmVhdXR5bmVzaWEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19iZWF1dHluZXNpYS0xLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCZWF1dHluZXNpYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJGZW1hbGUgRGFpbHkiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfZmVtYWxlX2RhaWx5LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBGZW1hbGUgRGFpbHkNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IkNYTyBNZWRpYSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2N4by53ZWJwIiBhbHQ9Imt1ZGFqaXR1IiB3aWR0aD0iMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ1hPIE1lZGlhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheSBzZWFyY2gtY29udGFpbmVyIHNlYXJjaGFzc2V0LWxhenkiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9faGVhZGVyIGdyaWQtcm93Ij4NCiAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBpZD0ic2VhcmNoQ2xvc2UiIGNsYXNzPSJjb2x1bW4tYXV0byBkaXNwbGF5LWZsZXggYWxpZ24taXRlbXMtY2VudGVyIj4NCiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS1zbSBpY29uLWFycm93LWxlZnQiPjwvaT4NCiAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbHVtbiI+DQogICAgICAgICAgICAgICAgPGZvcm0gYWN0aW9uPSIjIiBtZXRob2Q9IkdFVCI+DQogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0ic2VhcmNoLXRleHQiIG5hbWU9InF1ZXJ5IiBjbGFzcz0ic2VhcmNoLW92ZXJsYXlfX2lucHV0Ig0KICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9IkNhcmkgZGkgZGV0aWtjb20iIHJlcXVpcmVkIGF1dG9jb21wbGV0ZT0ib2ZmIj4NCiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic2l0ZWlkIiB2YWx1ZT0iNSIgLz4NCiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic291cmNlX2thbmFsIiB2YWx1ZT0idHJ1ZSIgLz4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imljb24tcmlnaHQgaGlkZS1lbGVtZW50IiBpZD0iY2xlYXItc2VhcmNoLXRleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvaWNvbi1jbGVhci53ZWJwP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIGFsdD0ia3VkYWppdHUiPg0KICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgPC9mb3JtPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9fYm9keSI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9fYm9keS1jb250ZW50Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaC1zZWN0aW9uX190aXRsZSI+WWFuZyBzZWRhbmcgcmFtYWkgZGljYXJpIDxpbWcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvaWNvbi1ob3Qud2VicD92PTIwMjQwODAyMTU0NDMiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Im1nbC04IiB3aWR0aD0iMTIiIGhlaWdodD0iMTUiIGFsdD0ia3VkYWppdHUiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8b2wgY2xhc3M9InNlYXJjaC1zZWN0aW9uX19saXN0IiBpZD0idG9wLWtleXdvcmQtc2VhcmNoIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyI+PHNwYW4gY2xhc3M9ImZvbnQtYm9sZCI+TG9hZGluZy4uLiA8L3NwYW4+PC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgIDwvb2w+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VhcmNoLXNlY3Rpb24iPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbl9fdGl0bGUiPlRlcmFraGlyIHlhbmcgZGljYXJpPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxvbCBjbGFzcz0ic2VhcmNoLXNlY3Rpb25fX2xpc3QiIGlkPSJsYXN0LXNlYXJjaCI+DQogICAgICAgICAgICAgICAgICAgICAgICBMb2FkaW5nLi4uDQogICAgICAgICAgICAgICAgICAgIDwvb2w+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaC1vdmVybGF5X19ib2R5LXN1Z2dlc3QgaGlkZS1lbGVtZW50Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbiI+DQogICAgICAgICAgICAgICAgICAgIDxvbCBjbGFzcz0ic2VhcmNoLXNlY3Rpb25fX2xpc3QiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHN1Z2dlc3Q+PC9zdWdnZXN0Pg0KICAgICAgICAgICAgICAgICAgICA8L29sPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDxzY3JpcHQ+DQogICAgICAgIGxldCB1cmxQYXJhbWV0ZXIgPSAnbnVsbCc7DQogICAgPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9qb25hcGVkaWEuY29tL2Fzc2V0cy9qcy9mcmFtZWJhci9zZWFyY2guanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCINCiAgICAgICAgc3JjPSJodHRwczovL2pvbmFwZWRpYS5jb20vYXNzZXRzL2pzL2ZyYW1lYmFyL3NlYXJjaC1hdXRvY29tcGxldGUuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIHZhciBjbGljayA9ICQoIiNtZW51Q2xpY2siKTsNCiAgICAgICAgdmFyIHNlYXJjaCA9ICQoIiNzZWFyY2hDbGljayIpOw0KICAgICAgICB2YXIgY2xvc2VTZWFyY2ggPSAkKCIjc2VhcmNoQ2xvc2UiKTsNCiAgICAgICAgZnVuY3Rpb24gb3Blbl9tZW51KCkgew0KICAgICAgICAgICAgJCgiYm9keSIpLmFwcGVuZCgiPGRpdiBjbGFzcz0nanMtb3ZlcmxheSc+PC9kaXY+Iik7DQogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCJib2R5IikuYWRkQ2xhc3MoImpzLW1lbnUtYWN0aXZlIik7DQogICAgICAgICAgICB9LCAxMDApOw0KICAgICAgICB9DQogICAgICAgIGZ1bmN0aW9uIGNsb3NlX21lbnUoKSB7DQogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCIuanMtb3ZlcmxheSIpLnJlbW92ZSgpOw0KICAgICAgICAgICAgfSwgMzAwKTsNCiAgICAgICAgICAgICQoImJvZHkiKS5yZW1vdmVDbGFzcygianMtbWVudS1hY3RpdmUiKTsNCiAgICAgICAgfQ0KICAgICAgICBjbGljay5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgdmFyIGZyYW1lYmFyYXNzZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJmcmFtZWJhcmFzc2V0LWxhenkiKTsNCiAgICAgICAgICAgIGlmIChmcmFtZWJhcmFzc2V0Lmxlbmd0aCAhPSAwKSB7DQogICAgICAgICAgICAgICAgdmFyIGltZ2ZyYW1lYmFyYXNzZXQgPSBmcmFtZWJhcmFzc2V0WzBdLnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLXNyY10iKTsNCiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGltZ2ZyYW1lYmFyYXNzZXQubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgICAgICAgaW1nZnJhbWViYXJhc3NldFtpXS5zZXRBdHRyaWJ1dGUoInNyYyIsIGltZ2ZyYW1lYmFyYXNzZXRbaV0uZ2V0QXR0cmlidXRlKCJkYXRhLXNyYyIpKTsNCiAgICAgICAgICAgICAgICAgICAgaW1nZnJhbWViYXJhc3NldFtpXS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtc3JjIikNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICBpZiAoJCgiYm9keSIpLmhhc0NsYXNzKCJqcy1tZW51LWFjdGl2ZSIpKSB7DQogICAgICAgICAgICAgICAgY2xvc2VfbWVudSgpOw0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICBvcGVuX21lbnUoKTsNCiAgICAgICAgICAgICAgICB2YXIgc2Nyb2xsID0gJCh3aW5kb3cpLnNjcm9sbFRvcCgpOw0KICAgICAgICAgICAgICAgIHZhciBoZWlnaHRfYmlsbGJvYXJkID0gJCgiI21lZ2FiaWxsYm9hcmQiKS5oZWlnaHQoKTsNCiAgICAgICAgICAgICAgICBpZiAoKCQoIiNtZWdhYmlsbGJvYXJkIikubGVuZ3RoKSAmJiAoc2Nyb2xsIDwgaGVpZ2h0X2JpbGxib2FyZCkpIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiaHRtbCwgYm9keSIpLmFuaW1hdGUoeyBzY3JvbGxUb3A6IGhlaWdodF9iaWxsYm9hcmQgfSk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgJChkb2N1bWVudCkuYmluZCgibW91c2V1cCB0b3VjaGVuZCIsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICAgICAgdmFyIHRoaXNfY2xpY2sgPSAkKCIuYm94LW92ZXJsYXksICNtZW51Q2xpY2siKTsNCiAgICAgICAgICAgICAgICBpZiAoJCgiYm9keSIpLmhhc0NsYXNzKCJqcy1tZW51LWFjdGl2ZSIpKSB7DQogICAgICAgICAgICAgICAgICAgIGlmICgNCiAgICAgICAgICAgICAgICAgICAgICAgICF0aGlzX2NsaWNrLmlzKGUudGFyZ2V0KSAmJi8vIGlmIHRoZSB0YXJnZXQgb2YgdGhlIGNsaWNrIGlzbid0IHRoZSBjb250YWluZXIuLi4NCiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXNfY2xpY2suaGFzKGUudGFyZ2V0KS5sZW5ndGggPT09IDANCiAgICAgICAgICAgICAgICAgICAgKSB7IC8vIC4uLiBub3IgYSBkZXNjZW5kYW50IG9mIHRoZSBjb250YWluZXINCiAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5qcy1vdmVybGF5IikucmVtb3ZlKCk7DQogICAgICAgICAgICAgICAgICAgICAgICB9LCAzMDApOw0KICAgICAgICAgICAgICAgICAgICAgICAgJCgiYm9keSIpLnJlbW92ZUNsYXNzKCJqcy1tZW51LWFjdGl2ZSIpOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQogICAgICAgICAgICAkKGRvY3VtZW50KS5vbigibW91c2V3aGVlbCIsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICAgICAgdmFyIHNjcm9sbCA9ICQod2luZG93KS5zY3JvbGxUb3AoKTsNCiAgICAgICAgICAgICAgICBpZiAoKCQoImJvZHkiKS5oYXNDbGFzcygianMtbWVudS1hY3RpdmUiKSkgJiYgKCQoIiNtZWdhYmlsbGJvYXJkIikubGVuZ3RoKSAmJiAoc2Nyb2xsIDwgaGVpZ2h0X2JpbGxib2FyZCkpIHsNCiAgICAgICAgICAgICAgICAgICAgY2xvc2VfbWVudSgpOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgJChkb2N1bWVudCkub24oInRvdWNobW92ZSIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKGRvY3VtZW50KS50cmlnZ2VyKCJtb3VzZXdoZWVsIik7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSk7DQogICAgICAgIC8vIE5FVyBTRUFSQ0gNCiAgICAgICAgZnVuY3Rpb24gb3Blbl9zZWFyY2goKSB7DQogICAgICAgICAgICAkKCJib2R5IikuYXBwZW5kKCI8ZGl2IGNsYXNzPSdqcy1vdmVybGF5Jz48L2Rpdj4iKTsNCiAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9faW5wdXQiKS5mb2N1cygpOw0KICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgJCgiYm9keSIpLmFkZENsYXNzKCJzZWFyY2gtYWN0aXZlIik7DQogICAgICAgICAgICB9LCAxMDApOw0KICAgICAgICB9DQogICAgICAgIGZ1bmN0aW9uIGNsb3NlX3NlYXJjaCgpIHsNCiAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICQoIi5qcy1vdmVybGF5IikucmVtb3ZlKCk7DQogICAgICAgICAgICB9LCAzMDApOw0KICAgICAgICAgICAgJCgiYm9keSIpLnJlbW92ZUNsYXNzKCJzZWFyY2gtYWN0aXZlIik7DQogICAgICAgIH0NCiAgICAgICAgc2VhcmNoLmNsaWNrKGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICB2YXIgc2VhcmNoYXNzZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJzZWFyY2hhc3NldC1sYXp5Iik7DQogICAgICAgICAgICBpZiAoc2VhcmNoYXNzZXQubGVuZ3RoICE9IDApIHsNCiAgICAgICAgICAgICAgICB2YXIgaW1nc2VhcmNoYXNzZXQgPSBzZWFyY2hhc3NldFswXS5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1zcmNdIik7DQogICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbWdzZWFyY2hhc3NldC5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICAgICAgICBpbWdzZWFyY2hhc3NldFtpXS5zZXRBdHRyaWJ1dGUoInNyYyIsIGltZ3NlYXJjaGFzc2V0W2ldLmdldEF0dHJpYnV0ZSgiZGF0YS1zcmMiKSk7DQogICAgICAgICAgICAgICAgICAgIGltZ3NlYXJjaGFzc2V0W2ldLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1zcmMiKQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIEZyYW1lYmFyU2VhcmNoKCkub25Mb2FkKCk7DQogICAgICAgICAgICBDb29raWVzU2VhcmNoKCkub25Mb2FkKCk7DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICBvcGVuX3NlYXJjaCgpOw0KICAgICAgICB9KTsNCiAgICAgICAgY2xvc2VTZWFyY2guY2xpY2soZnVuY3Rpb24gKGUpIHsNCiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTsNCiAgICAgICAgICAgIGNsb3NlX3NlYXJjaCgpOw0KICAgICAgICB9KTsNCiAgICAgICAgJCgiLmNsZWFyLWxpc3QiKS5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgJCh0aGlzKS5wYXJlbnQoImxpIikucmVtb3ZlKCk7DQogICAgICAgIH0pOw0KICAgICAgICB2YXIgdGV4dENvdW50ID0gJCgiI3NlYXJjaC10ZXh0Iik7DQogICAgICAgIHRleHRDb3VudC5vbigna2V5dXAgbW91c2V1cCcsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICB2YXIgY2hhcnNFbnRlcmVkID0gdGV4dENvdW50LnZhbCgpLmxlbmd0aDsNCiAgICAgICAgICAgIGlmIChjaGFyc0VudGVyZWQgPiAwKSB7DQogICAgICAgICAgICAgICAgJCgiI2NsZWFyLXNlYXJjaC10ZXh0IikucmVtb3ZlQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1jb250ZW50IikuYWRkQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1zdWdnZXN0IikucmVtb3ZlQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAkKCIjY2xlYXItc2VhcmNoLXRleHQiKS5hZGRDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LXN1Z2dlc3QiKS5hZGRDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LWNvbnRlbnQiKS5yZW1vdmVDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0pOw0KICAgICAgICAkKCIjY2xlYXItc2VhcmNoLXRleHQiKS5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgdGV4dENvdW50LnZhbCgiIik7DQogICAgICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCJoaWRlLWVsZW1lbnQiKTsNCiAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1zdWdnZXN0IikuYWRkQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LWNvbnRlbnQiKS5yZW1vdmVDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgIH0pOw0KICAgIDwvc2NyaXB0Pg0KDQogICAgPHN0eWxlPg0KICAgICAgICBAaW1wb3J0IHVybCgiaHR0cHM6Ly9hd3NjZG5zdGF0aWMuZGV0aWsubmV0LmlkL2xpdmUvX3JtYmFzc2V0cy9zY3JvbGxwYWdlL3Njcm9sbHBhZ2UuY3NzIik7DQogICAgPC9zdHlsZT4NCiAgICA8ZGl2IGNsYXNzPSJib3gtYWRzIHRleHQtY2VudGVyIHNjcm9sbHBhZ2UiIHN0eWxlPSJkaXNwbGF5OiBub25lOyBiYWNrZ3JvdW5kLWNvbG9yOiNGOEY4Rjg7aGVpZ2h0OiAxODBweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoNCjEwMCU7bWFyZ2luLXRvcDogMTVweDsiPg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KDQoNCg0KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlX19oZWFkZXIiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFnZV9fYnJlYWRjcnVtYiI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyMjIiBjbGFzcz0iaG9tZSI+S1VEQUpJVFU8L2E+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImJyZWFkY3J1bWIiIGR0ci1zZWM9ImJyZWFkY3J1bWJrYW5hbCIgZHRyLWFjdD0iYnJlYWRjcnVtYiBrYW5hbCINCiAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItdHRsPSJDeWJlcmxpZmUiPkN5YmVybGlmZTwvYT4NCg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KDQoNCg0KICAgICAgICA8YXJ0aWNsZSBjbGFzcz0iZGV0YWlsIj4NCg0KDQoNCg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX2hlYWRlciI+DQoNCiAgICAgICAgICAgICAgICA8aDEgY2xhc3M9ImRldGFpbF9fdGl0bGUiPkt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtPC9oMT4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX2F1dGhvciI+S1VEQUpJVFU8L2Rpdj4NCg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPg0KDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibi1jb2x1bW5zLTIiPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2t1ZGFqaXR1LnNob3J0Lmd5L2t1ZGFqaXR1LWRhZnRhciIgcmVsPSJub2ZvbGxvdyBub3JlZmVycmVyIiBjbGFzcz0ibG9naW4iPkxPR0lOPC9hPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2t1ZGFqaXR1LnNob3J0Lmd5L2t1ZGFqaXR1LWRhZnRhciIgcmVsPSJub2ZvbGxvdyBub3JlZmVycmVyIiBjbGFzcz0icmVnaXN0ZXIiPkRBRlRBUjwvYT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KDQoNCg0KDQoNCg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRldGFpbF9fbWVkaWEiPg0KICAgICAgICAgICAgICAgICAgICA8ZmlndXJlIGR0ci1ldnQ9ImNvdmVyIGltYWdlIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImNvdmVyIGltYWdlIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iZGV0YWlsX19tZWRpYS1pbWFnZSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIiBhbHQ9Ikt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJLdWRhaml0dSIgY2xhc3M9InBfaW1nX3pvb21pbiBpbWctem9vbWluIiAvPg0KDQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uIGNsYXNzPSJkZXRhaWxfX21lZGlhLWNhcHRpb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG86IEtVREFKSVRVPC9maWdjYXB0aW9uPg0KICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8cD5LdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS48L3A+DQogICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJsaW5rc2lzaXAiPg0KICAgICAgICAgICAgICAgICAgICA8dGJvZHk+DQogICAgICAgICAgICAgICAgICAgICAgICA8dHI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsaWhhdGpnIj48c3Ryb25nPkJhY2EganVnYTogPC9zdHJvbmc+PGEgZGF0YS1sYWJlbD0iTGlzdCBCZXJpdGEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1hY3Rpb249IkJlcml0YSBQaWxpaGFuIiBkYXRhLWNhdGVnb3J5PSJEZXRpbCBBcnRpa2VsIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyI+VmlyYWwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbTwvYT48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4NCiAgICAgICAgICAgICAgICA8L3RhYmxlPg0KICAgICAgICAgICAgICAgIDxiciAvPjxiciAvPg0KICAgICAgICAgICAgICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvZW1iZWQvdmlldy1jb3VudGVyL2Nzcy92aWRlby1waXAuY3NzP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWV2cCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFldnBfX2hlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZXZwX19sb2dvIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJwaWN0dXJlIGluIHBpY3R1cmUiIGR0ci1zZWM9InBpY3R1cmUgaW4gcGljdHVyZSIgZHRyLWFjdD0ibG9nbyAyMGRldGlrIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGhyZWY9Imh0dHBzOi8vMjAuZGV0aWsuY29tLyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy9sb2dvL2xvZ29fMjBkZXRpa19uZXcucG5nP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIzNiIgaGVpZ2h0PSIxNiIgYWx0PSIyMEQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPHNjcmlwdD4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgkKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZWZhdWx0T2Zmc2V0SCA9IDEuNjc7IC8vIERlZmluZSB5b3VyIGRlZmF1bHQgdmFsdWUgaGVyZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZGVmYXVsdERldGFpbFRpdGxlT2Zmc2V0VG9wID0gOTY4OyAvLyBEZWZhdWx0IG9mZnNldCB0b3AgcG9zaXRpb24gaWYgLmRldGFpbF9fdGl0bGUgaXMgbm90IGZvdW5kDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZXRhaWxUaXRsZU9mZnNldFRvcCA9ICQoIi5kZXRhaWxfX3RpdGxlIikubGVuZ3RoDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICQoIi5kZXRhaWxfX3RpdGxlIikub2Zmc2V0KCkudG9wDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGRlZmF1bHREZXRhaWxUaXRsZU9mZnNldFRvcDsNCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgYWV2cEggPSAkKCIuZGV0YWlsX190aXRsZSIpLm91dGVySGVpZ2h0KCksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJIID0gJCgiLmhlYWRlciIpLm91dGVySGVpZ2h0KCksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXRIID0gYWV2cEggJiYgaGVhZGVySCA/IGFldnBIIC0gaGVhZGVySCA6IGRlZmF1bHRPZmZzZXRIOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHdpbmRvdykub24oInNjcm9sbCIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBzY3JvbGwgPSAkKHdpbmRvdykuc2Nyb2xsVG9wKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc2Nyb2xsID49IGRldGFpbFRpdGxlT2Zmc2V0VG9wICsgb2Zmc2V0SCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5waXAtdmlkX190cmlnZ2VyIikuYWRkQ2xhc3MoImZsb3ciKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNjcm9sbCA8PSBkZXRhaWxUaXRsZU9mZnNldFRvcCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5waXAtdmlkIikuYWRkQ2xhc3MoImhpZGUiKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLnBpcC12aWQiKS5yZW1vdmVDbGFzcygiaGlkZSIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJUyBJTiBWSUVXUE9SVCBERVRFQ1QgRUxFTUVOVA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkLmZuLmlzSW5WaWV3cG9ydCA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlbGVtZW50VG9wID0gJCh0aGlzKS5vZmZzZXQoKS50b3A7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZWxlbWVudEJvdHRvbSA9IGVsZW1lbnRUb3AgKyAkKHRoaXMpLm91dGVySGVpZ2h0KCk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2aWV3cG9ydFRvcCA9ICQod2luZG93KS5zY3JvbGxUb3AoKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2aWV3cG9ydEJvdHRvbSA9IHZpZXdwb3J0VG9wICsgJCh3aW5kb3cpLmhlaWdodCgpOw0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZWxlbWVudEJvdHRvbSA+IHZpZXdwb3J0VG9wICYmIGVsZW1lbnRUb3AgPCB2aWV3cG9ydEJvdHRvbTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZMT0FUIFZJREVPIFRyYW5zaXN0aW9uIEZPUiBCUkVBS0lORyBORVdTDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQuZm4uZmxvYXRlciA9IGZ1bmN0aW9uIChvcHRpb25zKSB7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkQ2xhc3MoImZsb3ctaW4iKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBibG9jayA9ICQodGhpcyk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIiN2aWRlby1waXBfX2Nsb3NlIikuY2xpY2soZnVuY3Rpb24gKGUpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvd091dCgpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrLnJlbW92ZUNsYXNzKCJmbG93LWluIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGZsb3dPdXQoKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLmZsb3ctaW4iKS5yZW1vdmVDbGFzcygiZmxvd2VkIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBmbG93SW4oKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLmZsb3ctaW4iKS5hZGRDbGFzcygiZmxvd2VkIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAkKHdpbmRvdykuc2Nyb2xsKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgiLnBpcC12aWRfX3RyaWdnZXIiKS5pc0luVmlld3BvcnQoKSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG93T3V0KCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG93SW4oKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEluaXRpYWxpemUgcGlwZXINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gcGlwX3ZpZGVvKCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLnBpcC12aWQiKS5mbG9hdGVyKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmFsc2UpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpcF92aWRlbygpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2NyaXB0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGJyIC8+DQogICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPihLVURBSklUVSk8L3N0cm9uZz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX3NoYXJlIG1nYi0xNiI+DQoNCiAgICAgICAgPGRpdiBjbGFzcz0ianMtcmVzZXQtcmVkaXJlY3QgYWN0aXZlIj48L2Rpdj4NCg0KICAgICAgICA8ZGl2IGNsYXNzPSJzdGlja3ktc2hhcmUiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGV0YWlsX19zaGFyZSBzdGlja3ktc2hhcmVfX3dyYXAiPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZsb2F0aW5nIGtvbWVudGFyIiBkdHItc2VjPSJ0b21ib2wga29tZW50YXIiIGR0ci1hY3Q9InRvbWJvbCBrb21lbnRhciIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJrb21lbnRhciIgcmVsPSJub2ZvbGxvdyIgaHJlZj0iI2NvbW0xIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gY2xpY2t0b19jb21tZW50IHNoLWtvbWVudGFyIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24gaWNvbi0tbWQgaWNvbi1jb21tZW50IGNvbG9yLWJsYWNrIj48L2k+DQogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50LWNvdW50Ij4wPC9zcGFuPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmbG9hdGluZyBzaGFyZSIgZHRyLXNlYz0ic2hhcmUgc29jbWVkIiBkdHItYWN0PSJzaGFyZSBmYWNlYm9vayIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJmYWNlYm9vayIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJmYiBpY29uLWl0ZW0gaWNvbi1pdGVtX19mYiINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT1mYWNlYm9vayZ1dG1fY2FtcGFpZ249ZGV0aWtjb21zb2NtZWQmdXRtX21lZGl1bT1idG4mdXRtX2NvbnRlbnQ9aW5ldCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS14cyBpY29uLWZhY2Vib29rIj48L2k+DQogICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZsb2F0aW5nIHNoYXJlIiBkdHItc2VjPSJzaGFyZSBzb2NtZWQiIGR0ci1hY3Q9InNoYXJlIHR3aXR0ZXIiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0idHdpdHRlciIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJ0dyBpY29uLWl0ZW0gaWNvbi1pdGVtX190dyINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT10d2l0dGVyJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24tdHdpdHRlciI+PC9pPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmbG9hdGluZyBzaGFyZSIgZHRyLXNlYz0ic2hhcmUgc29jbWVkIiBkdHItYWN0PSJzaGFyZSB3aGF0c2FwcCIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJ3aGF0c2FwcCIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJ3aGF0c2FwIGljb24taXRlbSBpY29uLWl0ZW1fX3dhIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYT91dG1fc291cmNlPXdoYXRzYXBwJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24td2hhdHNhcHAiPjwvaT4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZmxvYXRpbmcgc2hhcmUiIGR0ci1zZWM9InNoYXJlIHNvY21lZCIgZHRyLWFjdD0ic2hhcmUgdGVsZWdyYW0iIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0idGVsZWdyYW0iIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0idGVsZSBpY29uLWl0ZW0gaWNvbi1pdGVtX190ZWxlIHNoLXRlbGVncmFtIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYT91dG1fc291cmNlPXRlbGVncmFtJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24tdGVsZWdyYW0iPjwvaT4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZmxvYXRpbmcgc2hhcmUiIGR0ci1zZWM9IiIgZHRyLWFjdD0iY29weSBsaW5rIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci10dGw9ImxpbmsiIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9fbGluayBjb3B5X3VybCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT1jb3B5X3VybCZ1dG1fY2FtcGFpZ249ZGV0aWtjb21zb2NtZWQmdXRtX21lZGl1bT1idG4mdXRtX2NvbnRlbnQ9aW5ldCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS14cyBpY29uLWxpbmsiPjwvaT4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5vdGlmIj5UYXV0YW4gdGVsYWggZGlzYWxpbjwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgPHNjcmlwdD4NCiAgICAgICAgICAgIGdldFNjcmlwdCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9zaGFyZWJveC5pdHAuanM/dj0yMDI0MDgwMjE1NDQzIiwgZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICAgICBzaGFyZUJveC5ydW4oJCgnLnN0aWNreS1zaGFyZScpKTsNCiAgICAgICAgICAgICAgICAgICAgLy8gc2hhcmVCb3guY291bnRDb21tZW50KCQoJy5zaC1rb21lbnRhcicpKTsNCiAgICAgICAgICAgICAgICB9LCA1MDApOw0KICAgICAgICAgICAgfSkNCg0KICAgICAgICAgICAgZnVuY3Rpb24gc2V0SW50ZXJzZWN0T2JlcnNlcnZlcihlbGVtLCBvYm9wdGlvbnMpIHsNCiAgICAgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoDQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIChlbnRyaWVzKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAvLyBubyBpbnRlcnNlY3Rpb24gd2l0aCBzY3JlZW4NCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlbnRyaWVzWzBdLmludGVyc2VjdGlvblJhdGlvID09PSAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5xdWVyeVNlbGVjdG9yKCIuc3RpY2t5LXNoYXJlIikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNsYXNzTGlzdC5hZGQoInN0aWNreS1zaGFyZS0tc3RpY2tlZCIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgLy8gZnVsbHkgaW50ZXJzZWN0cyB3aXRoIHNjcmVlbg0KICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoZW50cmllc1swXS5pbnRlcnNlY3Rpb25SYXRpbyA9PT0gMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucXVlcnlTZWxlY3RvcigiLnN0aWNreS1zaGFyZSIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jbGFzc0xpc3QucmVtb3ZlKCJzdGlja3ktc2hhcmUtLXN0aWNrZWQiKTsNCiAgICAgICAgICAgICAgICAgICAgfSwgb2JvcHRpb25zDQogICAgICAgICAgICAgICAgKTsNCiAgICAgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGVsZW0pOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgY29uc3QgaGVhZGVyQ2xhc3MgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuaGVhZGVyJyk7DQoNCiAgICAgICAgICAgIGxldCBvYm9wdGlvbnMgPSB7DQogICAgICAgICAgICAgICAgdGhyZXNob2xkOiBbMCwgMV0sDQogICAgICAgICAgICAgICAgcm9vdE1hcmdpbjogIjQ3NXB4Ig0KICAgICAgICAgICAgfTsNCg0KICAgICAgICAgICAgaWYgKGhlYWRlckNsYXNzLmNsYXNzTGlzdC5jb250YWlucygnaGVhZGVyLS0yMGQnKSkgew0KICAgICAgICAgICAgICAgIG9ib3B0aW9ucyA9IHsNCiAgICAgICAgICAgICAgICAgICAgdGhyZXNob2xkOiBbMCwgMV0sDQogICAgICAgICAgICAgICAgICAgIHJvb3RNYXJnaW46ICI0NzBweCINCiAgICAgICAgICAgICAgICB9Ow0KICAgICAgICAgICAgICAgIHNldEludGVyc2VjdE9iZXJzZXJ2ZXIoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmhlYWRlci10b3AtMjBkIiksIG9ib3B0aW9ucyk7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIHNldEludGVyc2VjdE9iZXJzZXJ2ZXIoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmhlYWRlci10b3AiKSwgb2JvcHRpb25zKTsNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgLy8gVVAvRE9XTg0KICAgICAgICAgICAgdmFyIGlTY3JvbGxQb3MgPSAwOw0KICAgICAgICAgICAgdmFyICR3aW5kb3cgPSAkKHdpbmRvdyk7DQogICAgICAgICAgICAkd2luZG93LnNjcm9sbChmdW5jdGlvbiAoKSB7DQoNCiAgICAgICAgICAgICAgICB2YXIgaUN1clNjcm9sbFBvcyA9ICQodGhpcykuc2Nyb2xsVG9wKCk7DQogICAgICAgICAgICAgICAgdmFyIGZ0SGVpZ2h0ID0gJCgiZm9vdGVyLmZvb3RlciIpLmhlaWdodCgpOw0KICAgICAgICAgICAgICAgIHZhciBkSGVpZ2h0ID0gJCgiaHRtbCIpLm91dGVySGVpZ2h0KCkgLSBmdEhlaWdodDsNCiAgICAgICAgICAgICAgICB2YXIgb2Zmc2V0ID0gaUN1clNjcm9sbFBvcyArICR3aW5kb3cuaW5uZXJIZWlnaHQoKTsNCg0KICAgICAgICAgICAgICAgIGlmIChvZmZzZXQgPj0gZEhlaWdodCkgew0KICAgICAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnQXQgdGhlIGJvdHRvbScpOw0KICAgICAgICAgICAgICAgICAgICAkKCIuc3RpY2t5LXNoYXJlLS1zdGlja2VkIikuY3NzKCJvcGFjaXR5IiwgMCk7DQogICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiLnN0aWNreS1zaGFyZS0tc3RpY2tlZCIpLmNzcygib3BhY2l0eSIsICIiKTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgLy8gc2hhcmUgJiBjb21tZW50IHNjcmlwdA0KICAgICAgICAgICAgJCgiLmNvcHlfdXJsIikuY2xpY2soZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICQodGhpcykuY2hpbGRyZW4oIi5ub3RpZiIpLmFkZENsYXNzKCJ1cmxfY29waWVkIik7DQogICAgICAgICAgICAgICAgdmFyIGR1bW15ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKSwNCiAgICAgICAgICAgICAgICAgICAgdGV4dCA9ICQodGhpcykuYXR0cignZGF0YS11cmwnKTsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGR1bW15KTsNCiAgICAgICAgICAgICAgICBkdW1teS52YWx1ZSA9IHRleHQ7DQogICAgICAgICAgICAgICAgZHVtbXkuc2VsZWN0KCk7DQogICAgICAgICAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2NvcHknKTsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGR1bW15KTsNCiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiLm5vdGlmIikucmVtb3ZlQ2xhc3MoInVybF9jb3BpZWQiKTsNCiAgICAgICAgICAgICAgICB9LCAxNTAwKTsNCiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgIHZhciBhcnRpY2xlID0gew0KICAgICAgICAgICAgICAgIGlkbmV3czogNzQ3MDEyMywNCiAgICAgICAgICAgICAgICBpZGthbmFsOiAzOTgNCiAgICAgICAgICAgIH0NCiAgICAgICAgPC9zY3JpcHQ+DQoNCg0KICAgIDwvZGl2Pg0KDQoNCg0KICAgIDwvYXJ0aWNsZT4NCg0KDQoNCiAgICA8IS0tIFM6cGFydG5lcl9ib3ggLS0+IDwhLS0gRTpwYXJ0bmVyX2JveCAtLT4NCg0KICAgIDxkaXYgY2xhc3M9ImJveCBib3gtLWtvbWVudGFyIGNvbW1lbnQiPg0KICAgICAgICA8IS0tUzpLT01FTlRBUi0tPg0KDQogICAgICAgIDxkaXYgaWQ9InRoZWNvbW1lbnQyIiBjbGFzcz0iZGV0YWlsX2FyZWEiPg0KICAgICAgICAgICAgPHN0eWxlPg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWZvbnQtYm9sZCB7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1mb3JtIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0biB7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EtRkYsIEFyaWFsLCBUYWhvbWEsIHNhbnMtc2VyaWY7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQtRkYsIEFyaWFsLCBUYWhvbWEsIHNhbnMtc2VyaWY7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1udWxsIHsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4Ow0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWNvbG9yLWJsYWNrIHsNCiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuLA0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0bjpob3ZlciB7DQogICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICN0aGVjb21tZW50MiB7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogSGVsdmV0aWNhLUZGLCBBcmlhbCwgVGFob21hLCBzYW5zLXNlcmlmOw0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7DQogICAgICAgICAgICAgICAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOw0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsNCiAgICAgICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tbWd0LTEyIHsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweCAhaW1wb3J0YW50Ow0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLW1nYi0xMiB7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHggIWltcG9ydGFudDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1mb250LXNtIHsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4Ow0KICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDsNCiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94Ow0KICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsNCiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7DQogICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50Ow0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dCAwczsNCiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0IDBzOw0KICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1ib2R5LS1kZXRpa25ld3MgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxNDA5YTsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1idG46aG92ZXIgew0KICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7DQogICAgICAgICAgICAgICAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT04MCk7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1ib2R5IHsNCiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWNvbW1lbnQtbGVhZCB7DQogICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTZweCAxOHB4IDE4cHg7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7DQogICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHsNCiAgICAgICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1sZWFkIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHg7DQogICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4Ow0KICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1mb3JtIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0biB7DQogICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCA4cHg7DQogICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWVudHJ5IHsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzZweDsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzZweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LW51bGwgew0KICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjOTk5Ow0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIDwvc3R5bGU+DQoNCiAgICAgICAgICAgIDxkaXYNCiAgICAgICAgICAgICAgICBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWJvZHkga29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWJvZHktLWRldGlrbmV3cyBjdXN0b20tbWluLXNuZWFrLXBlZWsiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1sZWFkIj4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtvbWVudGFyLWlmcmFtZS1taW4tZm9udC1ib2xkIj5Lb21lbnRhcjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgPGZvcm0gYWN0aW9uPSIjIiBpZD0iZm9ybS1jb21tZW50LXYyIiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWZvcm0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYS9rb21lbnRhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1idG4ga29tZW50YXItaWZyYW1lLW1pbi1tZ3QtMTIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigzMywgNjQsIDE1NCk7Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBLaXJpbSBLb21lbnRhcg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWVudHJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LW51bGwiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJrb21lbnRhci1pZnJhbWUtbWluLWZvbnQtYm9sZCBrb21lbnRhci1pZnJhbWUtbWluLWNvbG9yLWJsYWNrIGtvbWVudGFyLWlmcmFtZS1taW4tZm9udC1zbSBrb21lbnRhci1pZnJhbWUtbWluLW1nYi0xMiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQmVsdW0gYWRhIGtvbWVudGFyLjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY3VzdG9tLW1pbi1zbmVhay1wZWVrLWVtcHR5LXdvcmRpbmciPkphZGlsYWggeWFuZyBwZXJ0YW1hIGJlcmtvbWVudGFyIGRpIHNpbmk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgPCEtLSBTOiBORVcgUFJPIEtPTlRSQSAtLT4NCiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgICAgICAgICAgdmFyIGluaXRlZENvbW1lbnQgPSBmYWxzZTsNCiAgICAgICAgICAgICQod2luZG93KS5vbignc2Nyb2xsJywgZnVuY3Rpb24gKCkgew0KDQogICAgICAgICAgICAgICAgaWYgKGluaXRlZENvbW1lbnQpIHsgcmV0dXJuOyB9DQogICAgICAgICAgICAgICAgaWYgKCQod2luZG93KS5zY3JvbGxUb3AoKSA8PSAzMDApIHsgcmV0dXJuOyB9DQogICAgICAgICAgICAgICAgaWYgKHBhcnNlSW50KCQoJy5jb21tZW50LWNvdW50OmZpcnN0JykudGV4dCgpKSA8PSAwKSB7IHJldHVybjsgfQ0KDQogICAgICAgICAgICAgICAgaW5pdGVkQ29tbWVudCA9IHRydWU7DQogICAgICAgICAgICAgICAgZ2V0U2NyaXB0KCJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvbGlicy9jb21tZW50L3YyL2pzL3pvaWQubWluLmpzPzIwMjQwODAyMTUiLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgICAgIGdldFNjcmlwdCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2xpYnMvY29tbWVudC92Mi9qcy9icmlkZ2UuanM/MjAyNDA4MDIxNSIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJyN0aGVjb21tZW50MicpLmh0bWwoJycpOw0KICAgICAgICAgICAgICAgICAgICAgICAgQ29tbWVudENvbXBvbmVudCh7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWRBcnRpa2VsOiA3NDcwMTIzLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGthbmFsOiAzOTgsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0ZTogIjAyLTA4LTIwMjQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAiS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudElkOiA5OCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVmaXg6ICJkdGsiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2tvbnRyYTogMCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZW1idWthRGlza3VzaTogIiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgc25lYWtQZWVrOiAxLA0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAga2FuYWxBZHM6ICJkZXRpa19pbmV0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnZBZHM6ICJtb2JpbGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTG9naW4sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25SZXNpemUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25TY3JvbGwsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25BbGVydA0KICAgICAgICAgICAgICAgICAgICAgICAgfSkucmVuZGVyKCcjdGhlY29tbWVudDInKTsNCg0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICB9KQ0KICAgICAgICA8L3NjcmlwdD4NCiAgICAgICAgPCEtLSBFOiBORVcgUFJPIEtPTlRSQSAtLT4NCg0KICAgICAgICA8IS0tRTpLT01FTlRBUi0tPg0KICAgIDwvZGl2Pg0KICAgIDxzdHlsZT4NCiAgICAgICAgI2J0X3RrdCBhcnRpY2xlOm50aC1jaGlsZChuKzcpIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgIH0NCiAgICA8L3N0eWxlPg0KDQogICAgPGRpdiBjbGFzcz0iYm94IGNiLWJlcml0YS10ZXJrYWl0Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94X19oZWFkZXIiPg0KICAgICAgICAgICAgPGgyIGNsYXNzPSJib3hfX3RpdGxlIj5CZXJpdGEgVGVya2FpdDwvaDI+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGlkPSJidF90a3QiIGNsYXNzPSJsaXN0LWNvbnRlbnQgbGlzdC1jb250ZW50LS1ib3JkZXJlZCBoaWRlLW9mLWxpc3QtNiI+DQogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibGlzdC1jb250ZW50X19pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSBtZWRpYS0tbGVmdCBtZWRpYS0taW1hZ2UtcmFkaXVzIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZWRpYV9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImJlcml0YSB0ZXJrYWl0IiBkdHItc2VjPSIiIGR0ci1hY3Q9ImFydGlrZWwiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkPSI3NDY5NzA3IiBkdHItdHRsPSJFbG9uIE11c2sgU2luZGlyIFBldGluanUgT2xpbXBpYWRlIFdhbml0YSB5YW5nIERpZHVnYSBQcmlhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgY2xhc3M9Im1lZGlhX19saW5rIj5FbG9uIE11c2sgU2luZGlyIFBldGluanUgT2xpbXBpYWRlIFdhbml0YSB5YW5nIERpZHVnYQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmlhPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2FydGljbGU+DQogICAgICAgICAgICA8IS0tIFM6bmF0aXZlYmVyaXRhdGVya2FpdCAtLT48aW5zIGRhdGEtbGFiZWxuYW1lPSJuYXRpdmViZXJpdGF0ZXJrYWl0IiBkYXRhLXJldml2ZS16b25laWQ9IjM4MTYiDQogICAgICAgICAgICAgICAgZGF0YS1yZXZpdmUtaWQ9IjBjY2VlY2I5Y2FlOWY1MWEzMTEyM2M1NDE5MTBkNTliIj48L2lucz48IS0tIEU6bmF0aXZlYmVyaXRhdGVya2FpdCAtLT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0Njk1OTYiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IlBldGVtYmFrIFR1cmtpIGt1ZGFqaXR1IFBvc3RpbmcgUGVyYWsgT2xpbXBpYWRlIEJhbmppciBLb21lbnRhciBLb2NhayINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJtZWRpYV9fbGluayI+UGV0ZW1iYWsgVHVya2kga3VkYWppdHUgUG9zdGluZyBQZXJhayBPbGltcGlhZGUgQmFuamlyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvbWVudGFyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvY2FrPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2FydGljbGU+DQogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibGlzdC1jb250ZW50X19pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSBtZWRpYS0tbGVmdCBtZWRpYS0taW1hZ2UtcmFkaXVzIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZWRpYV9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImJlcml0YSB0ZXJrYWl0IiBkdHItc2VjPSIiIGR0ci1hY3Q9ImFydGlrZWwiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkPSI3NDY5NTQ2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJWaXJhbCBTZWVrb3IgTGViYWggR2FuZ2d1IEF0bGV0IFBhbmFoIEtvcnNlbCBkaSBTYWF0IE1lbmVudHVrYW4iIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0ibWVkaWFfX2xpbmsiPlZpcmFsIFNlZWtvciBMZWJhaCBHYW5nZ3UgQXRsZXQgUGFuYWggS29yc2VsIGRpIFNhYXQgTWVuZW50dWthbjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9hcnRpY2xlPg0KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Imxpc3QtY29udGVudF9faXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEgbWVkaWEtLWxlZnQgbWVkaWEtLWltYWdlLXJhZGl1cyI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhX190ZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibWVkaWFfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJiZXJpdGEgdGVya2FpdCIgZHRyLXNlYz0iIiBkdHItYWN0PSJhcnRpa2VsIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZD0iNzQ3MDIwMiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0iQXRsZXQgQW5nZ2FyIE5hZGEgSGFmZXogQmVydGFuZGluZyBzYWF0IEhhbWlsIDcgQnVsYW4gZGkgT2xpbXBpYWRlIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Im1lZGlhX19saW5rIj5BdGxldCBBbmdnYXIgTmFkYSBIYWZleiBCZXJ0YW5kaW5nIHNhYXQgSGFtaWwgNyBCdWxhbiBkaQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPbGltcGlhZGU8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvYXJ0aWNsZT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0NzAxMDgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IkFobGkgU29yb3RpICYjMDM5O1BvbHVzaSYjMDM5OyBUaW5qYSBkaSBTdW5nYWkgU2VpbmUgTG9rYXNpIFRyaWF0bG9uIGt1ZGFqaXR1IGxvZ2luIDIwMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0ibWVkaWFfX2xpbmsiPkFobGkgU29yb3RpICdQb2x1c2knIFRpbmphIGRpIFN1bmdhaSBTZWluZSBMb2thc2kgVHJpYXRsb24NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT2xpbXBpYWRlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhcmlzIDIwMjQ8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvYXJ0aWNsZT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0Njk1NTUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IlBvdHJldCBBdGxldCBBbmdnYXIgTWVzaXIgeWFuZyBWaXJhbCB1c2FpIFVtdW1rYW4gSGFtaWwgZGkga3VkYWppdHUgbG9naW4gMjAyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJtZWRpYV9fbGluayI+UG90cmV0IEF0bGV0IEFuZ2dhciBNZXNpciB5YW5nIFZpcmFsIHVzYWkgVW11bWthbiBIYW1pbCBkaQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPbGltcGlhZGUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFyaXMgMjAyNDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9hcnRpY2xlPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDxkaXYgZC13aWRnZXQ9Im5ld3NmZWVkX3JlY29tbWVuZGF0aW9uIiBkLXJlY29tbWVuZGF0aW9uPjwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJqcy1zaG93LXJlZGlyZWN0LWFydGljbGUiPjwvZGl2Pg0KDQogICAgPGRpdiBkLXdpZGdldD0ib3RoZXJfYXJ0aWNsZXMiIGQtcGFyYW1zPSIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJkd2lkZ2V0X21vYmlsZSBwaC12ZXJ0aWNhbCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIHBoLXRpdGxlIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIgYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW4tbGVmdCBwaC1jb2wtNCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXBpY3R1cmUiPjwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImluLXJpZ2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcm93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00IGJpZyBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbi1sZWZ0IHBoLWNvbC00Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcGljdHVyZSI+PC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW4tcmlnaHQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTEyIGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQgYmlnIGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImluLWxlZnQgcGgtY29sLTQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1waWN0dXJlIj48L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbi1yaWdodCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIgYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCBiaWcgZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj48aW1nIHN0eWxlPSJkaXNwbGF5Om5vbmUiIC8+DQogICAgPC9kaXY+DQoNCiAgICA8ZGl2IGQtd2lkZ2V0PSJkZXRhaWxfbW9zdHBvcHVsYXIiIGQtcGFyYW1zPSIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJkd2lkZ2V0X21vYmlsZSBwaC1saXN0Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0gcGgtdGl0bGUiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00IGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQgZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTEyIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcm93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2PiA8aW1nIHN0eWxlPSJkaXNwbGF5Om5vbmUiIC8+DQogICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPCEtLSBTOkZvb3RlciAtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgaWYgKGhlbHBlci5pbnZpZXcoJCgiZm9vdGVyIikpKSB7DQogICAgICAgICAgICAgICAgICAgIHZhciBmcmFtZWZvb3RlciA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoImZvb3Rlci1sYXp5Iik7DQogICAgICAgICAgICAgICAgICAgIGlmIChmcmFtZWZvb3Rlci5sZW5ndGggIT0gMCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGltZ2ZyYW1lZm9vdGVyID0gZnJhbWVmb290ZXJbMF0ucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtc3JjXSIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbWdmcmFtZWZvb3Rlci5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZ2ZyYW1lZm9vdGVyW2ldLnNldEF0dHJpYnV0ZSgic3JjIiwgaW1nZnJhbWVmb290ZXJbaV0uZ2V0QXR0cmlidXRlKCJkYXRhLXNyYyIpKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWdmcmFtZWZvb3RlcltpXS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtc3JjIikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KICAgICAgICB9KTsNCiAgICA8L3NjcmlwdD4NCiAgICA8Zm9vdGVyIGNsYXNzPSJmb290ZXIgZm9vdGVyLWxhenkiIGlkPSJmb290ZXIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJfX2JvcmRlciI+PC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9ImxvZ29kZXRpayIgZHRyLWFjdD0ibG9nbyBkZXRpayIgb25jbGljaz0iX3B0KHRoaXMpIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICBjbGFzcz0iZm9vdGVyX19sb2dvIj4NCiAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy93ZWJwL20vbG9nb19kZXRpa2NvbS53ZWJwP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgYWx0PSJpbWctYWx0IiB0aXRsZT0iaW1nLXRpdGxlIiB3aWR0aD0iMTYwIiBoZWlnaHQ9IjMwIj4NCiAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlci10aXRsZSBmb290ZXItdGl0bGVfX3BhcnRvZiI+cGFydCBvZiA8aW1nDQogICAgICAgICAgICAgICAgICAgIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy93ZWJwL2xvZ29fZGV0aWtuZXR3b3JrLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICBhbHQ9ImltZy1hbHQiIHRpdGxlPSJpbWctdGl0bGUiIHdpZHRoPSI4MCIgaGVpZ2h0PSIyOSI+PC9kaXY+DQogICAgICAgICAgICA8bmF2Pg0KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tY2VudGVyIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJyZWRha3NpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWRha3NpIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InBlZG9tYW4gbWVkaWEgc2liZXIiIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiByZWw9Im5vZm9sbG93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQZWRvbWFuIE1lZGlhIFNpYmVyIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJrYXJpciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgS2FyaXIgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSBsYXlhbmFuIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImtvdGFrIHBvcyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgS290YWsgUG9zIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJpbmZvIGlrbGFuIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiByZWw9Im5vZm9sbG93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmZvIElrbGFuIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InByaXZhY3kgcG9saWN5IiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpdmFjeSBQb2xpY3kgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSBsYXlhbmFuIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRpc2NsYWltZXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIHJlbD0ibm9mb2xsb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpc2NsYWltZXIgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L25hdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9fc29jaWFsIj4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ic29jbWVkIGRldGlrY29tIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IndoYXRzYXBwIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICAgICAgY2xhc3M9Imljb24taXRlbSBpY29uLWl0ZW1fX3dhIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24gaWNvbi13aGF0c2FwcCI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJmYWNlYm9vayIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX19mYiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tZmFjZWJvb2siPjwvaT4gPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZvb3RlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJzb2NtZWQgZGV0aWtjb20iIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0idHdpdHRlciIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX190dyI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tdHdpdHRlciI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJpbnN0YWdyYW0iDQogICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9faWciPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLWluc3RhZ3JhbSI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJsaW5rZWRpbiIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX19pbiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tbGlua2VkaW4iPjwvaT4gPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZvb3RlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJzb2NtZWQgZGV0aWtjb20iIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0ieW91dHViZSIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX195dCI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24teW91dHViZSI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJ0aWt0b2siIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9fdGsiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLXRpa3RvayI+PC9pPiA8L2E+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPHNjcmlwdD4NCiAgICAgICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgICAgICB2YXIgbXlTY3JvbGxQb3MgPSAkKCcubmF2YmFyLWZpcnN0IHVsIGxpLm5hdl9faXRlbS0tYWN0aXZlJykucG9zaXRpb24oKS5sZWZ0IC0gJCgnLm5hdmJhci1maXJzdCB1bCBsaS5uYXZfX2l0ZW0tLWFjdGl2ZScpLndpZHRoKCk7DQoNCiAgICAgICAgICAgICAgICAgICAgaWYgKCQoJy5zY3JvbGxfX3dyYXAgbGk6bnRoLWNoaWxkKDIpJykuaGFzQ2xhc3MoJ25hdl9faXRlbS0tYWN0aXZlJykpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJy5uYXZiYXItZmlyc3QgdWwnKS5hbmltYXRlKHsgc2Nyb2xsTGVmdDogMCB9KTsNCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJy5uYXZiYXItZmlyc3QgdWwnKS5hbmltYXRlKHsgc2Nyb2xsTGVmdDogbXlTY3JvbGxQb3MgfSk7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdbYWN0aXZlU2Nyb2xsTGV2ZWwgbm90IEZvdW5kXScpDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgPC9zY3JpcHQ+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJfX2dldC1hcHAiPg0KICAgICAgICAgICAgICAgIERvd25sb2FkIGFwbGlrYXNpIGRldGlrY29tDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyX19hcHAtc3RvcmUiPg0KICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibGluayBidWlsZGluZyBmb290ZXIiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InBsYXkgc3RvcmUiIGhyZWY9Imh0dHBzOi8vcGxheS5nb29nbGUuY29tL3N0b3JlL2FwcHMvZGV0YWlscz9pZD1vcmcuZGV0aWtjb20ucnNzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL3dlYnAvbS9zdG9yZS1hbmRyb2lkLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0icGxheSBzdG9yZSIgdGl0bGU9IlBsYXkgU3RvcmUiIHdpZHRoPSI5OCIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImxpbmsgYnVpbGRpbmcgZm9vdGVyIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJhcHAgc3RvcmUiIGhyZWY9Imh0dHBzOi8vYXBwcy5hcHBsZS5jb20vaWQvYXBwL2RldGlrY29tLWJlcml0YS10ZXJsZW5na2FwL2lkNDQyOTE0OTg4Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL3dlYnAvbS9zdG9yZS1pb3Mud2VicD92PTIwMjQwODAyMTU0NDMiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSJhcHAgc3RvcmUiIHRpdGxlPSJBcHAgU3RvcmUiIHdpZHRoPSI5NyIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImxpbmsgYnVpbGRpbmcgZm9vdGVyIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJhcHAgZ2FsbGVyeSIgaHJlZj0iaHR0cHM6Ly9hcHBnYWxsZXJ5NS5odWF3ZWkuY29tLyMvYXBwL0MxMDA2NzIwNDUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvd2VicC9tL3N0b3JlLWh1YXdlaS1hcHBzLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0iYXBwIGdhbGxlcnkiIHRpdGxlPSJBcHAgR2FsbGVyeSIgd2lkdGg9IjExNCIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyX19jb3B5Ij4NCiAgICAgICAgICAgICAgICBDb3B5cmlnaHQgQCAyMDI0IGRldGlrY29tLCBBbGwgcmlnaHQgcmVzZXJ2ZWQNCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBkLXdpZGdldD0iYnl0ZWRhbmNlIiBkLWxvYWRlZD0iMSIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+PC9kaXY+DQogICAgPC9mb290ZXI+DQoNCiAgICA8IS0tIHM6bmV4dEFydGljbGVSZXBvIC0tPg0KICAgIDxkaXYgY2xhc3M9ImJvdHRvbS1zdGlja3kiPg0KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgICAgICAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgdmFyIGZiYW5lciA9ICQoJy5mb290ZXJfYmFubmVyJyk7DQogICAgICAgICAgICAgICAgdmFyIGJ0bVN0aWNreSA9ICQoJy5ib3R0b20tc3RpY2t5Jyk7DQogICAgICAgICAgICAgICAgdmFyIHNoclN0aWNreSA9ICQoJy5zdGlja3ktc2hhcmUnKTsNCiAgICAgICAgICAgICAgICB2YXIgZmJhbmVySGVpZ2h0ID0gZmJhbmVyLm91dGVySGVpZ2h0KCk7DQoNCiAgICAgICAgICAgICAgICBpZiAoZmJhbmVyKSB7DQogICAgICAgICAgICAgICAgICAgIGJ0bVN0aWNreS5jc3MoJ2JvdHRvbScsIGZiYW5lckhlaWdodCk7DQogICAgICAgICAgICAgICAgICAgIHNoclN0aWNreS5jc3MoJ2JvdHRvbScsIGZiYW5lckhlaWdodCk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIDwvc2NyaXB0Pg0KICAgIDwvZGl2Pg0KICAgIDwhLS0gZTpuZXh0QXJ0aWNsZVJlcG8gLS0+DQoNCiAgICA8IS0tIFM6ZGV0aWsuanMgLS0+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9kZXRpay52My4yLmpzP3Y9MjAyNDA4MDIxNTQ0MyI+PC9zY3JpcHQ+DQogICAgPCEtLSBTOmRldGlrLmpzIC0tPg0KDQogICAgPHNjcmlwdD4NCiAgICAgICAgbGV0IGluaXRlZG9lbWJlZGl0cHYyID0gZmFsc2U7DQogICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICBpZiAoaW5pdGVkb2VtYmVkaXRwdjIpIHsgcmV0dXJuOyB9DQogICAgICAgICAgICBpZiAod2luZG93LnNjcm9sbFkgPD0gMTAwKSB7IHJldHVybjsgfQ0KICAgICAgICAgICAgaW5pdGVkb2VtYmVkaXRwdjIgPSB0cnVlOw0KICAgICAgICAgICAgZ2V0U2NyaXB0KCdodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL29lbWJlZC5pdHAudjIuanM/dj0yMDI0MDgwMjE1NDQzJywgZnVuY3Rpb24gKCkgew0KDQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSkNCg0KICAgIDwvc2NyaXB0Pg0KDQogICAgPCEtLSBTOnRhZ2Zvb3QgLS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgdmFyIGxvYWRTY3JpcHRBc3luYyA9IGZ1bmN0aW9uICh1cmkpIHsNCiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7DQogICAgICAgICAgICAgICAgdmFyIHRhZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOw0KICAgICAgICAgICAgICAgIHRhZy5zcmMgPSB1cmk7DQogICAgICAgICAgICAgICAgdGFnLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgICAgICAgICB0YWcub25sb2FkID0gKCkgPT4gew0KICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7DQogICAgICAgICAgICAgICAgfTsNCiAgICAgICAgICAgICAgICB2YXIgZmlyc3RTY3JpcHRUYWcgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0JylbMF07DQogICAgICAgICAgICAgICAgZmlyc3RTY3JpcHRUYWcucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodGFnLCBmaXJzdFNjcmlwdFRhZyk7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfQ0KICAgICAgICB2YXIgc2NyaXB0TG9hZGVkID0gbG9hZFNjcmlwdEFzeW5jKCdodHRwczovL25ld3Jldml2ZS5kZXRpay5jb20vZGVsaXZlcnkvYXN5bmNqcy5waHAnKTsNCg0KICAgICAgICBzY3JpcHRMb2FkZWQudGhlbihmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB3aW5kb3cucmV2aXZlQXN5bmNbIjBjY2VlY2I5Y2FlOWY1MWEzMTEyM2M1NDE5MTBkNTliIl0uYWRkRXZlbnRMaXN0ZW5lcignYWZ0ZXJSZW5kZXJCYW5uZXInLCBydkNhbGxiYWNrQmFubmVyKTsNCg0KICAgICAgICAgICAgZnVuY3Rpb24gcnZDYWxsYmFja0Jhbm5lcihkYXRhKSB7DQoNCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhkYXRhKTsNCiAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgZGF0YS5kZXRhaWwubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgICAgICAgY2hlY2tCYW5uZXJBdmFpbGFibGUoZGF0YS5kZXRhaWxbaV0sIDkyMywgaW50ZXJzdGl0aWFsLCB0cnVlKTsNCiAgICAgICAgICAgICAgICAgICAgY2hlY2tCYW5uZXJBdmFpbGFibGUoZGF0YS5kZXRhaWxbaV0sIDkyMSwgZGV0ZWN0SGVpZ2h0QmwsIHRydWUpOw0KICAgICAgICAgICAgICAgICAgICBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhLmRldGFpbFtpXSwgMTA5NiwgZGV0ZWN0V2lkdGhOYXZBZHMsIHRydWUpOw0KICAgICAgICAgICAgICAgICAgICBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhLmRldGFpbFtpXSwgMTQ4MiwgZGV0ZWN0V2lkdGhOYXZBZHMsIHRydWUpOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgfQ0KICAgICAgICB9KTsNCg0KICAgICAgICBmdW5jdGlvbiBhZHNfcmVtb3ZlKHBhcmFtKSB7DQogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChwYXJhbSkucmVtb3ZlKCk7DQogICAgICAgIH0NCg0KICAgICAgICBmdW5jdGlvbiBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhRGV0YWlsLCBjaGVja1pvbmUsIGNhbGxGdW5jLCBhdmFpbGFibGUgPSBmYWxzZSkgew0KICAgICAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgICAgICB2YXIgc2hvdyA9IGF2YWlsYWJsZSA/IDEgOiAwOw0KICAgICAgICAgICAgICAgIGlmIChzaG93ID09IDApIHsNCiAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGFEZXRhaWwuem9uZWlkID09IGNoZWNrWm9uZSAmJiBkYXRhRGV0YWlsLmJhbm5lcmlkID09IHNob3cpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxGdW5jKCk7DQogICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnem9uZSBpZCBhZGp1c3RtZW50IDogJyArIGNoZWNrWm9uZSk7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgaWYgKHNob3cgPT0gMSkgew0KICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YURldGFpbC56b25laWQgPT0gY2hlY2tab25lICYmIGRhdGFEZXRhaWwuYmFubmVyaWQgPj0gc2hvdykgew0KICAgICAgICAgICAgICAgICAgICAgICAgY2FsbEZ1bmMoKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCd6b25lIGlkIGFkanVzdG1lbnQgOiAnICsgY2hlY2tab25lKTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgIDwvc2NyaXB0Pg0KDQoNCg0KICAgIDwhLS0gUGl4ZWwgVGFnIEF1ZGllbmNlIERGUCAtLT4NCg0KICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4NCiAgICAgICAgdmFyIGF4ZWwgPSBNYXRoLnJhbmRvbSgpICsgJyc7DQogICAgICAgIHZhciBhID0gYXhlbCAqIDEwMDAwMDAwMDAwMDAwOw0KICAgICAgICBkb2N1bWVudC53cml0ZSgnPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPScgKyBhICsgJztkY19zZWc9MTAxMDc5MTM4OTtnZW49TWFsZT8iIHdpZHRoPTEgaGVpZ2h0PTEgYm9yZGVyPTAvPicpOw0KICAgIDwvc2NyaXB0Pg0KICAgIDxub3NjcmlwdD4NCiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPTE7ZGNfc2VnPTEwMTA3OTEzODk7Z2VuPU1hbGU/Ig0KICAgICAgICAgICAgd2lkdGg9MSBoZWlnaHQ9MSBib3JkZXI9MCAvPg0KICAgIDwvbm9zY3JpcHQ+DQoNCiAgICA8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+DQogICAgICAgIHZhciBheGVsID0gTWF0aC5yYW5kb20oKSArICcnOw0KICAgICAgICB2YXIgYSA9IGF4ZWwgKiAxMDAwMDAwMDAwMDAwMDsNCiAgICAgICAgZG9jdW1lbnQud3JpdGUoJzxpbWcgc3JjPSJodHRwczovL3B1YmFkcy5nLmRvdWJsZWNsaWNrLm5ldC9hY3Rpdml0eTtkY19pdT0vNDkwNTUzNi9ERlBBdWRpZW5jZVBpeGVsO29yZD0nICsgYSArICc7ZGNfc2VnPTEwMDk4NzU3MjQ7Z2VuPUZlbWFsZT8iIHdpZHRoPTEgaGVpZ2h0PTEgYm9yZGVyPTAvPicpOw0KICAgIDwvc2NyaXB0Pg0KICAgIDxub3NjcmlwdD4NCiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPTE7ZGNfc2VnPTEwMDk4NzU3MjQ7Z2VuPUZlbWFsZT8iDQogICAgICAgICAgICB3aWR0aD0xIGhlaWdodD0xIGJvcmRlcj0wIC8+DQogICAgPC9ub3NjcmlwdD4NCg0KICAgIDwhLS0gRW5kIFBpeGVsIFRhZyBBdWRpZW5jZSBERlAgLS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgZ29vZ2xldGFnLmNtZC5wdXNoKGZ1bmN0aW9uICgpIHsgZ29vZ2xldGFnLmRpc3BsYXkoJ2Rpdi1ncHQtYWQtMTUzNjUxNDU4MzE0MS0wJyk7IH0pOw0KICAgIDwvc2NyaXB0Pg0KICAgIDwhLS0gRTp0YWdmb290IC0tPg0KICAgIDwhLS0gRTpGb290ZXIgLS0+DQoNCiAgICA8IS0tIFM6c3RpY2t5c3RhdGljYmFubmVyIC0tPg0KICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9iYW5uZXIgYWRzLXNsb3QiDQogICAgICAgIHN0eWxlPSJkaXNwbGF5Om5vbmU7IHotaW5kZXg6IDk5OTk7cG9zaXRpb246IGZpeGVkOyBib3R0b206IDA7d2lkdGg6IDEwMCU7IHBhZGRpbmctdG9wOiAzMHB4O3BhZGRpbmctYm90dG9tOiAyMHB4OyBiYWNrZ3JvdW5kOiByZ2IoMjI0IDIyNCAyMjUpOyI+DQogICAgICAgIDxzdHlsZT4NCiAgICAgICAgICAgIC5mb290ZXJfYmFubmVyOjpiZWZvcmUgew0KICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIC5mbG9hdGluZ3NoYXJlLA0KICAgICAgICAgICAgYVtkdHItc2VjPSJiYWNrIHRvIHRvcCJdIHsNCiAgICAgICAgICAgICAgICBib3R0b206IDExMHB4Ow0KICAgICAgICAgICAgfQ0KICAgICAgICA8L3N0eWxlPg0KICAgICAgICA8c3BhbiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgY2xhc3M9InNzYi1jbG9zZSINCiAgICAgICAgICAgIHN0eWxlPSJjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO3Bvc2l0aW9uOiBhYnNvbHV0ZTtyaWdodDogNSU7dG9wOiAzcHg7aGVpZ2h0OiAyMHB4O2JhY2tncm91bmQtY29sb3I6IHdoaXRlO2JvcmRlci1yYWRpdXM6IDUwJTsgei1pbmRleDo5OTk5OTsiPjxpbWcNCiAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vYXdzY2Ruc3RhdGljLmRldGlrLm5ldC5pZC9saXZlL19ybWJhc3NldHMvc3NiL2Nsb3NlLXJvdW5kZWQucG5nIg0KICAgICAgICAgICAgICAgIHN0eWxlPSJ3aWR0aDogMjBweDtoZWlnaHQ6IDIwcHg7Ij48L3NwYW4+DQogICAgICAgIDxkaXYgY2xhc3M9InNzYi1jb250ZW50IiBzdHlsZT0ibWluLWhlaWdodDogNTBweDsiPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDwhLS0gPHNjcmlwdD4NCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgJCgiLnNzYi1jbG9zZSIpLmNsaWNrKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCIuZm9vdGVyX2Jhbm5lciIpLnJlbW92ZSgpOw0KICAgICAgICAgICAgICAgICQoImFbZHRyLXNlYz0nYmFjayB0byB0b3AnXSIpLmFuaW1hdGUoeyAiYm90dG9tIjogIjYwcHgiIH0sIDMwMCk7DQogICAgICAgICAgICAgICAgJCgiLmJhY2stdG9wIikuYW5pbWF0ZSh7ICJib3R0b20iOiAiNjBweCIgfSwgMzAwKTsNCiAgICAgICAgICAgICAgICAkKCIuc3RpY2t5LXNoYXJlIikuY3NzKHsgImJvdHRvbSI6ICIwIiB9KTsNCiAgICAgICAgICAgICAgICAkKCIuZmxvYXRpbmdzaGFyZSIpLmNzcyh7ICJib3R0b20iOiAiNjBweCIsICJtYXJnaW4tYm90dG9tIjogInVuc2V0IiB9KTsNCiAgICAgICAgICAgIH0pOw0KICAgICAgICB9KTsNCiAgICA8L3NjcmlwdD5FOnN0aWNreXN0YXRpY2Jhbm5lciAtLT4NCg0KDQogICAgPCEtLSBDT1JFIFNUWUxFIC0tPg0KDQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvaW5ldDIvbS9jc3Mvc3R5bGUuY3NzP3Y9MjAyNDA4MDIxNTQ0MyIgYXM9InN0eWxlIg0KICAgICAgICBvbmxvYWQ9InRoaXMub25sb2FkPW51bGw7dGhpcy5yZWw9J3N0eWxlc2hlZXQnIj4NCiAgICA8bm9zY3JpcHQ+DQogICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2luZXQyL20vY3NzL3N0eWxlLmNzcz92PTIwMjQwODAyMTU0NDMiPg0KICAgIDwvbm9zY3JpcHQ+DQoNCg0KDQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9saXF1aWRpbWFnZS5qcz92PTIwMjQwODAyMTU0NDMiPjwvc2NyaXB0Pg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvanMvYWRzY2xvc2UuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCg0KICAgIDwhLS0gczpmb290ZXIgYXNzZXQgbWFuYWdlciAtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL2xpbmtjb3BpZWRwb3AuanM/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICBkZWZlcj0iIj48L3NjcmlwdD4NCiAgICA8IS0tIGU6Zm9vdGVyIGFzc2V0IG1hbmFnZXIgLS0+DQogICAgPCEtLSBzOmZvb3RlciBpbmxpbmUgLS0+DQogICAgPHNjcmlwdD4gICAgICAgICAgICBnZXRTY3JpcHQoJ2h0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvanMvem9vbWltZy5qcz92PTIwMjQwODAyMTU0NDMnLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB6b29tX2ltZyh7IHN0YXR1czogdHJ1ZSwgbV92aWV3cG9ydDogMTAgfSk7IC8vWm9vbSBJbWFnZSBTaXplIFZpZXdwb3J0DQogICAgICAgIH0pPC9zY3JpcHQ+DQogICAgPCEtLSBlOmZvb3RlciBpbmxpbmUgLS0+DQo8L2JvZHk+DQoNCjwvaHRtbD4NCjwhLS1yZXBsYWNlZC0tPg==)format("woff2")}.fas{font-family:"Font Awesome 5 Free"}.fas{font-weight:900}@font-face{font-family:"Inter";font-style:normal;font-weight:300;src:;unicode-range:U+0370-03FF}@font-face{font-family:"Inter";font-style:normal;font-weight:300;src:url(data:text/html;base64,DQo8IURPQ1RZUEUgaHRtbD4NCjxodG1sIGxhbmc9ImlkLUlEIj4NCg0KPGhlYWQ+DQogICAgPHN0eWxlPg0KICAgICAgICBhLA0KICAgICAgICBodG1sIHsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24sDQogICAgICAgIHN1cCB7DQogICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUNCiAgICAgICAgfQ0KDQogICAgICAgIGJvZHksDQogICAgICAgIGJ1dHRvbiwNCiAgICAgICAgZmlndXJlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMA0KICAgICAgICB9DQoNCiAgICAgICAgYm9keSwNCiAgICAgICAgaHRtbCB7DQogICAgICAgICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7DQogICAgICAgICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tdHdpdHRlcjpiZWZvcmUsDQogICAgICAgIC5scWQgew0KICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIC5ub3RpZiwNCiAgICAgICAgLm1lZGlhX19saW5rOmJlZm9yZSwNCiAgICAgICAgLm5hdmJhci1maXJzdCAubmF2X19pdGVtLA0KICAgICAgICAubmF2YmFyLXNlY29uZCAubmF2X19pdGVtLA0KICAgICAgICAudGFibGUtd3JhcCB0ZCB7DQogICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLA0KICAgICAgICAubmF2YmFyLXNlY29uZCAubmF2IGEsDQogICAgICAgIHRhYmxlIHRkIHsNCiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3ANCiAgICAgICAgfQ0KDQogICAgICAgIGEsDQogICAgICAgIGlucyB7DQogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIGFydGljbGUsDQogICAgICAgIGZpZ2NhcHRpb24sDQogICAgICAgIGZpZ3VyZSwNCiAgICAgICAgZm9vdGVyLA0KICAgICAgICBoZWFkZXIsDQogICAgICAgIG5hdiB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jaw0KICAgICAgICB9DQoNCiAgICAgICAgaHRtbCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24sDQogICAgICAgIGh0bWwgew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsDQogICAgICAgIH0NCg0KICAgICAgICBhIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IDAgMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dCwgb3BhY2l0eSAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIC4zcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQsIG9wYWNpdHkgLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIC4zcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQsIG9wYWNpdHkgLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dCwgb3BhY2l0eSAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3MgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgYTphY3RpdmUsDQogICAgICAgIGE6Zm9jdXMsDQogICAgICAgIGE6aG92ZXIsDQogICAgICAgIGJ1dHRvbjpmb2N1cyB7DQogICAgICAgICAgICBvdXRsaW5lOiAwDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIHN0cm9uZywNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmQtY2xvc2UsDQogICAgICAgIC5xdW90ZXNpc2lwIGJsb2NrcXVvdGUsDQogICAgICAgIHN0cm9uZyB7DQogICAgICAgICAgICBmb250LXdlaWdodDogNzAwDQogICAgICAgIH0NCg0KICAgICAgICBzdXAgew0KICAgICAgICAgICAgZm9udC1zaXplOiA3NSU7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHRvcDogLS41ZW0NCiAgICAgICAgfQ0KDQogICAgICAgIGltZyB7DQogICAgICAgICAgICBib3JkZXI6IDA7DQogICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24gew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7DQogICAgICAgICAgICBmb250LXNpemU6IDEwMCU7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsOw0KICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgYXBwZWFyYW5jZTogYnV0dG9uOw0KICAgICAgICAgICAgDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19kYXRlLA0KICAgICAgICAuZGV0YWlsX19tZWRpYS1jYXB0aW9uLA0KICAgICAgICAuZm9vdGVyIC5uYXYsDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbSwNCiAgICAgICAgLnF1b3Rlc2lzaXAsDQogICAgICAgIGJvZHkgew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IEhlbHZldGljYS1GRiwgQXJpYWwsIFRhaG9tYSwgc2Fucy1zZXJpZg0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0biwNCiAgICAgICAgYm9keSB7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS40DQogICAgICAgIH0NCg0KICAgICAgICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIgew0KICAgICAgICAgICAgYm9yZGVyOiAwOw0KICAgICAgICAgICAgcGFkZGluZzogMA0KICAgICAgICB9DQoNCiAgICAgICAgdGFibGUgew0KICAgICAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsNCiAgICAgICAgICAgIGJvcmRlci1zcGFjaW5nOiAwDQogICAgICAgIH0NCg0KICAgICAgICA6cm9vdCB7DQogICAgICAgICAgICAtLWt1bGVyLTE6ICMyMTQwOWE7DQogICAgICAgICAgICAtLWt1bGVyLTI6ICMwMDdjYmQ7DQogICAgICAgICAgICAtLWt1bGVyLTM6ICNlZjY3MmY7DQogICAgICAgICAgICAtLWt1bGVyLTE6ICM1NjJiNzc7DQogICAgICAgICAgICAtLWt1bGVyLTI6ICM4MTJlODg7DQogICAgICAgICAgICAtLWt1bGVyLTM6ICNhYTI0OGMNCiAgICAgICAgfQ0KDQogICAgICAgIGJvZHkgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7DQogICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOw0KICAgICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQNCiAgICAgICAgfQ0KDQogICAgICAgICosDQogICAgICAgIDphZnRlciwNCiAgICAgICAgOmJlZm9yZSB7DQogICAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94DQogICAgICAgIH0NCg0KICAgICAgICAuY2xlYXJmaXg6YWZ0ZXIsDQogICAgICAgIC5jbGVhcmZpeDpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIiAiOw0KICAgICAgICAgICAgZGlzcGxheTogdGFibGUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jbGVhcmZpeDphZnRlciB7DQogICAgICAgICAgICBjbGVhcjogYm90aA0KICAgICAgICB9DQoNCiAgICAgICAgYTpob3ZlciB7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSkNCiAgICAgICAgfQ0KDQogICAgICAgIHAgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIGlucyB7DQogICAgICAgICAgICBkaXNwbGF5OiBjb250ZW50cw0KICAgICAgICB9DQoNCiAgICAgICAgdWwgew0KICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMjRweDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICB1bCBsaSB7DQogICAgICAgICAgICBwYWRkaW5nOiA4cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgZm9vdGVyLA0KICAgICAgICBoZWFkZXIgew0KICAgICAgICAgICAgZGlzcGxheTogdGFibGU7DQogICAgICAgICAgICB3aWR0aDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6MTAyNHB4KSB7DQoNCiAgICAgICAgICAgIGZvb3RlciwNCiAgICAgICAgICAgIGhlYWRlciB7DQogICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIGgxLA0KICAgICAgICBoMiwNCiAgICAgICAgaDMsDQogICAgICAgIGg0LA0KICAgICAgICBoNSwNCiAgICAgICAgaDYgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zDQogICAgICAgIH0NCg0KICAgICAgICBoMSB7DQogICAgICAgICAgICBmb250LXNpemU6IDQwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLS1tZCwNCiAgICAgICAgaDIgew0KICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4DQogICAgICAgIH0NCg0KICAgICAgICBoMyB7DQogICAgICAgICAgICBmb250LXNpemU6IDI4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIGg0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgaDUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4DQogICAgICAgIH0NCg0KICAgICAgICBoNiB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb250LXh4cyB7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvbnRhaW5lciB7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygyNnB4IC8gMS40NDQ0NDQ0NDQ0NDQpOw0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygyNnB4IC8gMS40NDQ0NDQ0NDQ0NDQpOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8NCiAgICAgICAgfQ0KDQogICAgICAgIC5ncmlkLXJvdyB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTI2cHggLyA0LjMzMzMzMzMzMzMpOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0yNnB4IC8gNC4zMzMzMzMzMzMzKQ0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94LA0KICAgICAgICAudGFibGUtd3JhcCB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm5vLWd1dHRlciB7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5vLWd1dHRlcj5bY2xhc3MqPWNvbHVtbi1dIHsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2x1bW4tNiwNCiAgICAgICAgLmNvbHVtbi1hdXRvIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDI2cHggLyA0LjMzMzMzMzMzMzMpOw0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygyNnB4IC8gNC4zMzMzMzMzMzMzKQ0KICAgICAgICB9DQoNCiAgICAgICAgLmNvbHVtbi1hdXRvIHsNCiAgICAgICAgICAgIC1tcy1mbGV4OiAwIDAgYXV0bzsNCiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvOw0KICAgICAgICAgICAgd2lkdGg6IGF1dG87DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2x1bW4tNiB7DQogICAgICAgICAgICAtbXMtZmxleDogY2FsYyg2IC8gMTIpOw0KICAgICAgICAgICAgZmxleDogMCAwIGNhbGMoMTAwJSAvICgxMiAvIDYpKTsNCiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC8gKDEyIC8gNikpDQogICAgICAgIH0NCg0KICAgICAgICB0YWJsZSB0ZCB7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjNiM2IzOw0KICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZS13cmFwIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsNCiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaA0KICAgICAgICB9DQoNCiAgICAgICAgLmxxZCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tZGVmYXVsdCwNCiAgICAgICAgYnV0dG9uIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxxZCBpbWcgew0KICAgICAgICAgICAgZGlzcGxheTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94IHsNCiAgICAgICAgICAgIGhlaWdodDogMDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAuNHMgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLA0KICAgICAgICAuaWNvbiB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94LS0xNi05LA0KICAgICAgICAucmF0aW9ib3gucmF0aW9fMTZfOSB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlDQogICAgICAgIH0NCg0KICAgICAgICAucmF0aW9ib3ggaWZyYW1lIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAucmF0aW9ib3gtLTQtMyB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzUlDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24gew0KICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtby10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4gew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24sDQogICAgICAgIC5pY29uLWl0ZW0gew0KICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tc20gew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgcGFkZGluZzogY2FsYygxMnB4IC8gMykgMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tbWQgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDZweDsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG46aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBvcGFjaXR5OiAuOA0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tb3V0bGluZSB7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwOw0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAwIDAgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24gew0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLS14cyB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4gLmljb24gew0KICAgICAgICAgICAgbWFyZ2luOiAwIDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudCwNCiAgICAgICAgLmxpc3QtY29udGVudF9faXRlbTpsYXN0LWNoaWxkIHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWFycm93LXJpZ2h0OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDY5Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tY2hldnJvbi1kb3duOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDZkIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tYXJyb3ctdXA6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcNmYiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1saXZlLXR2OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDc1Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tY2xvc2U6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcNGYiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1ub3RpZmljYXRpb24tYmc6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcMjIiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1jb21tZW50OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDJkIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tbGluazpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlw3ZSINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWZhY2Vib29rOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDYxIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tdHdpdHRlcjpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICB3aWR0aDogMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogMThweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMTgnIGhlaWdodD0nMTcnIHZpZXdCb3g9JzAgMCAxOCAxNycgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHBzOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J00wLjQyNTk4NiAwLjg3NzQ0MUw2Ljk5NDM3IDkuNjU1OTFMMC4zOTA2MjUgMTYuNzkwMUgxLjg3NThMNy42NTczOSAxMC41Mzk5TDEyLjMzMzkgMTYuNzkwMUgxNy4zOTA2TDEwLjQ1OTggNy41MTY1NUwxNi42MDM4IDAuODc3NDQxSDE1LjExODdMOS43OTY3NiA2LjYzMjUxTDUuNDkxNTEgMC44Nzc0NDFIMC40MzQ4MjdIMC40MjU5ODZaTTIuNjA5NTUgMS45NzM2NEg0LjkzNDU3TDE1LjE5ODIgMTUuNjkzOUgxMi44NzMyTDIuNjA5NTUgMS45NzM2NFonIGZpbGw9J3doaXRlJy8lM0UlM0Mvc3ZnJTNFJTBBIik7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWluc3RhZ3JhbTpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlxlMDA2Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tbGlua2VkaW46YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcZTAwNyINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLXlvdXR1YmU6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcZTAwOCINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLXdoYXRzYXBwOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXGUwMGMiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi10ZWxlZ3JhbTpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlxlMDBlIg0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSwNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSB7DQogICAgICAgICAgICBsZWZ0OiAtMTAwJTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIG9wYWNpdHk6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5jb3B5X3VybCAubm90aWYgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgcGFkZGluZzogOHB4Ow0KICAgICAgICAgICAgbWFyZ2luOiAwOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgei1pbmRleDogNTsNCiAgICAgICAgICAgIGJvdHRvbTogMDsNCiAgICAgICAgICAgIGxlZnQ6IDUwJTsNCiAgICAgICAgICAgIHdpZHRoOiBhdXRvOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOw0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBzY2FsZSgwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIC5ub3RpZjpiZWZvcmUgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZDsNCiAgICAgICAgICAgIHJpZ2h0OiA1MCU7DQogICAgICAgICAgICBtYXJnaW46IDAgLTdweCAwIDA7DQogICAgICAgICAgICB0b3A6IDEwMCU7DQogICAgICAgICAgICBib3JkZXItdG9wOiA4cHggc29saWQgcmVkOw0KICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50Ow0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSB7DQogICAgICAgICAgICB6LWluZGV4OiA1Ow0KICAgICAgICAgICAgcmlnaHQ6IDA7DQogICAgICAgICAgICBoZWlnaHQ6IDA7DQogICAgICAgICAgICB0b3A6IDg4cHg7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSwNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSAubWVkaWEtLWxlZnQgew0KICAgICAgICAgICAgaGVpZ2h0OiA2MnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX190ZXh0IHsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX190aXRsZSB7DQogICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4Ow0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX19saW5rIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGFiZWwgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOw0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xNWRlZywgMGRlZyk7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2tldygtMTVkZWcsIDBkZWcpOw0KICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2tldygtMTVkZWcsIDBkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBza2V3KC0xNWRlZywgMGRlZyk7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXcoLTE1ZGVnLCAwZGVnKTsNCiAgICAgICAgICAgIGxlZnQ6IC04cHg7DQogICAgICAgICAgICB0b3A6IGF1dG87DQogICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAyNHB4Ow0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgYm94LXNoYWRvdzogMCA2cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgLjgpDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCJpbWFnZXMvYmctZGV0aWtwYWdpLndlYnAiKSB0b3AvMTAxJSBuby1yZXBlYXQgI2ZmNGMwNTsNCiAgICAgICAgICAgIGJvdHRvbTogMTAwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAxMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAuMnMgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpX19jb250ZW50IHsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggNTBweCA1MHB4IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1kZXRpa3BhZ2lfX2Nsb3NlIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHotaW5kZXg6IDU7DQogICAgICAgICAgICB3aWR0aDogMjdweDsNCiAgICAgICAgICAgIGhlaWdodDogMjdweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgdG9wOiAtMTNweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7DQogICAgICAgICAgICBjb2xvcjogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSAubWVkaWEtLWxlZnQgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICB3aWR0aDogMTEwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDgwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAzDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmUgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmUgc3BhbiB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZlNjAwOw0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHggMCAyMHB4Ow0KICAgICAgICAgICAgY29sb3I6ICNlZTQwMjM7DQogICAgICAgICAgICBmb250LXNpemU6IDlweDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSBzcGFuOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHdpZHRoOiA3cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDdweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogM3B4Ow0KICAgICAgICAgICAgbGVmdDogN3B4Ow0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgICAgICAgICAgIGFuaW1hdGlvbjogMXMgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICAtbW96LWFuaW1hdGlvbjogMXMgaW5maW5pdGUgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogMXMgaW5maW5pdGUgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjYzcyMDI2DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmVfX2JvZHkgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBnYXA6IDE2cHg7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19sZWZ0IHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19yaWdodCB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZ2FwOiAxNnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4Ow0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX3RleHQgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBsaW5lLWNsYW1wOiAzOw0KICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzOw0KICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICB3aWR0aDogODAlOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogLTdweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19yaWdodF9fYnV0dG9uIHsNCiAgICAgICAgICAgIHdpZHRoOiAyMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX2J1dHRvbl9fcGxheSB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmVfX2JvZHlfX3JpZ2h0X19idXR0b25fX3BhdXNlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgQGtleWZyYW1lcyBsaXZlLWRldGlrcGFnaSB7DQoNCiAgICAgICAgICAgIDAlLA0KICAgICAgICAgICAgMTAwJSB7DQogICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZjYzQzZg0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICA1MCUgew0KICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNjNzIwMjYNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXIgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwIDA7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgLjE1KTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7DQogICAgICAgICAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7DQogICAgICAgICAgICB0b3A6IDA7DQogICAgICAgICAgICB6LWluZGV4OiAyNjsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDENCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3l0LA0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLm1lbnUtYnV0dG9uIHNwYW4sDQogICAgICAgIC5ub3RpZl9fYmFsb24gew0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkDQogICAgICAgIH0NCg0KICAgICAgICAuaGVhZGVyX19sZWZ0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgbGVmdDogLTEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXJfX3JpZ2h0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBoZWlnaHQ6IDQxcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXJfX2JyYW5kIHsNCiAgICAgICAgICAgIGhlaWdodDogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9fYnJhbmQgaW1nIHsNCiAgICAgICAgICAgIGhlaWdodDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbiB7DQogICAgICAgICAgICB3aWR0aDogNDNweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzVweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDhweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbi0tbGl2ZSB7DQogICAgICAgICAgICBjb2xvcjogIzIxNDA5YQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbi0tbm90aWYgew0KICAgICAgICAgICAgY29sb3I6ICM5OTkNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZW51LWJ1dHRvbiB7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7DQogICAgICAgICAgICB3aWR0aDogNDBweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lbnUtYnV0dG9uX193cmFwIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMTVweDsNCiAgICAgICAgICAgIGxlZnQ6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZW51LWJ1dHRvbiBzcGFuIHsNCiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICAgICAgICAgIGhlaWdodDogMnB4Ow0KICAgICAgICAgICAgd2lkdGg6IDIwcHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMjE0MDlhOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4Ow0KICAgICAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTsNCiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOw0KICAgICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuDQogICAgICAgIH0NCg0KICAgICAgICAubWVudS1idXR0b24gc3BhbjpmaXJzdC1jaGlsZCwNCiAgICAgICAgLnRvcC0wIHsNCiAgICAgICAgICAgIHRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lbnUtYnV0dG9uIHNwYW46bnRoLWNoaWxkKDIpIHsNCiAgICAgICAgICAgIHRvcDogN3B4DQogICAgICAgIH0NCg0KICAgICAgICAubWVudS1idXR0b24gc3BhbjpudGgtY2hpbGQoMykgew0KICAgICAgICAgICAgdG9wOiAxNHB4Ow0KICAgICAgICAgICAgd2lkdGg6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSAubWVudS1idXR0b24gc3BhbjpmaXJzdC1jaGlsZCB7DQogICAgICAgICAgICB0b3A6IDhweDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSAubWVudS1idXR0b24gc3BhbjpudGgtY2hpbGQoMikgew0KICAgICAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgICAgIGxlZnQ6IC02MHB4DQogICAgICAgIH0NCg0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLm1lbnUtYnV0dG9uIHNwYW46bnRoLWNoaWxkKDMpIHsNCiAgICAgICAgICAgIHRvcDogOHB4Ow0KICAgICAgICAgICAgd2lkdGg6IDIwcHg7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTsNCiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5ub3RpZl9fYmFsb24gew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgd2lkdGg6IDIycHg7DQogICAgICAgICAgICBoZWlnaHQ6IDIycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHg7DQogICAgICAgICAgICByaWdodDogLTRweDsNCiAgICAgICAgICAgIHRvcDogMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19kYXRlLA0KICAgICAgICAubWVkaWFfX3RleHQgew0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0LWNvbnRlbnQgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uLA0KICAgICAgICAubGlzdC1jb250ZW50X19pdGVtOmZpcnN0LWNoaWxkIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwOw0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uIC5saXN0LWNvbnRlbnRfX2l0ZW06Zmlyc3QtY2hpbGQgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uIC5saXN0LWNvbnRlbnRfX2l0ZW06bGFzdC1jaGlsZCwNCiAgICAgICAgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdC1jb250ZW50LS1jb2x1bW4gLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZmxleDogMQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCh3aGl0ZSwgYmxhY2spOw0KICAgICAgICAgICAgbWFzay1pbWFnZTogcmFkaWFsLWdyYWRpZW50KHdoaXRlLCBibGFjayk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIC5saWhhdGpnIGEsDQogICAgICAgIC5tZWRpYV9faW1hZ2UgYSwNCiAgICAgICAgLm5hdiBhIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX3RleHQgew0KICAgICAgICAgICAgZmxleDogMTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWMNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYV9fdGl0bGUgew0KICAgICAgICAgICAgbWFyZ2luOiAwOw0KICAgICAgICAgICAgZmxleDogMQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc3VidGl0bGUsDQogICAgICAgIC5tZWRpYV9fc3VidGl0bGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19kYXRlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjUNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYV9fYXV0aG9yIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHotaW5kZXg6IDM7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHg7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBjb2xvcjogIzMzMw0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdpZHRoOiAyNXB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAyNXB4Ow0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2F1dGhvciBhOmhvdmVyIHsNCiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2xpbmsgew0KICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYw0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19saW5rOmJlZm9yZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIGJvdHRvbTogMDsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICB0b3A6IDA7DQogICAgICAgICAgICByaWdodDogMDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICB6LWluZGV4OiAyDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2xhYmVsIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogNHB4Ow0KICAgICAgICAgICAgbGVmdDogNHB4Ow0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWEtLWxlZnQsDQogICAgICAgIC50ZXh0LWxpc3Qgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LA0KICAgICAgICAuYm94LWFkcywNCiAgICAgICAgLnRleHQtbGlzdCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYS0tbGVmdCB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQNCiAgICAgICAgfQ0KDQogICAgICAgIC50ZXh0LWxpc3Qgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLnRleHQtbGlzdF9fZGF0YSB7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1hZHMgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7DQogICAgICAgICAgICB6LWluZGV4OiAxOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1hZHMtLWNvbnRhaW5lciB7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygtMjZweCAvIDEuNDQ0NDQ0NDQ0NDQ0KTsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygtMjZweCAvIDEuNDQ0NDQ0NDQ0NDQ0KQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90IHsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBtYXJnaW46IDAgYXV0bzsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3ZjcNCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdD4qIHsNCiAgICAgICAgICAgIGZsZXg6IDEgMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90IGltZyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBoZWlnaHQ6IGF1dG8NCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgY29udGVudDogIkFkdmVydGlzZW1lbnQiOw0KICAgICAgICAgICAgbGVmdDogNTAlOw0KICAgICAgICAgICAgdG9wOiA1MCU7DQogICAgICAgICAgICBoZWlnaHQ6IDUwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAtMTsNCiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHdpZHRoPSczMicgaGVpZ2h0PSczMicgdmlld0JveD0nMCAwIDMyIDMyJyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHhtbG5zOnhsaW5rPSdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJyUzRSUzQ3JlY3Qgb3BhY2l0eT0nMC4yJyB3aWR0aD0nMzInIGhlaWdodD0nMzInIGZpbGw9J3VybCglMjNwYXR0ZXJuMCknLyUzRSUzQ2RlZnMlM0UlM0NwYXR0ZXJuIGlkPSdwYXR0ZXJuMCcgcGF0dGVybkNvbnRlbnRVbml0cz0nb2JqZWN0Qm91bmRpbmdCb3gnIHdpZHRoPScxJyBoZWlnaHQ9JzEnJTNFJTNDdXNlIHhsaW5rOmhyZWY9JyUyM2ltYWdlMCcgdHJhbnNmb3JtPSdzY2FsZSgwLjAxNTYyNSknLyUzRSUzQy9wYXR0ZXJuJTNFJTNDaW1hZ2UgaWQ9J2ltYWdlMCcgd2lkdGg9JzY0JyBoZWlnaHQ9JzY0JyB4bGluazpocmVmPSdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQU1BQUFDZHQ0SHNBQUFBQVhOU1IwSUIyY2tzZndBQUFBbHdTRmx6QUFBTEV3QUFDeE1CQUpxY0dBQUFBWjVRVEZSRkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWx2UW1QZ0FBQUlwMFVrNVRBQlZUZnFYTDMrejVNNDNTL3Y4TmM5VVFnTzRCWWVvZXhEdnBZZ09Pc1ZncU9EY1IvY3gwRmdKSGllWXhCVi9vWkJQeVJQczhkY0NWd2IyTUtEMlNmSjZCUHlZYXlLdlVRU1d5aEdlYmg3eWZscTkvclpESk5nNEg0Tk5SWHFiOHRBbldvR3pPK1BiRlhVc01IZGdmNURDL3cxQlBMZWNjM01ZNll3U0s2eVB0RDNMUWk4cW5mVklZdUV5S0R3QUFBdXhKUkVGVWVKeWxWK2QvMHpBUVZiYVRTSEgyYmltUVF0Z1V3Z2d0QVZvb3BleFNhRXZabyt5OXdncGx3MzlOYkRtT3JIRjJmdHpIbC9kZUxPbDB1a05JRVQ1L0lCZ0tSelF0RWc0RkEzNmZpaWVQYUN5T2lTTndQQmIxcWs3b1NTS05wSjd3SUUrbE0zSzVFWmwweWtXZXplWFZjaVB5dVN5a0x4Umh1UkhGZ2xwZktydnJDU21YVlBxSzVrVlBpRmFSeXF0RDN1UkdERlVsK21IdmVrS0dSWWNCL3QvOEJtSDlFSHZOaUJscldZemJoeEs0Zitzb2FUMkxhWTZ6S01Ebkp6TWdaU1lmc2k3NUl6VWd4WDVPNW1DOXdvRGtldnFVUy82ckRQSzltNVYyMGFzTVNKcmlDZUQrd2dZWldoOTBONzNTZ09nbXJxZy9YZ3lTQmh4VkM3V2Fpd0V4Nm1STUxoN2RFTjJZcmZzMmJkNENHY1M2Y0Z3bUwyNjFrMlRiOWgxcWczaTMvbU1SMW5ZNkNsOXFUR21BZmNndm9ydDJJMmxJRElnZkJRU3NzVWV1bHhvRVVGREE5aXIwVW9NZ0d1V2hmYjMxUi9jM0Q0eFB1QmlFVUppSERsSjJ0V1h1YnVNUWJCQkdFZjRETFBiaEhuQUVOSWdndnBaWnRXN1NCaHBUa0lFbUdCeWw1R045WkJvMjRKWnduSEpuV093RXVBUnVFMmNwOXlTTG5RSTNNZVFFVGxQdU5JdkZ3R1BrRXVrTTVaNWxzWE5nSW5HcGZKNXk1MWlzQlJoYzRDL1RQT1ZlWkRFZE1QRHoxL2tTNVRwc0Y5UUczZXZNRlpUR29zbGR1aXg0U2cyV2tWRFNybER5MVQ0eUF4Z1lCOFFWMVd1VVhMZFRjUjY2QzJiejZTenIxNjI4RzdNY2J0d0VERzZaT1BldzNMYm8xVHQzVis3ZGY0QVFZRURQaDN2YThFTmJ3ZldVNHRQMmlQN0FQYTZSeDBnZXFzZFZlTjZmUFBWbVVMWWJaNzdCZVBiY3FWeVNHOWdOaHRqaU5NYVp4bjdpaGZ4bGVzbHNrZGhrNVZzbDgvZlVxOWthZVYwdzQ0MkQ4ZllkKzVHeU5tK2wzWHpmcm9tNDllc0g1ekxCUmxNV0gva3RIckRWYmZINkFadnR1VS9pS1EvUTd1UFBkVkdQL252Z1FGNUhuczZrU3U5cDZNTE5MMnE5TWZaMVlIbW5BbzU5Q0I0ODhXcmdxNHZjQ05Yb2k1ZS9MWHFRbThFUDN4amo3ejhXM0hWczlNYi8ybXI3NTYvZmYvNnFlUDhBSUpHN1ZBU0g1QUFBQUFBQVNVVk9SSzVDWUlJPScvJTNFJTNDL2RlZnMlM0UlM0Mvc3ZnJTNFIik7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0Ow0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDRweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjRweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDNweCAwOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIGNvbG9yOiAjOTk5Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3RfX25hbWUgew0KICAgICAgICAgICAgZGlzcGxheTogbm9uZTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSA0MHB4KTsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4Ow0KICAgICAgICAgICAgei1pbmRleDogLTE7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBjb2xvcjogI2NjYw0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1zbWIgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MHB4Ow0KICAgICAgICAgICAgei1pbmRleDogMjsNCiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgY2FsYyg0cHggLyAyKSA0cHggMCByZ2JhKDAsIDAsIDAsIC4xNSk7DQogICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5Ow0KICAgICAgICAgICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5Ow0KICAgICAgICAgICAgdG9wOiAwDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtbWItY29udGFpbmVyIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiA1MDZweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICAgICAgICAgICAgY2xpcDogcmVjdChhdXRvLCBhdXRvLCBhdXRvLCBhdXRvKTsNCiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLWJiLA0KICAgICAgICAuYWRzLXNsb3QtLW1iIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLW1iIHsNCiAgICAgICAgICAgIHdpZHRoOiAzMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogNDgwcHg7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiAyNnB4ICFpbXBvcnRhbnQ7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDsNCiAgICAgICAgICAgIHotaW5kZXg6IDEgIWltcG9ydGFudDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvYWRzL21lZ2EtYmlsbGJvYXJkLXBsYWNlaG9sZGVyLndlYnAiKQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1iYiB7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGhlaWdodDogMTU2cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL2Fkcy9iaWxsYm9hcmQtcGxhY2Vob2xkZXIud2VicCIpOw0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNw0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1zYiB7DQogICAgICAgICAgICB3aWR0aDogMzAwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDI1MHB4DQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLWliIHsNCiAgICAgICAgICAgIHdpZHRoOiAzMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogNTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmQgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MjRweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICBib3R0b206IDA7DQogICAgICAgICAgICByaWdodDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHAgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBmb250LXNpemU6IDEwcHg7DQogICAgICAgICAgICBwYWRkaW5nOiAycHggMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAubWVnYWJpbGxib2FyZC1jbG9zZSB7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICByaWdodDogY2FsYyg1MCUgLSAxNjBweCk7DQogICAgICAgICAgICBwYWRkaW5nOiA1cHggMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZ3QtOCB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLnBkdC0xMiB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucGRiLTEyIHsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5wZHQtMTYgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDE2cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLnBkYi0xNiB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAubWd0LTE2IHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLm1nYi0xNiB7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC53LTEwMCB7DQogICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuZmxleC1jZW50ZXIgew0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuYm94X190aXRsZSwNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSAubWVkaWFfX2xhYmVsLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGluaywNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nLA0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnLXRpdGxlLA0KICAgICAgICAuZGV0YWlsX19zdWJ0aXRsZSwNCiAgICAgICAgLmZvbnQtZmFtaWx5LWJhc2UtMiwNCiAgICAgICAgLm1lZGlhX19zdWJ0aXRsZSwNCiAgICAgICAgLm1lZGlhX190aXRsZSwNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiBhIHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDANCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXZfX2l0ZW0sDQogICAgICAgIC5kZXRhaWxfX2RhdGUsDQogICAgICAgIC5kZXRhaWxfX21lZGlhLWNhcHRpb24sDQogICAgICAgIC5mb290ZXIgLm5hdiwNCiAgICAgICAgLmZvb3Rlcl9fY29weSwNCiAgICAgICAgLm1lZGlhX19kYXRlIHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDANCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX3RpdGxlLA0KICAgICAgICAuZGV0YWlsX190aXRsZSwNCiAgICAgICAgLmZvbnQtYmFzZS1zZW1pYm9sZCwNCiAgICAgICAgLmxpbmtzaXNpcCBhLA0KICAgICAgICAubmF2LA0KICAgICAgICAucGFnZV9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90OmJlZm9yZSwNCiAgICAgICAgLmJveF9faGVhZGVyIGEsDQogICAgICAgIC5ib3hfX3RpdGxlLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGFiZWwsDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX19saW5rLA0KICAgICAgICAuYnRuLA0KICAgICAgICAuY29sbGFwc2libGVfX3RvcCwNCiAgICAgICAgLmRldGFpbF9fYXV0aG9yLA0KICAgICAgICAuZGV0YWlsX19ib2R5LXRhZyAubmF2X19pdGVtLA0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnLXRpdGxlLA0KICAgICAgICAuZGV0YWlsX19zdWJ0aXRsZSwNCiAgICAgICAgLmRldGFpbF9fdGl0bGUsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX3RleHQsDQogICAgICAgIC5mb250LWZhbWlseS1iYXNlLTIsDQogICAgICAgIC5mb290ZXIsDQogICAgICAgIC5mb290ZXItdGl0bGUsDQogICAgICAgIC5saW5rc2lzaXAsDQogICAgICAgIC5saXN0X19iZXJpdGFfX2l0ZW1fX2JvdHRvbV9fZGF0ZSwNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX190aXRsZSwNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9fdGl0bGUsDQogICAgICAgIC5tZWRpYV9fYXV0aG9yLA0KICAgICAgICAubWVkaWFfX3N1YnRpdGxlLA0KICAgICAgICAubWVkaWFfX3RpdGxlLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2LWZyYW1lYmFyX190aXRsZSwNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIsDQogICAgICAgIC5wYWdlX190aXRsZSwNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fdG9wLA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3LA0KICAgICAgICAudGV4dC1saXN0IHsNCiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBNb250c2VycmF0LUZGLCBBcmlhbCwgVGFob21hLCBzYW5zLXNlcmlmDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QsDQogICAgICAgIC5hZHMtc2xvdC0tYmIsDQogICAgICAgIC5hZHMtc2xvdC1tYi1jb250YWluZXIsDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUsDQogICAgICAgIC5icmVha2luZy1kZXRpa3BhZ2lfX2Nsb3NlLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fdGV4dCwNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZywNCiAgICAgICAgLmRpc3BsYXktZmxleCwNCiAgICAgICAgLmZvb3Rlcl9fYXBwLXN0b3JlLA0KICAgICAgICAubmF2YmFyLWZpcnN0LA0KICAgICAgICAubm90aWZfX2JhbG9uLA0KICAgICAgICAuc3RpY2t5LXNoYXJlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94Ow0KICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRhZyAubmF2LA0KICAgICAgICAubGlzdC1jb250ZW50X19pdGVtLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2LS1jZW50ZXIgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IHdyYXANCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX2hlYWRlciwNCiAgICAgICAgLmZsZXgtYmV0d2VlbiwNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIsDQogICAgICAgIC5wYWdlX19oZWFkZXIgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IHdyYXA7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QsDQogICAgICAgIC5kZXRhaWxfX25ld3N0YWcsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSwNCiAgICAgICAgLmhlYWRlcl9faWNvbiwNCiAgICAgICAgLmljb24taXRlbSwNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHAsDQogICAgICAgIC50ZXh0LWNlbnRlciB7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LA0KICAgICAgICAuYWRzLXNsb3QtLWJiLA0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpX19jbG9zZSwNCiAgICAgICAgLm5vdGlmX19iYWxvbiwNCiAgICAgICAgLnN0aWNreS1zaGFyZSB7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5jb3B5X3VybCAubm90aWYsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXZfX2l0ZW0sDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50LA0KICAgICAgICAubWVkaWEtLWltYWdlLXJhZGl1cyAubWVkaWFfX2ltYWdlLA0KICAgICAgICAubWVkaWFfX2xhYmVsIHsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaV9fY2xvc2UsDQogICAgICAgIC5jaXJjbGUsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSBzcGFuOmJlZm9yZSwNCiAgICAgICAgLmljb24taXRlbSAuY29tbWVudC1jb3VudCwNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyLA0KICAgICAgICAubmF2X19pdGVtLS1uZXcgYTphZnRlciB7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xvci1ibGFjayB7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSAubWVkaWFfX3RleHQsDQogICAgICAgIC5tZWdhYmlsbGJvYXJkX19zd2lwZSBwIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuY29sb3ItcHVycGxlLWxpZ2h0LTIgew0KICAgICAgICAgICAgY29sb3I6ICM4MTJlODgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zdGlja3ktc2hhcmVfX3dyYXAgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyIGltZywNCiAgICAgICAgLm1lZGlhX19pbWFnZSBhPio+aW1nIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7DQogICAgICAgICAgICB3aWR0aDogYXV0bzsNCiAgICAgICAgICAgIGhlaWdodDogYXV0bzsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICB0b3A6IDUwJTsNCiAgICAgICAgICAgIGxlZnQ6IDUwJTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCkNCiAgICAgICAgfQ0KDQogICAgICAgIC53cmFwLXpvb20gew0KICAgICAgICAgICAgei1pbmRleDogNjY2Ow0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93biwNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlDQogICAgICAgIH0NCg0KICAgICAgICAuaW1nLXpvb21vdXQsDQogICAgICAgIC53cmFwLXpvb20gew0KICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOw0KICAgICAgICAgICAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0Ow0KICAgICAgICAgICAgY3Vyc29yOiAtbW96LXpvb20tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAucF9pbWdfem9vbWluLA0KICAgICAgICAud3JhcC16b29tIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zczsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzOw0KICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcw0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudSB7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDRweDsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgICAgICBtaW4td2lkdGg6IDE1MHB4Ow0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiAxMDAlOw0KICAgICAgICAgICAgbGVmdDogLThweDsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIHotaW5kZXg6IDMNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50IHsNCiAgICAgICAgICAgIG1pbi13aWR0aDogMjAwcHg7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBtYXJnaW46IDhweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudV9fY29udGVudDphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGxlZnQ6IDI4cHg7DQogICAgICAgICAgICB3aWR0aDogMDsNCiAgICAgICAgICAgIGhlaWdodDogMDsNCiAgICAgICAgICAgIHRvcDogMDsNCiAgICAgICAgICAgIGJvcmRlcjogNnB4IHNvbGlkICMwMDA7DQogICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmZmYgI2ZmZjsNCiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7DQogICAgICAgICAgICBib3gtc2hhZG93OiAtMnB4IDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIC4wNSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50LWFydGljbGUgew0KICAgICAgICAgICAgbWluLXdpZHRoOiAyNjBweDsNCiAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7DQogICAgICAgICAgICBwYWRkaW5nOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudS0tcmlnaHQgLmRyb3Bkb3duLW1lbnVfX2NvbnRlbnQ6YWZ0ZXIgew0KICAgICAgICAgICAgbGVmdDogYXV0bzsNCiAgICAgICAgICAgIHJpZ2h0OiAycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51LS1yaWdodCB7DQogICAgICAgICAgICBsZWZ0OiBhdXRvOw0KICAgICAgICAgICAgcmlnaHQ6IC04cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bj4uaWNvbiB7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXMgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gsDQogICAgICAgIC5kZXRhaWxfX21lZGlhLA0KICAgICAgICAuZGV0YWlsX19tdWx0aXBsZS1wYWdpbmcgew0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMThweDsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMThweDsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX2hlYWRlciB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBmb250LXNpemU6IDIzcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX3RpdGxlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNTYyYjc3DQogICAgICAgIH0NCg0KICAgICAgICAuYm94IHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsNCiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4cHg7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveF9faGVhZGVyIGEsDQogICAgICAgIC5uYXYsDQogICAgICAgIC5uYXZfX2l0ZW0gew0KICAgICAgICAgICAgcGFkZGluZzogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveF9fbG9nbyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4Ow0KICAgICAgICAgICAgbWF4LWhlaWdodDogNDVweDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAucGFnZV9faGVhZGVyIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX190aXRsZSB7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBmb250LXNpemU6IDIzcHg7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIgew0KICAgICAgICAgICAgY29sb3I6ICM5OTk7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGEgew0KICAgICAgICAgICAgY29sb3I6ICM5OTk7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIi8iOw0KICAgICAgICAgICAgcGFkZGluZzogMCA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdl9faXRlbTpsYXN0LWNoaWxkIGE6YWZ0ZXIsDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGE6bGFzdC1jaGlsZDphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIg0KICAgICAgICB9DQoNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIgYTpob3ZlciB7DQogICAgICAgICAgICBjb2xvcjogIzMzMw0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdl9faXRlbS0tbmV3IGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICB3aWR0aDogNXB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiA1cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7DQogICAgICAgICAgICBwb3NpdGlvbjogbWlkZGxlOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdl9faXRlbSBhLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2X19pdGVtLA0KICAgICAgICAubmF2X19pdGVtLS1uZXcsDQogICAgICAgIC5uYXZiYXIsDQogICAgICAgIC5uYXZiYXItc2Vjb25kIC5uYXYgYSwNCiAgICAgICAgLm5hdmJhci1zaGFkb3csDQogICAgICAgIC5yZWRpcmVjdCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYgew0KICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsNCiAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiBhIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweCA4cHg7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3ZjcNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZfX2l0ZW0gYSB7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMjRweCA0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3RlciAubmF2X19pdGVtIGEgew0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBjb2xvcjogIzY2Ng0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3RlciAubmF2X19pdGVtIGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIi4iOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiAtMTJweDsNCiAgICAgICAgICAgIHJpZ2h0OiAtNHB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4Ow0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3cgLm5hdmJhci0tc2Nyb2xsIC5uYXZfX2l0ZW06Zmlyc3QtY2hpbGQgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNnB4DQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXNoYWRvdyAubmF2YmFyLS1zY3JvbGwgLm5hdl9faXRlbTpsYXN0LWNoaWxkIHsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdl9faXRlbTpsYXN0LWNoaWxkIGEgew0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdl9faXRlbSB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1maXJzdCAubmF2X19pdGVtLS1hY3RpdmUgYSB7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keS10YWcgLm5hdl9faXRlbSB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwOw0KICAgICAgICAgICAgbWFyZ2luOiA0cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxNnB4Ow0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdiB7DQogICAgICAgICAgICBtYXJnaW46IDI0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci0tc2Nyb2xsIC5uYXYgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDRweDsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdiB7DQogICAgICAgICAgICBoZWlnaHQ6IDQ1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdiwNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiB7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvOw0KICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOw0KICAgICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IG5vd3JhcA0KICAgICAgICB9DQoNCiAgICAgICAgLmJhY2stdG9wLA0KICAgICAgICAubmF2LS1jZW50ZXIgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdjo6LXdlYmtpdC1zY3JvbGxiYXIsDQogICAgICAgIC5uYXZiYXItc2Vjb25kIC5uYXY6Oi13ZWJraXQtc2Nyb2xsYmFyIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXYgew0KICAgICAgICAgICAgbWFyZ2luOiA4cHggLTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlciAubmF2YmFyIHsNCiAgICAgICAgICAgIGhlaWdodDogMzVweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItc2hhZG93OmFmdGVyLA0KICAgICAgICAubmF2YmFyLXNoYWRvdzpiZWZvcmUgew0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICIiDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLS1zY3JvbGwgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW4gIWltcG9ydGFudDsNCiAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbCAhaW1wb3J0YW50Ow0KICAgICAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXdyYXAgew0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3cgew0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMThweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3c6YmVmb3JlIHsNCiAgICAgICAgICAgIHdpZHRoOiAxOHB4Ow0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChyaWdodCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyaWdodCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXNoYWRvdzphZnRlciB7DQogICAgICAgICAgICB3aWR0aDogMjRweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICNmZmYgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5iYWNrLXRvcCB7DQogICAgICAgICAgICB3aWR0aDogNDBweDsNCiAgICAgICAgICAgIGhlaWdodDogNDBweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHJpZ2h0OiA4cHg7DQogICAgICAgICAgICBib3R0b206IDYwcHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwNCwgMjA0LCAyMDQsIC41KTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBmb250LXNpemU6IDIycHg7DQogICAgICAgICAgICB6LWluZGV4OiAxMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJhY2stdG9wIGEgew0KICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24td3JhcCAubGlzdC1jb250ZW50X19pdGVtOmxhc3QtY2hpbGQgew0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX190aXRsZSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIsDQogICAgICAgIC5saW5rc2lzaXAgc3Ryb25nLA0KICAgICAgICAubGlzdC1jb250ZW50LS1jb2x1bW4gLm1lZGlhX190aXRsZSwNCiAgICAgICAgLm1lZGlhX19sYWJlbCB7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX3N1YnRpdGxlLA0KICAgICAgICAubWVkaWFfX3N1YnRpdGxlIHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1rdWxlci0zKQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19sYWJlbCB7DQogICAgICAgICAgICBwYWRkaW5nOiA1cHggMTJweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzcNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYS0tbGVmdCAubWVkaWFfX2ltYWdlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMCAxMnB4IDAgMDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nIC50ZXh0LWxpc3RfX2RhdGEgew0KICAgICAgICAgICAgY29sb3I6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1ibHVlLWJhc2Ugew0KICAgICAgICAgICAgYmFja2dyb3VuZDogIzIxNDA5YTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1ibHVlLWJhc2U6aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4tLWJsdWUtYmFzZS5idG4tLW91dGxpbmUgew0KICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMjE0MDlhOw0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4tLXBhZ2luZyB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1rdWxlci0xKTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1wYWdpbmc6aG92ZXIsDQogICAgICAgIC5pY29uLWl0ZW06aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgew0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2U2ZTZlNjsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19sb2dvIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXJfX2xvZ28gaW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiAxNjBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlcl9fc29jaWFsIHsNCiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXJfX2NvcHkgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlcl9fYm9yZGVyIHsNCiAgICAgICAgICAgIGhlaWdodDogNHB4Ow0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2sNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXItdGl0bGUsDQogICAgICAgIC5mb290ZXJfX2dldC1hcHAgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyLXRpdGxlX19wYXJ0b2Ygew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlci10aXRsZV9fcGFydG9mIGltZyB7DQogICAgICAgICAgICB3aWR0aDogODBweDsNCiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207DQogICAgICAgICAgICBtYXJnaW46IDAgMCAzcHggM3B4DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19hcHAtc3RvcmUgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19hcHAtc3RvcmUgaW1nIHsNCiAgICAgICAgICAgIG1hcmdpbjogMTZweCAycHg7DQogICAgICAgICAgICB3aWR0aDogYXV0bzsNCiAgICAgICAgICAgIGhlaWdodDogMzRweA0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6MzU5cHgpIHsNCiAgICAgICAgICAgIC5mb290ZXJfX2FwcC1zdG9yZSBpbWcgew0KICAgICAgICAgICAgICAgIGhlaWdodDogMjVweA0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJvdHRvbS1zdGlja3kgew0KICAgICAgICAgICAgaGVpZ2h0OiAwDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX3BhZ2Ugew0KICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBtYXJnaW46IDAgMCAxNnB4Ow0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZzogOHB4IDEycHg7DQogICAgICAgICAgICBjb2xvcjogI2Y3ZjdmNzsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MDBweCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC43OSwgLjMzLCAuNjQsIC44Mik7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguNzksIC4zMywgLjY0LCAuODIpDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQgcD5hLA0KICAgICAgICAuZGV0YWlsX190aXRsZSwNCiAgICAgICAgLnJlZGlyZWN0X19jbG9zZS1idG4gew0KICAgICAgICAgICAgY29sb3I6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW1lbnUsDQogICAgICAgIC5zdGlja3ktc2hhcmUgew0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtby10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX3BhZ2UgaDMsDQogICAgICAgIC5yZWRpcmVjdF9fcGFnZSBoNCB7DQogICAgICAgICAgICBjb2xvcjogI2Y3ZjdmNw0KICAgICAgICB9DQoNCiAgICAgICAgLnJlZGlyZWN0X19wYWdlIGg0IHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7DQogICAgICAgICAgICBtYXgtaGVpZ2h0OiA0OHB4Ow0KICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3ggIWltcG9ydGFudDsNCiAgICAgICAgICAgIGxpbmUtY2xhbXA6IDM7DQogICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7DQogICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOw0KICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbA0KICAgICAgICB9DQoNCiAgICAgICAgLnJlZGlyZWN0X19jbG9zZSB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX2Nsb3NlLWJ0biB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgd2lkdGg6IDMwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDMwcHg7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2UzZjVmZTk5Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhX19pbWFnZS5pbWcteHNzIHsNCiAgICAgICAgICAgIHdpZHRoOiA1NnB4DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhX190ZXh0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWRpcmVjdCAubWVkaWFfX3RleHQubm9tYXJnaW4gew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOw0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWRpcmVjdCAubWVkaWFfX3RleHQubm9tYXJnaW4+OmZpcnN0LWNoaWxkIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhIHsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLnN0aWNreS1zaGFyZSB7DQogICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI3Ow0KICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkOw0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgaGVpZ2h0OiAwOw0KICAgICAgICAgICAgYm90dG9tOiAtMTAwcHg7DQogICAgICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLmJveC1tZW51LA0KICAgICAgICAuc3RpY2t5LXNoYXJlLS1zdGlja2VkIHsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7DQogICAgICAgICAgICBvcGFjaXR5OiAxDQogICAgICAgIH0NCg0KICAgICAgICAuc3RpY2t5LXNoYXJlX193cmFwIHsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOHB4Ow0KICAgICAgICAgICAgYm94LXNoYWRvdzogMCBjYWxjKDRweCAvIDIpIDRweCAwIHJnYmEoMCwgMCwgMCwgLjE1KTsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zdGlja3ktc2hhcmUtLXN0aWNrZWQgew0KICAgICAgICAgICAgYm90dG9tOiAwOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7DQogICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsIC5zdGlja3ktc2hhcmUgLmljb24taXRlbSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB3aWR0aDogMjZweDsNCiAgICAgICAgICAgIGhlaWdodDogMjZweDsNCiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbSAuY29tbWVudC1jb3VudCB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICBmb250LXNpemU6IDEwcHg7DQogICAgICAgICAgICB0b3A6IC00cHg7DQogICAgICAgICAgICByaWdodDogLTRweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDAgNHB4Ow0KICAgICAgICAgICAgbWluLXdpZHRoOiAxNXB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2VkMTMxYg0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9faGVhZGVyIHsNCiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4Ow0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgLmRldGFpbF9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2RhdGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX3N1YnRpdGxlIHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7DQogICAgICAgICAgICBjb2xvcjogI2Y3OTMxZA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYXV0aG9yIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19sYWJlbCB7DQogICAgICAgICAgICBjb2xvcjogI2FhMjQ4Yw0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbWVkaWEgew0KICAgICAgICAgICAgcGFkZGluZzogMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbWVkaWEtaW1hZ2U+aW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbWluLWhlaWdodDogMjExcHg7DQogICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB6LWluZGV4OiAyDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19tZWRpYS1pbWFnZSAuaW1nLXpvb21vdXQgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX21lZGlhLWNhcHRpb24gew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMThweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc2hhcmUsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keSwNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0PnA6bnRoLW9mLXR5cGUoMikgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0IGltZyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5wOmZpcnN0LW9mLXR5cGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQ+aDIsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5oMyB7DQogICAgICAgICAgICBmb250LXNpemU6IDE4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5oNCwNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0Pmg1LA0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQ+aDYsDQogICAgICAgIC5saW5rc2lzaXAgYSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dCB0YWJsZSB7DQogICAgICAgICAgICB3aWR0aDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc2hhcmUgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZyB7DQogICAgICAgICAgICBtYXJnaW46IDE2cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZy10aXRsZSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBmbGV4OiAxDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnIGltZyB7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nIHsNCiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMThweCAwOw0KICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBjb2xvcjogIzk5OTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwLA0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXBfdGFibGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEyMCU7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmxpbmtzaXNpcCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBtYXJnaW46IDhweCAwOw0KICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjNTYyYjc3DQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIHRkLA0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXBfdGFibGUgdGQsDQogICAgICAgIC5xdW90ZXNpc2lwIHRkIHsNCiAgICAgICAgICAgIGJvcmRlcjogbm9uZTsNCiAgICAgICAgICAgIHBhZGRpbmc6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5saW5rc2lzaXAgYSB7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3NzsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIC5saWhhdGpnIHsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpbmtzaXNpcCAubGloYXRqZyBzdHJvbmcgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5xdW90ZXNpc2lwIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwOw0KICAgICAgICAgICAgcGFkZGluZzogMDsNCiAgICAgICAgICAgIGJvcmRlcjogMDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fYm90dG9tLA0KICAgICAgICAucHJvZmlsZV9fYm94X190b3Agew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWwNCiAgICAgICAgfQ0KDQogICAgICAgIC5xdW90ZXNpc2lwIGJsb2NrcXVvdGUgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDsNCiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweCAwIDI0cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMTIwJTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICAucXVvdGVzaXNpcCBibG9ja3F1b3RlOmJlZm9yZSB7DQogICAgICAgICAgICBmb250LWZhbWlseTogZGV0aWtuZXR3b3JrLUZGOw0KICAgICAgICAgICAgY29udGVudDogIlw3YiI7DQogICAgICAgICAgICBmb250LXNpemU6IDQ1cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGNvbG9yOiAjOTk5DQogICAgICAgIH0NCg0KICAgICAgICAucXVvdGVzaXNpcCBjaXRlIHsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwX3RhYmxlIHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7DQogICAgICAgICAgICBjb2xvcjogIzY2NjsNCiAgICAgICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQNCiAgICAgICAgfQ0KDQogICAgICAgIC5waWNfYXJ0aWtlbF9zaXNpcCB7DQogICAgICAgICAgICBjb2xvcjogIzk5OQ0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwIC5waWMgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXAgLnBpYyBpbWcgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IGF1dG87DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICB0b3A6IGF1dG87DQogICAgICAgICAgICBsZWZ0OiBhdXRvOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogbm9uZTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bw0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwIC5waWM+c3BhbiB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2DQogICAgICAgIH0NCg0KICAgICAgICAuc2lzaXBfZW1iZWRfc29zbWVkIGlmcmFtZSB7DQogICAgICAgICAgICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDBweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucHJvZmlsZV9fYm94IHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7DQogICAgICAgICAgICBtYXJnaW46IDI0cHggMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fdG9wIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzc7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGhlaWdodDogNDFweDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweCA4cHggMCAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAucHJvZmlsZV9fYm94X19ib3R0b20gew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7DQogICAgICAgICAgICBjb2xvcjogIzAwMDsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbV9faW1nIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMTJweDsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fYm90dG9tX19pbWcgaW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiA0OHB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiA0OHB4Ow0KICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlOw0KICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbV9fdGV4dCB7DQogICAgICAgICAgICBtYXJnaW46IDEycHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbSB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsNCiAgICAgICAgICAgIG1hcmdpbjogNXB4IDRweDsNCiAgICAgICAgICAgIHdpZHRoOiAzMnB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAzMnB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4Ow0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsIC5pY29uLWl0ZW0gew0KICAgICAgICAgICAgd2lkdGg6IDM1cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDM1cHg7DQogICAgICAgICAgICBwYWRkaW5nOiAycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2ZiIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzYzVhOTkNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3R3IHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2lnIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1ODUxZGI7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LXJhZGlhbC1ncmFkaWVudChsZWZ0IGJvdHRvbSwgZWxsaXBzZSBjb3ZlciwgI2ZmZGM4MCAxNSUsICNlMTMwNmMgNTUlLCAjNTg1MWRiIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQobGVmdCBib3R0b20sIGVsbGlwc2UgY292ZXIsICNmZmRjODAgMTUlLCAjZTEzMDZjIDU1JSwgIzU4NTFkYiAxMDAlKTsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGxlZnQgYm90dG9tLCAjZmZkYzgwIDE1JSwgI2UxMzA2YyA1NSUsICM1ODUxZGIgMTAwJSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2luIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDc3YjUNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3dhIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogIzI1ZDM2Ng0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbV9fdGVsZSB7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwOGMNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2xpbmsgew0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjOTk5DQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHsNCiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgY29sb3I6ICM3MjczNzQ7DQogICAgICAgICAgICBmb250LXNpemU6IDEzcHg7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuDQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHRyIHRkIHsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMWYyZjM7DQogICAgICAgICAgICBwYWRkaW5nOiA3cHggMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLnRhYmxlU3BlYyB0ciB0ZDpmaXJzdC1jaGlsZCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmOGY5Ow0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIHdpZHRoOiA0MCUNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHIgdGQ6bnRoLWNoaWxkKDIpIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHIgdGQudGl0bGUgew0KICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS41Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHRyOmhvdmVyIHRkIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZTYNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHI6aG92ZXIgdGQudGl0bGUgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fdGV4dCwNCiAgICAgICAgLmZvb3Rlcl9fYm9yZGVyIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzc7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM1NjJiNzcgNTAlLCAjYWEyNDhjIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNTYyYjc3IDUwJSwgI2FhMjQ4YyAxMDAlKTsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM1NjJiNzcgNTAlLCAjYWEyNDhjIDEwMCUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm90dG9tLXN0aWNreSB7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICBib3R0b206IDA7DQogICAgICAgICAgICBsZWZ0OiAwOw0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICB6LWluZGV4OiAyNg0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19pbWFnZS5pbWcteHNzIHsNCiAgICAgICAgICAgIHdpZHRoOiA1NnB4DQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGUgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNzsNCiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHg7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgICAgICAgICAgb3V0bGluZTogMDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xsYXBzaWJsZV9fdG9wIHsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGVfX3RvcDo6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImltYWdlcy9wYXRoLWRvd24ucG5nIik7DQogICAgICAgICAgICBmbG9hdDogcmlnaHQ7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsNCiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQogICAgICAgICAgICBoZWlnaHQ6IDEzcHg7DQogICAgICAgICAgICB3aWR0aDogMjNweDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5hY3RpdmUgLmNvbGxhcHNpYmxlX190b3A6OmFmdGVyIHsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xsYXBzaWJsZV9fY29udGVudCB7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IC41cyBlYXNlLW91dDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICBtYXgtaGVpZ2h0OiAwOw0KICAgICAgICAgICAgcGFkZGluZzogMCAxNnB4DQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGVfX2NvbnRlbnQgYSB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jaw0KICAgICAgICB9DQoNCiAgICAgICAgLm1ndC0wIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmZzLTE0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuYWN0aXZlX19jb250ZW50IHsNCiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwMDBweDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzIGVhc2UtaW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xvcl9fYmx1ZSB7DQogICAgICAgICAgICBjb2xvcjogIzIxNDA5YSAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucG9zaXRpb24tcmVsYXRpdmUgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0X19iZXJpdGEgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7DQogICAgICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdF9fYmVyaXRhX190aXRsZSB7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgICAgICBmb250LXdlaWdodDogNjAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0X19iZXJpdGFfX2l0ZW0gew0KICAgICAgICAgICAgd2lkdGg6IDE1MHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdF9fYmVyaXRhX19pdGVtX190b3Agew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fdG9wX19sb2dvIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMnB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX190aXRsZSB7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgICAgICBmb250LXdlaWdodDogNTAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7DQogICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA0cHg7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX19kYXRlIHsNCiAgICAgICAgICAgIGNvbG9yOiAjOWI5YjliOw0KICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxM3B4Ow0KICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0uMjJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmtvbWVudGFyX2JveCB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogOTBweA0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsNCiAgICAgICAgICAgIC5rb21lbnRhcl9ib3ggew0KICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2MHB4DQogICAgICAgICAgICB9DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZmxleC1mbG93OiB3cmFwOw0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faXRlbSBhLA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5zYl9jbG9zZSB7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhcl9fdGl0bGUsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgLmdldF9hcHAsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgc3Ryb25nLA0KICAgICAgICAudXNlci1sb2dfX2xvZ2luLA0KICAgICAgICAudXNlci1sb2dfX25hbWUgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMA0KICAgICAgICB9DQoNCiAgICAgICAgLnNtYXJ0YmFubmVyX25ldyAuc2JfY2xvc2Ugew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOw0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheSB7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTsNCiAgICAgICAgICAgIHRvcDogNTNweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgYm90dG9tOiAwOw0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIG1hcmdpbjogMTJweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweDsNCiAgICAgICAgICAgIHotaW5kZXg6IDEwMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW92ZXJsYXlfX2hlYWRlciB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZsZXgtZmxvdzogd3JhcDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheV9faGVhZGVyLW5hdiB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICByaWdodDogMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDMNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheS0tYXJyb3ctbG9nbzphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHdpZHRoOiAwOw0KICAgICAgICAgICAgaGVpZ2h0OiAwOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgbGVmdDogMTA0cHg7DQogICAgICAgICAgICBib3JkZXI6IDhweCBzb2xpZCAjMDAwOw0KICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmZmICNmZmY7DQogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpOw0KICAgICAgICAgICAgYm94LXNoYWRvdzogLTNweCAzcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAuMDUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW92ZXJsYXlfX2JvZHkgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiA1MHB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDhweDsNCiAgICAgICAgICAgIGJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgbGVmdDogOHB4Ow0KICAgICAgICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsICFpbXBvcnRhbnQ7DQogICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGwgIWltcG9ydGFudDsNCiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaA0KICAgICAgICB9DQoNCiAgICAgICAgLmpzLW1lbnUtYWN0aXZlIGhlYWRlci5oZWFkZXIsDQogICAgICAgIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1tZW51IHsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZyAubWVkaWFfX2F1dGhvciB7DQogICAgICAgICAgICBtYXJnaW46IDANCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZyAubWVkaWFfX2F1dGhvci1pbWFnZS1hdmF0YXIgew0KICAgICAgICAgICAgd2lkdGg6IDM1cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDM1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZ19fbG9naW4gew0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWE7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgew0KICAgICAgICAgICAgcGFkZGluZzogOHB4IDA7DQogICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2YwZjBmMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2LA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IHN0cm9uZyB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pdGVtIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsNCiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWwNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faXRlbSBhIHsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pdGVtLW5ldyB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7DQogICAgICAgICAgICBwYWRkaW5nOiAwIDRweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7DQogICAgICAgICAgICBjb2xvcjogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pY29uIHsNCiAgICAgICAgICAgIHdpZHRoOiAyM3B4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAyM3B4Ow0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faWNvbiBpbWcgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdi0tdHdvLWNvbCB7DQogICAgICAgICAgICBjb2x1bW5zOiAyOw0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW5zOiAyOw0KICAgICAgICAgICAgLW1vei1jb2x1bW5zOiAyOw0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAwOw0KICAgICAgICAgICAgLW1vei1jb2x1bW4tZ2FwOiAwOw0KICAgICAgICAgICAgY29sdW1uLWdhcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2LnBsMTUgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4Ow0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiA1cHg7DQogICAgICAgICAgICAtbW96LWNvbHVtbi1nYXA6IDVweDsNCiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhcl9fdGl0bGUgew0KICAgICAgICAgICAgcGFkZGluZzogNHB4Ow0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICMzMzMNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOw0KICAgICAgICAgICAgei1pbmRleDogMjU7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC42KTsNCiAgICAgICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmpzLW1lbnUtYWN0aXZlIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIG9wYWNpdHk6IDENCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogODhweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MHB4Ow0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHg7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBmb250LXNpemU6IDExcHg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI3DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5hcHBfbG9nbyB7DQogICAgICAgICAgICBoZWlnaHQ6IDM2cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgLmdldF9hcHAgew0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5zYl9jbG9zZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgICAgICBoZWlnaHQ6IDE0cHg7DQogICAgICAgICAgICB3aWR0aDogMTRweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDsNCiAgICAgICAgICAgIHRvcDogNXB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDVweDsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXc+ZGl2PnNwYW4gew0KICAgICAgICAgICAgaGVpZ2h0OiAzMXB4DQogICAgICAgIH0NCg0KICAgICAgICAubi1jb2x1bW5zLTIgew0KICAgICAgICAgICAgZGlzcGxheTogZ3JpZDsNCiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7DQogICAgICAgICAgICBmb250LXdlaWdodDogNzAwOw0KICAgICAgICB9DQoNCiAgICAgICAgLm4tY29sdW1ucy0yIGEgew0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICB9DQoNCiAgICAgICAgLmxvZ2luLA0KICAgICAgICAucmVnaXN0ZXIgew0KICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7DQogICAgICAgICAgICBwYWRkaW5nOiAxM3B4IDEwcHg7DQogICAgICAgIH0NCg0KICAgICAgICAubG9naW4sDQogICAgICAgIC5sb2dpbi1idXR0b24gew0KICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZjA5MDkgMCwgIzVlMWIxYiAxMDAlKTsNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWdpc3RlciwNCiAgICAgICAgLnJlZ2lzdGVyLWJ1dHRvbiB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmYjAyIDAsICNlN2QwMDAgMTAwJSk7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmZmZmOw0KICAgICAgICB9DQogICAgPC9zdHlsZT4NCiAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCINCiAgICAgICAgY29udGVudD0iaW5pdGlhbC1zY2FsZSA9IDEuMCwgdXNlci1zY2FsYWJsZSA9IG5vLCB3aWR0aD1kZXZpY2Utd2lkdGgsIGhlaWdodD1kZXZpY2UtaGVpZ2h0LCBtYXhpbXVtLXNjYWxlPTEuMCI+DQogICAgPG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSIgY29udGVudD0ieWVzIiAvPg0KICAgIDxsaW5rIHJlbD0iaWNvbiIgdHlwZT0iaW1hZ2UvcG5nIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyI+DQogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyI+DQogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyIgLz4NCiAgICA8bWV0YSBjb250ZW50PSJpZCIgbmFtZT0ibGFuZ3VhZ2UiIC8+DQogICAgPG1ldGEgY29udGVudD0iaWQiIG5hbWU9Imdlby5jb3VudHJ5IiAvPg0KICAgIDxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtbGFuZ3VhZ2UiIGNvbnRlbnQ9IkluLUlkIiAvPg0KICAgIDx0aXRsZT5LdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbTwvdGl0bGU+DQogICAgPGxpbmsgcmVsPSJhbXBodG1sIiBocmVmPSJodHRwczovL2hpbmRpa2VzYXRoLmNvbS9hbXAuaHRtbCI+DQogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgaXRlbXByb3A9ImRlc2NyaXB0aW9uIiAvPg0KICAgIDxtZXRhIG5hbWU9Im9yaWdpbmFsVGl0bGUiIGNvbnRlbnQ9Ikt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiAvPg0KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0iYXJ0aWNsZSIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6c2l0ZV9uYW1lIiBjb250ZW50PSJLVURBSklUVSIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9Ikt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZSIgY29udGVudD0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzpkZXNjcmlwdGlvbiIgY29udGVudD0iS3VkYWppdHUsIHNpdHVzIHBlcm1haW5hbiBvbmxpbmUgdGVycGVyY2F5YSAyNCBqYW0uIE5pa21hdGkgYmVyYmFnYWkgcGVybWFpbmFuIG1lbmFyaWsgZGFuIGxheWFuYW4gdGVyYmFpayB1bnR1ayBwZW5nYWxhbWFuIHNsb3QgeWFuZyB0YWsgdGVybHVwYWthbiEuIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzp1cmwiIGNvbnRlbnQ9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICA8bWV0YSBwcm9wZXJ0eT0iZmI6YXBwX2lkIiBjb250ZW50PSIxODc5NjAyNzEyMzcxNDkiIC8+DQogICAgPG1ldGEgcHJvcGVydHk9ImZiOmFkbWlucyIgY29udGVudD0iMTAwMDAwNjA3NTY2Njk0IiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTp0eXBlIiBjb250ZW50PSJpbWFnZS9qcGVnIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTp3aWR0aCIgY29udGVudD0iNjUwIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTpoZWlnaHQiIGNvbnRlbnQ9IjM2NiIgLz4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCINCiAgICAgICAgY29udGVudD0iaW5pdGlhbC1zY2FsZSA9IDEuMCwgdXNlci1zY2FsYWJsZSA9IG5vLCB3aWR0aD1kZXZpY2Utd2lkdGgsIGhlaWdodD1kZXZpY2UtaGVpZ2h0LCBtYXhpbXVtLXNjYWxlPTEuMCI+DQogICAgPG1ldGEgbmFtZT0iY29weXJpZ2h0IiBjb250ZW50PSJLVURBSklUVSIgaXRlbXByb3A9ImRhdGVsaW5lIiAvPg0KICAgIDxtZXRhIG5hbWU9InA6ZG9tYWluX3ZlcmlmeSIgY29udGVudD0iMjA1N2I4NmJmNjFlNWEzNDZlMjJhMzgwYzZmZWNmODkiIC8+DQogICAgPG1ldGEgbmFtZT0ia2FuYWxpZCIgY29udGVudD0iMi0xMDUtMTAxMC0zOTgiIC8+DQogICAgPG1ldGEgbmFtZT0iYXJ0aWNsZWlkIiBjb250ZW50PSI3NDcwMTIzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGV0eXBlIiBjb250ZW50PSJzaW5nbGVwYWdlIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGVkZXdhc2EiIGNvbnRlbnQ9ImRld2FzYXRpZGFrIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGVob2F4IiBjb250ZW50PSJkZWZhdWx0IiAvPg0KICAgIDxtZXRhIG5hbWU9ImNyZWF0ZWRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTM6NTY6NDEiIC8+DQogICAgPG1ldGEgbmFtZT0icHVibGlzaGRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTQ6MDQ6MjUiIC8+DQogICAgPG1ldGEgbmFtZT0iY29udGVudHR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2VuZXdzIiAvPg0KICAgIDxtZXRhIG5hbWU9InBsYXRmb3JtIiBjb250ZW50PSJtb2JpbGUiIC8+DQogICAgPG1ldGEgbmFtZT0iaGxfbmhsX3dwIiBjb250ZW50PSJub25oZWFkbGluZS0wIiAvPg0KICAgIDxtZXRhIG5hbWU9ImhsX25obF9rYW5hbCIgY29udGVudD0ibm9uaGVhZGxpbmUtMC0yLTEwNSIgLz4NCiAgICA8bWV0YSBuYW1lPSJ2aWRlb3ByZXNlbnQiIGNvbnRlbnQ9Ik5vIiAvPg0KICAgIDxtZXRhIG5hbWU9Imdvb2dsZS1zaXRlLXZlcmlmaWNhdGlvbiIgY29udGVudD0ibzFOVzN5ZmVoSDFFb1NWTTFWSnNWVmplVk9jOWhpZEctZXhMaFFHTl9zdyIgLz4NCg0KDQoNCiAgICA8bWV0YSBuYW1lPSJpZGZva3VzIiBjb250ZW50PSJrdWRhaml0dSIgLz4NCiAgICA8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IktVREFKSVRVIiAvPg0KICAgIDxtZXRhIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgaXRlbXByb3A9ImhlYWRsaW5lIiAvPg0KICAgIDxtZXRhIG5hbWU9ImtleXdvcmRzIiBjb250ZW50PSJrdWRhaml0dSwga3VkYSBqaXR1LCBrdWRhIGppdHUgbG9naW4sIGt1ZGEgaml0dSB0b2dlbCwgUlRQIGt1ZGFqaXR1LCBoZXlsaW5rLm1lIGt1ZGFqaXR1LCBrdWRhaml0dSBsb2dpbiwgZGFmdGFyIGt1ZGFqaXR1LCBrdWRhaml0dSBuZXQgIiBpdGVtcHJvcD0ia2V5d29yZHMiIC8+DQogICAgPG1ldGEgbmFtZT0idGh1bWJuYWlsVXJsIiBjb250ZW50PSJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODA/dz02NTAiIGl0ZW1wcm9wPSJ0aHVtYm5haWxVcmwiIC8+DQogICAgPG1ldGEgcHJvcGVydHk9ImFydGljbGU6YXV0aG9yIiBjb250ZW50PSJodHRwczovL3d3dy5mYWNlYm9vay5jb20vIiBpdGVtcHJvcD0iYXV0aG9yIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJhcnRpY2xlOnB1Ymxpc2hlciIgY29udGVudD0iaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tLyIgLz4NCiAgICA8bWV0YSBuYW1lPSJwdWJkYXRlIiBjb250ZW50PSIyMDI0LTA4LTAyVDE0LTA0LTI1WiIgaXRlbXByb3A9ImRhdGVQdWJsaXNoZWQiIC8+DQogICAgPG1ldGEgY29udGVudD0iMjAyNC0wOC0wMlQxMy01Ni00MVoiIGl0ZW1wcm9wPSJkYXRlQ3JlYXRlZCIgLz4NCiAgICA8bWV0YQ0KICAgICAgICBjb250ZW50PSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgaXRlbXByb3A9InVybCIgLz4NCg0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6Y2FyZCIgY29udGVudD0ic3VtbWFyeV9sYXJnZV9pbWFnZSIgLz4NCiAgICA8bWV0YSBuYW1lPSJ0d2l0dGVyOnNpdGUiIGNvbnRlbnQ9Imt1ZGFqaXR1IiAvPg0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6c2l0ZTppZCIgY29udGVudD0ia3VkYWppdHUiIC8+DQogICAgPG1ldGEgbmFtZT0idHdpdHRlcjpjcmVhdG9yIiBjb250ZW50PSJrdWRhaml0dSIgLz4gIA0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgLz4NCiAgICA8bWV0YSBuYW1lPSJ0d2l0dGVyOmltYWdlIg0KICAgICAgICBjb250ZW50PSJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiIC8+DQoNCg0KICAgIDxsaW5rIHJlbD0iY2Fub25pY2FsIg0KICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6YWNjdHlwZSIgY29udGVudD0iYWNjLUtVREFKSVRVIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azprYW5hbGlkIiBjb250ZW50PSIzOTgiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOmFydGljbGVpZCIgY29udGVudD0iNzQ3MDEyMyIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6YXJ0aWNsZXR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2UiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOmFydGljbGVkZXdhc2EiIGNvbnRlbnQ9ImRld2FzYXRpZGFrIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azphcnRpY2xlaG9heCIgY29udGVudD0iZGVmYXVsdCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6Y3JlYXRlZGRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTM6NTY6NDEiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOnB1Ymxpc2hkYXRlIiBjb250ZW50PSIyMDI0LzA4LzAyIDE0OjA0OjI1IiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azpjcmVhdGVkZGF0ZXVuaXgiIGNvbnRlbnQ9IjE3MjI1ODE4MDEwMDAiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOnB1Ymxpc2hkYXRldW5peCIgY29udGVudD0iMTcyMjU4MjI2NTAwMCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6Y29udGVudHR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2VuZXdzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azpwbGF0Zm9ybSIgY29udGVudD0ibW9iaWxlIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azp2aWRlb3ByZXNlbnQiIGNvbnRlbnQ9Ik5vIiAvPg0KDQogICAgPG1ldGEgbmFtZT0iZHRrOmlkZm9rdXMiIGNvbnRlbnQ9Imt1ZGFqaXR1IiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azphdXRob3IiIGNvbnRlbnQ9IktVREFKSVRVIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azprZXl3b3JkcyIgY29udGVudD0ia3VkYWppdHUsIGt1ZGEgaml0dSwga3VkYSBqaXR1IGxvZ2luLCBrdWRhIGppdHUgdG9nZWwsIFJUUCBrdWRhaml0dSwgaGV5bGluay5tZSBrdWRhaml0dSwga3VkYWppdHUgbG9naW4sIGRhZnRhciBrdWRhaml0dSwga3VkYWppdHUgbmV0ICIgaXRlbXByb3A9ImtleXdvcmRzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azp0aHVtYm5haWxVcmwiIGNvbnRlbnQ9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MD93PTY1MCIgaXRlbXByb3A9InRodW1ibmFpbFVybCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6c3RhdHVzIiBjb250ZW50PSIxIiAvPg0KDQogICAgPHNjcmlwdCBhc3luYyBpZD0iZWJ4IiBzcmM9Imh0dHBzOi8vYXBwbGV0cy5lYnhjZG4uY29tL2VieC5qcyI+PC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj4NCnsNCiAgICAiQGNvbnRleHQiOiAiaHR0cHM6Ly9zY2hlbWEub3JnIiwNCiAgICAiQHR5cGUiOiAiQnJlYWRjcnVtYkxpc3QiLA0KICAgICJpdGVtTGlzdEVsZW1lbnQiOiBbDQogICAgew0KICAgICAgICAiQHR5cGUiOiAiTGlzdEl0ZW0iLA0KICAgICAgICAicG9zaXRpb24iOiAxLA0KICAgICAgICAibmFtZSI6ICJLVURBSklUVSIsDQogICAgICAgICJpdGVtIjogIiMjIyINCiAgICB9LA0KICAgIHsNCiAgICAgICAgIkB0eXBlIjogIkxpc3RJdGVtIiwNCiAgICAgICAgInBvc2l0aW9uIjogMiwNCiAgICAgICAgIm5hbWUiOiAiQ3liZXJsaWZlIiwNCiAgICAgICAgIml0ZW0iOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9uZXdzIg0KICAgIH0sDQogICAgew0KICAgICAgICAiQHR5cGUiOiAiTGlzdEl0ZW0iLA0KICAgICAgICAicG9zaXRpb24iOiAzLA0KICAgICAgICAibmFtZSI6ICJDeWJlciBMaWZlIiwNCiAgICAgICAgIml0ZW0iOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlci1saWZlIg0KICAgIH0NCl19DQo8L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vbGQranNvbiI+DQogICAgCXsNCiAgICAJCSJAY29udGV4dCI6ICJodHRwczovL3NjaGVtYS5vcmciLA0KICAgIAkJIkB0eXBlIjogIldlYlBhZ2UiLA0KICAgIAkJImhlYWRsaW5lIjogIkt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiwNCiAgICAJCSJ1cmwiOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSIsDQogICAgCQkiZGF0ZVB1Ymxpc2hlZCI6ICIyMDI0LTA4LTAyVDE0OjA0OjI1KzA3OjAwIiwNCiAgICAJCSJpbWFnZSI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiLA0KCQkJInRodW1ibmFpbFVybCI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODA/dz0yMDAiDQogICAgCX0NCiAgICAJPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj4NCgkJew0KCQkJIkBjb250ZXh0IjogImh0dHBzOi8vc2NoZW1hLm9yZyIsDQoJCQkiQHR5cGUiOiAiTmV3c0FydGljbGUiLA0KCQkJIm1haW5FbnRpdHlPZlBhZ2UiOiB7DQoJCQkJIkB0eXBlIjogIldlYlBhZ2UiLA0KCQkJCSJAaWQiOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSINCgkJCX0sDQoJCQkiaGVhZGxpbmUiOiAiS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iLA0KCQkJImltYWdlIjogew0KCQkJCSJAdHlwZSI6ICJJbWFnZU9iamVjdCIsDQoJCQkgICAgInVybCI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiDQogICAgICAgICAgICB9LA0KCQkJImRhdGVQdWJsaXNoZWQiOiAiMjAyNC0wOC0wMlQxNDowNDoyNSswNzowMCIsDQoJCQkiZGF0ZU1vZGlmaWVkIjogIjIwMjQtMDgtMDJUMTQ6MDQ6MjUrMDc6MDAiLA0KCQkJImF1dGhvciI6IHsNCgkJCQkiQHR5cGUiOiAiUGVyc29uIiwNCgkJCQkibmFtZSI6ICJLVURBSklUVSINCgkJCX0sDQoJCQkicHVibGlzaGVyIjogew0KCQkJCSJAdHlwZSI6ICJPcmdhbml6YXRpb24iLA0KCQkJCSJuYW1lIjogImRldGlrY29tIiwNCgkJCQkibG9nbyI6IHsNCgkJCQkJIkB0eXBlIjogIkltYWdlT2JqZWN0IiwNCgkJCQkJInVybCI6ICJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZGV0aWsyL2ltYWdlcy9sb2dvLmpwZyINCgkJCQl9DQoJCQl9LA0KCQkJImRlc2NyaXB0aW9uIjogIkt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiINCgkJfQ0KICAgIAk8L3NjcmlwdD4NCiAgICA8c2NyaXB0PnZhciB3aWRfbWV0aG9kID0gIkdFVCI7PC9zY3JpcHQ+DQogICAgPCEtLXM6ZHRrcHJ2LS0+DQogICAgPCEtLWU6ZHRrcHJ2LS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgaWYgKG5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1VDQnJvd3Nlci9pKSAmJiBkb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbCA9PSAnaHR0cDonKSB7DQogICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICdodHRwczovLycgKyBkb2N1bWVudC5sb2NhdGlvbi5ob3N0ICsgZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWU7DQogICAgICAgIH0NCiAgICA8L3NjcmlwdD4NCg0KICAgIDwhLS0gUkVRVUlSRUQgLS0+DQoNCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCINCiAgICAgICAgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL2pxdWVyeS1taW4tMy4yLjEuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgdmFyIGR0a0dUTURMID0geyBkYXRhOiB7fSwgZ2V0TWV0YTogZnVuY3Rpb24gKGEsIHQpIHsgcmV0dXJuIG51bGwgIT09IChlID0gZG9jdW1lbnQuaGVhZC5xdWVyeVNlbGVjdG9yKCJbIiArIGEgKyAnPSInICsgdCArICciXScpKSA/IGUuY29udGVudCA6IG51bGwgfSwgYWRkRGF0YUxheWVyOiBmdW5jdGlvbiAoYSwgdCwgciA9IG51bGwpIHsgbnVsbCA9PT0gciAmJiAociA9IHQpLCBudWxsICE9PSAodmFsID0gZHRrR1RNREwuZ2V0TWV0YShhLCB0KSkgJiYgIiIgIT0gdmFsICYmIChkdGtHVE1ETC5kYXRhW3JdID0gdmFsKSB9LCBhZGRDdXN0b21EaW1lbnNpb246IGZ1bmN0aW9uIChhKSB7IGZvciAoaSA9IDA7IGkgPCBhLmxlbmd0aDsgaSsrKXN3aXRjaCAoYVtpXSkgeyBjYXNlICJrYW5hbGlkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImthbmFsaWQiKTsgYnJlYWs7IGNhc2UgImFydGljbGVpZCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJhcnRpY2xlaWQiKTsgYnJlYWs7IGNhc2UgImFydGljbGV0eXBlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGV0eXBlIik7IGJyZWFrOyBjYXNlICJhcnRpY2xlZGV3YXNhIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGVkZXdhc2EiKTsgYnJlYWs7IGNhc2UgImFydGljbGVob2F4IjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGVob2F4Iik7IGJyZWFrOyBjYXNlICJjcmVhdGVkYXRlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImNyZWF0ZWRhdGUiKTsgYnJlYWs7IGNhc2UgInB1Ymxpc2hkYXRlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInB1Ymxpc2hkYXRlIik7IGJyZWFrOyBjYXNlICJrZXl3b3JkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImtleXdvcmRzIiwgImtleXdvcmQiKTsgYnJlYWs7IGNhc2UgImlkZm9rdXMiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaWRmb2t1cyIpOyBicmVhazsgY2FzZSAibmFtYWZva3VzIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgIm5hbWFmb2t1cyIpOyBicmVhazsgY2FzZSAiaWRwcm9ncmFtIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImlkcHJvZ3JhbSIpOyBicmVhazsgY2FzZSAibmFtYXByb2dyYW0iOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAibmFtYXByb2dyYW0iKTsgYnJlYWs7IGNhc2UgInBhZ2VzaXplIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInBhZ2VzaXplIik7IGJyZWFrOyBjYXNlICJwYWdlbnVtYmVyIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInBhZ2VudW1iZXIiKTsgYnJlYWs7IGNhc2UgInZpZGVvcHJlc2VudCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJ2aWRlb3ByZXNlbnQiKTsgYnJlYWs7IGNhc2UgInZpZGVvX2lkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInZpZGVvX2lkIik7IGJyZWFrOyBjYXNlICJyZWZmZXJhbF91cmwiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAicmVmZmVyYWxfdXJsIik7IGJyZWFrOyBjYXNlICJjb250ZW50dHlwZSI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJjb250ZW50dHlwZSIpOyBicmVhazsgY2FzZSAicGxhdGZvcm0iOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAicGxhdGZvcm0iKTsgYnJlYWs7IGNhc2UgImF1dGhvciI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJhdXRob3IiKTsgYnJlYWs7IGNhc2UgInRpdGxlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJwcm9wZXJ0eSIsICJvZzp0aXRsZSIsICJ0aXRsZSIpOyBicmVhazsgY2FzZSAic3ViY2F0ZWdvcmkiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAic3ViY2F0ZWdvcmkiKTsgYnJlYWs7IGNhc2UgImtleXdvcmRrYW5hbCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJrZXl3b3Jka2FuYWwiKTsgYnJlYWs7IGNhc2UgImR1cmF0aW9uIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImR1cmF0aW9uIik7IGJyZWFrOyBjYXNlICJobF9uaGxfd3AiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaGxfbmhsX3dwIik7IGJyZWFrOyBjYXNlICJobF9uaGxfa2FuYWwiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaGxfbmhsX2thbmFsIik7IGJyZWFrOyBjYXNlICJvcmlnaW5hbFRpdGxlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgIm9yaWdpbmFsVGl0bGUiKTsgYnJlYWs7IGNhc2UgInZpZGVvX3N0b3J5X3VybCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJ2aWRlb19zdG9yeV91cmwiKSB9IH0sIGdlbmVyYXRlOiBmdW5jdGlvbiAoKSB7IHJldHVybiBjb250ZW50dHlwZSA9IGR0a0dUTURMLmdldE1ldGEoIm5hbWUiLCAiY29udGVudHR5cGUiKSwgZHRrR1RNREwuYWRkQ3VzdG9tRGltZW5zaW9uKFsia2FuYWxpZCIsICJhcnRpY2xlaWQiLCAiYXJ0aWNsZXR5cGUiLCAiYXJ0aWNsZWRld2FzYSIsICJhcnRpY2xlaG9heCIsICJjcmVhdGVkYXRlIiwgInB1Ymxpc2hkYXRlIiwgImtleXdvcmQiLCAiaWRmb2t1cyIsICJuYW1hZm9rdXMiLCAiaWRwcm9ncmFtIiwgIm5hbWFwcm9ncmFtIiwgInBhZ2VzaXplIiwgInBhZ2VudW1iZXIiLCAidmlkZW9wcmVzZW50IiwgInZpZGVvX2lkIiwgImNvbnRlbnR0eXBlIiwgInBsYXRmb3JtIiwgImF1dGhvciIsICJzdWJjYXRlZ29yaSIsICJrZXl3b3Jka2FuYWwiLCAiZHVyYXRpb24iLCAiaGxfbmhsX3dwIiwgImhsX25obF9rYW5hbCIsICJvcmlnaW5hbFRpdGxlIiwgInZpZGVvX3N0b3J5X3VybCJdKSwgZHRrR1RNREwuZGF0YS5ldmVudCA9ICJhcnRpY2xlUHVzaCIsIGR0a0dUTURMLmRhdGEgfSB9OyBkYXRhTGF5ZXIgPSBbZHRrR1RNREwuZ2VuZXJhdGUoKV07IHZhciBfcHQgPSBmdW5jdGlvbiAoYSwgdCwgciwgZCwgbikgeyBjb25zb2xlLmxvZygiX19wdDpndG1kbCIpLCB2b2lkIDAgPT09IHQgJiYgYS5oYXNBdHRyaWJ1dGUoImR0ci1ldnQiKSAmJiAodCA9IGEuZ2V0QXR0cmlidXRlKCJkdHItZXZ0IiksIGQgPSBhLmdldEF0dHJpYnV0ZSgiZHRyLWFjdCIpICsgIiAiICsgYS5nZXRBdHRyaWJ1dGUoImR0ci1pZHgiKSwgciA9IGEuZ2V0QXR0cmlidXRlKCJkdHItdHRsIikpOyB2YXIgbyA9IHsgZXZlbnQ6ICJwYW5lbCB0cmFja2luZyIsIGFjdGlvbjogImtsaWsgIiArIGQsIHBhbmVsbmFtZTogdC50b0xvd2VyQ2FzZSgpLCBwdF9mcm9tX3R5cGU6ICQoIm1ldGFbbmFtZT1jb250ZW50dHlwZV0iKS5hdHRyKCJjb250ZW50IiksIHB0X2Zyb21fa2FuYWw6ICQoIm1ldGFbbmFtZT1rYW5hbGlkXSIpLmF0dHIoImNvbnRlbnQiKSwgcHRfdG9fdXJsOiBhLmhyZWYsIHB0X3BsYXRmb3JtOiAkKCJtZXRhW25hbWU9cGxhdGZvcm1dIikuYXR0cigiY29udGVudCIpLCBwdF90b19wYWdlOiByIH07IGlmICh2b2lkIDAgIT09IG4pIHZhciBvID0gJC5leHRlbmQobywgbik7IGNvbnNvbGUubG9nKCJkYXRhbGF5ZXIgcHVzaCIsIG8pLCBkYXRhTGF5ZXIucHVzaChvKSB9OyAkKGZ1bmN0aW9uICgpIHsgcHVzaEV2ZW50ID0gZnVuY3Rpb24gKGEsIHQsIHIpIHsgdmFyIGQ7IGQgPSAidW5kZWZpbmVkIiAhPSB0eXBlb2YgYmFzZWthbmFsICYmIG51bGwgIT09IGJhc2VrYW5hbCA/IGJhc2VrYW5hbCA6IGJhc2V1cmwsIGRhdGFMYXllci5wdXNoKHsgZXZlbnQ6ICIiICsgYSwgYmNfbmF2X3VybDogIiIgKyB0LCBiY19kb21haW46ICIiICsgZCwgYmNfdGl0bGU6ICIiICsgciwgYmFjYV9qdWdhX2FpZDogIiIgKyBnZXRBcnRpY2xlSWQoYSwgdCkgfSkgfSwgZ2V0QXJ0aWNsZUlkID0gZnVuY3Rpb24gKGEsIHQpIHsgcmV0dXJuIChhcklEID0gKGFyclVybCA9IHQuc3BsaXQoIi8iKSkubGVuZ3RoID4gOSA/IGFyclVybFsyXS5pbmRleE9mKCJtLmRldGlrIikgPiAtMSB8fCBhcnJVcmxbMl0uaW5kZXhPZigibWRldi5kZXRpayIpID4gLTEgPyB0LmluZGV4T2YoIi9+IikgPiAtMSA/IGFyclVybFsxMF0gOiBhcnJVcmxbOV0gOiBhcnJVcmxbM10uaW5kZXhPZigic2VwYWtib2xhIikgPiAtMSA/IGFyclVybFs5XSA6IGFyclVybFs4XSA6IGFyclVybFsyXS5pbmRleE9mKCJnYXJ1ZGEuZGV0aWsiKSA+IC0xID8gdC5pbmRleE9mKCIvfiIpID4gLTEgPyBhcnJVcmxbNl0gOiBhcnJVcmxbNV0gOiB0LmluZGV4T2YoIi9+IikgPiAtMSA/ICJzZXBha2JvbGEiID09IGFyclVybFs0XSA/IGFyclVybFs2XSA6IGFyclVybFs1XSA6ICJzZXBha2JvbGEiID09IGFyclVybFszXSA/IGFyclVybFs1XSA6IGFyclVybFs0XSkuaW5kZXhPZigiZC0iKSA+IC0xICYmIChhcklEID0gYXJJRC5zcGxpdCgiLSIpWzFdKSwgYXJJRCB9LCAkKCIjcmVsYXRlZGd0bSBhIikuY2xpY2soZnVuY3Rpb24gKCkgeyBwdXNoRXZlbnQoImJlcml0YXRlcmthaXQiLCAkKHRoaXMpLmF0dHIoImhyZWYiKSwgJCh0aGlzKS50ZXh0KCkudHJpbSgpKSB9KSwgJCgiI3JlYWR0b29ndG0iKS5oYXNDbGFzcygibGlzdF9fb3RoZXJfX2l0ZW0iKSA/IChzZWxlY3RvciA9ICQoIiNyZWFkdG9vZ3RtIGg1IGEiKSwgc2V0ID0gITApIDogKHNlbGVjdG9yID0gJCgiI3JlYWR0b29ndG0gYSIpLCBzZXQgPSAhMSksIHNlbGVjdG9yLmNsaWNrKGZ1bmN0aW9uICgpIHsgdmFyIGE7ICQoImgyIiwgdGhpcykubGVuZ3RoICYmIChhID0gJCgiaDIiLCB0aGlzKS50ZXh0KCkudHJpbSgpKSwgJCgiaDMiLCB0aGlzKS5sZW5ndGggJiYgKGEgPSAkKCJoMyIsIHRoaXMpLnRleHQoKS50cmltKCkpLCAkKCJoNCIsIHRoaXMpLmxlbmd0aCAmJiAoYSA9ICQoImg0IHN0cm9uZyIsIHRoaXMpLmxlbmd0aCA/ICQoImg0IHN0cm9uZyIsIHRoaXMpLnRleHQoKS50cmltKCkgOiAkKCJoNCIsIHRoaXMpLnRleHQoKS50cmltKCkpLCAhMCA9PSBzZXQgJiYgKGEgPSAkKHRoaXMpLnRleHQoKS50cmltKCkpLCAkKCJoNiIsIHRoaXMpLmxlbmd0aCAmJiAoYSA9ICQoImg2IiwgdGhpcykudGV4dCgpLnRyaW0oKSksIHB1c2hFdmVudCgiYmFjYWp1Z2EiLCAkKHRoaXMpLmF0dHIoImhyZWYiKSwgYSkgfSkgfSk7DQogICAgPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiDQogICAgICAgIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2xpYnMvbGl2ZWNvdW50ZXIvZGV0aWtMaXZlVXNlckNvdW50ZXJSZXNwb25zZS5qcz92PTIwMjQwODAyMTUiIGRlZmVyPjwvc2NyaXB0Pg0KDQogICAgPCEtLSBzOnByZWxvYWQgLS0+DQogICAgPCEtLSBlOnByZWxvYWQgLS0+DQoNCg0KDQogICAgPCEtLSBEeW5hbWljIFByb3Zpc2lvbmluZyAtLT4NCiAgICA8c2NyaXB0IGFzeW5jIHNyYz0iLy9taWNyby5ydWJpY29ucHJvamVjdC5jb20vcHJlYmlkL2R5bmFtaWMvMTE1MzAuanMiPjwvc2NyaXB0Pg0KDQogICAgPCEtLSBTdGFydCBUYWcgREZQIC0tPg0KICAgIDxzY3JpcHQgYXN5bmMgc3JjPSJodHRwczovL3NlY3VyZXB1YmFkcy5nLmRvdWJsZWNsaWNrLm5ldC90YWcvanMvZ3B0LmpzIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgYXN5bmMgc3JjPSIvL3NlcnZnMS5uZXQvby5qcz91aWQ9OGVjMDhiZjE0MWJlMGNiNDMxZTA0ZGM5IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pg0KICAgIDwhLS0gT3B0aW1hIFRhZyAtLT4NCg0KICAgIDwhLS0gSW5zdXJhZCB0YWcgLS0+DQogICAgPHNjcmlwdCBhc3luYyBzcmM9Imh0dHBzOi8vY2RuLmluc3VyYWRzLmNvbS9ib290c3RyYXAvUzlIN09NWkIuanMiPjwvc2NyaXB0Pg0KDQoNCg0KICAgIDwhLS0gRTp0YWdoZWFkIC0tPg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgdmFyIGJhc2V1cmwgPSAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbSIsDQogICAgICAgICAgICBhc3NldF91cmwgPSAiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2luZXQyL20iLA0KICAgICAgICAgICAgc2l0ZV9pZCA9ICI1IiwNCiAgICAgICAgICAgIGNoYW5uZWxfaWQgPSAiMTA1IiwNCiAgICAgICAgICAgIHJlc3BvbnNpdmUgPSBmYWxzZSwNCiAgICAgICAgICAgIGl0cF9sb2NhbHNfYWN0aXZlID0gZmFsc2UsDQogICAgICAgICAgICBpdHBfc2l0ZV9uYW1lID0gIktVREFKSVRVIg0KICAgIDwvc2NyaXB0Pg0KDQogICAgPCEtLXByb2ZpbGVfYWQ6ZGV0aWtfaW5ldC0tPg0KICAgIDwhLS1sYXlvdXRfdHlwZTptb2JpbGUtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIGZ1bmN0aW9uIGdldFNjcmlwdChlLCB0KSB7IHZhciBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7IGEuc3JjID0gZTsgdmFyIG4gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLCBkID0gITE7IGEub25sb2FkID0gYS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7IGQgfHwgdGhpcy5yZWFkeVN0YXRlICYmICJsb2FkZWQiICE9IHRoaXMucmVhZHlTdGF0ZSAmJiAiY29tcGxldGUiICE9IHRoaXMucmVhZHlTdGF0ZSB8fCAoZCA9ICEwLCB0KCksIGEub25sb2FkID0gYS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBudWxsLCBuLnJlbW92ZUNoaWxkKGEpKSB9LCBuLmFwcGVuZENoaWxkKGEpIH0NCiAgICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIGZ1bmN0aW9uIGl0cEdldEZpbGVOYW1lRnJvbVVybChpKSB7IHJldHVybiBuZXcgVVJMKGkpLnBhdGhuYW1lLnNwbGl0KCIvIikucG9wKCkuc3BsaXQoIi4iKS5zbGljZSgwLCAtMSkuam9pbigiIikgfSBmdW5jdGlvbiBpdHBJbml0U2Nyb2xsQXNzZXQoaSwgbiwgdCA9IGZ1bmN0aW9uICgpIHsgfSkgeyBsZXQgZSA9ICJpbml0ZWQiICsgaXRwR2V0RmlsZU5hbWVGcm9tVXJsKGkpOyB3aW5kb3dbZV0gPSAhMSwgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsIChmdW5jdGlvbiAoKSB7IHdpbmRvd1tlXSB8fCB3aW5kb3cuc2Nyb2xsWSA8PSBuIHx8ICh3aW5kb3dbZV0gPSAhMCwgZ2V0U2NyaXB0KGksIHQpKSB9KSkgfQ0KICAgIDwvc2NyaXB0Pg0KPC9oZWFkPg0KDQo8Ym9keT4NCiAgICA8ZGl2IGNsYXNzPSJoZWFkZXItdG9wIj48L2Rpdj4NCiAgICA8aGVhZGVyIGNsYXNzPSJoZWFkZXIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZC1yb3cgbm8tZ3V0dGVyIGZsZXgtYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sdW1uLWF1dG8gaGVhZGVyX19sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ibWVudUNsaWNrIiBjbGFzcz0ibWVudS1idXR0b24iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ibWVudSBoYW1idXJnZXIiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItYWN0PSJtZW51IGhhbWJ1cmdlciIgb25jbGljaz0iX3B0KHRoaXMpIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lbnUtYnV0dG9uX193cmFwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaGVhZGVyX19icmFuZCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPScjIyMnIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ibG9nbyBLVURBSklUVSIgZHRyLWFjdD0ibG9nbyBLVURBSklUVSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiPjxpbWcgd2lkdGg9JzExNicgaGVpZ2h0PScyNCcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjPSdodHRwczovL2F3c2ltYWdlcy5kZXRpay5uZXQuaWQvY29tbXVuaXR5L21lZGlhL3Zpc3VhbC8yMDIwLzA5LzE3L2xvZ28tZGV0aWtpbmV0LnBuZz9kPTEnDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSdLVURBSklUVScgYWx0PSdLVURBSklUVScgY2xhc3M9J2xvZ28nIC8+PC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2x1bW4tYXV0byBoZWFkZXJfX3JpZ2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0ic2VhcmNoIiBkdHItc2VjPSJzZWFyY2giIGR0ci1hY3Q9InNlYXJjaCIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9zZWFyY2giIGlkPSJzZWFyY2hDbGljayIgY2xhc3M9ImhlYWRlcl9faWNvbiBoZWFkZXJfX2ljb24tLXNlYXJjaCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLXNlYXJjaCI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJidXR0b24gbGl2ZSB0diIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItdHRsPSJsaXZlIHR2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJoZWFkZXJfX2ljb24gaGVhZGVyX19pY29uLS1saXZlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tbGl2ZS10diI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdmJhciBuYXZiYXItc2hhZG93Ij4NCg0KDQogICAgICAgICAgICAgICAgPG5hdiBjbGFzcz0ibmF2YmFyLWZpcnN0IG5hdmJhci0tc2Nyb2xsIj4NCiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjEiIGR0ci10dGw9IkhvbWUiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIb21lIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMiIgZHRyLXR0bD0iR2FkZ2V0IiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR2FkZ2V0IDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyIgZHRyLXR0bD0iQ3liZXJsaWZlIiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3liZXJsaWZlIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNCIgZHRyLXR0bD0iR2FtZXMgJmFtcDsgRXNwb3J0IiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR2FtZXMgJiBFc3BvcnQgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI1IiBkdHItdHRsPSJCdXNpbmVzcyAmYW1wOyBQb2xpY3kiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCdXNpbmVzcyAmIFBvbGljeSA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjYiIGR0ci10dGw9IlNjaWVuY2UiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTY2llbmNlIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNyIgZHRyLXR0bD0iVGVsZWNvbW11bmljYXRpb24iIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZWxlY29tbXVuaWNhdGlvbiA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjgiIGR0ci10dGw9IlRpcHMgJmFtcDsgVHJpayIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpcHMgJiBUcmlrIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iOSIgZHRyLXR0bD0iRm90byIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG8gPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIxMCIgZHRyLXR0bD0iVmlkZW8iIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWaWRlbyA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjExIiBkdHItdHRsPSJJbmRla3MiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmRla3MgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIxMiIgZHRyLXR0bD0iU2VjdXJpdHkiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZWN1cml0eSA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KDQogICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgPC9uYXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9oZWFkZXI+DQoNCg0KDQoNCg0KICAgIDxkaXY+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLXdyYXAgIG5hdmJhci1zaGFkb3ciPg0KICAgICAgICAgICAgICAgIDxuYXYgY2xhc3M9Im5hdmJhci1zZWNvbmQgbmF2YmFyLS1zY3JvbGwiPg0KICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiI+DQogICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFM6bmF2YmFyIC0tPiA8IS0tIEU6bmF2YmFyIC0tPiA8IS0tIFM6bmF2YmFyMiAtLT4gPCEtLSBFOm5hdmJhcjIgLS0+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2X19pdGVtLS1uZXcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJzZWNvbmQgbmF2YmFyIiBkdHItYWN0PSJzZWNvbmQgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjEiIGR0ci10dGw9IkdhZGdldCBvZiB0aGUgTW9udGgiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHYWRnZXQgb2YgdGhlIE1vbnRoIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2X19pdGVtLS1uZXcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJzZWNvbmQgbmF2YmFyIiBkdHItYWN0PSJzZWNvbmQgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjIiIGR0ci10dGw9IkxhYiBHYWRnZXQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMYWIgR2FkZ2V0IDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9InNlY29uZCBuYXZiYXIiIGR0ci1hY3Q9InNlY29uZCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyIgZHRyLXR0bD0iS29tcGFyYXNpIEdhZGdldCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvbXBhcmFzaSBHYWRnZXQgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ic2Vjb25kIG5hdmJhciIgZHRyLWFjdD0ic2Vjb25kIG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI0IiBkdHItdHRsPSJGb3Rvc3RvcCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG9zdG9wIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9InNlY29uZCBuYXZiYXIiIGR0ci1hY3Q9InNlY29uZCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNSIgZHRyLXR0bD0iSW5ldCBHcmFmaXMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmV0IEdyYWZpcyA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KDQogICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgPC9uYXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPCEtLSBTOkZSQU1FQkFSIFdJREdFVC0tPg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9jc3MvbS9mcmFtZWJhci5jc3M/dj0yMDI0MDgwMjE1NDQzIiB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXkgYm94LW92ZXJsYXktLWFycm93LWxvZ28gYm94LW1lbnUgZnJhbWViYXJhc3NldC1sYXp5Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXlfX2hlYWRlciI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSB1c2VyLWxvZyI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX2F1dGhvciI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InN0YXR1c191c2VyX25mIiBjbGFzcz0iZnJhbWViYXJfdXNlciIgc3R5bGU9ImRpc3BsYXk6aW5oZXJpdCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fYXV0aG9yLWltYWdlLWF2YXRhciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvZnJhbWViYXIvdXNlcl9kZWZhdWx0LndlYnAiIGFsdD0ia3VkYWppdHUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idXNlci1sb2dfX25hbWUiPkhhbG8gRGV0aWtlcjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0idXNlci1sb2dfX2xvZ2luIj5Nb2hvbiBUdW5nZ3UuLi48L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXlfX2JvZHkiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiI+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvd2VicC9mcmFtZWJhci9mYXZpY29uLWRldGlrLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSJrdWRhaml0dSIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtjb20NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tdHdvLWNvbCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2hpbmRpa2VzYXRoLmNvbS8iIHRhcmdldD0iIF9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19Nb3N0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXJwb3B1bGVyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9oaW5kaWtlc2F0aC5jb20vIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19saXZldHYud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpdmUgVFYNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19raXJpbV90dWxpc2FuLTN4LndlYnAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLaXJpbSBUdWxpc2FuDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9oaW5kaWtlc2F0aC5jb20vIiB0YXJnZXQ9IiBfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfcGVtaWx1LTN4LndlYnAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1BlbWlsdQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faXRlbS1uZXciPk5FVzwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXJfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgS2F0ZWdvcmkgQmVyaXRhIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tdHdvLWNvbCI+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa05ld3MiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19kZXRpay0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtOZXdzDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9ImRldGlrRmluYW5jZSIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19maW5hbmNlLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0ZpbmFuY2UNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyMjIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJLVURBSklUVSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2luZXQtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtVREFKSVRVDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0hvdCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2hvdC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtIb3QNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrU3BvcnQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19zcG9ydC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtTcG9ydA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iU2VwYWtib2xhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc2VwYWtib2xhLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXBha2JvbGENCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyBkdHItZXZ0PSIgaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtPdG8iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19vdG8tM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrT3RvDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa1RyYXZlbCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3RyYXZlbC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtUcmF2ZWwNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrRm9vZCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2Zvb2QtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrRm9vZA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtIZWFsdGgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19oZWFsdGgtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSGVhbHRoDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJXb2xpcG9wIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfd29saXBvcC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgV29saXBvcA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iRGV0aWtYIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfWC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1IiB3aWR0aD0iMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRGV0aWtYDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIyMERldGlrIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfMjBELTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMERldGlrDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0ZvdG8iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19mb3RvLndlYnAiIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0ZvdG8NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrRWR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfZWR1LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0VkdQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtIaWttYWgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19IaWttYWgud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSGlrbWFoDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9ImRldGlrUHJvcGVydGkiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNwcm9wZXJ0aS53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtQcm9wZXJ0aQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtQb3AiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY29ucG9wLndlYnAiIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1BvcA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2l0ZW0tbmV3Ij5ORVc8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXIiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1mcmFtZWJhcl9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICBEYWVyYWggPC9kaXY+DQogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2LS10d28tY29sIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrSmF0ZW5nIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfamF0ZW5nLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0phdGVuZw0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtKYXRpbSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2phdGltLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0phdGltDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0phYmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfamFiYXItM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSmFiYXINCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrU3Vsc2VsIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc3Vsc2VsLTJ4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bHNlbA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtTdW11dCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3N1bXV0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bXV0DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImgjIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0JhbGkiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY29uZGV0aWtiYWxpLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0JhbGkNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkeD0iZGV0aWtTdW1iYWdzZWwiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc3VtYmFnc2VsLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bWJhZ3NlbA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtKb2dqYSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2pvZ2phLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0pvZ2phDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faXRlbS1uZXciPk5FVzwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1mcmFtZWJhciI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgIExheWFuYW4gPC9kaXY+DQogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2LS10d28tY29sIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IlBhc2FuZyBNYXRhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfcGFzYW5nX21hdGEtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhc2FuZyBNYXRhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJhZHNtYXJ0Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19hZHNtYXJ0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZHNtYXJ0DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJGb3J1bSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2ZvcnVtLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBGb3J1bQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtFdmVudCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2V2ZW50LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0V2ZW50DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IlRyYW5zIFNub3cgV29ybGQiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfdHJhbnNfc25vd19sYXRlc3Qud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zIFNub3cgV29ybGQNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkeD0iVHJhbnMgU3R1ZGlvIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3RyYW5zX3N0dWRpb19sYXRlc3Qud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zIFN0dWRpbw0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJiZXJidWF0YmFpay5pZCIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9sb2dvLWJlcmJ1YXRiYWlraWQud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlcmJ1YXRiYWlrLmlkDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9Inppc3dhZmN0YXJzYS5pZCIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY196aXN3YWZvay53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgemlzd2FmY3RhcnNhLmlkDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IlNpZ25hdHVyZSBBd2FyZHMiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvZmF2aWNvbi1zaWduYXR1cmUlMjAoMSkud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpZ25hdHVyZSBBd2FyZHMNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pdGVtLW5ldyI+TkVXPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXJfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgRGV0aWsgTmV0d29yayA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBuYXYtLXR3by1jb2wiPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJDTk4gSW5kb25lc2lhIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2Nubi0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ05OIEluZG9uZXNpYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIGR0ci1ldnQ9IiBoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IkNOQkMgSW5kb25lc2lhIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX0NOQkMtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENOQkMgSW5kb25lc2lhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJIYWkgQnVuZGEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19oYWlfYnVuZGEtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEhhaSBCdW5kYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iSW5zZXJ0TGl2ZSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2luc2VydC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSW5zZXJ0TGl2ZQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iQmVhdXR5bmVzaWEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19iZWF1dHluZXNpYS0xLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCZWF1dHluZXNpYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJGZW1hbGUgRGFpbHkiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfZmVtYWxlX2RhaWx5LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBGZW1hbGUgRGFpbHkNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IkNYTyBNZWRpYSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2N4by53ZWJwIiBhbHQ9Imt1ZGFqaXR1IiB3aWR0aD0iMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ1hPIE1lZGlhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheSBzZWFyY2gtY29udGFpbmVyIHNlYXJjaGFzc2V0LWxhenkiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9faGVhZGVyIGdyaWQtcm93Ij4NCiAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBpZD0ic2VhcmNoQ2xvc2UiIGNsYXNzPSJjb2x1bW4tYXV0byBkaXNwbGF5LWZsZXggYWxpZ24taXRlbXMtY2VudGVyIj4NCiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS1zbSBpY29uLWFycm93LWxlZnQiPjwvaT4NCiAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbHVtbiI+DQogICAgICAgICAgICAgICAgPGZvcm0gYWN0aW9uPSIjIiBtZXRob2Q9IkdFVCI+DQogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0ic2VhcmNoLXRleHQiIG5hbWU9InF1ZXJ5IiBjbGFzcz0ic2VhcmNoLW92ZXJsYXlfX2lucHV0Ig0KICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9IkNhcmkgZGkgZGV0aWtjb20iIHJlcXVpcmVkIGF1dG9jb21wbGV0ZT0ib2ZmIj4NCiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic2l0ZWlkIiB2YWx1ZT0iNSIgLz4NCiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic291cmNlX2thbmFsIiB2YWx1ZT0idHJ1ZSIgLz4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imljb24tcmlnaHQgaGlkZS1lbGVtZW50IiBpZD0iY2xlYXItc2VhcmNoLXRleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvaWNvbi1jbGVhci53ZWJwP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIGFsdD0ia3VkYWppdHUiPg0KICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgPC9mb3JtPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9fYm9keSI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9fYm9keS1jb250ZW50Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaC1zZWN0aW9uX190aXRsZSI+WWFuZyBzZWRhbmcgcmFtYWkgZGljYXJpIDxpbWcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvaWNvbi1ob3Qud2VicD92PTIwMjQwODAyMTU0NDMiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Im1nbC04IiB3aWR0aD0iMTIiIGhlaWdodD0iMTUiIGFsdD0ia3VkYWppdHUiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8b2wgY2xhc3M9InNlYXJjaC1zZWN0aW9uX19saXN0IiBpZD0idG9wLWtleXdvcmQtc2VhcmNoIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyI+PHNwYW4gY2xhc3M9ImZvbnQtYm9sZCI+TG9hZGluZy4uLiA8L3NwYW4+PC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgIDwvb2w+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VhcmNoLXNlY3Rpb24iPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbl9fdGl0bGUiPlRlcmFraGlyIHlhbmcgZGljYXJpPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxvbCBjbGFzcz0ic2VhcmNoLXNlY3Rpb25fX2xpc3QiIGlkPSJsYXN0LXNlYXJjaCI+DQogICAgICAgICAgICAgICAgICAgICAgICBMb2FkaW5nLi4uDQogICAgICAgICAgICAgICAgICAgIDwvb2w+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaC1vdmVybGF5X19ib2R5LXN1Z2dlc3QgaGlkZS1lbGVtZW50Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbiI+DQogICAgICAgICAgICAgICAgICAgIDxvbCBjbGFzcz0ic2VhcmNoLXNlY3Rpb25fX2xpc3QiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHN1Z2dlc3Q+PC9zdWdnZXN0Pg0KICAgICAgICAgICAgICAgICAgICA8L29sPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDxzY3JpcHQ+DQogICAgICAgIGxldCB1cmxQYXJhbWV0ZXIgPSAnbnVsbCc7DQogICAgPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9qb25hcGVkaWEuY29tL2Fzc2V0cy9qcy9mcmFtZWJhci9zZWFyY2guanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCINCiAgICAgICAgc3JjPSJodHRwczovL2pvbmFwZWRpYS5jb20vYXNzZXRzL2pzL2ZyYW1lYmFyL3NlYXJjaC1hdXRvY29tcGxldGUuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIHZhciBjbGljayA9ICQoIiNtZW51Q2xpY2siKTsNCiAgICAgICAgdmFyIHNlYXJjaCA9ICQoIiNzZWFyY2hDbGljayIpOw0KICAgICAgICB2YXIgY2xvc2VTZWFyY2ggPSAkKCIjc2VhcmNoQ2xvc2UiKTsNCiAgICAgICAgZnVuY3Rpb24gb3Blbl9tZW51KCkgew0KICAgICAgICAgICAgJCgiYm9keSIpLmFwcGVuZCgiPGRpdiBjbGFzcz0nanMtb3ZlcmxheSc+PC9kaXY+Iik7DQogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCJib2R5IikuYWRkQ2xhc3MoImpzLW1lbnUtYWN0aXZlIik7DQogICAgICAgICAgICB9LCAxMDApOw0KICAgICAgICB9DQogICAgICAgIGZ1bmN0aW9uIGNsb3NlX21lbnUoKSB7DQogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCIuanMtb3ZlcmxheSIpLnJlbW92ZSgpOw0KICAgICAgICAgICAgfSwgMzAwKTsNCiAgICAgICAgICAgICQoImJvZHkiKS5yZW1vdmVDbGFzcygianMtbWVudS1hY3RpdmUiKTsNCiAgICAgICAgfQ0KICAgICAgICBjbGljay5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgdmFyIGZyYW1lYmFyYXNzZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJmcmFtZWJhcmFzc2V0LWxhenkiKTsNCiAgICAgICAgICAgIGlmIChmcmFtZWJhcmFzc2V0Lmxlbmd0aCAhPSAwKSB7DQogICAgICAgICAgICAgICAgdmFyIGltZ2ZyYW1lYmFyYXNzZXQgPSBmcmFtZWJhcmFzc2V0WzBdLnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLXNyY10iKTsNCiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGltZ2ZyYW1lYmFyYXNzZXQubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgICAgICAgaW1nZnJhbWViYXJhc3NldFtpXS5zZXRBdHRyaWJ1dGUoInNyYyIsIGltZ2ZyYW1lYmFyYXNzZXRbaV0uZ2V0QXR0cmlidXRlKCJkYXRhLXNyYyIpKTsNCiAgICAgICAgICAgICAgICAgICAgaW1nZnJhbWViYXJhc3NldFtpXS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtc3JjIikNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICBpZiAoJCgiYm9keSIpLmhhc0NsYXNzKCJqcy1tZW51LWFjdGl2ZSIpKSB7DQogICAgICAgICAgICAgICAgY2xvc2VfbWVudSgpOw0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICBvcGVuX21lbnUoKTsNCiAgICAgICAgICAgICAgICB2YXIgc2Nyb2xsID0gJCh3aW5kb3cpLnNjcm9sbFRvcCgpOw0KICAgICAgICAgICAgICAgIHZhciBoZWlnaHRfYmlsbGJvYXJkID0gJCgiI21lZ2FiaWxsYm9hcmQiKS5oZWlnaHQoKTsNCiAgICAgICAgICAgICAgICBpZiAoKCQoIiNtZWdhYmlsbGJvYXJkIikubGVuZ3RoKSAmJiAoc2Nyb2xsIDwgaGVpZ2h0X2JpbGxib2FyZCkpIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiaHRtbCwgYm9keSIpLmFuaW1hdGUoeyBzY3JvbGxUb3A6IGhlaWdodF9iaWxsYm9hcmQgfSk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgJChkb2N1bWVudCkuYmluZCgibW91c2V1cCB0b3VjaGVuZCIsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICAgICAgdmFyIHRoaXNfY2xpY2sgPSAkKCIuYm94LW92ZXJsYXksICNtZW51Q2xpY2siKTsNCiAgICAgICAgICAgICAgICBpZiAoJCgiYm9keSIpLmhhc0NsYXNzKCJqcy1tZW51LWFjdGl2ZSIpKSB7DQogICAgICAgICAgICAgICAgICAgIGlmICgNCiAgICAgICAgICAgICAgICAgICAgICAgICF0aGlzX2NsaWNrLmlzKGUudGFyZ2V0KSAmJi8vIGlmIHRoZSB0YXJnZXQgb2YgdGhlIGNsaWNrIGlzbid0IHRoZSBjb250YWluZXIuLi4NCiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXNfY2xpY2suaGFzKGUudGFyZ2V0KS5sZW5ndGggPT09IDANCiAgICAgICAgICAgICAgICAgICAgKSB7IC8vIC4uLiBub3IgYSBkZXNjZW5kYW50IG9mIHRoZSBjb250YWluZXINCiAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5qcy1vdmVybGF5IikucmVtb3ZlKCk7DQogICAgICAgICAgICAgICAgICAgICAgICB9LCAzMDApOw0KICAgICAgICAgICAgICAgICAgICAgICAgJCgiYm9keSIpLnJlbW92ZUNsYXNzKCJqcy1tZW51LWFjdGl2ZSIpOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQogICAgICAgICAgICAkKGRvY3VtZW50KS5vbigibW91c2V3aGVlbCIsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICAgICAgdmFyIHNjcm9sbCA9ICQod2luZG93KS5zY3JvbGxUb3AoKTsNCiAgICAgICAgICAgICAgICBpZiAoKCQoImJvZHkiKS5oYXNDbGFzcygianMtbWVudS1hY3RpdmUiKSkgJiYgKCQoIiNtZWdhYmlsbGJvYXJkIikubGVuZ3RoKSAmJiAoc2Nyb2xsIDwgaGVpZ2h0X2JpbGxib2FyZCkpIHsNCiAgICAgICAgICAgICAgICAgICAgY2xvc2VfbWVudSgpOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgJChkb2N1bWVudCkub24oInRvdWNobW92ZSIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKGRvY3VtZW50KS50cmlnZ2VyKCJtb3VzZXdoZWVsIik7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSk7DQogICAgICAgIC8vIE5FVyBTRUFSQ0gNCiAgICAgICAgZnVuY3Rpb24gb3Blbl9zZWFyY2goKSB7DQogICAgICAgICAgICAkKCJib2R5IikuYXBwZW5kKCI8ZGl2IGNsYXNzPSdqcy1vdmVybGF5Jz48L2Rpdj4iKTsNCiAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9faW5wdXQiKS5mb2N1cygpOw0KICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgJCgiYm9keSIpLmFkZENsYXNzKCJzZWFyY2gtYWN0aXZlIik7DQogICAgICAgICAgICB9LCAxMDApOw0KICAgICAgICB9DQogICAgICAgIGZ1bmN0aW9uIGNsb3NlX3NlYXJjaCgpIHsNCiAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICQoIi5qcy1vdmVybGF5IikucmVtb3ZlKCk7DQogICAgICAgICAgICB9LCAzMDApOw0KICAgICAgICAgICAgJCgiYm9keSIpLnJlbW92ZUNsYXNzKCJzZWFyY2gtYWN0aXZlIik7DQogICAgICAgIH0NCiAgICAgICAgc2VhcmNoLmNsaWNrKGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICB2YXIgc2VhcmNoYXNzZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJzZWFyY2hhc3NldC1sYXp5Iik7DQogICAgICAgICAgICBpZiAoc2VhcmNoYXNzZXQubGVuZ3RoICE9IDApIHsNCiAgICAgICAgICAgICAgICB2YXIgaW1nc2VhcmNoYXNzZXQgPSBzZWFyY2hhc3NldFswXS5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1zcmNdIik7DQogICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbWdzZWFyY2hhc3NldC5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICAgICAgICBpbWdzZWFyY2hhc3NldFtpXS5zZXRBdHRyaWJ1dGUoInNyYyIsIGltZ3NlYXJjaGFzc2V0W2ldLmdldEF0dHJpYnV0ZSgiZGF0YS1zcmMiKSk7DQogICAgICAgICAgICAgICAgICAgIGltZ3NlYXJjaGFzc2V0W2ldLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1zcmMiKQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIEZyYW1lYmFyU2VhcmNoKCkub25Mb2FkKCk7DQogICAgICAgICAgICBDb29raWVzU2VhcmNoKCkub25Mb2FkKCk7DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICBvcGVuX3NlYXJjaCgpOw0KICAgICAgICB9KTsNCiAgICAgICAgY2xvc2VTZWFyY2guY2xpY2soZnVuY3Rpb24gKGUpIHsNCiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTsNCiAgICAgICAgICAgIGNsb3NlX3NlYXJjaCgpOw0KICAgICAgICB9KTsNCiAgICAgICAgJCgiLmNsZWFyLWxpc3QiKS5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgJCh0aGlzKS5wYXJlbnQoImxpIikucmVtb3ZlKCk7DQogICAgICAgIH0pOw0KICAgICAgICB2YXIgdGV4dENvdW50ID0gJCgiI3NlYXJjaC10ZXh0Iik7DQogICAgICAgIHRleHRDb3VudC5vbigna2V5dXAgbW91c2V1cCcsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICB2YXIgY2hhcnNFbnRlcmVkID0gdGV4dENvdW50LnZhbCgpLmxlbmd0aDsNCiAgICAgICAgICAgIGlmIChjaGFyc0VudGVyZWQgPiAwKSB7DQogICAgICAgICAgICAgICAgJCgiI2NsZWFyLXNlYXJjaC10ZXh0IikucmVtb3ZlQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1jb250ZW50IikuYWRkQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1zdWdnZXN0IikucmVtb3ZlQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAkKCIjY2xlYXItc2VhcmNoLXRleHQiKS5hZGRDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LXN1Z2dlc3QiKS5hZGRDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LWNvbnRlbnQiKS5yZW1vdmVDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0pOw0KICAgICAgICAkKCIjY2xlYXItc2VhcmNoLXRleHQiKS5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgdGV4dENvdW50LnZhbCgiIik7DQogICAgICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCJoaWRlLWVsZW1lbnQiKTsNCiAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1zdWdnZXN0IikuYWRkQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LWNvbnRlbnQiKS5yZW1vdmVDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgIH0pOw0KICAgIDwvc2NyaXB0Pg0KDQogICAgPHN0eWxlPg0KICAgICAgICBAaW1wb3J0IHVybCgiaHR0cHM6Ly9hd3NjZG5zdGF0aWMuZGV0aWsubmV0LmlkL2xpdmUvX3JtYmFzc2V0cy9zY3JvbGxwYWdlL3Njcm9sbHBhZ2UuY3NzIik7DQogICAgPC9zdHlsZT4NCiAgICA8ZGl2IGNsYXNzPSJib3gtYWRzIHRleHQtY2VudGVyIHNjcm9sbHBhZ2UiIHN0eWxlPSJkaXNwbGF5OiBub25lOyBiYWNrZ3JvdW5kLWNvbG9yOiNGOEY4Rjg7aGVpZ2h0OiAxODBweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoNCjEwMCU7bWFyZ2luLXRvcDogMTVweDsiPg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KDQoNCg0KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlX19oZWFkZXIiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFnZV9fYnJlYWRjcnVtYiI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyMjIiBjbGFzcz0iaG9tZSI+S1VEQUpJVFU8L2E+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImJyZWFkY3J1bWIiIGR0ci1zZWM9ImJyZWFkY3J1bWJrYW5hbCIgZHRyLWFjdD0iYnJlYWRjcnVtYiBrYW5hbCINCiAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItdHRsPSJDeWJlcmxpZmUiPkN5YmVybGlmZTwvYT4NCg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KDQoNCg0KICAgICAgICA8YXJ0aWNsZSBjbGFzcz0iZGV0YWlsIj4NCg0KDQoNCg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX2hlYWRlciI+DQoNCiAgICAgICAgICAgICAgICA8aDEgY2xhc3M9ImRldGFpbF9fdGl0bGUiPkt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtPC9oMT4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX2F1dGhvciI+S1VEQUpJVFU8L2Rpdj4NCg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPg0KDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibi1jb2x1bW5zLTIiPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2t1ZGFqaXR1LnNob3J0Lmd5L2t1ZGFqaXR1LWRhZnRhciIgcmVsPSJub2ZvbGxvdyBub3JlZmVycmVyIiBjbGFzcz0ibG9naW4iPkxPR0lOPC9hPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2t1ZGFqaXR1LnNob3J0Lmd5L2t1ZGFqaXR1LWRhZnRhciIgcmVsPSJub2ZvbGxvdyBub3JlZmVycmVyIiBjbGFzcz0icmVnaXN0ZXIiPkRBRlRBUjwvYT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KDQoNCg0KDQoNCg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRldGFpbF9fbWVkaWEiPg0KICAgICAgICAgICAgICAgICAgICA8ZmlndXJlIGR0ci1ldnQ9ImNvdmVyIGltYWdlIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImNvdmVyIGltYWdlIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iZGV0YWlsX19tZWRpYS1pbWFnZSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIiBhbHQ9Ikt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJLdWRhaml0dSIgY2xhc3M9InBfaW1nX3pvb21pbiBpbWctem9vbWluIiAvPg0KDQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uIGNsYXNzPSJkZXRhaWxfX21lZGlhLWNhcHRpb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG86IEtVREFKSVRVPC9maWdjYXB0aW9uPg0KICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8cD5LdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS48L3A+DQogICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJsaW5rc2lzaXAiPg0KICAgICAgICAgICAgICAgICAgICA8dGJvZHk+DQogICAgICAgICAgICAgICAgICAgICAgICA8dHI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsaWhhdGpnIj48c3Ryb25nPkJhY2EganVnYTogPC9zdHJvbmc+PGEgZGF0YS1sYWJlbD0iTGlzdCBCZXJpdGEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1hY3Rpb249IkJlcml0YSBQaWxpaGFuIiBkYXRhLWNhdGVnb3J5PSJEZXRpbCBBcnRpa2VsIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyI+VmlyYWwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbTwvYT48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4NCiAgICAgICAgICAgICAgICA8L3RhYmxlPg0KICAgICAgICAgICAgICAgIDxiciAvPjxiciAvPg0KICAgICAgICAgICAgICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvZW1iZWQvdmlldy1jb3VudGVyL2Nzcy92aWRlby1waXAuY3NzP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWV2cCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFldnBfX2hlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZXZwX19sb2dvIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJwaWN0dXJlIGluIHBpY3R1cmUiIGR0ci1zZWM9InBpY3R1cmUgaW4gcGljdHVyZSIgZHRyLWFjdD0ibG9nbyAyMGRldGlrIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGhyZWY9Imh0dHBzOi8vMjAuZGV0aWsuY29tLyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy9sb2dvL2xvZ29fMjBkZXRpa19uZXcucG5nP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIzNiIgaGVpZ2h0PSIxNiIgYWx0PSIyMEQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPHNjcmlwdD4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgkKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZWZhdWx0T2Zmc2V0SCA9IDEuNjc7IC8vIERlZmluZSB5b3VyIGRlZmF1bHQgdmFsdWUgaGVyZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZGVmYXVsdERldGFpbFRpdGxlT2Zmc2V0VG9wID0gOTY4OyAvLyBEZWZhdWx0IG9mZnNldCB0b3AgcG9zaXRpb24gaWYgLmRldGFpbF9fdGl0bGUgaXMgbm90IGZvdW5kDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZXRhaWxUaXRsZU9mZnNldFRvcCA9ICQoIi5kZXRhaWxfX3RpdGxlIikubGVuZ3RoDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICQoIi5kZXRhaWxfX3RpdGxlIikub2Zmc2V0KCkudG9wDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGRlZmF1bHREZXRhaWxUaXRsZU9mZnNldFRvcDsNCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgYWV2cEggPSAkKCIuZGV0YWlsX190aXRsZSIpLm91dGVySGVpZ2h0KCksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJIID0gJCgiLmhlYWRlciIpLm91dGVySGVpZ2h0KCksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXRIID0gYWV2cEggJiYgaGVhZGVySCA/IGFldnBIIC0gaGVhZGVySCA6IGRlZmF1bHRPZmZzZXRIOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHdpbmRvdykub24oInNjcm9sbCIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBzY3JvbGwgPSAkKHdpbmRvdykuc2Nyb2xsVG9wKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc2Nyb2xsID49IGRldGFpbFRpdGxlT2Zmc2V0VG9wICsgb2Zmc2V0SCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5waXAtdmlkX190cmlnZ2VyIikuYWRkQ2xhc3MoImZsb3ciKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNjcm9sbCA8PSBkZXRhaWxUaXRsZU9mZnNldFRvcCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5waXAtdmlkIikuYWRkQ2xhc3MoImhpZGUiKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLnBpcC12aWQiKS5yZW1vdmVDbGFzcygiaGlkZSIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJUyBJTiBWSUVXUE9SVCBERVRFQ1QgRUxFTUVOVA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkLmZuLmlzSW5WaWV3cG9ydCA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlbGVtZW50VG9wID0gJCh0aGlzKS5vZmZzZXQoKS50b3A7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZWxlbWVudEJvdHRvbSA9IGVsZW1lbnRUb3AgKyAkKHRoaXMpLm91dGVySGVpZ2h0KCk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2aWV3cG9ydFRvcCA9ICQod2luZG93KS5zY3JvbGxUb3AoKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2aWV3cG9ydEJvdHRvbSA9IHZpZXdwb3J0VG9wICsgJCh3aW5kb3cpLmhlaWdodCgpOw0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZWxlbWVudEJvdHRvbSA+IHZpZXdwb3J0VG9wICYmIGVsZW1lbnRUb3AgPCB2aWV3cG9ydEJvdHRvbTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZMT0FUIFZJREVPIFRyYW5zaXN0aW9uIEZPUiBCUkVBS0lORyBORVdTDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQuZm4uZmxvYXRlciA9IGZ1bmN0aW9uIChvcHRpb25zKSB7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkQ2xhc3MoImZsb3ctaW4iKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBibG9jayA9ICQodGhpcyk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIiN2aWRlby1waXBfX2Nsb3NlIikuY2xpY2soZnVuY3Rpb24gKGUpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvd091dCgpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrLnJlbW92ZUNsYXNzKCJmbG93LWluIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGZsb3dPdXQoKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLmZsb3ctaW4iKS5yZW1vdmVDbGFzcygiZmxvd2VkIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBmbG93SW4oKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLmZsb3ctaW4iKS5hZGRDbGFzcygiZmxvd2VkIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAkKHdpbmRvdykuc2Nyb2xsKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgiLnBpcC12aWRfX3RyaWdnZXIiKS5pc0luVmlld3BvcnQoKSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG93T3V0KCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG93SW4oKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEluaXRpYWxpemUgcGlwZXINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gcGlwX3ZpZGVvKCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLnBpcC12aWQiKS5mbG9hdGVyKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmFsc2UpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpcF92aWRlbygpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2NyaXB0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGJyIC8+DQogICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPihLVURBSklUVSk8L3N0cm9uZz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX3NoYXJlIG1nYi0xNiI+DQoNCiAgICAgICAgPGRpdiBjbGFzcz0ianMtcmVzZXQtcmVkaXJlY3QgYWN0aXZlIj48L2Rpdj4NCg0KICAgICAgICA8ZGl2IGNsYXNzPSJzdGlja3ktc2hhcmUiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGV0YWlsX19zaGFyZSBzdGlja3ktc2hhcmVfX3dyYXAiPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZsb2F0aW5nIGtvbWVudGFyIiBkdHItc2VjPSJ0b21ib2wga29tZW50YXIiIGR0ci1hY3Q9InRvbWJvbCBrb21lbnRhciIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJrb21lbnRhciIgcmVsPSJub2ZvbGxvdyIgaHJlZj0iI2NvbW0xIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gY2xpY2t0b19jb21tZW50IHNoLWtvbWVudGFyIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24gaWNvbi0tbWQgaWNvbi1jb21tZW50IGNvbG9yLWJsYWNrIj48L2k+DQogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50LWNvdW50Ij4wPC9zcGFuPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmbG9hdGluZyBzaGFyZSIgZHRyLXNlYz0ic2hhcmUgc29jbWVkIiBkdHItYWN0PSJzaGFyZSBmYWNlYm9vayIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJmYWNlYm9vayIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJmYiBpY29uLWl0ZW0gaWNvbi1pdGVtX19mYiINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT1mYWNlYm9vayZ1dG1fY2FtcGFpZ249ZGV0aWtjb21zb2NtZWQmdXRtX21lZGl1bT1idG4mdXRtX2NvbnRlbnQ9aW5ldCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS14cyBpY29uLWZhY2Vib29rIj48L2k+DQogICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZsb2F0aW5nIHNoYXJlIiBkdHItc2VjPSJzaGFyZSBzb2NtZWQiIGR0ci1hY3Q9InNoYXJlIHR3aXR0ZXIiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0idHdpdHRlciIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJ0dyBpY29uLWl0ZW0gaWNvbi1pdGVtX190dyINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT10d2l0dGVyJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24tdHdpdHRlciI+PC9pPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmbG9hdGluZyBzaGFyZSIgZHRyLXNlYz0ic2hhcmUgc29jbWVkIiBkdHItYWN0PSJzaGFyZSB3aGF0c2FwcCIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJ3aGF0c2FwcCIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJ3aGF0c2FwIGljb24taXRlbSBpY29uLWl0ZW1fX3dhIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYT91dG1fc291cmNlPXdoYXRzYXBwJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24td2hhdHNhcHAiPjwvaT4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZmxvYXRpbmcgc2hhcmUiIGR0ci1zZWM9InNoYXJlIHNvY21lZCIgZHRyLWFjdD0ic2hhcmUgdGVsZWdyYW0iIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0idGVsZWdyYW0iIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0idGVsZSBpY29uLWl0ZW0gaWNvbi1pdGVtX190ZWxlIHNoLXRlbGVncmFtIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYT91dG1fc291cmNlPXRlbGVncmFtJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24tdGVsZWdyYW0iPjwvaT4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZmxvYXRpbmcgc2hhcmUiIGR0ci1zZWM9IiIgZHRyLWFjdD0iY29weSBsaW5rIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci10dGw9ImxpbmsiIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9fbGluayBjb3B5X3VybCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT1jb3B5X3VybCZ1dG1fY2FtcGFpZ249ZGV0aWtjb21zb2NtZWQmdXRtX21lZGl1bT1idG4mdXRtX2NvbnRlbnQ9aW5ldCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS14cyBpY29uLWxpbmsiPjwvaT4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5vdGlmIj5UYXV0YW4gdGVsYWggZGlzYWxpbjwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgPHNjcmlwdD4NCiAgICAgICAgICAgIGdldFNjcmlwdCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9zaGFyZWJveC5pdHAuanM/dj0yMDI0MDgwMjE1NDQzIiwgZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICAgICBzaGFyZUJveC5ydW4oJCgnLnN0aWNreS1zaGFyZScpKTsNCiAgICAgICAgICAgICAgICAgICAgLy8gc2hhcmVCb3guY291bnRDb21tZW50KCQoJy5zaC1rb21lbnRhcicpKTsNCiAgICAgICAgICAgICAgICB9LCA1MDApOw0KICAgICAgICAgICAgfSkNCg0KICAgICAgICAgICAgZnVuY3Rpb24gc2V0SW50ZXJzZWN0T2JlcnNlcnZlcihlbGVtLCBvYm9wdGlvbnMpIHsNCiAgICAgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoDQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIChlbnRyaWVzKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAvLyBubyBpbnRlcnNlY3Rpb24gd2l0aCBzY3JlZW4NCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlbnRyaWVzWzBdLmludGVyc2VjdGlvblJhdGlvID09PSAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5xdWVyeVNlbGVjdG9yKCIuc3RpY2t5LXNoYXJlIikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNsYXNzTGlzdC5hZGQoInN0aWNreS1zaGFyZS0tc3RpY2tlZCIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgLy8gZnVsbHkgaW50ZXJzZWN0cyB3aXRoIHNjcmVlbg0KICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoZW50cmllc1swXS5pbnRlcnNlY3Rpb25SYXRpbyA9PT0gMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucXVlcnlTZWxlY3RvcigiLnN0aWNreS1zaGFyZSIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jbGFzc0xpc3QucmVtb3ZlKCJzdGlja3ktc2hhcmUtLXN0aWNrZWQiKTsNCiAgICAgICAgICAgICAgICAgICAgfSwgb2JvcHRpb25zDQogICAgICAgICAgICAgICAgKTsNCiAgICAgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGVsZW0pOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgY29uc3QgaGVhZGVyQ2xhc3MgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuaGVhZGVyJyk7DQoNCiAgICAgICAgICAgIGxldCBvYm9wdGlvbnMgPSB7DQogICAgICAgICAgICAgICAgdGhyZXNob2xkOiBbMCwgMV0sDQogICAgICAgICAgICAgICAgcm9vdE1hcmdpbjogIjQ3NXB4Ig0KICAgICAgICAgICAgfTsNCg0KICAgICAgICAgICAgaWYgKGhlYWRlckNsYXNzLmNsYXNzTGlzdC5jb250YWlucygnaGVhZGVyLS0yMGQnKSkgew0KICAgICAgICAgICAgICAgIG9ib3B0aW9ucyA9IHsNCiAgICAgICAgICAgICAgICAgICAgdGhyZXNob2xkOiBbMCwgMV0sDQogICAgICAgICAgICAgICAgICAgIHJvb3RNYXJnaW46ICI0NzBweCINCiAgICAgICAgICAgICAgICB9Ow0KICAgICAgICAgICAgICAgIHNldEludGVyc2VjdE9iZXJzZXJ2ZXIoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmhlYWRlci10b3AtMjBkIiksIG9ib3B0aW9ucyk7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIHNldEludGVyc2VjdE9iZXJzZXJ2ZXIoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmhlYWRlci10b3AiKSwgb2JvcHRpb25zKTsNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgLy8gVVAvRE9XTg0KICAgICAgICAgICAgdmFyIGlTY3JvbGxQb3MgPSAwOw0KICAgICAgICAgICAgdmFyICR3aW5kb3cgPSAkKHdpbmRvdyk7DQogICAgICAgICAgICAkd2luZG93LnNjcm9sbChmdW5jdGlvbiAoKSB7DQoNCiAgICAgICAgICAgICAgICB2YXIgaUN1clNjcm9sbFBvcyA9ICQodGhpcykuc2Nyb2xsVG9wKCk7DQogICAgICAgICAgICAgICAgdmFyIGZ0SGVpZ2h0ID0gJCgiZm9vdGVyLmZvb3RlciIpLmhlaWdodCgpOw0KICAgICAgICAgICAgICAgIHZhciBkSGVpZ2h0ID0gJCgiaHRtbCIpLm91dGVySGVpZ2h0KCkgLSBmdEhlaWdodDsNCiAgICAgICAgICAgICAgICB2YXIgb2Zmc2V0ID0gaUN1clNjcm9sbFBvcyArICR3aW5kb3cuaW5uZXJIZWlnaHQoKTsNCg0KICAgICAgICAgICAgICAgIGlmIChvZmZzZXQgPj0gZEhlaWdodCkgew0KICAgICAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnQXQgdGhlIGJvdHRvbScpOw0KICAgICAgICAgICAgICAgICAgICAkKCIuc3RpY2t5LXNoYXJlLS1zdGlja2VkIikuY3NzKCJvcGFjaXR5IiwgMCk7DQogICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiLnN0aWNreS1zaGFyZS0tc3RpY2tlZCIpLmNzcygib3BhY2l0eSIsICIiKTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgLy8gc2hhcmUgJiBjb21tZW50IHNjcmlwdA0KICAgICAgICAgICAgJCgiLmNvcHlfdXJsIikuY2xpY2soZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICQodGhpcykuY2hpbGRyZW4oIi5ub3RpZiIpLmFkZENsYXNzKCJ1cmxfY29waWVkIik7DQogICAgICAgICAgICAgICAgdmFyIGR1bW15ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKSwNCiAgICAgICAgICAgICAgICAgICAgdGV4dCA9ICQodGhpcykuYXR0cignZGF0YS11cmwnKTsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGR1bW15KTsNCiAgICAgICAgICAgICAgICBkdW1teS52YWx1ZSA9IHRleHQ7DQogICAgICAgICAgICAgICAgZHVtbXkuc2VsZWN0KCk7DQogICAgICAgICAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2NvcHknKTsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGR1bW15KTsNCiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiLm5vdGlmIikucmVtb3ZlQ2xhc3MoInVybF9jb3BpZWQiKTsNCiAgICAgICAgICAgICAgICB9LCAxNTAwKTsNCiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgIHZhciBhcnRpY2xlID0gew0KICAgICAgICAgICAgICAgIGlkbmV3czogNzQ3MDEyMywNCiAgICAgICAgICAgICAgICBpZGthbmFsOiAzOTgNCiAgICAgICAgICAgIH0NCiAgICAgICAgPC9zY3JpcHQ+DQoNCg0KICAgIDwvZGl2Pg0KDQoNCg0KICAgIDwvYXJ0aWNsZT4NCg0KDQoNCiAgICA8IS0tIFM6cGFydG5lcl9ib3ggLS0+IDwhLS0gRTpwYXJ0bmVyX2JveCAtLT4NCg0KICAgIDxkaXYgY2xhc3M9ImJveCBib3gtLWtvbWVudGFyIGNvbW1lbnQiPg0KICAgICAgICA8IS0tUzpLT01FTlRBUi0tPg0KDQogICAgICAgIDxkaXYgaWQ9InRoZWNvbW1lbnQyIiBjbGFzcz0iZGV0YWlsX2FyZWEiPg0KICAgICAgICAgICAgPHN0eWxlPg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWZvbnQtYm9sZCB7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1mb3JtIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0biB7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EtRkYsIEFyaWFsLCBUYWhvbWEsIHNhbnMtc2VyaWY7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQtRkYsIEFyaWFsLCBUYWhvbWEsIHNhbnMtc2VyaWY7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1udWxsIHsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4Ow0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWNvbG9yLWJsYWNrIHsNCiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuLA0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0bjpob3ZlciB7DQogICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICN0aGVjb21tZW50MiB7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogSGVsdmV0aWNhLUZGLCBBcmlhbCwgVGFob21hLCBzYW5zLXNlcmlmOw0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7DQogICAgICAgICAgICAgICAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOw0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsNCiAgICAgICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tbWd0LTEyIHsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweCAhaW1wb3J0YW50Ow0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLW1nYi0xMiB7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHggIWltcG9ydGFudDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1mb250LXNtIHsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4Ow0KICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDsNCiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94Ow0KICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsNCiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7DQogICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50Ow0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dCAwczsNCiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0IDBzOw0KICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1ib2R5LS1kZXRpa25ld3MgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxNDA5YTsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1idG46aG92ZXIgew0KICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7DQogICAgICAgICAgICAgICAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT04MCk7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1ib2R5IHsNCiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWNvbW1lbnQtbGVhZCB7DQogICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTZweCAxOHB4IDE4cHg7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7DQogICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHsNCiAgICAgICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1sZWFkIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHg7DQogICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4Ow0KICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1mb3JtIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0biB7DQogICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCA4cHg7DQogICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWVudHJ5IHsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzZweDsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzZweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LW51bGwgew0KICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjOTk5Ow0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIDwvc3R5bGU+DQoNCiAgICAgICAgICAgIDxkaXYNCiAgICAgICAgICAgICAgICBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWJvZHkga29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWJvZHktLWRldGlrbmV3cyBjdXN0b20tbWluLXNuZWFrLXBlZWsiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1sZWFkIj4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtvbWVudGFyLWlmcmFtZS1taW4tZm9udC1ib2xkIj5Lb21lbnRhcjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgPGZvcm0gYWN0aW9uPSIjIiBpZD0iZm9ybS1jb21tZW50LXYyIiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWZvcm0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYS9rb21lbnRhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1idG4ga29tZW50YXItaWZyYW1lLW1pbi1tZ3QtMTIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigzMywgNjQsIDE1NCk7Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBLaXJpbSBLb21lbnRhcg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWVudHJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LW51bGwiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJrb21lbnRhci1pZnJhbWUtbWluLWZvbnQtYm9sZCBrb21lbnRhci1pZnJhbWUtbWluLWNvbG9yLWJsYWNrIGtvbWVudGFyLWlmcmFtZS1taW4tZm9udC1zbSBrb21lbnRhci1pZnJhbWUtbWluLW1nYi0xMiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQmVsdW0gYWRhIGtvbWVudGFyLjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY3VzdG9tLW1pbi1zbmVhay1wZWVrLWVtcHR5LXdvcmRpbmciPkphZGlsYWggeWFuZyBwZXJ0YW1hIGJlcmtvbWVudGFyIGRpIHNpbmk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgPCEtLSBTOiBORVcgUFJPIEtPTlRSQSAtLT4NCiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgICAgICAgICAgdmFyIGluaXRlZENvbW1lbnQgPSBmYWxzZTsNCiAgICAgICAgICAgICQod2luZG93KS5vbignc2Nyb2xsJywgZnVuY3Rpb24gKCkgew0KDQogICAgICAgICAgICAgICAgaWYgKGluaXRlZENvbW1lbnQpIHsgcmV0dXJuOyB9DQogICAgICAgICAgICAgICAgaWYgKCQod2luZG93KS5zY3JvbGxUb3AoKSA8PSAzMDApIHsgcmV0dXJuOyB9DQogICAgICAgICAgICAgICAgaWYgKHBhcnNlSW50KCQoJy5jb21tZW50LWNvdW50OmZpcnN0JykudGV4dCgpKSA8PSAwKSB7IHJldHVybjsgfQ0KDQogICAgICAgICAgICAgICAgaW5pdGVkQ29tbWVudCA9IHRydWU7DQogICAgICAgICAgICAgICAgZ2V0U2NyaXB0KCJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvbGlicy9jb21tZW50L3YyL2pzL3pvaWQubWluLmpzPzIwMjQwODAyMTUiLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgICAgIGdldFNjcmlwdCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2xpYnMvY29tbWVudC92Mi9qcy9icmlkZ2UuanM/MjAyNDA4MDIxNSIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJyN0aGVjb21tZW50MicpLmh0bWwoJycpOw0KICAgICAgICAgICAgICAgICAgICAgICAgQ29tbWVudENvbXBvbmVudCh7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWRBcnRpa2VsOiA3NDcwMTIzLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGthbmFsOiAzOTgsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0ZTogIjAyLTA4LTIwMjQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAiS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudElkOiA5OCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVmaXg6ICJkdGsiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2tvbnRyYTogMCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZW1idWthRGlza3VzaTogIiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgc25lYWtQZWVrOiAxLA0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAga2FuYWxBZHM6ICJkZXRpa19pbmV0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnZBZHM6ICJtb2JpbGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTG9naW4sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25SZXNpemUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25TY3JvbGwsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25BbGVydA0KICAgICAgICAgICAgICAgICAgICAgICAgfSkucmVuZGVyKCcjdGhlY29tbWVudDInKTsNCg0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICB9KQ0KICAgICAgICA8L3NjcmlwdD4NCiAgICAgICAgPCEtLSBFOiBORVcgUFJPIEtPTlRSQSAtLT4NCg0KICAgICAgICA8IS0tRTpLT01FTlRBUi0tPg0KICAgIDwvZGl2Pg0KICAgIDxzdHlsZT4NCiAgICAgICAgI2J0X3RrdCBhcnRpY2xlOm50aC1jaGlsZChuKzcpIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgIH0NCiAgICA8L3N0eWxlPg0KDQogICAgPGRpdiBjbGFzcz0iYm94IGNiLWJlcml0YS10ZXJrYWl0Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94X19oZWFkZXIiPg0KICAgICAgICAgICAgPGgyIGNsYXNzPSJib3hfX3RpdGxlIj5CZXJpdGEgVGVya2FpdDwvaDI+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGlkPSJidF90a3QiIGNsYXNzPSJsaXN0LWNvbnRlbnQgbGlzdC1jb250ZW50LS1ib3JkZXJlZCBoaWRlLW9mLWxpc3QtNiI+DQogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibGlzdC1jb250ZW50X19pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSBtZWRpYS0tbGVmdCBtZWRpYS0taW1hZ2UtcmFkaXVzIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZWRpYV9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImJlcml0YSB0ZXJrYWl0IiBkdHItc2VjPSIiIGR0ci1hY3Q9ImFydGlrZWwiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkPSI3NDY5NzA3IiBkdHItdHRsPSJFbG9uIE11c2sgU2luZGlyIFBldGluanUgT2xpbXBpYWRlIFdhbml0YSB5YW5nIERpZHVnYSBQcmlhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgY2xhc3M9Im1lZGlhX19saW5rIj5FbG9uIE11c2sgU2luZGlyIFBldGluanUgT2xpbXBpYWRlIFdhbml0YSB5YW5nIERpZHVnYQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmlhPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2FydGljbGU+DQogICAgICAgICAgICA8IS0tIFM6bmF0aXZlYmVyaXRhdGVya2FpdCAtLT48aW5zIGRhdGEtbGFiZWxuYW1lPSJuYXRpdmViZXJpdGF0ZXJrYWl0IiBkYXRhLXJldml2ZS16b25laWQ9IjM4MTYiDQogICAgICAgICAgICAgICAgZGF0YS1yZXZpdmUtaWQ9IjBjY2VlY2I5Y2FlOWY1MWEzMTEyM2M1NDE5MTBkNTliIj48L2lucz48IS0tIEU6bmF0aXZlYmVyaXRhdGVya2FpdCAtLT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0Njk1OTYiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IlBldGVtYmFrIFR1cmtpIGt1ZGFqaXR1IFBvc3RpbmcgUGVyYWsgT2xpbXBpYWRlIEJhbmppciBLb21lbnRhciBLb2NhayINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJtZWRpYV9fbGluayI+UGV0ZW1iYWsgVHVya2kga3VkYWppdHUgUG9zdGluZyBQZXJhayBPbGltcGlhZGUgQmFuamlyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvbWVudGFyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvY2FrPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2FydGljbGU+DQogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibGlzdC1jb250ZW50X19pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSBtZWRpYS0tbGVmdCBtZWRpYS0taW1hZ2UtcmFkaXVzIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZWRpYV9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImJlcml0YSB0ZXJrYWl0IiBkdHItc2VjPSIiIGR0ci1hY3Q9ImFydGlrZWwiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkPSI3NDY5NTQ2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJWaXJhbCBTZWVrb3IgTGViYWggR2FuZ2d1IEF0bGV0IFBhbmFoIEtvcnNlbCBkaSBTYWF0IE1lbmVudHVrYW4iIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0ibWVkaWFfX2xpbmsiPlZpcmFsIFNlZWtvciBMZWJhaCBHYW5nZ3UgQXRsZXQgUGFuYWggS29yc2VsIGRpIFNhYXQgTWVuZW50dWthbjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9hcnRpY2xlPg0KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Imxpc3QtY29udGVudF9faXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEgbWVkaWEtLWxlZnQgbWVkaWEtLWltYWdlLXJhZGl1cyI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhX190ZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibWVkaWFfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJiZXJpdGEgdGVya2FpdCIgZHRyLXNlYz0iIiBkdHItYWN0PSJhcnRpa2VsIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZD0iNzQ3MDIwMiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0iQXRsZXQgQW5nZ2FyIE5hZGEgSGFmZXogQmVydGFuZGluZyBzYWF0IEhhbWlsIDcgQnVsYW4gZGkgT2xpbXBpYWRlIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Im1lZGlhX19saW5rIj5BdGxldCBBbmdnYXIgTmFkYSBIYWZleiBCZXJ0YW5kaW5nIHNhYXQgSGFtaWwgNyBCdWxhbiBkaQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPbGltcGlhZGU8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvYXJ0aWNsZT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0NzAxMDgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IkFobGkgU29yb3RpICYjMDM5O1BvbHVzaSYjMDM5OyBUaW5qYSBkaSBTdW5nYWkgU2VpbmUgTG9rYXNpIFRyaWF0bG9uIGt1ZGFqaXR1IGxvZ2luIDIwMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0ibWVkaWFfX2xpbmsiPkFobGkgU29yb3RpICdQb2x1c2knIFRpbmphIGRpIFN1bmdhaSBTZWluZSBMb2thc2kgVHJpYXRsb24NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT2xpbXBpYWRlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhcmlzIDIwMjQ8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvYXJ0aWNsZT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0Njk1NTUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IlBvdHJldCBBdGxldCBBbmdnYXIgTWVzaXIgeWFuZyBWaXJhbCB1c2FpIFVtdW1rYW4gSGFtaWwgZGkga3VkYWppdHUgbG9naW4gMjAyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJtZWRpYV9fbGluayI+UG90cmV0IEF0bGV0IEFuZ2dhciBNZXNpciB5YW5nIFZpcmFsIHVzYWkgVW11bWthbiBIYW1pbCBkaQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPbGltcGlhZGUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFyaXMgMjAyNDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9hcnRpY2xlPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDxkaXYgZC13aWRnZXQ9Im5ld3NmZWVkX3JlY29tbWVuZGF0aW9uIiBkLXJlY29tbWVuZGF0aW9uPjwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJqcy1zaG93LXJlZGlyZWN0LWFydGljbGUiPjwvZGl2Pg0KDQogICAgPGRpdiBkLXdpZGdldD0ib3RoZXJfYXJ0aWNsZXMiIGQtcGFyYW1zPSIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJkd2lkZ2V0X21vYmlsZSBwaC12ZXJ0aWNhbCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIHBoLXRpdGxlIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIgYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW4tbGVmdCBwaC1jb2wtNCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXBpY3R1cmUiPjwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImluLXJpZ2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcm93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00IGJpZyBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbi1sZWZ0IHBoLWNvbC00Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcGljdHVyZSI+PC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW4tcmlnaHQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTEyIGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQgYmlnIGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImluLWxlZnQgcGgtY29sLTQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1waWN0dXJlIj48L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbi1yaWdodCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIgYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCBiaWcgZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj48aW1nIHN0eWxlPSJkaXNwbGF5Om5vbmUiIC8+DQogICAgPC9kaXY+DQoNCiAgICA8ZGl2IGQtd2lkZ2V0PSJkZXRhaWxfbW9zdHBvcHVsYXIiIGQtcGFyYW1zPSIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJkd2lkZ2V0X21vYmlsZSBwaC1saXN0Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0gcGgtdGl0bGUiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00IGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQgZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTEyIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcm93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2PiA8aW1nIHN0eWxlPSJkaXNwbGF5Om5vbmUiIC8+DQogICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPCEtLSBTOkZvb3RlciAtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgaWYgKGhlbHBlci5pbnZpZXcoJCgiZm9vdGVyIikpKSB7DQogICAgICAgICAgICAgICAgICAgIHZhciBmcmFtZWZvb3RlciA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoImZvb3Rlci1sYXp5Iik7DQogICAgICAgICAgICAgICAgICAgIGlmIChmcmFtZWZvb3Rlci5sZW5ndGggIT0gMCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGltZ2ZyYW1lZm9vdGVyID0gZnJhbWVmb290ZXJbMF0ucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtc3JjXSIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbWdmcmFtZWZvb3Rlci5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZ2ZyYW1lZm9vdGVyW2ldLnNldEF0dHJpYnV0ZSgic3JjIiwgaW1nZnJhbWVmb290ZXJbaV0uZ2V0QXR0cmlidXRlKCJkYXRhLXNyYyIpKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWdmcmFtZWZvb3RlcltpXS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtc3JjIikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KICAgICAgICB9KTsNCiAgICA8L3NjcmlwdD4NCiAgICA8Zm9vdGVyIGNsYXNzPSJmb290ZXIgZm9vdGVyLWxhenkiIGlkPSJmb290ZXIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJfX2JvcmRlciI+PC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9ImxvZ29kZXRpayIgZHRyLWFjdD0ibG9nbyBkZXRpayIgb25jbGljaz0iX3B0KHRoaXMpIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICBjbGFzcz0iZm9vdGVyX19sb2dvIj4NCiAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy93ZWJwL20vbG9nb19kZXRpa2NvbS53ZWJwP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgYWx0PSJpbWctYWx0IiB0aXRsZT0iaW1nLXRpdGxlIiB3aWR0aD0iMTYwIiBoZWlnaHQ9IjMwIj4NCiAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlci10aXRsZSBmb290ZXItdGl0bGVfX3BhcnRvZiI+cGFydCBvZiA8aW1nDQogICAgICAgICAgICAgICAgICAgIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy93ZWJwL2xvZ29fZGV0aWtuZXR3b3JrLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICBhbHQ9ImltZy1hbHQiIHRpdGxlPSJpbWctdGl0bGUiIHdpZHRoPSI4MCIgaGVpZ2h0PSIyOSI+PC9kaXY+DQogICAgICAgICAgICA8bmF2Pg0KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tY2VudGVyIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJyZWRha3NpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWRha3NpIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InBlZG9tYW4gbWVkaWEgc2liZXIiIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiByZWw9Im5vZm9sbG93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQZWRvbWFuIE1lZGlhIFNpYmVyIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJrYXJpciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgS2FyaXIgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSBsYXlhbmFuIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImtvdGFrIHBvcyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgS290YWsgUG9zIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJpbmZvIGlrbGFuIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiByZWw9Im5vZm9sbG93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmZvIElrbGFuIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InByaXZhY3kgcG9saWN5IiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpdmFjeSBQb2xpY3kgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSBsYXlhbmFuIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRpc2NsYWltZXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIHJlbD0ibm9mb2xsb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpc2NsYWltZXIgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L25hdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9fc29jaWFsIj4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ic29jbWVkIGRldGlrY29tIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IndoYXRzYXBwIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICAgICAgY2xhc3M9Imljb24taXRlbSBpY29uLWl0ZW1fX3dhIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24gaWNvbi13aGF0c2FwcCI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJmYWNlYm9vayIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX19mYiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tZmFjZWJvb2siPjwvaT4gPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZvb3RlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJzb2NtZWQgZGV0aWtjb20iIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0idHdpdHRlciIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX190dyI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tdHdpdHRlciI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJpbnN0YWdyYW0iDQogICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9faWciPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLWluc3RhZ3JhbSI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJsaW5rZWRpbiIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX19pbiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tbGlua2VkaW4iPjwvaT4gPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZvb3RlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJzb2NtZWQgZGV0aWtjb20iIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0ieW91dHViZSIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX195dCI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24teW91dHViZSI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJ0aWt0b2siIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9fdGsiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLXRpa3RvayI+PC9pPiA8L2E+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPHNjcmlwdD4NCiAgICAgICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgICAgICB2YXIgbXlTY3JvbGxQb3MgPSAkKCcubmF2YmFyLWZpcnN0IHVsIGxpLm5hdl9faXRlbS0tYWN0aXZlJykucG9zaXRpb24oKS5sZWZ0IC0gJCgnLm5hdmJhci1maXJzdCB1bCBsaS5uYXZfX2l0ZW0tLWFjdGl2ZScpLndpZHRoKCk7DQoNCiAgICAgICAgICAgICAgICAgICAgaWYgKCQoJy5zY3JvbGxfX3dyYXAgbGk6bnRoLWNoaWxkKDIpJykuaGFzQ2xhc3MoJ25hdl9faXRlbS0tYWN0aXZlJykpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJy5uYXZiYXItZmlyc3QgdWwnKS5hbmltYXRlKHsgc2Nyb2xsTGVmdDogMCB9KTsNCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJy5uYXZiYXItZmlyc3QgdWwnKS5hbmltYXRlKHsgc2Nyb2xsTGVmdDogbXlTY3JvbGxQb3MgfSk7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdbYWN0aXZlU2Nyb2xsTGV2ZWwgbm90IEZvdW5kXScpDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgPC9zY3JpcHQ+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJfX2dldC1hcHAiPg0KICAgICAgICAgICAgICAgIERvd25sb2FkIGFwbGlrYXNpIGRldGlrY29tDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyX19hcHAtc3RvcmUiPg0KICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibGluayBidWlsZGluZyBmb290ZXIiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InBsYXkgc3RvcmUiIGhyZWY9Imh0dHBzOi8vcGxheS5nb29nbGUuY29tL3N0b3JlL2FwcHMvZGV0YWlscz9pZD1vcmcuZGV0aWtjb20ucnNzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL3dlYnAvbS9zdG9yZS1hbmRyb2lkLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0icGxheSBzdG9yZSIgdGl0bGU9IlBsYXkgU3RvcmUiIHdpZHRoPSI5OCIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImxpbmsgYnVpbGRpbmcgZm9vdGVyIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJhcHAgc3RvcmUiIGhyZWY9Imh0dHBzOi8vYXBwcy5hcHBsZS5jb20vaWQvYXBwL2RldGlrY29tLWJlcml0YS10ZXJsZW5na2FwL2lkNDQyOTE0OTg4Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL3dlYnAvbS9zdG9yZS1pb3Mud2VicD92PTIwMjQwODAyMTU0NDMiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSJhcHAgc3RvcmUiIHRpdGxlPSJBcHAgU3RvcmUiIHdpZHRoPSI5NyIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImxpbmsgYnVpbGRpbmcgZm9vdGVyIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJhcHAgZ2FsbGVyeSIgaHJlZj0iaHR0cHM6Ly9hcHBnYWxsZXJ5NS5odWF3ZWkuY29tLyMvYXBwL0MxMDA2NzIwNDUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvd2VicC9tL3N0b3JlLWh1YXdlaS1hcHBzLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0iYXBwIGdhbGxlcnkiIHRpdGxlPSJBcHAgR2FsbGVyeSIgd2lkdGg9IjExNCIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyX19jb3B5Ij4NCiAgICAgICAgICAgICAgICBDb3B5cmlnaHQgQCAyMDI0IGRldGlrY29tLCBBbGwgcmlnaHQgcmVzZXJ2ZWQNCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBkLXdpZGdldD0iYnl0ZWRhbmNlIiBkLWxvYWRlZD0iMSIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+PC9kaXY+DQogICAgPC9mb290ZXI+DQoNCiAgICA8IS0tIHM6bmV4dEFydGljbGVSZXBvIC0tPg0KICAgIDxkaXYgY2xhc3M9ImJvdHRvbS1zdGlja3kiPg0KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgICAgICAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgdmFyIGZiYW5lciA9ICQoJy5mb290ZXJfYmFubmVyJyk7DQogICAgICAgICAgICAgICAgdmFyIGJ0bVN0aWNreSA9ICQoJy5ib3R0b20tc3RpY2t5Jyk7DQogICAgICAgICAgICAgICAgdmFyIHNoclN0aWNreSA9ICQoJy5zdGlja3ktc2hhcmUnKTsNCiAgICAgICAgICAgICAgICB2YXIgZmJhbmVySGVpZ2h0ID0gZmJhbmVyLm91dGVySGVpZ2h0KCk7DQoNCiAgICAgICAgICAgICAgICBpZiAoZmJhbmVyKSB7DQogICAgICAgICAgICAgICAgICAgIGJ0bVN0aWNreS5jc3MoJ2JvdHRvbScsIGZiYW5lckhlaWdodCk7DQogICAgICAgICAgICAgICAgICAgIHNoclN0aWNreS5jc3MoJ2JvdHRvbScsIGZiYW5lckhlaWdodCk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIDwvc2NyaXB0Pg0KICAgIDwvZGl2Pg0KICAgIDwhLS0gZTpuZXh0QXJ0aWNsZVJlcG8gLS0+DQoNCiAgICA8IS0tIFM6ZGV0aWsuanMgLS0+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9kZXRpay52My4yLmpzP3Y9MjAyNDA4MDIxNTQ0MyI+PC9zY3JpcHQ+DQogICAgPCEtLSBTOmRldGlrLmpzIC0tPg0KDQogICAgPHNjcmlwdD4NCiAgICAgICAgbGV0IGluaXRlZG9lbWJlZGl0cHYyID0gZmFsc2U7DQogICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICBpZiAoaW5pdGVkb2VtYmVkaXRwdjIpIHsgcmV0dXJuOyB9DQogICAgICAgICAgICBpZiAod2luZG93LnNjcm9sbFkgPD0gMTAwKSB7IHJldHVybjsgfQ0KICAgICAgICAgICAgaW5pdGVkb2VtYmVkaXRwdjIgPSB0cnVlOw0KICAgICAgICAgICAgZ2V0U2NyaXB0KCdodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL29lbWJlZC5pdHAudjIuanM/dj0yMDI0MDgwMjE1NDQzJywgZnVuY3Rpb24gKCkgew0KDQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSkNCg0KICAgIDwvc2NyaXB0Pg0KDQogICAgPCEtLSBTOnRhZ2Zvb3QgLS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgdmFyIGxvYWRTY3JpcHRBc3luYyA9IGZ1bmN0aW9uICh1cmkpIHsNCiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7DQogICAgICAgICAgICAgICAgdmFyIHRhZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOw0KICAgICAgICAgICAgICAgIHRhZy5zcmMgPSB1cmk7DQogICAgICAgICAgICAgICAgdGFnLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgICAgICAgICB0YWcub25sb2FkID0gKCkgPT4gew0KICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7DQogICAgICAgICAgICAgICAgfTsNCiAgICAgICAgICAgICAgICB2YXIgZmlyc3RTY3JpcHRUYWcgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0JylbMF07DQogICAgICAgICAgICAgICAgZmlyc3RTY3JpcHRUYWcucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodGFnLCBmaXJzdFNjcmlwdFRhZyk7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfQ0KICAgICAgICB2YXIgc2NyaXB0TG9hZGVkID0gbG9hZFNjcmlwdEFzeW5jKCdodHRwczovL25ld3Jldml2ZS5kZXRpay5jb20vZGVsaXZlcnkvYXN5bmNqcy5waHAnKTsNCg0KICAgICAgICBzY3JpcHRMb2FkZWQudGhlbihmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB3aW5kb3cucmV2aXZlQXN5bmNbIjBjY2VlY2I5Y2FlOWY1MWEzMTEyM2M1NDE5MTBkNTliIl0uYWRkRXZlbnRMaXN0ZW5lcignYWZ0ZXJSZW5kZXJCYW5uZXInLCBydkNhbGxiYWNrQmFubmVyKTsNCg0KICAgICAgICAgICAgZnVuY3Rpb24gcnZDYWxsYmFja0Jhbm5lcihkYXRhKSB7DQoNCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhkYXRhKTsNCiAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgZGF0YS5kZXRhaWwubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgICAgICAgY2hlY2tCYW5uZXJBdmFpbGFibGUoZGF0YS5kZXRhaWxbaV0sIDkyMywgaW50ZXJzdGl0aWFsLCB0cnVlKTsNCiAgICAgICAgICAgICAgICAgICAgY2hlY2tCYW5uZXJBdmFpbGFibGUoZGF0YS5kZXRhaWxbaV0sIDkyMSwgZGV0ZWN0SGVpZ2h0QmwsIHRydWUpOw0KICAgICAgICAgICAgICAgICAgICBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhLmRldGFpbFtpXSwgMTA5NiwgZGV0ZWN0V2lkdGhOYXZBZHMsIHRydWUpOw0KICAgICAgICAgICAgICAgICAgICBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhLmRldGFpbFtpXSwgMTQ4MiwgZGV0ZWN0V2lkdGhOYXZBZHMsIHRydWUpOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgfQ0KICAgICAgICB9KTsNCg0KICAgICAgICBmdW5jdGlvbiBhZHNfcmVtb3ZlKHBhcmFtKSB7DQogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChwYXJhbSkucmVtb3ZlKCk7DQogICAgICAgIH0NCg0KICAgICAgICBmdW5jdGlvbiBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhRGV0YWlsLCBjaGVja1pvbmUsIGNhbGxGdW5jLCBhdmFpbGFibGUgPSBmYWxzZSkgew0KICAgICAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgICAgICB2YXIgc2hvdyA9IGF2YWlsYWJsZSA/IDEgOiAwOw0KICAgICAgICAgICAgICAgIGlmIChzaG93ID09IDApIHsNCiAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGFEZXRhaWwuem9uZWlkID09IGNoZWNrWm9uZSAmJiBkYXRhRGV0YWlsLmJhbm5lcmlkID09IHNob3cpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxGdW5jKCk7DQogICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnem9uZSBpZCBhZGp1c3RtZW50IDogJyArIGNoZWNrWm9uZSk7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgaWYgKHNob3cgPT0gMSkgew0KICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YURldGFpbC56b25laWQgPT0gY2hlY2tab25lICYmIGRhdGFEZXRhaWwuYmFubmVyaWQgPj0gc2hvdykgew0KICAgICAgICAgICAgICAgICAgICAgICAgY2FsbEZ1bmMoKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCd6b25lIGlkIGFkanVzdG1lbnQgOiAnICsgY2hlY2tab25lKTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgIDwvc2NyaXB0Pg0KDQoNCg0KICAgIDwhLS0gUGl4ZWwgVGFnIEF1ZGllbmNlIERGUCAtLT4NCg0KICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4NCiAgICAgICAgdmFyIGF4ZWwgPSBNYXRoLnJhbmRvbSgpICsgJyc7DQogICAgICAgIHZhciBhID0gYXhlbCAqIDEwMDAwMDAwMDAwMDAwOw0KICAgICAgICBkb2N1bWVudC53cml0ZSgnPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPScgKyBhICsgJztkY19zZWc9MTAxMDc5MTM4OTtnZW49TWFsZT8iIHdpZHRoPTEgaGVpZ2h0PTEgYm9yZGVyPTAvPicpOw0KICAgIDwvc2NyaXB0Pg0KICAgIDxub3NjcmlwdD4NCiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPTE7ZGNfc2VnPTEwMTA3OTEzODk7Z2VuPU1hbGU/Ig0KICAgICAgICAgICAgd2lkdGg9MSBoZWlnaHQ9MSBib3JkZXI9MCAvPg0KICAgIDwvbm9zY3JpcHQ+DQoNCiAgICA8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+DQogICAgICAgIHZhciBheGVsID0gTWF0aC5yYW5kb20oKSArICcnOw0KICAgICAgICB2YXIgYSA9IGF4ZWwgKiAxMDAwMDAwMDAwMDAwMDsNCiAgICAgICAgZG9jdW1lbnQud3JpdGUoJzxpbWcgc3JjPSJodHRwczovL3B1YmFkcy5nLmRvdWJsZWNsaWNrLm5ldC9hY3Rpdml0eTtkY19pdT0vNDkwNTUzNi9ERlBBdWRpZW5jZVBpeGVsO29yZD0nICsgYSArICc7ZGNfc2VnPTEwMDk4NzU3MjQ7Z2VuPUZlbWFsZT8iIHdpZHRoPTEgaGVpZ2h0PTEgYm9yZGVyPTAvPicpOw0KICAgIDwvc2NyaXB0Pg0KICAgIDxub3NjcmlwdD4NCiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPTE7ZGNfc2VnPTEwMDk4NzU3MjQ7Z2VuPUZlbWFsZT8iDQogICAgICAgICAgICB3aWR0aD0xIGhlaWdodD0xIGJvcmRlcj0wIC8+DQogICAgPC9ub3NjcmlwdD4NCg0KICAgIDwhLS0gRW5kIFBpeGVsIFRhZyBBdWRpZW5jZSBERlAgLS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgZ29vZ2xldGFnLmNtZC5wdXNoKGZ1bmN0aW9uICgpIHsgZ29vZ2xldGFnLmRpc3BsYXkoJ2Rpdi1ncHQtYWQtMTUzNjUxNDU4MzE0MS0wJyk7IH0pOw0KICAgIDwvc2NyaXB0Pg0KICAgIDwhLS0gRTp0YWdmb290IC0tPg0KICAgIDwhLS0gRTpGb290ZXIgLS0+DQoNCiAgICA8IS0tIFM6c3RpY2t5c3RhdGljYmFubmVyIC0tPg0KICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9iYW5uZXIgYWRzLXNsb3QiDQogICAgICAgIHN0eWxlPSJkaXNwbGF5Om5vbmU7IHotaW5kZXg6IDk5OTk7cG9zaXRpb246IGZpeGVkOyBib3R0b206IDA7d2lkdGg6IDEwMCU7IHBhZGRpbmctdG9wOiAzMHB4O3BhZGRpbmctYm90dG9tOiAyMHB4OyBiYWNrZ3JvdW5kOiByZ2IoMjI0IDIyNCAyMjUpOyI+DQogICAgICAgIDxzdHlsZT4NCiAgICAgICAgICAgIC5mb290ZXJfYmFubmVyOjpiZWZvcmUgew0KICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIC5mbG9hdGluZ3NoYXJlLA0KICAgICAgICAgICAgYVtkdHItc2VjPSJiYWNrIHRvIHRvcCJdIHsNCiAgICAgICAgICAgICAgICBib3R0b206IDExMHB4Ow0KICAgICAgICAgICAgfQ0KICAgICAgICA8L3N0eWxlPg0KICAgICAgICA8c3BhbiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgY2xhc3M9InNzYi1jbG9zZSINCiAgICAgICAgICAgIHN0eWxlPSJjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO3Bvc2l0aW9uOiBhYnNvbHV0ZTtyaWdodDogNSU7dG9wOiAzcHg7aGVpZ2h0OiAyMHB4O2JhY2tncm91bmQtY29sb3I6IHdoaXRlO2JvcmRlci1yYWRpdXM6IDUwJTsgei1pbmRleDo5OTk5OTsiPjxpbWcNCiAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vYXdzY2Ruc3RhdGljLmRldGlrLm5ldC5pZC9saXZlL19ybWJhc3NldHMvc3NiL2Nsb3NlLXJvdW5kZWQucG5nIg0KICAgICAgICAgICAgICAgIHN0eWxlPSJ3aWR0aDogMjBweDtoZWlnaHQ6IDIwcHg7Ij48L3NwYW4+DQogICAgICAgIDxkaXYgY2xhc3M9InNzYi1jb250ZW50IiBzdHlsZT0ibWluLWhlaWdodDogNTBweDsiPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDwhLS0gPHNjcmlwdD4NCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgJCgiLnNzYi1jbG9zZSIpLmNsaWNrKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCIuZm9vdGVyX2Jhbm5lciIpLnJlbW92ZSgpOw0KICAgICAgICAgICAgICAgICQoImFbZHRyLXNlYz0nYmFjayB0byB0b3AnXSIpLmFuaW1hdGUoeyAiYm90dG9tIjogIjYwcHgiIH0sIDMwMCk7DQogICAgICAgICAgICAgICAgJCgiLmJhY2stdG9wIikuYW5pbWF0ZSh7ICJib3R0b20iOiAiNjBweCIgfSwgMzAwKTsNCiAgICAgICAgICAgICAgICAkKCIuc3RpY2t5LXNoYXJlIikuY3NzKHsgImJvdHRvbSI6ICIwIiB9KTsNCiAgICAgICAgICAgICAgICAkKCIuZmxvYXRpbmdzaGFyZSIpLmNzcyh7ICJib3R0b20iOiAiNjBweCIsICJtYXJnaW4tYm90dG9tIjogInVuc2V0IiB9KTsNCiAgICAgICAgICAgIH0pOw0KICAgICAgICB9KTsNCiAgICA8L3NjcmlwdD5FOnN0aWNreXN0YXRpY2Jhbm5lciAtLT4NCg0KDQogICAgPCEtLSBDT1JFIFNUWUxFIC0tPg0KDQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvaW5ldDIvbS9jc3Mvc3R5bGUuY3NzP3Y9MjAyNDA4MDIxNTQ0MyIgYXM9InN0eWxlIg0KICAgICAgICBvbmxvYWQ9InRoaXMub25sb2FkPW51bGw7dGhpcy5yZWw9J3N0eWxlc2hlZXQnIj4NCiAgICA8bm9zY3JpcHQ+DQogICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2luZXQyL20vY3NzL3N0eWxlLmNzcz92PTIwMjQwODAyMTU0NDMiPg0KICAgIDwvbm9zY3JpcHQ+DQoNCg0KDQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9saXF1aWRpbWFnZS5qcz92PTIwMjQwODAyMTU0NDMiPjwvc2NyaXB0Pg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvanMvYWRzY2xvc2UuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCg0KICAgIDwhLS0gczpmb290ZXIgYXNzZXQgbWFuYWdlciAtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL2xpbmtjb3BpZWRwb3AuanM/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICBkZWZlcj0iIj48L3NjcmlwdD4NCiAgICA8IS0tIGU6Zm9vdGVyIGFzc2V0IG1hbmFnZXIgLS0+DQogICAgPCEtLSBzOmZvb3RlciBpbmxpbmUgLS0+DQogICAgPHNjcmlwdD4gICAgICAgICAgICBnZXRTY3JpcHQoJ2h0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvanMvem9vbWltZy5qcz92PTIwMjQwODAyMTU0NDMnLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB6b29tX2ltZyh7IHN0YXR1czogdHJ1ZSwgbV92aWV3cG9ydDogMTAgfSk7IC8vWm9vbSBJbWFnZSBTaXplIFZpZXdwb3J0DQogICAgICAgIH0pPC9zY3JpcHQ+DQogICAgPCEtLSBlOmZvb3RlciBpbmxpbmUgLS0+DQo8L2JvZHk+DQoNCjwvaHRtbD4NCjwhLS1yZXBsYWNlZC0tPg==)format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Inter";font-style:normal;font-weight:400;src:;unicode-range:U+0370-03FF}@font-face{font-family:"Inter";font-style:normal;font-weight:400;src:url(data:text/html;base64,DQo8IURPQ1RZUEUgaHRtbD4NCjxodG1sIGxhbmc9ImlkLUlEIj4NCg0KPGhlYWQ+DQogICAgPHN0eWxlPg0KICAgICAgICBhLA0KICAgICAgICBodG1sIHsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24sDQogICAgICAgIHN1cCB7DQogICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUNCiAgICAgICAgfQ0KDQogICAgICAgIGJvZHksDQogICAgICAgIGJ1dHRvbiwNCiAgICAgICAgZmlndXJlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMA0KICAgICAgICB9DQoNCiAgICAgICAgYm9keSwNCiAgICAgICAgaHRtbCB7DQogICAgICAgICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7DQogICAgICAgICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tdHdpdHRlcjpiZWZvcmUsDQogICAgICAgIC5scWQgew0KICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIC5ub3RpZiwNCiAgICAgICAgLm1lZGlhX19saW5rOmJlZm9yZSwNCiAgICAgICAgLm5hdmJhci1maXJzdCAubmF2X19pdGVtLA0KICAgICAgICAubmF2YmFyLXNlY29uZCAubmF2X19pdGVtLA0KICAgICAgICAudGFibGUtd3JhcCB0ZCB7DQogICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLA0KICAgICAgICAubmF2YmFyLXNlY29uZCAubmF2IGEsDQogICAgICAgIHRhYmxlIHRkIHsNCiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3ANCiAgICAgICAgfQ0KDQogICAgICAgIGEsDQogICAgICAgIGlucyB7DQogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIGFydGljbGUsDQogICAgICAgIGZpZ2NhcHRpb24sDQogICAgICAgIGZpZ3VyZSwNCiAgICAgICAgZm9vdGVyLA0KICAgICAgICBoZWFkZXIsDQogICAgICAgIG5hdiB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jaw0KICAgICAgICB9DQoNCiAgICAgICAgaHRtbCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24sDQogICAgICAgIGh0bWwgew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsDQogICAgICAgIH0NCg0KICAgICAgICBhIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IDAgMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dCwgb3BhY2l0eSAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIC4zcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQsIG9wYWNpdHkgLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIC4zcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQsIG9wYWNpdHkgLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dCwgb3BhY2l0eSAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3MgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgYTphY3RpdmUsDQogICAgICAgIGE6Zm9jdXMsDQogICAgICAgIGE6aG92ZXIsDQogICAgICAgIGJ1dHRvbjpmb2N1cyB7DQogICAgICAgICAgICBvdXRsaW5lOiAwDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIHN0cm9uZywNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmQtY2xvc2UsDQogICAgICAgIC5xdW90ZXNpc2lwIGJsb2NrcXVvdGUsDQogICAgICAgIHN0cm9uZyB7DQogICAgICAgICAgICBmb250LXdlaWdodDogNzAwDQogICAgICAgIH0NCg0KICAgICAgICBzdXAgew0KICAgICAgICAgICAgZm9udC1zaXplOiA3NSU7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHRvcDogLS41ZW0NCiAgICAgICAgfQ0KDQogICAgICAgIGltZyB7DQogICAgICAgICAgICBib3JkZXI6IDA7DQogICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24gew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7DQogICAgICAgICAgICBmb250LXNpemU6IDEwMCU7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsOw0KICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgYXBwZWFyYW5jZTogYnV0dG9uOw0KICAgICAgICAgICAgDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19kYXRlLA0KICAgICAgICAuZGV0YWlsX19tZWRpYS1jYXB0aW9uLA0KICAgICAgICAuZm9vdGVyIC5uYXYsDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbSwNCiAgICAgICAgLnF1b3Rlc2lzaXAsDQogICAgICAgIGJvZHkgew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IEhlbHZldGljYS1GRiwgQXJpYWwsIFRhaG9tYSwgc2Fucy1zZXJpZg0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0biwNCiAgICAgICAgYm9keSB7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS40DQogICAgICAgIH0NCg0KICAgICAgICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIgew0KICAgICAgICAgICAgYm9yZGVyOiAwOw0KICAgICAgICAgICAgcGFkZGluZzogMA0KICAgICAgICB9DQoNCiAgICAgICAgdGFibGUgew0KICAgICAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsNCiAgICAgICAgICAgIGJvcmRlci1zcGFjaW5nOiAwDQogICAgICAgIH0NCg0KICAgICAgICA6cm9vdCB7DQogICAgICAgICAgICAtLWt1bGVyLTE6ICMyMTQwOWE7DQogICAgICAgICAgICAtLWt1bGVyLTI6ICMwMDdjYmQ7DQogICAgICAgICAgICAtLWt1bGVyLTM6ICNlZjY3MmY7DQogICAgICAgICAgICAtLWt1bGVyLTE6ICM1NjJiNzc7DQogICAgICAgICAgICAtLWt1bGVyLTI6ICM4MTJlODg7DQogICAgICAgICAgICAtLWt1bGVyLTM6ICNhYTI0OGMNCiAgICAgICAgfQ0KDQogICAgICAgIGJvZHkgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7DQogICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOw0KICAgICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQNCiAgICAgICAgfQ0KDQogICAgICAgICosDQogICAgICAgIDphZnRlciwNCiAgICAgICAgOmJlZm9yZSB7DQogICAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94DQogICAgICAgIH0NCg0KICAgICAgICAuY2xlYXJmaXg6YWZ0ZXIsDQogICAgICAgIC5jbGVhcmZpeDpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIiAiOw0KICAgICAgICAgICAgZGlzcGxheTogdGFibGUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jbGVhcmZpeDphZnRlciB7DQogICAgICAgICAgICBjbGVhcjogYm90aA0KICAgICAgICB9DQoNCiAgICAgICAgYTpob3ZlciB7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSkNCiAgICAgICAgfQ0KDQogICAgICAgIHAgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIGlucyB7DQogICAgICAgICAgICBkaXNwbGF5OiBjb250ZW50cw0KICAgICAgICB9DQoNCiAgICAgICAgdWwgew0KICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMjRweDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICB1bCBsaSB7DQogICAgICAgICAgICBwYWRkaW5nOiA4cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgZm9vdGVyLA0KICAgICAgICBoZWFkZXIgew0KICAgICAgICAgICAgZGlzcGxheTogdGFibGU7DQogICAgICAgICAgICB3aWR0aDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6MTAyNHB4KSB7DQoNCiAgICAgICAgICAgIGZvb3RlciwNCiAgICAgICAgICAgIGhlYWRlciB7DQogICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIGgxLA0KICAgICAgICBoMiwNCiAgICAgICAgaDMsDQogICAgICAgIGg0LA0KICAgICAgICBoNSwNCiAgICAgICAgaDYgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zDQogICAgICAgIH0NCg0KICAgICAgICBoMSB7DQogICAgICAgICAgICBmb250LXNpemU6IDQwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLS1tZCwNCiAgICAgICAgaDIgew0KICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4DQogICAgICAgIH0NCg0KICAgICAgICBoMyB7DQogICAgICAgICAgICBmb250LXNpemU6IDI4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIGg0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgaDUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4DQogICAgICAgIH0NCg0KICAgICAgICBoNiB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb250LXh4cyB7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvbnRhaW5lciB7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygyNnB4IC8gMS40NDQ0NDQ0NDQ0NDQpOw0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygyNnB4IC8gMS40NDQ0NDQ0NDQ0NDQpOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8NCiAgICAgICAgfQ0KDQogICAgICAgIC5ncmlkLXJvdyB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTI2cHggLyA0LjMzMzMzMzMzMzMpOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0yNnB4IC8gNC4zMzMzMzMzMzMzKQ0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94LA0KICAgICAgICAudGFibGUtd3JhcCB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm5vLWd1dHRlciB7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5vLWd1dHRlcj5bY2xhc3MqPWNvbHVtbi1dIHsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2x1bW4tNiwNCiAgICAgICAgLmNvbHVtbi1hdXRvIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDI2cHggLyA0LjMzMzMzMzMzMzMpOw0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygyNnB4IC8gNC4zMzMzMzMzMzMzKQ0KICAgICAgICB9DQoNCiAgICAgICAgLmNvbHVtbi1hdXRvIHsNCiAgICAgICAgICAgIC1tcy1mbGV4OiAwIDAgYXV0bzsNCiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvOw0KICAgICAgICAgICAgd2lkdGg6IGF1dG87DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2x1bW4tNiB7DQogICAgICAgICAgICAtbXMtZmxleDogY2FsYyg2IC8gMTIpOw0KICAgICAgICAgICAgZmxleDogMCAwIGNhbGMoMTAwJSAvICgxMiAvIDYpKTsNCiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC8gKDEyIC8gNikpDQogICAgICAgIH0NCg0KICAgICAgICB0YWJsZSB0ZCB7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjNiM2IzOw0KICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZS13cmFwIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsNCiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaA0KICAgICAgICB9DQoNCiAgICAgICAgLmxxZCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tZGVmYXVsdCwNCiAgICAgICAgYnV0dG9uIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxxZCBpbWcgew0KICAgICAgICAgICAgZGlzcGxheTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94IHsNCiAgICAgICAgICAgIGhlaWdodDogMDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAuNHMgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjRzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLA0KICAgICAgICAuaWNvbiB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLnJhdGlvYm94LS0xNi05LA0KICAgICAgICAucmF0aW9ib3gucmF0aW9fMTZfOSB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlDQogICAgICAgIH0NCg0KICAgICAgICAucmF0aW9ib3ggaWZyYW1lIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAucmF0aW9ib3gtLTQtMyB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzUlDQogICAgICAgIH0NCg0KICAgICAgICBidXR0b24gew0KICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtby10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4gew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24sDQogICAgICAgIC5pY29uLWl0ZW0gew0KICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tc20gew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgcGFkZGluZzogY2FsYygxMnB4IC8gMykgMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tbWQgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDZweDsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG46aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBvcGFjaXR5OiAuOA0KICAgICAgICB9DQoNCiAgICAgICAgLmJ0bi0tb3V0bGluZSB7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwOw0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAwIDAgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24gew0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLS14cyB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4gLmljb24gew0KICAgICAgICAgICAgbWFyZ2luOiAwIDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudCwNCiAgICAgICAgLmxpc3QtY29udGVudF9faXRlbTpsYXN0LWNoaWxkIHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWFycm93LXJpZ2h0OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDY5Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tY2hldnJvbi1kb3duOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDZkIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tYXJyb3ctdXA6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcNmYiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1saXZlLXR2OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDc1Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tY2xvc2U6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcNGYiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1ub3RpZmljYXRpb24tYmc6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcMjIiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi1jb21tZW50OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDJkIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tbGluazpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlw3ZSINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWZhY2Vib29rOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXDYxIg0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tdHdpdHRlcjpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICB3aWR0aDogMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogMThweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMTgnIGhlaWdodD0nMTcnIHZpZXdCb3g9JzAgMCAxOCAxNycgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHBzOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J00wLjQyNTk4NiAwLjg3NzQ0MUw2Ljk5NDM3IDkuNjU1OTFMMC4zOTA2MjUgMTYuNzkwMUgxLjg3NThMNy42NTczOSAxMC41Mzk5TDEyLjMzMzkgMTYuNzkwMUgxNy4zOTA2TDEwLjQ1OTggNy41MTY1NUwxNi42MDM4IDAuODc3NDQxSDE1LjExODdMOS43OTY3NiA2LjYzMjUxTDUuNDkxNTEgMC44Nzc0NDFIMC40MzQ4MjdIMC40MjU5ODZaTTIuNjA5NTUgMS45NzM2NEg0LjkzNDU3TDE1LjE5ODIgMTUuNjkzOUgxMi44NzMyTDIuNjA5NTUgMS45NzM2NFonIGZpbGw9J3doaXRlJy8lM0UlM0Mvc3ZnJTNFJTBBIik7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWluc3RhZ3JhbTpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlxlMDA2Ig0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24tbGlua2VkaW46YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcZTAwNyINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLXlvdXR1YmU6YmVmb3JlIHsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICJcZTAwOCINCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLXdoYXRzYXBwOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiXGUwMGMiDQogICAgICAgIH0NCg0KICAgICAgICAuaWNvbi10ZWxlZ3JhbTpiZWZvcmUgew0KICAgICAgICAgICAgY29udGVudDogIlxlMDBlIg0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSwNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSB7DQogICAgICAgICAgICBsZWZ0OiAtMTAwJTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIG9wYWNpdHk6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5jb3B5X3VybCAubm90aWYgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgcGFkZGluZzogOHB4Ow0KICAgICAgICAgICAgbWFyZ2luOiAwOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgei1pbmRleDogNTsNCiAgICAgICAgICAgIGJvdHRvbTogMDsNCiAgICAgICAgICAgIGxlZnQ6IDUwJTsNCiAgICAgICAgICAgIHdpZHRoOiBhdXRvOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOw0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBzY2FsZSgwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmNvcHlfdXJsIC5ub3RpZjpiZWZvcmUgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZDsNCiAgICAgICAgICAgIHJpZ2h0OiA1MCU7DQogICAgICAgICAgICBtYXJnaW46IDAgLTdweCAwIDA7DQogICAgICAgICAgICB0b3A6IDEwMCU7DQogICAgICAgICAgICBib3JkZXItdG9wOiA4cHggc29saWQgcmVkOw0KICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50Ow0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSB7DQogICAgICAgICAgICB6LWluZGV4OiA1Ow0KICAgICAgICAgICAgcmlnaHQ6IDA7DQogICAgICAgICAgICBoZWlnaHQ6IDA7DQogICAgICAgICAgICB0b3A6IDg4cHg7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSwNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSAubWVkaWEtLWxlZnQgew0KICAgICAgICAgICAgaGVpZ2h0OiA2MnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX190ZXh0IHsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX190aXRsZSB7DQogICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4Ow0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX19saW5rIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGFiZWwgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOw0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xNWRlZywgMGRlZyk7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2tldygtMTVkZWcsIDBkZWcpOw0KICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2tldygtMTVkZWcsIDBkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBza2V3KC0xNWRlZywgMGRlZyk7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXcoLTE1ZGVnLCAwZGVnKTsNCiAgICAgICAgICAgIGxlZnQ6IC04cHg7DQogICAgICAgICAgICB0b3A6IGF1dG87DQogICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAyNHB4Ow0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgYm94LXNoYWRvdzogMCA2cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgLjgpDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCJpbWFnZXMvYmctZGV0aWtwYWdpLndlYnAiKSB0b3AvMTAxJSBuby1yZXBlYXQgI2ZmNGMwNTsNCiAgICAgICAgICAgIGJvdHRvbTogMTAwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAxMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAuMnMgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpX19jb250ZW50IHsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggNTBweCA1MHB4IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5icmVha2luZy1kZXRpa3BhZ2lfX2Nsb3NlIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHotaW5kZXg6IDU7DQogICAgICAgICAgICB3aWR0aDogMjdweDsNCiAgICAgICAgICAgIGhlaWdodDogMjdweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgdG9wOiAtMTNweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7DQogICAgICAgICAgICBjb2xvcjogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaSAubWVkaWEtLWxlZnQgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICB3aWR0aDogMTEwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDgwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAzDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmUgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmUgc3BhbiB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZlNjAwOw0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHggMCAyMHB4Ow0KICAgICAgICAgICAgY29sb3I6ICNlZTQwMjM7DQogICAgICAgICAgICBmb250LXNpemU6IDlweDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSBzcGFuOmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHdpZHRoOiA3cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDdweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogM3B4Ow0KICAgICAgICAgICAgbGVmdDogN3B4Ow0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgICAgICAgICAgIGFuaW1hdGlvbjogMXMgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICAtbW96LWFuaW1hdGlvbjogMXMgaW5maW5pdGUgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogMXMgaW5maW5pdGUgbGl2ZS1kZXRpa3BhZ2k7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjYzcyMDI2DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmVfX2JvZHkgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBnYXA6IDE2cHg7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19sZWZ0IHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19yaWdodCB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZ2FwOiAxNnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4Ow0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX3RleHQgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBsaW5lLWNsYW1wOiAzOw0KICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzOw0KICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICB3aWR0aDogODAlOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogLTdweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGlrcGFnaS1saXZlX19ib2R5X19yaWdodF9fYnV0dG9uIHsNCiAgICAgICAgICAgIHdpZHRoOiAyMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX2J1dHRvbl9fcGxheSB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0aWtwYWdpLWxpdmVfX2JvZHlfX3JpZ2h0X19idXR0b25fX3BhdXNlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgQGtleWZyYW1lcyBsaXZlLWRldGlrcGFnaSB7DQoNCiAgICAgICAgICAgIDAlLA0KICAgICAgICAgICAgMTAwJSB7DQogICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZjYzQzZg0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICA1MCUgew0KICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNjNzIwMjYNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXIgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwIDA7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgLjE1KTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7DQogICAgICAgICAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7DQogICAgICAgICAgICB0b3A6IDA7DQogICAgICAgICAgICB6LWluZGV4OiAyNjsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDENCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3l0LA0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLm1lbnUtYnV0dG9uIHNwYW4sDQogICAgICAgIC5ub3RpZl9fYmFsb24gew0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkDQogICAgICAgIH0NCg0KICAgICAgICAuaGVhZGVyX19sZWZ0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgbGVmdDogLTEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXJfX3JpZ2h0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBoZWlnaHQ6IDQxcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5oZWFkZXJfX2JyYW5kIHsNCiAgICAgICAgICAgIGhlaWdodDogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9fYnJhbmQgaW1nIHsNCiAgICAgICAgICAgIGhlaWdodDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbiB7DQogICAgICAgICAgICB3aWR0aDogNDNweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzVweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDhweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbi0tbGl2ZSB7DQogICAgICAgICAgICBjb2xvcjogIzIxNDA5YQ0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlcl9faWNvbi0tbm90aWYgew0KICAgICAgICAgICAgY29sb3I6ICM5OTkNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZW51LWJ1dHRvbiB7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7DQogICAgICAgICAgICB3aWR0aDogNDBweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lbnUtYnV0dG9uX193cmFwIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMTVweDsNCiAgICAgICAgICAgIGxlZnQ6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZW51LWJ1dHRvbiBzcGFuIHsNCiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICAgICAgICAgIGhlaWdodDogMnB4Ow0KICAgICAgICAgICAgd2lkdGg6IDIwcHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMjE0MDlhOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4Ow0KICAgICAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTsNCiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOw0KICAgICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuDQogICAgICAgIH0NCg0KICAgICAgICAubWVudS1idXR0b24gc3BhbjpmaXJzdC1jaGlsZCwNCiAgICAgICAgLnRvcC0wIHsNCiAgICAgICAgICAgIHRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lbnUtYnV0dG9uIHNwYW46bnRoLWNoaWxkKDIpIHsNCiAgICAgICAgICAgIHRvcDogN3B4DQogICAgICAgIH0NCg0KICAgICAgICAubWVudS1idXR0b24gc3BhbjpudGgtY2hpbGQoMykgew0KICAgICAgICAgICAgdG9wOiAxNHB4Ow0KICAgICAgICAgICAgd2lkdGg6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSAubWVudS1idXR0b24gc3BhbjpmaXJzdC1jaGlsZCB7DQogICAgICAgICAgICB0b3A6IDhweDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSAubWVudS1idXR0b24gc3BhbjpudGgtY2hpbGQoMikgew0KICAgICAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgICAgIGxlZnQ6IC02MHB4DQogICAgICAgIH0NCg0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLm1lbnUtYnV0dG9uIHNwYW46bnRoLWNoaWxkKDMpIHsNCiAgICAgICAgICAgIHRvcDogOHB4Ow0KICAgICAgICAgICAgd2lkdGg6IDIwcHg7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTsNCiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5ub3RpZl9fYmFsb24gew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgd2lkdGg6IDIycHg7DQogICAgICAgICAgICBoZWlnaHQ6IDIycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHg7DQogICAgICAgICAgICByaWdodDogLTRweDsNCiAgICAgICAgICAgIHRvcDogMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19kYXRlLA0KICAgICAgICAubWVkaWFfX3RleHQgew0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0LWNvbnRlbnQgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uLA0KICAgICAgICAubGlzdC1jb250ZW50X19pdGVtOmZpcnN0LWNoaWxkIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwOw0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uIC5saXN0LWNvbnRlbnRfX2l0ZW06Zmlyc3QtY2hpbGQgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3QtY29udGVudC0tY29sdW1uIC5saXN0LWNvbnRlbnRfX2l0ZW06bGFzdC1jaGlsZCwNCiAgICAgICAgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdC1jb250ZW50LS1jb2x1bW4gLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZmxleDogMQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19pbWFnZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCh3aGl0ZSwgYmxhY2spOw0KICAgICAgICAgICAgbWFzay1pbWFnZTogcmFkaWFsLWdyYWRpZW50KHdoaXRlLCBibGFjayk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIC5saWhhdGpnIGEsDQogICAgICAgIC5tZWRpYV9faW1hZ2UgYSwNCiAgICAgICAgLm5hdiBhIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX3RleHQgew0KICAgICAgICAgICAgZmxleDogMTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWMNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYV9fdGl0bGUgew0KICAgICAgICAgICAgbWFyZ2luOiAwOw0KICAgICAgICAgICAgZmxleDogMQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc3VidGl0bGUsDQogICAgICAgIC5tZWRpYV9fc3VidGl0bGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19kYXRlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjUNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYV9fYXV0aG9yIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHotaW5kZXg6IDM7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHg7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBjb2xvcjogIzMzMw0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdpZHRoOiAyNXB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAyNXB4Ow0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2F1dGhvciBhOmhvdmVyIHsNCiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2xpbmsgew0KICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYw0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19saW5rOmJlZm9yZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIGJvdHRvbTogMDsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICB0b3A6IDA7DQogICAgICAgICAgICByaWdodDogMDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICB6LWluZGV4OiAyDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWFfX2xhYmVsIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogNHB4Ow0KICAgICAgICAgICAgbGVmdDogNHB4Ow0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAubWVkaWEtLWxlZnQsDQogICAgICAgIC50ZXh0LWxpc3Qgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LA0KICAgICAgICAuYm94LWFkcywNCiAgICAgICAgLnRleHQtbGlzdCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYS0tbGVmdCB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQNCiAgICAgICAgfQ0KDQogICAgICAgIC50ZXh0LWxpc3Qgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLnRleHQtbGlzdF9fZGF0YSB7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1hZHMgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7DQogICAgICAgICAgICB6LWluZGV4OiAxOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1hZHMtLWNvbnRhaW5lciB7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygtMjZweCAvIDEuNDQ0NDQ0NDQ0NDQ0KTsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygtMjZweCAvIDEuNDQ0NDQ0NDQ0NDQ0KQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90IHsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBtYXJnaW46IDAgYXV0bzsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3ZjcNCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdD4qIHsNCiAgICAgICAgICAgIGZsZXg6IDEgMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90IGltZyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBoZWlnaHQ6IGF1dG8NCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgY29udGVudDogIkFkdmVydGlzZW1lbnQiOw0KICAgICAgICAgICAgbGVmdDogNTAlOw0KICAgICAgICAgICAgdG9wOiA1MCU7DQogICAgICAgICAgICBoZWlnaHQ6IDUwcHg7DQogICAgICAgICAgICB6LWluZGV4OiAtMTsNCiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHdpZHRoPSczMicgaGVpZ2h0PSczMicgdmlld0JveD0nMCAwIDMyIDMyJyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHhtbG5zOnhsaW5rPSdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJyUzRSUzQ3JlY3Qgb3BhY2l0eT0nMC4yJyB3aWR0aD0nMzInIGhlaWdodD0nMzInIGZpbGw9J3VybCglMjNwYXR0ZXJuMCknLyUzRSUzQ2RlZnMlM0UlM0NwYXR0ZXJuIGlkPSdwYXR0ZXJuMCcgcGF0dGVybkNvbnRlbnRVbml0cz0nb2JqZWN0Qm91bmRpbmdCb3gnIHdpZHRoPScxJyBoZWlnaHQ9JzEnJTNFJTNDdXNlIHhsaW5rOmhyZWY9JyUyM2ltYWdlMCcgdHJhbnNmb3JtPSdzY2FsZSgwLjAxNTYyNSknLyUzRSUzQy9wYXR0ZXJuJTNFJTNDaW1hZ2UgaWQ9J2ltYWdlMCcgd2lkdGg9JzY0JyBoZWlnaHQ9JzY0JyB4bGluazpocmVmPSdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQU1BQUFDZHQ0SHNBQUFBQVhOU1IwSUIyY2tzZndBQUFBbHdTRmx6QUFBTEV3QUFDeE1CQUpxY0dBQUFBWjVRVEZSRkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWx2UW1QZ0FBQUlwMFVrNVRBQlZUZnFYTDMrejVNNDNTL3Y4TmM5VVFnTzRCWWVvZXhEdnBZZ09Pc1ZncU9EY1IvY3gwRmdKSGllWXhCVi9vWkJQeVJQczhkY0NWd2IyTUtEMlNmSjZCUHlZYXlLdlVRU1d5aEdlYmg3eWZscTkvclpESk5nNEg0Tk5SWHFiOHRBbldvR3pPK1BiRlhVc01IZGdmNURDL3cxQlBMZWNjM01ZNll3U0s2eVB0RDNMUWk4cW5mVklZdUV5S0R3QUFBdXhKUkVGVWVKeWxWK2QvMHpBUVZiYVRTSEgyYmltUVF0Z1V3Z2d0QVZvb3BleFNhRXZabyt5OXdncGx3MzlOYkRtT3JIRjJmdHpIbC9kZUxPbDB1a05JRVQ1L0lCZ0tSelF0RWc0RkEzNmZpaWVQYUN5T2lTTndQQmIxcWs3b1NTS05wSjd3SUUrbE0zSzVFWmwweWtXZXplWFZjaVB5dVN5a0x4Umh1UkhGZ2xwZktydnJDU21YVlBxSzVrVlBpRmFSeXF0RDN1UkdERlVsK21IdmVrS0dSWWNCL3QvOEJtSDlFSHZOaUJscldZemJoeEs0Zitzb2FUMkxhWTZ6S01Ebkp6TWdaU1lmc2k3NUl6VWd4WDVPNW1DOXdvRGtldnFVUy82ckRQSzltNVYyMGFzTVNKcmlDZUQrd2dZWldoOTBONzNTZ09nbXJxZy9YZ3lTQmh4VkM3V2Fpd0V4Nm1STUxoN2RFTjJZcmZzMmJkNENHY1M2Y0Z3bUwyNjFrMlRiOWgxcWczaTMvbU1SMW5ZNkNsOXFUR21BZmNndm9ydDJJMmxJRElnZkJRU3NzVWV1bHhvRVVGREE5aXIwVW9NZ0d1V2hmYjMxUi9jM0Q0eFB1QmlFVUppSERsSjJ0V1h1YnVNUWJCQkdFZjRETFBiaEhuQUVOSWdndnBaWnRXN1NCaHBUa0lFbUdCeWw1R045WkJvMjRKWnduSEpuV093RXVBUnVFMmNwOXlTTG5RSTNNZVFFVGxQdU5JdkZ3R1BrRXVrTTVaNWxzWE5nSW5HcGZKNXk1MWlzQlJoYzRDL1RQT1ZlWkRFZE1QRHoxL2tTNVRwc0Y5UUczZXZNRlpUR29zbGR1aXg0U2cyV2tWRFNybER5MVQ0eUF4Z1lCOFFWMVd1VVhMZFRjUjY2QzJiejZTenIxNjI4RzdNY2J0d0VERzZaT1BldzNMYm8xVHQzVis3ZGY0QVFZRURQaDN2YThFTmJ3ZldVNHRQMmlQN0FQYTZSeDBnZXFzZFZlTjZmUFBWbVVMWWJaNzdCZVBiY3FWeVNHOWdOaHRqaU5NYVp4bjdpaGZ4bGVzbHNrZGhrNVZzbDgvZlVxOWthZVYwdzQ0MkQ4ZllkKzVHeU5tK2wzWHpmcm9tNDllc0g1ekxCUmxNV0gva3RIckRWYmZINkFadnR1VS9pS1EvUTd1UFBkVkdQL252Z1FGNUhuczZrU3U5cDZNTE5MMnE5TWZaMVlIbW5BbzU5Q0I0ODhXcmdxNHZjQ05Yb2k1ZS9MWHFRbThFUDN4amo3ejhXM0hWczlNYi8ybXI3NTYvZmYvNnFlUDhBSUpHN1ZBU0g1QUFBQUFBQVNVVk9SSzVDWUlJPScvJTNFJTNDL2RlZnMlM0UlM0Mvc3ZnJTNFIik7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0Ow0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDRweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjRweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDNweCAwOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIGNvbG9yOiAjOTk5Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3RfX25hbWUgew0KICAgICAgICAgICAgZGlzcGxheTogbm9uZTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSA0MHB4KTsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4Ow0KICAgICAgICAgICAgei1pbmRleDogLTE7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBjb2xvcjogI2NjYw0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1zbWIgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MHB4Ow0KICAgICAgICAgICAgei1pbmRleDogMjsNCiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgY2FsYyg0cHggLyAyKSA0cHggMCByZ2JhKDAsIDAsIDAsIC4xNSk7DQogICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5Ow0KICAgICAgICAgICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5Ow0KICAgICAgICAgICAgdG9wOiAwDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtbWItY29udGFpbmVyIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiA1MDZweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICAgICAgICAgICAgY2xpcDogcmVjdChhdXRvLCBhdXRvLCBhdXRvLCBhdXRvKTsNCiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLWJiLA0KICAgICAgICAuYWRzLXNsb3QtLW1iIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLW1iIHsNCiAgICAgICAgICAgIHdpZHRoOiAzMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogNDgwcHg7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiAyNnB4ICFpbXBvcnRhbnQ7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDsNCiAgICAgICAgICAgIHotaW5kZXg6IDEgIWltcG9ydGFudDsNCiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvYWRzL21lZ2EtYmlsbGJvYXJkLXBsYWNlaG9sZGVyLndlYnAiKQ0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1iYiB7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGhlaWdodDogMTU2cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL2Fkcy9iaWxsYm9hcmQtcGxhY2Vob2xkZXIud2VicCIpOw0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNw0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LS1zYiB7DQogICAgICAgICAgICB3aWR0aDogMzAwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDI1MHB4DQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QtLWliIHsNCiAgICAgICAgICAgIHdpZHRoOiAzMjBweDsNCiAgICAgICAgICAgIGhlaWdodDogNTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmQgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MjRweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICBib3R0b206IDA7DQogICAgICAgICAgICByaWdodDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHAgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBmb250LXNpemU6IDEwcHg7DQogICAgICAgICAgICBwYWRkaW5nOiAycHggMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAubWVnYWJpbGxib2FyZC1jbG9zZSB7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICByaWdodDogY2FsYyg1MCUgLSAxNjBweCk7DQogICAgICAgICAgICBwYWRkaW5nOiA1cHggMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZ3QtOCB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLnBkdC0xMiB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucGRiLTEyIHsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5wZHQtMTYgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDE2cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLnBkYi0xNiB7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAubWd0LTE2IHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHggIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLm1nYi0xNiB7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4ICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC53LTEwMCB7DQogICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuZmxleC1jZW50ZXIgew0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuYm94X190aXRsZSwNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSAubWVkaWFfX2xhYmVsLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGluaywNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nLA0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnLXRpdGxlLA0KICAgICAgICAuZGV0YWlsX19zdWJ0aXRsZSwNCiAgICAgICAgLmZvbnQtZmFtaWx5LWJhc2UtMiwNCiAgICAgICAgLm1lZGlhX19zdWJ0aXRsZSwNCiAgICAgICAgLm1lZGlhX190aXRsZSwNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiBhIHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDANCiAgICAgICAgfQ0KDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXZfX2l0ZW0sDQogICAgICAgIC5kZXRhaWxfX2RhdGUsDQogICAgICAgIC5kZXRhaWxfX21lZGlhLWNhcHRpb24sDQogICAgICAgIC5mb290ZXIgLm5hdiwNCiAgICAgICAgLmZvb3Rlcl9fY29weSwNCiAgICAgICAgLm1lZGlhX19kYXRlIHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDANCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX3RpdGxlLA0KICAgICAgICAuZGV0YWlsX190aXRsZSwNCiAgICAgICAgLmZvbnQtYmFzZS1zZW1pYm9sZCwNCiAgICAgICAgLmxpbmtzaXNpcCBhLA0KICAgICAgICAubmF2LA0KICAgICAgICAucGFnZV9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90OmJlZm9yZSwNCiAgICAgICAgLmJveF9faGVhZGVyIGEsDQogICAgICAgIC5ib3hfX3RpdGxlLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fbGFiZWwsDQogICAgICAgIC5icmVha2luZy1zdGlja3kgLm1lZGlhX19saW5rLA0KICAgICAgICAuYnRuLA0KICAgICAgICAuY29sbGFwc2libGVfX3RvcCwNCiAgICAgICAgLmRldGFpbF9fYXV0aG9yLA0KICAgICAgICAuZGV0YWlsX19ib2R5LXRhZyAubmF2X19pdGVtLA0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnLXRpdGxlLA0KICAgICAgICAuZGV0YWlsX19zdWJ0aXRsZSwNCiAgICAgICAgLmRldGFpbF9fdGl0bGUsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZV9fYm9keV9fcmlnaHRfX3RleHQsDQogICAgICAgIC5mb250LWZhbWlseS1iYXNlLTIsDQogICAgICAgIC5mb290ZXIsDQogICAgICAgIC5mb290ZXItdGl0bGUsDQogICAgICAgIC5saW5rc2lzaXAsDQogICAgICAgIC5saXN0X19iZXJpdGFfX2l0ZW1fX2JvdHRvbV9fZGF0ZSwNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX190aXRsZSwNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9fdGl0bGUsDQogICAgICAgIC5tZWRpYV9fYXV0aG9yLA0KICAgICAgICAubWVkaWFfX3N1YnRpdGxlLA0KICAgICAgICAubWVkaWFfX3RpdGxlLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2LWZyYW1lYmFyX190aXRsZSwNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIsDQogICAgICAgIC5wYWdlX190aXRsZSwNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fdG9wLA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3LA0KICAgICAgICAudGV4dC1saXN0IHsNCiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBNb250c2VycmF0LUZGLCBBcmlhbCwgVGFob21hLCBzYW5zLXNlcmlmDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QsDQogICAgICAgIC5hZHMtc2xvdC0tYmIsDQogICAgICAgIC5hZHMtc2xvdC1tYi1jb250YWluZXIsDQogICAgICAgIC5hZHMtc2xvdDpiZWZvcmUsDQogICAgICAgIC5icmVha2luZy1kZXRpa3BhZ2lfX2Nsb3NlLA0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fdGV4dCwNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZywNCiAgICAgICAgLmRpc3BsYXktZmxleCwNCiAgICAgICAgLmZvb3Rlcl9fYXBwLXN0b3JlLA0KICAgICAgICAubmF2YmFyLWZpcnN0LA0KICAgICAgICAubm90aWZfX2JhbG9uLA0KICAgICAgICAuc3RpY2t5LXNoYXJlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94Ow0KICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRhZyAubmF2LA0KICAgICAgICAubGlzdC1jb250ZW50X19pdGVtLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2LS1jZW50ZXIgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IHdyYXANCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX2hlYWRlciwNCiAgICAgICAgLmZsZXgtYmV0d2VlbiwNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIsDQogICAgICAgIC5wYWdlX19oZWFkZXIgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IHdyYXA7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuYWRzLXNsb3QsDQogICAgICAgIC5kZXRhaWxfX25ld3N0YWcsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSwNCiAgICAgICAgLmhlYWRlcl9faWNvbiwNCiAgICAgICAgLmljb24taXRlbSwNCiAgICAgICAgLm1lZ2FiaWxsYm9hcmRfX3N3aXBlIHAsDQogICAgICAgIC50ZXh0LWNlbnRlciB7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmFkcy1zbG90LA0KICAgICAgICAuYWRzLXNsb3QtLWJiLA0KICAgICAgICAuYnJlYWtpbmctZGV0aWtwYWdpX19jbG9zZSwNCiAgICAgICAgLm5vdGlmX19iYWxvbiwNCiAgICAgICAgLnN0aWNreS1zaGFyZSB7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5jb3B5X3VybCAubm90aWYsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXZfX2l0ZW0sDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50LA0KICAgICAgICAubWVkaWEtLWltYWdlLXJhZGl1cyAubWVkaWFfX2ltYWdlLA0KICAgICAgICAubWVkaWFfX2xhYmVsIHsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLWRldGlrcGFnaV9fY2xvc2UsDQogICAgICAgIC5jaXJjbGUsDQogICAgICAgIC5kZXRpa3BhZ2ktbGl2ZSBzcGFuOmJlZm9yZSwNCiAgICAgICAgLmljb24taXRlbSAuY29tbWVudC1jb3VudCwNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyLA0KICAgICAgICAubmF2X19pdGVtLS1uZXcgYTphZnRlciB7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xvci1ibGFjayB7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJyZWFraW5nLXN0aWNreSAubWVkaWFfX3RleHQsDQogICAgICAgIC5tZWdhYmlsbGJvYXJkX19zd2lwZSBwIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuY29sb3ItcHVycGxlLWxpZ2h0LTIgew0KICAgICAgICAgICAgY29sb3I6ICM4MTJlODgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zdGlja3ktc2hhcmVfX3dyYXAgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19hdXRob3ItaW1hZ2UtYXZhdGFyIGltZywNCiAgICAgICAgLm1lZGlhX19pbWFnZSBhPio+aW1nIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7DQogICAgICAgICAgICB3aWR0aDogYXV0bzsNCiAgICAgICAgICAgIGhlaWdodDogYXV0bzsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICB0b3A6IDUwJTsNCiAgICAgICAgICAgIGxlZnQ6IDUwJTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCkNCiAgICAgICAgfQ0KDQogICAgICAgIC53cmFwLXpvb20gew0KICAgICAgICAgICAgei1pbmRleDogNjY2Ow0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93biwNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlDQogICAgICAgIH0NCg0KICAgICAgICAuaW1nLXpvb21vdXQsDQogICAgICAgIC53cmFwLXpvb20gew0KICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOw0KICAgICAgICAgICAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0Ow0KICAgICAgICAgICAgY3Vyc29yOiAtbW96LXpvb20tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAucF9pbWdfem9vbWluLA0KICAgICAgICAud3JhcC16b29tIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zczsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzOw0KICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcw0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudSB7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDRweDsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgICAgICBtaW4td2lkdGg6IDE1MHB4Ow0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiAxMDAlOw0KICAgICAgICAgICAgbGVmdDogLThweDsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIHotaW5kZXg6IDMNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50IHsNCiAgICAgICAgICAgIG1pbi13aWR0aDogMjAwcHg7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBtYXJnaW46IDhweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudV9fY29udGVudDphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGxlZnQ6IDI4cHg7DQogICAgICAgICAgICB3aWR0aDogMDsNCiAgICAgICAgICAgIGhlaWdodDogMDsNCiAgICAgICAgICAgIHRvcDogMDsNCiAgICAgICAgICAgIGJvcmRlcjogNnB4IHNvbGlkICMwMDA7DQogICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmZmYgI2ZmZjsNCiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7DQogICAgICAgICAgICBib3gtc2hhZG93OiAtMnB4IDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIC4wNSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51X19jb250ZW50LWFydGljbGUgew0KICAgICAgICAgICAgbWluLXdpZHRoOiAyNjBweDsNCiAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7DQogICAgICAgICAgICBwYWRkaW5nOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24tbWVudS0tcmlnaHQgLmRyb3Bkb3duLW1lbnVfX2NvbnRlbnQ6YWZ0ZXIgew0KICAgICAgICAgICAgbGVmdDogYXV0bzsNCiAgICAgICAgICAgIHJpZ2h0OiAycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bi1tZW51LS1yaWdodCB7DQogICAgICAgICAgICBsZWZ0OiBhdXRvOw0KICAgICAgICAgICAgcmlnaHQ6IC04cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kcm9wZG93bj4uaWNvbiB7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXMgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gsDQogICAgICAgIC5kZXRhaWxfX21lZGlhLA0KICAgICAgICAuZGV0YWlsX19tdWx0aXBsZS1wYWdpbmcgew0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMThweDsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMThweDsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX2hlYWRlciB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBmb250LXNpemU6IDIzcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3hfX3RpdGxlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNTYyYjc3DQogICAgICAgIH0NCg0KICAgICAgICAuYm94IHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsNCiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4cHg7DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveF9faGVhZGVyIGEsDQogICAgICAgIC5uYXYsDQogICAgICAgIC5uYXZfX2l0ZW0gew0KICAgICAgICAgICAgcGFkZGluZzogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveF9fbG9nbyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4Ow0KICAgICAgICAgICAgbWF4LWhlaWdodDogNDVweDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAucGFnZV9faGVhZGVyIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX190aXRsZSB7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBmb250LXNpemU6IDIzcHg7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIgew0KICAgICAgICAgICAgY29sb3I6ICM5OTk7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGEgew0KICAgICAgICAgICAgY29sb3I6ICM5OTk7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIi8iOw0KICAgICAgICAgICAgcGFkZGluZzogMCA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdl9faXRlbTpsYXN0LWNoaWxkIGE6YWZ0ZXIsDQogICAgICAgIC5wYWdlX19icmVhZGNydW1iIGE6bGFzdC1jaGlsZDphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIg0KICAgICAgICB9DQoNCiAgICAgICAgLnBhZ2VfX2JyZWFkY3J1bWIgYTpob3ZlciB7DQogICAgICAgICAgICBjb2xvcjogIzMzMw0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdl9faXRlbS0tbmV3IGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICB3aWR0aDogNXB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiA1cHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7DQogICAgICAgICAgICBwb3NpdGlvbjogbWlkZGxlOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdl9faXRlbSBhLA0KICAgICAgICAubmF2LA0KICAgICAgICAubmF2X19pdGVtLA0KICAgICAgICAubmF2X19pdGVtLS1uZXcsDQogICAgICAgIC5uYXZiYXIsDQogICAgICAgIC5uYXZiYXItc2Vjb25kIC5uYXYgYSwNCiAgICAgICAgLm5hdmJhci1zaGFkb3csDQogICAgICAgIC5yZWRpcmVjdCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYgew0KICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsNCiAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiBhIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweCA4cHg7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3ZjcNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZfX2l0ZW0gYSB7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMjRweCA0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3RlciAubmF2X19pdGVtIGEgew0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHg7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7DQogICAgICAgICAgICBjb2xvcjogIzY2Ng0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3RlciAubmF2X19pdGVtIGE6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIi4iOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiAtMTJweDsNCiAgICAgICAgICAgIHJpZ2h0OiAtNHB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4Ow0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3cgLm5hdmJhci0tc2Nyb2xsIC5uYXZfX2l0ZW06Zmlyc3QtY2hpbGQgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNnB4DQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXNoYWRvdyAubmF2YmFyLS1zY3JvbGwgLm5hdl9faXRlbTpsYXN0LWNoaWxkIHsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdl9faXRlbTpsYXN0LWNoaWxkIGEgew0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdl9faXRlbSB7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1maXJzdCAubmF2X19pdGVtLS1hY3RpdmUgYSB7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keS10YWcgLm5hdl9faXRlbSB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwOw0KICAgICAgICAgICAgbWFyZ2luOiA0cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxNnB4Ow0KICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgLm5hdiB7DQogICAgICAgICAgICBtYXJnaW46IDI0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci0tc2Nyb2xsIC5uYXYgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDRweDsNCiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdiB7DQogICAgICAgICAgICBoZWlnaHQ6IDQ1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdiwNCiAgICAgICAgLm5hdmJhci1zZWNvbmQgLm5hdiB7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvOw0KICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOw0KICAgICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBmbGV4LWZsb3c6IG5vd3JhcA0KICAgICAgICB9DQoNCiAgICAgICAgLmJhY2stdG9wLA0KICAgICAgICAubmF2LS1jZW50ZXIgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItZmlyc3QgLm5hdjo6LXdlYmtpdC1zY3JvbGxiYXIsDQogICAgICAgIC5uYXZiYXItc2Vjb25kIC5uYXY6Oi13ZWJraXQtc2Nyb2xsYmFyIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGFnIC5uYXYgew0KICAgICAgICAgICAgbWFyZ2luOiA4cHggLTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmhlYWRlciAubmF2YmFyIHsNCiAgICAgICAgICAgIGhlaWdodDogMzVweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXZiYXItc2hhZG93OmFmdGVyLA0KICAgICAgICAubmF2YmFyLXNoYWRvdzpiZWZvcmUgew0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgei1pbmRleDogMTsNCiAgICAgICAgICAgIGNvbnRlbnQ6ICIiDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLS1zY3JvbGwgew0KICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW4gIWltcG9ydGFudDsNCiAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbCAhaW1wb3J0YW50Ow0KICAgICAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXdyYXAgew0KICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3cgew0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMThweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdmJhci1zaGFkb3c6YmVmb3JlIHsNCiAgICAgICAgICAgIHdpZHRoOiAxOHB4Ow0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChyaWdodCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyaWdodCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpDQogICAgICAgIH0NCg0KICAgICAgICAubmF2YmFyLXNoYWRvdzphZnRlciB7DQogICAgICAgICAgICB3aWR0aDogMjRweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICNmZmYgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgI2ZmZiAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5iYWNrLXRvcCB7DQogICAgICAgICAgICB3aWR0aDogNDBweDsNCiAgICAgICAgICAgIGhlaWdodDogNDBweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHJpZ2h0OiA4cHg7DQogICAgICAgICAgICBib3R0b206IDYwcHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwNCwgMjA0LCAyMDQsIC41KTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBmb250LXNpemU6IDIycHg7DQogICAgICAgICAgICB6LWluZGV4OiAxMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJhY2stdG9wIGEgew0KICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuZHJvcGRvd24td3JhcCAubGlzdC1jb250ZW50X19pdGVtOmxhc3QtY2hpbGQgew0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgLmxpc3QtY29udGVudF9faXRlbSB7DQogICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMA0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX190aXRsZSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIsDQogICAgICAgIC5saW5rc2lzaXAgc3Ryb25nLA0KICAgICAgICAubGlzdC1jb250ZW50LS1jb2x1bW4gLm1lZGlhX190aXRsZSwNCiAgICAgICAgLm1lZGlhX19sYWJlbCB7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX3N1YnRpdGxlLA0KICAgICAgICAubWVkaWFfX3N1YnRpdGxlIHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1rdWxlci0zKQ0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19sYWJlbCB7DQogICAgICAgICAgICBwYWRkaW5nOiA1cHggMTJweDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzcNCiAgICAgICAgfQ0KDQogICAgICAgIC5tZWRpYS0tbGVmdCAubWVkaWFfX2ltYWdlIHsNCiAgICAgICAgICAgIG1hcmdpbjogMCAxMnB4IDAgMDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nIC50ZXh0LWxpc3RfX2RhdGEgew0KICAgICAgICAgICAgY29sb3I6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1ibHVlLWJhc2Ugew0KICAgICAgICAgICAgYmFja2dyb3VuZDogIzIxNDA5YTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1ibHVlLWJhc2U6aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4tLWJsdWUtYmFzZS5idG4tLW91dGxpbmUgew0KICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMjE0MDlhOw0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5idG4tLXBhZ2luZyB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1rdWxlci0xKTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmDQogICAgICAgIH0NCg0KICAgICAgICAuYnRuLS1wYWdpbmc6aG92ZXIsDQogICAgICAgIC5pY29uLWl0ZW06aG92ZXIgew0KICAgICAgICAgICAgY29sb3I6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXIgew0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2U2ZTZlNjsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19sb2dvIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXJfX2xvZ28gaW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiAxNjBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlcl9fc29jaWFsIHsNCiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXJfX2NvcHkgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlcl9fYm9yZGVyIHsNCiAgICAgICAgICAgIGhlaWdodDogNHB4Ow0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2sNCiAgICAgICAgfQ0KDQogICAgICAgIC5mb290ZXItdGl0bGUsDQogICAgICAgIC5mb290ZXJfX2dldC1hcHAgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyLXRpdGxlX19wYXJ0b2Ygew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmZvb3Rlci10aXRsZV9fcGFydG9mIGltZyB7DQogICAgICAgICAgICB3aWR0aDogODBweDsNCiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207DQogICAgICAgICAgICBtYXJnaW46IDAgMCAzcHggM3B4DQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19hcHAtc3RvcmUgew0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAuZm9vdGVyX19hcHAtc3RvcmUgaW1nIHsNCiAgICAgICAgICAgIG1hcmdpbjogMTZweCAycHg7DQogICAgICAgICAgICB3aWR0aDogYXV0bzsNCiAgICAgICAgICAgIGhlaWdodDogMzRweA0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6MzU5cHgpIHsNCiAgICAgICAgICAgIC5mb290ZXJfX2FwcC1zdG9yZSBpbWcgew0KICAgICAgICAgICAgICAgIGhlaWdodDogMjVweA0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQoNCiAgICAgICAgLmJvdHRvbS1zdGlja3kgew0KICAgICAgICAgICAgaGVpZ2h0OiAwDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX3BhZ2Ugew0KICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBtYXJnaW46IDAgMCAxNnB4Ow0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZzogOHB4IDEycHg7DQogICAgICAgICAgICBjb2xvcjogI2Y3ZjdmNzsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MDBweCk7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC43OSwgLjMzLCAuNjQsIC44Mik7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguNzksIC4zMywgLjY0LCAuODIpDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQgcD5hLA0KICAgICAgICAuZGV0YWlsX190aXRsZSwNCiAgICAgICAgLnJlZGlyZWN0X19jbG9zZS1idG4gew0KICAgICAgICAgICAgY29sb3I6IHZhcigtLWt1bGVyLTEpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW1lbnUsDQogICAgICAgIC5zdGlja3ktc2hhcmUgew0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICAtby10cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX3BhZ2UgaDMsDQogICAgICAgIC5yZWRpcmVjdF9fcGFnZSBoNCB7DQogICAgICAgICAgICBjb2xvcjogI2Y3ZjdmNw0KICAgICAgICB9DQoNCiAgICAgICAgLnJlZGlyZWN0X19wYWdlIGg0IHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7DQogICAgICAgICAgICBtYXgtaGVpZ2h0OiA0OHB4Ow0KICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3ggIWltcG9ydGFudDsNCiAgICAgICAgICAgIGxpbmUtY2xhbXA6IDM7DQogICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7DQogICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOw0KICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbA0KICAgICAgICB9DQoNCiAgICAgICAgLnJlZGlyZWN0X19jbG9zZSB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3RfX2Nsb3NlLWJ0biB7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgd2lkdGg6IDMwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IDMwcHg7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2UzZjVmZTk5Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhX19pbWFnZS5pbWcteHNzIHsNCiAgICAgICAgICAgIHdpZHRoOiA1NnB4DQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhX190ZXh0IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWRpcmVjdCAubWVkaWFfX3RleHQubm9tYXJnaW4gew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOw0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWRpcmVjdCAubWVkaWFfX3RleHQubm9tYXJnaW4+OmZpcnN0LWNoaWxkIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAucmVkaXJlY3QgLm1lZGlhIHsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLnN0aWNreS1zaGFyZSB7DQogICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI3Ow0KICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkOw0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgaGVpZ2h0OiAwOw0KICAgICAgICAgICAgYm90dG9tOiAtMTAwcHg7DQogICAgICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0DQogICAgICAgIH0NCg0KICAgICAgICAuanMtbWVudS1hY3RpdmUgLmJveC1tZW51LA0KICAgICAgICAuc3RpY2t5LXNoYXJlLS1zdGlja2VkIHsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7DQogICAgICAgICAgICBvcGFjaXR5OiAxDQogICAgICAgIH0NCg0KICAgICAgICAuc3RpY2t5LXNoYXJlX193cmFwIHsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOHB4Ow0KICAgICAgICAgICAgYm94LXNoYWRvdzogMCBjYWxjKDRweCAvIDIpIDRweCAwIHJnYmEoMCwgMCwgMCwgLjE1KTsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zdGlja3ktc2hhcmUtLXN0aWNrZWQgew0KICAgICAgICAgICAgYm90dG9tOiAwOw0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7DQogICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsIC5zdGlja3ktc2hhcmUgLmljb24taXRlbSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB3aWR0aDogMjZweDsNCiAgICAgICAgICAgIGhlaWdodDogMjZweDsNCiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbSAuY29tbWVudC1jb3VudCB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICBmb250LXNpemU6IDEwcHg7DQogICAgICAgICAgICB0b3A6IC00cHg7DQogICAgICAgICAgICByaWdodDogLTRweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDAgNHB4Ow0KICAgICAgICAgICAgbWluLXdpZHRoOiAxNXB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2VkMTMxYg0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9faGVhZGVyIHsNCiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4Ow0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRyb3Bkb3duLXdyYXAgLmRldGFpbF9fdGl0bGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7DQogICAgICAgICAgICBtYXJnaW46IDA7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2RhdGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX3N1YnRpdGxlIHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7DQogICAgICAgICAgICBjb2xvcjogI2Y3OTMxZA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYXV0aG9yIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2DQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19sYWJlbCB7DQogICAgICAgICAgICBjb2xvcjogI2FhMjQ4Yw0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbWVkaWEgew0KICAgICAgICAgICAgcGFkZGluZzogMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbWVkaWEtaW1hZ2U+aW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbWluLWhlaWdodDogMjExcHg7DQogICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICB6LWluZGV4OiAyDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19tZWRpYS1pbWFnZSAuaW1nLXpvb21vdXQgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX21lZGlhLWNhcHRpb24gew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICM2NjY7DQogICAgICAgICAgICBmb250LXNpemU6IDEycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA0cHggMThweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc2hhcmUsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgew0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keSwNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0PnA6bnRoLW9mLXR5cGUoMikgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0IGltZyB7DQogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5wOmZpcnN0LW9mLXR5cGUgew0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQ+aDIsDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5oMyB7DQogICAgICAgICAgICBmb250LXNpemU6IDE4cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dD5oNCwNCiAgICAgICAgLmRldGFpbF9fYm9keS10ZXh0Pmg1LA0KICAgICAgICAuZGV0YWlsX19ib2R5LXRleHQ+aDYsDQogICAgICAgIC5saW5rc2lzaXAgYSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5kZXRhaWxfX2JvZHktdGV4dCB0YWJsZSB7DQogICAgICAgICAgICB3aWR0aDogMTAwJQ0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fc2hhcmUgew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZyB7DQogICAgICAgICAgICBtYXJnaW46IDE2cHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbmV3c3RhZy10aXRsZSB7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICBmbGV4OiAxDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsX19uZXdzdGFnIGltZyB7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweA0KICAgICAgICB9DQoNCiAgICAgICAgLmRldGFpbF9fbXVsdGlwbGUtcGFnaW5nIHsNCiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMThweCAwOw0KICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBjb2xvcjogIzk5OTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweA0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwLA0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXBfdGFibGUgew0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEyMCU7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLmxpbmtzaXNpcCB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBtYXJnaW46IDhweCAwOw0KICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjNTYyYjc3DQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIHRkLA0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXBfdGFibGUgdGQsDQogICAgICAgIC5xdW90ZXNpc2lwIHRkIHsNCiAgICAgICAgICAgIGJvcmRlcjogbm9uZTsNCiAgICAgICAgICAgIHBhZGRpbmc6IDANCiAgICAgICAgfQ0KDQogICAgICAgIC5saW5rc2lzaXAgYSB7DQogICAgICAgICAgICBjb2xvcjogIzU2MmI3NzsNCiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrDQogICAgICAgIH0NCg0KICAgICAgICAubGlua3Npc2lwIC5saWhhdGpnIHsNCiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpbmtzaXNpcCAubGloYXRqZyBzdHJvbmcgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5xdW90ZXNpc2lwIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwOw0KICAgICAgICAgICAgcGFkZGluZzogMDsNCiAgICAgICAgICAgIGJvcmRlcjogMDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgIzU2MmI3Nw0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fYm90dG9tLA0KICAgICAgICAucHJvZmlsZV9fYm94X190b3Agew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWwNCiAgICAgICAgfQ0KDQogICAgICAgIC5xdW90ZXNpc2lwIGJsb2NrcXVvdGUgew0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDsNCiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHg7DQogICAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweCAwIDI0cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMTIwJTsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICAucXVvdGVzaXNpcCBibG9ja3F1b3RlOmJlZm9yZSB7DQogICAgICAgICAgICBmb250LWZhbWlseTogZGV0aWtuZXR3b3JrLUZGOw0KICAgICAgICAgICAgY29udGVudDogIlw3YiI7DQogICAgICAgICAgICBmb250LXNpemU6IDQ1cHg7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGNvbG9yOiAjOTk5DQogICAgICAgIH0NCg0KICAgICAgICAucXVvdGVzaXNpcCBjaXRlIHsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMjRweA0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwX3RhYmxlIHsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7DQogICAgICAgICAgICBjb2xvcjogIzY2NjsNCiAgICAgICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQNCiAgICAgICAgfQ0KDQogICAgICAgIC5waWNfYXJ0aWtlbF9zaXNpcCB7DQogICAgICAgICAgICBjb2xvcjogIzk5OQ0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwIC5waWMgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAucGljX2FydGlrZWxfc2lzaXAgLnBpYyBpbWcgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7DQogICAgICAgICAgICBoZWlnaHQ6IGF1dG87DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgICAgICAgICB0b3A6IGF1dG87DQogICAgICAgICAgICBsZWZ0OiBhdXRvOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogbm9uZTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICAtby10cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsNCiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bw0KICAgICAgICB9DQoNCiAgICAgICAgLnBpY19hcnRpa2VsX3Npc2lwIC5waWM+c3BhbiB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIHotaW5kZXg6IDE7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsNCiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2DQogICAgICAgIH0NCg0KICAgICAgICAuc2lzaXBfZW1iZWRfc29zbWVkIGlmcmFtZSB7DQogICAgICAgICAgICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDBweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucHJvZmlsZV9fYm94IHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7DQogICAgICAgICAgICBtYXJnaW46IDI0cHggMDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fdG9wIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzc7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGhlaWdodDogNDFweDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweCA4cHggMCAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyDQogICAgICAgIH0NCg0KICAgICAgICAucHJvZmlsZV9fYm94X19ib3R0b20gew0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7DQogICAgICAgICAgICBjb2xvcjogIzAwMDsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbV9faW1nIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMTJweDsNCiAgICAgICAgICAgIGxlZnQ6IDA7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLnByb2ZpbGVfX2JveF9fYm90dG9tX19pbWcgaW1nIHsNCiAgICAgICAgICAgIHdpZHRoOiA0OHB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiA0OHB4Ow0KICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlOw0KICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5wcm9maWxlX19ib3hfX2JvdHRvbV9fdGV4dCB7DQogICAgICAgICAgICBtYXJnaW46IDEycHggMA0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbSB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsNCiAgICAgICAgICAgIG1hcmdpbjogNXB4IDRweDsNCiAgICAgICAgICAgIHdpZHRoOiAzMnB4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAzMnB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4Ow0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAuZGV0YWlsIC5pY29uLWl0ZW0gew0KICAgICAgICAgICAgd2lkdGg6IDM1cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDM1cHg7DQogICAgICAgICAgICBwYWRkaW5nOiAycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2ZiIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzYzVhOTkNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3R3IHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDANCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2lnIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1ODUxZGI7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LXJhZGlhbC1ncmFkaWVudChsZWZ0IGJvdHRvbSwgZWxsaXBzZSBjb3ZlciwgI2ZmZGM4MCAxNSUsICNlMTMwNmMgNTUlLCAjNTg1MWRiIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQobGVmdCBib3R0b20sIGVsbGlwc2UgY292ZXIsICNmZmRjODAgMTUlLCAjZTEzMDZjIDU1JSwgIzU4NTFkYiAxMDAlKTsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGxlZnQgYm90dG9tLCAjZmZkYzgwIDE1JSwgI2UxMzA2YyA1NSUsICM1ODUxZGIgMTAwJSkNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2luIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDc3YjUNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX3dhIHsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogIzI1ZDM2Ng0KICAgICAgICB9DQoNCiAgICAgICAgLmljb24taXRlbV9fdGVsZSB7DQogICAgICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwOGMNCiAgICAgICAgfQ0KDQogICAgICAgIC5pY29uLWl0ZW1fX2xpbmsgew0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjOTk5DQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHsNCiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgY29sb3I6ICM3MjczNzQ7DQogICAgICAgICAgICBmb250LXNpemU6IDEzcHg7DQogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuDQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHRyIHRkIHsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMWYyZjM7DQogICAgICAgICAgICBwYWRkaW5nOiA3cHggMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLnRhYmxlU3BlYyB0ciB0ZDpmaXJzdC1jaGlsZCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmOGY5Ow0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIHdpZHRoOiA0MCUNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHIgdGQ6bnRoLWNoaWxkKDIpIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHIgdGQudGl0bGUgew0KICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7DQogICAgICAgICAgICBmb250LXNpemU6IDE2cHg7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS41Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwDQogICAgICAgIH0NCg0KICAgICAgICAudGFibGVTcGVjIHRyOmhvdmVyIHRkIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZTYNCiAgICAgICAgfQ0KDQogICAgICAgIC50YWJsZVNwZWMgdHI6aG92ZXIgdGQudGl0bGUgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwDQogICAgICAgIH0NCg0KICAgICAgICAuYnJlYWtpbmctc3RpY2t5IC5tZWRpYV9fdGV4dCwNCiAgICAgICAgLmZvb3Rlcl9fYm9yZGVyIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1NjJiNzc7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM1NjJiNzcgNTAlLCAjYWEyNDhjIDEwMCUpOw0KICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNTYyYjc3IDUwJSwgI2FhMjQ4YyAxMDAlKTsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM1NjJiNzcgNTAlLCAjYWEyNDhjIDEwMCUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm90dG9tLXN0aWNreSB7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICBib3R0b206IDA7DQogICAgICAgICAgICBsZWZ0OiAwOw0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICB6LWluZGV4OiAyNg0KICAgICAgICB9DQoNCiAgICAgICAgLm1lZGlhX19pbWFnZS5pbWcteHNzIHsNCiAgICAgICAgICAgIHdpZHRoOiA1NnB4DQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGUgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNzsNCiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHg7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7DQogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgICAgICAgICAgb3V0bGluZTogMDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsNCiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7DQogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xsYXBzaWJsZV9fdG9wIHsNCiAgICAgICAgICAgIGNvbG9yOiAjMDAwOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlDQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGVfX3RvcDo6YWZ0ZXIgew0KICAgICAgICAgICAgY29udGVudDogIiI7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImltYWdlcy9wYXRoLWRvd24ucG5nIik7DQogICAgICAgICAgICBmbG9hdDogcmlnaHQ7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4Ow0KICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsNCiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQogICAgICAgICAgICBoZWlnaHQ6IDEzcHg7DQogICAgICAgICAgICB3aWR0aDogMjNweDsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC5hY3RpdmUgLmNvbGxhcHNpYmxlX190b3A6OmFmdGVyIHsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOw0KICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykNCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xsYXBzaWJsZV9fY29udGVudCB7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IC41cyBlYXNlLW91dDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICBtYXgtaGVpZ2h0OiAwOw0KICAgICAgICAgICAgcGFkZGluZzogMCAxNnB4DQogICAgICAgIH0NCg0KICAgICAgICAuY29sbGFwc2libGVfX2NvbnRlbnQgYSB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jaw0KICAgICAgICB9DQoNCiAgICAgICAgLm1ndC0wIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudA0KICAgICAgICB9DQoNCiAgICAgICAgLmZzLTE0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAuYWN0aXZlX19jb250ZW50IHsNCiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwMDBweDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzIGVhc2UtaW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5jb2xvcl9fYmx1ZSB7DQogICAgICAgICAgICBjb2xvcjogIzIxNDA5YSAhaW1wb3J0YW50DQogICAgICAgIH0NCg0KICAgICAgICAucG9zaXRpb24tcmVsYXRpdmUgew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0X19iZXJpdGEgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7DQogICAgICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47DQogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4Ow0KICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdF9fYmVyaXRhX190aXRsZSB7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgICAgICBmb250LXdlaWdodDogNjAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5saXN0X19iZXJpdGFfX2l0ZW0gew0KICAgICAgICAgICAgd2lkdGg6IDE1MHB4Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4DQogICAgICAgIH0NCg0KICAgICAgICAubGlzdF9fYmVyaXRhX19pdGVtX190b3Agew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fdG9wX19sb2dvIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHRvcDogMnB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tIHsNCiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX190aXRsZSB7DQogICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgICAgICBmb250LXdlaWdodDogNTAwOw0KICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4Ow0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7DQogICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA0cHg7DQogICAgICAgICAgICBjb2xvcjogIzAwMA0KICAgICAgICB9DQoNCiAgICAgICAgLmxpc3RfX2Jlcml0YV9faXRlbV9fYm90dG9tX19kYXRlIHsNCiAgICAgICAgICAgIGNvbG9yOiAjOWI5YjliOw0KICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxM3B4Ow0KICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0uMjJweA0KICAgICAgICB9DQoNCiAgICAgICAgLmtvbWVudGFyX2JveCB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogOTBweA0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsNCiAgICAgICAgICAgIC5rb21lbnRhcl9ib3ggew0KICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2MHB4DQogICAgICAgICAgICB9DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IHsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgZmxleC1mbG93OiB3cmFwOw0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faXRlbSBhLA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5zYl9jbG9zZSB7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhcl9fdGl0bGUsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgLmdldF9hcHAsDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgc3Ryb25nLA0KICAgICAgICAudXNlci1sb2dfX2xvZ2luLA0KICAgICAgICAudXNlci1sb2dfX25hbWUgew0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMA0KICAgICAgICB9DQoNCiAgICAgICAgLnNtYXJ0YmFubmVyX25ldyAuc2JfY2xvc2Ugew0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOw0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheSB7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTsNCiAgICAgICAgICAgIHRvcDogNTNweDsNCiAgICAgICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICAgICAgYm90dG9tOiAwOw0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIG1hcmdpbjogMTJweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDhweDsNCiAgICAgICAgICAgIHotaW5kZXg6IDEwMDsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW92ZXJsYXlfX2hlYWRlciB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7DQogICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZsZXgtZmxvdzogd3JhcDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXINCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheV9faGVhZGVyLW5hdiB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICByaWdodDogMDsNCiAgICAgICAgICAgIHotaW5kZXg6IDMNCiAgICAgICAgfQ0KDQogICAgICAgIC5ib3gtb3ZlcmxheS0tYXJyb3ctbG9nbzphZnRlciB7DQogICAgICAgICAgICBjb250ZW50OiAiIjsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIHdpZHRoOiAwOw0KICAgICAgICAgICAgaGVpZ2h0OiAwOw0KICAgICAgICAgICAgdG9wOiAwOw0KICAgICAgICAgICAgbGVmdDogMTA0cHg7DQogICAgICAgICAgICBib3JkZXI6IDhweCBzb2xpZCAjMDAwOw0KICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmZmICNmZmY7DQogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpOw0KICAgICAgICAgICAgYm94LXNoYWRvdzogLTNweCAzcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAuMDUpDQogICAgICAgIH0NCg0KICAgICAgICAuYm94LW92ZXJsYXlfX2JvZHkgew0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiA1MHB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDhweDsNCiAgICAgICAgICAgIGJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgbGVmdDogOHB4Ow0KICAgICAgICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsICFpbXBvcnRhbnQ7DQogICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGwgIWltcG9ydGFudDsNCiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaA0KICAgICAgICB9DQoNCiAgICAgICAgLmpzLW1lbnUtYWN0aXZlIGhlYWRlci5oZWFkZXIsDQogICAgICAgIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgICAgIHRvcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLmJveC1tZW51IHsNCiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQNCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZyAubWVkaWFfX2F1dGhvciB7DQogICAgICAgICAgICBtYXJnaW46IDANCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZyAubWVkaWFfX2F1dGhvci1pbWFnZS1hdmF0YXIgew0KICAgICAgICAgICAgd2lkdGg6IDM1cHg7DQogICAgICAgICAgICBoZWlnaHQ6IDM1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC51c2VyLWxvZ19fbG9naW4gew0KICAgICAgICAgICAgY29sb3I6ICMyMTQwOWE7DQogICAgICAgICAgICBmb250LXNpemU6IDE0cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgew0KICAgICAgICAgICAgcGFkZGluZzogOHB4IDA7DQogICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2YwZjBmMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2LA0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IHN0cm9uZyB7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pdGVtIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsNCiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWwNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faXRlbSBhIHsNCiAgICAgICAgICAgIHBhZGRpbmc6IDRweDsNCiAgICAgICAgICAgIGNvbG9yOiAjNjY2Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pdGVtLW5ldyB7DQogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7DQogICAgICAgICAgICBwYWRkaW5nOiAwIDRweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogOHB4Ow0KICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7DQogICAgICAgICAgICBjb2xvcjogI2ZmZg0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2X19pY29uIHsNCiAgICAgICAgICAgIHdpZHRoOiAyM3B4Ow0KICAgICAgICAgICAgaGVpZ2h0OiAyM3B4Ow0KICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdl9faWNvbiBpbWcgew0KICAgICAgICAgICAgd2lkdGg6IDEwMCUNCiAgICAgICAgfQ0KDQogICAgICAgIC5uYXYtZnJhbWViYXIgLm5hdi0tdHdvLWNvbCB7DQogICAgICAgICAgICBjb2x1bW5zOiAyOw0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW5zOiAyOw0KICAgICAgICAgICAgLW1vei1jb2x1bW5zOiAyOw0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAwOw0KICAgICAgICAgICAgLW1vei1jb2x1bW4tZ2FwOiAwOw0KICAgICAgICAgICAgY29sdW1uLWdhcDogMA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhciAubmF2LnBsMTUgew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4Ow0KICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiA1cHg7DQogICAgICAgICAgICAtbW96LWNvbHVtbi1nYXA6IDVweDsNCiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDVweA0KICAgICAgICB9DQoNCiAgICAgICAgLm5hdi1mcmFtZWJhcl9fdGl0bGUgew0KICAgICAgICAgICAgcGFkZGluZzogNHB4Ow0KICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4Ow0KICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgY29sb3I6ICMzMzMNCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOw0KICAgICAgICAgICAgei1pbmRleDogMjU7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC42KTsNCiAgICAgICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0Ow0KICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dA0KICAgICAgICB9DQoNCiAgICAgICAgLmpzLW1lbnUtYWN0aXZlIC5qcy1vdmVybGF5IHsNCiAgICAgICAgICAgIG9wYWNpdHk6IDENCiAgICAgICAgfQ0KDQogICAgICAgIC5qcy1tZW51LWFjdGl2ZSB7DQogICAgICAgICAgICBwYWRkaW5nLXRvcDogODhweDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4NCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgew0KICAgICAgICAgICAgaGVpZ2h0OiA1MHB4Ow0KICAgICAgICAgICAgcGFkZGluZzogMCA4cHg7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBmb250LXNpemU6IDExcHg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgICAgIHotaW5kZXg6IDI3DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5hcHBfbG9nbyB7DQogICAgICAgICAgICBoZWlnaHQ6IDM2cHg7DQogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHgNCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXcgLmdldF9hcHAgew0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4DQogICAgICAgIH0NCg0KICAgICAgICAuc21hcnRiYW5uZXJfbmV3IC5zYl9jbG9zZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgICAgICBoZWlnaHQ6IDE0cHg7DQogICAgICAgICAgICB3aWR0aDogMTRweDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDsNCiAgICAgICAgICAgIHRvcDogNXB4Ow0KICAgICAgICAgICAgcmlnaHQ6IDVweDsNCiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMTQwOWENCiAgICAgICAgfQ0KDQogICAgICAgIC5zbWFydGJhbm5lcl9uZXc+ZGl2PnNwYW4gew0KICAgICAgICAgICAgaGVpZ2h0OiAzMXB4DQogICAgICAgIH0NCg0KICAgICAgICAubi1jb2x1bW5zLTIgew0KICAgICAgICAgICAgZGlzcGxheTogZ3JpZDsNCiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7DQogICAgICAgICAgICBmb250LXdlaWdodDogNzAwOw0KICAgICAgICB9DQoNCiAgICAgICAgLm4tY29sdW1ucy0yIGEgew0KICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICB9DQoNCiAgICAgICAgLmxvZ2luLA0KICAgICAgICAucmVnaXN0ZXIgew0KICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7DQogICAgICAgICAgICBwYWRkaW5nOiAxM3B4IDEwcHg7DQogICAgICAgIH0NCg0KICAgICAgICAubG9naW4sDQogICAgICAgIC5sb2dpbi1idXR0b24gew0KICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZjA5MDkgMCwgIzVlMWIxYiAxMDAlKTsNCiAgICAgICAgfQ0KDQogICAgICAgIC5yZWdpc3RlciwNCiAgICAgICAgLnJlZ2lzdGVyLWJ1dHRvbiB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmYjAyIDAsICNlN2QwMDAgMTAwJSk7DQogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmZmZmOw0KICAgICAgICB9DQogICAgPC9zdHlsZT4NCiAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCINCiAgICAgICAgY29udGVudD0iaW5pdGlhbC1zY2FsZSA9IDEuMCwgdXNlci1zY2FsYWJsZSA9IG5vLCB3aWR0aD1kZXZpY2Utd2lkdGgsIGhlaWdodD1kZXZpY2UtaGVpZ2h0LCBtYXhpbXVtLXNjYWxlPTEuMCI+DQogICAgPG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSIgY29udGVudD0ieWVzIiAvPg0KICAgIDxsaW5rIHJlbD0iaWNvbiIgdHlwZT0iaW1hZ2UvcG5nIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyI+DQogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyI+DQogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSJhc3NldC9mYXZpY29uLnBuZyIgLz4NCiAgICA8bWV0YSBjb250ZW50PSJpZCIgbmFtZT0ibGFuZ3VhZ2UiIC8+DQogICAgPG1ldGEgY29udGVudD0iaWQiIG5hbWU9Imdlby5jb3VudHJ5IiAvPg0KICAgIDxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtbGFuZ3VhZ2UiIGNvbnRlbnQ9IkluLUlkIiAvPg0KICAgIDx0aXRsZT5LdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbTwvdGl0bGU+DQogICAgPGxpbmsgcmVsPSJhbXBodG1sIiBocmVmPSJodHRwczovL2hpbmRpa2VzYXRoLmNvbS9hbXAuaHRtbCI+DQogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgaXRlbXByb3A9ImRlc2NyaXB0aW9uIiAvPg0KICAgIDxtZXRhIG5hbWU9Im9yaWdpbmFsVGl0bGUiIGNvbnRlbnQ9Ikt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiAvPg0KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0iYXJ0aWNsZSIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6c2l0ZV9uYW1lIiBjb250ZW50PSJLVURBSklUVSIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9Ikt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZSIgY29udGVudD0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzpkZXNjcmlwdGlvbiIgY29udGVudD0iS3VkYWppdHUsIHNpdHVzIHBlcm1haW5hbiBvbmxpbmUgdGVycGVyY2F5YSAyNCBqYW0uIE5pa21hdGkgYmVyYmFnYWkgcGVybWFpbmFuIG1lbmFyaWsgZGFuIGxheWFuYW4gdGVyYmFpayB1bnR1ayBwZW5nYWxhbWFuIHNsb3QgeWFuZyB0YWsgdGVybHVwYWthbiEuIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzp1cmwiIGNvbnRlbnQ9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICA8bWV0YSBwcm9wZXJ0eT0iZmI6YXBwX2lkIiBjb250ZW50PSIxODc5NjAyNzEyMzcxNDkiIC8+DQogICAgPG1ldGEgcHJvcGVydHk9ImZiOmFkbWlucyIgY29udGVudD0iMTAwMDAwNjA3NTY2Njk0IiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTp0eXBlIiBjb250ZW50PSJpbWFnZS9qcGVnIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTp3aWR0aCIgY29udGVudD0iNjUwIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTpoZWlnaHQiIGNvbnRlbnQ9IjM2NiIgLz4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCINCiAgICAgICAgY29udGVudD0iaW5pdGlhbC1zY2FsZSA9IDEuMCwgdXNlci1zY2FsYWJsZSA9IG5vLCB3aWR0aD1kZXZpY2Utd2lkdGgsIGhlaWdodD1kZXZpY2UtaGVpZ2h0LCBtYXhpbXVtLXNjYWxlPTEuMCI+DQogICAgPG1ldGEgbmFtZT0iY29weXJpZ2h0IiBjb250ZW50PSJLVURBSklUVSIgaXRlbXByb3A9ImRhdGVsaW5lIiAvPg0KICAgIDxtZXRhIG5hbWU9InA6ZG9tYWluX3ZlcmlmeSIgY29udGVudD0iMjA1N2I4NmJmNjFlNWEzNDZlMjJhMzgwYzZmZWNmODkiIC8+DQogICAgPG1ldGEgbmFtZT0ia2FuYWxpZCIgY29udGVudD0iMi0xMDUtMTAxMC0zOTgiIC8+DQogICAgPG1ldGEgbmFtZT0iYXJ0aWNsZWlkIiBjb250ZW50PSI3NDcwMTIzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGV0eXBlIiBjb250ZW50PSJzaW5nbGVwYWdlIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGVkZXdhc2EiIGNvbnRlbnQ9ImRld2FzYXRpZGFrIiAvPg0KICAgIDxtZXRhIG5hbWU9ImFydGljbGVob2F4IiBjb250ZW50PSJkZWZhdWx0IiAvPg0KICAgIDxtZXRhIG5hbWU9ImNyZWF0ZWRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTM6NTY6NDEiIC8+DQogICAgPG1ldGEgbmFtZT0icHVibGlzaGRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTQ6MDQ6MjUiIC8+DQogICAgPG1ldGEgbmFtZT0iY29udGVudHR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2VuZXdzIiAvPg0KICAgIDxtZXRhIG5hbWU9InBsYXRmb3JtIiBjb250ZW50PSJtb2JpbGUiIC8+DQogICAgPG1ldGEgbmFtZT0iaGxfbmhsX3dwIiBjb250ZW50PSJub25oZWFkbGluZS0wIiAvPg0KICAgIDxtZXRhIG5hbWU9ImhsX25obF9rYW5hbCIgY29udGVudD0ibm9uaGVhZGxpbmUtMC0yLTEwNSIgLz4NCiAgICA8bWV0YSBuYW1lPSJ2aWRlb3ByZXNlbnQiIGNvbnRlbnQ9Ik5vIiAvPg0KICAgIDxtZXRhIG5hbWU9Imdvb2dsZS1zaXRlLXZlcmlmaWNhdGlvbiIgY29udGVudD0ibzFOVzN5ZmVoSDFFb1NWTTFWSnNWVmplVk9jOWhpZEctZXhMaFFHTl9zdyIgLz4NCg0KDQoNCiAgICA8bWV0YSBuYW1lPSJpZGZva3VzIiBjb250ZW50PSJrdWRhaml0dSIgLz4NCiAgICA8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IktVREFKSVRVIiAvPg0KICAgIDxtZXRhIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgaXRlbXByb3A9ImhlYWRsaW5lIiAvPg0KICAgIDxtZXRhIG5hbWU9ImtleXdvcmRzIiBjb250ZW50PSJrdWRhaml0dSwga3VkYSBqaXR1LCBrdWRhIGppdHUgbG9naW4sIGt1ZGEgaml0dSB0b2dlbCwgUlRQIGt1ZGFqaXR1LCBoZXlsaW5rLm1lIGt1ZGFqaXR1LCBrdWRhaml0dSBsb2dpbiwgZGFmdGFyIGt1ZGFqaXR1LCBrdWRhaml0dSBuZXQgIiBpdGVtcHJvcD0ia2V5d29yZHMiIC8+DQogICAgPG1ldGEgbmFtZT0idGh1bWJuYWlsVXJsIiBjb250ZW50PSJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODA/dz02NTAiIGl0ZW1wcm9wPSJ0aHVtYm5haWxVcmwiIC8+DQogICAgPG1ldGEgcHJvcGVydHk9ImFydGljbGU6YXV0aG9yIiBjb250ZW50PSJodHRwczovL3d3dy5mYWNlYm9vay5jb20vIiBpdGVtcHJvcD0iYXV0aG9yIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJhcnRpY2xlOnB1Ymxpc2hlciIgY29udGVudD0iaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tLyIgLz4NCiAgICA8bWV0YSBuYW1lPSJwdWJkYXRlIiBjb250ZW50PSIyMDI0LTA4LTAyVDE0LTA0LTI1WiIgaXRlbXByb3A9ImRhdGVQdWJsaXNoZWQiIC8+DQogICAgPG1ldGEgY29udGVudD0iMjAyNC0wOC0wMlQxMy01Ni00MVoiIGl0ZW1wcm9wPSJkYXRlQ3JlYXRlZCIgLz4NCiAgICA8bWV0YQ0KICAgICAgICBjb250ZW50PSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgaXRlbXByb3A9InVybCIgLz4NCg0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6Y2FyZCIgY29udGVudD0ic3VtbWFyeV9sYXJnZV9pbWFnZSIgLz4NCiAgICA8bWV0YSBuYW1lPSJ0d2l0dGVyOnNpdGUiIGNvbnRlbnQ9Imt1ZGFqaXR1IiAvPg0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6c2l0ZTppZCIgY29udGVudD0ia3VkYWppdHUiIC8+DQogICAgPG1ldGEgbmFtZT0idHdpdHRlcjpjcmVhdG9yIiBjb250ZW50PSJrdWRhaml0dSIgLz4gIA0KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiIgLz4NCiAgICA8bWV0YSBuYW1lPSJ0d2l0dGVyOmltYWdlIg0KICAgICAgICBjb250ZW50PSJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiIC8+DQoNCg0KICAgIDxsaW5rIHJlbD0iY2Fub25pY2FsIg0KICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6YWNjdHlwZSIgY29udGVudD0iYWNjLUtVREFKSVRVIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azprYW5hbGlkIiBjb250ZW50PSIzOTgiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOmFydGljbGVpZCIgY29udGVudD0iNzQ3MDEyMyIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6YXJ0aWNsZXR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2UiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOmFydGljbGVkZXdhc2EiIGNvbnRlbnQ9ImRld2FzYXRpZGFrIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azphcnRpY2xlaG9heCIgY29udGVudD0iZGVmYXVsdCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6Y3JlYXRlZGRhdGUiIGNvbnRlbnQ9IjIwMjQvMDgvMDIgMTM6NTY6NDEiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOnB1Ymxpc2hkYXRlIiBjb250ZW50PSIyMDI0LzA4LzAyIDE0OjA0OjI1IiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azpjcmVhdGVkZGF0ZXVuaXgiIGNvbnRlbnQ9IjE3MjI1ODE4MDEwMDAiIC8+DQogICAgPG1ldGEgbmFtZT0iZHRrOnB1Ymxpc2hkYXRldW5peCIgY29udGVudD0iMTcyMjU4MjI2NTAwMCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6Y29udGVudHR5cGUiIGNvbnRlbnQ9InNpbmdsZXBhZ2VuZXdzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azpwbGF0Zm9ybSIgY29udGVudD0ibW9iaWxlIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azp2aWRlb3ByZXNlbnQiIGNvbnRlbnQ9Ik5vIiAvPg0KDQogICAgPG1ldGEgbmFtZT0iZHRrOmlkZm9rdXMiIGNvbnRlbnQ9Imt1ZGFqaXR1IiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azphdXRob3IiIGNvbnRlbnQ9IktVREFKSVRVIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azprZXl3b3JkcyIgY29udGVudD0ia3VkYWppdHUsIGt1ZGEgaml0dSwga3VkYSBqaXR1IGxvZ2luLCBrdWRhIGppdHUgdG9nZWwsIFJUUCBrdWRhaml0dSwgaGV5bGluay5tZSBrdWRhaml0dSwga3VkYWppdHUgbG9naW4sIGRhZnRhciBrdWRhaml0dSwga3VkYWppdHUgbmV0ICIgaXRlbXByb3A9ImtleXdvcmRzIiAvPg0KICAgIDxtZXRhIG5hbWU9ImR0azp0aHVtYm5haWxVcmwiIGNvbnRlbnQ9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MD93PTY1MCIgaXRlbXByb3A9InRodW1ibmFpbFVybCIgLz4NCiAgICA8bWV0YSBuYW1lPSJkdGs6c3RhdHVzIiBjb250ZW50PSIxIiAvPg0KDQogICAgPHNjcmlwdCBhc3luYyBpZD0iZWJ4IiBzcmM9Imh0dHBzOi8vYXBwbGV0cy5lYnhjZG4uY29tL2VieC5qcyI+PC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj4NCnsNCiAgICAiQGNvbnRleHQiOiAiaHR0cHM6Ly9zY2hlbWEub3JnIiwNCiAgICAiQHR5cGUiOiAiQnJlYWRjcnVtYkxpc3QiLA0KICAgICJpdGVtTGlzdEVsZW1lbnQiOiBbDQogICAgew0KICAgICAgICAiQHR5cGUiOiAiTGlzdEl0ZW0iLA0KICAgICAgICAicG9zaXRpb24iOiAxLA0KICAgICAgICAibmFtZSI6ICJLVURBSklUVSIsDQogICAgICAgICJpdGVtIjogIiMjIyINCiAgICB9LA0KICAgIHsNCiAgICAgICAgIkB0eXBlIjogIkxpc3RJdGVtIiwNCiAgICAgICAgInBvc2l0aW9uIjogMiwNCiAgICAgICAgIm5hbWUiOiAiQ3liZXJsaWZlIiwNCiAgICAgICAgIml0ZW0iOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9uZXdzIg0KICAgIH0sDQogICAgew0KICAgICAgICAiQHR5cGUiOiAiTGlzdEl0ZW0iLA0KICAgICAgICAicG9zaXRpb24iOiAzLA0KICAgICAgICAibmFtZSI6ICJDeWJlciBMaWZlIiwNCiAgICAgICAgIml0ZW0iOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlci1saWZlIg0KICAgIH0NCl19DQo8L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vbGQranNvbiI+DQogICAgCXsNCiAgICAJCSJAY29udGV4dCI6ICJodHRwczovL3NjaGVtYS5vcmciLA0KICAgIAkJIkB0eXBlIjogIldlYlBhZ2UiLA0KICAgIAkJImhlYWRsaW5lIjogIkt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtIiwNCiAgICAJCSJ1cmwiOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSIsDQogICAgCQkiZGF0ZVB1Ymxpc2hlZCI6ICIyMDI0LTA4LTAyVDE0OjA0OjI1KzA3OjAwIiwNCiAgICAJCSJpbWFnZSI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiLA0KCQkJInRodW1ibmFpbFVybCI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODA/dz0yMDAiDQogICAgCX0NCiAgICAJPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj4NCgkJew0KCQkJIkBjb250ZXh0IjogImh0dHBzOi8vc2NoZW1hLm9yZyIsDQoJCQkiQHR5cGUiOiAiTmV3c0FydGljbGUiLA0KCQkJIm1haW5FbnRpdHlPZlBhZ2UiOiB7DQoJCQkJIkB0eXBlIjogIldlYlBhZ2UiLA0KCQkJCSJAaWQiOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSINCgkJCX0sDQoJCQkiaGVhZGxpbmUiOiAiS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iLA0KCQkJImltYWdlIjogew0KCQkJCSJAdHlwZSI6ICJJbWFnZU9iamVjdCIsDQoJCQkgICAgInVybCI6ICJodHRwczovL2lrLmltYWdla2l0LmlvL2YzYnhzdjkydy9LVURBLUpJVFUtNC5qcGc/dXBkYXRlZEF0PTE3NDQ4NzgyMzU4ODAiDQogICAgICAgICAgICB9LA0KCQkJImRhdGVQdWJsaXNoZWQiOiAiMjAyNC0wOC0wMlQxNDowNDoyNSswNzowMCIsDQoJCQkiZGF0ZU1vZGlmaWVkIjogIjIwMjQtMDgtMDJUMTQ6MDQ6MjUrMDc6MDAiLA0KCQkJImF1dGhvciI6IHsNCgkJCQkiQHR5cGUiOiAiUGVyc29uIiwNCgkJCQkibmFtZSI6ICJLVURBSklUVSINCgkJCX0sDQoJCQkicHVibGlzaGVyIjogew0KCQkJCSJAdHlwZSI6ICJPcmdhbml6YXRpb24iLA0KCQkJCSJuYW1lIjogImRldGlrY29tIiwNCgkJCQkibG9nbyI6IHsNCgkJCQkJIkB0eXBlIjogIkltYWdlT2JqZWN0IiwNCgkJCQkJInVybCI6ICJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZGV0aWsyL2ltYWdlcy9sb2dvLmpwZyINCgkJCQl9DQoJCQl9LA0KCQkJImRlc2NyaXB0aW9uIjogIkt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiINCgkJfQ0KICAgIAk8L3NjcmlwdD4NCiAgICA8c2NyaXB0PnZhciB3aWRfbWV0aG9kID0gIkdFVCI7PC9zY3JpcHQ+DQogICAgPCEtLXM6ZHRrcHJ2LS0+DQogICAgPCEtLWU6ZHRrcHJ2LS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgaWYgKG5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1VDQnJvd3Nlci9pKSAmJiBkb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbCA9PSAnaHR0cDonKSB7DQogICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICdodHRwczovLycgKyBkb2N1bWVudC5sb2NhdGlvbi5ob3N0ICsgZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWU7DQogICAgICAgIH0NCiAgICA8L3NjcmlwdD4NCg0KICAgIDwhLS0gUkVRVUlSRUQgLS0+DQoNCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCINCiAgICAgICAgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL2pxdWVyeS1taW4tMy4yLjEuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgdmFyIGR0a0dUTURMID0geyBkYXRhOiB7fSwgZ2V0TWV0YTogZnVuY3Rpb24gKGEsIHQpIHsgcmV0dXJuIG51bGwgIT09IChlID0gZG9jdW1lbnQuaGVhZC5xdWVyeVNlbGVjdG9yKCJbIiArIGEgKyAnPSInICsgdCArICciXScpKSA/IGUuY29udGVudCA6IG51bGwgfSwgYWRkRGF0YUxheWVyOiBmdW5jdGlvbiAoYSwgdCwgciA9IG51bGwpIHsgbnVsbCA9PT0gciAmJiAociA9IHQpLCBudWxsICE9PSAodmFsID0gZHRrR1RNREwuZ2V0TWV0YShhLCB0KSkgJiYgIiIgIT0gdmFsICYmIChkdGtHVE1ETC5kYXRhW3JdID0gdmFsKSB9LCBhZGRDdXN0b21EaW1lbnNpb246IGZ1bmN0aW9uIChhKSB7IGZvciAoaSA9IDA7IGkgPCBhLmxlbmd0aDsgaSsrKXN3aXRjaCAoYVtpXSkgeyBjYXNlICJrYW5hbGlkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImthbmFsaWQiKTsgYnJlYWs7IGNhc2UgImFydGljbGVpZCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJhcnRpY2xlaWQiKTsgYnJlYWs7IGNhc2UgImFydGljbGV0eXBlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGV0eXBlIik7IGJyZWFrOyBjYXNlICJhcnRpY2xlZGV3YXNhIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGVkZXdhc2EiKTsgYnJlYWs7IGNhc2UgImFydGljbGVob2F4IjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImFydGljbGVob2F4Iik7IGJyZWFrOyBjYXNlICJjcmVhdGVkYXRlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImNyZWF0ZWRhdGUiKTsgYnJlYWs7IGNhc2UgInB1Ymxpc2hkYXRlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInB1Ymxpc2hkYXRlIik7IGJyZWFrOyBjYXNlICJrZXl3b3JkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImtleXdvcmRzIiwgImtleXdvcmQiKTsgYnJlYWs7IGNhc2UgImlkZm9rdXMiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaWRmb2t1cyIpOyBicmVhazsgY2FzZSAibmFtYWZva3VzIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgIm5hbWFmb2t1cyIpOyBicmVhazsgY2FzZSAiaWRwcm9ncmFtIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImlkcHJvZ3JhbSIpOyBicmVhazsgY2FzZSAibmFtYXByb2dyYW0iOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAibmFtYXByb2dyYW0iKTsgYnJlYWs7IGNhc2UgInBhZ2VzaXplIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInBhZ2VzaXplIik7IGJyZWFrOyBjYXNlICJwYWdlbnVtYmVyIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInBhZ2VudW1iZXIiKTsgYnJlYWs7IGNhc2UgInZpZGVvcHJlc2VudCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJ2aWRlb3ByZXNlbnQiKTsgYnJlYWs7IGNhc2UgInZpZGVvX2lkIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgInZpZGVvX2lkIik7IGJyZWFrOyBjYXNlICJyZWZmZXJhbF91cmwiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAicmVmZmVyYWxfdXJsIik7IGJyZWFrOyBjYXNlICJjb250ZW50dHlwZSI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJjb250ZW50dHlwZSIpOyBicmVhazsgY2FzZSAicGxhdGZvcm0iOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAicGxhdGZvcm0iKTsgYnJlYWs7IGNhc2UgImF1dGhvciI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJhdXRob3IiKTsgYnJlYWs7IGNhc2UgInRpdGxlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJwcm9wZXJ0eSIsICJvZzp0aXRsZSIsICJ0aXRsZSIpOyBicmVhazsgY2FzZSAic3ViY2F0ZWdvcmkiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAic3ViY2F0ZWdvcmkiKTsgYnJlYWs7IGNhc2UgImtleXdvcmRrYW5hbCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJrZXl3b3Jka2FuYWwiKTsgYnJlYWs7IGNhc2UgImR1cmF0aW9uIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgImR1cmF0aW9uIik7IGJyZWFrOyBjYXNlICJobF9uaGxfd3AiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaGxfbmhsX3dwIik7IGJyZWFrOyBjYXNlICJobF9uaGxfa2FuYWwiOiBkdGtHVE1ETC5hZGREYXRhTGF5ZXIoIm5hbWUiLCAiaGxfbmhsX2thbmFsIik7IGJyZWFrOyBjYXNlICJvcmlnaW5hbFRpdGxlIjogZHRrR1RNREwuYWRkRGF0YUxheWVyKCJuYW1lIiwgIm9yaWdpbmFsVGl0bGUiKTsgYnJlYWs7IGNhc2UgInZpZGVvX3N0b3J5X3VybCI6IGR0a0dUTURMLmFkZERhdGFMYXllcigibmFtZSIsICJ2aWRlb19zdG9yeV91cmwiKSB9IH0sIGdlbmVyYXRlOiBmdW5jdGlvbiAoKSB7IHJldHVybiBjb250ZW50dHlwZSA9IGR0a0dUTURMLmdldE1ldGEoIm5hbWUiLCAiY29udGVudHR5cGUiKSwgZHRrR1RNREwuYWRkQ3VzdG9tRGltZW5zaW9uKFsia2FuYWxpZCIsICJhcnRpY2xlaWQiLCAiYXJ0aWNsZXR5cGUiLCAiYXJ0aWNsZWRld2FzYSIsICJhcnRpY2xlaG9heCIsICJjcmVhdGVkYXRlIiwgInB1Ymxpc2hkYXRlIiwgImtleXdvcmQiLCAiaWRmb2t1cyIsICJuYW1hZm9rdXMiLCAiaWRwcm9ncmFtIiwgIm5hbWFwcm9ncmFtIiwgInBhZ2VzaXplIiwgInBhZ2VudW1iZXIiLCAidmlkZW9wcmVzZW50IiwgInZpZGVvX2lkIiwgImNvbnRlbnR0eXBlIiwgInBsYXRmb3JtIiwgImF1dGhvciIsICJzdWJjYXRlZ29yaSIsICJrZXl3b3Jka2FuYWwiLCAiZHVyYXRpb24iLCAiaGxfbmhsX3dwIiwgImhsX25obF9rYW5hbCIsICJvcmlnaW5hbFRpdGxlIiwgInZpZGVvX3N0b3J5X3VybCJdKSwgZHRrR1RNREwuZGF0YS5ldmVudCA9ICJhcnRpY2xlUHVzaCIsIGR0a0dUTURMLmRhdGEgfSB9OyBkYXRhTGF5ZXIgPSBbZHRrR1RNREwuZ2VuZXJhdGUoKV07IHZhciBfcHQgPSBmdW5jdGlvbiAoYSwgdCwgciwgZCwgbikgeyBjb25zb2xlLmxvZygiX19wdDpndG1kbCIpLCB2b2lkIDAgPT09IHQgJiYgYS5oYXNBdHRyaWJ1dGUoImR0ci1ldnQiKSAmJiAodCA9IGEuZ2V0QXR0cmlidXRlKCJkdHItZXZ0IiksIGQgPSBhLmdldEF0dHJpYnV0ZSgiZHRyLWFjdCIpICsgIiAiICsgYS5nZXRBdHRyaWJ1dGUoImR0ci1pZHgiKSwgciA9IGEuZ2V0QXR0cmlidXRlKCJkdHItdHRsIikpOyB2YXIgbyA9IHsgZXZlbnQ6ICJwYW5lbCB0cmFja2luZyIsIGFjdGlvbjogImtsaWsgIiArIGQsIHBhbmVsbmFtZTogdC50b0xvd2VyQ2FzZSgpLCBwdF9mcm9tX3R5cGU6ICQoIm1ldGFbbmFtZT1jb250ZW50dHlwZV0iKS5hdHRyKCJjb250ZW50IiksIHB0X2Zyb21fa2FuYWw6ICQoIm1ldGFbbmFtZT1rYW5hbGlkXSIpLmF0dHIoImNvbnRlbnQiKSwgcHRfdG9fdXJsOiBhLmhyZWYsIHB0X3BsYXRmb3JtOiAkKCJtZXRhW25hbWU9cGxhdGZvcm1dIikuYXR0cigiY29udGVudCIpLCBwdF90b19wYWdlOiByIH07IGlmICh2b2lkIDAgIT09IG4pIHZhciBvID0gJC5leHRlbmQobywgbik7IGNvbnNvbGUubG9nKCJkYXRhbGF5ZXIgcHVzaCIsIG8pLCBkYXRhTGF5ZXIucHVzaChvKSB9OyAkKGZ1bmN0aW9uICgpIHsgcHVzaEV2ZW50ID0gZnVuY3Rpb24gKGEsIHQsIHIpIHsgdmFyIGQ7IGQgPSAidW5kZWZpbmVkIiAhPSB0eXBlb2YgYmFzZWthbmFsICYmIG51bGwgIT09IGJhc2VrYW5hbCA/IGJhc2VrYW5hbCA6IGJhc2V1cmwsIGRhdGFMYXllci5wdXNoKHsgZXZlbnQ6ICIiICsgYSwgYmNfbmF2X3VybDogIiIgKyB0LCBiY19kb21haW46ICIiICsgZCwgYmNfdGl0bGU6ICIiICsgciwgYmFjYV9qdWdhX2FpZDogIiIgKyBnZXRBcnRpY2xlSWQoYSwgdCkgfSkgfSwgZ2V0QXJ0aWNsZUlkID0gZnVuY3Rpb24gKGEsIHQpIHsgcmV0dXJuIChhcklEID0gKGFyclVybCA9IHQuc3BsaXQoIi8iKSkubGVuZ3RoID4gOSA/IGFyclVybFsyXS5pbmRleE9mKCJtLmRldGlrIikgPiAtMSB8fCBhcnJVcmxbMl0uaW5kZXhPZigibWRldi5kZXRpayIpID4gLTEgPyB0LmluZGV4T2YoIi9+IikgPiAtMSA/IGFyclVybFsxMF0gOiBhcnJVcmxbOV0gOiBhcnJVcmxbM10uaW5kZXhPZigic2VwYWtib2xhIikgPiAtMSA/IGFyclVybFs5XSA6IGFyclVybFs4XSA6IGFyclVybFsyXS5pbmRleE9mKCJnYXJ1ZGEuZGV0aWsiKSA+IC0xID8gdC5pbmRleE9mKCIvfiIpID4gLTEgPyBhcnJVcmxbNl0gOiBhcnJVcmxbNV0gOiB0LmluZGV4T2YoIi9+IikgPiAtMSA/ICJzZXBha2JvbGEiID09IGFyclVybFs0XSA/IGFyclVybFs2XSA6IGFyclVybFs1XSA6ICJzZXBha2JvbGEiID09IGFyclVybFszXSA/IGFyclVybFs1XSA6IGFyclVybFs0XSkuaW5kZXhPZigiZC0iKSA+IC0xICYmIChhcklEID0gYXJJRC5zcGxpdCgiLSIpWzFdKSwgYXJJRCB9LCAkKCIjcmVsYXRlZGd0bSBhIikuY2xpY2soZnVuY3Rpb24gKCkgeyBwdXNoRXZlbnQoImJlcml0YXRlcmthaXQiLCAkKHRoaXMpLmF0dHIoImhyZWYiKSwgJCh0aGlzKS50ZXh0KCkudHJpbSgpKSB9KSwgJCgiI3JlYWR0b29ndG0iKS5oYXNDbGFzcygibGlzdF9fb3RoZXJfX2l0ZW0iKSA/IChzZWxlY3RvciA9ICQoIiNyZWFkdG9vZ3RtIGg1IGEiKSwgc2V0ID0gITApIDogKHNlbGVjdG9yID0gJCgiI3JlYWR0b29ndG0gYSIpLCBzZXQgPSAhMSksIHNlbGVjdG9yLmNsaWNrKGZ1bmN0aW9uICgpIHsgdmFyIGE7ICQoImgyIiwgdGhpcykubGVuZ3RoICYmIChhID0gJCgiaDIiLCB0aGlzKS50ZXh0KCkudHJpbSgpKSwgJCgiaDMiLCB0aGlzKS5sZW5ndGggJiYgKGEgPSAkKCJoMyIsIHRoaXMpLnRleHQoKS50cmltKCkpLCAkKCJoNCIsIHRoaXMpLmxlbmd0aCAmJiAoYSA9ICQoImg0IHN0cm9uZyIsIHRoaXMpLmxlbmd0aCA/ICQoImg0IHN0cm9uZyIsIHRoaXMpLnRleHQoKS50cmltKCkgOiAkKCJoNCIsIHRoaXMpLnRleHQoKS50cmltKCkpLCAhMCA9PSBzZXQgJiYgKGEgPSAkKHRoaXMpLnRleHQoKS50cmltKCkpLCAkKCJoNiIsIHRoaXMpLmxlbmd0aCAmJiAoYSA9ICQoImg2IiwgdGhpcykudGV4dCgpLnRyaW0oKSksIHB1c2hFdmVudCgiYmFjYWp1Z2EiLCAkKHRoaXMpLmF0dHIoImhyZWYiKSwgYSkgfSkgfSk7DQogICAgPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiDQogICAgICAgIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2xpYnMvbGl2ZWNvdW50ZXIvZGV0aWtMaXZlVXNlckNvdW50ZXJSZXNwb25zZS5qcz92PTIwMjQwODAyMTUiIGRlZmVyPjwvc2NyaXB0Pg0KDQogICAgPCEtLSBzOnByZWxvYWQgLS0+DQogICAgPCEtLSBlOnByZWxvYWQgLS0+DQoNCg0KDQogICAgPCEtLSBEeW5hbWljIFByb3Zpc2lvbmluZyAtLT4NCiAgICA8c2NyaXB0IGFzeW5jIHNyYz0iLy9taWNyby5ydWJpY29ucHJvamVjdC5jb20vcHJlYmlkL2R5bmFtaWMvMTE1MzAuanMiPjwvc2NyaXB0Pg0KDQogICAgPCEtLSBTdGFydCBUYWcgREZQIC0tPg0KICAgIDxzY3JpcHQgYXN5bmMgc3JjPSJodHRwczovL3NlY3VyZXB1YmFkcy5nLmRvdWJsZWNsaWNrLm5ldC90YWcvanMvZ3B0LmpzIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgYXN5bmMgc3JjPSIvL3NlcnZnMS5uZXQvby5qcz91aWQ9OGVjMDhiZjE0MWJlMGNiNDMxZTA0ZGM5IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pg0KICAgIDwhLS0gT3B0aW1hIFRhZyAtLT4NCg0KICAgIDwhLS0gSW5zdXJhZCB0YWcgLS0+DQogICAgPHNjcmlwdCBhc3luYyBzcmM9Imh0dHBzOi8vY2RuLmluc3VyYWRzLmNvbS9ib290c3RyYXAvUzlIN09NWkIuanMiPjwvc2NyaXB0Pg0KDQoNCg0KICAgIDwhLS0gRTp0YWdoZWFkIC0tPg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgdmFyIGJhc2V1cmwgPSAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbSIsDQogICAgICAgICAgICBhc3NldF91cmwgPSAiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2luZXQyL20iLA0KICAgICAgICAgICAgc2l0ZV9pZCA9ICI1IiwNCiAgICAgICAgICAgIGNoYW5uZWxfaWQgPSAiMTA1IiwNCiAgICAgICAgICAgIHJlc3BvbnNpdmUgPSBmYWxzZSwNCiAgICAgICAgICAgIGl0cF9sb2NhbHNfYWN0aXZlID0gZmFsc2UsDQogICAgICAgICAgICBpdHBfc2l0ZV9uYW1lID0gIktVREFKSVRVIg0KICAgIDwvc2NyaXB0Pg0KDQogICAgPCEtLXByb2ZpbGVfYWQ6ZGV0aWtfaW5ldC0tPg0KICAgIDwhLS1sYXlvdXRfdHlwZTptb2JpbGUtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIGZ1bmN0aW9uIGdldFNjcmlwdChlLCB0KSB7IHZhciBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7IGEuc3JjID0gZTsgdmFyIG4gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLCBkID0gITE7IGEub25sb2FkID0gYS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7IGQgfHwgdGhpcy5yZWFkeVN0YXRlICYmICJsb2FkZWQiICE9IHRoaXMucmVhZHlTdGF0ZSAmJiAiY29tcGxldGUiICE9IHRoaXMucmVhZHlTdGF0ZSB8fCAoZCA9ICEwLCB0KCksIGEub25sb2FkID0gYS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBudWxsLCBuLnJlbW92ZUNoaWxkKGEpKSB9LCBuLmFwcGVuZENoaWxkKGEpIH0NCiAgICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIGZ1bmN0aW9uIGl0cEdldEZpbGVOYW1lRnJvbVVybChpKSB7IHJldHVybiBuZXcgVVJMKGkpLnBhdGhuYW1lLnNwbGl0KCIvIikucG9wKCkuc3BsaXQoIi4iKS5zbGljZSgwLCAtMSkuam9pbigiIikgfSBmdW5jdGlvbiBpdHBJbml0U2Nyb2xsQXNzZXQoaSwgbiwgdCA9IGZ1bmN0aW9uICgpIHsgfSkgeyBsZXQgZSA9ICJpbml0ZWQiICsgaXRwR2V0RmlsZU5hbWVGcm9tVXJsKGkpOyB3aW5kb3dbZV0gPSAhMSwgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsIChmdW5jdGlvbiAoKSB7IHdpbmRvd1tlXSB8fCB3aW5kb3cuc2Nyb2xsWSA8PSBuIHx8ICh3aW5kb3dbZV0gPSAhMCwgZ2V0U2NyaXB0KGksIHQpKSB9KSkgfQ0KICAgIDwvc2NyaXB0Pg0KPC9oZWFkPg0KDQo8Ym9keT4NCiAgICA8ZGl2IGNsYXNzPSJoZWFkZXItdG9wIj48L2Rpdj4NCiAgICA8aGVhZGVyIGNsYXNzPSJoZWFkZXIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZC1yb3cgbm8tZ3V0dGVyIGZsZXgtYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sdW1uLWF1dG8gaGVhZGVyX19sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ibWVudUNsaWNrIiBjbGFzcz0ibWVudS1idXR0b24iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ibWVudSBoYW1idXJnZXIiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItYWN0PSJtZW51IGhhbWJ1cmdlciIgb25jbGljaz0iX3B0KHRoaXMpIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lbnUtYnV0dG9uX193cmFwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaGVhZGVyX19icmFuZCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPScjIyMnIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ibG9nbyBLVURBSklUVSIgZHRyLWFjdD0ibG9nbyBLVURBSklUVSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiPjxpbWcgd2lkdGg9JzExNicgaGVpZ2h0PScyNCcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjPSdodHRwczovL2F3c2ltYWdlcy5kZXRpay5uZXQuaWQvY29tbXVuaXR5L21lZGlhL3Zpc3VhbC8yMDIwLzA5LzE3L2xvZ28tZGV0aWtpbmV0LnBuZz9kPTEnDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSdLVURBSklUVScgYWx0PSdLVURBSklUVScgY2xhc3M9J2xvZ28nIC8+PC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2x1bW4tYXV0byBoZWFkZXJfX3JpZ2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0ic2VhcmNoIiBkdHItc2VjPSJzZWFyY2giIGR0ci1hY3Q9InNlYXJjaCIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9zZWFyY2giIGlkPSJzZWFyY2hDbGljayIgY2xhc3M9ImhlYWRlcl9faWNvbiBoZWFkZXJfX2ljb24tLXNlYXJjaCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLXNlYXJjaCI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJidXR0b24gbGl2ZSB0diIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItdHRsPSJsaXZlIHR2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJoZWFkZXJfX2ljb24gaGVhZGVyX19pY29uLS1saXZlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tbGl2ZS10diI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdmJhciBuYXZiYXItc2hhZG93Ij4NCg0KDQogICAgICAgICAgICAgICAgPG5hdiBjbGFzcz0ibmF2YmFyLWZpcnN0IG5hdmJhci0tc2Nyb2xsIj4NCiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjEiIGR0ci10dGw9IkhvbWUiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIb21lIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMiIgZHRyLXR0bD0iR2FkZ2V0IiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR2FkZ2V0IDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyIgZHRyLXR0bD0iQ3liZXJsaWZlIiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3liZXJsaWZlIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNCIgZHRyLXR0bD0iR2FtZXMgJmFtcDsgRXNwb3J0IiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR2FtZXMgJiBFc3BvcnQgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI1IiBkdHItdHRsPSJCdXNpbmVzcyAmYW1wOyBQb2xpY3kiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCdXNpbmVzcyAmIFBvbGljeSA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjYiIGR0ci10dGw9IlNjaWVuY2UiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTY2llbmNlIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNyIgZHRyLXR0bD0iVGVsZWNvbW11bmljYXRpb24iIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZWxlY29tbXVuaWNhdGlvbiA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjgiIGR0ci10dGw9IlRpcHMgJmFtcDsgVHJpayIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpcHMgJiBUcmlrIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iZmlyc3QgbmF2YmFyIiBkdHItYWN0PSJmaXJzdCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iOSIgZHRyLXR0bD0iRm90byIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG8gPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIxMCIgZHRyLXR0bD0iVmlkZW8iIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWaWRlbyA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9ImZpcnN0IG5hdmJhciIgZHRyLWFjdD0iZmlyc3QgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjExIiBkdHItdHRsPSJJbmRla3MiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmRla3MgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJmaXJzdCBuYXZiYXIiIGR0ci1hY3Q9ImZpcnN0IG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIxMiIgZHRyLXR0bD0iU2VjdXJpdHkiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZWN1cml0eSA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KDQogICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgPC9uYXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9oZWFkZXI+DQoNCg0KDQoNCg0KICAgIDxkaXY+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLXdyYXAgIG5hdmJhci1zaGFkb3ciPg0KICAgICAgICAgICAgICAgIDxuYXYgY2xhc3M9Im5hdmJhci1zZWNvbmQgbmF2YmFyLS1zY3JvbGwiPg0KICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiI+DQogICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFM6bmF2YmFyIC0tPiA8IS0tIEU6bmF2YmFyIC0tPiA8IS0tIFM6bmF2YmFyMiAtLT4gPCEtLSBFOm5hdmJhcjIgLS0+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2X19pdGVtLS1uZXcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJzZWNvbmQgbmF2YmFyIiBkdHItYWN0PSJzZWNvbmQgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjEiIGR0ci10dGw9IkdhZGdldCBvZiB0aGUgTW9udGgiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHYWRnZXQgb2YgdGhlIE1vbnRoIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2X19pdGVtLS1uZXcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSJzZWNvbmQgbmF2YmFyIiBkdHItYWN0PSJzZWNvbmQgbmF2YmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjIiIGR0ci10dGw9IkxhYiBHYWRnZXQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMYWIgR2FkZ2V0IDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9InNlY29uZCBuYXZiYXIiIGR0ci1hY3Q9InNlY29uZCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyIgZHRyLXR0bD0iS29tcGFyYXNpIEdhZGdldCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvbXBhcmFzaSBHYWRnZXQgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0ic2Vjb25kIG5hdmJhciIgZHRyLWFjdD0ic2Vjb25kIG5hdmJhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI0IiBkdHItdHRsPSJGb3Rvc3RvcCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG9zdG9wIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9InNlY29uZCBuYXZiYXIiIGR0ci1hY3Q9InNlY29uZCBuYXZiYXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iNSIgZHRyLXR0bD0iSW5ldCBHcmFmaXMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmV0IEdyYWZpcyA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KDQogICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgPC9uYXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPCEtLSBTOkZSQU1FQkFSIFdJREdFVC0tPg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9jc3MvbS9mcmFtZWJhci5jc3M/dj0yMDI0MDgwMjE1NDQzIiB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXkgYm94LW92ZXJsYXktLWFycm93LWxvZ28gYm94LW1lbnUgZnJhbWViYXJhc3NldC1sYXp5Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXlfX2hlYWRlciI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSB1c2VyLWxvZyI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX2F1dGhvciI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InN0YXR1c191c2VyX25mIiBjbGFzcz0iZnJhbWViYXJfdXNlciIgc3R5bGU9ImRpc3BsYXk6aW5oZXJpdCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fYXV0aG9yLWltYWdlLWF2YXRhciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvZnJhbWViYXIvdXNlcl9kZWZhdWx0LndlYnAiIGFsdD0ia3VkYWppdHUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idXNlci1sb2dfX25hbWUiPkhhbG8gRGV0aWtlcjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0idXNlci1sb2dfX2xvZ2luIj5Nb2hvbiBUdW5nZ3UuLi48L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94LW92ZXJsYXlfX2JvZHkiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiI+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvd2VicC9mcmFtZWJhci9mYXZpY29uLWRldGlrLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSJrdWRhaml0dSIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtjb20NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tdHdvLWNvbCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2hpbmRpa2VzYXRoLmNvbS8iIHRhcmdldD0iIF9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19Nb3N0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXJwb3B1bGVyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9oaW5kaWtlc2F0aC5jb20vIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19saXZldHYud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpdmUgVFYNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19raXJpbV90dWxpc2FuLTN4LndlYnAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLaXJpbSBUdWxpc2FuDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9oaW5kaWtlc2F0aC5jb20vIiB0YXJnZXQ9IiBfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfcGVtaWx1LTN4LndlYnAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1BlbWlsdQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faXRlbS1uZXciPk5FVzwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXJfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgS2F0ZWdvcmkgQmVyaXRhIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tdHdvLWNvbCI+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa05ld3MiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19kZXRpay0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtOZXdzDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9ImRldGlrRmluYW5jZSIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19maW5hbmNlLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0ZpbmFuY2UNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyMjIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJLVURBSklUVSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2luZXQtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtVREFKSVRVDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0hvdCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2hvdC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtIb3QNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrU3BvcnQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19zcG9ydC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtTcG9ydA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iU2VwYWtib2xhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc2VwYWtib2xhLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXBha2JvbGENCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyBkdHItZXZ0PSIgaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtPdG8iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19vdG8tM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrT3RvDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa1RyYXZlbCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3RyYXZlbC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtUcmF2ZWwNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrRm9vZCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2Zvb2QtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrRm9vZA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtIZWFsdGgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19oZWFsdGgtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSGVhbHRoDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJXb2xpcG9wIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfd29saXBvcC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgV29saXBvcA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iRGV0aWtYIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfWC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1IiB3aWR0aD0iMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRGV0aWtYDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIyMERldGlrIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfMjBELTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMERldGlrDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0ZvdG8iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19mb3RvLndlYnAiIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0ZvdG8NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrRWR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfZWR1LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0VkdQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtIaWttYWgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19IaWttYWgud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSGlrbWFoDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9ImRldGlrUHJvcGVydGkiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNwcm9wZXJ0aS53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0aWtQcm9wZXJ0aQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtQb3AiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY29ucG9wLndlYnAiIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1BvcA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2l0ZW0tbmV3Ij5ORVc8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXIiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1mcmFtZWJhcl9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICBEYWVyYWggPC9kaXY+DQogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2LS10d28tY29sIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrSmF0ZW5nIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfamF0ZW5nLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0phdGVuZw0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtKYXRpbSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2phdGltLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0phdGltDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0phYmFyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfamFiYXItM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGlrSmFiYXINCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRldGlrU3Vsc2VsIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc3Vsc2VsLTJ4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bHNlbA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtTdW11dCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3N1bXV0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bXV0DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImgjIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJkZXRpa0JhbGkiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY29uZGV0aWtiYWxpLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0JhbGkNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkeD0iZGV0aWtTdW1iYWdzZWwiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfc3VtYmFnc2VsLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa1N1bWJhZ3NlbA0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtKb2dqYSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2pvZ2phLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0pvZ2phDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faXRlbS1uZXciPk5FVzwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1mcmFtZWJhciI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgIExheWFuYW4gPC9kaXY+DQogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2LS10d28tY29sIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IlBhc2FuZyBNYXRhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfcGFzYW5nX21hdGEtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhc2FuZyBNYXRhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJhZHNtYXJ0Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19hZHNtYXJ0LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZHNtYXJ0DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJGb3J1bSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2ZvcnVtLTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBGb3J1bQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iZGV0aWtFdmVudCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2V2ZW50LTN4LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRpa0V2ZW50DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IlRyYW5zIFNub3cgV29ybGQiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfdHJhbnNfc25vd19sYXRlc3Qud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zIFNub3cgV29ybGQNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkeD0iVHJhbnMgU3R1ZGlvIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX3RyYW5zX3N0dWRpb19sYXRlc3Qud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zIFN0dWRpbw0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJiZXJidWF0YmFpay5pZCIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9sb2dvLWJlcmJ1YXRiYWlraWQud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlcmJ1YXRiYWlrLmlkDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9Inppc3dhZmN0YXJzYS5pZCIgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY196aXN3YWZvay53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgemlzd2FmY3RhcnNhLmlkDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IlNpZ25hdHVyZSBBd2FyZHMiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvZmF2aWNvbi1zaWduYXR1cmUlMjAoMSkud2VicCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0ia3VkYWppdHUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpZ25hdHVyZSBBd2FyZHMNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pdGVtLW5ldyI+TkVXPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWZyYW1lYmFyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtZnJhbWViYXJfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgRGV0aWsgTmV0d29yayA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBuYXYtLXR3by1jb2wiPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJDTk4gSW5kb25lc2lhIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2Nubi0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ05OIEluZG9uZXNpYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIGR0ci1ldnQ9IiBoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9IkNOQkMgSW5kb25lc2lhIiBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX0NOQkMtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENOQkMgSW5kb25lc2lhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2X19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBkdHItZXZ0PSJoZWFkZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJIYWkgQnVuZGEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19oYWlfYnVuZGEtM3gud2VicCIgYWx0PSJrdWRhaml0dSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEhhaSBCdW5kYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iSW5zZXJ0TGl2ZSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2luc2VydC0zeC53ZWJwIiBhbHQ9Imt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSW5zZXJ0TGl2ZQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iQmVhdXR5bmVzaWEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0ibWVudSBoYW1idXJnZXIiIA0KICIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZfX2ljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvZnJhbWViYXJhc3NldC9pY19iZWF1dHluZXNpYS0xLndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCZWF1dHluZXNpYQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgZHRyLWV2dD0iaGVhZGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJGZW1hbGUgRGFpbHkiIGR0ci10dGw9Im1lbnUgaGFtYnVyZ2VyIiANCiAiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmF2X19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2ZyYW1lYmFyYXNzZXQvaWNfZmVtYWxlX2RhaWx5LndlYnAiIGFsdD0ia3VkYWppdHUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBGZW1hbGUgRGFpbHkNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImhlYWRlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJtZW51IiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IkNYTyBNZWRpYSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJtZW51IGhhbWJ1cmdlciIgDQogIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdl9faWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9mcmFtZWJhcmFzc2V0L2ljX2N4by53ZWJwIiBhbHQ9Imt1ZGFqaXR1IiB3aWR0aD0iMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9IjI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ1hPIE1lZGlhDQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheSBzZWFyY2gtY29udGFpbmVyIHNlYXJjaGFzc2V0LWxhenkiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9faGVhZGVyIGdyaWQtcm93Ij4NCiAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBpZD0ic2VhcmNoQ2xvc2UiIGNsYXNzPSJjb2x1bW4tYXV0byBkaXNwbGF5LWZsZXggYWxpZ24taXRlbXMtY2VudGVyIj4NCiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS1zbSBpY29uLWFycm93LWxlZnQiPjwvaT4NCiAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbHVtbiI+DQogICAgICAgICAgICAgICAgPGZvcm0gYWN0aW9uPSIjIiBtZXRob2Q9IkdFVCI+DQogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0ic2VhcmNoLXRleHQiIG5hbWU9InF1ZXJ5IiBjbGFzcz0ic2VhcmNoLW92ZXJsYXlfX2lucHV0Ig0KICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9IkNhcmkgZGkgZGV0aWtjb20iIHJlcXVpcmVkIGF1dG9jb21wbGV0ZT0ib2ZmIj4NCiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic2l0ZWlkIiB2YWx1ZT0iNSIgLz4NCiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic291cmNlX2thbmFsIiB2YWx1ZT0idHJ1ZSIgLz4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imljb24tcmlnaHQgaGlkZS1lbGVtZW50IiBpZD0iY2xlYXItc2VhcmNoLXRleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvaWNvbi1jbGVhci53ZWJwP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIGFsdD0ia3VkYWppdHUiPg0KICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgPC9mb3JtPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9fYm9keSI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtb3ZlcmxheV9fYm9keS1jb250ZW50Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaC1zZWN0aW9uX190aXRsZSI+WWFuZyBzZWRhbmcgcmFtYWkgZGljYXJpIDxpbWcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvaWNvbi1ob3Qud2VicD92PTIwMjQwODAyMTU0NDMiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Im1nbC04IiB3aWR0aD0iMTIiIGhlaWdodD0iMTUiIGFsdD0ia3VkYWppdHUiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8b2wgY2xhc3M9InNlYXJjaC1zZWN0aW9uX19saXN0IiBpZD0idG9wLWtleXdvcmQtc2VhcmNoIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyI+PHNwYW4gY2xhc3M9ImZvbnQtYm9sZCI+TG9hZGluZy4uLiA8L3NwYW4+PC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgIDwvb2w+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VhcmNoLXNlY3Rpb24iPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbl9fdGl0bGUiPlRlcmFraGlyIHlhbmcgZGljYXJpPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxvbCBjbGFzcz0ic2VhcmNoLXNlY3Rpb25fX2xpc3QiIGlkPSJsYXN0LXNlYXJjaCI+DQogICAgICAgICAgICAgICAgICAgICAgICBMb2FkaW5nLi4uDQogICAgICAgICAgICAgICAgICAgIDwvb2w+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaC1vdmVybGF5X19ib2R5LXN1Z2dlc3QgaGlkZS1lbGVtZW50Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtc2VjdGlvbiI+DQogICAgICAgICAgICAgICAgICAgIDxvbCBjbGFzcz0ic2VhcmNoLXNlY3Rpb25fX2xpc3QiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHN1Z2dlc3Q+PC9zdWdnZXN0Pg0KICAgICAgICAgICAgICAgICAgICA8L29sPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDxzY3JpcHQ+DQogICAgICAgIGxldCB1cmxQYXJhbWV0ZXIgPSAnbnVsbCc7DQogICAgPC9zY3JpcHQ+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9qb25hcGVkaWEuY29tL2Fzc2V0cy9qcy9mcmFtZWJhci9zZWFyY2guanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCINCiAgICAgICAgc3JjPSJodHRwczovL2pvbmFwZWRpYS5jb20vYXNzZXRzL2pzL2ZyYW1lYmFyL3NlYXJjaC1hdXRvY29tcGxldGUuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgIHZhciBjbGljayA9ICQoIiNtZW51Q2xpY2siKTsNCiAgICAgICAgdmFyIHNlYXJjaCA9ICQoIiNzZWFyY2hDbGljayIpOw0KICAgICAgICB2YXIgY2xvc2VTZWFyY2ggPSAkKCIjc2VhcmNoQ2xvc2UiKTsNCiAgICAgICAgZnVuY3Rpb24gb3Blbl9tZW51KCkgew0KICAgICAgICAgICAgJCgiYm9keSIpLmFwcGVuZCgiPGRpdiBjbGFzcz0nanMtb3ZlcmxheSc+PC9kaXY+Iik7DQogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCJib2R5IikuYWRkQ2xhc3MoImpzLW1lbnUtYWN0aXZlIik7DQogICAgICAgICAgICB9LCAxMDApOw0KICAgICAgICB9DQogICAgICAgIGZ1bmN0aW9uIGNsb3NlX21lbnUoKSB7DQogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCIuanMtb3ZlcmxheSIpLnJlbW92ZSgpOw0KICAgICAgICAgICAgfSwgMzAwKTsNCiAgICAgICAgICAgICQoImJvZHkiKS5yZW1vdmVDbGFzcygianMtbWVudS1hY3RpdmUiKTsNCiAgICAgICAgfQ0KICAgICAgICBjbGljay5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgdmFyIGZyYW1lYmFyYXNzZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJmcmFtZWJhcmFzc2V0LWxhenkiKTsNCiAgICAgICAgICAgIGlmIChmcmFtZWJhcmFzc2V0Lmxlbmd0aCAhPSAwKSB7DQogICAgICAgICAgICAgICAgdmFyIGltZ2ZyYW1lYmFyYXNzZXQgPSBmcmFtZWJhcmFzc2V0WzBdLnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLXNyY10iKTsNCiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGltZ2ZyYW1lYmFyYXNzZXQubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgICAgICAgaW1nZnJhbWViYXJhc3NldFtpXS5zZXRBdHRyaWJ1dGUoInNyYyIsIGltZ2ZyYW1lYmFyYXNzZXRbaV0uZ2V0QXR0cmlidXRlKCJkYXRhLXNyYyIpKTsNCiAgICAgICAgICAgICAgICAgICAgaW1nZnJhbWViYXJhc3NldFtpXS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtc3JjIikNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICBpZiAoJCgiYm9keSIpLmhhc0NsYXNzKCJqcy1tZW51LWFjdGl2ZSIpKSB7DQogICAgICAgICAgICAgICAgY2xvc2VfbWVudSgpOw0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICBvcGVuX21lbnUoKTsNCiAgICAgICAgICAgICAgICB2YXIgc2Nyb2xsID0gJCh3aW5kb3cpLnNjcm9sbFRvcCgpOw0KICAgICAgICAgICAgICAgIHZhciBoZWlnaHRfYmlsbGJvYXJkID0gJCgiI21lZ2FiaWxsYm9hcmQiKS5oZWlnaHQoKTsNCiAgICAgICAgICAgICAgICBpZiAoKCQoIiNtZWdhYmlsbGJvYXJkIikubGVuZ3RoKSAmJiAoc2Nyb2xsIDwgaGVpZ2h0X2JpbGxib2FyZCkpIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiaHRtbCwgYm9keSIpLmFuaW1hdGUoeyBzY3JvbGxUb3A6IGhlaWdodF9iaWxsYm9hcmQgfSk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgJChkb2N1bWVudCkuYmluZCgibW91c2V1cCB0b3VjaGVuZCIsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICAgICAgdmFyIHRoaXNfY2xpY2sgPSAkKCIuYm94LW92ZXJsYXksICNtZW51Q2xpY2siKTsNCiAgICAgICAgICAgICAgICBpZiAoJCgiYm9keSIpLmhhc0NsYXNzKCJqcy1tZW51LWFjdGl2ZSIpKSB7DQogICAgICAgICAgICAgICAgICAgIGlmICgNCiAgICAgICAgICAgICAgICAgICAgICAgICF0aGlzX2NsaWNrLmlzKGUudGFyZ2V0KSAmJi8vIGlmIHRoZSB0YXJnZXQgb2YgdGhlIGNsaWNrIGlzbid0IHRoZSBjb250YWluZXIuLi4NCiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXNfY2xpY2suaGFzKGUudGFyZ2V0KS5sZW5ndGggPT09IDANCiAgICAgICAgICAgICAgICAgICAgKSB7IC8vIC4uLiBub3IgYSBkZXNjZW5kYW50IG9mIHRoZSBjb250YWluZXINCiAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5qcy1vdmVybGF5IikucmVtb3ZlKCk7DQogICAgICAgICAgICAgICAgICAgICAgICB9LCAzMDApOw0KICAgICAgICAgICAgICAgICAgICAgICAgJCgiYm9keSIpLnJlbW92ZUNsYXNzKCJqcy1tZW51LWFjdGl2ZSIpOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQogICAgICAgICAgICAkKGRvY3VtZW50KS5vbigibW91c2V3aGVlbCIsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICAgICAgdmFyIHNjcm9sbCA9ICQod2luZG93KS5zY3JvbGxUb3AoKTsNCiAgICAgICAgICAgICAgICBpZiAoKCQoImJvZHkiKS5oYXNDbGFzcygianMtbWVudS1hY3RpdmUiKSkgJiYgKCQoIiNtZWdhYmlsbGJvYXJkIikubGVuZ3RoKSAmJiAoc2Nyb2xsIDwgaGVpZ2h0X2JpbGxib2FyZCkpIHsNCiAgICAgICAgICAgICAgICAgICAgY2xvc2VfbWVudSgpOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgJChkb2N1bWVudCkub24oInRvdWNobW92ZSIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKGRvY3VtZW50KS50cmlnZ2VyKCJtb3VzZXdoZWVsIik7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSk7DQogICAgICAgIC8vIE5FVyBTRUFSQ0gNCiAgICAgICAgZnVuY3Rpb24gb3Blbl9zZWFyY2goKSB7DQogICAgICAgICAgICAkKCJib2R5IikuYXBwZW5kKCI8ZGl2IGNsYXNzPSdqcy1vdmVybGF5Jz48L2Rpdj4iKTsNCiAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9faW5wdXQiKS5mb2N1cygpOw0KICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgJCgiYm9keSIpLmFkZENsYXNzKCJzZWFyY2gtYWN0aXZlIik7DQogICAgICAgICAgICB9LCAxMDApOw0KICAgICAgICB9DQogICAgICAgIGZ1bmN0aW9uIGNsb3NlX3NlYXJjaCgpIHsNCiAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICQoIi5qcy1vdmVybGF5IikucmVtb3ZlKCk7DQogICAgICAgICAgICB9LCAzMDApOw0KICAgICAgICAgICAgJCgiYm9keSIpLnJlbW92ZUNsYXNzKCJzZWFyY2gtYWN0aXZlIik7DQogICAgICAgIH0NCiAgICAgICAgc2VhcmNoLmNsaWNrKGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICB2YXIgc2VhcmNoYXNzZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJzZWFyY2hhc3NldC1sYXp5Iik7DQogICAgICAgICAgICBpZiAoc2VhcmNoYXNzZXQubGVuZ3RoICE9IDApIHsNCiAgICAgICAgICAgICAgICB2YXIgaW1nc2VhcmNoYXNzZXQgPSBzZWFyY2hhc3NldFswXS5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1zcmNdIik7DQogICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbWdzZWFyY2hhc3NldC5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICAgICAgICBpbWdzZWFyY2hhc3NldFtpXS5zZXRBdHRyaWJ1dGUoInNyYyIsIGltZ3NlYXJjaGFzc2V0W2ldLmdldEF0dHJpYnV0ZSgiZGF0YS1zcmMiKSk7DQogICAgICAgICAgICAgICAgICAgIGltZ3NlYXJjaGFzc2V0W2ldLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1zcmMiKQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIEZyYW1lYmFyU2VhcmNoKCkub25Mb2FkKCk7DQogICAgICAgICAgICBDb29raWVzU2VhcmNoKCkub25Mb2FkKCk7DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICBvcGVuX3NlYXJjaCgpOw0KICAgICAgICB9KTsNCiAgICAgICAgY2xvc2VTZWFyY2guY2xpY2soZnVuY3Rpb24gKGUpIHsNCiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTsNCiAgICAgICAgICAgIGNsb3NlX3NlYXJjaCgpOw0KICAgICAgICB9KTsNCiAgICAgICAgJCgiLmNsZWFyLWxpc3QiKS5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgJCh0aGlzKS5wYXJlbnQoImxpIikucmVtb3ZlKCk7DQogICAgICAgIH0pOw0KICAgICAgICB2YXIgdGV4dENvdW50ID0gJCgiI3NlYXJjaC10ZXh0Iik7DQogICAgICAgIHRleHRDb3VudC5vbigna2V5dXAgbW91c2V1cCcsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICB2YXIgY2hhcnNFbnRlcmVkID0gdGV4dENvdW50LnZhbCgpLmxlbmd0aDsNCiAgICAgICAgICAgIGlmIChjaGFyc0VudGVyZWQgPiAwKSB7DQogICAgICAgICAgICAgICAgJCgiI2NsZWFyLXNlYXJjaC10ZXh0IikucmVtb3ZlQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1jb250ZW50IikuYWRkQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1zdWdnZXN0IikucmVtb3ZlQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAkKCIjY2xlYXItc2VhcmNoLXRleHQiKS5hZGRDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LXN1Z2dlc3QiKS5hZGRDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LWNvbnRlbnQiKS5yZW1vdmVDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0pOw0KICAgICAgICAkKCIjY2xlYXItc2VhcmNoLXRleHQiKS5jbGljayhmdW5jdGlvbiAoZSkgew0KICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgdGV4dENvdW50LnZhbCgiIik7DQogICAgICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCJoaWRlLWVsZW1lbnQiKTsNCiAgICAgICAgICAgICQoIi5zZWFyY2gtb3ZlcmxheV9fYm9keS1zdWdnZXN0IikuYWRkQ2xhc3MoImhpZGUtZWxlbWVudCIpOw0KICAgICAgICAgICAgJCgiLnNlYXJjaC1vdmVybGF5X19ib2R5LWNvbnRlbnQiKS5yZW1vdmVDbGFzcygiaGlkZS1lbGVtZW50Iik7DQogICAgICAgIH0pOw0KICAgIDwvc2NyaXB0Pg0KDQogICAgPHN0eWxlPg0KICAgICAgICBAaW1wb3J0IHVybCgiaHR0cHM6Ly9hd3NjZG5zdGF0aWMuZGV0aWsubmV0LmlkL2xpdmUvX3JtYmFzc2V0cy9zY3JvbGxwYWdlL3Njcm9sbHBhZ2UuY3NzIik7DQogICAgPC9zdHlsZT4NCiAgICA8ZGl2IGNsYXNzPSJib3gtYWRzIHRleHQtY2VudGVyIHNjcm9sbHBhZ2UiIHN0eWxlPSJkaXNwbGF5OiBub25lOyBiYWNrZ3JvdW5kLWNvbG9yOiNGOEY4Rjg7aGVpZ2h0OiAxODBweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoNCjEwMCU7bWFyZ2luLXRvcDogMTVweDsiPg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KDQoNCg0KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlX19oZWFkZXIiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFnZV9fYnJlYWRjcnVtYiI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyMjIiBjbGFzcz0iaG9tZSI+S1VEQUpJVFU8L2E+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGR0ci1ldnQ9ImJyZWFkY3J1bWIiIGR0ci1zZWM9ImJyZWFkY3J1bWJrYW5hbCIgZHRyLWFjdD0iYnJlYWRjcnVtYiBrYW5hbCINCiAgICAgICAgICAgICAgICAgICAgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItdHRsPSJDeWJlcmxpZmUiPkN5YmVybGlmZTwvYT4NCg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KDQoNCg0KICAgICAgICA8YXJ0aWNsZSBjbGFzcz0iZGV0YWlsIj4NCg0KDQoNCg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX2hlYWRlciI+DQoNCiAgICAgICAgICAgICAgICA8aDEgY2xhc3M9ImRldGFpbF9fdGl0bGUiPkt1ZGFqaXR1OiBOby4gMSBTaXR1cyBQZXJtYWluYW4gT25saW5lIFRlcnBlcmNheWEgMjQgSmFtPC9oMT4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX2F1dGhvciI+S1VEQUpJVFU8L2Rpdj4NCg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPg0KDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibi1jb2x1bW5zLTIiPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2t1ZGFqaXR1LnNob3J0Lmd5L2t1ZGFqaXR1LWRhZnRhciIgcmVsPSJub2ZvbGxvdyBub3JlZmVycmVyIiBjbGFzcz0ibG9naW4iPkxPR0lOPC9hPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2t1ZGFqaXR1LnNob3J0Lmd5L2t1ZGFqaXR1LWRhZnRhciIgcmVsPSJub2ZvbGxvdyBub3JlZmVycmVyIiBjbGFzcz0icmVnaXN0ZXIiPkRBRlRBUjwvYT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KDQoNCg0KDQoNCg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRldGFpbF9fbWVkaWEiPg0KICAgICAgICAgICAgICAgICAgICA8ZmlndXJlIGR0ci1ldnQ9ImNvdmVyIGltYWdlIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImNvdmVyIGltYWdlIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iZGV0YWlsX19tZWRpYS1pbWFnZSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIiBhbHQ9Ikt1ZGFqaXR1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJLdWRhaml0dSIgY2xhc3M9InBfaW1nX3pvb21pbiBpbWctem9vbWluIiAvPg0KDQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uIGNsYXNzPSJkZXRhaWxfX21lZGlhLWNhcHRpb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvdG86IEtVREFKSVRVPC9maWdjYXB0aW9uPg0KICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8cD5LdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS48L3A+DQogICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJsaW5rc2lzaXAiPg0KICAgICAgICAgICAgICAgICAgICA8dGJvZHk+DQogICAgICAgICAgICAgICAgICAgICAgICA8dHI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsaWhhdGpnIj48c3Ryb25nPkJhY2EganVnYTogPC9zdHJvbmc+PGEgZGF0YS1sYWJlbD0iTGlzdCBCZXJpdGEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1hY3Rpb249IkJlcml0YSBQaWxpaGFuIiBkYXRhLWNhdGVnb3J5PSJEZXRpbCBBcnRpa2VsIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyI+VmlyYWwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbTwvYT48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4NCiAgICAgICAgICAgICAgICA8L3RhYmxlPg0KICAgICAgICAgICAgICAgIDxiciAvPjxiciAvPg0KICAgICAgICAgICAgICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvZW1iZWQvdmlldy1jb3VudGVyL2Nzcy92aWRlby1waXAuY3NzP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWV2cCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFldnBfX2hlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZXZwX19sb2dvIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJwaWN0dXJlIGluIHBpY3R1cmUiIGR0ci1zZWM9InBpY3R1cmUgaW4gcGljdHVyZSIgZHRyLWFjdD0ibG9nbyAyMGRldGlrIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmNsaWNrPSJfcHQodGhpcykiIGhyZWY9Imh0dHBzOi8vMjAuZGV0aWsuY29tLyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy9sb2dvL2xvZ29fMjBkZXRpa19uZXcucG5nP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPSIzNiIgaGVpZ2h0PSIxNiIgYWx0PSIyMEQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPHNjcmlwdD4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgkKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZWZhdWx0T2Zmc2V0SCA9IDEuNjc7IC8vIERlZmluZSB5b3VyIGRlZmF1bHQgdmFsdWUgaGVyZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZGVmYXVsdERldGFpbFRpdGxlT2Zmc2V0VG9wID0gOTY4OyAvLyBEZWZhdWx0IG9mZnNldCB0b3AgcG9zaXRpb24gaWYgLmRldGFpbF9fdGl0bGUgaXMgbm90IGZvdW5kDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZXRhaWxUaXRsZU9mZnNldFRvcCA9ICQoIi5kZXRhaWxfX3RpdGxlIikubGVuZ3RoDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICQoIi5kZXRhaWxfX3RpdGxlIikub2Zmc2V0KCkudG9wDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGRlZmF1bHREZXRhaWxUaXRsZU9mZnNldFRvcDsNCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgYWV2cEggPSAkKCIuZGV0YWlsX190aXRsZSIpLm91dGVySGVpZ2h0KCksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJIID0gJCgiLmhlYWRlciIpLm91dGVySGVpZ2h0KCksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXRIID0gYWV2cEggJiYgaGVhZGVySCA/IGFldnBIIC0gaGVhZGVySCA6IGRlZmF1bHRPZmZzZXRIOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHdpbmRvdykub24oInNjcm9sbCIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBzY3JvbGwgPSAkKHdpbmRvdykuc2Nyb2xsVG9wKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc2Nyb2xsID49IGRldGFpbFRpdGxlT2Zmc2V0VG9wICsgb2Zmc2V0SCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5waXAtdmlkX190cmlnZ2VyIikuYWRkQ2xhc3MoImZsb3ciKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNjcm9sbCA8PSBkZXRhaWxUaXRsZU9mZnNldFRvcCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5waXAtdmlkIikuYWRkQ2xhc3MoImhpZGUiKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLnBpcC12aWQiKS5yZW1vdmVDbGFzcygiaGlkZSIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJUyBJTiBWSUVXUE9SVCBERVRFQ1QgRUxFTUVOVA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkLmZuLmlzSW5WaWV3cG9ydCA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlbGVtZW50VG9wID0gJCh0aGlzKS5vZmZzZXQoKS50b3A7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZWxlbWVudEJvdHRvbSA9IGVsZW1lbnRUb3AgKyAkKHRoaXMpLm91dGVySGVpZ2h0KCk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2aWV3cG9ydFRvcCA9ICQod2luZG93KS5zY3JvbGxUb3AoKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2aWV3cG9ydEJvdHRvbSA9IHZpZXdwb3J0VG9wICsgJCh3aW5kb3cpLmhlaWdodCgpOw0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZWxlbWVudEJvdHRvbSA+IHZpZXdwb3J0VG9wICYmIGVsZW1lbnRUb3AgPCB2aWV3cG9ydEJvdHRvbTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZMT0FUIFZJREVPIFRyYW5zaXN0aW9uIEZPUiBCUkVBS0lORyBORVdTDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQuZm4uZmxvYXRlciA9IGZ1bmN0aW9uIChvcHRpb25zKSB7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkQ2xhc3MoImZsb3ctaW4iKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBibG9jayA9ICQodGhpcyk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIiN2aWRlby1waXBfX2Nsb3NlIikuY2xpY2soZnVuY3Rpb24gKGUpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvd091dCgpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrLnJlbW92ZUNsYXNzKCJmbG93LWluIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGZsb3dPdXQoKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLmZsb3ctaW4iKS5yZW1vdmVDbGFzcygiZmxvd2VkIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBmbG93SW4oKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLmZsb3ctaW4iKS5hZGRDbGFzcygiZmxvd2VkIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAkKHdpbmRvdykuc2Nyb2xsKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgiLnBpcC12aWRfX3RyaWdnZXIiKS5pc0luVmlld3BvcnQoKSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG93T3V0KCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG93SW4oKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEluaXRpYWxpemUgcGlwZXINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gcGlwX3ZpZGVvKCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLnBpcC12aWQiKS5mbG9hdGVyKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmFsc2UpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpcF92aWRlbygpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2NyaXB0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGJyIC8+DQogICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPihLVURBSklUVSk8L3N0cm9uZz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJkZXRhaWxfX3NoYXJlIG1nYi0xNiI+DQoNCiAgICAgICAgPGRpdiBjbGFzcz0ianMtcmVzZXQtcmVkaXJlY3QgYWN0aXZlIj48L2Rpdj4NCg0KICAgICAgICA8ZGl2IGNsYXNzPSJzdGlja3ktc2hhcmUiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGV0YWlsX19zaGFyZSBzdGlja3ktc2hhcmVfX3dyYXAiPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZsb2F0aW5nIGtvbWVudGFyIiBkdHItc2VjPSJ0b21ib2wga29tZW50YXIiIGR0ci1hY3Q9InRvbWJvbCBrb21lbnRhciIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJrb21lbnRhciIgcmVsPSJub2ZvbGxvdyIgaHJlZj0iI2NvbW0xIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gY2xpY2t0b19jb21tZW50IHNoLWtvbWVudGFyIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24gaWNvbi0tbWQgaWNvbi1jb21tZW50IGNvbG9yLWJsYWNrIj48L2k+DQogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50LWNvdW50Ij4wPC9zcGFuPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmbG9hdGluZyBzaGFyZSIgZHRyLXNlYz0ic2hhcmUgc29jbWVkIiBkdHItYWN0PSJzaGFyZSBmYWNlYm9vayIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJmYWNlYm9vayIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJmYiBpY29uLWl0ZW0gaWNvbi1pdGVtX19mYiINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT1mYWNlYm9vayZ1dG1fY2FtcGFpZ249ZGV0aWtjb21zb2NtZWQmdXRtX21lZGl1bT1idG4mdXRtX2NvbnRlbnQ9aW5ldCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS14cyBpY29uLWZhY2Vib29rIj48L2k+DQogICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZsb2F0aW5nIHNoYXJlIiBkdHItc2VjPSJzaGFyZSBzb2NtZWQiIGR0ci1hY3Q9InNoYXJlIHR3aXR0ZXIiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0idHdpdHRlciIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJ0dyBpY29uLWl0ZW0gaWNvbi1pdGVtX190dyINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT10d2l0dGVyJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24tdHdpdHRlciI+PC9pPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmbG9hdGluZyBzaGFyZSIgZHRyLXNlYz0ic2hhcmUgc29jbWVkIiBkdHItYWN0PSJzaGFyZSB3aGF0c2FwcCIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJ3aGF0c2FwcCIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJ3aGF0c2FwIGljb24taXRlbSBpY29uLWl0ZW1fX3dhIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYT91dG1fc291cmNlPXdoYXRzYXBwJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24td2hhdHNhcHAiPjwvaT4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZmxvYXRpbmcgc2hhcmUiIGR0ci1zZWM9InNoYXJlIHNvY21lZCIgZHRyLWFjdD0ic2hhcmUgdGVsZWdyYW0iIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0idGVsZWdyYW0iIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0idGVsZSBpY29uLWl0ZW0gaWNvbi1pdGVtX190ZWxlIHNoLXRlbGVncmFtIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLXVybD0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYT91dG1fc291cmNlPXRlbGVncmFtJnV0bV9jYW1wYWlnbj1kZXRpa2NvbXNvY21lZCZ1dG1fbWVkaXVtPWJ0biZ1dG1fY29udGVudD1pbmV0Ig0KICAgICAgICAgICAgICAgICAgICBkYXRhLXRpdGxlPSJLdWRhaml0dTogTm8uIDEgU2l0dXMgUGVybWFpbmFuIE9ubGluZSBUZXJwZXJjYXlhIDI0IEphbSINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT0iaHR0cHM6Ly9pay5pbWFnZWtpdC5pby9mM2J4c3Y5MncvS1VEQS1KSVRVLTQuanBnP3VwZGF0ZWRBdD0xNzQ0ODc4MjM1ODgwIg0KICAgICAgICAgICAgICAgICAgICBkYXRhLWRlc2M9Ikt1ZGFqaXR1LCBzaXR1cyBwZXJtYWluYW4gb25saW5lIHRlcnBlcmNheWEgMjQgamFtLiBOaWttYXRpIGJlcmJhZ2FpIHBlcm1haW5hbiBtZW5hcmlrIGRhbiBsYXlhbmFuIHRlcmJhaWsgdW50dWsgcGVuZ2FsYW1hbiBzbG90IHlhbmcgdGFrIHRlcmx1cGFrYW4hLiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tLXhzIGljb24tdGVsZWdyYW0iPjwvaT4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZmxvYXRpbmcgc2hhcmUiIGR0ci1zZWM9IiIgZHRyLWFjdD0iY29weSBsaW5rIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci10dGw9ImxpbmsiIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9fbGluayBjb3B5X3VybCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vaW5ldC5kZXRpay5jb20vY3liZXJsaWZlL2QtNzQ3MDEyMy9qYWRpLXNlbnNhc2ktaW50ZXJuZXQtcGVuZW1iYWstdHVya2ktYWdhay1sYWluLWFuZ2thdC1iaWNhcmE/dXRtX3NvdXJjZT1jb3B5X3VybCZ1dG1fY2FtcGFpZ249ZGV0aWtjb21zb2NtZWQmdXRtX21lZGl1bT1idG4mdXRtX2NvbnRlbnQ9aW5ldCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS10aXRsZT0iS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iDQogICAgICAgICAgICAgICAgICAgIGRhdGEtaW1hZ2U9Imh0dHBzOi8vaWsuaW1hZ2VraXQuaW8vZjNieHN2OTJ3L0tVREEtSklUVS00LmpwZz91cGRhdGVkQXQ9MTc0NDg3ODIzNTg4MCINCiAgICAgICAgICAgICAgICAgICAgZGF0YS1kZXNjPSJLdWRhaml0dSwgc2l0dXMgcGVybWFpbmFuIG9ubGluZSB0ZXJwZXJjYXlhIDI0IGphbS4gTmlrbWF0aSBiZXJiYWdhaSBwZXJtYWluYW4gbWVuYXJpayBkYW4gbGF5YW5hbiB0ZXJiYWlrIHVudHVrIHBlbmdhbGFtYW4gc2xvdCB5YW5nIHRhayB0ZXJsdXBha2FuIS4iPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLS14cyBpY29uLWxpbmsiPjwvaT4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5vdGlmIj5UYXV0YW4gdGVsYWggZGlzYWxpbjwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgPHNjcmlwdD4NCiAgICAgICAgICAgIGdldFNjcmlwdCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9zaGFyZWJveC5pdHAuanM/dj0yMDI0MDgwMjE1NDQzIiwgZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICAgICBzaGFyZUJveC5ydW4oJCgnLnN0aWNreS1zaGFyZScpKTsNCiAgICAgICAgICAgICAgICAgICAgLy8gc2hhcmVCb3guY291bnRDb21tZW50KCQoJy5zaC1rb21lbnRhcicpKTsNCiAgICAgICAgICAgICAgICB9LCA1MDApOw0KICAgICAgICAgICAgfSkNCg0KICAgICAgICAgICAgZnVuY3Rpb24gc2V0SW50ZXJzZWN0T2JlcnNlcnZlcihlbGVtLCBvYm9wdGlvbnMpIHsNCiAgICAgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoDQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIChlbnRyaWVzKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAvLyBubyBpbnRlcnNlY3Rpb24gd2l0aCBzY3JlZW4NCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlbnRyaWVzWzBdLmludGVyc2VjdGlvblJhdGlvID09PSAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5xdWVyeVNlbGVjdG9yKCIuc3RpY2t5LXNoYXJlIikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNsYXNzTGlzdC5hZGQoInN0aWNreS1zaGFyZS0tc3RpY2tlZCIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgLy8gZnVsbHkgaW50ZXJzZWN0cyB3aXRoIHNjcmVlbg0KICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoZW50cmllc1swXS5pbnRlcnNlY3Rpb25SYXRpbyA9PT0gMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucXVlcnlTZWxlY3RvcigiLnN0aWNreS1zaGFyZSIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jbGFzc0xpc3QucmVtb3ZlKCJzdGlja3ktc2hhcmUtLXN0aWNrZWQiKTsNCiAgICAgICAgICAgICAgICAgICAgfSwgb2JvcHRpb25zDQogICAgICAgICAgICAgICAgKTsNCiAgICAgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGVsZW0pOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgY29uc3QgaGVhZGVyQ2xhc3MgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuaGVhZGVyJyk7DQoNCiAgICAgICAgICAgIGxldCBvYm9wdGlvbnMgPSB7DQogICAgICAgICAgICAgICAgdGhyZXNob2xkOiBbMCwgMV0sDQogICAgICAgICAgICAgICAgcm9vdE1hcmdpbjogIjQ3NXB4Ig0KICAgICAgICAgICAgfTsNCg0KICAgICAgICAgICAgaWYgKGhlYWRlckNsYXNzLmNsYXNzTGlzdC5jb250YWlucygnaGVhZGVyLS0yMGQnKSkgew0KICAgICAgICAgICAgICAgIG9ib3B0aW9ucyA9IHsNCiAgICAgICAgICAgICAgICAgICAgdGhyZXNob2xkOiBbMCwgMV0sDQogICAgICAgICAgICAgICAgICAgIHJvb3RNYXJnaW46ICI0NzBweCINCiAgICAgICAgICAgICAgICB9Ow0KICAgICAgICAgICAgICAgIHNldEludGVyc2VjdE9iZXJzZXJ2ZXIoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmhlYWRlci10b3AtMjBkIiksIG9ib3B0aW9ucyk7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIHNldEludGVyc2VjdE9iZXJzZXJ2ZXIoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmhlYWRlci10b3AiKSwgb2JvcHRpb25zKTsNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgLy8gVVAvRE9XTg0KICAgICAgICAgICAgdmFyIGlTY3JvbGxQb3MgPSAwOw0KICAgICAgICAgICAgdmFyICR3aW5kb3cgPSAkKHdpbmRvdyk7DQogICAgICAgICAgICAkd2luZG93LnNjcm9sbChmdW5jdGlvbiAoKSB7DQoNCiAgICAgICAgICAgICAgICB2YXIgaUN1clNjcm9sbFBvcyA9ICQodGhpcykuc2Nyb2xsVG9wKCk7DQogICAgICAgICAgICAgICAgdmFyIGZ0SGVpZ2h0ID0gJCgiZm9vdGVyLmZvb3RlciIpLmhlaWdodCgpOw0KICAgICAgICAgICAgICAgIHZhciBkSGVpZ2h0ID0gJCgiaHRtbCIpLm91dGVySGVpZ2h0KCkgLSBmdEhlaWdodDsNCiAgICAgICAgICAgICAgICB2YXIgb2Zmc2V0ID0gaUN1clNjcm9sbFBvcyArICR3aW5kb3cuaW5uZXJIZWlnaHQoKTsNCg0KICAgICAgICAgICAgICAgIGlmIChvZmZzZXQgPj0gZEhlaWdodCkgew0KICAgICAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnQXQgdGhlIGJvdHRvbScpOw0KICAgICAgICAgICAgICAgICAgICAkKCIuc3RpY2t5LXNoYXJlLS1zdGlja2VkIikuY3NzKCJvcGFjaXR5IiwgMCk7DQogICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiLnN0aWNreS1zaGFyZS0tc3RpY2tlZCIpLmNzcygib3BhY2l0eSIsICIiKTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgLy8gc2hhcmUgJiBjb21tZW50IHNjcmlwdA0KICAgICAgICAgICAgJCgiLmNvcHlfdXJsIikuY2xpY2soZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgICQodGhpcykuY2hpbGRyZW4oIi5ub3RpZiIpLmFkZENsYXNzKCJ1cmxfY29waWVkIik7DQogICAgICAgICAgICAgICAgdmFyIGR1bW15ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKSwNCiAgICAgICAgICAgICAgICAgICAgdGV4dCA9ICQodGhpcykuYXR0cignZGF0YS11cmwnKTsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGR1bW15KTsNCiAgICAgICAgICAgICAgICBkdW1teS52YWx1ZSA9IHRleHQ7DQogICAgICAgICAgICAgICAgZHVtbXkuc2VsZWN0KCk7DQogICAgICAgICAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2NvcHknKTsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGR1bW15KTsNCiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgJCgiLm5vdGlmIikucmVtb3ZlQ2xhc3MoInVybF9jb3BpZWQiKTsNCiAgICAgICAgICAgICAgICB9LCAxNTAwKTsNCiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgIHZhciBhcnRpY2xlID0gew0KICAgICAgICAgICAgICAgIGlkbmV3czogNzQ3MDEyMywNCiAgICAgICAgICAgICAgICBpZGthbmFsOiAzOTgNCiAgICAgICAgICAgIH0NCiAgICAgICAgPC9zY3JpcHQ+DQoNCg0KICAgIDwvZGl2Pg0KDQoNCg0KICAgIDwvYXJ0aWNsZT4NCg0KDQoNCiAgICA8IS0tIFM6cGFydG5lcl9ib3ggLS0+IDwhLS0gRTpwYXJ0bmVyX2JveCAtLT4NCg0KICAgIDxkaXYgY2xhc3M9ImJveCBib3gtLWtvbWVudGFyIGNvbW1lbnQiPg0KICAgICAgICA8IS0tUzpLT01FTlRBUi0tPg0KDQogICAgICAgIDxkaXYgaWQ9InRoZWNvbW1lbnQyIiBjbGFzcz0iZGV0YWlsX2FyZWEiPg0KICAgICAgICAgICAgPHN0eWxlPg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWZvbnQtYm9sZCB7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1mb3JtIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0biB7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EtRkYsIEFyaWFsLCBUYWhvbWEsIHNhbnMtc2VyaWY7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQtRkYsIEFyaWFsLCBUYWhvbWEsIHNhbnMtc2VyaWY7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1udWxsIHsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4Ow0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWNvbG9yLWJsYWNrIHsNCiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuLA0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0bjpob3ZlciB7DQogICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICN0aGVjb21tZW50MiB7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogSGVsdmV0aWNhLUZGLCBBcmlhbCwgVGFob21hLCBzYW5zLXNlcmlmOw0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7DQogICAgICAgICAgICAgICAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOw0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsNCiAgICAgICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tbWd0LTEyIHsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweCAhaW1wb3J0YW50Ow0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLW1nYi0xMiB7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHggIWltcG9ydGFudDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1mb250LXNtIHsNCiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0ta3VsZXItMSk7DQogICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4Ow0KICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDsNCiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94Ow0KICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsNCiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsNCiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7DQogICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50Ow0KICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dCAwczsNCiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0IDBzOw0KICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1ib2R5LS1kZXRpa25ld3MgLmtvbWVudGFyLWlmcmFtZS1taW4tYnRuIHsNCiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxNDA5YTsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1idG46aG92ZXIgew0KICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7DQogICAgICAgICAgICAgICAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT04MCk7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1ib2R5IHsNCiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIC5rb21lbnRhci1pZnJhbWUtbWluLWNvbW1lbnQtbGVhZCB7DQogICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTZweCAxOHB4IDE4cHg7DQogICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7DQogICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7DQogICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHsNCiAgICAgICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1sZWFkIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHg7DQogICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4Ow0KICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgLmtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1mb3JtIC5rb21lbnRhci1pZnJhbWUtbWluLWJ0biB7DQogICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCA4cHg7DQogICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWVudHJ5IHsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzZweDsNCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzZweDsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAua29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LW51bGwgew0KICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjOTk5Ow0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIDwvc3R5bGU+DQoNCiAgICAgICAgICAgIDxkaXYNCiAgICAgICAgICAgICAgICBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWJvZHkga29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWJvZHktLWRldGlrbmV3cyBjdXN0b20tbWluLXNuZWFrLXBlZWsiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImtvbWVudGFyLWlmcmFtZS1taW4tY29tbWVudC1sZWFkIj4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtvbWVudGFyLWlmcmFtZS1taW4tZm9udC1ib2xkIj5Lb21lbnRhcjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgPGZvcm0gYWN0aW9uPSIjIiBpZD0iZm9ybS1jb21tZW50LXYyIiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWZvcm0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYS9rb21lbnRhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1idG4ga29tZW50YXItaWZyYW1lLW1pbi1tZ3QtMTIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigzMywgNjQsIDE1NCk7Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBLaXJpbSBLb21lbnRhcg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LWVudHJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ia29tZW50YXItaWZyYW1lLW1pbi1jb21tZW50LW51bGwiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJrb21lbnRhci1pZnJhbWUtbWluLWZvbnQtYm9sZCBrb21lbnRhci1pZnJhbWUtbWluLWNvbG9yLWJsYWNrIGtvbWVudGFyLWlmcmFtZS1taW4tZm9udC1zbSBrb21lbnRhci1pZnJhbWUtbWluLW1nYi0xMiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQmVsdW0gYWRhIGtvbWVudGFyLjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY3VzdG9tLW1pbi1zbmVhay1wZWVrLWVtcHR5LXdvcmRpbmciPkphZGlsYWggeWFuZyBwZXJ0YW1hIGJlcmtvbWVudGFyIGRpIHNpbmk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgPCEtLSBTOiBORVcgUFJPIEtPTlRSQSAtLT4NCiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgICAgICAgICAgdmFyIGluaXRlZENvbW1lbnQgPSBmYWxzZTsNCiAgICAgICAgICAgICQod2luZG93KS5vbignc2Nyb2xsJywgZnVuY3Rpb24gKCkgew0KDQogICAgICAgICAgICAgICAgaWYgKGluaXRlZENvbW1lbnQpIHsgcmV0dXJuOyB9DQogICAgICAgICAgICAgICAgaWYgKCQod2luZG93KS5zY3JvbGxUb3AoKSA8PSAzMDApIHsgcmV0dXJuOyB9DQogICAgICAgICAgICAgICAgaWYgKHBhcnNlSW50KCQoJy5jb21tZW50LWNvdW50OmZpcnN0JykudGV4dCgpKSA8PSAwKSB7IHJldHVybjsgfQ0KDQogICAgICAgICAgICAgICAgaW5pdGVkQ29tbWVudCA9IHRydWU7DQogICAgICAgICAgICAgICAgZ2V0U2NyaXB0KCJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvbGlicy9jb21tZW50L3YyL2pzL3pvaWQubWluLmpzPzIwMjQwODAyMTUiLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgICAgIGdldFNjcmlwdCgiaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2xpYnMvY29tbWVudC92Mi9qcy9icmlkZ2UuanM/MjAyNDA4MDIxNSIsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJyN0aGVjb21tZW50MicpLmh0bWwoJycpOw0KICAgICAgICAgICAgICAgICAgICAgICAgQ29tbWVudENvbXBvbmVudCh7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAiaHR0cHM6Ly9pbmV0LmRldGlrLmNvbS9jeWJlcmxpZmUvZC03NDcwMTIzL2phZGktc2Vuc2FzaS1pbnRlcm5ldC1wZW5lbWJhay10dXJraS1hZ2FrLWxhaW4tYW5na2F0LWJpY2FyYSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWRBcnRpa2VsOiA3NDcwMTIzLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGthbmFsOiAzOTgsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0ZTogIjAyLTA4LTIwMjQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAiS3VkYWppdHU6IE5vLiAxIFNpdHVzIFBlcm1haW5hbiBPbmxpbmUgVGVycGVyY2F5YSAyNCBKYW0iLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudElkOiA5OCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVmaXg6ICJkdGsiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2tvbnRyYTogMCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZW1idWthRGlza3VzaTogIiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgc25lYWtQZWVrOiAxLA0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAga2FuYWxBZHM6ICJkZXRpa19pbmV0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnZBZHM6ICJtb2JpbGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTG9naW4sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25SZXNpemUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25TY3JvbGwsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb25BbGVydA0KICAgICAgICAgICAgICAgICAgICAgICAgfSkucmVuZGVyKCcjdGhlY29tbWVudDInKTsNCg0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICB9KQ0KICAgICAgICA8L3NjcmlwdD4NCiAgICAgICAgPCEtLSBFOiBORVcgUFJPIEtPTlRSQSAtLT4NCg0KICAgICAgICA8IS0tRTpLT01FTlRBUi0tPg0KICAgIDwvZGl2Pg0KICAgIDxzdHlsZT4NCiAgICAgICAgI2J0X3RrdCBhcnRpY2xlOm50aC1jaGlsZChuKzcpIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgIH0NCiAgICA8L3N0eWxlPg0KDQogICAgPGRpdiBjbGFzcz0iYm94IGNiLWJlcml0YS10ZXJrYWl0Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0iYm94X19oZWFkZXIiPg0KICAgICAgICAgICAgPGgyIGNsYXNzPSJib3hfX3RpdGxlIj5CZXJpdGEgVGVya2FpdDwvaDI+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGlkPSJidF90a3QiIGNsYXNzPSJsaXN0LWNvbnRlbnQgbGlzdC1jb250ZW50LS1ib3JkZXJlZCBoaWRlLW9mLWxpc3QtNiI+DQogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibGlzdC1jb250ZW50X19pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSBtZWRpYS0tbGVmdCBtZWRpYS0taW1hZ2UtcmFkaXVzIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZWRpYV9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImJlcml0YSB0ZXJrYWl0IiBkdHItc2VjPSIiIGR0ci1hY3Q9ImFydGlrZWwiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkPSI3NDY5NzA3IiBkdHItdHRsPSJFbG9uIE11c2sgU2luZGlyIFBldGluanUgT2xpbXBpYWRlIFdhbml0YSB5YW5nIERpZHVnYSBQcmlhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgY2xhc3M9Im1lZGlhX19saW5rIj5FbG9uIE11c2sgU2luZGlyIFBldGluanUgT2xpbXBpYWRlIFdhbml0YSB5YW5nIERpZHVnYQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmlhPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2FydGljbGU+DQogICAgICAgICAgICA8IS0tIFM6bmF0aXZlYmVyaXRhdGVya2FpdCAtLT48aW5zIGRhdGEtbGFiZWxuYW1lPSJuYXRpdmViZXJpdGF0ZXJrYWl0IiBkYXRhLXJldml2ZS16b25laWQ9IjM4MTYiDQogICAgICAgICAgICAgICAgZGF0YS1yZXZpdmUtaWQ9IjBjY2VlY2I5Y2FlOWY1MWEzMTEyM2M1NDE5MTBkNTliIj48L2lucz48IS0tIEU6bmF0aXZlYmVyaXRhdGVya2FpdCAtLT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSIyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0Njk1OTYiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IlBldGVtYmFrIFR1cmtpIGt1ZGFqaXR1IFBvc3RpbmcgUGVyYWsgT2xpbXBpYWRlIEJhbmppciBLb21lbnRhciBLb2NhayINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJtZWRpYV9fbGluayI+UGV0ZW1iYWsgVHVya2kga3VkYWppdHUgUG9zdGluZyBQZXJhayBPbGltcGlhZGUgQmFuamlyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvbWVudGFyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvY2FrPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2FydGljbGU+DQogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibGlzdC1jb250ZW50X19pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSBtZWRpYS0tbGVmdCBtZWRpYS0taW1hZ2UtcmFkaXVzIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWFfX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZWRpYV9fdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImJlcml0YSB0ZXJrYWl0IiBkdHItc2VjPSIiIGR0ci1hY3Q9ImFydGlrZWwiIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0iMyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLWlkPSI3NDY5NTQ2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItdHRsPSJWaXJhbCBTZWVrb3IgTGViYWggR2FuZ2d1IEF0bGV0IFBhbmFoIEtvcnNlbCBkaSBTYWF0IE1lbmVudHVrYW4iIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0ibWVkaWFfX2xpbmsiPlZpcmFsIFNlZWtvciBMZWJhaCBHYW5nZ3UgQXRsZXQgUGFuYWggS29yc2VsIGRpIFNhYXQgTWVuZW50dWthbjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9hcnRpY2xlPg0KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Imxpc3QtY29udGVudF9faXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEgbWVkaWEtLWxlZnQgbWVkaWEtLWltYWdlLXJhZGl1cyI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhX190ZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibWVkaWFfX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJiZXJpdGEgdGVya2FpdCIgZHRyLXNlYz0iIiBkdHItYWN0PSJhcnRpa2VsIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZD0iNzQ3MDIwMiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHRyLXR0bD0iQXRsZXQgQW5nZ2FyIE5hZGEgSGFmZXogQmVydGFuZGluZyBzYWF0IEhhbWlsIDcgQnVsYW4gZGkgT2xpbXBpYWRlIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Im1lZGlhX19saW5rIj5BdGxldCBBbmdnYXIgTmFkYSBIYWZleiBCZXJ0YW5kaW5nIHNhYXQgSGFtaWwgNyBCdWxhbiBkaQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPbGltcGlhZGU8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvYXJ0aWNsZT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI1Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0NzAxMDgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IkFobGkgU29yb3RpICYjMDM5O1BvbHVzaSYjMDM5OyBUaW5qYSBkaSBTdW5nYWkgU2VpbmUgTG9rYXNpIFRyaWF0bG9uIGt1ZGFqaXR1IGxvZ2luIDIwMjQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0ibWVkaWFfX2xpbmsiPkFobGkgU29yb3RpICdQb2x1c2knIFRpbmphIGRpIFN1bmdhaSBTZWluZSBMb2thc2kgVHJpYXRsb24NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT2xpbXBpYWRlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhcmlzIDIwMjQ8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvYXJ0aWNsZT4NCiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJsaXN0LWNvbnRlbnRfX2l0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIG1lZGlhLS1sZWZ0IG1lZGlhLS1pbWFnZS1yYWRpdXMiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYV9fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lZGlhX190aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iYmVyaXRhIHRlcmthaXQiIGR0ci1zZWM9IiIgZHRyLWFjdD0iYXJ0aWtlbCIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSI2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdHItaWQ9Ijc0Njk1NTUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci10dGw9IlBvdHJldCBBdGxldCBBbmdnYXIgTWVzaXIgeWFuZyBWaXJhbCB1c2FpIFVtdW1rYW4gSGFtaWwgZGkga3VkYWppdHUgbG9naW4gMjAyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIGNsYXNzPSJtZWRpYV9fbGluayI+UG90cmV0IEF0bGV0IEFuZ2dhciBNZXNpciB5YW5nIFZpcmFsIHVzYWkgVW11bWthbiBIYW1pbCBkaQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPbGltcGlhZGUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFyaXMgMjAyNDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9hcnRpY2xlPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDxkaXYgZC13aWRnZXQ9Im5ld3NmZWVkX3JlY29tbWVuZGF0aW9uIiBkLXJlY29tbWVuZGF0aW9uPjwvZGl2Pg0KDQoNCiAgICA8ZGl2IGNsYXNzPSJqcy1zaG93LXJlZGlyZWN0LWFydGljbGUiPjwvZGl2Pg0KDQogICAgPGRpdiBkLXdpZGdldD0ib3RoZXJfYXJ0aWNsZXMiIGQtcGFyYW1zPSIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJkd2lkZ2V0X21vYmlsZSBwaC12ZXJ0aWNhbCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIHBoLXRpdGxlIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIgYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW4tbGVmdCBwaC1jb2wtNCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXBpY3R1cmUiPjwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImluLXJpZ2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcm93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00IGJpZyBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbi1sZWZ0IHBoLWNvbC00Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcGljdHVyZSI+PC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW4tcmlnaHQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTEyIGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQgYmlnIGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImluLWxlZnQgcGgtY29sLTQiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1waWN0dXJlIj48L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbi1yaWdodCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIgYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCBiaWcgZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj48aW1nIHN0eWxlPSJkaXNwbGF5Om5vbmUiIC8+DQogICAgPC9kaXY+DQoNCiAgICA8ZGl2IGQtd2lkZ2V0PSJkZXRhaWxfbW9zdHBvcHVsYXIiIGQtcGFyYW1zPSIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJkd2lkZ2V0X21vYmlsZSBwaC1saXN0Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0gcGgtdGl0bGUiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtMTIiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1yb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTggYmlnIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC00IGVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWl0ZW0iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC0xMiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLXJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtOCBiaWciPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTQgZW1wdHkiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtY29sLTEyIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGgtcm93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoLWNvbC04IGJpZyI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaC1jb2wtNCBlbXB0eSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2PiA8aW1nIHN0eWxlPSJkaXNwbGF5Om5vbmUiIC8+DQogICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPCEtLSBTOkZvb3RlciAtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgaWYgKGhlbHBlci5pbnZpZXcoJCgiZm9vdGVyIikpKSB7DQogICAgICAgICAgICAgICAgICAgIHZhciBmcmFtZWZvb3RlciA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoImZvb3Rlci1sYXp5Iik7DQogICAgICAgICAgICAgICAgICAgIGlmIChmcmFtZWZvb3Rlci5sZW5ndGggIT0gMCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGltZ2ZyYW1lZm9vdGVyID0gZnJhbWVmb290ZXJbMF0ucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtc3JjXSIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbWdmcmFtZWZvb3Rlci5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZ2ZyYW1lZm9vdGVyW2ldLnNldEF0dHJpYnV0ZSgic3JjIiwgaW1nZnJhbWVmb290ZXJbaV0uZ2V0QXR0cmlidXRlKCJkYXRhLXNyYyIpKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWdmcmFtZWZvb3RlcltpXS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtc3JjIikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KICAgICAgICB9KTsNCiAgICA8L3NjcmlwdD4NCiAgICA8Zm9vdGVyIGNsYXNzPSJmb290ZXIgZm9vdGVyLWxhenkiIGlkPSJmb290ZXIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJfX2JvcmRlciI+PC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9ImxvZ29kZXRpayIgZHRyLWFjdD0ibG9nbyBkZXRpayIgb25jbGljaz0iX3B0KHRoaXMpIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICBjbGFzcz0iZm9vdGVyX19sb2dvIj4NCiAgICAgICAgICAgICAgICA8aW1nIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy93ZWJwL20vbG9nb19kZXRpa2NvbS53ZWJwP3Y9MjAyNDA4MDIxNTQ0MyINCiAgICAgICAgICAgICAgICAgICAgYWx0PSJpbWctYWx0IiB0aXRsZT0iaW1nLXRpdGxlIiB3aWR0aD0iMTYwIiBoZWlnaHQ9IjMwIj4NCiAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlci10aXRsZSBmb290ZXItdGl0bGVfX3BhcnRvZiI+cGFydCBvZiA8aW1nDQogICAgICAgICAgICAgICAgICAgIGRhdGEtc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2ltYWdlcy93ZWJwL2xvZ29fZGV0aWtuZXR3b3JrLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICBhbHQ9ImltZy1hbHQiIHRpdGxlPSJpbWctdGl0bGUiIHdpZHRoPSI4MCIgaGVpZ2h0PSIyOSI+PC9kaXY+DQogICAgICAgICAgICA8bmF2Pg0KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdi0tY2VudGVyIj4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJyZWRha3NpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWRha3NpIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InBlZG9tYW4gbWVkaWEgc2liZXIiIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiByZWw9Im5vZm9sbG93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQZWRvbWFuIE1lZGlhIFNpYmVyIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJrYXJpciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgS2FyaXIgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSBsYXlhbmFuIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImtvdGFrIHBvcyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgS290YWsgUG9zIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJpbmZvIGlrbGFuIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiByZWw9Im5vZm9sbG93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmZvIElrbGFuIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXZfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9Im1lbnUgbGF5YW5hbiIgb25jbGljaz0iX3B0KHRoaXMpIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InByaXZhY3kgcG9saWN5IiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgcmVsPSJub2ZvbGxvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpdmFjeSBQb2xpY3kgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdl9faXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibWVudSBsYXlhbmFuIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9ImRpc2NsYWltZXIiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iIHJlbD0ibm9mb2xsb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpc2NsYWltZXIgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L25hdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9fc29jaWFsIj4NCiAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ic29jbWVkIGRldGlrY29tIiBvbmNsaWNrPSJfcHQodGhpcykiIGR0ci1pZHg9IndoYXRzYXBwIiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyINCiAgICAgICAgICAgICAgICAgICAgY2xhc3M9Imljb24taXRlbSBpY29uLWl0ZW1fX3dhIj4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24gaWNvbi13aGF0c2FwcCI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJmYWNlYm9vayIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX19mYiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tZmFjZWJvb2siPjwvaT4gPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZvb3RlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJzb2NtZWQgZGV0aWtjb20iIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0idHdpdHRlciIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX190dyI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tdHdpdHRlciI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJpbnN0YWdyYW0iDQogICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIiBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9faWciPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLWluc3RhZ3JhbSI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJsaW5rZWRpbiIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX19pbiI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24tbGlua2VkaW4iPjwvaT4gPC9hPg0KICAgICAgICAgICAgICAgIDxhIGR0ci1ldnQ9ImZvb3RlciIgZHRyLXNlYz0iIiBkdHItYWN0PSJzb2NtZWQgZGV0aWtjb20iIG9uY2xpY2s9Il9wdCh0aGlzKSIgZHRyLWlkeD0ieW91dHViZSIgaHJlZj0iaHR0cDovL2hpbmRpa2VzYXRoLmNvbS8iDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJpY29uLWl0ZW0gaWNvbi1pdGVtX195dCI+DQogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uIGljb24teW91dHViZSI+PC9pPiA8L2E+DQogICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9InNvY21lZCBkZXRpa2NvbSIgb25jbGljaz0iX3B0KHRoaXMpIiBkdHItaWR4PSJ0aWt0b2siIGhyZWY9Imh0dHA6Ly9oaW5kaWtlc2F0aC5jb20vIg0KICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaWNvbi1pdGVtIGljb24taXRlbV9fdGsiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbiBpY29uLXRpa3RvayI+PC9pPiA8L2E+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPHNjcmlwdD4NCiAgICAgICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgICAgICB2YXIgbXlTY3JvbGxQb3MgPSAkKCcubmF2YmFyLWZpcnN0IHVsIGxpLm5hdl9faXRlbS0tYWN0aXZlJykucG9zaXRpb24oKS5sZWZ0IC0gJCgnLm5hdmJhci1maXJzdCB1bCBsaS5uYXZfX2l0ZW0tLWFjdGl2ZScpLndpZHRoKCk7DQoNCiAgICAgICAgICAgICAgICAgICAgaWYgKCQoJy5zY3JvbGxfX3dyYXAgbGk6bnRoLWNoaWxkKDIpJykuaGFzQ2xhc3MoJ25hdl9faXRlbS0tYWN0aXZlJykpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJy5uYXZiYXItZmlyc3QgdWwnKS5hbmltYXRlKHsgc2Nyb2xsTGVmdDogMCB9KTsNCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJy5uYXZiYXItZmlyc3QgdWwnKS5hbmltYXRlKHsgc2Nyb2xsTGVmdDogbXlTY3JvbGxQb3MgfSk7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdbYWN0aXZlU2Nyb2xsTGV2ZWwgbm90IEZvdW5kXScpDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgPC9zY3JpcHQ+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJfX2dldC1hcHAiPg0KICAgICAgICAgICAgICAgIERvd25sb2FkIGFwbGlrYXNpIGRldGlrY29tDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyX19hcHAtc3RvcmUiPg0KICAgICAgICAgICAgICAgICAgICA8YSBkdHItZXZ0PSJmb290ZXIiIGR0ci1zZWM9IiIgZHRyLWFjdD0ibGluayBidWlsZGluZyBmb290ZXIiIG9uY2xpY2s9Il9wdCh0aGlzKSINCiAgICAgICAgICAgICAgICAgICAgICAgIGR0ci1pZHg9InBsYXkgc3RvcmUiIGhyZWY9Imh0dHBzOi8vcGxheS5nb29nbGUuY29tL3N0b3JlL2FwcHMvZGV0YWlscz9pZD1vcmcuZGV0aWtjb20ucnNzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL3dlYnAvbS9zdG9yZS1hbmRyb2lkLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0icGxheSBzdG9yZSIgdGl0bGU9IlBsYXkgU3RvcmUiIHdpZHRoPSI5OCIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImxpbmsgYnVpbGRpbmcgZm9vdGVyIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJhcHAgc3RvcmUiIGhyZWY9Imh0dHBzOi8vYXBwcy5hcHBsZS5jb20vaWQvYXBwL2RldGlrY29tLWJlcml0YS10ZXJsZW5na2FwL2lkNDQyOTE0OTg4Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgZGF0YS1zcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvaW1hZ2VzL3dlYnAvbS9zdG9yZS1pb3Mud2VicD92PTIwMjQwODAyMTU0NDMiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSJhcHAgc3RvcmUiIHRpdGxlPSJBcHAgU3RvcmUiIHdpZHRoPSI5NyIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGEgZHRyLWV2dD0iZm9vdGVyIiBkdHItc2VjPSIiIGR0ci1hY3Q9ImxpbmsgYnVpbGRpbmcgZm9vdGVyIiBvbmNsaWNrPSJfcHQodGhpcykiDQogICAgICAgICAgICAgICAgICAgICAgICBkdHItaWR4PSJhcHAgZ2FsbGVyeSIgaHJlZj0iaHR0cHM6Ly9hcHBnYWxsZXJ5NS5odWF3ZWkuY29tLyMvYXBwL0MxMDA2NzIwNDUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBkYXRhLXNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9pbWFnZXMvd2VicC9tL3N0b3JlLWh1YXdlaS1hcHBzLndlYnA/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0iYXBwIGdhbGxlcnkiIHRpdGxlPSJBcHAgR2FsbGVyeSIgd2lkdGg9IjExNCIgaGVpZ2h0PSIzNCI+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyX19jb3B5Ij4NCiAgICAgICAgICAgICAgICBDb3B5cmlnaHQgQCAyMDI0IGRldGlrY29tLCBBbGwgcmlnaHQgcmVzZXJ2ZWQNCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBkLXdpZGdldD0iYnl0ZWRhbmNlIiBkLWxvYWRlZD0iMSIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+PC9kaXY+DQogICAgPC9mb290ZXI+DQoNCiAgICA8IS0tIHM6bmV4dEFydGljbGVSZXBvIC0tPg0KICAgIDxkaXYgY2xhc3M9ImJvdHRvbS1zdGlja3kiPg0KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgICAgICAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgdmFyIGZiYW5lciA9ICQoJy5mb290ZXJfYmFubmVyJyk7DQogICAgICAgICAgICAgICAgdmFyIGJ0bVN0aWNreSA9ICQoJy5ib3R0b20tc3RpY2t5Jyk7DQogICAgICAgICAgICAgICAgdmFyIHNoclN0aWNreSA9ICQoJy5zdGlja3ktc2hhcmUnKTsNCiAgICAgICAgICAgICAgICB2YXIgZmJhbmVySGVpZ2h0ID0gZmJhbmVyLm91dGVySGVpZ2h0KCk7DQoNCiAgICAgICAgICAgICAgICBpZiAoZmJhbmVyKSB7DQogICAgICAgICAgICAgICAgICAgIGJ0bVN0aWNreS5jc3MoJ2JvdHRvbScsIGZiYW5lckhlaWdodCk7DQogICAgICAgICAgICAgICAgICAgIHNoclN0aWNreS5jc3MoJ2JvdHRvbScsIGZiYW5lckhlaWdodCk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIDwvc2NyaXB0Pg0KICAgIDwvZGl2Pg0KICAgIDwhLS0gZTpuZXh0QXJ0aWNsZVJlcG8gLS0+DQoNCiAgICA8IS0tIFM6ZGV0aWsuanMgLS0+DQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9kZXRpay52My4yLmpzP3Y9MjAyNDA4MDIxNTQ0MyI+PC9zY3JpcHQ+DQogICAgPCEtLSBTOmRldGlrLmpzIC0tPg0KDQogICAgPHNjcmlwdD4NCiAgICAgICAgbGV0IGluaXRlZG9lbWJlZGl0cHYyID0gZmFsc2U7DQogICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICBpZiAoaW5pdGVkb2VtYmVkaXRwdjIpIHsgcmV0dXJuOyB9DQogICAgICAgICAgICBpZiAod2luZG93LnNjcm9sbFkgPD0gMTAwKSB7IHJldHVybjsgfQ0KICAgICAgICAgICAgaW5pdGVkb2VtYmVkaXRwdjIgPSB0cnVlOw0KICAgICAgICAgICAgZ2V0U2NyaXB0KCdodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL29lbWJlZC5pdHAudjIuanM/dj0yMDI0MDgwMjE1NDQzJywgZnVuY3Rpb24gKCkgew0KDQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSkNCg0KICAgIDwvc2NyaXB0Pg0KDQogICAgPCEtLSBTOnRhZ2Zvb3QgLS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgdmFyIGxvYWRTY3JpcHRBc3luYyA9IGZ1bmN0aW9uICh1cmkpIHsNCiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7DQogICAgICAgICAgICAgICAgdmFyIHRhZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOw0KICAgICAgICAgICAgICAgIHRhZy5zcmMgPSB1cmk7DQogICAgICAgICAgICAgICAgdGFnLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgICAgICAgICB0YWcub25sb2FkID0gKCkgPT4gew0KICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7DQogICAgICAgICAgICAgICAgfTsNCiAgICAgICAgICAgICAgICB2YXIgZmlyc3RTY3JpcHRUYWcgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0JylbMF07DQogICAgICAgICAgICAgICAgZmlyc3RTY3JpcHRUYWcucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodGFnLCBmaXJzdFNjcmlwdFRhZyk7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfQ0KICAgICAgICB2YXIgc2NyaXB0TG9hZGVkID0gbG9hZFNjcmlwdEFzeW5jKCdodHRwczovL25ld3Jldml2ZS5kZXRpay5jb20vZGVsaXZlcnkvYXN5bmNqcy5waHAnKTsNCg0KICAgICAgICBzY3JpcHRMb2FkZWQudGhlbihmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB3aW5kb3cucmV2aXZlQXN5bmNbIjBjY2VlY2I5Y2FlOWY1MWEzMTEyM2M1NDE5MTBkNTliIl0uYWRkRXZlbnRMaXN0ZW5lcignYWZ0ZXJSZW5kZXJCYW5uZXInLCBydkNhbGxiYWNrQmFubmVyKTsNCg0KICAgICAgICAgICAgZnVuY3Rpb24gcnZDYWxsYmFja0Jhbm5lcihkYXRhKSB7DQoNCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhkYXRhKTsNCiAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgZGF0YS5kZXRhaWwubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgICAgICAgY2hlY2tCYW5uZXJBdmFpbGFibGUoZGF0YS5kZXRhaWxbaV0sIDkyMywgaW50ZXJzdGl0aWFsLCB0cnVlKTsNCiAgICAgICAgICAgICAgICAgICAgY2hlY2tCYW5uZXJBdmFpbGFibGUoZGF0YS5kZXRhaWxbaV0sIDkyMSwgZGV0ZWN0SGVpZ2h0QmwsIHRydWUpOw0KICAgICAgICAgICAgICAgICAgICBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhLmRldGFpbFtpXSwgMTA5NiwgZGV0ZWN0V2lkdGhOYXZBZHMsIHRydWUpOw0KICAgICAgICAgICAgICAgICAgICBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhLmRldGFpbFtpXSwgMTQ4MiwgZGV0ZWN0V2lkdGhOYXZBZHMsIHRydWUpOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgfQ0KICAgICAgICB9KTsNCg0KICAgICAgICBmdW5jdGlvbiBhZHNfcmVtb3ZlKHBhcmFtKSB7DQogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChwYXJhbSkucmVtb3ZlKCk7DQogICAgICAgIH0NCg0KICAgICAgICBmdW5jdGlvbiBjaGVja0Jhbm5lckF2YWlsYWJsZShkYXRhRGV0YWlsLCBjaGVja1pvbmUsIGNhbGxGdW5jLCBhdmFpbGFibGUgPSBmYWxzZSkgew0KICAgICAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgICAgICB2YXIgc2hvdyA9IGF2YWlsYWJsZSA/IDEgOiAwOw0KICAgICAgICAgICAgICAgIGlmIChzaG93ID09IDApIHsNCiAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGFEZXRhaWwuem9uZWlkID09IGNoZWNrWm9uZSAmJiBkYXRhRGV0YWlsLmJhbm5lcmlkID09IHNob3cpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxGdW5jKCk7DQogICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnem9uZSBpZCBhZGp1c3RtZW50IDogJyArIGNoZWNrWm9uZSk7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgaWYgKHNob3cgPT0gMSkgew0KICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YURldGFpbC56b25laWQgPT0gY2hlY2tab25lICYmIGRhdGFEZXRhaWwuYmFubmVyaWQgPj0gc2hvdykgew0KICAgICAgICAgICAgICAgICAgICAgICAgY2FsbEZ1bmMoKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCd6b25lIGlkIGFkanVzdG1lbnQgOiAnICsgY2hlY2tab25lKTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgIDwvc2NyaXB0Pg0KDQoNCg0KICAgIDwhLS0gUGl4ZWwgVGFnIEF1ZGllbmNlIERGUCAtLT4NCg0KICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4NCiAgICAgICAgdmFyIGF4ZWwgPSBNYXRoLnJhbmRvbSgpICsgJyc7DQogICAgICAgIHZhciBhID0gYXhlbCAqIDEwMDAwMDAwMDAwMDAwOw0KICAgICAgICBkb2N1bWVudC53cml0ZSgnPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPScgKyBhICsgJztkY19zZWc9MTAxMDc5MTM4OTtnZW49TWFsZT8iIHdpZHRoPTEgaGVpZ2h0PTEgYm9yZGVyPTAvPicpOw0KICAgIDwvc2NyaXB0Pg0KICAgIDxub3NjcmlwdD4NCiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPTE7ZGNfc2VnPTEwMTA3OTEzODk7Z2VuPU1hbGU/Ig0KICAgICAgICAgICAgd2lkdGg9MSBoZWlnaHQ9MSBib3JkZXI9MCAvPg0KICAgIDwvbm9zY3JpcHQ+DQoNCiAgICA8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+DQogICAgICAgIHZhciBheGVsID0gTWF0aC5yYW5kb20oKSArICcnOw0KICAgICAgICB2YXIgYSA9IGF4ZWwgKiAxMDAwMDAwMDAwMDAwMDsNCiAgICAgICAgZG9jdW1lbnQud3JpdGUoJzxpbWcgc3JjPSJodHRwczovL3B1YmFkcy5nLmRvdWJsZWNsaWNrLm5ldC9hY3Rpdml0eTtkY19pdT0vNDkwNTUzNi9ERlBBdWRpZW5jZVBpeGVsO29yZD0nICsgYSArICc7ZGNfc2VnPTEwMDk4NzU3MjQ7Z2VuPUZlbWFsZT8iIHdpZHRoPTEgaGVpZ2h0PTEgYm9yZGVyPTAvPicpOw0KICAgIDwvc2NyaXB0Pg0KICAgIDxub3NjcmlwdD4NCiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHViYWRzLmcuZG91YmxlY2xpY2submV0L2FjdGl2aXR5O2RjX2l1PS80OTA1NTM2L0RGUEF1ZGllbmNlUGl4ZWw7b3JkPTE7ZGNfc2VnPTEwMDk4NzU3MjQ7Z2VuPUZlbWFsZT8iDQogICAgICAgICAgICB3aWR0aD0xIGhlaWdodD0xIGJvcmRlcj0wIC8+DQogICAgPC9ub3NjcmlwdD4NCg0KICAgIDwhLS0gRW5kIFBpeGVsIFRhZyBBdWRpZW5jZSBERlAgLS0+DQogICAgPHNjcmlwdD4NCiAgICAgICAgZ29vZ2xldGFnLmNtZC5wdXNoKGZ1bmN0aW9uICgpIHsgZ29vZ2xldGFnLmRpc3BsYXkoJ2Rpdi1ncHQtYWQtMTUzNjUxNDU4MzE0MS0wJyk7IH0pOw0KICAgIDwvc2NyaXB0Pg0KICAgIDwhLS0gRTp0YWdmb290IC0tPg0KICAgIDwhLS0gRTpGb290ZXIgLS0+DQoNCiAgICA8IS0tIFM6c3RpY2t5c3RhdGljYmFubmVyIC0tPg0KICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9iYW5uZXIgYWRzLXNsb3QiDQogICAgICAgIHN0eWxlPSJkaXNwbGF5Om5vbmU7IHotaW5kZXg6IDk5OTk7cG9zaXRpb246IGZpeGVkOyBib3R0b206IDA7d2lkdGg6IDEwMCU7IHBhZGRpbmctdG9wOiAzMHB4O3BhZGRpbmctYm90dG9tOiAyMHB4OyBiYWNrZ3JvdW5kOiByZ2IoMjI0IDIyNCAyMjUpOyI+DQogICAgICAgIDxzdHlsZT4NCiAgICAgICAgICAgIC5mb290ZXJfYmFubmVyOjpiZWZvcmUgew0KICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIC5mbG9hdGluZ3NoYXJlLA0KICAgICAgICAgICAgYVtkdHItc2VjPSJiYWNrIHRvIHRvcCJdIHsNCiAgICAgICAgICAgICAgICBib3R0b206IDExMHB4Ow0KICAgICAgICAgICAgfQ0KICAgICAgICA8L3N0eWxlPg0KICAgICAgICA8c3BhbiBocmVmPSJodHRwOi8vaGluZGlrZXNhdGguY29tLyIgY2xhc3M9InNzYi1jbG9zZSINCiAgICAgICAgICAgIHN0eWxlPSJjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO3Bvc2l0aW9uOiBhYnNvbHV0ZTtyaWdodDogNSU7dG9wOiAzcHg7aGVpZ2h0OiAyMHB4O2JhY2tncm91bmQtY29sb3I6IHdoaXRlO2JvcmRlci1yYWRpdXM6IDUwJTsgei1pbmRleDo5OTk5OTsiPjxpbWcNCiAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vYXdzY2Ruc3RhdGljLmRldGlrLm5ldC5pZC9saXZlL19ybWJhc3NldHMvc3NiL2Nsb3NlLXJvdW5kZWQucG5nIg0KICAgICAgICAgICAgICAgIHN0eWxlPSJ3aWR0aDogMjBweDtoZWlnaHQ6IDIwcHg7Ij48L3NwYW4+DQogICAgICAgIDxkaXYgY2xhc3M9InNzYi1jb250ZW50IiBzdHlsZT0ibWluLWhlaWdodDogNTBweDsiPg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDwhLS0gPHNjcmlwdD4NCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgJCgiLnNzYi1jbG9zZSIpLmNsaWNrKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAkKCIuZm9vdGVyX2Jhbm5lciIpLnJlbW92ZSgpOw0KICAgICAgICAgICAgICAgICQoImFbZHRyLXNlYz0nYmFjayB0byB0b3AnXSIpLmFuaW1hdGUoeyAiYm90dG9tIjogIjYwcHgiIH0sIDMwMCk7DQogICAgICAgICAgICAgICAgJCgiLmJhY2stdG9wIikuYW5pbWF0ZSh7ICJib3R0b20iOiAiNjBweCIgfSwgMzAwKTsNCiAgICAgICAgICAgICAgICAkKCIuc3RpY2t5LXNoYXJlIikuY3NzKHsgImJvdHRvbSI6ICIwIiB9KTsNCiAgICAgICAgICAgICAgICAkKCIuZmxvYXRpbmdzaGFyZSIpLmNzcyh7ICJib3R0b20iOiAiNjBweCIsICJtYXJnaW4tYm90dG9tIjogInVuc2V0IiB9KTsNCiAgICAgICAgICAgIH0pOw0KICAgICAgICB9KTsNCiAgICA8L3NjcmlwdD5FOnN0aWNreXN0YXRpY2Jhbm5lciAtLT4NCg0KDQogICAgPCEtLSBDT1JFIFNUWUxFIC0tPg0KDQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvaW5ldDIvbS9jc3Mvc3R5bGUuY3NzP3Y9MjAyNDA4MDIxNTQ0MyIgYXM9InN0eWxlIg0KICAgICAgICBvbmxvYWQ9InRoaXMub25sb2FkPW51bGw7dGhpcy5yZWw9J3N0eWxlc2hlZXQnIj4NCiAgICA8bm9zY3JpcHQ+DQogICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2luZXQyL20vY3NzL3N0eWxlLmNzcz92PTIwMjQwODAyMTU0NDMiPg0KICAgIDwvbm9zY3JpcHQ+DQoNCg0KDQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9hd3NjZG4uZGV0aWsubmV0LmlkL2Fzc2V0cy9qcy9saXF1aWRpbWFnZS5qcz92PTIwMjQwODAyMTU0NDMiPjwvc2NyaXB0Pg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvanMvYWRzY2xvc2UuanM/dj0yMDI0MDgwMjE1NDQzIj48L3NjcmlwdD4NCg0KICAgIDwhLS0gczpmb290ZXIgYXNzZXQgbWFuYWdlciAtLT4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL2F3c2Nkbi5kZXRpay5uZXQuaWQvYXNzZXRzL2pzL2xpbmtjb3BpZWRwb3AuanM/dj0yMDI0MDgwMjE1NDQzIg0KICAgICAgICBkZWZlcj0iIj48L3NjcmlwdD4NCiAgICA8IS0tIGU6Zm9vdGVyIGFzc2V0IG1hbmFnZXIgLS0+DQogICAgPCEtLSBzOmZvb3RlciBpbmxpbmUgLS0+DQogICAgPHNjcmlwdD4gICAgICAgICAgICBnZXRTY3JpcHQoJ2h0dHBzOi8vYXdzY2RuLmRldGlrLm5ldC5pZC9hc3NldHMvanMvem9vbWltZy5qcz92PTIwMjQwODAyMTU0NDMnLCBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB6b29tX2ltZyh7IHN0YXR1czogdHJ1ZSwgbV92aWV3cG9ydDogMTAgfSk7IC8vWm9vbSBJbWFnZSBTaXplIFZpZXdwb3J0DQogICAgICAgIH0pPC9zY3JpcHQ+DQogICAgPCEtLSBlOmZvb3RlciBpbmxpbmUgLS0+DQo8L2JvZHk+DQoNCjwvaHRtbD4NCjwhLS1yZXBsYWNlZC0tPg==)format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Jost";font-style:normal;font-weight:300;src:;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Jost";font-style:normal;font-weight:400;src:;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Jost";font-style:normal;font-weight:500;src:;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Roboto";font-style:normal;font-weight:300;src:;unicode-range:U+0370-03FF}@font-face{font-family:"Roboto";font-style:normal;font-weight:300;src:;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Roboto";font-style:normal;font-weight:400;src:;unicode-range:U+0370-03FF}@font-face{font-family:"Roboto";font-style:normal;font-weight:400;src:;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Roboto";font-style:normal;font-weight:500;src:;unicode-range:U+0370-03FF}@font-face{font-family:"Roboto";font-style:normal;font-weight:500;src:;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Roboto";font-style:normal;font-weight:700;src:;unicode-range:U+0370-03FF}@font-face{font-family:"Roboto";font-style:normal;font-weight:700;src:;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}/*!
Theme Name: Newsmatic
Theme URI: https://blazethemes.com/theme/newsmatic-free/
Author: BlazeThemes
Author URI: https://blazethemes.com/
Description: Newsmatic is complete solution for your news website. It is fast, features rich, customizer-based, and multipurpose free news theme. It is multilingual compatibility, gutenberg compatibility, elementor compatibility and can be integrated easily with newsletter/form plugins. This theme is schema ready, which makes it a favourite for search engines. Newsmatic Theme does not collect any kind of personal data restricted under GDPR, so you can sleep without any worry by using our theme on your website. Developed by dedicated developers, it has user friendly and easy to use advanced control fields like select2, react color picker, image selector, typography field and many more inside the theme. Check out our pre-build demos here: https://blazethemes.com/theme/newsmatic-free. For Detailed Tutorial video please visit: https://www.youtube.com/watch?v=fb8qJ2XEZzQ
Version: 1.2.15
Tested up to: 6.0
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: newsmatic
Tags: news, blog, entertainment, one-column, two-columns, grid-layout, block-styles, left-sidebar, right-sidebar, custom-header, flexible-header, custom-background, custom-colors, custom-menu, featured-images, full-width-template, post-formats, sticky-post, rtl-language-support, footer-widgets, theme-options, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Newsmatic is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*//*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}main{display:block}h1{font-size:2em;margin:.67em 0}a{background-color:transparent}strong{font-weight:bolder}img{border-style:none}button,input{margin:0}button,input{overflow:visible}button{text-transform:none}button,[type="submit"]{-webkit-appearance:button}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}template{display:none}*,*::before,*::after{box-sizing:inherit}html{box-sizing:border-box}body,button,input{color:var(--body-text-default-color);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:1rem;line-height:1.5}h1,h2,h3{clear:both}p{margin-bottom:1.5em}ul{margin:0 0 1.5em .5em}ul{list-style:disc}iframe{max-width:100%}img{height:auto;max-width:100%}a{color:#4169e1}a:visited{color:#4169e1}a:hover,a:focus,a:active{color:#191970}a:focus{outline:thin dotted}a:hover,a:active{outline:0}button,input[type="submit"]{border-color:#ccc #ccc #bbb;border-radius:3px;background:#e6e6e6;line-height:1;padding:.6em 1em .4em}button:hover,input[type="button"]:hover,input[type="reset"]:hover,input[type="submit"]:hover{border-color:#ccc #bbb #aaa}button:active,button:focus,input[type="button"]:active,input[type="button"]:focus,input[type="reset"]:active,input[type="reset"]:focus,input[type="submit"]:active,input[type="submit"]:focus{border-color:#aaa #bbb #bbb}input[type="text"],input[type="search"]{color:#666;border:1px solid #ccc;border-radius:3px;padding:5px}input[type="text"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="password"]:focus,input[type="search"]:focus,input[type="number"]:focus,input[type="tel"]:focus,input[type="range"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="week"]:focus,input[type="time"]:focus,input[type="datetime"]:focus,input[type="datetime-trendy"]:focus,input[type="color"]:focus,textarea:focus{color:#111}.main-navigation{display:block;width:100%}.main-navigation ul{display:none;list-style:none;margin:0;padding-left:0}.main-navigation li{position:relative}.main-navigation a{display:block;text-decoration:none}@media screen and (min-width:48.1em){.main-navigation ul{display:flex;flex-wrap:wrap}.site-header.layout--one .main-navigation ul{justify-content:center}}.page{margin:0 0 1.5em}.updated:not(.published){display:none}.entry-content{margin:1.5em 0 0}.widget{margin:0 0 1.5em}.custom-logo-link{display:inline-block}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#f1f1f1;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;clip-path:none;color:#21759b;display:block;font-size:.875rem;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}:root{--newsmatic-global-preset-color-1:#c2113c;--newsmatic-global-preset-color-2:#289dcc;--newsmatic-global-preset-color-3:#d95f3d;--newsmatic-global-preset-color-4:#000000;--newsmatic-global-preset-color-5:#545454;--newsmatic-global-preset-color-6:#333333;--newsmatic-global-preset-gradient-color-1:linear-gradient(90deg,#66ffff 0%,#ff9999 100%);--newsmatic-global-preset-gradient-color-2:linear-gradient(90deg,#009FFF 0%,#ec2F4B 100%);--newsmatic-global-preset-gradient-color-3:linear-gradient(90deg,#FF5F6D 0%,#FFC371 100%);--newsmatic-global-preset-gradient-color-4:linear-gradient(90deg,#ffffcc 0%,#ff9999 100%);--newsmatic-global-preset-gradient-color-5:linear-gradient(90deg,#ff4b1f 0%,#1fddff 100%);--newsmatic-global-preset-gradient-color-6:linear-gradient(90deg,#ccccff 0%,#ff99cc 100%);--main-bk-color:#fff;--site-bk-color:#fbfbfb;--top-header-bk-color:#1b8415;--top-header-border-btm-c:#E8E8E8;--top-header-dt-color:#fff;--header-bk-color:#fff;--header-toggle-bk-color:#f3f3f3;--toggle-close-bk-color:#f3f3f3;--toggle-close-btn-color:#33333380;--menu-bk-color:#fff;--menu-border-top-color:#1b8415;--submenu-border-btm-color:#ebebeb;--mode-toggle-color:#000;--ticker-outer-bk-color:#f5f5f5;--ticker-inner-bk-color:#f9f9f9;--banner-content-bk-color:#fff;--archive-content-bk-color:#fff;--single-content-bk-color:#fff;--404-error-content-bk-color:#fff;--search-content-bk-color:#fff;--full-width-section-bk-color:#F0F1F2;--leftc-rights-section-bk-color:#F0F1F2;--lefts-rightc-section-bk-color:#F0F1F2;--full-width-bottom-section-bk-color:#F0F1F2;--full-width-content-bk-color:#ffffff;--leftc-rights-content-bk-color:#ffffff;--lefts-rightc-content-bk-color:#ffffff;--full-width-bottom-content-bk-color:#ffffff;--theme-section-bk-color:#545454;--theme-content-bk-color:#ffffff;--border-bottom-color:#f0f0f0;--body-text-default-color:#404040;--green-text-color:#2AB391;--border-line-color:#E2E2E2;--menu-active-color:#DE4331;--noimg-bk-color:#cccccc;--white-text:#fff;--white-bk-color:#fff;--author-color:#333333;--meta-text-color:#8A8A8C;--main-content-text-color:#505050;--post-content-font:"Cabin",sans-serif;--post-meta-font:"Heebo",sans-serif;--block-title-color:#161616;--post-title-color:#000000;--post-content-color:#505050;--post-meta-color:#8A8A8C;--theme-color-red:#1B8415;--dark-bk-color:#000000;--inner-container-bk:#fff;--theme-block-top-border-color:linear-gradient(135deg,#485563 10%,#29323c 100%);--theme-block-top-border-height:1px;--mobile-menu-bk-color:#f8f8f8;--mobile-menu-border-btm-color:#e8e8e8;--text-background-color:#fff;--horizontal-shadow-offset:0;--vertical-shadow-offset:2px;--blur-radius:4px;--spread-radus:0;--shadow-color:rgb(0 0 0/8%);--site-title-size:38px;--site-title-size-tab:38px;--site-title-size-mobile:38px;--site-title-family:"jost";--site-title-lineheight:42px;--site-title-lineheight-tab:38px;--site-title-lineheight-mobile:38px;--site-title-letterspacing:0;--site-title-letterspacing-tab:0;--site-title-letterspacing-mobile:0;--site-title-textdecoration:"none";--site-title-texttransform:"Capitalize";--site-title-weight:700;--block-title-size:26px;--block-title-size-tab:26px;--block-title-size-mobile:25px;--block-title-family:"Roboto",sans-serif;--block-title-lineheight:32px;--block-title-lineheight-tab:32px;--block-title-lineheight-mobile:32px;--block-title-letterspacing:0;--block-title-letterspacing-tab:0;--block-title-letterspacing-mobile:0;--block-title-textdecoration:"none";--block-title-texttransform:"capitalize";--block-title-weight:700;--post-title-size:22px;--post-title-size-tab:20px;--post-title-size-mobile:19px;--post-title-family:"Roboto",sans-serif;--post-title-lineheight:27px;--post-title-lineheight-tab:27px;--post-title-lineheight-mobile:27px;--post-title-letterspacing:0;--post-title-letterspacing-tab:0;--post-title-letterspacing-mobile:0;--post-title-textdecoration:"none";--post-title-textdecoration-tab:"none";--post-title-textdecoration-mobile:"none";--post-title-texttransform:"lowercase";--post-title-texttransform-tab:"lowercase";--post-title-texttransform-mobile:"lowercase";--post-title-weight:500;--meta-size:14px;--meta-size-tab:14px;--meta-size-mobile:14px;--meta-family:"jost",sans-serif;--meta-lineheight:20px;--meta-lineheight-tab:20px;--meta-lineheight-mobile:20px;--meta-letterspacing:0;--meta-letterspacing-tab:0;--meta-letterspacing-mobile:0;--meta-textdecoration:"none";--meta-texttransform:"capitalize";--meta-weight:500;--content-size:15px;--content-size-tab:15px;--content-size-mobile:15px;--content-family:"inter",sans-serif;--content-lineheight:24px;--content-lineheight-tab:24px;--content-lineheight-mobile:22px;--content-letterspacing:0;--content-letterspacing-tab:0;--content-letterspacing-mobile:0;--content-textdecoration:"none";--content-textdecoration-tab:"none";--content-textdecoration-mobile:"none";--content-texttransform:"lowercase";--content-texttransform-tab:"lowercase";--content-texttransform-mobile:"lowercase";--content-weight:400;--menu-size:15px;--menu-size-tab:16px;--menu-size-mobile:16px;--menu-family:"Roboto",sans-serif;--menu-lineheight:24px;--menu-lineheight-tab:24px;--menu-lineheight-mobile:22px;--menu-letterspacing:0;--menu-letterspacing-tab:0;--menu-letterspacing-mobile:0;--menu-textdecoration:"none";--menu-texttransform:uppercase;--menu-color:#000;--menu-color-hover:#1B8415;--menu-weight:700;--menu-color-active:#1B8415;--menu-color-submenu:#000000;--menu-color-submenu-hover:#1B8415;--submenu-size:15px;--submenu-size-tab:15px;--submenu-size-mobile:15px;--submenu-family:"Roboto",sans-serif;--submenu-lineheight:24px;--submenu-lineheight-tab:24px;--submenu-lineheight-mobile:22px;--submenu-weight:700;--submenu-letterspacing:0;--submenu-letterspacing-tab:0;--submenu-letterspacing-mobile:0;--submenu-textdecoration:"none";--submenu-texttransform:uppercase;--single-title-size:34px;--single-title-size-tab:32px;--single-title-size-mobile:30px;--single-title-family:"Roboto",sans-serif;--single-title-lineheight:34px;--single-title-lineheight-tab:32px;--single-title-lineheight-mobile:30px;--single-title-letterspacing:0;--single-title-letterspacing-tab:0;--single-title-letterspacing-mobile:0;--single-title-textdecoration:"none";--single-title-texttransform:"uppercase";--single-title-weight:600;--single-meta-size:14px;--single-meta-size-tab:14px;--single-meta-size-mobile:14px;--single-meta-family:"Jost",sans-serif;--single-meta-lineheight:24px;--single-meta-lineheight-tab:24px;--single-meta-lineheight-mobile:22px;--single-meta-letterspacing:0;--single-meta-letterspacing-tab:0;--single-meta-letterspacing-mobile:0;--single-meta-textdecoration:"none";--single-meta-texttransform:"lowercase";--single-meta-weight:400;--single-content-size:17px;--single-content-size-tab:16px;--single-content-size-mobile:16px;--single-content-family:"Inter",sans-serif;--single-content-lineheight:24px;--single-content-lineheight-tab:24px;--single-content-lineheight-mobile:22px;--single-content-letterspacing:0;--single-content-letterspacing-tab:0;--single-content-letterspacing-mobile:0;--single-content-textdecoration:"none";--single-content-texttransform:"lowercase";--single-content-weight:400;--breadcrumb-background-color:#ffffff;--breadcrumb-link-color:#000000;--breadcrumb-link-color-hover:#000000;--breadcrumb-text-color:#000000;--move-to-top-color:#ffffff;--move-to-top-color-hover:#ffffff;--move-to-top-background-color:#1B8415;--move-to-top-background-color-hover:#1B8415;--move-to-top-border-color:#1B8415;--move-to-top-border-color-hover:#1B8415;--move-to-top-font-size:20px;--move-to-top-font-size-tablet:16px;--move-to-top-font-size-smartphone:14px;--readmore-button-font-size:14px;--readmore-button-font-size-tablet:12px;--readmore-button-font-size-smartphone:10px;--header-padding:35px;--header-padding-tablet:30px;--header-padding-smartphone:30px;--top-header-menu-color:#525252;--top-header-menu-color-hover:#000;--top-header-social-color:#525252;--top-header-social-color-hover:#000;--header-letter-random-color:#525252;--sidebar-toggle-color:#000;--sidebar-toggle-color-hover:#1B8415;--newsletter-color:#525252;--newsletter-color-hover:#1B8415;--random-news-color:#525252;--random-news-color-hover:#1B8415;--search-color:#000000;--search-color-hover:#1B8415;--website-frame-color:#d95f3d;--custom-btn-color:#ffffff;--custom-btn-color-hover:#ffffff;--footer-text-color:#ffffff;--footer-text-color-hover:#d95f3d;--footer-bottom-text-color:#8A8A8C;--footer-bottom-link-color:#878787;--footer-bottom-link-color-hover:#f9f9f9;--footer-bottom-author-color:#c5c5c5;--live-search-color:#555;--live-search-bk-color:#fff}html{scroll-behavior:smooth}body{font-family:var(--block-title-family);scroll-behavior:smooth;font-size:16px;background:var(--site-bk-color)}figure{margin:0}.newsmatic-container{--bs-gutter-x:1.5rem;width:100%;padding-right:var(--bs-gutter-x,.75rem);padding-left:var(--bs-gutter-x,.75rem);margin-right:auto;margin-left:auto}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;margin-top:calc(var(--bs-gutter-y)*-1);margin-right:calc(var(--bs-gutter-x)*-.5);margin-left:calc(var(--bs-gutter-x)*-.5)}article{overflow:hidden}@media only screen and (max-width:680px){}@media (min-width:576px){.newsmatic-container{max-width:540px}}@media (min-width:676px){.newsmatic-container{max-width:620px}}@media (min-width:768px){.newsmatic-container{max-width:720px}}@media (min-width:868px){.newsmatic-container{max-width:820px}.newsmatic-container{padding-right:var(--bs-gutter-x,1rem);padding-left:var(--bs-gutter-x,1rem)}}@media (min-width:992px){.newsmatic-container{max-width:960px}}@media (min-width:1086px){.newsmatic-container{max-width:1060px}}@media (min-width:1200px){.newsmatic-container{max-width:1140px}}@media (min-width:1300px){.newsmatic-container{max-width:1240px}}@media (min-width:1400px){.newsmatic-container{max-width:1320px}}.post-title{color:var(--post-title-color);line-height:var(--post-title-lineheight);letter-spacing:var(--post-title-letterspacing);text-decoration:var(--post-title-textdecoration);text-transform:var(--post-title-texttransform);font-weight:var(--post-title-weight)}h2.widget-title{border-bottom:2px solid var(--border-bottom-color);display:block;margin-top:0;margin-bottom:20px;color:var(--block-title-color);padding-bottom:6px;font-size:calc(var(--block-title-size)*0.9);font-family:var(--block-title-family);line-height:var(--block-title-lineheight);letter-spacing:var(--block-title-letterspacing);text-decoration:var(--block-title-textdecoration);text-transform:var(--block-title-texttransform);font-weight:var(--block-title-weight)}h2.widget-title span{position:relative}h2.newsmatic-block-title span::after,h2.newsmatic-widget-title span::after,h2.widget-title span:after{content:"";width:100%;height:2px;background:linear-gradient(176deg,var(--theme-color-red),transparent);position:absolute;left:0;bottom:-10px}#theme-content{padding:10px 0}#theme-content .row{display:flex}body.right-sidebar #theme-content .row .secondary-sidebar{flex:0 1 30%;margin-left:20px}body.right-sidebar #theme-content .row .primary-content{max-width:70%;flex:0 1 70%}.page .primary-content .post-inner-wrapper{padding:20px}body.page #theme-content .row .primary-content{background-color:var(--inner-container-bk)}.page h1.entry-title{margin-top:0}header.site-header{padding-bottom:10px}.site-header.layout--default .top-header .row{display:flex;align-items:center;min-height:40px;justify-content:space-between}.site-header.layout--default .site-branding-section{background-color:var(--header-bk-color);padding:var(--header-padding)0}.site-header.layout--default .main-header .site-title{margin:0;padding:0 5px;line-height:1}.site-header.layout--default .main-header .site-description{margin:0;padding:5px 5px 0}.site-header.layout--default .main-header .site-branding-section .row{display:flex;align-items:center;padding-top:5px;padding-bottom:5px}.site-header.layout--default .main-header .site-branding-section .site-branding{text-align:center}.site-header.layout--one .header-right-button-wrap{flex:0 1 25%;text-align:end;padding:0 5px}.site-header.layout--default .header-right-button-wrap>div{display:inline-block;padding-left:15px}.site-header.layout--default .header-right-button-wrap>div:first-child{padding-left:0}.site-header.layout--default .header-right-button-wrap>div a{text-decoration:none}.site-header.layout--default .header-right-button-wrap .title-icon i{padding-right:6px}.site-header.layout--default .header-right-button-wrap span.title-text{font-family:var(--menu-family);font-weight:var(--menu-weight);font-size:calc(var(--menu-size)*0.92);text-transform:uppercase}.site-header.layout--default .order--social-logo-buttons .social-icons-wrap{flex:0 1 25%}.site-header.layout--default .main-header.order--social-logo-buttons .site-branding{flex:0 1 50%}@media (max-width:320px){.site-header.layout--one .header-right-button-wrap{text-align:center}}.site-header.layout--default .menu-section{background-color:var(--menu-bk-color)}.site-header.layout--default .menu-section .row{height:auto;align-items:center;display:flex}.site-header.layout--default nav.main-navigation{flex:1 1 90%;height:100%}@media (max-width:450px){}@media (max-width:305px){}@keyframes tie-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@media (min-width:48.1em){.main-navigation>div,.main-navigation ul.menu,.main-navigation ul.nav-menu li{height:inherit;vertical-align:middle}.main-navigation .nav-menu.menu li{display:flex;align-items:center}.main-navigation .menu li a{position:relative;padding:15px 15px;transition:all .4s ease;transform-origin:0 0;color:var(--menu-color);font-family:var(--menu-family);font-weight:var(--menu-weight);font-size:var(--menu-size);line-height:var(--menu-lineheight);letter-spacing:var(--menu-letterspacing);text-transform:var(--menu-texttransform);text-decoration:var(--menu-textdecoration)}.main-navigation .menu li.current-menu-item>a{color:var(--menu-color-hover)}.main-navigation .menu li a:hover,.main-navigation .nav.menu li a:hover{color:var(--menu-color-hover)}}@media (max-width:940px){.main-navigation .menu li a{font-size:var(--menu-size-tab);line-height:var(--menu-lineheight-tab);letter-spacing:var(--menu-letterspacing-tab)}}@media (max-width:769px){.site-header.layout--default .social-icons-wrap{flex:1}.site-header.layout--default .main-header .site-branding-section .row{flex-direction:column;align-items:center}.site-header.layout--default .main-header .site-branding-section .site-branding{padding:20px 5px;text-align:center}nav.main-navigation ul.menu{background-color:var(--mobile-menu-bk-color);z-index:10;position:absolute;width:100%;left:0;padding:10px 30px}nav.main-navigation ul.menu li{float:none;border-top:0;position:relative;border-bottom:1px solid var(--mobile-menu-border-btm-color)}nav.main-navigation ul.menu li:last-child,nav.main-navigation ul.nav-menu li:last-child{border-bottom:none}nav.main-navigation ul.menu li a{font-size:var(--menu-size-mobile);font-weight:var(--menu-weight);letter-spacing:var(--menu-letterspacing-mobile);color:var(--menu-color);font-family:var(--menu-family);float:none;display:block;padding:9px 0;text-decoration:var(--menu-textdecoration-mobile)}.main-navigation .menu li a{line-height:var(--menu-lineheight-mobile)}}.site-branding .site-title a{font-size:var(--site-title-size);line-height:var(--site-title-lineheight);letter-spacing:var(--site-title-letterspacing);text-decoration:var(--site-title-textdecoration);text-transform:var(--site-title-texttransform);font-weight:var(--site-title-weight);font-family:var(--site-title-family)}.site-header.layout--default .random-news-element a{color:var(--random-news-color)}.site-header.layout--default .random-news-element a:hover{color:var(--theme-color-red)}.menu-section .newsmatic-container .row{position:relative}@keyframes blinker{from{opacity:1}to{opacity:0}}.ticker-item-wrap .post-date time{font-size:12px;font-family:var(--meta-family);color:var(--meta-text-color);font-weight:var(--meta-weight);text-decoration:none;text-transform:capitalize}.ticker-news-wrap span.icon{margin-right:10px}.newsmatic-ticker-box{height:auto;overflow:hidden;flex:1 1 85%}.ticker-news-wrap{margin:10px 0;padding:10px;background-color:var(--inner-container-bk)}.ticker-item-wrap{list-style:none;margin:0}.ticker-item-wrap .feature_image img{display:block}.newsmatic-ticker-controls button:hover{cursor:pointer}.ticker-news-wrap.layout--two .ticker_label_title{font-size:18px;text-transform:uppercase;background-color:var(--theme-color-red);color:var(--white-text);text-align:center;padding:12px;margin-right:0;line-height:35px;min-height:60px;flex:0 0 12%;font-weight:600;position:relative}.ticker-news-wrap.layout--two .ticker_label_title:after{content:"";position:absolute;top:34%;right:-9px;border-width:10px 0 10px 10px;border-style:solid;z-index:9;border-color:transparent transparent transparent var(--theme-color-red)}.ticker-news-wrap.layout--two{width:100%;height:auto;display:flex;align-items:center}.ticker-news-wrap.layout--two .ticker-item{position:relative;clear:none}.ticker-news-wrap.layout--two .newsmatic-ticker-box{background-color:var(--ticker-inner-bk-color);padding:5px 0;max-height:61px}.ticker-news-wrap.layout--two .newsmatic-ticker-box ul li{float:left;align-items:flex-start;display:flex!important;margin-right:30px}.ticker-news-wrap.layout--two .ticker-item .feature_image{max-width:75px;height:50px;margin-right:20px}.ticker-news-wrap.layout--two .title-wrap{display:flex;flex-direction:column}.ticker-news-wrap.layout--two .ticker-item h2.post-title{font-size:calc(var(--post-title-size)*0.73);font-family:var(--post-title-family);margin-bottom:2px;margin-top:2px;display:inline-block;float:left}.ticker-news-wrap.layout--two .ticker-item h2.post-title a{color:inherit;text-decoration:none;font-weight:inherit;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ticker-news-wrap.layout--two .newsmatic-ticker-controls button{background-color:var(--theme-color-red);border:none;height:60px;border-radius:0}.ticker-news-wrap.layout--two .newsmatic-ticker-controls button i{color:var(--white-text)}@media (max-width:500px){}@media (max-width:500px){}@media (max-width:840px){}@media (max-width:700px){}.newsmatic_site_block_border_top #full-width-section .row>div:before,.newsmatic_site_block_border_top #bottom-full-width-section .row>div:before,.newsmatic_site_block_border_top .newsmatic-section .primary-content>div:before,.newsmatic_site_block_border_top .secondary-sidebar .widget:before,.newsmatic_site_block_border_top .secondary-left-sidebar .widget:before,.newsmatic_site_block_border_top #theme-content .primary-content:before,.newsmatic_site_block_border_top .post-inner:before,.newsmatic_site_block_border_top .comments-area:before,.newsmatic_site_block_border_top .single-related-posts-section:before,.archive.author.newsmatic_site_block_border_top .newsmatic-container.newsmatic-author-section .row:before,.newsmatic_site_block_border_top .sidebar-toggle .widget:before{content:"";height:var(--theme-block-top-border-height);background:var(--theme-block-top-border-color);display:block;position:absolute;top:0;width:100%;left:0;margin-top:calc(var(--theme-block-top-border-height)*-1)}.secondary-sidebar .widget{margin-bottom:20px}.newsmatic_site_block_border_top .secondary-sidebar .widget{margin-top:calc(var(--theme-block-top-border-height) + 20px)}.newsmatic_site_block_border_top .secondary-sidebar .widget:first-child,.newsmatic_site_block_border_top #theme-content .primary-content{margin-top:var(--theme-block-top-border-height)}.newsmatic-section .primary-content>div:last-child,.full-width-section .row>div:last-child,.bottom-full-width-section .row>div:last-child,.secondary-sidebar section:last-child{margin-bottom:0}.post-title a{line-height:initial}@media (max-width:900px){}@media (max-width:768px){footer .row{flex-direction:column}footer .row>div{width:100%}}.bottom-menu a:hover,.bottom-menu ul li a:hover,.site-footer .site-info a:hover{color:var(--footer-bottom-link-color-hover)}.site-footer .bottom-footer{padding:20px 0;background-color:var(--dark-bk-color);text-align:center;margin-top:-1px}.site-footer .bottom-footer .bottom-inner-wrapper{display:flex;flex-wrap:wrap;justify-content:center}.site-footer .site-info{color:var(--footer-bottom-text-color);font-size:.95rem;flex:0 1 50%;text-align:left;margin:6px 0;font-family:var(--content-family)}.site-footer .site-info a{color:var(--footer-bottom-author-color);text-decoration:none;font-size:.9rem}.widget ul{margin:0;padding:0}.widget ul li{border-bottom:1px solid #8a8a8c2e;padding:9px 0 9px 14px;font-size:calc(var(--post-title-size)*0.68);font-family:var(--post-title-family);list-style:none;position:relative}.widget ul li:before,.widget ol li:before{content:"";font-family:"Font Awesome 5 Free";color:var(--theme-color-red);font-weight:900;position:absolute;left:0;opacity:.8}.widget ul li:last-child,.widget ol li:last-child,.widget_newsmatic_posts_list_widget .post-item:last-child{border-bottom:none;padding-bottom:0}.widget ul li a{color:var(--post-title-color);text-decoration:none;line-height:initial;font-weight:400}.secondary-sidebar .widget_search label{font-weight:600;font-size:18px;padding-bottom:7px;display:inline-block;vertical-align:middle}.widget.widget_search .search-submit{background-color:var(--theme-color-red);color:var(--white-text);border:none;text-transform:uppercase;font-size:15px;line-height:17px;padding-bottom:4px}.widget.widget_search .search-submit{padding:10px 12px;vertical-align:top}.widget{background-color:var(--inner-container-bk);padding:15px}@media (max-width:940px){}@media (max-width:1024px){}#theme-content .primary-content,#theme-content .widget{position:relative}#theme-content .widget:last-child{margin-bottom:0}@-webkit-keyframes circle{0%{opacity:1}40%{opacity:1}100%{width:150%;height:150%;opacity:0}}@keyframes circle{0%{opacity:1}40%{opacity:1}100%{width:150%;height:150%;opacity:0}}@-webkit-keyframes shine{100%{left:125%}}@keyframes shine{100%{left:125%}}.newsmatic-title-two .post-title a{display:inline;-webkit-transition:0.5s ease;transition:1s ease}.newsmatic-title-two .post-title a:hover,.newsmatic-title-two .news-carousel .post-title a:hover,.newsmatic-title-two .widget_block ul li a:hover,.newsmatic-title-two .widget_nav_menu ul li a:hover{color:var(--theme-color-red);text-decoration:none;background-image:none;background-size:0}.ticker-item-wrap .post-date a{text-decoration:none}.modified .updated{display:inline-block}@media (max-width:940px){}@media (max-width:610px){}@media (max-width:1025px){}@media (max-width:1025px){}@media (max-width:940px){}@media (max-width:610px){}@media (max-width:1026px){}@media screen and (max-width:584px){}button,input[type="submit"]{background-color:var(--theme-color-red);color:var(--white-text)}#theme-content .primary-content,.secondary-sidebar .widget,.ticker-news-wrap{box-shadow:var(--horizontal-shadow-offset) var(--vertical-shadow-offset) var(--blur-radius) var(--spread-radus) var(--shadow-color);-webkit-box-shadow:var(--horizontal-shadow-offset) var(--vertical-shadow-offset) var(--blur-radius) var(--spread-radus) var(--shadow-color);-moz-box-shadow:var(--horizontal-shadow-offset) var(--vertical-shadow-offset) var(--blur-radius) var(--spread-radus) var(--shadow-color)}@media (max-width:425px){}:root{--newsmatic-loader-icon-width:250px;--newsmatic-loader-icon-height:250px}@-webkit-keyframes loader-1{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes loader-1{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@-webkit-keyframes loader-2{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes loader-2{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@-webkit-keyframes loader-3{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes loader-3{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@-webkit-keyframes loader-4{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes loader-4{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@-webkit-keyframes loader-5{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes loader-5{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@-webkit-keyframes loader-6{0%{transform:scale(0);opacity:0}50%{opacity:1}100%{transform:scale(1);opacity:0}}@keyframes loader-6{0%{transform:scale(0);opacity:0}50%{opacity:1}100%{transform:scale(1);opacity:0}}@-webkit-keyframes loader-7{0%{transform:scale(0);opacity:0}50%{opacity:1}100%{transform:scale(1);opacity:0}}@keyframes loader-7{0%{transform:scale(0);opacity:0}50%{opacity:1}100%{transform:scale(1);opacity:0}}@-webkit-keyframes loader-8{0%,100%{transform:scale(0)}50%{transform:scale(1)}}@keyframes loader-8{0%,100%{transform:scale(0)}50%{transform:scale(1)}}@-webkit-keyframes loader-9{0%{transform:scale(0)}100%{transform:scale(1);opacity:0}}@keyframes loader-9{0%{transform:scale(0)}100%{transform:scale(1);opacity:0}}@-webkit-keyframes loader-10-1{100%{transform:rotate(360deg)}}@keyframes loader-10-1{100%{transform:rotate(360deg)}}@-webkit-keyframes loader-10-2{0%,100%{transform:scale(0)}50%{transform:scale(1)}}@keyframes loader-10-2{0%,100%{transform:scale(0)}50%{transform:scale(1)}}@-webkit-keyframes loader-11{0%{transform:perspective(120px) rotateX(0deg) rotateY(0deg)}50%{transform:perspective(120px) rotateX(-180.1deg) rotateY(0deg)}100%{transform:perspective(120px) rotateX(-180deg) rotateY(-179.9deg)}}@keyframes loader-11{0%{transform:perspective(120px) rotateX(0deg) rotateY(0deg)}50%{transform:perspective(120px) rotateX(-180.1deg) rotateY(0deg)}100%{transform:perspective(120px) rotateX(-180deg) rotateY(-179.9deg)}}@-webkit-keyframes loader-12{0%,100%{box-shadow:-.5em 0 0 transparent;background-color:var(--theme-color-red)}50%{box-shadow:-.5em 0 0 var(--theme-color-red);background-color:transparent}}@keyframes loader-12{0%,100%{box-shadow:-.5em 0 0 transparent;background-color:var(--theme-color-red)}50%{box-shadow:-.5em 0 0 var(--theme-color-red);background-color:transparent}}@-webkit-keyframes loader-13{0%,80%,100%{box-shadow:0 1em 0-1em}40%{box-shadow:0 1em 0-.2em}}@keyframes loader-13{0%,80%,100%{box-shadow:0 1em 0-1em}40%{box-shadow:0 1em 0-.2em}}@-webkit-keyframes loader-14{0%{box-shadow:0 2em 0-.2em var(--theme-color-red)}100%{box-shadow:0 1em 0-.2em var(--theme-color-red)}}@keyframes loader-14{0%{box-shadow:0 2em 0-.2em var(--theme-color-red)}100%{box-shadow:0 1em 0-.2em var(--theme-color-red)}}@-webkit-keyframes loader-15{0%,100%{box-shadow:0 0 0 var(--theme-color-red),0 0 0 var(--theme-color-red)}50%{box-shadow:0-.25em 0 var(--theme-color-red),0 .25em 0 var(--theme-color-red)}}@keyframes loader-15{0%,100%{box-shadow:0 0 0 var(--theme-color-red),0 0 0 var(--theme-color-red)}50%{box-shadow:0-.25em 0 var(--theme-color-red),0 .25em 0 var(--theme-color-red)}}@-webkit-keyframes rotate{0%{transform:translate(-50%,-50%) rotateZ(0deg)}100%{transform:translate(-50%,-50%) rotateZ(360deg)}}@keyframes rotate{0%{transform:translate(-50%,-50%) rotateZ(0deg)}100%{transform:translate(-50%,-50%) rotateZ(360deg)}}@-webkit-keyframes rotateccw{0%{transform:translate(-50%,-50%) rotate(0deg)}100%{transform:translate(-50%,-50%) rotate(-360deg)}}@keyframes rotateccw{0%{transform:translate(-50%,-50%) rotate(0deg)}100%{transform:translate(-50%,-50%) rotate(-360deg)}}@-webkit-keyframes spin{0%,100%{box-shadow:.2em 0 0 0 var(--theme-color-red)}12%{box-shadow:.2em .2em 0 0 var(--theme-color-red)}25%{box-shadow:0 .2em 0 0 var(--theme-color-red)}37%{box-shadow:-.2em .2em 0 0 var(--theme-color-red)}50%{box-shadow:-.2em 0 0 0 var(--theme-color-red)}62%{box-shadow:-.2em -.2em 0 0 var(--theme-color-red)}75%{box-shadow:0-.2em 0 0 var(--theme-color-red)}87%{box-shadow:.2em -.2em 0 0 var(--theme-color-red)}}@keyframes spin{0%,100%{box-shadow:.2em 0 0 0 var(--theme-color-red)}12%{box-shadow:.2em .2em 0 0 var(--theme-color-red)}25%{box-shadow:0 .2em 0 0 var(--theme-color-red)}37%{box-shadow:-.2em .2em 0 0 var(--theme-color-red)}50%{box-shadow:-.2em 0 0 0 var(--theme-color-red)}62%{box-shadow:-.2em -.2em 0 0 var(--theme-color-red)}75%{box-shadow:0-.2em 0 0 var(--theme-color-red)}87%{box-shadow:.2em -.2em 0 0 var(--theme-color-red)}}@-webkit-keyframes loader-17{0%{transform:rotateZ(0deg) translate3d(0,0,0)}100%{transform:rotateZ(360deg) translate3d(0,0,0)}}@keyframes loader-17{0%{transform:rotateZ(0deg) translate3d(0,0,0)}100%{transform:rotateZ(360deg) translate3d(0,0,0)}}@-webkit-keyframes loader-18{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes loader-18{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@-webkit-keyframes loader-19{to{transform:rotate(360deg)}}@keyframes loader-19{to{transform:rotate(360deg)}}@-webkit-keyframes loader-20{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes loader-20{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@-webkit-keyframes loader-21{0%{top:0}50%{top:-5px}100%{top:0}}@keyframes loader-21{0%{top:0}50%{top:-5px}100%{top:0}}@-webkit-keyframes loader-22{0%{transform:rotate(-160deg)}100%{transform:rotate(-20deg)}}@keyframes loader-22{0%{transform:rotate(-160deg)}100%{transform:rotate(-20deg)}}@-webkit-keyframes loader-23{0%{box-shadow:inset 0 0 0 var(--theme-color-red)}100%{box-shadow:inset 1em 0 0 var(--theme-color-red)}}@keyframes loader-23{0%{box-shadow:inset 0 0 0 var(--theme-color-red)}100%{box-shadow:inset 1em 0 0 var(--theme-color-red)}}@-webkit-keyframes loader-24{0%{height:0}100%{height:6px}}@keyframes loader-24{0%{height:0}100%{height:6px}}@-webkit-keyframes loader-25-1{0%{box-shadow:inset 0 0 0 0 var(--theme-color-red)}100%{box-shadow:inset 0-1em 0 0 var(--theme-color-red)}}@keyframes loader-25-1{0%{box-shadow:inset 0 0 0 0 var(--theme-color-red)}100%{box-shadow:inset 0-1em 0 0 var(--theme-color-red)}}@-webkit-keyframes loader-25-2{25%{left:calc(100% + .2em);bottom:calc(100% + .2em)}50%{left:calc(100% + .2em);bottom:-.4em}75%{left:-.4em;bottom:-.4em}100%{left:-.4em;bottom:calc(100% + .2em)}}@keyframes loader-25-2{25%{left:calc(100% + .2em);bottom:calc(100% + .2em)}50%{left:calc(100% + .2em);bottom:-.4em}75%{left:-.4em;bottom:-.4em}100%{left:-.4em;bottom:calc(100% + .2em)}}@-webkit-keyframes loader-26{0%{opacity:.1;transform:rotate(0deg) scale(.5)}100%{opacity:1;transform:rotate(360deg) scale(1.2)}}@keyframes loader-26{0%{opacity:.1;transform:rotate(0deg) scale(.5)}100%{opacity:1;transform:rotate(360deg) scale(1.2)}}@-webkit-keyframes loader-27{0%{left:0}100%{left:.5em}}@keyframes loader-27{0%{left:0}100%{left:.5em}}@-webkit-keyframes loader-28{0%,100%{transform:scaleY(1)}10%{transform:scaleY(0)}20%{transform:scaleY(1)}}@keyframes loader-28{0%,100%{transform:scaleY(1)}10%{transform:scaleY(0)}20%{transform:scaleY(1)}}@-webkit-keyframes loader-28{0%,100%{transform:translateX(0)}30%{transform:translateX(-100%)}50%{transform:transalteX(200%)}}@keyframes loader-28{0%,100%{transform:translateX(0)}30%{transform:translateX(-100%)}50%{transform:transalteX(200%)}}@-webkit-keyframes loader-29{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes loader-29{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@media (max-width:1030px){}@media (max-width:1025px){body #theme-content .row{flex-direction:column}body #theme-content .row>div{width:100%;max-width:100%}body #theme-content .row .primary-content{order:1;margin-bottom:20px}body #theme-content .row .secondary-sidebar{order:3;margin:0}.ticker-news-wrap span.icon{display:none}}@media (max-width:940px){.right-sidebar #theme-content .row{flex-direction:column}#theme-content .row .primary-content{order:1;margin-bottom:20px}#theme-content .row .secondary-sidebar{order:3}body.right-sidebar #theme-content .row .primary-content{max-width:100%}.post-title{line-height:var(--post-title-lineheight-tab);letter-spacing:var(--post-title-letterspacing-tab);text-decoration:var(--post-title-textdecoration-tab);text-transform:var(--post-title-texttransform-tab)}body h2.post-title{font-size:var(--post-title-size-tab)}.site-branding .site-title a{font-size:var(--site-title-size-tab);line-height:var(--site-title-lineheight-tab);letter-spacing:var(--site-title-letterspacing-tab)}body.right-sidebar #theme-content .row .secondary-sidebar{margin:0}}@media (max-width:900px){}@media (max-width:768px){.site-header.layout--default .site-branding-section{padding:var(--header-padding-tablet)0}.site-footer .bottom-footer .bottom-inner-wrapper{flex-direction:column}.site-footer .site-info{text-align:center}}@media (max-width:610px){.site-branding .site-title a{font-size:var(--site-title-size-mobile);line-height:var(--site-title-lineheight-mobile);letter-spacing:var(--site-title-letterspacing-mobile)}.post-title{line-height:var(--post-title-lineheight-mobile);letter-spacing:var(--post-title-letterspacing-mobile);text-decoration:var(--post-title-textdecoration-mobile);text-transform:var(--post-title-texttransform-mobile)}body h2.post-title{font-size:var(--post-title-size-mobile)}.site-header.layout--default .site-branding-section{padding:var(--header-padding-smartphone)0}.ticker-news-wrap .newsmatic-ticker-controls{display:none}}@media (max-width:700px){}@media (max-width:500px){}@media (max-width:430px){}.addtoany_content{clear:both;margin:16px auto}.addtoany_list{display:inline;line-height:16px}

/*! This file is auto-generated */

body{--wp--preset--color--black:#000000;--wp--preset--color--cyan-bluish-gray:#abb8c3;--wp--preset--color--white:#ffffff;--wp--preset--color--pale-pink:#f78da7;--wp--preset--color--vivid-red:#cf2e2e;--wp--preset--color--luminous-vivid-orange:#ff6900;--wp--preset--color--luminous-vivid-amber:#fcb900;--wp--preset--color--light-green-cyan:#7bdcb5;--wp--preset--color--vivid-green-cyan:#00d084;--wp--preset--color--pale-cyan-blue:#8ed1fc;--wp--preset--color--vivid-cyan-blue:#0693e3;--wp--preset--color--vivid-purple:#9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple:linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan:linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange:linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red:linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray:linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum:linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple:linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux:linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk:linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean:linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass:linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight:linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small:13px;--wp--preset--font-size--medium:20px;--wp--preset--font-size--large:36px;--wp--preset--font-size--x-large:42px;--wp--preset--spacing--20:0.44rem;--wp--preset--spacing--30:0.67rem;--wp--preset--spacing--40:1rem;--wp--preset--spacing--50:1.5rem;--wp--preset--spacing--60:2.25rem;--wp--preset--spacing--70:3.38rem;--wp--preset--spacing--80:5.06rem;--wp--preset--shadow--natural:6px 6px 9px rgba(0,0,0,0.2);--wp--preset--shadow--deep:12px 12px 50px rgba(0,0,0,0.4);--wp--preset--shadow--sharp:6px 6px 0px rgba(0,0,0,0.2);--wp--preset--shadow--outlined:6px 6px 0px -3px rgba(255,255,255,1),6px 6px rgba(0,0,0,1);--wp--preset--shadow--crisp:6px 6px 0px rgba(0,0,0,1)}:where(.is-layout-flex){gap:0.5em}:where(.is-layout-grid){gap:0.5em}:where(.wp-block-columns.is-layout-flex){gap:2em}:where(.wp-block-columns.is-layout-grid){gap:2em}:where(.wp-block-post-template.is-layout-flex){gap:1.25em}:where(.wp-block-post-template.is-layout-grid){gap:1.25em}:where(.wp-block-post-template.is-layout-flex){gap:1.25em}:where(.wp-block-post-template.is-layout-grid){gap:1.25em}:where(.wp-block-columns.is-layout-flex){gap:2em}:where(.wp-block-columns.is-layout-grid){gap:2em}

body.newsmatic_font_typography{--newsmatic-global-preset-color-1:#64748b}body.newsmatic_font_typography{--newsmatic-global-preset-color-2:#27272a}body.newsmatic_font_typography{--newsmatic-global-preset-color-3:#ef4444}body.newsmatic_font_typography{--newsmatic-global-preset-color-4:#eab308}body.newsmatic_font_typography{--newsmatic-global-preset-color-5:#84cc16}body.newsmatic_font_typography{--newsmatic-global-preset-color-6:#22c55e}body.newsmatic_font_typography{--newsmatic-global-preset-color-7:#06b6d4}body.newsmatic_font_typography{--newsmatic-global-preset-color-8:#0284c7}body.newsmatic_font_typography{--newsmatic-global-preset-color-9:#6366f1}body.newsmatic_font_typography{--newsmatic-global-preset-color-10:#84cc16}body.newsmatic_font_typography{--newsmatic-global-preset-color-11:#a855f7}body.newsmatic_font_typography{--newsmatic-global-preset-color-12:#f43f5e}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-1:linear-gradient(135deg,#485563 10%,#29323c 100%)}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-2:linear-gradient(135deg,#FF512F 10%,#F09819 100%)}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-3:linear-gradient(135deg,#00416A 10%,#E4E5E6 100%)}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-4:linear-gradient(135deg,#CE9FFC 10%,#7367F0 100%)}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-5:linear-gradient(135deg,#90F7EC 10%,#32CCBC 100%)}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-6:linear-gradient(135deg,#81FBB8 10%,#28C76F 100%)}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-7:linear-gradient(135deg,#EB3349 10%,#F45C43 100%)}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-8:linear-gradient(135deg,#FFF720 10%,#3CD500 100%)}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-9:linear-gradient(135deg,#FF96F9 10%,#C32BAC 100%)}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-10:linear-gradient(135deg,#69FF97 10%,#00E4FF 100%)}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-11:linear-gradient(135deg,#3C8CE7 10%,#00EAFF 100%)}body.newsmatic_font_typography{--newsmatic-global-preset-gradient-color-12:linear-gradient(135deg,#FF7AF5 10%,#513162 100%)}body.newsmatic_font_typography{--theme-block-top-border-color:#1b8415}.newsmatic_font_typography{--header-padding:35px}.newsmatic_font_typography{--header-padding-tablet:30px}.newsmatic_font_typography{--header-padding-smartphone:30px}.newsmatic_main_body .site-header.layout--default .top-header{background:#1b8415}.newsmatic_font_typography{--site-title-family:Roboto}.newsmatic_font_typography{--site-title-weight:700}.newsmatic_font_typography{--site-title-texttransform:capitalize}.newsmatic_font_typography{--site-title-textdecoration:none}.newsmatic_font_typography{--site-title-size:45px}.newsmatic_font_typography{--site-title-size-tab:43px}.newsmatic_font_typography{--site-title-size-mobile:40px}.newsmatic_font_typography{--site-title-lineheight:45px}.newsmatic_font_typography{--site-title-lineheight-tab:42px}.newsmatic_font_typography{--site-title-lineheight-mobile:40px}.newsmatic_font_typography{--site-title-letterspacing:0px}.newsmatic_font_typography{--site-title-letterspacing-tab:0px}.newsmatic_font_typography{--site-title-letterspacing-mobile:0px}body .site-branding img.custom-logo{width:230px}@media (max-width:940px){body .site-branding img.custom-logo{width:200px}}@media (max-width:610px){body .site-branding img.custom-logo{width:200px}}.newsmatic_font_typography{--sidebar-toggle-color:#525252}.newsmatic_font_typography{--sidebar-toggle-color-hover:#1B8415}.newsmatic_font_typography{--search-color:#525252}.newsmatic_font_typography{--search-color-hover:#1B8415}.newsmatic_main_body{--site-bk-color:#F0F1F2}.newsmatic_font_typography{--move-to-top-background-color:#1B8415}.newsmatic_font_typography{--move-to-top-background-color-hover:#1B8415}.newsmatic_font_typography{--move-to-top-color:#fff}.newsmatic_font_typography{--move-to-top-color-hover:#fff}@media (max-width:610px){}@media (max-width:610px){}body .site-header.layout--default .menu-section .row{border-top:1px solid #1B8415}body .site-footer.dark_bk{border-top:5px solid #1B8415}.newsmatic_font_typography{--custom-btn-color:#ffffff}.newsmatic_font_typography{--custom-btn-color-hover:#ffffff}body.newsmatic_main_body{--theme-color-red:#08a64c}@media (max-width:769px){}@media (max-width:548px){}@media (max-width:769px){}@media (max-width:548px){}@media (max-width:769px){}@media (max-width:548px){}@media (max-width:769px){}@media (max-width:548px){}@media (max-width:769px){}@media (max-width:548px){}@media (max-width:769px){}@media (max-width:548px){}@media (max-width:769px){}@media (max-width:548px){}@media (max-width:769px){}@media (max-width:548px){}@media (max-width:769px){}@media (max-width:548px){}@media (max-width:769px){}@media (max-width:548px){}@media (max-width:769px){}@media (max-width:548px){}@media (max-width:769px){}@media (max-width:548px){}

.site-title{position:absolute;clip:rect(1px,1px,1px,1px)}.site-description{position:absolute;clip:rect(1px,1px,1px,1px)}

@media screen and (max-width:480px){}

p{text-align:justify}

@keyframes marqueeAnimation-3045996{100%{transform:translateX(-3387.3px)}}

.sf-hidden{display:none!important}

.rll-youtube-player, [data-lazy-src]{display:none !important;}

:root{--wm-toolbar-height:65px}#wm-ipp-base{height:65px;padding:0;margin:0;border:none;background:none transparent}#wm-ipp{z-index:2147483647}#wm-ipp,#wm-ipp *{font-family:Lucida Grande,Helvetica,Arial,sans-serif;font-size:12px;line-height:1.2;letter-spacing:0;width:auto;height:auto;max-width:none;max-height:none;min-width:0!important;min-height:0;outline:none;float:none;text-align:left;border:none;color:#000;text-indent:0;position:initial;background:none}#wm-ipp div,#wm-ipp canvas{display:block}#wm-ipp div,#wm-ipp tr,#wm-ipp td,#wm-ipp a,#wm-ipp form{padding:0;margin:0;border:none;border-radius:0;background-color:transparent;background-image:none;height:auto}#wm-ipp table{border:none;border-collapse:collapse;margin:0;padding:0;width:auto;font-size:inherit}#wm-ipp form input{padding:1px!important;height:auto;display:inline;margin:0;color:#000;background:none #fff;border:1px solid #666}#wm-ipp form input[type=submit]{padding:0 8px!important;margin:1px 0 1px 5px!important;width:auto!important;border:1px solid #000!important;background:#fff!important;color:#000!important}#wm-ipp form input[type=submit]:hover{background:#eee!important;cursor:pointer!important}#wm-ipp form input[type=submit]:active{transform:translateY(1px)}#wm-ipp a{display:inline}#wm-ipp a:hover{text-decoration:underline}#wm-ipp a.wm-btn:hover{text-decoration:none;color:#ff0!important}#wm-ipp a.wm-btn:hover span{color:#ff0!important}#wm-ipp #wm-ipp-inside{margin:0 6px;border:5px solid #000;border-top:none;background-color:rgba(255,255,255,0.9);-moz-box-shadow:1px 1px 4px #333;-webkit-box-shadow:1px 1px 4px #333;box-shadow:1px 1px 4px #333;border-radius:0 0 8px 8px}#wm-ipp #wm-logo{padding:0 10px;vertical-align:middle;min-width:100px;flex:0 0 100px}#wm-ipp .c{padding-left:4px}#wm-ipp .c .u{margin-top:4px!important}#wm-ipp .n{padding:0 0 0 5px!important;vertical-align:bottom}#wm-ipp .n a{text-decoration:none;color:#33f;font-weight:bold}#wm-ipp .n .b{padding:0 6px 0 0!important;text-align:right!important;overflow:visible;white-space:nowrap;color:#99a;vertical-align:middle}#wm-ipp .n .y .b{padding:0 6px 2px 0!important}#wm-ipp .n .c{background:#000;color:#ff0;font-weight:bold;padding:0!important;text-align:center}#wm-ipp.hi .n td.c{color:#ec008c}#wm-ipp .n td.f{padding:0 0 0 6px!important;text-align:left!important;overflow:visible;white-space:nowrap;color:#99a;vertical-align:middle}#wm-ipp .n tr.m td{text-transform:uppercase;white-space:nowrap;padding:2px 0}#wm-ipp .c .s{padding:0 5px 0 0!important;vertical-align:bottom}#wm-ipp #wm-nav-captures{white-space:nowrap}#wm-ipp .c .s a.t{color:#33f;font-weight:bold;line-height:1.8}#wm-ipp .c .s div.r{color:#666;font-size:9px;white-space:nowrap}#wm-ipp .c .k{padding-bottom:1px}#wm-ipp .c .s{padding:0 5px 2px 0!important}#wm-ipp td#displayMonthEl{padding:2px 0!important}#wm-ipp td#displayYearEl{padding:0 0 2px 0!important}div#wm-ipp-sparkline{position:relative;white-space:nowrap;background-color:#fff;cursor:pointer;line-height:0.9}#sparklineImgId,#wm-sparkline-canvas{position:relative;z-index:9012;max-width:none}#wm-ipp-sparkline div.yt{position:absolute;z-index:9010!important;background-color:#ff0!important;top:0}#wm-ipp-sparkline div.mt{position:absolute;z-index:9013!important;background-color:#ec008c!important;top:0}#wm-ipp .r{margin-left:4px}#wm-ipp .r a{color:#33f;border:none;position:relative;background-color:transparent;background-repeat:no-repeat!important;background-position:100% 100%!important;text-decoration:none}#wm-ipp #wm-capinfo{border-radius:0 0 4px 4px}#wm-ipp #wm-capinfo .c-logo{display:block;float:left;margin-right:3px;width:90px;min-height:90px;max-height:290px;border-radius:45px;overflow:hidden;background-position:50%;background-size:auto 90px;box-shadow:0 0 2px 2px rgba(208,208,208,128) inset}#wm-ipp #wm-capinfo .c-logo span{display:inline-block}#wm-ipp #wm-capinfo .c-logo img{height:90px;position:relative;left:-50%}#wm-ipp #wm-capinfo .wm-title{font-size:130%}#wm-ipp #wm-capinfo a.wm-selector{display:inline-block;color:#aaa;text-decoration:none!important;padding:2px 8px}#wm-ipp #wm-capinfo a.wm-selector.selected{background-color:#666}#wm-ipp #wm-capinfo a.wm-selector:hover{color:#fff}#wm-ipp #wm-capinfo.notice-only #wm-capinfo-collected-by,#wm-ipp #wm-capinfo.notice-only #wm-capinfo-timestamps{display:none}#wm-ipp #wm-capinfo #wm-capinfo-notice .wm-capinfo-content{background-color:#ff0;padding:5px;font-size:14px;text-align:center}#wm-ipp #wm-capinfo #wm-capinfo-notice .wm-capinfo-content *{font-size:14px;text-align:center}#wm-ipp #wm-expand{right:1px;bottom:-1px;color:#ffffff;background-color:#666!important;padding:0 5px 0 3px!important;border-radius:3px 3px 0 0!important}#wm-ipp #wm-expand span{color:#ffffff}#wm-ipp #wm-expand #wm-expand-icon{display:inline-block;transition:transform 0.5s;transform-origin:50% 45%}#wm-ipp #wm-expand.wm-open #wm-expand-icon{transform:rotate(180deg)}#wm-ipp #wmtb{text-align:right}#wm-ipp #wmtb #wmtbURL{width:calc(100% - 45px)}#wm-ipp #wm-graph-anchor{border-right:1px solid #ccc}html.wb-highlight{box-shadow:inset 0 0 0 3px #a50e3a!important}.wb-highlight{outline:3px solid #a50e3a!important}#wm-ipp-print{display:none!important}@media (max-width:414px){#wm-ipp .xxs{display:none!important}}@media (min-width:1055px){#wm-ipp #wm-graph-anchor{display:block!important}}@media (max-width:1054px){#wm-ipp #wm-graph-anchor{display:none!important}}@media (max-width:1163px){#wm-logo{display:none!important}}#wm-btns{white-space:nowrap;margin-top:-2px}#wm-btns #wm-save-snapshot-open{margin-right:7px;top:-6px}#wm-btns #wm-sign-in{box-sizing:content-box;display:none;margin-right:7px;top:-8px;border:2px #000 solid;border-radius:14px;padding-right:2px;padding-bottom:2px;width:11px;height:11px}#wm-btns #wm-sign-in>.iconochive-person{font-size:12.5px}#wm-save-snapshot-open>.iconochive-web{color:#000;font-size:160%}#wm-ipp #wm-share{display:flex;align-items:flex-end;justify-content:space-between}#wm-share>#wm-screenshot{display:inline-block;margin-right:3px;visibility:hidden}#wm-screenshot>.iconochive-image{color:#000;font-size:160%}#wm-share>#wm-video{display:inline-block;margin-right:3px;visibility:hidden}#wm-video>.iconochive-movies{color:#000;display:inline-block;font-size:150%;margin-bottom:2px}#wm-btns #wm-save-snapshot-in-progress{display:none;font-size:160%;opacity:0.5;position:relative;margin-right:7px;top:-5px}#wm-btns #wm-save-snapshot-success{display:none;color:green;position:relative;top:-7px}#wm-btns #wm-save-snapshot-fail{display:none;color:red;position:relative;top:-7px}.wm-icon-screen-shot{background:var(--sf-img-0) no-repeat!important;background-size:contain!important;width:22px!important;height:19px!important;display:inline-block}#donato{height:0;margin:0;padding:0;border-bottom:1px solid #999!important}body.wm-modal{height:auto!important;overflow:hidden!important}#donato #donato-base{width:100%;height:100%;margin:0;padding:0;position:absolute;z-index:2147483639}body.wm-modal #donato #donato-base{position:fixed;top:0;left:0;right:0;bottom:0;z-index:2147483640}.wb-autocomplete-suggestions{font-family:Lucida Grande,Helvetica,Arial,sans-serif;font-size:12px;text-align:left;cursor:default;border:1px solid #ccc;border-top:0;background:#fff;box-shadow:-1px 1px 3px rgba(0,0,0,.1);position:absolute;display:none;z-index:2147483647;max-height:254px;overflow:hidden;overflow-y:auto;box-sizing:border-box}.wb-autocomplete-suggestion{position:relative;padding:0 .6em;line-height:23px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:1.02em;color:#333}.wb-autocomplete-suggestion b{font-weight:bold}.wb-autocomplete-suggestion.selected{background:#f0f0f0}

@font-face{font-family:"Iconochive-Regular";src:url(data:font/woff;base64,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)format("woff");font-weight:normal;font-style:normal}[class^="iconochive-"],[class*=" iconochive-"]{font-family:"Iconochive-Regular"!important;speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.iconochive-Uplevel:before{content:"↵"}.iconochive-exit:before{content:"🚣"}.iconochive-beta:before{content:"β"}.iconochive-logo:before{content:"🏛"}.iconochive-audio:before{content:"🕨"}.iconochive-movies:before{content:"🎞"}.iconochive-software:before{content:"💾"}.iconochive-texts:before{content:"🕮"}.iconochive-etree:before{content:"🎤"}.iconochive-image:before{content:"🖼"}.iconochive-web:before{content:"🗔"}.iconochive-collection:before{content:"∑"}.iconochive-folder:before{content:"📂"}.iconochive-data:before{content:"🗃"}.iconochive-tv:before{content:"📺"}.iconochive-article:before{content:"🗏"}.iconochive-question:before{content:"⍰"}.iconochive-question-dark:before{content:"?"}.iconochive-info:before{content:"i"}.iconochive-info-small:before{content:"ⓘ"}.iconochive-comment:before{content:"🗩"}.iconochive-comments:before{content:"🗪"}.iconochive-person:before{content:"👤"}.iconochive-people:before{content:"👥"}.iconochive-eye:before{content:"👁"}.iconochive-rss:before{content:"∞"}.iconochive-time:before{content:"🕑"}.iconochive-quote:before{content:"❝"}.iconochive-disc:before{content:"💿"}.iconochive-tv-commercial:before{content:"💰"}.iconochive-search:before{content:"🔍"}.iconochive-search-star:before{content:"✽"}.iconochive-tiles:before{content:"⊞"}.iconochive-list:before{content:"⇶"}.iconochive-list-bulleted:before{content:"⌗"}.iconochive-latest:before{content:"∈"}.iconochive-left:before{content:"˂"}.iconochive-right:before{content:"˃"}.iconochive-left-solid:before{content:"◂"}.iconochive-right-solid:before{content:"▸"}.iconochive-up-solid:before{content:"▴"}.iconochive-down-solid:before{content:"▾"}.iconochive-dot:before{content:"⏤"}.iconochive-dots:before{content:"▦"}.iconochive-columns:before{content:"▯"}.iconochive-sort:before{content:"⇕"}.iconochive-atoz:before{content:"🔤"}.iconochive-ztoa:before{content:"🔥"}.iconochive-upload:before{content:"📤"}.iconochive-download:before{content:"📥"}.iconochive-favorite:before{content:"★"}.iconochive-heart:before{content:"♥"}.iconochive-play:before{content:"▶"}.iconochive-play-framed:before{content:"🎬"}.iconochive-fullscreen:before{content:"⛶"}.iconochive-mute:before{content:"🔇"}.iconochive-unmute:before{content:"🔊"}.iconochive-share:before{content:"🎁"}.iconochive-edit:before{content:"✎"}.iconochive-reedit:before{content:"✐"}.iconochive-gear:before{content:"⚙"}.iconochive-remove-circle:before{content:"❎"}.iconochive-plus-circle:before{content:"🗖"}.iconochive-minus-circle:before{content:"🗕"}.iconochive-x:before{content:"🗙"}.iconochive-fork:before{content:"⋔"}.iconochive-trash:before{content:"🗑"}.iconochive-warning:before{content:"⚠"}.iconochive-flash:before{content:"🗲"}.iconochive-world:before{content:"🗺"}.iconochive-lock:before{content:"🔒"}.iconochive-unlock:before{content:"🔓"}.iconochive-twitter:before{content:"🐦"}.iconochive-facebook:before{content:"f"}.iconochive-googleplus:before{content:"g"}.iconochive-reddit:before{content:"👽"}.iconochive-tumblr:before{content:"T"}.iconochive-pinterest:before{content:"𝓟"}.iconochive-popcorn:before{content:"💥"}.iconochive-email:before{content:"📧"}.iconochive-embed:before{content:"🔗"}.iconochive-gamepad:before{content:"🕹"}.iconochive-Zoom_In:before{content:"+"}.iconochive-Zoom_Out:before{content:"-"}.iconochive-RSS:before{content:"📨"}.iconochive-Light_Bulb:before{content:"💡"}.iconochive-Add:before{content:"⊕"}.iconochive-Tab_Activity:before{content:"⌘"}.iconochive-Forward:before{content:"⏩"}.iconochive-Backward:before{content:"⏪"}.iconochive-No_Audio:before{content:"🔈"}.iconochive-Pause:before{content:"⏸"}.iconochive-No_Favorite:before{content:"☆"}.iconochive-Unike:before{content:"♡"}.iconochive-Song:before{content:"♫"}.iconochive-No_Flag:before{content:"⚐"}.iconochive-Flag:before{content:"⚑"}.iconochive-Done:before{content:"✓"}.iconochive-Check:before{content:"✔"}.iconochive-Refresh:before{content:"⟳"}.iconochive-Headphones:before{content:"🎧"}.iconochive-Chart:before{content:"📈"}.iconochive-Bookmark:before{content:"📑"}.iconochive-Documents:before{content:"📚"}.iconochive-Newspaper:before{content:"📰"}.iconochive-Podcast:before{content:"📶"}.iconochive-Radio:before{content:"📻"}.iconochive-Cassette:before{content:"📼"}.iconochive-Shuffle:before{content:"🔀"}.iconochive-Loop:before{content:"🔁"}.iconochive-Low_Audio:before{content:"🔉"}.iconochive-First:before{content:"🎖"}.iconochive-Invisible:before{content:"🕶"}.iconochive-Computer:before{content:"🖳"}