CINXE.COM
Fornecedor Líder de Soluções Solares Inovadoras No Brasil | FusionSolar Brasil
<!DOCTYPE html> <html lang="en" data-region="br"> <head id="Head1"><meta name="keywords" content="Fornecedor Líder de Soluções Solares Inovadoras No Brasil"><meta name="description" content="FusionSolar é um fornecedor líder global de soluções solares, trabalhando com instaladores profissionais, empresas de serviços públicos e outras partes interessadas para promover o uso sustentável e eficiente de energia renovável. Podemos fornecer soluções solares poderosas para atender às necessidades dos clientes no Brasil e em outros lugares."><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title> Fornecedor Líder de Soluções Solares Inovadoras No Brasil | FusionSolar Brasil </title> <meta name="applicable-device" content="pc,mobile"> <link rel="canonical" href="https://solar.huawei.com/br/"> <link rel="stylesheet" href="/Assets/Solar/v4/css/aui3.css?ver=202411131551"> <link rel="stylesheet" href="/Assets/Solar/v4/css/common.css?ver=202411131551"> <link rel="stylesheet" type="text/css" href="/-/media/SolarV4/solar-version2/common/seo/common-style.css?ver=202411131551"> <style> .nav-top-right .js-header-login,.nav-top-right .js-header-account,.nav-top-right .js-header-logout,.container .js-mheader-login,.container .js-mheader-account{ display:none !important; } </style><link rel="stylesheet" type="text/css" href="/Assets/Solar/v4/js/utils/swiper-new.min.css?ver=202411131551"> <link rel="stylesheet" type="text/css" href="/Assets/Solar/v4/css/index.css?ver=202411131551"> <style type="text/css"> .home_global .home_glb_content { will-change: transform; } </style><link rel="Shortcut Icon" href="/Assets/solar/v4/img/img_ent_en_logo_ico.ico"></head> <body class="aui3 ev_no_wcag"> <form method="post" action="/br" id="form1"> <div class="aspNetHidden"> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTc0MDY0NDU1Mw8WAh4TVmFsaWRhdGVSZXF1ZXN0TW9kZQIBFgYCAg9kFgJmD2QWAmYPZBYMAgEPFgIeBFRleHQFjDA8ZGl2IGNsYXNzPSJuYXYtYWxsTGFuZ0JveCI+CiAgICA8ZGl2IGNsYXNzPSJpY29uLWNsb3NlIj48L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImN1cnItbGFuZyI+PHNwYW4gY2xhc3M9Imljb24tY3VyciI+PC9zcGFuPgogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9lbiI+RnVzaW9uU29sYXIgR2xvYmFsIC8gRW5nbGlzaDwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0iYWxsTGFuZyI+CiAgICAgICAgPGRpdiBjbGFzcz0iYXJlYUl0ZW0iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJhcmVhVGV4dCI+QXNpYSBQYWNpZmljPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdMaXN0Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vYXUiPkF1c3RyYWxpYSAvIEVuZ2xpc2g8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2NuIj5DaGluYSAvIOeugOS9k+S4reaWhzwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vaGsiPkhvbmcgS29uZywgQ2hpbmEgLyDnuYHpq5TkuK3mloc8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2lkIj5JbmRvbmVzaWEgLyBJbmRvbmVzaWFuPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9qcCI+SmFwYW4gLyDml6XmnKzoqp48L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL215Ij5NYWxheXNpYSAvIEVuZ2xpc2g8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL3BoIj5QaGlsaXBwaW5lcyAvIEVuZ2xpc2g8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL3NnIj5TaW5nYXBvcmUgLyBFbmdsaXNoPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9rciI+U291dGggS29yZWEgLyDtlZzqta3slrQ8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL3RoIj5UaGFpbGFuZCAvIOC5hOC4l+C4ojwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vdm4iPlZpZXRuYW0gLyBFbmdsaXNoPC9hPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJhcmVhSXRlbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFyZWFUZXh0Ij5FdXJvcGU8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0xpc3QiPgoKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vYXQiPkF1c3RyaWEgLyBEZXV0c2NoPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9iZS1mciI+QmVsZ2l1bSAvIEZyYW7Dp2FpczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vYmUiPkJlbGdpdW0gLyBOZWRlcmxhbmRzPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9iZyI+QnVsZ2FyaWEgLyDQsdGK0LvQs9Cw0YDRgdC60Lg8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2hyIj5Dcm9hdGlhIC8gaHJ2YXRza2k8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2N6Ij5DemVjaGlhIC8gxI1lxaF0aW5hPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9kayI+RGVubWFyayAvIERhbnNrPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9mciI+RnJhbmNlIC8gRnJhbsOnYWlzPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9kZSI+R2VybWFueSAvIERldXRzY2g8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2dyIj5HcmVlY2UgLyDOlc67zrvOt869zrnOus6sPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9odSI+SHVuZ2FyeSAvIEh1bmdhcmlhbjwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vaWUiPklyZWxhbmQgLyBFbmdsaXNoPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9pdCI+SXRhbHkgLyBJdGFsaWFubzwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vbmwiPk5ldGhlcmxhbmRzIC8gRHV0Y2g8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL3BsIj5Qb2xhbmQgLyBQb2xpc2g8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL3B0Ij5Qb3J0dWdhbCAvIHBvcnR1Z3XDqnM8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL3JvIj5Sb21hbmlhIC8gcm9tw6JuxIM8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL3NrIj5TbG92YWtpYSAvIHNsb3ZlbsSNaW5hPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9lcyI+U3BhaW4gLyBFc3Bhw7FvbDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vc2UiPlN3ZWRlbiAvIFN2ZW5za2E8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2NoIj5Td2l0emVybGFuZCAvIERldXRzY2g8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2NoLWZyIj5Td2l0emVybGFuZCAvIEZyYW7Dp2FpczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vdHIiPlTDvHJraXllIC8gVMO8cmvDp2U8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL3VhIj5Va3JhaW5lIC8g0KPQutGA0LDRl9C90LA8L2E+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImFyZWFJdGVtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXJlYVRleHQiPkxhdGluIEFtZXJpY2E8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0xpc3QiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9iciI+QnJhemlsIC8gUG9ydHVndWVzZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vbGF0YW0iPkxhdGluIEFtZXJpY2EgLyBFc3Bhw7FvbDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vbXgiPk3DqXhpY28gLyBFc3Bhw7FvbDwvYT48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYXJlYUl0ZW0iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJhcmVhVGV4dCI+TWlkZGxlIEVhc3QgJmFtcDsgQWZyaWNhPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdMaXN0Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vZWciPkVneXB0IC8g2KfZhNmE2LrYqSDYp9mE2LnYsdio2YrYqTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20va2UiPktlbnlhIC8gRW5nbGlzaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vbWEiPk1vcm9jY28gLyBGcmFuw6dhaXM8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL25nIj5OaWdlcmlhIC8gRW5nbGlzaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vcGsiPlBha2lzdGFuIC8gRW5nbGlzaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vc2EiPlNhdWRpIEFyYWJpYSAvINin2YTZhNi62Kkg2KfZhNi52LHYqNmK2KkgPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9zYS1lbiI+U2F1ZGkgQXJhYmlhIC8gRW5nbGlzaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vemEiPlNvdXRoIEFmcmljYSAvIEVuZ2xpc2g8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL3RuIj5UdW5pc2lhIC8gRnJhbsOnYWlzPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9hZSI+VUFFIC8g2KfZhNmE2LrYqSDYp9mE2LnYsdio2YrYqTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vYWUtZW4iPlVBRSAvIEVuZ2xpc2g8L2E+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgoKICAgIDwvZGl2Pgo8L2Rpdj5kAgIPFgIeC18hSXRlbUNvdW50AgYWDGYPZBYEZg8VBA8vYnIvaG9tZS1vd25lcnMA2wN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonSG9tZSBPd25lcnMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319F1Byb3ByaWV0w6FyaW9zIGRlIGNhc2FzZAIBDxYCHwIC/////w9kAgEPZBYEZg8VBBMvYnIvYnVzaW5lc3Mtb3duZXJzAN8DdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J0J1c2luZXNzIE93bmVycycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0aUHJvcHJpZXTDoXJpb3MgZGUgZW1wcmVzYXNkAgEPFgIfAgL/////D2QCAg9kFgRmDxUEGC9ici91dGlsaXR5LXBsYW50LW93bmVycwDkA3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0ZpcnN0X05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOiAnRmlyc3RfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidVdGlsaXR5IFBsYW50IE93bmVycycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0aUHJvcHJpZXRhcmlvcyBkZSB1dGlsaXRpZXNkAgEPFgIfAgL/////D2QCAw9kFgRmDxUEHS9ici9wcm9mZXNzaW9uYWxzL3Jlc2lkZW50aWFsAN0DdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1Byb2Zlc3Npb25hbHMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DVByb2Zpc3Npb25haXNkAgEPFgQfAgIGHgdWaXNpYmxlZxYMZg9kFgJmDxUEHS9ici9wcm9mZXNzaW9uYWxzL3Jlc2lkZW50aWFsAIIEdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrJ1Jlc2lkZW50aWFsIFNtYXJ0IFBWICYgRVNTIFNvbHV0aW9uJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fT9Tb2x1w6fDo28gZGUgZW5lcmdpYSBmb3Rvdm9sdGFpY2EgaW50ZWxpZ2VudGUgZSBFU1MgcmVzaWRlbmNpYWxkAgEPZBYCZg8VBBUvYnIvcHJvZmVzc2lvbmFscy9jLWkA+QN0cnkgeyAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZmVzc2lvbmFscycrJysnKydDJkkgU21hcnQgUFYgJiBFU1MgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319SlNvbHXDp8OjbyBkZSBlbmVyZ2lhIGZvdG92b2x0YWljYSBpbnRlbGlnZW50ZSBlIEVTUyBjb21lcmNpYWwgZSBpbmR1c3RyaWFsZAICD2QWAmYPFQQZL2JyL3Byb2Zlc3Npb25hbHMvdXRpbGl0eQD4A3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZmVzc2lvbmFscycrJysnKydVdGlsaXR5IFNtYXJ0IFBWIFNvbHV0aW9uJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fT5Tb2x1w6fDo28gZGUgZW5lcmdpYSBmb3Rvdm9sdMOhaWNhIGludGVsaWdlbnRlcyBwYXJhIHV0aWxpdGllc2QCAw9kFgJmDxUEFS9ici9wcm9mZXNzaW9uYWxzL2VzcwCABHRyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZmVzc2lvbmFscycrJysnKydVdGlsaXR5IFNtYXJ0IFN0cmluZyBFU1MgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319OFNvbHXDp8OjbyBkZSBFU1MgY29tIGNhZGVpYXMgaW50ZWxpZ2VudGVzIHBhcmEgdXRpbGl0aWVzZAIED2QWAmYPFQQcL2JyL3Byb2Zlc3Npb25hbHMvbWljcm8tZ3JpZAD4A3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZmVzc2lvbmFscycrJysnKydTbWFydCBNaWNyby1ncmlkIFNvbHV0aW9uJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fSxTb2x1w6fDo28gZGUgbWluaS1yZWRlIGVsw6l0cmljYSBpbnRlbGlnZW50ZWQCBQ9kFgJmDxUEHS9ici9wcm9mZXNzaW9uYWxzL1NtYXJ0RGVzaWduAO4DdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrJ1NtYXJ0RGVzaWduIDIuMCcrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0PU21hcnREZXNpZ24gMi4wZAIED2QWBGYPFQQhL2JyL3BhcnRuZXJzL3BhcnRuZXItaW50cm9kdWN0aW9uANgDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1BhcnRuZXJzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQlQYXJjZWlyb3NkAgEPFgQfAgIFHwNnFgpmD2QWAmYPFQQhL2JyL3BhcnRuZXJzL3BhcnRuZXItaW50cm9kdWN0aW9uAO4DdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQYXJ0bmVycycrJysnKydQYXJ0bmVyIEludHJvZHVjdGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0YSW50cm9kdcOnw6NvIGRvIHBhcmNlaXJvZAIBD2QWAmYPFQRTaHR0cHM6Ly9wYXJ0bmVyLmh1YXdlaS5jb20vZXBsdXMvIy9lbi93ZWIvcmVnaXN0cmF0aW9uLWd1aWRhbmNlP3NvdXJjZT1jaGFubmVsLWhvbWUGX2JsYW5r6QN0cnkgeyAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUGFydG5lcnMnKycrJysnQmVjb21lIGEgUGFydG5lcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0UVG9ybmUtc2UgdW0gcGFyY2Vpcm9kAgIPZBYCZg8VBDBodHRwczovL2RpZ2l0YWxwb3dlci5odWF3ZWkuY29tL3BhcnRuZXIjL2VuL21haW4GX2JsYW5r5gN0cnkgeyAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUGFydG5lcnMnKycrJysnUG93ZXItUGFydG5lcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0TUGFyY2Vpcm9zIC0gZW5lcmdpYWQCAw9kFgJmDxUEMGh0dHBzOi8vY29tbXVuaXR5LnNvbGFyLmh1YXdlaS5jb20vYnIvaW5kZXguaHRtbAZfYmxhbmvuA3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUGFydG5lcnMnKycrJysnSW5zdGFsbGVycyBDb21tdW5pdHknKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319GkNvbXVuaWRhZGUgZGUgaW5zdGFsYWRvcmVzZAIED2QWAmYPFQQhL2JyL3BhcnRuZXJzL21hcD90eXBlPWRpc3RyaWJ1dG9yAOsDdHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1BhcnRuZXJzJysnKycrJ0ZpbmQgYSBEaXN0cmlidXRvcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0YRW5jb250cmUgdW0gZGlzdHJpYnVpZG9yZAIFD2QWBGYPFQQeL2JyL3Byb2Zlc3Npb25hbHMvYWxsLXByb2R1Y3RzANgDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1Byb2R1Y3RzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQhQcm9kdXRvc2QCAQ8WAh8CAv////8PZAIDDxYCHwICAxYGZg9kFgRmDxUEFy9ici9zZXJ2aWNlLXN1cHBvcnQvdHNjANcDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1N1cHBvcnQnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319B1N1cG9ydGVkAgEPFgQfAgICHwNnFgRmD2QWAmYPFQQXL2JyL3NlcnZpY2Utc3VwcG9ydC90c2MA8QN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1N1cHBvcnQnKycrJysnVGVjaG5pY2FsIFN1cHBvcnQgQ2VudGVyJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRpDZW50cm8gZGUgc3Vwb3J0ZSB0w6ljbmljb2QCAQ9kFgJmDxUEWWh0dHBzOi8vZGlnaXRhbHBvd2VyLmh1YXdlaS5jb20vcm9ib3RjaGF0LyMvaG9tZS9pbmRleD9sYW5nPWVuX1VTJmRvbWFpbj1zbWFydHB2JnByb2R1Y3Q9Bl9ibGFua+cDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidTdXBwb3J0JysnKycrJ09ubGluZSBTdXBwb3J0JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQ5TdXBvcnRlIG9ubGluZWQCAQ9kFgRmDxUEMGh0dHBzOi8vY29tbXVuaXR5LnNvbGFyLmh1YXdlaS5jb20vYnIvaW5kZXguaHRtbAZfYmxhbmvYA3RyeSB7ICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J0NvbW11bml0eScrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0KQ29tdW5pZGFkZWQCAQ8WAh8CAv////8PZAICD2QWBGYPFQQiaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2VuL2luZm8vLwZfYmxhbmvYA3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0ZpcnN0X05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOiAnRmlyc3RfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidEb3dubG9hZCcrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0GQmFpeGFyZAIBDxYEHwICAh8DZxYEZg9kFgJmDxUEImh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9lbi9pbmZvLy8GX2JsYW5r6gN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J0Rvd25sb2FkJysnKycrJ1Byb2R1Y3QgRG9jdW1lbnQnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319FU1hdGVyaWFpcyBkZSBwcm9kdXRvc2QCAQ9kFgJmDxUEOWh0dHBzOi8vZGlnaXRhbHBvd2VyLmh1YXdlaS5jb20vcG93ZXItbWFya2V0aW5nLyMvZW4vaG9tZQZfYmxhbmvpA3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonRG93bmxvYWQnKycrJysnUG93ZXItTWFya2V0aW5nJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQ9Qb3dlci1NYXJrZXRpbmdkAgQPFgIfAgIBFgJmD2QWAmYPFQQNL2JyL29yZGVyLW5vdwCeA3RyeSB7ICAgIGd0YWcoJ2V2ZW50JywnQnV5X0NsaWNrJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidCdXlfQ2xpY2snLCdldmVudExhYmVsJzonT3JkZXIgTm93JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRZGYcOnYSBzZXUgcGVkaWRvIGFnb3JhZAIGDxYCHwICCRYSZg9kFgQCAQ8WBh4EaHJlZgUPL2JyL2hvbWUtb3duZXJzHgZ0YXJnZXRkHgdvbmNsaWNrBdsDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J0hvbWUgT3duZXJzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRYCZg8VARdQcm9wcmlldMOhcmlvcyBkZSBjYXNhc2QCBQ8WAh8CAv////8PZAIBD2QWBAIBDxYGHwQFEy9ici9idXNpbmVzcy1vd25lcnMfBWQfBgXfA3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0ZpcnN0X05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOiAnRmlyc3RfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidCdXNpbmVzcyBPd25lcnMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319FgJmDxUBGlByb3ByaWV0w6FyaW9zIGRlIGVtcHJlc2FzZAIFDxYCHwIC/////w9kAgIPZBYEAgEPFgYfBAUYL2JyL3V0aWxpdHktcGxhbnQtb3duZXJzHwVkHwYF5AN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonVXRpbGl0eSBQbGFudCBPd25lcnMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319FgJmDxUBGlByb3ByaWV0YXJpb3MgZGUgdXRpbGl0aWVzZAIFDxYCHwIC/////w9kAgMPZBYGAgEPFgQfBAUMamF2YXNjcmlwdDo7HwYF3QN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZmVzc2lvbmFscycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0WAmYPFQENUHJvZmlzc2lvbmFpc2QCAw8WAh8DZ2QCBQ8WBB8CAgYfA2cWDAIBD2QWAmYPFQQdL2JyL3Byb2Zlc3Npb25hbHMvcmVzaWRlbnRpYWwAggR0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1Byb2Zlc3Npb25hbHMnKycrJysnUmVzaWRlbnRpYWwgU21hcnQgUFYgJiBFU1MgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319P1NvbHXDp8OjbyBkZSBlbmVyZ2lhIGZvdG92b2x0YWljYSBpbnRlbGlnZW50ZSBlIEVTUyByZXNpZGVuY2lhbGQCAg9kFgJmDxUEFS9ici9wcm9mZXNzaW9uYWxzL2MtaQD5A3RyeSB7ICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrJ0MmSSBTbWFydCBQViAmIEVTUyBTb2x1dGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX1KU29sdcOnw6NvIGRlIGVuZXJnaWEgZm90b3ZvbHRhaWNhIGludGVsaWdlbnRlIGUgRVNTIGNvbWVyY2lhbCBlIGluZHVzdHJpYWxkAgMPZBYCZg8VBBkvYnIvcHJvZmVzc2lvbmFscy91dGlsaXR5APgDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrJ1V0aWxpdHkgU21hcnQgUFYgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319PlNvbHXDp8OjbyBkZSBlbmVyZ2lhIGZvdG92b2x0w6FpY2EgaW50ZWxpZ2VudGVzIHBhcmEgdXRpbGl0aWVzZAIED2QWAmYPFQQVL2JyL3Byb2Zlc3Npb25hbHMvZXNzAIAEdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrJ1V0aWxpdHkgU21hcnQgU3RyaW5nIEVTUyBTb2x1dGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX04U29sdcOnw6NvIGRlIEVTUyBjb20gY2FkZWlhcyBpbnRlbGlnZW50ZXMgcGFyYSB1dGlsaXRpZXNkAgUPZBYCZg8VBBwvYnIvcHJvZmVzc2lvbmFscy9taWNyby1ncmlkAPgDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrJ1NtYXJ0IE1pY3JvLWdyaWQgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319LFNvbHXDp8OjbyBkZSBtaW5pLXJlZGUgZWzDqXRyaWNhIGludGVsaWdlbnRlZAIGD2QWAmYPFQQdL2JyL3Byb2Zlc3Npb25hbHMvU21hcnREZXNpZ24A7gN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1Byb2Zlc3Npb25hbHMnKycrJysnU21hcnREZXNpZ24gMi4wJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQ9TbWFydERlc2lnbiAyLjBkAgQPZBYGAgEPFgQfBAUMamF2YXNjcmlwdDo7HwYF2AN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUGFydG5lcnMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319FgJmDxUBCVBhcmNlaXJvc2QCAw8WAh8DZ2QCBQ8WBB8CAgUfA2cWCgIBD2QWAmYPFQQhL2JyL3BhcnRuZXJzL3BhcnRuZXItaW50cm9kdWN0aW9uAO4DdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQYXJ0bmVycycrJysnKydQYXJ0bmVyIEludHJvZHVjdGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0YSW50cm9kdcOnw6NvIGRvIHBhcmNlaXJvZAICD2QWAmYPFQRTaHR0cHM6Ly9wYXJ0bmVyLmh1YXdlaS5jb20vZXBsdXMvIy9lbi93ZWIvcmVnaXN0cmF0aW9uLWd1aWRhbmNlP3NvdXJjZT1jaGFubmVsLWhvbWUGX2JsYW5r6QN0cnkgeyAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUGFydG5lcnMnKycrJysnQmVjb21lIGEgUGFydG5lcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0UVG9ybmUtc2UgdW0gcGFyY2Vpcm9kAgMPZBYCZg8VBDBodHRwczovL2RpZ2l0YWxwb3dlci5odWF3ZWkuY29tL3BhcnRuZXIjL2VuL21haW4GX2JsYW5r5gN0cnkgeyAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUGFydG5lcnMnKycrJysnUG93ZXItUGFydG5lcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0TUGFyY2Vpcm9zIC0gZW5lcmdpYWQCBA9kFgJmDxUEMGh0dHBzOi8vY29tbXVuaXR5LnNvbGFyLmh1YXdlaS5jb20vYnIvaW5kZXguaHRtbAZfYmxhbmvuA3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUGFydG5lcnMnKycrJysnSW5zdGFsbGVycyBDb21tdW5pdHknKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319GkNvbXVuaWRhZGUgZGUgaW5zdGFsYWRvcmVzZAIFD2QWAmYPFQQhL2JyL3BhcnRuZXJzL21hcD90eXBlPWRpc3RyaWJ1dG9yAOsDdHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1BhcnRuZXJzJysnKycrJ0ZpbmQgYSBEaXN0cmlidXRvcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0YRW5jb250cmUgdW0gZGlzdHJpYnVpZG9yZAIFD2QWBAIBDxYGHwQFHi9ici9wcm9mZXNzaW9uYWxzL2FsbC1wcm9kdWN0cx8FZB8GBdgDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1Byb2R1Y3RzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRYCZg8VAQhQcm9kdXRvc2QCBQ8WAh8CAv////8PZAIGD2QWBgIBDxYEHwQFDGphdmFzY3JpcHQ6Ox8GBdcDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1N1cHBvcnQnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319FgJmDxUBB1N1cG9ydGVkAgMPFgIfA2dkAgUPFgQfAgICHwNnFgQCAQ9kFgJmDxUEFy9ici9zZXJ2aWNlLXN1cHBvcnQvdHNjAPEDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidTdXBwb3J0JysnKycrJ1RlY2huaWNhbCBTdXBwb3J0IENlbnRlcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0aQ2VudHJvIGRlIHN1cG9ydGUgdMOpY25pY29kAgIPZBYCZg8VBFlodHRwczovL2RpZ2l0YWxwb3dlci5odWF3ZWkuY29tL3JvYm90Y2hhdC8jL2hvbWUvaW5kZXg/bGFuZz1lbl9VUyZkb21haW49c21hcnRwdiZwcm9kdWN0PQZfYmxhbmvnA3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonU3VwcG9ydCcrJysnKydPbmxpbmUgU3VwcG9ydCcrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0OU3Vwb3J0ZSBvbmxpbmVkAgcPZBYEAgEPFgYfBAUwaHR0cHM6Ly9jb21tdW5pdHkuc29sYXIuaHVhd2VpLmNvbS9ici9pbmRleC5odG1sHwUFBl9ibGFuax8GBdgDdHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonQ29tbXVuaXR5JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRYCZg8VAQpDb211bmlkYWRlZAIFDxYCHwIC/////w9kAggPZBYGAgEPFgQfBAUMamF2YXNjcmlwdDo7HwYF2AN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonRG93bmxvYWQnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319FgJmDxUBBkJhaXhhcmQCAw8WAh8DZ2QCBQ8WBB8CAgIfA2cWBAIBD2QWAmYPFQQiaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2VuL2luZm8vLwZfYmxhbmvqA3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonRG93bmxvYWQnKycrJysnUHJvZHVjdCBEb2N1bWVudCcrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0VTWF0ZXJpYWlzIGRlIHByb2R1dG9zZAICD2QWAmYPFQQ5aHR0cHM6Ly9kaWdpdGFscG93ZXIuaHVhd2VpLmNvbS9wb3dlci1tYXJrZXRpbmcvIy9lbi9ob21lBl9ibGFua+kDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidEb3dubG9hZCcrJysnKydQb3dlci1NYXJrZXRpbmcnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319D1Bvd2VyLU1hcmtldGluZ2QCBw8WAh8CAgEWAmYPZBYCZg8VBA0vYnIvb3JkZXItbm93AJ4DdHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdCdXlfQ2xpY2snLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J0J1eV9DbGljaycsJ2V2ZW50TGFiZWwnOidPcmRlciBOb3cnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319FkZhw6dhIHNldSBwZWRpZG8gYWdvcmFkAgQPZBYMZg9kFgJmD2QWAgIBDxYCHwICARYCZg9kFgJmDxUFAGMvLS9tZWRpYS9Tb2xhclY0L3NvbGFyLXZlcnNpb24yL2xhdGluLWFtZXJpY2EvYnIvaG9tZXBhZ2Uvc3dpcGVyYmFubmVyL2Jhbm5lci1wdi1tYWd6aW5lL2JyLW1vYi5qcGdiLy0vbWVkaWEvU29sYXJWNC9zb2xhci12ZXJzaW9uMi9sYXRpbi1hbWVyaWNhL2JyL2hvbWVwYWdlL3N3aXBlcmJhbm5lci9iYW5uZXItcHYtbWFnemluZS9ici1wYy5qcGeACzxkaXYgY2xhc3M9ImZpcnN0LWJ1dHRvbiI+CiAgICA8cCBjbGFzcz0ia3YtYnRuMyI+IDxhCiAgICAgICAgICAgIGhyZWY9Ii9kb3dubG9hZD9wPSUyZi0lMmZtZWRpYSUyZlNvbGFyVjQlMmZzb2xhci12ZXJzaW9uMiUyZmNvbW1vbiUyZmhvbWVwYWdlJTJmc3dpcGVyYmFubmVyJTJmYmFubmVyLXB2LW1hZ3ppbmUlMmZwdi1tYWd6aW5lLUZ1c2lvblNvbGFyLVNwZWNpYWwtRWRpdGlvbi0yMDIzMDkyNy5wZGYiCiAgICAgICAgICAgIG9uY2xpY2sgPSJ0cnkgeyAgICBndGFnKCdldmVudCcsICdCYW5uZXJfQ2xpY2snLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6ICQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6IGRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6ICdCYW5uZXJfQ2xpY2snLCdldmVudExhYmVsJzogJ01ha2luZyB0aGUgTW9zdCBvZiBFdmVyeSBSYXknKycrJysnMC0xJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpfSk7ICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fSIKPkRvd25sb2FkPC9hPgogICAgPC9wPgo8L2Rpdj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KICAgIC5maXJzdC1idXR0b24gewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIH0KCiAgICAuZmlyc3QtYnV0dG9uIC5rdi1idG4zIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAxNi4ydnc7CiAgICAgICAgbGVmdDogMi42dnc7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICBsaW5lLWhlaWdodDogMS42OwogICAgfQoKICAgIC5maXJzdC1idXR0b24gLmt2LWJ0bjMgYSB7CiAgICAgICAgd2lkdGg6IDkuMzc1dnc7CiAgICAgICAgaGVpZ2h0OiAyLjcwODMzM3Z3OwogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgfQoKICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7CiAgICAgICAgLmZpcnN0LWJ1dHRvbiAua3YtYnRuMyB7CiAgICAgICAgICAgIHRvcDogNDYuMnZ3OwogICAgICAgICAgICBsZWZ0OiA1MCU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKICAgICAgICB9CgogICAgICAgIC5maXJzdC1idXR0b24gLmt2LWJ0bjMgYSB7CiAgICAgICAgICAgIHdpZHRoOiAyMC4zNzV2dzsKICAgICAgICAgICAgaGVpZ2h0OiA2LjIwODMzM3Z3OwogICAgICAgIH0KICAgIH0KPC9zdHlsZT4AZAICD2QWAmYPZBYCZg8PFgIfA2hkZAIDD2QWAmYPZBYCAgEPFgIfAgIDFgZmD2QWAmYPFQQrLy0vbWVkaWEvU29sYXJWNC9pbWFnZXMvSG9tZS9ob21lX2ljb24xLnN2Zwpob21lIGljb24xBjExMDkuNS5CaWxow7VlcyBkZSBrV2ggZGUgZW5lcmdpYSBzdXN0ZW50w6F2ZWwgZ2VyYWRhZAIBD2QWAmYPFQQrLy0vbWVkaWEvU29sYXJWNC9pbWFnZXMvSG9tZS9ob21lX2ljb24yLnN2Zwpob21lIGljb24yAzUyNzVNaWxow7VlcyBkZSB0b25lbGFkYXMgZGUgZW1pc3PDtWVzIGRlIENP4oKCIHJlZHV6aWRhc2QCAg9kFgJmDxUEKy8tL21lZGlhL1NvbGFyVjQvaW1hZ2VzL0hvbWUvaG9tZV9pY29uMy5zdmcKaG9tZSBpY29uMwM3MTknTWlsaMO1ZXMgZGUgw6Fydm9yZXMgcGxhbnRhZGFzIGVtIHRyb2NhZAIED2QWAmYPZBYCZg8WAh8CAgUWCmYPZBYCZg8VBQAsLy0vbWVkaWEvU29sYXJWNC9pbWFnZXMvSG9tZS9jYXJvdXNlMTc2OC5wbmcpLy0vbWVkaWEvU29sYXJWNC9pbWFnZXMvSG9tZS9jYXJvdXNlMS5wbmcIY2Fyb3VzZTEvTGlkZXJhbmRvIGludmVyc29yZXMgZW0gY2FkZWlhIGNvbW8gcmVmZXJlbmNpYWxkAgEPZBYCZg8VBQAsLy0vbWVkaWEvU29sYXJWNC9pbWFnZXMvSG9tZS9jYXJvdXNlMjc2OC5wbmcpLy0vbWVkaWEvU29sYXJWNC9pbWFnZXMvSG9tZS9jYXJvdXNlMi5wbmcIY2Fyb3VzZTJNTGlkZXJhbmRvIGEgaW5vdmHDp8OjbyBuYSBhcnF1aXRldHVyYSBkZSBzaXN0ZW1hcyBkZSBhcm1hemVuYW1lbnRvIGRlIGVuZXJnaWFkAgIPZBYCZg8VBQAsLy0vbWVkaWEvU29sYXJWNC9pbWFnZXMvSG9tZS9jYXJvdXNlMzc2OC5wbmcpLy0vbWVkaWEvU29sYXJWNC9pbWFnZXMvSG9tZS9jYXJvdXNlMy5wbmcIY2Fyb3VzZTMwTGlkZXJhbmRvIGEgbW9kZXJuaXphw6fDo28gZGlnaXRhbCBlIGludGVsaWdlbnRlZAIDD2QWAmYPFQUALC8tL21lZGlhL1NvbGFyVjQvaW1hZ2VzL0hvbWUvY2Fyb3VzZTQ3NjgucG5nKS8tL21lZGlhL1NvbGFyVjQvaW1hZ2VzL0hvbWUvY2Fyb3VzZTQucG5nCGNhcm91c2U0PkxpZGVyYW5kbyBhIG1vZGVybml6YcOnw6NvIGNvbnTDrW51YSBkYSBzZWd1cmFuw6dhIGRlIHNpc3RlbWFzZAIED2QWAmYPFQUGYWN0aXZlLC8tL21lZGlhL1NvbGFyVjQvaW1hZ2VzL0hvbWUvY2Fyb3VzZTU3NjgucG5nKS8tL21lZGlhL1NvbGFyVjQvaW1hZ2VzL0hvbWUvY2Fyb3VzZTUucG5nCGNhcm91c2U1NkxpZGVyYW5kbyBhIGNvbmV4w6NvIGNvbSByZWRlcyBlbMOpdHJpY2FzIGludGVsaWdlbnRlc2QCBQ9kFgJmD2QWAmYPFgIfAgIFFgpmD2QWAmYPFRASaG9tZV9wdlN5c3RlbV90YWcwJC8tL21lZGlhL1NvbGFyVjQvaW1hZ2VzL0hvbWUvcHYxLnBuZwNwdjEsU29sdcOnw6NvIGRlIG1pbmktcmVkZSBlbMOpdHJpY2EgaW50ZWxpZ2VudGUWaG9tZV9wdlN5c3RlbV90YWdfc3ViMCUvLS9tZWRpYS9Tb2xhclY0L2ltYWdlcy9Ib21lL3N1YjEucG5nBHN1YjEsU29sdcOnw6NvIGRlIG1pbmktcmVkZSBlbMOpdHJpY2EgaW50ZWxpZ2VudGUYL2JyL3V0aWxpdHktcGxhbnQtb3duZXJzAPQDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU2NlbmVfU2VsZWN0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiAkKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOidob21lIHBhZ2UnLCdldmVudEFjdGlvbic6J1NjZW5lX1NlbGVjdGlvbicsJ2V2ZW50TGFiZWwnOidTbWFydCBNaWNyby1ncmlkIFNvbHV0aW9uJysnKycrJ1V0aWxpdHkgUGxhbnQgT3duZXJzJysnKycrICh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0cUHJvcHJpZXTDoXJpb3MgZGUgdXRpbGl0aWVzIBwvYnIvcHJvZmVzc2lvbmFscy9taWNyby1ncmlkAOwDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU2NlbmVfU2VsZWN0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiAkKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOidob21lIHBhZ2UnLCdldmVudEFjdGlvbic6J1NjZW5lX1NlbGVjdGlvbicsJ2V2ZW50TGFiZWwnOidTbWFydCBNaWNyby1ncmlkIFNvbHV0aW9uJysnKycrJ1Byb2Zlc3Npb25hbHMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DVByb2Zpc3Npb25haXNkAgEPZBYCZg8VEBJob21lX3B2U3lzdGVtX3RhZzEkLy0vbWVkaWEvU29sYXJWNC9pbWFnZXMvSG9tZS9wdjIucG5nA3B2MjxTb2x1w6fDo28gZW0gZW5lcmdpYSBmb3Rvdm9sdGFpY2EgaW50ZWxpZ2VudGUgcGFyYSB1dGlsaXRpZXMWaG9tZV9wdlN5c3RlbV90YWdfc3ViMSUvLS9tZWRpYS9Tb2xhclY0L2ltYWdlcy9Ib21lL3N1YjIucG5nBHN1YjI8U29sdcOnw6NvIGVtIGVuZXJnaWEgZm90b3ZvbHRhaWNhIGludGVsaWdlbnRlIHBhcmEgdXRpbGl0aWVzGC9ici91dGlsaXR5LXBsYW50LW93bmVycwD0A3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1NjZW5lX1NlbGVjdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzogJCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5JzonaG9tZSBwYWdlJywnZXZlbnRBY3Rpb24nOidTY2VuZV9TZWxlY3Rpb24nLCdldmVudExhYmVsJzonVXRpbGl0eSBTbWFydCBQViBTb2x1dGlvbicrJysnKydVdGlsaXR5IFBsYW50IE93bmVycycrJysnKyAod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319HFByb3ByaWV0w6FyaW9zIGRlIHV0aWxpdGllcyAZL2JyL3Byb2Zlc3Npb25hbHMvdXRpbGl0eQDtA3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1NjZW5lX1NlbGVjdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzogJCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5JzonaG9tZSBwYWdlJywnZXZlbnRBY3Rpb24nOidTY2VuZV9TZWxlY3Rpb24nLCdldmVudExhYmVsJzonVXRpbGl0eSBTbWFydCBQViBTb2x1dGlvbicrJysnKyAnUHJvZmVzc2lvbmFscycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0NUHJvZmlzc2lvbmFpc2QCAg9kFgJmDxUQEmhvbWVfcHZTeXN0ZW1fdGFnMiQvLS9tZWRpYS9Tb2xhclY0L2ltYWdlcy9Ib21lL3B2My5wbmcDcHYzS1NvbHXDp8OjbyBlbSBlbmVyZ2lhIGZvdG92b2x0YWljYSBpbnRlbGlnZW50ZSBlIEVTUyBjb21lcmNpYWwgZSBpbmR1c3RyaWFsLhZob21lX3B2U3lzdGVtX3RhZ19zdWIyJS8tL21lZGlhL1NvbGFyVjQvaW1hZ2VzL0hvbWUvc3ViMy5wbmcEc3ViM0tTb2x1w6fDo28gZW0gZW5lcmdpYSBmb3Rvdm9sdGFpY2EgaW50ZWxpZ2VudGUgZSBFU1MgY29tZXJjaWFsIGUgaW5kdXN0cmlhbC4TL2JyL2J1c2luZXNzLW93bmVycwDwA3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1NjZW5lX1NlbGVjdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzogJCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5JzonaG9tZSBwYWdlJywnZXZlbnRBY3Rpb24nOidTY2VuZV9TZWxlY3Rpb24nLCdldmVudExhYmVsJzonQyZJIFNtYXJ0IFBWICYgRVNTIFNvbHV0aW9uJysnKycrJ0J1c2luZXNzIE93bmVycycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0aUHJvcHJpZXTDoXJpb3MgZGUgZW1wcmVzYXMVL2JyL3Byb2Zlc3Npb25hbHMvYy1pAO4DdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU2NlbmVfU2VsZWN0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiAkKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOidob21lIHBhZ2UnLCdldmVudEFjdGlvbic6J1NjZW5lX1NlbGVjdGlvbicsJ2V2ZW50TGFiZWwnOidDJkkgU21hcnQgUFYgJiBFU1MgU29sdXRpb24nKycrJysnUHJvZmVzc2lvbmFscycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0NUHJvZmlzc2lvbmFpc2QCAw9kFgJmDxUQEmhvbWVfcHZTeXN0ZW1fdGFnMyQvLS9tZWRpYS9Tb2xhclY0L2ltYWdlcy9Ib21lL3B2NC5wbmcDcHY0QFNvbHXDp8OjbyBlbSBlbmVyZ2lhIGZvdG92b2x0YWljYSBpbnRlbGlnZW50ZSBlIEVTUyByZXNpZGVuY2lhbC4WaG9tZV9wdlN5c3RlbV90YWdfc3ViMyUvLS9tZWRpYS9Tb2xhclY0L2ltYWdlcy9Ib21lL3N1YjQucG5nBHN1YjRAU29sdcOnw6NvIGVtIGVuZXJnaWEgZm90b3ZvbHRhaWNhIGludGVsaWdlbnRlIGUgRVNTIHJlc2lkZW5jaWFsLg8vYnIvaG9tZS1vd25lcnMA8wNyeSB7ICAgICBndGFnKCdldmVudCcsJ1NjZW5lX1NlbGVjdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzogJCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5JzonaG9tZSBwYWdlJywnZXZlbnRBY3Rpb24nOidTY2VuZV9TZWxlY3Rpb24nLCdldmVudExhYmVsJzonUmVzaWRlbnRpYWwgU21hcnQgUFYgJiBFU1MgU29sdXRpb24nKycrJysnSG9tZSBPd25lcnMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319F1Byb3ByaWV0w6FyaW9zIGRlIGNhc2FzHS9ici9wcm9mZXNzaW9uYWxzL3Jlc2lkZW50aWFsAPYDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU2NlbmVfU2VsZWN0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiAkKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOidob21lIHBhZ2UnLCdldmVudEFjdGlvbic6J1NjZW5lX1NlbGVjdGlvbicsJ2V2ZW50TGFiZWwnOidSZXNpZGVudGlhbCBTbWFydCBQViAmIEVTUyBTb2x1dGlvbicrJysnKydQcm9mZXNzaW9uYWxzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQ1Qcm9maXNzaW9uYWlzZAIED2QWAmYPFRASaG9tZV9wdlN5c3RlbV90YWc0JC8tL21lZGlhL1NvbGFyVjQvaW1hZ2VzL0hvbWUvcHY1LnBuZwNwdjU5U29sdcOnw6NvIGRlIEVTUyBjb20gY2FkZWlhcyBpbnRlbGlnZW50ZXMgcGFyYSB1dGlsaXRpZXMgFmhvbWVfcHZTeXN0ZW1fdGFnX3N1YjQlLy0vbWVkaWEvU29sYXJWNC9pbWFnZXMvSG9tZS9zdWI1LnBuZwRzdWI1OVNvbHXDp8OjbyBkZSBFU1MgY29tIGNhZGVpYXMgaW50ZWxpZ2VudGVzIHBhcmEgdXRpbGl0aWVzIBgvYnIvdXRpbGl0eS1wbGFudC1vd25lcnMA+wN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTY2VuZV9TZWxlY3Rpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6ICQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6J2hvbWUgcGFnZScsJ2V2ZW50QWN0aW9uJzonU2NlbmVfU2VsZWN0aW9uJywnZXZlbnRMYWJlbCc6J1V0aWxpdHkgU21hcnQgU3RyaW5nIEVTUyBTb2x1dGlvbicrJysnKydVdGlsaXR5IFBsYW50IE93bmVycycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0cUHJvcHJpZXTDoXJpb3MgZGUgdXRpbGl0aWVzIBUvYnIvcHJvZmVzc2lvbmFscy9lc3MA9AN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTY2VuZV9TZWxlY3Rpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6ICQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6J2hvbWUgcGFnZScsJ2V2ZW50QWN0aW9uJzonU2NlbmVfU2VsZWN0aW9uJywnZXZlbnRMYWJlbCc6J1V0aWxpdHkgU21hcnQgU3RyaW5nIEVTUyBTb2x1dGlvbicrJysnKydQcm9mZXNzaW9uYWxzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQ1Qcm9maXNzaW9uYWlzZAIGD2QWAmYPZBYCZg8WAh8CAgMWBmYPZBYEZg8VAxhpbkNvbnRfbGVmdF92YWx1ZV95ZWxsb3cEMTYwKztDZW50cm9zIGdsb2JhaXMgZGUgc3Vwb3J0ZSB0w6ljbmljbyBlIHBlw6dhcyBkZSByZXBvc2nDp8Ojb2QCAQ8WAh8CAgQWCAIBD2QWAmYPFQIBNRtDZW50cm9zIGRlIHN1cG9ydGUgdMOpY25pY29kAgIPZBYCZg8VAgE1LkNlbnRyb3MgZGUgb3BlcmHDp8OjbyBkZSBwZcOnYXMgZGUgcmVwb3Npw6fDo29kAgMPZBYCZg8VAgEyKkNlbnRyb3MgZGUgcmVwYXJvIGRlIHBlw6dhcyBkZSByZXBvc2nDp8Ojb2QCBA9kFgJmDxUCBDE0MCs6Q2VudHJvcyBuYWNpb25haXMgZGUgbG9nw61zdGljYSBwYXJhIHBlw6dhcyBkZSByZXBvc2nDp8Ojb2QCAQ9kFgRmDxUDGGluQ29udF9sZWZ0X3ZhbHVlX29yYW5nZQUxNzYwKxFQYXJjZWlyb3MgZ2xvYmFpc2QCAQ8WAh8CAgMWBgIBD2QWAmYPFQIFMTcwMCsTUGFyY2Vpcm9zIGRlIHZlbmRhc2QCAg9kFgJmDxUCAzYwKxVQYXJjZWlyb3MgZGUgc2VydmnDp29kAgMPZBYCZg8VAgUyMDAwKxlJbnN0YWxhZG9yZXMgY2VydGlmaWNhZG9zZAICD2QWBGYPFQMXaW5Db250X2xlZnRfdmFsdWVfZ3JlZW4CMTcbQ2VudHJvcyBnbG9iYWlzIGRlIHBlc3F1aXNhZAIBDxYCHwICAxYGAgEPZBYCZg8VAgE1F0NlbnRyb3MgZGUgY29tcGV0w6puY2lhZAICD2QWAmYPFQICMTIlQ2VudHJvcyBkZSBwZXNxdWlzYSBlIGRlc2Vudm9sdmltZW50b2QCAw9kFgJmDxUCBDIzJSsoZGEgcmVjZWl0YSBlbSBwZXNxdWlzYSBlIGRlc2Vudm9sdmltZW50b2QCBQ9kFgJmD2QWAmYPZBYIAgIPFgIfAgIFFgpmD2QWBGYPFQETU29icmUgbyBGdXNpb25Tb2xhcmQCAQ8WAh8CAgIWBAIBD2QWAmYPFQQNL2JyL25ld3Mtcm9vbQDtA3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdBYm91dCBGdXNpb25Tb2xhcicrJysnKydOZXdzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0JTm90w61jaWFzZAICD2QWAmYPFQQTL2JyL3N1Y2Nlc3Mtc3RvcmllcwD4A3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdBYm91dCBGdXNpb25Tb2xhcicrJysnKydTdWNjZXNzIFN0b3JpZXMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRVIaXN0w7NyaWFzIGRlIHN1Y2Vzc29kAgEPZBYEZg8VARVQcm9kdXRvcyBlIHNvbHXDp8O1ZXNkAgEPFgIfAgIHFg4CAQ9kFgJmDxUEHS9ici9wcm9mZXNzaW9uYWxzL3Jlc2lkZW50aWFsAI4EdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1Byb2R1Y3RzICYgU29sdXRpb24nKycrJysnUmVzaWRlbnRpYWwgU21hcnQgUFYgJiBFU1MgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fTRTb2x1w6fDo28gZGUgZW5lcmdpYSBmb3Rvdm9sdMOhaWNhIGUgRVNTIHJlc2lkZW5jaWFsZAICD2QWAmYPFQQVL2JyL3Byb2Zlc3Npb25hbHMvYy1pAIYEdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1Byb2R1Y3RzICYgU29sdXRpb24nKycrJysnQyZJIFNtYXJ0IFBWICYgRVNTIFNvbHV0aW9uJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX1AU29sdcOnw6NvIGRlIGVuZXJnaWEgZm90b3ZvbHTDoWljYSBlIEVTUyAgY29tZXJjaWFsIGUgaW5kdXN0cmlhbGQCAw9kFgJmDxUEGS9ici9wcm9mZXNzaW9uYWxzL3V0aWxpdHkAgwR0cnkgeyAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdQcm9kdWN0cyAmIFNvbHV0aW9uJysnKycrJ1V0aWxpdHkgU21hcnQgUFYgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fTFTb2x1w6fDo28gZGUgZW5lcmdpYSBmb3Rvdm9sdMOhaWNhIHBhcmEgdXRpbGl0aWVzZAIED2QWAmYPFQQVL2JyL3Byb2Zlc3Npb25hbHMvZXNzAIsEdHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnUHJvZHVjdHMgJiBTb2x1dGlvbicrJysnKydVdGlsaXR5IFNtYXJ0IFN0cmluZyBFU1MgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fUJTb2x1w6fDo28gZGUgRVNTIGNvbSBjYWRlaWFzIGludGVsaWdlbnRlcyBwYXJhIHNlcnZpw6dvcyBww7pibGljb3NkAgUPZBYCZg8VBBwvYnIvcHJvZmVzc2lvbmFscy9taWNyby1ncmlkAIQEdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1Byb2R1Y3RzICYgU29sdXRpb24nKycrJysnU21hcnQgTWljcm8tZ3JpZCBTb2x1dGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319MFNvbHXDp8Ojb3BhcmEgbWluaSByZWRlcyBlbMOpdHJpY2FzIGludGVsaWdlbnRlc2QCBg9kFgJmDxUEHi9ici9wcm9mZXNzaW9uYWxzL2FsbC1wcm9kdWN0cwD3A3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdQcm9kdWN0cyAmIFNvbHV0aW9uJysnKycrJ0FsbCBQcm9kdWN0cycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319EVRvZG9zIG9zIHByb2R1dG9zZAIHD2QWAmYPFQQdL2JyL3Byb2Zlc3Npb25hbHMvU21hcnREZXNpZ24A+gN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnUHJvZHVjdHMgJiBTb2x1dGlvbicrJysnKydTbWFydERlc2lnbiAyLjAnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQ9TbWFydERlc2lnbiAyLjBkAgIPZBYEZg8VAQlQYXJjZWlyb3NkAgEPFgIfAgIEFggCAQ9kFgJmDxUEIS9ici9wYXJ0bmVycy9wYXJ0bmVyLWludHJvZHVjdGlvbgD0A3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdQYXJ0bmVycycrJysnKydQYXJ0bmVyIEludHJvZHVjdGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319GEludHJvZHXDp8OjbyBkbyBwYXJjZWlyb2QCAg9kFgJmDxUEU2h0dHBzOi8vcGFydG5lci5odWF3ZWkuY29tL2VwbHVzLyMvZW4vd2ViL3JlZ2lzdHJhdGlvbi1ndWlkYW5jZT9zb3VyY2U9Y2hhbm5lbC1ob21lBl9ibGFua+8DdHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnUGFydG5lcnMnKycrJysnQmVjb21lIGEgUGFydG5lcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319FFRvcm5lLXNlIHVtIHBhcmNlaXJvZAIDD2QWAmYPFQQhL2JyL3BhcnRuZXJzL21hcD90eXBlPWRpc3RyaWJ1dG9yAPQDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1BhcnRuZXJzJysnKycrJ0ZpbmQgYSBEaXN0cmlidXRvcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0YRW5jb250cmUgdW0gZGlzdHJpYnVpZG9yZAIED2QWAmYPFQQwaHR0cHM6Ly9kaWdpdGFscG93ZXIuaHVhd2VpLmNvbS9wYXJ0bmVyIy9lbi9tYWluBl9ibGFua+0DdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1BhcnRuZXJzJysnKycrJ1Bvd2VyLVBhcnRuZXInKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRNQYXJjZWlyb3MgLSBlbmVyZ2lhZAIDD2QWBGYPFQESU2VydmnDp28gZSBzdXBvcnRlZAIBDxYCHwICBRYKAgEPZBYCZg8VBBcvYnIvc2VydmljZS1zdXBwb3J0L3RzYwCBBHRyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdTZXJ2aWNlICYgU3VwcG9ydCcrJysnKydUZWNobmljYWwgU3VwcG9ydCBDZW50ZXInKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRpDZW50cm8gZGUgc3Vwb3J0ZSB0w6ljbmljb2QCAg9kFgJmDxUEOWh0dHBzOi8vZGlnaXRhbHBvd2VyLmh1YXdlaS5jb20vcG93ZXItbWFya2V0aW5nLyMvZW4vaG9tZQZfYmxhbmv4A3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdTZXJ2aWNlICYgU3VwcG9ydCcrJysnKydQb3dlci1NYXJrZXRpbmcnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQ9Qb3dlci1NYXJrZXRpbmdkAgMPZBYCZg8VBCJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vZW4vaW5mby8vBl9ibGFua/kDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1NlcnZpY2UgJiBTdXBwb3J0JysnKycrJ1Byb2R1Y3QgRG9jdW1lbnQnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRVNYXRlcmlhaXMgZGUgcHJvZHV0b3NkAgQPZBYCZg8VBDBodHRwczovL2NvbW11bml0eS5zb2xhci5odWF3ZWkuY29tL2JyL2luZGV4Lmh0bWwGX2JsYW5r8gN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnU2VydmljZSAmIFN1cHBvcnQnKycrJysnQ29tbXVuaXR5JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0KQ29tdW5pZGFkZWQCBQ9kFgJmDxUEWWh0dHBzOi8vZGlnaXRhbHBvd2VyLmh1YXdlaS5jb20vcm9ib3RjaGF0LyMvaG9tZS9pbmRleD9sYW5nPWVuX1VTJmRvbWFpbj1zbWFydHB2JnByb2R1Y3Q9APcDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1NlcnZpY2UgJiBTdXBwb3J0JysnKycrJ09ubGluZSBTdXBwb3J0JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0OU3Vwb3J0ZSBvbmxpbmVkAgQPZBYEZg8VAQ5MaW5rcyByw6FwaWRvc2QCAQ8WAh8CAgUWCgIBD2QWAmYPFQQaaHR0cHM6Ly93d3cuaHVhd2VpLmNvbS9ici8GX2JsYW5r8gN0cnkgeyAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdRdWljayBMaW5rcycrJysnKydIdWF3ZWkgQ29ycG9yYXRlJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0QSHVhd2VpIENvcnBvcmF0ZWQCAg9kFgJmDxUEGGh0dHBzOi8vZS5odWF3ZWkuY29tL2JyLwZfYmxhbmvzA3RyeSB7ICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1F1aWNrIExpbmtzJysnKycrJ0h1YXdlaSBFbnRlcnByaXNlJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0RSHVhd2VpIEVudGVycHJpc2VkAgMPZBYCZg8VBC5odHRwczovL2RpZ2l0YWxwb3dlci5odWF3ZWkuY29tL2VuLz9mcm9tPXNvbGFyBl9ibGFua/cDdHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1F1aWNrIExpbmtzJysnKycrJ0h1YXdlaSBEaWdpdGFsIFBvd2VyJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0USHVhd2VpIERpZ2l0YWwgUG93ZXJkAgQPZBYCZg8VBFlodHRwczovL2ludGwuZnVzaW9uc29sYXIuaHVhd2VpLmNvbS9wdm1zd2Vic2l0ZS9ub2xvZ2luL2Fzc2V0cy9idWlsZC9pbmRleC5odG1sIy9qdW1wcGFnZQCMBHRyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdRdWljayBMaW5rcycrJysnKydEb3dubG9hZCBGdXNpb25Tb2xhciBBcHAgKE1vYmlsZSBWZXJzaW9uKScrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319H0JhaXhhciBvIEFwbGljYXRpdm8gRnVzaW9uU29sYXJkAgUPZBYCZg8VBCRodHRwczovL2ludGwuZnVzaW9uc29sYXIuaHVhd2VpLmNvbS8GX2JsYW5r+AN0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnUXVpY2sgTGlua3MnKycrJysnRnVzaW9uU29sYXIgU21hcnRQVk1TJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0VRnVzaW9uU29sYXIgU21hcnRQVk1TZAIDDxYCHwEFJcKpIDIwMjQgSHVhd2VpIFRlY2hub2xvZ2llcyBDby4sIEx0ZC5kAgQPFgIfAgIDFgZmD2QWAmYPFQPHBDxhIGNsYXNzPSJpdGVtLWxpbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lmh1YXdlaS5jb20vYnIvbGVnYWwiIHRhcmdldD0iX2JsYW5rIiBvbmNsaWNrPSJ0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6ICdUZXJtcyBvZiBVc2UnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319IiAgcmVsPSJub3JlZmVycmVyIj4NVGVybW9zIGRlIFVzbwQ8L2E+ZAIBD2QWAmYPFQOnBDxhIGNsYXNzPSJpdGVtLWxpbmsiIGhyZWY9Ii9ici9wcml2YWN5IiB0YXJnZXQ9IiIgb25jbGljaz0idHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6ICdQcml2YWN5JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fSIgIHJlbD0ibm9yZWZlcnJlciI+C1ByaXZhY2lkYWRlBDwvYT5kAgIPZBYCZg8VA6gEPGEgY2xhc3M9Iml0ZW0tbGluayIgaHJlZj0iL2JyL2Nvb2tpZXMiIHRhcmdldD0iIiBvbmNsaWNrPSJ0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6ICdDb29raWVzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fSIgIHJlbD0ibm9yZWZlcnJlciI+B0Nvb2tpZXMEPC9hPmQCBQ9kFgICAQ8WAh8BBacLPGEgY2xhc3M9InNvY2lhbC1pdGVtIiBocmVmPSJodHRwczovL3d3dy5saW5rZWRpbi5jb20vY29tcGFueS9odWF3ZWktZGlnaXRhbHBvd2VyLy8iIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vcmVmZXJyZXIiPgogICAgPHNwYW4gY2xhc3M9ImZvb3Rlci1saW5rLWltZyBsaW5rLWltZy1saW5rZWRpbiI+PC9zcGFuPgo8L2E+CjxhIGNsYXNzPSJzb2NpYWwtaXRlbSIgaHJlZj0iaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tL0h1YXdlaUZ1c2lvblNvbGFyLyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9yZWZlcnJlciI+CiAgICA8c3BhbiBjbGFzcz0iZm9vdGVyLWxpbmstaW1nIGxpbmstaW1nLWZhY2Vib29rIj48L3NwYW4+CjwvYT4KPGEgY2xhc3M9InNvY2lhbC1pdGVtIiBocmVmPSJodHRwczovL3R3aXR0ZXIuY29tL0h1YXdlaVNvbGFyIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub3JlZmVycmVyIj4KICAgIDxzcGFuIGNsYXNzPSJmb290ZXItbGluay1pbWcgbGluay1pbWctdHdpdHRlciI+PC9zcGFuPgo8L2E+CjxhIGNsYXNzPSJzb2NpYWwtaXRlbSIgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vYy9IdWF3ZWlGdXNpb25Tb2xhciIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9yZWZlcnJlciI+CiAgICA8c3BhbiBjbGFzcz0iZm9vdGVyLWxpbmstaW1nIGxpbmstaW1nLXlvdXR1YmUiPjwvc3Bhbj4KPC9hPgo8IS0tIDxkaXYgY2xhc3M9InNvY2lhbC1pdGVtIHNvY2lhbC1pY29uIj4KICAgIDxzcGFuIGNsYXNzPSJmb290ZXItbGluay1pbWcgbGluay1pbWctd2VjaGF0Ij4KICAgIDwvc3Bhbj4KICAgIDxkaXYgY2xhc3M9ImhvdmVyLXBvcCI+CiAgICAgICAgPGRpdiBjbGFzcz0iaWNvbi1jbG9zZSI+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icG9wLXRleHQiPgogICAgICAgICAgICA8cD7lrpjmlrnlvq7kv6E8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icG9wLWltZyI+CiAgICAgICAgICAgIDxpbWcgc3JjPSIvQXNzZXRzL1NvbGFyL3Y0L2ltZy9jb21tb24vd2VjaGF0LnBuZyI+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9InNvY2lhbC1pdGVtIHNvY2lhbC1pY29uIGxhc3QtaWNvbiI+CiAgICA8c3BhbiBjbGFzcz0iZm9vdGVyLWxpbmstaW1nIGxpbmstaW1nLXRvdXRpYW8iPgogICAgPC9zcGFuPgogICAgPGRpdiBjbGFzcz0iaG92ZXItcG9wIj4KICAgICAgICA8ZGl2IGNsYXNzPSJpY29uLWNsb3NlIj48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwb3AtdGV4dCI+CiAgICAgICAgICAgIDxwPuWktOadoTwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwb3AtaW1nIj4KICAgICAgICAgICAgPGltZyBzcmM9Ii9Bc3NldHMvU29sYXIvdjQvaW1nL2NvbW1vbi90b3V0aWFvLnBuZyI+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KPC9kaXY+IC0tPmRkgoThWdCmyE+pnsLc9udlXmuBxbs20s1/gXlMm0xUNzE="> </div> </form> <input type="hidden" id="hidUserStatusUrl" value="/en/user"> <div id="pageHeaderWrapper" class=""> <div class="global_header_wrapper"> <div class="global_header_fixed"> <div class="nav-wrapper"> <div class="nav-top"> <div class="nav-top-right"> <div class="nav-top-item"> <a href="/br/online-experience-hall?step=card" target="" onclick="try { gtag('event','Navigation_Function',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Navigation_Function','eventLabel':'Online Experience Hall'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Hall de experiência online</a> </div> <div class="nav-top-item nav-top-language"> <span class="language_ic"></span> <span>Brazil</span> <span class="language_select"></span> </div> </div> </div> <div class="nav-language"> <div class="nav-allLangBox"> <div class="icon-close"></div> <div class="curr-lang"><span class="icon-curr"></span> <a href="https://solar.huawei.com/en">FusionSolar Global / English</a> </div> <div class="allLang"> <div class="areaItem"> <div class="areaText">Asia Pacific</div> <div class="langList"> <div class="langItem"><a href="https://solar.huawei.com/au">Australia / English</a></div> <div class="langItem"><a href="https://solar.huawei.com/cn">China / 简体中文</a></div> <div class="langItem"><a href="https://solar.huawei.com/hk">Hong Kong, China / 繁體中文</a></div> <div class="langItem"><a href="https://solar.huawei.com/id">Indonesia / Indonesian</a></div> <div class="langItem"><a href="https://solar.huawei.com/jp">Japan / 日本語</a></div> <div class="langItem"><a href="https://solar.huawei.com/my">Malaysia / English</a></div> <div class="langItem"><a href="https://solar.huawei.com/ph">Philippines / English</a></div> <div class="langItem"><a href="https://solar.huawei.com/sg">Singapore / English</a></div> <div class="langItem"><a href="https://solar.huawei.com/kr">South Korea / 한국어</a></div> <div class="langItem"><a href="https://solar.huawei.com/th">Thailand / ไทย</a></div> <div class="langItem"><a href="https://solar.huawei.com/vn">Vietnam / English</a></div> </div> </div> <div class="areaItem"> <div class="areaText">Europe</div> <div class="langList"> <div class="langItem"><a href="https://solar.huawei.com/at">Austria / Deutsch</a></div> <div class="langItem"><a href="https://solar.huawei.com/be-fr">Belgium / Français</a></div> <div class="langItem"><a href="https://solar.huawei.com/be">Belgium / Nederlands</a></div> <div class="langItem"><a href="https://solar.huawei.com/bg">Bulgaria / български</a></div> <div class="langItem"><a href="https://solar.huawei.com/hr">Croatia / hrvatski</a></div> <div class="langItem"><a href="https://solar.huawei.com/cz">Czechia / čeština</a></div> <div class="langItem"><a href="https://solar.huawei.com/dk">Denmark / Dansk</a></div> <div class="langItem"><a href="https://solar.huawei.com/fr">France / Français</a></div> <div class="langItem"><a href="https://solar.huawei.com/de">Germany / Deutsch</a></div> <div class="langItem"><a href="https://solar.huawei.com/gr">Greece / Ελληνικά</a></div> <div class="langItem"><a href="https://solar.huawei.com/hu">Hungary / Hungarian</a></div> <div class="langItem"><a href="https://solar.huawei.com/ie">Ireland / English</a></div> <div class="langItem"><a href="https://solar.huawei.com/it">Italy / Italiano</a></div> <div class="langItem"><a href="https://solar.huawei.com/nl">Netherlands / Dutch</a></div> <div class="langItem"><a href="https://solar.huawei.com/pl">Poland / Polish</a></div> <div class="langItem"><a href="https://solar.huawei.com/pt">Portugal / português</a></div> <div class="langItem"><a href="https://solar.huawei.com/ro">Romania / română</a></div> <div class="langItem"><a href="https://solar.huawei.com/sk">Slovakia / slovenčina</a></div> <div class="langItem"><a href="https://solar.huawei.com/es">Spain / Español</a></div> <div class="langItem"><a href="https://solar.huawei.com/se">Sweden / Svenska</a></div> <div class="langItem"><a href="https://solar.huawei.com/ch">Switzerland / Deutsch</a></div> <div class="langItem"><a href="https://solar.huawei.com/ch-fr">Switzerland / Français</a></div> <div class="langItem"><a href="https://solar.huawei.com/tr">Türkiye / Türkçe</a></div> <div class="langItem"><a href="https://solar.huawei.com/ua">Ukraine / Україна</a></div> </div> </div> <div class="areaItem"> <div class="areaText">Latin America</div> <div class="langList"> <div class="langItem"><a href="https://solar.huawei.com/br">Brazil / Portuguese</a></div> <div class="langItem"><a href="https://solar.huawei.com/latam">Latin America / Español</a></div> <div class="langItem"><a href="https://solar.huawei.com/mx">México / Español</a></div> </div> </div> <div class="areaItem"> <div class="areaText">Middle East & Africa</div> <div class="langList"> <div class="langItem"><a href="https://solar.huawei.com/eg">Egypt / اللغة العربية</a></div> <div class="langItem"><a href="https://solar.huawei.com/ke">Kenya / English</a></div> <div class="langItem"><a href="https://solar.huawei.com/ma">Morocco / Français</a></div> <div class="langItem"><a href="https://solar.huawei.com/ng">Nigeria / English</a></div> <div class="langItem"><a href="https://solar.huawei.com/pk">Pakistan / English</a></div> <div class="langItem"><a href="https://solar.huawei.com/sa">Saudi Arabia / اللغة العربية </a></div> <div class="langItem"><a href="https://solar.huawei.com/sa-en">Saudi Arabia / English</a></div> <div class="langItem"><a href="https://solar.huawei.com/za">South Africa / English</a></div> <div class="langItem"><a href="https://solar.huawei.com/tn">Tunisia / Français</a></div> <div class="langItem"><a href="https://solar.huawei.com/ae">UAE / اللغة العربية</a></div> <div class="langItem"><a href="https://solar.huawei.com/ae-en">UAE / English</a></div> </div> </div> </div> </div> </div> </div> <div class="pageheader_container" id="pageHeader"> <div class="pageheader"> <div class="pageheader-box grid--align-spread"> <div class="pageheader-menu-left"> <a class="header-left" href="/br"> <div class="header-logo"> <img src="/-/media/SolarV4/Common/logo-v1.svg" alt="logo v1" class="whiteLogo"> <img src="/-/media/SolarV4/Common/logo-dark-v2.svg" alt="logo dark v2" class="darkLogo"> </div> </a> <div class="pageheader-menu"> <ul> <li class="menu_item_li "><a class="menu_item_a" href="/br/home-owners" target="" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Home Owners'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Proprietários de casas</a> <div class="submenu submenu-hidden"> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="/br/business-owners" target="" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Business Owners'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Proprietários de empresas</a> <div class="submenu submenu-hidden"> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="/br/utility-plant-owners" target="" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Utility Plant Owners'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Proprietarios de utilities</a> <div class="submenu submenu-hidden"> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="/br/professionals/residential" target="" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Professionals'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Profissionais</a> <div class="submenu submenu-hidden"> <a href="/br/professionals/residential" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'Residential Smart PV & ESS Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Solução de energia fotovoltaica inteligente e ESS residencial</div> </a> <a href="/br/professionals/c-i" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'C&I Smart PV & ESS Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Solução de energia fotovoltaica inteligente e ESS comercial e industrial</div> </a> <a href="/br/professionals/utility" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'Utility Smart PV Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Solução de energia fotovoltáica inteligentes para utilities</div> </a> <a href="/br/professionals/ess" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'Utility Smart String ESS Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Solução de ESS com cadeias inteligentes para utilities</div> </a> <a href="/br/professionals/micro-grid" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'Smart Micro-grid Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Solução de mini-rede elétrica inteligente</div> </a> <a href="/br/professionals/SmartDesign" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'SmartDesign 2.0'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">SmartDesign 2.0</div> </a> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="/br/partners/partner-introduction" target="" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Partners'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Parceiros</a> <div class="submenu submenu-hidden"> <a href="/br/partners/partner-introduction" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Partners'+'+'+'Partner Introduction'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Introdução do parceiro</div> </a> <a href="https://partner.huawei.com/eplus/#/en/web/registration-guidance?source=channel-home" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Partners'+'+'+'Become a Partner'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Torne-se um parceiro</div> </a> <a href="https://digitalpower.huawei.com/partner#/en/main" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Partners'+'+'+'Power-Partner'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Parceiros - energia</div> </a> <a href="https://community.solar.huawei.com/br/index.html" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Partners'+'+'+'Installers Community'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Comunidade de instaladores</div> </a> <a href="/br/partners/map?type=distributor" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Partners'+'+'+'Find a Distributor'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Encontre um distribuidor</div> </a> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="/br/professionals/all-products" target="" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Products'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Produtos</a> <div class="submenu submenu-hidden"> </div> </li> </ul> </div> </div> <div class="pageheader-menu-right"> <div class="pageheader-menu"> <ul> <li class="menu_item_li "><a class="menu_item_a" href="/br/service-support/tsc" target="" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Support'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Suporte</a> <div class="submenu submenu-hidden"> <a href="/br/service-support/tsc" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Support'+'+'+'Technical Support Center'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Centro de suporte técnico</div> </a> <a href="https://digitalpower.huawei.com/robotchat/#/home/index?lang=en_US&domain=smartpv&product=" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Support'+'+'+'Online Support'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Suporte online</div> </a> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="https://community.solar.huawei.com/br/index.html" target="_blank" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Community'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Comunidade</a> <div class="submenu submenu-hidden"> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="https://solar.huawei.com/en/info/" target="_blank" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Download'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Baixar</a> <div class="submenu submenu-hidden"> <a href="https://solar.huawei.com/en/info/" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Download'+'+'+'Product Document'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Materiais de produtos</div> </a> <a href="https://digitalpower.huawei.com/power-marketing/#/en/home" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Download'+'+'+'Power-Marketing'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="sub_menu_a">Power-Marketing</div> </a> </div> </li> </ul> </div> <div class="pageheader-right grid--vertical-align-center"> <a href="/br/order-now" target="" onclick="try { gtag('event','Buy_Click',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Buy_Click','eventLabel':'Order Now'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <div class="header-contact"> <button id="ev_bt_1005" class="ev_button default border-radius-24" title="" tabindex="0" type="button"> <span class="ev_button_text">Faça seu pedido agora</span> </button> </div> </a> </div> </div> </div> </div> <div class="pageheader-min"> <div class="pageheader-min-box grid--align-spread"> <a class="header-left" href="/br"> <div class="headerLeft"> <span class="header-min-logo"> <img src="/-/media/SolarV4/Common/logo-v1.svg" alt="logo v1" class="min-white-logo"> <img src="/-/media/SolarV4/Common/logo-dark-v2.svg" alt="logo dark v2" class="min-dark-logo"> </span> </div> </a> <div class="nav-top-min nav-top-language"><span class="language_ic"></span><span>Brazil</span><span class="language_select"></span></div> <div class="container"> </div> <div class="headerRight grid--vertical-align-center"> <span class="header-icon header-min-setting"></span> <span class="header-icon header-min-close"></span> </div> </div> </div> <div class="header-drawer"> <ul class="header-drawer-box"> <li class="textItem"> <div class="textItem_div"> <a href="/br/home-owners" id="header_0_rptMobileMainNav_lkLink_0" class="item-link" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Home Owners'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <span>Proprietários de casas</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a href="/br/business-owners" id="header_0_rptMobileMainNav_lkLink_1" class="item-link" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Business Owners'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <span>Proprietários de empresas</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a href="/br/utility-plant-owners" id="header_0_rptMobileMainNav_lkLink_2" class="item-link" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Utility Plant Owners'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <span>Proprietarios de utilities</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a href="javascript:;" id="header_0_rptMobileMainNav_lkLink_3" class="item-link" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Professionals'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <span>Profissionais</span> </a> <span class="textItem_arr"></span> </div> <ul class="submenu" style="display: none;"> <li class="textItem"><a class="item-link" href="/br/professionals/residential" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'Residential Smart PV & ESS Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Solução de energia fotovoltaica inteligente e ESS residencial</a></li> <li class="textItem"><a class="item-link" href="/br/professionals/c-i" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'C&I Smart PV & ESS Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Solução de energia fotovoltaica inteligente e ESS comercial e industrial</a></li> <li class="textItem"><a class="item-link" href="/br/professionals/utility" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'Utility Smart PV Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Solução de energia fotovoltáica inteligentes para utilities</a></li> <li class="textItem"><a class="item-link" href="/br/professionals/ess" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'Utility Smart String ESS Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Solução de ESS com cadeias inteligentes para utilities</a></li> <li class="textItem"><a class="item-link" href="/br/professionals/micro-grid" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'Smart Micro-grid Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Solução de mini-rede elétrica inteligente</a></li> <li class="textItem"><a class="item-link" href="/br/professionals/SmartDesign" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Professionals'+'+'+'SmartDesign 2.0'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">SmartDesign 2.0</a></li> </ul> </li> <li class="textItem"> <div class="textItem_div"> <a href="javascript:;" id="header_0_rptMobileMainNav_lkLink_4" class="item-link" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Partners'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <span>Parceiros</span> </a> <span class="textItem_arr"></span> </div> <ul class="submenu" style="display: none;"> <li class="textItem"><a class="item-link" href="/br/partners/partner-introduction" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Partners'+'+'+'Partner Introduction'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Introdução do parceiro</a></li> <li class="textItem"><a class="item-link" href="https://partner.huawei.com/eplus/#/en/web/registration-guidance?source=channel-home" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Partners'+'+'+'Become a Partner'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Torne-se um parceiro</a></li> <li class="textItem"><a class="item-link" href="https://digitalpower.huawei.com/partner#/en/main" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Partners'+'+'+'Power-Partner'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Parceiros - energia</a></li> <li class="textItem"><a class="item-link" href="https://community.solar.huawei.com/br/index.html" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Partners'+'+'+'Installers Community'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Comunidade de instaladores</a></li> <li class="textItem"><a class="item-link" href="/br/partners/map?type=distributor" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Partners'+'+'+'Find a Distributor'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Encontre um distribuidor</a></li> </ul> </li> <li class="textItem"> <div class="textItem_div"> <a href="/br/professionals/all-products" id="header_0_rptMobileMainNav_lkLink_5" class="item-link" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Products'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <span>Produtos</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a href="javascript:;" id="header_0_rptMobileMainNav_lkLink_6" class="item-link" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Support'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <span>Suporte</span> </a> <span class="textItem_arr"></span> </div> <ul class="submenu" style="display: none;"> <li class="textItem"><a class="item-link" href="/br/service-support/tsc" target="" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Support'+'+'+'Technical Support Center'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Centro de suporte técnico</a></li> <li class="textItem"><a class="item-link" href="https://digitalpower.huawei.com/robotchat/#/home/index?lang=en_US&domain=smartpv&product=" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Support'+'+'+'Online Support'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Suporte online</a></li> </ul> </li> <li class="textItem"> <div class="textItem_div"> <a href="https://community.solar.huawei.com/br/index.html" id="header_0_rptMobileMainNav_lkLink_7" class="item-link" target="_blank" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Community'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <span>Comunidade</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a href="javascript:;" id="header_0_rptMobileMainNav_lkLink_8" class="item-link" onclick="try { gtag('event','First_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction': 'First_Navigation','eventLabel':'Download'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <span>Baixar</span> </a> <span class="textItem_arr"></span> </div> <ul class="submenu" style="display: none;"> <li class="textItem"><a class="item-link" href="https://solar.huawei.com/en/info/" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Download'+'+'+'Product Document'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Materiais de produtos</a></li> <li class="textItem"><a class="item-link" href="https://digitalpower.huawei.com/power-marketing/#/en/home" target="_blank" onclick="try { gtag('event','Sub_Navigation',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Sub_Navigation','eventLabel':'Download'+'+'+'Power-Marketing'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Power-Marketing</a></li> </ul> </li> <li class="textItem"> <div class="textItem_div"> <a class="item-link" href="/br/online-experience-hall?step=card" target="" onclick="try { gtag('event','Navigation_Function',{'eventCategory':document.location.pathname,'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Navigation_Function','eventLabel':'Online Experience Hall'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <span>Hall de experiência online</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a class="item-link" href="/br/order-now" target="" onclick="try { gtag('event','Buy_Click',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventAction':'Buy_Click','eventLabel':'Order Now'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <span>Faça seu pedido agora</span> </a> </div> </li> </ul> </div> </div> </div> </div> </div> <input id="pagelang" type="hidden" value="en-BZ"> <div class="main"> <!--HWDocContent--> <div id="dig_swiper_banner" class="dig_banner"> <div class="swiper dig_swiper"> <div class="swiper-wrapper"> <div class="swiper-slide"> <picture class="dig_banner_picture"> <source media="(max-width:768px)" srcset="/-/media/SolarV4/solar-version2/latin-america/br/homepage/swiperbanner/banner-pv-magzine/br-mob.jpg"></source> <img src="/-/media/SolarV4/solar-version2/latin-america/br/homepage/swiperbanner/banner-pv-magzine/br-pc.jpg"> </picture> <div class="dig_banner_content"> <div class="first-button"> <p class="kv-btn3"> <a href="/download?p=%2f-%2fmedia%2fSolarV4%2fsolar-version2%2fcommon%2fhomepage%2fswiperbanner%2fbanner-pv-magzine%2fpv-magzine-FusionSolar-Special-Edition-20230927.pdf" onclick="try { gtag('event', 'Banner_Click',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory': document.location.pathname,'eventAction': 'Banner_Click','eventLabel': 'Making the Most of Every Ray'+'+'+'0-1'+'+'+(window.location.origin + window.location.pathname)}); } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Download</a> </p> </div> <style type="text/css"> .first-button { position: relative; } .first-button .kv-btn3 { position: absolute; top: 16.2vw; left: 2.6vw; opacity: 0; line-height: 1.6; } .first-button .kv-btn3 a { width: 9.375vw; height: 2.708333vw; display: block; } @media screen and (max-width: 768px) { .first-button .kv-btn3 { top: 46.2vw; left: 50%; transform: translateX(-50%); } .first-button .kv-btn3 a { width: 20.375vw; height: 6.208333vw; } } </style> </div> </div> </div> <div class="swiper-pagination dig_BannerSwiper_pagination"></div> </div> </div> <div class="home_banner"> <video autoplay="" loop="" muted="" playsinline="" poster="/-/media/SolarV4/images/Home/bannerPoster.jpg" src="/-/media/SolarV4/images/Home/homepage_1129.mp4"> </video> <div class="home_banner_content"> <div class="home_banner_title"> <p>Rumo à energia solar,<br> Juntos para<br> potencializar a mudança</p> </div> <div class="banner-buttons home_banner_btn"> <button class="ev_button default button-transparent border-radius-24" title="" tabindex="0" type="button"> <span class="ev_button_text">Casos de sucesso</span> </button> </div> </div> </div> <div class="home_banner_HiddenedVideo"> <div class="home_banner_HV_content"> <img class="home_banner_HV_close" src="/Assets/Solar/v4/img/Home/close.png" alt="HV_close"><video src="/-/media/Solar/videos/MP4/2022Global-SuccessStories.mp4" poster="" controls="true"> </video> </div> </div> <div class="home_dig_panel"> <div class="home_dig_panel_items"> <div class="home_dig_panel_item"> <h2> <img src="/-/media/SolarV4/images/Home/home_icon1.svg" alt="home icon1"> 1109.5</h2> <p>Bilhões de kWh de energia sustentável gerada</p> </div> <div class="home_dig_panel_item"> <h2> <img src="/-/media/SolarV4/images/Home/home_icon2.svg" alt="home icon2"> 527</h2> <p>Milhões de toneladas de emissões de CO₂ reduzidas</p> </div> <div class="home_dig_panel_item"> <h2> <img src="/-/media/SolarV4/images/Home/home_icon3.svg" alt="home icon3"> 719</h2> <p>Milhões de árvores plantadas em troca</p> </div> </div> </div> <div class="home_XA"> <div class="dig_carouse_accordion"> <div class="dig_carouse_headerTitle"> Liderando a inovação para criar o máximo de valor </div> <div class="dig_carouse_accordion_box"> <div class="dig_carouse_accordion_li "> <picture class="dig_swiper_picture"> <source media="(max-width:768px)" srcset="/-/media/SolarV4/images/Home/carouse1768.png"></source> <img src="/-/media/SolarV4/images/Home/carouse1.png" alt="carouse1"> </picture> <div class="dig_ca_text_wrap"> <div class="dig_ca_li_title"> Liderando inversores em cadeia como referencial </div> </div> <div class="dig_ca_mock"></div> </div> <div class="dig_carouse_accordion_li "> <picture class="dig_swiper_picture"> <source media="(max-width:768px)" srcset="/-/media/SolarV4/images/Home/carouse2768.png"></source> <img src="/-/media/SolarV4/images/Home/carouse2.png" alt="carouse2"> </picture> <div class="dig_ca_text_wrap"> <div class="dig_ca_li_title"> Liderando a inovação na arquitetura de sistemas de armazenamento de energia </div> </div> <div class="dig_ca_mock"></div> </div> <div class="dig_carouse_accordion_li "> <picture class="dig_swiper_picture"> <source media="(max-width:768px)" srcset="/-/media/SolarV4/images/Home/carouse3768.png"></source> <img src="/-/media/SolarV4/images/Home/carouse3.png" alt="carouse3"> </picture> <div class="dig_ca_text_wrap"> <div class="dig_ca_li_title"> Liderando a modernização digital e inteligente </div> </div> <div class="dig_ca_mock"></div> </div> <div class="dig_carouse_accordion_li "> <picture class="dig_swiper_picture"> <source media="(max-width:768px)" srcset="/-/media/SolarV4/images/Home/carouse4768.png"></source> <img src="/-/media/SolarV4/images/Home/carouse4.png" alt="carouse4"> </picture> <div class="dig_ca_text_wrap"> <div class="dig_ca_li_title"> Liderando a modernização contínua da segurança de sistemas </div> </div> <div class="dig_ca_mock"></div> </div> <div class="dig_carouse_accordion_li active"> <picture class="dig_swiper_picture"> <source media="(max-width:768px)" srcset="/-/media/SolarV4/images/Home/carouse5768.png"></source> <img src="/-/media/SolarV4/images/Home/carouse5.png" alt="carouse5"> </picture> <div class="dig_ca_text_wrap"> <div class="dig_ca_li_title"> Liderando a conexão com redes elétricas inteligentes </div> </div> <div class="dig_ca_mock"></div> </div> </div> </div> </div> <div class="home_pvSystem"> <!-- <video muted src="https://solar.huawei.com/~/media/Solar/videos/_ver2.webm" ></video> --> <video autoplay="" muted="" playsinline="" src="/-/media/SolarV4/images/Home/_ver2.mp4"> </video> <img class="home_pvSystem_bg_m" src="/-/media/SolarV4/images/Home/pvSystem.jpg" alt="pvSystem"> <div class="home_pvSystem_tag home_pvSystem_tag0"> <img src="/-/media/SolarV4/images/Home/pv1.png" alt="pv1"><span class="home_pvSystem_tag_desc">Solução de mini-rede elétrica inteligente</span> <div class="home_pvSystem_tag_sub home_pvSystem_tag_sub0"> <img src="/-/media/SolarV4/images/Home/sub1.png" alt="sub1"> <p class="home_pvSystem_sub_title">Solução de mini-rede elétrica inteligente</p> <div class="home_pvSystem_sub_btns"> <span class="home_pvSystem_sub_btn"> <span class="home_pvs_sub_icon home_pvs_sub_icon1"></span><a href="/br/utility-plant-owners" target="" onclick="try { gtag('event','Scene_Selection',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':'home page','eventAction':'Scene_Selection','eventLabel':'Smart Micro-grid Solution'+'+'+'Utility Plant Owners'+'+'+ (window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Proprietários de utilities </a> </span><span class="home_pvSystem_sub_btn"> <span class="home_pvs_sub_icon home_pvs_sub_icon2"></span><a href="/br/professionals/micro-grid" target="" onclick="try { gtag('event','Scene_Selection',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':'home page','eventAction':'Scene_Selection','eventLabel':'Smart Micro-grid Solution'+'+'+'Professionals'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Profissionais</a> </span> </div> </div> </div> <div class="home_pvSystem_tag home_pvSystem_tag1"> <img src="/-/media/SolarV4/images/Home/pv2.png" alt="pv2"><span class="home_pvSystem_tag_desc">Solução em energia fotovoltaica inteligente para utilities</span> <div class="home_pvSystem_tag_sub home_pvSystem_tag_sub1"> <img src="/-/media/SolarV4/images/Home/sub2.png" alt="sub2"> <p class="home_pvSystem_sub_title">Solução em energia fotovoltaica inteligente para utilities</p> <div class="home_pvSystem_sub_btns"> <span class="home_pvSystem_sub_btn"> <span class="home_pvs_sub_icon home_pvs_sub_icon1"></span><a href="/br/utility-plant-owners" target="" onclick="try { gtag('event','Scene_Selection',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':'home page','eventAction':'Scene_Selection','eventLabel':'Utility Smart PV Solution'+'+'+'Utility Plant Owners'+'+'+ (window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Proprietários de utilities </a> </span><span class="home_pvSystem_sub_btn"> <span class="home_pvs_sub_icon home_pvs_sub_icon2"></span><a href="/br/professionals/utility" target="" onclick="try { gtag('event','Scene_Selection',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':'home page','eventAction':'Scene_Selection','eventLabel':'Utility Smart PV Solution'+'+'+ 'Professionals'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Profissionais</a> </span> </div> </div> </div> <div class="home_pvSystem_tag home_pvSystem_tag2"> <img src="/-/media/SolarV4/images/Home/pv3.png" alt="pv3"><span class="home_pvSystem_tag_desc">Solução em energia fotovoltaica inteligente e ESS comercial e industrial.</span> <div class="home_pvSystem_tag_sub home_pvSystem_tag_sub2"> <img src="/-/media/SolarV4/images/Home/sub3.png" alt="sub3"> <p class="home_pvSystem_sub_title">Solução em energia fotovoltaica inteligente e ESS comercial e industrial.</p> <div class="home_pvSystem_sub_btns"> <span class="home_pvSystem_sub_btn"> <span class="home_pvs_sub_icon home_pvs_sub_icon1"></span><a href="/br/business-owners" target="" onclick="try { gtag('event','Scene_Selection',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':'home page','eventAction':'Scene_Selection','eventLabel':'C&I Smart PV & ESS Solution'+'+'+'Business Owners'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Proprietários de empresas</a> </span><span class="home_pvSystem_sub_btn"> <span class="home_pvs_sub_icon home_pvs_sub_icon2"></span><a href="/br/professionals/c-i" target="" onclick="try { gtag('event','Scene_Selection',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':'home page','eventAction':'Scene_Selection','eventLabel':'C&I Smart PV & ESS Solution'+'+'+'Professionals'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Profissionais</a> </span> </div> </div> </div> <div class="home_pvSystem_tag home_pvSystem_tag3"> <img src="/-/media/SolarV4/images/Home/pv4.png" alt="pv4"><span class="home_pvSystem_tag_desc">Solução em energia fotovoltaica inteligente e ESS residencial.</span> <div class="home_pvSystem_tag_sub home_pvSystem_tag_sub3"> <img src="/-/media/SolarV4/images/Home/sub4.png" alt="sub4"> <p class="home_pvSystem_sub_title">Solução em energia fotovoltaica inteligente e ESS residencial.</p> <div class="home_pvSystem_sub_btns"> <span class="home_pvSystem_sub_btn"> <span class="home_pvs_sub_icon home_pvs_sub_icon1"></span><a href="/br/home-owners" target="" onclick="ry { gtag('event','Scene_Selection',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':'home page','eventAction':'Scene_Selection','eventLabel':'Residential Smart PV & ESS Solution'+'+'+'Home Owners'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Proprietários de casas</a> </span><span class="home_pvSystem_sub_btn"> <span class="home_pvs_sub_icon home_pvs_sub_icon2"></span><a href="/br/professionals/residential" target="" onclick="try { gtag('event','Scene_Selection',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':'home page','eventAction':'Scene_Selection','eventLabel':'Residential Smart PV & ESS Solution'+'+'+'Professionals'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Profissionais</a> </span> </div> </div> </div> <div class="home_pvSystem_tag home_pvSystem_tag4"> <img src="/-/media/SolarV4/images/Home/pv5.png" alt="pv5"><span class="home_pvSystem_tag_desc">Solução de ESS com cadeias inteligentes para utilities </span> <div class="home_pvSystem_tag_sub home_pvSystem_tag_sub4"> <img src="/-/media/SolarV4/images/Home/sub5.png" alt="sub5"> <p class="home_pvSystem_sub_title">Solução de ESS com cadeias inteligentes para utilities </p> <div class="home_pvSystem_sub_btns"> <span class="home_pvSystem_sub_btn"> <span class="home_pvs_sub_icon home_pvs_sub_icon1"></span><a href="/br/utility-plant-owners" target="" onclick="try { gtag('event','Scene_Selection',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':'home page','eventAction':'Scene_Selection','eventLabel':'Utility Smart String ESS Solution'+'+'+'Utility Plant Owners'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Proprietários de utilities </a> </span><span class="home_pvSystem_sub_btn"> <span class="home_pvs_sub_icon home_pvs_sub_icon2"></span><a href="/br/professionals/ess" target="" onclick="try { gtag('event','Scene_Selection',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':'home page','eventAction':'Scene_Selection','eventLabel':'Utility Smart String ESS Solution'+'+'+'Professionals'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Profissionais</a> </span> </div> </div> </div> </div> <div class="home_global_container"> <div class="home_global"> <div class="home_glb_canvas home_glb_canvas_mobile"> <canvas id="homeGlbCanvas" width="784" height="784"></canvas> </div> <div class="home_glb_content"> <div class="home_glb_inner_content"> <div class="inCont_left"> <span class="inCont_left_value inCont_left_value_yellow">160+</span><span class="inCont_left_desc">Centros globais de suporte técnico e peças de reposição</span> </div> <div class="inCont_split"></div> <div class="inCont_right"> <div class="inCont_right_subItem"> <span class="inCont_right_subItem_value">5</span> <div class="inCont_right_subItem_desc"> Centros de suporte técnico </div> </div> <div class="inCont_right_subItem"> <span class="inCont_right_subItem_value">5</span> <div class="inCont_right_subItem_desc"> Centros de operação de peças de reposição </div> </div> <div class="inCont_right_subItem"> <span class="inCont_right_subItem_value">2</span> <div class="inCont_right_subItem_desc"> Centros de reparo de peças de reposição </div> </div> <div class="inCont_right_subItem"> <span class="inCont_right_subItem_value">140+</span> <div class="inCont_right_subItem_desc"> Centros nacionais de logística para peças de reposição </div> </div> </div> </div> </div> <div class="home_glb_content"> <div class="home_glb_inner_content"> <div class="inCont_left"> <span class="inCont_left_value inCont_left_value_orange">1760+</span><span class="inCont_left_desc">Parceiros globais</span> </div> <div class="inCont_split"></div> <div class="inCont_right"> <div class="inCont_right_subItem"> <span class="inCont_right_subItem_value">1700+</span> <div class="inCont_right_subItem_desc"> Parceiros de vendas </div> </div> <div class="inCont_right_subItem"> <span class="inCont_right_subItem_value">60+</span> <div class="inCont_right_subItem_desc"> Parceiros de serviço </div> </div> <div class="inCont_right_subItem"> <span class="inCont_right_subItem_value">2000+</span> <div class="inCont_right_subItem_desc"> Instaladores certificados </div> </div> </div> </div> </div> <div class="home_glb_content"> <div class="home_glb_inner_content"> <div class="inCont_left"> <span class="inCont_left_value inCont_left_value_green">17</span><span class="inCont_left_desc">Centros globais de pesquisa</span> </div> <div class="inCont_split"></div> <div class="inCont_right"> <div class="inCont_right_subItem"> <span class="inCont_right_subItem_value">5</span> <div class="inCont_right_subItem_desc"> Centros de competência </div> </div> <div class="inCont_right_subItem"> <span class="inCont_right_subItem_value">12</span> <div class="inCont_right_subItem_desc"> Centros de pesquisa e desenvolvimento </div> </div> <div class="inCont_right_subItem"> <span class="inCont_right_subItem_value">23%+</span> <div class="inCont_right_subItem_desc"> da receita em pesquisa e desenvolvimento </div> </div> </div> </div> </div> </div> </div> <script> var earchFolder = 'en'; </script> <div class="home_onlineHall"> <video autoplay="" loop="" muted="" playsinline="" poster="" src="/-/media/SolarV4/images/Home/online-hall.mp4"> </video> <div class="hO_hallTitle"> <span class="hO_circle"></span> <h2>Hall de experiência online</h2> <p>Visita virtual imersiva a projetos de referência, salas de exposição, etc.</p> </div> <div class="banner-buttons hO_btn"> <a href="/br/online-experience-hall?step=card" target="" onclick="try { gtag('event', 'Online_Experience_Entry Interaction',{'Site_Country_Code_H': $('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory': 'home page','eventAction': 'Online_Experience_Entry','eventLabel': 'Take a Tour Now'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}"> <button id="ev_bt_1007" class="ev_button default button-transparent border-radius-24" title="" tabindex="0" type="button"> <span class="ev_button_text">Faça um tour agora</span> </button> </a> </div> </div> <!--/HWDocContent--> </div> <div id="pageFooterWrapper" class="dark"> <div class="page-footer"> <div class="footer-main"> <div class="footer-note"> <p> </p> </div> <div class="footer-top-pc"> <div class="footer-item"> <p class="footer-col-title"> Sobre o FusionSolar <span class="textItem_arr"></span> </p> <ul class="footer-col-list"> <li> <a href="/br/news-room" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'About FusionSolar'+'+'+'News'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Notícias</a> </li> <li> <a href="/br/success-stories" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'About FusionSolar'+'+'+'Success Stories'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Histórias de sucesso</a> </li> </ul> </div> <div class="footer-item"> <p class="footer-col-title"> Produtos e soluções <span class="textItem_arr"></span> </p> <ul class="footer-col-list"> <li> <a href="/br/professionals/residential" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Products & Solution'+'+'+'Residential Smart PV & ESS Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Solução de energia fotovoltáica e ESS residencial</a> </li> <li> <a href="/br/professionals/c-i" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Products & Solution'+'+'+'C&I Smart PV & ESS Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Solução de energia fotovoltáica e ESS comercial e industrial</a> </li> <li> <a href="/br/professionals/utility" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Products & Solution'+'+'+'Utility Smart PV Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Solução de energia fotovoltáica para utilities</a> </li> <li> <a href="/br/professionals/ess" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Products & Solution'+'+'+'Utility Smart String ESS Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Solução de ESS com cadeias inteligentes para serviços públicos</a> </li> <li> <a href="/br/professionals/micro-grid" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Products & Solution'+'+'+'Smart Micro-grid Solution'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Soluçãopara mini redes elétricas inteligentes</a> </li> <li> <a href="/br/professionals/all-products" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Products & Solution'+'+'+'All Products'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Todos os produtos</a> </li> <li> <a href="/br/professionals/SmartDesign" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Products & Solution'+'+'+'SmartDesign 2.0'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">SmartDesign 2.0</a> </li> </ul> </div> <div class="footer-item"> <p class="footer-col-title"> Parceiros <span class="textItem_arr"></span> </p> <ul class="footer-col-list"> <li> <a href="/br/partners/partner-introduction" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Partners'+'+'+'Partner Introduction'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Introdução do parceiro</a> </li> <li> <a href="https://partner.huawei.com/eplus/#/en/web/registration-guidance?source=channel-home" target="_blank" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Partners'+'+'+'Become a Partner'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Torne-se um parceiro</a> </li> <li> <a href="/br/partners/map?type=distributor" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Partners'+'+'+'Find a Distributor'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Encontre um distribuidor</a> </li> <li> <a href="https://digitalpower.huawei.com/partner#/en/main" target="_blank" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Partners'+'+'+'Power-Partner'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Parceiros - energia</a> </li> </ul> </div> <div class="footer-item"> <p class="footer-col-title"> Serviço e suporte <span class="textItem_arr"></span> </p> <ul class="footer-col-list"> <li> <a href="/br/service-support/tsc" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Service & Support'+'+'+'Technical Support Center'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Centro de suporte técnico</a> </li> <li> <a href="https://digitalpower.huawei.com/power-marketing/#/en/home" target="_blank" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Service & Support'+'+'+'Power-Marketing'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Power-Marketing</a> </li> <li> <a href="https://solar.huawei.com/en/info/" target="_blank" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Service & Support'+'+'+'Product Document'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Materiais de produtos</a> </li> <li> <a href="https://community.solar.huawei.com/br/index.html" target="_blank" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Service & Support'+'+'+'Community'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Comunidade</a> </li> <li> <a href="https://digitalpower.huawei.com/robotchat/#/home/index?lang=en_US&domain=smartpv&product=" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Service & Support'+'+'+'Online Support'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Suporte online</a> </li> </ul> </div> <div class="footer-item"> <p class="footer-col-title"> Links rápidos <span class="textItem_arr"></span> </p> <ul class="footer-col-list"> <li> <a href="https://www.huawei.com/br" target="_blank" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Quick Links'+'+'+'Huawei Corporate'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Huawei Corporate</a> </li> <li> <a href="https://e.huawei.com/br" target="_blank" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Quick Links'+'+'+'Huawei Enterprise'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Huawei Enterprise</a> </li> <li> <a href="https://digitalpower.huawei.com/en/?from=solar" target="_blank" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Quick Links'+'+'+'Huawei Digital Power'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Huawei Digital Power</a> </li> <li> <a href="https://intl.fusionsolar.huawei.com/pvmswebsite/nologin/assets/build/index.html#/jumppage" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Quick Links'+'+'+'Download FusionSolar App (Mobile Version)'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">Baixar o Aplicativo FusionSolar</a> </li> <li> <a href="https://intl.fusionsolar.huawei.com" target="_blank" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation', 'eventLabel': 'Quick Links'+'+'+'FusionSolar SmartPVMS'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}">FusionSolar SmartPVMS</a> </li> </ul> </div> </div> <div class="footer-buttom"> <div class="footer-copyright-content"> <div class="footer-copyright footer-copyright-item"> © 2024 Huawei Technologies Co., Ltd. </div> <div class="footer-law"> <span class="footer-copyright-item"> <a class="item-link" href="https://www.huawei.com/br/legal" target="_blank" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation','eventLabel': 'Terms of Use'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}" rel="noreferrer"> Termos de Uso </a> </span> <span class="footer-copyright-item"> <a class="item-link" href="/br/privacy" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation','eventLabel': 'Privacy'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}" rel="noreferrer"> Privacidade </a> </span> <span class="footer-copyright-item"> <a class="item-link" href="/br/cookies" target="" onclick="try { gtag('event','Bottom_Navigation',{'Site_Country_Code_H':$('html').attr('data-region').replace(/[/]/g, '').toUpperCase(),'eventCategory':document.location.pathname,'eventAction':'Bottom_Navigation','eventLabel': 'Cookies'+'+'+(window.location.origin + window.location.pathname).replace(/\/$/, '')}) } catch (error) {if (error.message === 'gtag is not defined') {console.log('Google Analytics is not available. Event tracking is disabled.');} else {throw error;}}" rel="noreferrer"> Cookies </a> </span> </div> </div> <div class="footer-link"> <a class="social-item" href="https://www.linkedin.com/company/huawei-digitalpower/" target="_blank" rel="noreferrer"> <span class="footer-link-img link-img-linkedin"></span> </a> <a class="social-item" href="https://www.facebook.com/HuaweiFusionSolar" target="_blank" rel="noreferrer"> <span class="footer-link-img link-img-facebook"></span> </a> <a class="social-item" href="https://twitter.com/HuaweiSolar" target="_blank" rel="noreferrer"> <span class="footer-link-img link-img-twitter"></span> </a> <a class="social-item" href="https://www.youtube.com/c/HuaweiFusionSolar" target="_blank" rel="noreferrer"> <span class="footer-link-img link-img-youtube"></span> </a> <!-- <div class="social-item social-icon"> <span class="footer-link-img link-img-wechat"> </span> <div class="hover-pop"> <div class="icon-close"></div> <div class="pop-text"> <p>官方微信</p> </div> <div class="pop-img"> <img src="/Assets/Solar/v4/img/common/wechat.png"> </div> </div> </div> <div class="social-item social-icon last-icon"> <span class="footer-link-img link-img-toutiao"> </span> <div class="hover-pop"> <div class="icon-close"></div> <div class="pop-text"> <p>头条</p> </div> <div class="pop-img"> <img src="/Assets/Solar/v4/img/common/toutiao.png"> </div> </div> </div> --> </div> </div> </div> </div> </div> <div id="pageSideTips"> <div class="side-tips"> <div class="side-tip"> <div class="icon-download"></div> <div class="hover grid--vertical-align-center"> <a href="https://digitalpower.huawei.com/power-marketing/#/en/home" target="_blank"> <div class="side-tip-text ml18">Power-Marketing</div> </a> <div class="side-tip-line ml12"></div> <a href="https://solar.huawei.com/en/info/" target="_blank"> <div class="side-tip-text ml12">Materiais de produtos</div> </a> <div class="icon-download"></div> </div> </div> <div class="side-tip"> <a href="https://community.solar.huawei.com/br/index.html" target="_blank"> <div class="icon-community"></div> <div class="hover grid--vertical-align-center"> <div class="side-tip-text ml24">Comunidade</div> <div class="icon-community"></div> </div> </a> </div> <div class="side-tip"> <a href="https://digitalpower.huawei.com/robotchat/#/home/index?lang=en_US&domain=smartpv&product=" target="_blank"> <div class="icon-onlineChat"></div> <div class="hover grid--vertical-align-center"> <div class="side-tip-text ml24">Suporte online</div> <div class="icon-onlineChat"></div> </div> </a> </div> <div class='side-tip back-top'> <span></span> </div> </div> </div> <script src="/Assets/Solar/v4/js/utils/jquery-3.6.0.min.js?ver=202411131551"></script> <!--<script src="/Assets/Solar/v4/js/utils/common.js"></script>--> <script src="/Assets/Solar/v4/js/utils/publicPages.js?ver=202411131551"></script> <!--Solar track code--> <script type="text/javascript"> var utag_data = { site_name: "solar", site_type: "website" }; </script> <script type="text/javascript"> (function(a,b,c,d){ a=((navigator.languages && navigator.languages.length) ? navigator.languages[0] : (navigator.browserLanguage || navigator.userLanguage || navigator.language || 'en')).toLowerCase() == "zh-cn" ? '//tags.tiqcdn.cn/utag/huawei/solar/prod/utag.js' : '//tags.tiqcdn.com/utag/huawei/solar/prod/utag.js'; b=document; c='script'; d=b.createElement(c); d.src=a; d.type='text/java'+c; d.async=true; a=b.getElementsByTagName(c)[0]; a.parentNode.insertBefore(d,a); })(); </script> <script src="/-/media/SolarV4/solar-version2/common/seo/common-seo.js?ver=202411131551"></script> <script src="/-/media/SolarV4/solar-version2/common/data-analysis/analysis-v2.js?ver=202411131551"></script> <script src="/Assets/Solar/v4/js/utils/bvideo.js?ver=202411131551"></script> <script src="/Assets/Solar/v4/js/utils/oft.js?ver=202411131551"></script> <!--<script src="/Assets/Solar/v4/js/utils/publicPages.js"></script>--> <script src="/Assets/Solar/v4/js/utils/swiper-new.min.js?ver=202411131551"></script> <script async="" src="/Assets/Solar/v4/js/index.js?ver=202411131551"></script> </body> </html>