Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:网页插件¥js_url¥global_自动展开@base64://Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICDoh6rliqjlsZXlvIAKLy8gQHZlcnNpb24gICAgICAxLjMuNDYKLy8gQG5hbWVzcGFjZSAgICBodHRwczovL2dpdGh1Yi5jb20vQWlyQmFzaFgvQXV0b1VuZm9sZC8KLy8gQGhvbWVwYWdlVVJMICBodHRwczovL2dpdGh1Yi5jb20vQWlyQmFzaFgvVXNlclNjcmlwdAovLyBAYXV0aG9yICAgICAgIGFpcmJhc2gKLy8gQGRlc2NyaXB0aW9uICDoh6rliqjlsZXlvIDmlofmoaMJ6ZqQ6JeP6YOo5YiGO+mVv+acn+e7tOaKpOOAgVBDK+aJi+acuuWFqOW5s+WPsOaUr+aMgTvlhajlubPlj7DmlK/mjIE6Q1NETuOAgWl0MTM1MuOAgee8lueoi+S5i+WutuOAgeeugOS5puOAgeefpeS5juOAgeeZvuWutuWPt+OAgeeZvuW6pui1hOiur+OAgeeZvuW6pue7j+mqjOOAgeeZvuW6puefpemBk+OAgeeZvuW6pui0tOWQp+OAgeeZvuW6puaWsOmXu+OAgeaWsOa1quaWsOmXu+OAgeiFvuiur+aWsOmXu+OAgeaQnOeLkOaWsOmXu+OAgee9keaYk+aWsOmXu+OAgeWHpOWHsOaWsOmXu+OAgea+jua5g+aWsOmXu+OAgeaWsOS6rOaKpeOAgeeOr+eQg+e9keOAgeS6uuawkeaXpeaKpeOAgeS6uuawkee9keOAgeS7iuaXpeWktOadoeOAgeS4gemmmeWbreOAgeWBpeW6t+eVjOOAgTM25rCq44CB5p6c5aOz44CB6JmO5omR44CB6JmO5ZeF44CB5aS05p2h44CBQuermeOAgULnq5nkuJPmoI/jgIFC56uZ56yU6K6w44CB5b6u5Y2a5paH56ug44CB6LGG55Oj5paH56ug44CB6LGG55Oj5bCP57uE44CB5byA5rqQ5Lit5Zu944CB6Zi/6YeM5LqR5byA5Y+R6ICF56S+5Yy644CB6IW+6K6v5LqR5byA5Y+R6ICF56S+5Yy644CB5Y2O5Li65LqR5byA5Y+R6ICF56S+5Yy644CBMzYw5Zu+5Lmm6aaG44CB5aSq5bmz5rSL55S16ISR572R44CB5Lit5YWz5p2R5Zyo57q/44CB5rG96L2m5LmL5a6244CB5ri45L6g572R44CB5ri45rCR5pif56m644CBMzYw6Zeu562U44CB5aSp55y85p+l44CB5aSp5rav56S+5Yy644CB5Lic5pa56LSi5a+M572RCi8vIEBtYXRjaCAgICAgICAgKjovLyouYmxvZy5jc2RuLm5ldC8qCi8vIEBtYXRjaCAgICAgICAgKjovL2Jsb2cuY3Nkbi5uZXQvKgovLyBAbWF0Y2ggICAgICAgICo6Ly9hc2suY3Nkbi5uZXQvcXVlc3Rpb25zLyoKLy8gQG1hdGNoICAgICAgICAqOi8vKi5pdDEzNTIuY29tLyoKLy8gQG1hdGNoICAgICAgICAqOi8vKi5qYjUxLmNjLyoKLy8gQG1hdGNoICAgICAgICAqOi8vKi5qaWFuc2h1LmNvbS8qCi8vIEBtYXRjaCAgICAgICAgKjovLyouemhpaHUuY29tLyoKLy8gQG1hdGNoICAgICAgICAqOi8vamluZ3lhbi5iYWlkdS5jb20vYXJ0aWNsZSoKLy8gQG1hdGNoICAgICAgICAqOi8vemhpZGFvLmJhaWR1LmNvbS9xdWVzdGlvbioKLy8gQG1hdGNoICAgICAgICAqOi8vYmFpa2UuYmFpZHUuY29tL2l0ZW0vKgovLyBAbWF0Y2ggICAgICAgICo6Ly90aWViYS5iYWlkdS5jb20vcCoKLy8gQG1hdGNoICAgICAgICAqOi8vd2suYmFpZHUuY29tL3ZpZXcvKgovLyBAbWF0Y2ggICAgICAgICo6Ly90YW5iaS5iYWlkdS5jb20vaDVhcHB0b3BpYy9icm93c2UvKgovLyBAbWF0Y2ggICAgICAgICo6Ly9iYWlqaWFoYW8uYmFpZHUuY29tL3MqCi8vIEBtYXRjaCAgICAgICAgKjovL21iZC5iYWlkdS5jb20vbmV3c3BhZ2UvZGF0YS8qCi8vIEBtYXRjaCAgICAgICAgKjovL25ld3MuYmFpZHUuY29tL25ld3MqCi8vIEBtYXRjaCAgICAgICAgKjovL20uYmFpZHUuY29tL3NmX2JhaWppYWhhby8qCi8vIEBtYXRjaCAgICAgICAgKjovLyouc2luYS5jbi8qCi8vIEBtYXRjaCAgICAgICAgKjovLzNnLjE2My5jb20vKgovLyBAbWF0Y2ggICAgICAgICo6Ly8qLnNvaHUuY29tL2EvKgovLyBAbWF0Y2ggICAgICAgICo6Ly92aWV3LmluZXdzLnFxLmNvbS8qCi8vIEBtYXRjaCAgICAgICAgKjovLyouaWZlbmcuY29tLyoKLy8gQG1hdGNoICAgICAgICAqOi8vbS50aGVwYXBlci5jbi9uZXdzRGV0YWlsX2ZvcndhcmQqCi8vIEBtYXRjaCAgICAgICAgKjovL20uYmpuZXdzLmNvbS5jbi9kZXRhaWwvKgovLyBAbWF0Y2ggICAgICAgICo6Ly8qLmh1YW5xaXUuY29tL2FydGljbGUvKgovLyBAbWF0Y2ggICAgICAgICo6Ly8zdy5odWFucWl1LmNvbS9hLyoKLy8gQG1hdGNoICAgICAgICAqOi8vd3d3LnRvdXRpYW8uY29tL2FydGljbGUvKgovLyBAbWF0Y2ggICAgICAgICo6Ly93d3cudG91dGlhby5jb20vYW5zd2VyLyoKLy8gQG1hdGNoICAgICAgICAqOi8vM2cuZHh5LmNuLyoKLy8gQG1hdGNoICAgICAgICAqOi8vd3d3LmNuLWhlYWx0aGNhcmUuY29tLyoKLy8gQG1hdGNoICAgICAgICAqOi8vc3BhY2UuYmlsaWJpbGkuY29tLyovZHluYW1pYyoKLy8gQG1hdGNoICAgICAgICAqOi8vdC5iaWxpYmlsaS5jb20qCi8vIEBtYXRjaCAgICAgICAgKjovL3d3dy5iaWxpYmlsaS5jb20vdmlkZW8vKgovLyBAbWF0Y2ggICAgICAgICo6Ly93d3cuYmlsaWJpbGkuY29tL3JlYWQvbW9iaWxlKgovLyBAbWF0Y2ggICAgICAgICo6Ly9tLmJpbGliaWxpLmNvbS9vcHVzLyoKLy8gQG1hdGNoICAgICAgICAqOi8vd2VpYm8uY29tL3R0YXJ0aWNsZS9wL3Nob3c/aWQ9KgovLyBAbWF0Y2ggICAgICAgICo6Ly9jYXJkLndlaWJvLmNvbS9hcnRpY2xlL20vc2hvdy9pZCoKLy8gQG1hdGNoICAgICAgICAqOi8vbS5kb3ViYW4uY29tL21vdmllL3N1YmplY3QvKgovLyBAbWF0Y2ggICAgICAgICo6Ly9tLmRvdWJhbi5jb20vYm9vay9yZXZpZXcvKgovLyBAbWF0Y2ggICAgICAgICo6Ly9tLmRvdWJhbi5jb20vZ3JvdXAvdG9waWMvKgovLyBAbWF0Y2ggICAgICAgICo6Ly93d3cub3NjaGluYS5uZXQvcC8qCi8vIEBtYXRjaCAgICAgICAgKjovL2RldmVsb3Blci5hbGl5dW4uY29tL2FydGljbGUvKgovLyBAbWF0Y2ggICAgICAgICo6Ly9jbG91ZC50ZW5jZW50LmNvbS9kZXZlbG9wZXIvYXJ0aWNsZS8qCi8vIEBtYXRjaCAgICAgICAgKjovL2h1YXdlaWNsb3VkLmNzZG4ubmV0LyoKLy8gQG1hdGNoICAgICAgICAqOi8vd3d3LjM2MGRvYy5jbi9hcnRpY2xlLyoKLy8gQG1hdGNoICAgICAgICAqOi8vd3d3LjM2MGRvYy5jb20vY29udGVudC8qCi8vIEBtYXRjaCAgICAgICAgKjovL2cucGNvbmxpbmUuY29tLmNuL3gvKgovLyBAbWF0Y2ggICAgICAgICo6Ly9tLnpvbC5jb20uY24vYXJ0aWNsZS8qCi8vIEBtYXRjaCAgICAgICAgKjovL20uYXV0b2hvbWUuY29tLmNuL25ld3MvKgovLyBAbWF0Y2ggICAgICAgICo6Ly9jaGVqaWFoYW8ubS5hdXRvaG9tZS5jb20uY24vaW5mby8qCi8vIEBtYXRjaCAgICAgICAgKjovL2NsdWIubS5hdXRvaG9tZS5jb20uY24vYmJzLyoKLy8gQG1hdGNoICAgICAgICAqOi8vM2cuYWxpMjEzLm5ldC8qCi8vIEBtYXRjaCAgICAgICAgKjovL3dhcC5nYW1lcnNreS5jb20vKgovLyBAbWF0Y2ggICAgICAgICo6Ly93ZW5kYS5zby5jb20vcS8qCi8vIEBtYXRjaCAgICAgICAgKjovL20ud2VuZGEuc28uY29tL3EvKgovLyBAbWF0Y2ggICAgICAgICo6Ly9uLnRpYW55YW5jaGEuY29tL2NvbnRlbnQvKgovLyBAbWF0Y2ggICAgICAgICo6Ly9iYnMudGlhbnlhLmNuL20vKgovLyBAbWF0Y2ggICAgICAgICo6Ly93YXAuZWFzdG1vbmV5LmNvbS9hLyoKLy8gQG1hdGNoICAgICAgICAqOi8vbWd1YmEuZWFzdG1vbmV5LmNvbS8qCi8vIEBtYXRjaCAgICAgICAgKjovL2VtY3JlYXRpdmUuZWFzdG1vbmV5LmNvbS8qCi8vIEBtYXRjaCAgICAgICAgKjovL2Jsb2cuZGlkaXNwYWNlLmNvbS8qCi8vIEBtYXRjaCAgICAgICAgKjovLyoud2FuZzEzMTQuY29tL2RvYy8qCi8vIEBtYXRjaCAgICAgICAgKjovLyouazRjaGluYS5jb20vKgovLyBAbWF0Y2ggICAgICAgICo6Ly93d3cudG9mYWNlYm9vay5jb20vKgovLyBAcnVuLWF0ICAgICAgIGRvY3VtZW50LWJvZHkKLy8gQGljb24gICAgICAgICBkYXRhOmltYWdlL3BuZztkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQVlBQUFDcWFYSGVBQUFBQVhOU1IwSUFyczRjNlFBQUEyOUpSRUZVZUY3dG1NdnJUMDhZeDEvZm5WaXdWY3EvZ3FLUWE4Z3RkMEt5azhWdjgxdFpLV0dCeUMyMzNKV0l3cDlpWWNQT1JrVDU2ZmwxcG81cG5qTm41c3ljNmRPWnovSXoxL2RyM3M5ejVwazVKdjZibTdoK0tvRHFnSWtUcUNFd2NRUFVKRmhEb0liQXhBblVFSmk0QWVwWG9JWkFEWUdKRTRnSmdTUEFGK0JGWVhZbmdVL0FzeUg3Q0FVZzRzOEI4NEdOQlNHSStEUEFBbUR6RUFnaEFOcmlEZlM5d08waEp4QXg5aUJ3dmhGdmh1OEhia2JNMWZzejZCSmZBb0pML0NBSWZSelFKWDVNQ0YzaW95SDRBT3dHcmpReGJ4YjVDaXh5MkcwZmNDdkdoajNHdU1TNzl2RWZJSDF2OUpqei95NWRBRFR4L3dDZmdTY2pRZERFL3d0OGRDVGlJQWdhQUUzOE1lQkJJMXl5cnczaE4zQWdvUk8yQTllc2hDY25md0s0Mit4anZRSkJ4ajcwT2NFRlFNUmZ0R3orQzVCY1lHZmFuQkQ2aURmNkRnRlhMYkhpaEczQTR5NElMZ0JiZ0VlT1FXdUExNDcvVndGdnJQL0ZDYks0SzB4OGh5THRtbmo1M0QxM1RDRDlMd01MVzIzZkFjbExuUzdRUW1DRHNwQUdZUmR3SnhFRWlmbXpsZ04vQWlMK25wSjM1SExXVHN5OXhQdVM0QTVsd1ZBSTB0OTJpT2FDVWNYN0FFaDdxQlBFaXZjZFRsZ0h2UEo0MzVYdHUwNythSE10bnhkcSsvWStmUGNBNlJ1YUV6UUlxNEczQ29RaTR2czR3T3gzR2ZBaElERXVCOTQ3bk9DQ0VDcGVFdHNsWU5ESm03MzFjWURwNnhJbGJWcE9XQUc4ODBBb0tqN0VBVWJIV3VDbHd3bGJsZSt0QzRJTWwxSjZhYXVrTlZOS3pNc0oyM2xFMnBQRXZMMzNFQWZFUWxpcHhQNDM2NFkzdXZnWUIvZ2dIRzZ1cmpab0RZTHBKOWZiNHdFbkwvMVBLV3Q1UGpaL044YzRJRFdFTHZHdWhKZE0vQkFIeEVMWUJEeHRuVUZSOFNrQXlCeGFZdHlwV05wQUtDNCtGUUNaWjQ5U0Ftc1FwSXBjQWx4d0JLelkzblczUDkxVXFVRXg3dXM4SkFmWWMyc1FRbDZQTmZIeURwSGx0U2tsZ0M0bjlJRWdvWEhkVWRWbEU1OHlCTnB1a0V1UnF3Ylhib3d5VnVvSHVkNUdsYlErbTNlMXAzYUFXU3VraXRSczczM01HQ0xjak0wRlFPYnY4NTVRVkh5dUVHZ2ZUSmNUcEJhUWJKK2txb3QxUTA0SG1EMXA3d2svU29zZnd3RUdndmFlWU5wN3YrSEZuclEyYmd3SG1MVzE5NFJpNHNkMGdGWTdGQlZmQWtDN2RpZ3V2aFFBQTJGeGlucCthRTRZTXdjTTNXdVc4UlZBRnF3ek5HbDF3QXdkVnBhdFZnZGt3VHBEazFZSHpOQmhaZGxxZFVBV3JETTA2ZVFkOEFjemEvRkIycVdiM0FBQUFBQkpSVTVFcmtKZ2dnPT0KLy8gQGdyYW50ICAgICAgICBub25lCi8vIEBsaWNlbnNlICAgICAgR1BMLTMuMAovLyA9PS9Vc2VyU2NyaXB0PT0KKGZ1bmN0aW9uICgpIHsKCSJ1c2Ugc3RyaWN0IjsKCgkvKioKCSAqIOe9keermeWIl+ihqAoJICogQHR5cGUge25hbWUvdXJsL+aTjeS9nOexu+Wei30KCSAqLwoJY29uc3Qgd2Vic2l0ZXMgPSBbCgkJewoJCQluYW1lOiAiQ1NETiIsCgkJCXVybDogImJsb2cuY3Nkbi5uZXQiLAoJCQloYW5kbGVzOiBbCgkJCQkvL1BD56uvOuiHquWKqOWxleW8gOS7o+eggeWdlwoJCQkJewoJCQkJCXR5cGU6ICJjbGljayIsCgkJCQkJaXRlbTogIi5oaWRlLXByZUNvZGUtYnQiLAoJCQkJfSwKCQkJCS8vUEPnq6865YWz5rOo5Y2a5Li75Y2z5Y+v6ZiF6K+75YWo5paHCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIuaGlkZS1hcnRpY2xlLWJveCIsCgkJCQl9LAoJCQkJLy/kuIvovb3lvLnnqpcKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi53ZWl4aW4tc2hhZG93Ym94IiwKCQkJCX0sCgkJCQkvL+mYheivu+WFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLmJ0bl9tb2QiLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLmFydGljbGVfY29udGVudCIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLnJlYWRhbGxfYm94IiwKCQkJCX0sCgkJCQkvL+WxleW8gOivhOiuugoJCQkJewoJCQkJCXR5cGU6ICJjbGljayIsCgkJCQkJaXRlbTogIi5idG5fY29tbWVudF9yZWFkbW9yZSIsCgkJCQl9LAoJCQldLAoJCX0sCgkJewoJCQluYW1lOiAiQ1NETumXruetlCIsCgkJCXVybDogImFzay5jc2RuLm5ldC9xdWVzdGlvbnMiLAoJCQloYW5kbGVzOiBbCgkJCQkvL1BD56uvOuWxleW8gOWFqOmDqAoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLmV4cGFuZEJ0biIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIubm9ybWFsLXN0eWxlIiwKCQkJCX0sCgkJCQkvL1BD56uvOuafpeeci+etieWkmuWbnuetlAoJCQkJewoJCQkJCXR5cGU6ICJjbGljayIsCgkJCQkJaXRlbTogIi5pY19hc2tfZG93bl9yZWVvdyIsCgkJCQl9LAoJCQldLAoJCX0sCgkJewoJCQluYW1lOiAiaXQxMzUyIiwKCQkJdXJsOiAiaXQxMzUyLmNvbSIsCgkJCWhhbmRsZXM6IFsKCQkJCS8vUEPnq6865p+l55yL5YWo5paHOuino+mZpOWFrOS8l+WPt+mZkOWItgoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLmFyYy1ib2R5LW1haW4tbW9yZSIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIuYXJjLWJvZHktbWFpbiIsCgkJCQl9LAoJCQldLAoJCX0sCgkJewoJCQluYW1lOiAi57yW56iL5LmL5a62IiwKCQkJdXJsOiAiamI1MS5jYyIsCgkJCWhhbmRsZXM6IFsKCQkJCS8vUEPnq6866ZiF6K+75YWo5paHCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIjcmVhZC1tb3JlLXdyYXAiLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiI2NvbnRhaW5lciIsCgkJCQl9LAoJCQkJLy/lsZXlvIAKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLnJlYWQtbW9yZS1oaWRkZW4iLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJbmFtZTogIueugOS5piIsCgkJCXVybDogImppYW5zaHUuY29tL3AiLAoJCQloYW5kbGVzOiBbCgkJCQkvL+S4i+i9veW8ueeqlwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLmRvd25sb2FkLWFwcC1ndWlkYW5jZSIsCgkJCQl9LAoJCQkJLy/pmIXor7vlhajmlocKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5jb2xsYXBzZS10aXBzIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5jb2xsYXBzZS1mcmVlLWNvbnRlbnQiLAoJCQkJfSwKCQkJCS8v5YWB6K645ruR5YqoCgkJCQl7CgkJCQkJdHlwZTogIm92ZXJmbG93IiwKCQkJCQlpdGVtOiAiYm9keSIsCgkJCQl9LAoJCQldLAoJCQkvL+WIoOmZpOmBruaMoeagjwoJCQlmdW46IGZ1bmN0aW9uICgpIHsKCQkJCWxldCBjc3MgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpOwoJCQkJY3NzLmlubmVyVGV4dCA9ICIuY29sbGFwc2UtZnJlZS1jb250ZW50OjphZnRlciB7aGVpZ2h0OiAwcHggIWltcG9ydGFudH0iOwoJCQkJZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChjc3MpOwoJCQl9LAoJCX0sCgkJewoJCQluYW1lOiAi55+l5LmOIiwKCQkJdXJsOiAiemhpaHUuY29tIiwKCQkJaGFuZGxlczogWwoJCQkJLy9QQ+errzrmmL7npLrlhajpg6go6Zeu6aKY5o+P6L+wKQoJCQkJewoJCQkJCXR5cGU6ICJjbGljayIsCgkJCQkJaXRlbTogIi5RdWVzdGlvblJpY2hUZXh0LW1vcmUiLAoJCQkJfSwKCQkJCS8vIFBDK+enu+WKqOeJiDrlsZXlvIDpmIXor7vlhajmlocr5p+l55yL6Zeu6aKY5o+P6L+wCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIuQ29udGVudEl0ZW0tcmlnaHRCdXR0b24iLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLlJpY2hDb250ZW50LWlubmVyIiwKCQkJCX0sCgkJCQkvL+S/ruWkjeS4quWIq+WkseaViOe9keermToKCQkJCXsKCQkJCQl0eXBlOiAiY2xpY2siLAoJCQkJCWl0ZW06ICIuUmljaENvbnRlbnQtaW5uZXIiLAoJCQkJfSwKCQkJXSwKCQkJZnVuOiBmdW5jdGlvbiAoKSB7CgkJCQkvL+enu+WKqOeJiDI66YGu5oyhCgkJCQlsZXQgaXRlbXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuUmljaENvbnRlbnQtaW5uZXIiKTsKCQkJCWZvciAobGV0IGl0ZW0gb2YgaXRlbXMpIHsKCQkJCQlpdGVtLnN0eWxlLnNldFByb3BlcnR5KCItd2Via2l0LW1hc2staW1hZ2UiLCAibm9uZSIsICJpbXBvcnRhbnQiKTsKCQkJCX0KCQkJfSwKCQl9LAoJCXsKCQkJbmFtZTogIueZvuW6pue7j+mqjCIsCgkJCXVybDogImppbmd5YW4uYmFpZHUuY29tL2FydGljbGUiLAoJCQloYW5kbGVzOiBbCgkJCQkvL1BD56uvOuWxleW8gOWGheWuuQoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLnJlYWQtd2hvbGUtbWFzayIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIuZXhwLWNvbnRlbnQtY29udGFpbmVyIiwKCQkJCX0sCgkJCQkvL+WxleW8gOWGheWuuQoJCQkJewoJCQkJCXR5cGU6ICJjbGljayIsCgkJCQkJaXRlbTogIi5tb3JlLWltZy1vcHQiLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJLy9odHRwczovL3poaWRhby5iYWlkdS5jb20vcXVlc3Rpb24vNjQ2MzgyNTc3NzI1ODk3MjA1Lmh0bWwKCQkJLy9odHRwczovL3poaWRhby5iYWlkdS5jb20vcXVlc3Rpb24vNDIyODE4ODQ2CgkJCW5hbWU6ICLnmb7luqbnn6XpgZMiLAoJCQl1cmw6ICJ6aGlkYW8uYmFpZHUuY29tL3F1ZXN0aW9uIiwKCQkJaGFuZGxlczogWwoJCQkJLy/lsZXlvIDliankvZkKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi53LWRldGFpbC1kaXNwbGF5LWJ0biIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIudy1kZXRhaWwtY29udGFpbmVyIiwKCQkJCX0sCgkJCQkvL1BD56uvOuWxleW8gOWFqOmDqCgxKQoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLndndC1iZXN0LW1hc2siLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLmJlc3QtdGV4dCIsCgkJCQl9LAoJCQkJLy9QQ+errzrlsZXlvIDlhajpg6goMikKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi53Z3QtYW5zd2Vycy1tYXNrIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5hbnN3ZXItdGV4dCIsCgkJCQl9LAoJCQkJLy9QQ+errzrmm7TlpJrlm57nrZQxCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIjc2hvdy1oaWRlLWNvbnRhaW5lciIsCgkJCQl9LAoJCQkJLy9QQ+errzrmm7TlpJrlm57nrZQyCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIuc2hvdy1hbnN3ZXItZGlzcHV0ZSIsCgkJCQl9LAoJCQldLAoJCQlmdW46IGZ1bmN0aW9uICgpIHsKCQkJCWxldCBpdGVtcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5hbnN3ZXIiKTsKCQkJCWlmIChpdGVtcykgewoJCQkJCWZvciAobGV0IGl0ZW0gb2YgaXRlbXMpIHsKCQkJCQkJaXRlbS5jbGFzc0xpc3QucmVtb3ZlKCJhbnN3ZXItaGlkZSIpOwoJCQkJCQlpdGVtLmNsYXNzTGlzdC5yZW1vdmUoImFuc3dlci1kaXNwdXRlLWhpZGUiKTsKCQkJCQl9CgkJCQl9CgkJCX0sCgkJfSwKCQl7CgkJCW5hbWU6ICLnmb7luqbnmb7np5EiLAoJCQl1cmw6ICJiYWlrZS5iYWlkdS5jb20vaXRlbSIsCgkJCWhhbmRsZXM6IFsKCQkJCS8v5bGV5byA5YWo6YOoCgkJCQl7CgkJCQkJdHlwZTogImNsaWNrIiwKCQkJCQlpdGVtOiAiLnRhYmxlLXNob3ctYWxsIiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLnmb7luqbotLTlkKciLAoJCQl1cmw6ICJ0aWViYS5iYWlkdS5jb20vcCIsCgkJCWhhbmRsZXM6IFsKCQkJCS8vUEPnq6866Ieq5Yqo5bGV5byA5Zu+54mHCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIucmVwbGFjZV90aXAiLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLnJlcGxhY2VfZGl2IiwKCQkJCX0sCgkJCQkvL1BD56uvOuiHquWKqOWxleW8gOWbnuWkjQoJCQkJewoJCQkJCXR5cGU6ICJjbGljayIsCgkJCQkJaXRlbTogIi5qX2x6bF9tIiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCS8vaHR0cHM6Ly93ay5iYWlkdS5jb20vdmlldy9hODc4NDRkYTdmMTkyMjc5MTY4OGU4NjIKCQkJbmFtZTogIueZvuW6puaWh+W6k+aJi+acuueJiDEiLAoJCQl1cmw6ICJ3ay5iYWlkdS5jb20vdmlldyIsCgkJCWhhbmRsZXM6IFsKCQkJCS8v6Ieq5Yqo5bGV5byACgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5yZWFkZXItY29weSIsCgkJCQl9LAoJCQkJewoJCQkJCS8v6YCP5piO6YGu5oyhCgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIuYmx1ci1iZyIsCgkJCQl9LAoJCQldLAoJCQlmdW46IGZ1bmN0aW9uICgpIHsKCQkJCS8v5bel5YW355u45YWz5YaF5a655LiL56e7LOmBv+WFjemBruaMoQoJCQkJbGV0IGl0ZW0gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuZm9sZC1wYWdlciIpOwoJCQkJaWYgKGl0ZW0pIHsKCQkJCQlpdGVtLnN0eWxlLnNldFByb3BlcnR5KCJtYXJnaW4tdG9wIiwgIjBweCIpOwoJCQkJfQoJCQl9LAoJCX0sCgkJewoJCQkvL2h0dHBzOi8vdGFuYmkuYmFpZHUuY29tL2g1YXBwdG9waWMvYnJvd3NlL3dranVtcGRvd25sb2FkP2Zyb21LZXk9MTAyODIwMHgmZG9jSWQ9MGUwN2E3ZjFiYTBkNGE3MzAyNzYzYWVhCgkJCW5hbWU6ICLnmb7luqbmloflupPmiYvmnLrniYgyIiwKCQkJdXJsOiAidGFuYmkuYmFpZHUuY29tL2g1YXBwdG9waWMvYnJvd3NlLyIsCgkJCWhhbmRsZXM6IFsKCQkJCXsKCQkJCQkvL+S4i+i9vWFwcCznu6fnu63pmIXor7sKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5jb250aW51ZS1yZWFkLXdyYXAiLAoJCQkJfSwKCQkJXSwKCQkJZnVuOiBmdW5jdGlvbiAoKSB7CgkJCQlsZXQgaXRlbSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNyZWFkLXZpZXciKTsKCQkJCWl0ZW0uc2V0QXR0cmlidXRlKCJzY3JvbGxpbmciLCAieWVzIik7CgkJCX0sCgkJfSwKCQl7CgkJCW5hbWU6ICLnmb7lrrblj7ciLAoJCQl1cmw6ICJiYWlqaWFoYW8uYmFpZHUuY29tL3MiLAoJCQloYW5kbGVzOiBbCgkJCQkvL+mYheivu+WFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLm9QYWRkaW5nIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5tYWluQ29udGVudCIsCgkJCQl9LAoJCQldLAoJCX0sCgkJewoJCQluYW1lOiAi55m+5bqmYXBw5paw6Ze7IiwKCQkJdXJsOiAibWJkLmJhaWR1LmNvbS9uZXdzcGFnZS9kYXRhIiwKCQkJaGFuZGxlczogWwoJCQkJLy/nsbvkvLzkuo7nmb7lrrYKCQkJCS8v6ZiF6K+75YWo5paHCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIuaGVpZ2h0LWZvbGQiLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLmR5bmFtaWMtaXRlbSIsCgkJCQl9LAoKCQkJCS8v57G75Ly85LqO55m+5bqmCgkJCQkvL+mYheivu+WFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLnBhY2t1cEJ1dHRvbiIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIubWFpbkNvbnRlbnQiLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJbmFtZTogIueZvuW6pui1hOiuryIsCgkJCXVybDogIm0uYmFpZHUuY29tL3NmX2JhaWppYWhhbyIsCgkJCWhhbmRsZXM6IFsKCQkJCS8v5bGV5byA5YWo5paHCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIub1BhZGRpbmciLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLm1haW5Db250ZW50IiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLnmb7luqbmlrDpl7siLAoJCQl1cmw6ICJuZXdzLmJhaWR1LmNvbS9uZXdzIy9kZXRhaWwiLAoJCQloYW5kbGVzOiBbCgkJCQkvL+mYheivu+WFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLnNob3ctbW9yZS1idG4tY29udGFpbmVyIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIuc2hvdy1tb3JlLWVuZCIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIuZGV0YWlsLWNvbnRlbnQtbWFpbiIsCgkJCQl9LAoJCQldLAoJCX0sCgkJewoJCQluYW1lOiAi5paw5rWq5paw6Ze7IiwKCQkJdXJsOiAic2luYS5jbiIsCgkJCWhhbmRsZXM6IFsKCQkJCS8v5bGV5byACgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIubG9va19tb3JlIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5zX2NhcmQiLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJbmFtZTogIue9keaYk+aWsOmXuyIsCgkJCXVybDogIjNnLjE2My5jb20iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+WxleW8gAoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLnNob3dfYXJ0aWNsZSIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICJhcnRpY2xlIiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLmkJzni5DmlrDpl7siLAoJCQl1cmw6ICJzb2h1LmNvbS9hIiwKCQkJaGFuZGxlczogWwoJCQkJLy/lsZXlvIAKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5sb29rYWxsLWJveCIsCgkJCQl9LAoJCQldLAoJCQlmdW46IGZ1bmN0aW9uICgpIHsKCQkJCWxldCBpdGVtID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmhpZGRlbi1jb250ZW50Iik7CgkJCQkvL+enu+WKqOeJiAoJCQkJaXRlbS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRlIik7CgkJCQkvL3Bj54mICgkJCQlpdGVtLmNsYXNzTGlzdC5yZW1vdmUoImNvbnRyb2wtaGlkZSIpOwoJCQl9LAoJCX0sCgkJewoJCQluYW1lOiAi6IW+6K6v5paw6Ze7IiwKCQkJdXJsOiAidmlldy5pbmV3cy5xcS5jb20vIiwKCQkJaGFuZGxlczogWwoJCQkJLy/ngrnlh7vlsZXlvIDlhajmlocKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIltjbGFzc149c2hvdy1tb3JlX291dGVyX19dIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICJbY2xhc3NePXNob3ctbW9yZS1hcnRpY2xlX2NvdmVyX19dIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIltjbGFzc149c2hvdy1tb3JlX2hlaWdodC1ub3QtZnVsbF9fXSIsCgkJCQl9LAoJCQldLAoJCX0sCgkJewoJCQluYW1lOiAi5Yek5Yew5paw6Ze7IiwKCQkJdXJsOiAiaWZlbmcuY29tLyIsCgkJCWhhbmRsZXM6IFsKCQkJCS8v54K55Ye75p+l55yL5a6M5pW05YaF5a65KOaIv+WtkCkKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5zaG93YWxsIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5hcnRpY2xlIiwKCQkJCX0sCgkJCQkvL+eCueWHu+WxleW8gOWFqOaWhyjotYTorq8pCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICJbY2xhc3NePXRpcF0iLAoJCQkJfSwKCQkJCS8v5bGV5byA5YWo5paHKOaxvei9pikKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIltjbGFzc149bW9yZV0iLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiW2NsYXNzXj1tYWluX2NvbnRlbnRdIiwKCQkJCX0sCgkJCQkvL+WxleW8gCjotKLnu4/op4bpopHku4vnu40pCgkJCQl7CgkJCQkJdHlwZTogImNsaWNrIiwKCQkJCQlpdGVtOiAiW2NsYXNzXj12aWRlb0JyZWZUZXh0QnRuLV0iLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJbmFtZTogIua+jua5g+aWsOmXuyIsCgkJCXVybDogIm0udGhlcGFwZXIuY24vbmV3c0RldGFpbF9mb3J3YXJkIiwKCQkJaGFuZGxlczogWwoJCQkJLy/lsZXlvIDlhajmlocKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIiNjbGlja0Zvck1vcmUiLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLm5ld3NkZXRhaWxfYm9keSIsCgkJCQl9LAoJCQldLAoJCX0sCgkJewoJCQluYW1lOiAi5paw5Lqs5oqlIiwKCQkJdXJsOiAibS5iam5ld3MuY29tLmNuL2RldGFpbC8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+WxleW8gOWFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLnNoYWRlIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5hcnRpY2xlIiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLnjq/nkIPnvZExIiwKCQkJdXJsOiAiaHVhbnFpdS5jb20vYXJ0aWNsZS8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+WxleW8gOWFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJjbGljayIsCgkJCQkJaXRlbTogIi51bmZvbGQtYnRuIiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLnjq/nkIPnvZEyIiwKCQkJdXJsOiAiM3cuaHVhbnFpdS5jb20vYS8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+WxleW8gOWFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJjbGljayIsCgkJCQkJaXRlbTogIiNtb3JlIiwKCQkJCX0sCgkJCV0sCgkJfSwKICAgICAgICB7CiAgICAgICAgICAgIG5hbWU6ICLku4rml6XlpLTmnaEiLAogICAgICAgICAgICB1cmw6ICJ3d3cudG91dGlhby5jb20vYXJ0aWNsZS8iLAogICAgICAgICAgICBoYW5kbGVzOiBbCiAgICAgICAgICAgICAgICAvL1BD56uvOueCueWHu+WxleW8gOWJqeS9meWGheWuuQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHR5cGU6ICJkaXNwbGF5IiwKICAgICAgICAgICAgICAgICAgICBpdGVtOiAiLmV4cGFuZC1idXR0b24td3JhcHBlciIsCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHR5cGU6ICJoZWlnaHQiLAogICAgICAgICAgICAgICAgICAgIGl0ZW06ICIuZXhwYW5kLWNvbnRhaW5lciIsCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICBdLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgICBuYW1lOiAi5LuK5pel5aS05p2h6Zeu562UIiwKICAgICAgICAgICAgdXJsOiAid3d3LnRvdXRpYW8uY29tL2Fuc3dlci8iLAogICAgICAgICAgICBoYW5kbGVzOiBbCiAgICAgICAgICAgICAgICAvL1BD56uvOueCueWHu+WxleW8gOWJqeS9meWGheWuuQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHR5cGU6ICJkaXNwbGF5IiwKICAgICAgICAgICAgICAgICAgICBpdGVtOiAiLmV4cGFuZC1idXR0b24td3JhcHBlciIsCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHR5cGU6ICJoZWlnaHQiLAogICAgICAgICAgICAgICAgICAgIGl0ZW06ICIuZXhwYW5kLWNvbnRhaW5lciIsCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICBdLAogICAgICAgIH0sCgkJewoJCQluYW1lOiAi5LiB6aaZ5ZutIiwKCQkJdXJsOiAiM2cuZHh5LmNuIiwKCQkJaGFuZGxlczogWwoJCQkJLy/mmL7npLrnrKzkuIDmnaHor4TorroKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLmRpY3Vzc2lvbi10ZXh0IiwKCQkJCX0sCgkJCQkvL+WxleW8gOmYheivu+WFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiW2NsYXNzXj1jb250ZW50V3JhcEJvdHRvbV9fX10iLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiW2NsYXNzXj1jb250ZW50V3JhcF9fX10iLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJbmFtZTogIuWBpeW6t+eVjCIsCgkJCXVybDogInd3dy5jbi1oZWFsdGhjYXJlLmNvbS8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+mYheivu+WFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLm1hc2siLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiI2FydGJvZHkiLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJbmFtZTogIkLnq5nliqjmgIEiLAoJCQl1cmw6ICJzcGFjZS5iaWxpYmlsaS5jb20vIiwKCQkJaGFuZGxlczogW10sCgkJCWZ1bjogZnVuY3Rpb24gKCkgewoJCQkJLy9QQ+err+WxleW8gOeugOS7iwoJCQkJbGV0IGl0ZW0xcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5mb2xkZWQiKTsKCQkJCWZvciAobGV0IGl0ZW0gb2YgaXRlbTFzKSB7CgkJCQkJaXRlbS5jbGFzc05hbWUgPSAiYmlsaS1yaWNoLXRleHRfX2NvbnRlbnQiOwoJCQkJfQoJCQkJbGV0IGl0ZW0ycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5iaWxpLXJpY2gtdGV4dF9fYWN0aW9uIik7CgkJCQlmb3IgKGxldCBpdGVtMiBvZiBpdGVtMnMpIHsKCQkJCQlpdGVtMi5pbm5lclRleHQgPSAi5pS26LW3IjsKCQkJCX0KCQkJfSwKCQl9LAoJCS8vIHsKCQkvLyAJbmFtZTogIkLnq5nop4bpopEiLAoJCS8vIAl1cmw6ICJ3d3cuYmlsaWJpbGkuY29tL3ZpZGVvLyIsCgkJLy8gCWhhbmRsZXM6IFtdLAoJCS8vIAlmdW46IGZ1bmN0aW9uICgpIHsKCQkvLyAJCS8vUEPnq6/lsZXlvIDnroDku4sKCQkvLyAJCWlmIChkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID09ICJhdXRvIikgewoJCS8vIAkJCWxldCBpdGVtMSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5kZXNjLWluZm8iKTsKCQkvLyAJCQlpdGVtMS5zdHlsZS5oZWlnaHQgPSAidW5zZXQiOwoJCS8vIAkJCWxldCBpdGVtMiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi50b2dnbGUtYnRuIik7CgkJLy8gCQkJaXRlbTIuc2V0QXR0cmlidXRlKCJyZXBvcnQtaWQiLCAiYWJzdHJhY3RfdW5zcHJlYWQiKTsKCQkvLyAJCQlsZXQgaXRlbTMgPSBpdGVtMi5xdWVyeVNlbGVjdG9yKCJzcGFuIik7CgkJLy8gCQkJaXRlbTMuaW5uZXJUZXh0ID0gIuaUtui1tyI7CgkJLy8gCQkJY2xlYXJJbnRlcnZhbChpbnRlcnZhbCk7CgkJLy8gCQl9CgkJLy8gCX0sCgkJLy8gfSwKCQl7CgkJCW5hbWU6ICJC56uZ5LiT5qCPIiwKCQkJdXJsOiAid3d3LmJpbGliaWxpLmNvbS9yZWFkL21vYmlsZSIsCgkJCWhhbmRsZXM6IFsKCQkJCS8v5bGV5byA6ZiF6K+75YWo5paHCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIucmVhZC1tb3JlIiwKCQkJCX0sCgkJCV0sCgkJCWZ1bjogZnVuY3Rpb24gKCkgewoJCQkJbGV0IGl0ZW0gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIucmVhZC1hcnRpY2xlLWJveCIpOwoJCQkJaXRlbS5jbGFzc0xpc3QucmVtb3ZlKCJsaW1pdCIpOwoJCQkJaXRlbS5jbGFzc0xpc3QucmVtb3ZlKCJzaG93LWxhdGVyIik7CgkJCX0sCgkJfSwKCQl7CgkJCW5hbWU6ICJC56uZ56yU6K6wIiwKCQkJdXJsOiAibS5iaWxpYmlsaS5jb20vb3B1cy8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+WxleW8gOmYheivu+WFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLm9wdXMtcmVhZC1tb3JlIiwKCQkJCX0sCgkJCV0sCgkJCWZ1bjogZnVuY3Rpb24gKCkgewoJCQkJbGV0IGl0ZW0gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIub3B1cy1tb2R1bGUtY29udGVudCIpOwoJCQkJaXRlbS5jbGFzc0xpc3QucmVtb3ZlKCJsaW1pdCIpOwoJCQl9LAoJCX0sCgkJewoJCQluYW1lOiAi5b6u5Y2a5paH56ugUEPniYgiLAoJCQl1cmw6ICJ3ZWliby5jb20vdHRhcnRpY2xlL3Avc2hvdz9pZD0iLAoJCQloYW5kbGVzOiBbCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5XQl9lZGl0b3JfaWZyYW1lX25ldyIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLmJ0bl9saW5lIiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLlvq7ljZrmlofnq6Dnp7vliqjniYgiLAoJCQl1cmw6ICJjYXJkLndlaWJvLmNvbS9hcnRpY2xlL20vc2hvdy9pZCIsCgkJCWhhbmRsZXM6IFsKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLmYtYXJ0IiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIuZi1hcnQtb3B0IiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLosYbnk6PnlLXlvbEiLAoJCQl1cmw6ICJtLmRvdWJhbi5jb20vbW92aWUvc3ViamVjdC8iLAoJCQloYW5kbGVzOiBbXSwKCQkJZnVuOiBmdW5jdGlvbiAoKSB7CgkJCQkvL+WxleW8gCjnroDku4spCgkJCQlsZXQgaXRlbTEgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuc3ViamVjdC1pbnRybyBwIik7CgkJCQlsZXQgc3RyMSA9IGl0ZW0xLmdldEF0dHJpYnV0ZSgiZGF0YS1jb250ZW50Iik7CgkJCQlpZiAoc3RyMSkgewoJCQkJCWl0ZW0xLmlubmVyVGV4dCA9IHN0cjE7CgkJCQkJY2xlYXJJbnRlcnZhbChpbnRlcnZhbCk7CgkJCQl9CgkJCQkvL+WxleW8gCjor4TorropCgkJCQlvbmxvYWQgPSBmdW5jdGlvbiAoKSB7CgkJCQkJbGV0IGl0ZW1zMiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5MaW5lc0VsbGlwc2lzLXJlYWRtb3JlIik7CgkJCQkJZm9yIChsZXQgaXRlbTIgb2YgaXRlbXMyKSB7CgkJCQkJCWl0ZW0yLmNsaWNrKCk7CgkJCQkJfQoJCQkJfTsKCQkJfSwKCQl9LAoJCXsKCQkJbmFtZTogIuixhueTo+aWh+eroCIsCgkJCXVybDogIm0uZG91YmFuLmNvbS9ib29rL3Jldmlldy8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+eCueWHu+WxleW8gOWFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLm9pYS1yZWFkYWxsIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5ub3RlLWNvbnRlbnQiLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJbmFtZTogIuixhueTo+Wwj+e7hCIsCgkJCXVybDogIm0uZG91YmFuLmNvbS9ncm91cC90b3BpYy8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+eCueWHu+WxleW8gOWFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLm9pYS1yZWFkYWxsIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5ub3RlLWNvbnRlbnQiLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJLy9odHRwczovL3d3dy5vc2NoaW5hLm5ldC9wL3htaW5kCgkJCW5hbWU6ICLlvIDmupDkuK3lm70iLAoJCQl1cmw6ICJ3d3cub3NjaGluYS5uZXQvcC8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+WxleW8gOmYheivu+WFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLmNvbGxhcHNlLWJhciIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIuYXJ0aWNsZS1kZXRhaWwiLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJbmFtZTogIumYv+mHjOS6keW8gOWPkeiAheekvuWMuiIsCgkJCXVybDogImRldmVsb3Blci5hbGl5dW4uY29tL2FydGljbGUiLAoJCQloYW5kbGVzOiBbCgkJCQkvL+WFs+azqAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIuYXJ0aWNsZS1oaWRlLWNvbnRlbnQiLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5hcnRpY2xlLWhpZGUtYm94IiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLohb7orq/kupHlvIDlj5HogIXnpL7ljLoiLAoJCQl1cmw6ICJjbG91ZC50ZW5jZW50LmNvbS9kZXZlbG9wZXIvYXJ0aWNsZS8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+WxleW8gOmYheivu+WFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIuY29tLW1hcmtkb3duLWNvbGxwYXNlLW1haW4iLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5jb20tbWFya2Rvd24tY29sbHBhc2UtdG9nZ2xlIiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLljY7kuLrkupHlvIDlj5HogIXnpL7ljLoiLAoJCQl1cmw6ICJodWF3ZWljbG91ZC5jc2RuLm5ldC8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+WxleW8gOmYheivu+WFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIudXNlci1hcnRpY2xlIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIuYXJ0aWNsZS1zaG93LW1vcmUiLAoJCQkJfSwKCQkJXSwKCQl9LAoJCS8vaHR0cDovL3d3dy4zNjBkb2MuY24vYXJ0aWNsZS82MDI0NDMzN185MjQ4NjU4MjEuaHRtbAoJCXsKCQkJbmFtZTogIjM2MOWbvuS5pummhuaJi+acuueJiCIsCgkJCXVybDogInd3dy4zNjBkb2MuY24vYXJ0aWNsZS8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+enu+WKqOeJiDrlsZXlvIDliankvZnlhoXlrrkKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5hcnRpY2xlX3Nob3dhbGwiLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLmFydGljbGUiLAoJCQkJfSwKCQkJXSwKCQl9LAoJCS8vaHR0cDovL3d3dy4zNjBkb2MuY29tL2NvbnRlbnQvMjAvMDcxNy8xNS82MDI0NDMzN185MjQ4NjU4MjEuc2h0bWwKCQl7CgkJCW5hbWU6ICIzNjDlm77kuabppoZQQ+eJiCIsCgkJCXVybDogInd3dy4zNjBkb2MuY29tL2NvbnRlbnQvIiwKCQkJaGFuZGxlczogWwoJCQkJLy/lsZXlvIAKCQkJCS8vIHsKCQkJCS8vIAl0eXBlOiAiZGlzcGxheSIsCgkJCQkvLyAJaXRlbTogIi5hcnRpY2xlX3Nob3dhbGwiLAoJCQkJLy8gfSwKCQkJXSwKCQkJZnVuOiBmdW5jdGlvbiAoKSB7CgkJCQlsZXQgaXRlbSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImJvZHkiKTsKCQkJCWl0ZW0uY2xhc3NMaXN0LnJlbW92ZSgiYXJ0aWNsZU1heEgiKTsKCQkJfSwKCQl9LAoJCXsKCQkJLy9odHRwczovL2cucGNvbmxpbmUuY29tLmNuL3gvMTUwNC8xNTA0MzE2Ny5odG1sCgkJCW5hbWU6ICLlpKrlubPmtIvnlLXohJHnvZEiLAoJCQl1cmw6ICJnLnBjb25saW5lLmNvbS5jbi94LyIsCgkJCWhhbmRsZXM6IFsKCQkJCS8v5bGV5byA5YWo5paHCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIuc2hvd19hcnRpY2xlIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5hcnQtY29udGVudCIsCgkJCQl9LAoJCQldLAoJCX0sCgkJewoJCQkvL2h0dHBzOi8vbS56b2wuY29tLmNuL2FydGljbGUvNzkzNDcyNi5odG1sCgkJCW5hbWU6ICLkuK3lhbPmnZHlnKjnur8iLAoJCQl1cmw6ICJtLnpvbC5jb20uY24vYXJ0aWNsZS8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+WxleW8gOWFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLnVuZm9sZC1hcnRpY2xlLWJ0biIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIuYXJ0aWNsZS1jb250ZW50IiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLmsb3ovabkuYvlrrY65paw6Ze7IiwKCQkJdXJsOiAibS5hdXRvaG9tZS5jb20uY24vbmV3cy8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+eCueWHu+WxleW8gOWJqeS9memDqOWIhgoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiI2NvbnRpbnVlX3JlYWRpbmciLAoJCQkJfSwKCQkJXSwKCQkJZnVuOiBmdW5jdGlvbiAoKSB7CgkJCQkvL+WIoOmZpGNsYXNzCgkJCQlsZXQgaXRlbXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIjY29udGVudCAuZm4taGlkZSIpOwoJCQkJZm9yIChsZXQgaXRlbSBvZiBpdGVtcykgewoJCQkJCWl0ZW0uY2xhc3NMaXN0LnJlbW92ZSgiZm4taGlkZSIpOwoJCQkJfQoJCQl9LAoJCX0sCgkJewoJCQluYW1lOiAi5rG96L2m5LmL5a62Oui9puWutuWPtyIsCgkJCXVybDogImNoZWppYWhhby5tLmF1dG9ob21lLmNvbS5jbi9pbmZvLyIsCgkJCWhhbmRsZXM6IFsKCQkJCS8v54K55Ye75bGV5byA5Ymp5L2Z6YOo5YiGCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIjY29udGludWVfcmVhZGluZ19uZXciLAoJCQkJfSwKCQkJXSwKCQkJZnVuOiBmdW5jdGlvbiAoKSB7CgkJCQkvL+WIoOmZpGNsYXNzCgkJCQlsZXQgaXRlbXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIucGdjLWRldGFpbHMgLmZuLWhpZGUiKTsKCQkJCWZvciAobGV0IGl0ZW0gb2YgaXRlbXMpIHsKCQkJCQlpdGVtLmNsYXNzTGlzdC5yZW1vdmUoImZuLWhpZGUiKTsKCQkJCX0KCQkJfSwKCQl9LAoJCXsKCQkJbmFtZTogIuaxvei9puS5i+WutjrorrrlnZsiLAoJCQl1cmw6ICJjbHViLm0uYXV0b2hvbWUuY29tLmNuL2Jicy8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+eCueWHu+WxleW8gOWJqeS9memDqOWIhgoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiI2NvbnRpbnVlX3JlYWRpbmciLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiI3RvcGljQ29udGVudFNlY3Rpb24iLAoJCQkJfSwKCQkJXSwKCQkJZnVuOiBmdW5jdGlvbiAoKSB7CgkJCQkvL+WIoOmZpGNsYXNzCgkJCQlsZXQgaXRlbXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIjdG9waWNDb250ZW50U2VjdGlvbiAuZm4taGlkZSIpOwoJCQkJZm9yIChsZXQgaXRlbSBvZiBpdGVtcykgewoJCQkJCWl0ZW0uY2xhc3NMaXN0LnJlbW92ZSgiZm4taGlkZSIpOwoJCQkJfQoJCQl9LAoJCX0sCgkJewoJCQluYW1lOiAi5ri45L6g572RIiwKCQkJdXJsOiAiM2cuYWxpMjEzLm5ldCIsCgkJCWhhbmRsZXM6IFsKCQkJCS8v6ZiF6K+75YWo5paHCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIucmVhZC1hbGwtY29uIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIucmVhZC1hbGwtY29uMiIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIuZGV0YWlsLWNvbnRlbnQiLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJbmFtZTogIua4uOawkeaYn+epuiIsCgkJCXVybDogIndhcC5nYW1lcnNreS5jb20vIiwKCQkJaGFuZGxlczogWwoJCQkJLy/lsZXlvIDlhajmlocKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5nc0FyZWFDb250ZXh0T3BlbiIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIjZ3NBcmVhQ29udGV4dCIsCgkJCQl9LAoJCQldLAoJCX0sCgkJewoJCQluYW1lOiAiMzYw5paH5qGjIiwKCQkJdXJsOiAid2VuZGEuc28uY29tL3EvIiwKCQkJaGFuZGxlczogWwoJCQkJLy9QQ+errzrlsZXlvIDpl67nrZQKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5hbnN3ZXItcGFydF9faGFzLWZvbGRlcl9fYnRuIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5hbnN3ZXItcGFydF9faGFzLWZvbGRlciIsCgkJCQl9LAoJCQkJLy9QQ+errzrmm7TlpJrlm57nrZQKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5qcy11bmZvbGQtcGFnZSIsCgkJCQl9LAoJCQkJLy/lsZXlvIDlrozmlbTnrZTmoYgKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5vdmVyZmxvdy1jb3ZlciIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIubWF4LWhlaWdodCIsCgkJCQl9LAoJCQkJLy/mm7TlpJrlm57nrZQKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5qcy1yZXN0LWljb24iLAoJCQkJfSwKCQkJXSwKCQkJZnVuOiBmdW5jdGlvbiAoKSB7CgkJCQkvL1BD56uvOuabtOWkmuWbnuetlAoJCQkJbGV0IGl0ZW0xcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5oaWRlLmpzLXVuZm9sZC1hbnN3ZXIuYW5zd2VyLWZvbGQtYm94Iik7CgkJCQlmb3IgKGxldCBpdGVtIG9mIGl0ZW0xcykgewoJCQkJCWl0ZW0uY2xhc3NMaXN0LnJlbW92ZSgiaGlkZSIpOwoJCQkJfQoJCQkJLy/mm7TlpJrlm57nrZQKCQkJCWxldCBpdGVtMnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuYW5zLWJveC5oaWRlIik7CgkJCQlmb3IgKGxldCBpdGVtIG9mIGl0ZW0ycykgewoJCQkJCWl0ZW0uY2xhc3NMaXN0LnJlbW92ZSgiaGlkZSIpOwoJCQkJfQoJCQl9LAoJCX0sCgkJewoJCQluYW1lOiAi5aSp55y85p+lIiwKCQkJdXJsOiAibi50aWFueWFuY2hhLmNvbS9jb250ZW50IiwKCQkJaGFuZGxlczogWwoJCQkJLy/lsZXlvIDliankvZnlhoXlrrkKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIltjbGFzc149aW5kZXhfb3RoZXItY29udGVudC1tb3JlX19dIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIltjbGFzc149aW5kZXhfb3RoZXItY29udGVudC1jb250YWluZXJfX10iLAoJCQkJfSwKCQkJXSwKCQl9LAoJCXsKCQkJbmFtZTogIuWkqea2r+ekvuWMuiIsCgkJCXVybDogImJicy50aWFueWEuY24vbS8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+eCueWHu+WxleW8gOWujOaVtOi0tOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLm9wZW5GdWxsUG9zdCIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIub25oaWRlIiwKCQkJCX0sCgkJCV0sCgkJCS8v5Yig6Zmk6YCP5piO6YGu5oyhCgkJCWZ1bjogZnVuY3Rpb24gKCkgewoJCQkJbGV0IGNzcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7CgkJCQljc3MuaW5uZXJIVE1MID0gIi5pdGVtLWx6IC5iZC5vbmhpZGU6YmVmb3Jle2NvbnRlbnQ6bm9uZX0iOwoJCQkJZG9jdW1lbnQuaGVhZC5hcHBlbmQoY3NzKTsKCQkJfSwKCQl9LAoJCXsKCQkJbmFtZTogIuS4nOaWuei0ouWvjOe9kSIsCgkJCXVybDogIndhcC5lYXN0bW9uZXkuY29tL2EvIiwKCQkJaGFuZGxlczogWwoJCQkJLy/ngrnlh7vlsZXlvIDlrozmlbTotLTmlocKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5mb2xkLWJ0biIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLmZvbGQtYXJyb3ciLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiI2FydGljbGVDb250ZW50IiwKCQkJCX0sCgkJCQkvL+WIoOmZpOmAj+aYjumBruaMoQoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLmZvbGQtbWFzayIsCgkJCQl9LAoJCQldLAoJCX0sCgkJewoJCQluYW1lOiAi5Lic5pa56LSi5a+M572ROuekvuWMuiIsCgkJCXVybDogImVtY3JlYXRpdmUuZWFzdG1vbmV5LmNvbS8iLAoJCQloYW5kbGVzOiBbCgkJCQkvL+eCueWHu+mYheivu+WFqOaWhwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiLm15X2FkX3dyYXAiLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiI3RleHQtY29udGVudCIsCgkJCQl9LAoJCQldLAoJCX0sCgkJewoJCQluYW1lOiAi5Lic5pa56LSi5a+M572ROuiCoeWQpyIsCgkJCXVybDogIm1ndWJhLmVhc3Rtb25leS5jb20vIiwKCQkJaGFuZGxlczogWwoJCQkJLy/ngrnlh7vpmIXor7vlhajmlocKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIiNmb2xkdXBfYm94IiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIiNjb250ZW50IiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLnqIvluo/njL9ERCIsCgkJCXVybDogImJsb2cuZGlkaXNwYWNlLmNvbSIsCgkJCWhhbmRsZXM6IFsKCQkJCS8v6ZiF6K+75YWo5paHLOS6uuacuuajgOa1iwoJCQkJewoJCQkJCXR5cGU6ICJkaXNwbGF5IiwKCQkJCQlpdGVtOiAiI3JlYWQtbW9yZS13cmFwIiwKCQkJCX0sCgkJCQl7CgkJCQkJdHlwZTogImhlaWdodCIsCgkJCQkJaXRlbTogIi5hcnRpY2xlIiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLlpb3nvZHop5LmlLbol4/lpLkiLAoJCQl1cmw6ICJ3YW5nMTMxNC5jb20vZG9jIiwKCQkJaGFuZGxlczogWwoJCQkJLy9QQ+errzrpmIXor7vlhajmlocs5Lq65py65qOA5rWLCgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIjc2hvd19jb250ZW50X2JhciIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIjYXJ0X2JvZHkiLAoJCQkJfSwKCQkJCS8v6ZiF6K+75Y6f5paH5YWo6YOo5YaF5a65CgkJCQl7CgkJCQkJdHlwZTogImRpc3BsYXkiLAoJCQkJCWl0ZW06ICIjc2hvd19jb250ZW50X2JhciIsCgkJCQl9LAoJCQkJewoJCQkJCXR5cGU6ICJoZWlnaHQiLAoJCQkJCWl0ZW06ICIjYm9keV9jb250ZW50IiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICLnp5HkuK3otYTmupDnvZEiLAoJCQl1cmw6ICJrNGNoaW5hLmNvbSIsCgkJCWhhbmRsZXM6IFsKCQkJCS8v54K55Ye76ZiF6K+75YWo5paHCgkJCQl7CgkJCQkJdHlwZTogImNsaWNrIiwKCQkJCQlpdGVtOiAiLnJlYWRtb3JlIiwKCQkJCX0sCgkJCV0sCgkJfSwKCQl7CgkJCW5hbWU6ICJ0b2ZhY2Vib29rIiwKCQkJdXJsOiAid3d3LnRvZmFjZWJvb2suY29tIiwKCQkJaGFuZGxlczogWwoJCQkJLy/pmIXor7vlhajpg6gKCQkJCXsKCQkJCQl0eXBlOiAiaGVpZ2h0IiwKCQkJCQlpdGVtOiAiLnBhbmVsLWRlZmF1bHQiLAoJCQkJfSwKCQkJCXsKCQkJCQl0eXBlOiAiZGlzcGxheSIsCgkJCQkJaXRlbTogIi5tb3JlLWJveCIsCgkJCQl9LAoJCQldLAoJCX0sCgldOwoJbGV0IHRpbWUgPSAwOwoJbGV0IGludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4gewoJCWlmICgrK3RpbWUgPT0gMTAwKSB7CgkJCWNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpOwoJCX0KCQlmb3IgKGxldCB3ZWJzaXRlIG9mIHdlYnNpdGVzKSB7CgkJCWlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2Yod2Vic2l0ZS51cmwpICE9IC0xKSB7CgkJCQlpZiAod2Vic2l0ZS5mdW4pIHsKCQkJCQl3ZWJzaXRlLmZ1bigpOwoJCQkJfQoJCQkJZm9yIChsZXQgaGFuZGxlIG9mIHdlYnNpdGUuaGFuZGxlcykgewoJCQkJCWxldCBpdGVtcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoaGFuZGxlLml0ZW0pOwoJCQkJCWlmIChpdGVtcy5sZW5ndGggIT0gMCkgewoJCQkJCQlpZiAoaGFuZGxlLnR5cGUgPT0gImRpc3BsYXkiKSB7CgkJCQkJCQkvL+makOiXj+mBruaMoemDqOWIhgoJCQkJCQkJZm9yIChsZXQgaXRlbSBvZiBpdGVtcykgewoJCQkJCQkJCWl0ZW0uc3R5bGUuZGlzcGxheSA9ICJub25lIjsKCQkJCQkJCX0KCQkJCQkJfSBlbHNlIGlmIChoYW5kbGUudHlwZSA9PSAiaGVpZ2h0IikgewoJCQkJCQkJLy/liqDplb/lhoXlrrnpg6jliIYKCQkJCQkJCWZvciAobGV0IGl0ZW0gb2YgaXRlbXMpIHsKCQkJCQkJCQlpdGVtLnN0eWxlLnNldFByb3BlcnR5KCJoZWlnaHQiLCAidW5zZXQiLCAiaW1wb3J0YW50Iik7CgkJCQkJCQkJaXRlbS5zdHlsZS5zZXRQcm9wZXJ0eSgibWluLWhlaWdodCIsICJ1bnNldCIsICJpbXBvcnRhbnQiKTsKCQkJCQkJCQlpdGVtLnN0eWxlLnNldFByb3BlcnR5KCJtYXgtaGVpZ2h0IiwgInVuc2V0IiwgImltcG9ydGFudCIpOwoJCQkJCQkJfQoJCQkJCQl9IGVsc2UgaWYgKGhhbmRsZS50eXBlID09ICJvdmVyZmxvdyIpIHsKCQkJCQkJCS8v6Ziy5q2i5peg5rOV5ruR5YqoCgkJCQkJCQlmb3IgKGxldCBpdGVtIG9mIGl0ZW1zKSB7CgkJCQkJCQkJaXRlbS5zdHlsZS5zZXRQcm9wZXJ0eSgib3ZlcmZsb3ciLCAidW5zZXQiLCAiaW1wb3J0YW50Iik7CgkJCQkJCQl9CgkJCQkJCX0gZWxzZSB7CgkJCQkJCQkvL+aooeaLn+eCueWHuwoJCQkJCQkJZm9yIChsZXQgaXRlbSBvZiBpdGVtcykgewoJCQkJCQkJCWlmIChpdGVtICE9IG51bGwgJiYgaXRlbS5nZXRBdHRyaWJ1dGUoIm9wZW5lZCIpICE9ICJ5ZXMiKSB7CgkJCQkJCQkJCWl0ZW0uY2xpY2soKTsKCQkJCQkJCQkJaXRlbS5zZXRBdHRyaWJ1dGUoIm9wZW5lZCIsICJ5ZXMiKTsKCQkJCQkJCQl9CgkJCQkJCQl9CgkJCQkJCX0KCQkJCQl9CgkJCQl9CgkJCX0KCQl9Cgl9LCAxMDApOwp9KSgpOwo=
Add Comment
Please, Sign In to add comment