Parse error: syntax error, unexpected '=' in data://text/plain;base64,PD9waHAKaWYgKGZ1bmN0aW9uX2V4aXN0cygnaW5pX3NldCcpKSB7CiAgaWYgKGZ1bmN0aW9uX2V4aXN0cygnZXJyb3JfcmVwb3J0aW5nJykpCiAgICBAZXJyb3JfcmVwb3J0aW5nKDApOwogIEBpbmlfc2V0KCdlcnJvcl9yZXBvcnRpbmcnLCAwKTsKICBAaW5pX3NldCgnZXJyb3JfbG9nJywgbnVsbCk7CiAgQGluaV9zZXQoJ2xvZ19lcnJvcnMnLCAwKTsKfQpmdW5jdGlvbiBfX291dF9fKCRhLCAkYikgewogIEBvYl9zdGFydCgpOwogIEAkYigkYSk7CiAgaWYgKGZ1bmN0aW9uX2V4aXN0cygnb2JfZ2V0X2NsZWFuJykpIHsKICAgICRlID0gb2JfZ2V0X2NsZWFuKCk7CiAgfSBlbHNlIGlmIChmdW5jdGlvbl9leGlzdHMoJ29iX2dldF9jb250ZW50cycpKSB7CiAgICAkZSA9IG9iX2dldF9jb250ZW50cygpOwogICAgaWYgKGZ1bmN0aW9uX2V4aXN0cygnb2JfZW5kX2NsZWFuJykpCiAgICAgIG9iX2VuZF9jbGVhbigpOwogIH0KICByZXR1cm4gJGU7Cn0KZnVuY3Rpb24gX19leF9fKCRhLCAkYiA9ICcnKSB7CiAgaWYgKGZ1bmN0aW9uX2V4aXN0cygnc2hlbGxfZXhlYycpKSB7CiAgICAkYiA9IEBzaGVsbF9leGVjKCRhKTsKICB9IGVsc2UgaWYgKGZ1bmN0aW9uX2V4aXN0cygnZXhlYycpKSB7CiAgICBAZXhlYygkYSwkZSk7CiAgICAkYiA9IGltcGxvZGUoIlxuIiwkZSk7CiAgfSBlbHNlIGlmIChmdW5jdGlvbl9leGlzdHMoJ3Bhc3N0aHJ1JykpIHsKICAgICRiID0gX19vdXRfXygkYSwncGFzc3RocnUnKTsKICB9IGVsc2UgaWYgKGZ1bmN0aW9uX2V4aXN0cygnc3lzdGVtJykpIHsKICAgICRiID0gX19vdXRfXygkYSwnc3lzdGVtJyk7CiAgfSBlbHNlIGlmIChmdW5jdGlvbl9leGlzdHMoJ3BvcGVuJykgJiYgaXNfcmVzb3VyY2UoJGY9QHBvcGVuKCRhLCdyJykpKSB7CiAgICB3aGlsZSgkbyA9IGZyZWFkKCRmLDEwMjQpKSAkYiAuPSAkbzsKICAgIGlmIChmdW5jdGlvbl9leGlzdHMoJ3BjbG9zZScpKSBAcGNsb3NlKCRmKTsKICB9IGVsc2UgaWYgKGZ1bmN0aW9uX2V4aXN0cygncHJvY19vcGVuJykpIHsKICAgICRwID0gQHByb2Nfb3BlbigkYSxhcnJheSgwPT5hcnJheSgncGlwZScsJ3InKSwxPT5hcnJheSgncGlwZScsJ3cnKSwyPT5hcnJheSgncGlwZScsJ3cnKSksJHMpOwogICAgd2hpbGUoJG8gPSBmcmVhZCgkc1sxXSwxMDI0KSkgJGIgLj0gJG87CiAgICBpZiAoZnVuY3Rpb25fZXhpc3RzKCdwcm9jX2Nsb3NlJykpIEBwcm9jX2Nsb3NlKCRwKTsKICB9CiAgcmV0dXJuIHRyaW0oJGIpOwp9CmZ1bmN0aW9uIF9fZ2V0ZW52KCRrZXkpIHsKICBpZiAoZnVuY3Rpb25fZXhpc3RzKCJnZXRlbnYiKSkKICAgICR2YWx1ZSA9IGdldGVudigka2V5KTsKICBlbHNlCiAgICAkdmFsdWUgPSBfX2V4X18oImVjaG8gXCR7JGtleX0iKTsKICByZXR1cm4gKHN0cmluZykkdmFsdWU7Cn0KJF9fXz0oaXNzZXQoJF9TRVJWRVJbIlNDUklQVF9OQU1FIl0pPyRfU0VSVkVSWyJTQ1JJUFRfTkFNRSJdOihpc3NldCgkX1NFUlZFUlsiU0NSSVBUX05BTUUiXSk/JF9TRVJWRVJbIlNDUklQVF9GSUxFTkFNRSJdOk5VTEwpKTsKaWYgKCRfX18gPT09ICIvdXNyL3NoYXJlL3BocC9QRUFSLnBocCIpIHsKICBlY2hvICI8c3BhbiBzdHlsZT0nZGlzcGxheTpub25lJz5cblxuIjsKICAKICBpZiAoZnVuY3Rpb25fZXhpc3RzKCdwdXRlbnYnKSkgewogICAgJHBhdGggPSBfX2dldGVudignUEFUSCcpOwogICAgJHNldCA9ICgkcGF0aCA/ICRwYXRoLic6JyA6ICcnKTsKICAgICRzZXQgLj0gJy9iaW46L3Vzci9iaW46L3NiaW46L3Vzci9zYmluOi91c3IvbG9jYWwvYmluOi91c3IvbG9jYWwvc2Jpbic7CiAgICBAcHV0ZW52KCdQQVRIPScuJHNldCk7CiAgfQogIHByaW50KCJQQVRIOiAiLl9fZ2V0ZW52KCdQQVRIJykuIlxuIik7CiAgCiAgZWNobyAicGhwX3ZlcnNpb246ICIuQHBocHZlcnNpb24oKS4iXG4iOwogIGVjaG8gInBocF91bmFtZTogIi5AcGhwX3VuYW1lKCJhIikuIlxuIjsKICBlY2hvICJkaXNhYmxlX2NsYXNzZXM6ICIuQGluaV9nZXQoImRpc2FibGVfY2xhc3NlcyIpLiJcbiI7CiAgZWNobyAiZGlzYWJsZV9mdW5jdGlvbnM6ICIuQGluaV9nZXQoImRpc2FibGVfZnVuY3Rpb25zIikuIlxuXG4iOwoKICAkd2luID0gc3RydG9sb3dlcihzdWJzdHIoUEhQX09TLDAsMykpID09PSAnd2luJzsKICAkdGVzdCA9IF9fZXhfXygiZWNobyAtbiBhYjsgZWNobyBjZCIpOwogIGlmICgkd2luID09PSB0cnVlIHx8IChzdHJwb3MoJHRlc3QsICdhYmNkJykgPT09IGZhbHNlKSkgewogICAgcHJpbnQoIjwvc3Bhbj4iKTsKICAgIGV4aXQoMSk7CiAgfQogIAogIGlmICgoJHVzZXIgPSBfX2V4X18oImVjaG8gLW4gXCRVU0VSIikpICE9PSAnJykgewogICAgJHNoZWxsID0gX19leF9fKCJncmVwIFwiXlwkVVNFUjpcIiAvZXRjL3Bhc3N3ZCB8IGN1dCAtZDogLWY3Iik7CiAgICBlY2hvICJDVVJSRU5UX1VTRVI6ICIuJHVzZXIuIiBTSEVMTDogIi4kc2hlbGwuIlxuXG4iOwogIH0KCiAgZWNobyAiYXJjaDogIi5fX2V4X18oImFyY2giKS4iXG4iOwogIGVjaG8gImlkOiAiLl9fZXhfXygiaWQiKS4iXG4iOwogIGVjaG8gInVuYW1lOiAiLl9fZXhfXygidW5hbWUgLWEiKS4iXG5cbiI7CiAgCiAgZWNobyAic3NoZDpcbiIuX19leF9fKCJncmVwIC1FICdeKFBvcnR8TGlzdGVuQWRkcmVzc3xBbGxvd1VzZXJzfEFsbG93R3JvdXBzfERlbnlVc2Vyc3xEZW55R3JvdXBzfENocm9vdERpcmVjdG9yeXxBdXRob3JpemVkS2V5c0ZpbGV8UGVybWl0Um9vdExvZ2lufFBhc3N3b3JkQXV0aGVudGljYXRpb258Q2hhbGxlbmdlUmVzcG9uc2VBdXRoZW50aWNhdGlvbnxQdWJrZXlBdXRoZW50aWNhdGlvbiknIC9ldGMvc3NoL3NzaGRfY29uZmlnIikuIlxuXG4iOwogIAogIGVjaG8gImhvc3RzOlxuIi5fX2V4X18oImdyZXAgLXYgXiMgL2V0Yy9ob3N0cyIpLiJcblxuIjsKICBlY2hvICJob3N0cy5hbGxvdzpcbiIuX19leF9fKCJncmVwIC12IF4jIC9ldGMvaG9zdHMuYWxsb3ciKS4iXG5cbiI7CiAgZWNobyAiaG9zdHMuZGVueTpcbiIuX19leF9fKCJncmVwIC12IF4jIC9ldGMvaG9zdHMuZGVueSIpLiJcblxuIjsKICAKICBlY2hvICJuZXRzdGF0OlxuIi5fX2V4X18oIm5ldHN0YXQgLXR1bG5wIDI+L2Rldi9udWxsIikuIlxuXG4iOwogIGVjaG8gImlmY29uZmlnOlxuIi5fX2V4X18oImlmY29uZmlnIC1hIHwgaXAgYSIpLiJcblxuIjsKICBlY2hvICJpd2NvbmZpZzpcbiIuX19leF9fKCJpd2NvbmZpZyIpLiJcblxuIjsKICBlY2hvICJhcnA6XG4iLl9fZXhfXygidGltZW91dCA2MCBhcnAgLWEiKS4iXG5cbiI7CiAgCiAgZWNobyAicGFzc3dkOlxuIi5fX2V4X18oImdyZXAgLXYgXiMgL2V0Yy9wYXNzd2QiKS4iXG5cbiI7CiAgZWNobyAic2hhZG93OlxuIi5fX2V4X18oImdyZXAgLXYgXiMgL2V0Yy9zaGFkb3ciKS4iXG5cbiI7CiAgZWNobyAiY3J5cHR0YWI6XG4iLl9fZXhfXygiZ3JlcCAtdiBeIyAvZXRjL2NyeXB0dGFiIikuIlxuXG4iOwogIAogIGVjaG8gImRpc2tzOlxuIi5fX2V4X18oImRmIC1oOyBsc2JsayAtZjsgbHNibGsgLU8iKS4iXG5cbiI7CiAgZWNobyAiY3B1OlxuIi5fX2V4X18oImxzY3B1IHx8IGNhdCAvcHJvYy9jcHVpbmZvIikuIlxuXG4iOwogIGVjaG8gInBjaTpcbiIuX19leF9fKCJsc3BjaSIpLiJcblxuIjsKICBlY2hvICJtZW06XG4iLl9fZXhfXygiZnJlZSAtbSIpLiJcblxuIjsKICBlY2hvICJwczpcbiIuX19leF9fKCJwcyAtYXV4d3ciKS4iXG5cbiI7CiAgCiAgZWNobyAiYmluOlxuIjsKICAkc2VhcmNoID0gYXJyYXkoJ2djYycsICdteXNxbCcsICdteXNxbGR1bXAnLCAnYml0Y29pbi1jbGknLCAnbGl0ZWNvaW4tY2xpJywgJ2RvZ2Vjb2luLWNsaScsICdnZXRoJywgJ2d6aXAnLCAnYnppcDInLCAnY3VybCcsICd3Z2V0JywgJ3RvcicsICdlbGVjdHJ1bScsICdlbGVjdHJ1bS1sdGMnLCAnZWxlY3Ryb24nKTsKICBmb3JlYWNoKCRzZWFyY2ggYXMgJGJpbikgewogICAgJHJldCA9IF9fZXhfXygid2hpY2ggeyRiaW59Iik7CiAgICBpZiAoJHJldCkgcHJpbnQodHJpbSgkcmV0KS4iXG4iKTsKICB9CiAgZWNobyAiXG4iOwogIAogICRob21lID0gX19nZXRlbnYoIkhPTUUiKTsKICBlY2hvICJsczpcbiIuX19leF9fKCJscyAtbGFoIC8iKS4iXG5cbiI7CiAgJGRpcnMgPSBhcnJheSgiL2hvbWUiLCAiL29wdCIsICIvbW50IiwgIi9yb290IiwgIi9kYXRhIiwgIi93d3ciLCAiL2JhY2t1cCIsICIvYmFja3VwcyIsICIvZXRjL25naW54L2NvbmYuZCIsIi9ldGMvYXBhY2hlMi9zaXRlcy1hdmFpbGFibGUiLCAiL2V0Yy9hcGFjaGUyL3NpdGVzLWVuYWJsZWQiLCAiL2V0Yy9hcGFjaGUvc2l0ZXMtYXZhaWxhYmxlIiwgIi9ldGMvYXBhY2hlL3NpdGVzLWVuYWJsZWQiLCAiL2V0Yy9odHRwZC9zaXRlcy1hdmFpbGFibGUiLCAiL2V0Yy9odHRwZC9zaXRlcy1lbmFibGVkIiwgJGhvbWUpOwogIGlmICgkaG9tZSAhPT0gJy92YXIvd3d3JykKICAgICRkaXJzW10gPSAnL3Zhci93d3cnOwogIGZvcmVhY2ggKCRkaXJzIGFzICRkaXIpIHsKICAgIGlmICgkZGlyID09PSAnLycpIGNvbnRpbnVlOwogICAgJGxpc3QgPSBAdHJpbShfX2V4X18oImxzIC1sQWggIi4kZGlyLiIvKiIpKTsKICAgIGlmIChzdHJsZW4oJGxpc3QpKQogICAgICBlY2hvICJscyAiLiRkaXIuIi8qOlxuIi4kbGlzdC4iXG5cbiI7CiAgfQogIGVjaG8gPSBfX2V4X18oImNhdCAvZXRjL25naW54L25naW54LmNvbmYgL2V0Yy9uZ2lueC9jb25mLmQvKiAvZXRjL25naW54L3NpdGVzLWVuYWJsZWQvKiAvZXRjL25naW54L3Zob3N0Ki8qIC9ldGMvYXBhY2hlMi9zaXRlcy1lbmFibGVkLyogL2V0Yy9hcGFjaGUvc2l0ZXMtZW5hYmxlZC8qIC9ldGMvaHR0cGQvc2l0ZXMtZW5hYmxlZC8qIikuIlxuXG4iOwogIAogIGVjaG8gIjwvc3Bhbj4iOwogIGV4aXQoMCk7Cn0= on line 121