CINXE.COM

光储充一站式解决方案_充电场站 | 华为智能光伏官网

<!DOCTYPE html> <html lang="zh" data-region="cn"> <head><meta name="keywords" content="充电场站,光伏发电,液冷超充,华为,Huawei, FusionSolar, 华为光伏,智能光伏,光伏业务,光伏发电,逆变器,光伏逆变器,光伏电站,网络能源,大型地面,领跑者,分布式,户用,扶贫"><meta name="description" content="光储充一站式解决方案是华为面向充电场站的解决方案,具有极致安全、更高收益、极简运维、更优体验、降容增收的优势和特点,适用于汽车充电场所,更加绿色高效。,华为率先将20多年积累的数字信息技术、互联网技术与光伏技术进行跨界融合,推出领先的智能光伏解决方案。基于简单、全数字化、全球化自动营维等创新理念,打造 “高效发电、智能营维、安全可靠” 的智能光伏电站。"><title> 光储充一站式解决方案_充电场站 | 华为智能光伏官网 </title><meta http-equiv="x-UA-Compatible" content="IE=Edge"> <meta charset="UTF-8"> <meta name="applicable-device" content="pc,mobile"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="Shortcut Icon" href="/Assets/solar/v4/img/img_ent_en_logo_ico.ico"> <link rel="stylesheet" type="text/css" href="/Assets/Solar/v4/css/aui3.css?ver=202412261628"> <link rel="stylesheet" type="text/css" href="/Assets/Solar/v4/css/common.css?ver=202412261628"> <link rel="stylesheet" type="text/css" href="/-/media/SolarV4/solar-version2/common/seo/common-style.css?ver=202412261628"> <link rel="stylesheet" type="text/css" href="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/css/swiper-bundle.css?ver=202412261628"> <link rel="stylesheet" type="text/css" href="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/css/index.css?ver=202412261628"> <style> .charging2 .charging2-product .product-con div { overflow: hidden; } .charging2 .charging2-product .product-con div img { transition: transform 0.3s ease; transform: scale(1); } .charging2 .charging2-product .product-con div:hover img { transform: scale(1.1); } .charging2 .charging2-product .more-products{ transition: 0.3s all; } .charging2 .charging2-product .more-products:hover { color: #fff; border: solid 1px rgb(199, 0, 11); background-color: rgb(199, 0, 11); } .charging8 .charging8-con div { overflow: hidden; } .charging8 .charging8-con div .charging8-background { transition: transform 0.3s ease; transform: scale(1); } .charging8 .charging8-con div .charging8-background:hover { transform: scale(1.1); cursor: pointer; list-style: none; } .charging8 .charging8-con div a{ transition: 0.3s all; } .charging8 .charging8-con div a:hover { color: #fff; border: solid 1px rgb(199, 0, 11); background-color: rgb(199, 0, 11); } .charging9 a{ transition: 0.3s all; } .charging9 a:hover { color: #fff; border: solid 1px rgb(199, 0, 11); background-color: rgb(199, 0, 11); } </style></head> <body class="aui3 ev_no_wcag"> <form method="post" action="/cn/professionals/pv-ess-charger" id="form1"> <div class="aspNetHidden"> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTk0MTI5NzA5OA8WAh4TVmFsaWRhdGVSZXF1ZXN0TW9kZQIBFghmD2QWAgIDD2QWAmYPZBYCZg9kFgJmDxYCHgRUZXh0BacRPG1ldGEgaHR0cC1lcXVpdj0ieC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1FZGdlIiAvPgo8bWV0YSBjaGFyc2V0PSJVVEYtOCIgLz4KPG1ldGEgbmFtZT0iYXBwbGljYWJsZS1kZXZpY2UiIGNvbnRlbnQ9InBjLG1vYmlsZSI+CjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIiAvPgo8bGluayByZWw9IlNob3J0Y3V0IEljb24iIGhyZWY9Ii9Bc3NldHMvc29sYXIvdjQvaW1nL2ltZ19lbnRfZW5fbG9nb19pY28uaWNvIj4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iL0Fzc2V0cy9Tb2xhci92NC9jc3MvYXVpMy5jc3MiIC8+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii9Bc3NldHMvU29sYXIvdjQvY3NzL2NvbW1vbi5jc3MiIC8+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii8tL21lZGlhL1NvbGFyVjQvc29sYXItdmVyc2lvbjIvY29tbW9uL3Nlby9jb21tb24tc3R5bGUuY3NzIj4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIKICAgIGhyZWY9Ii8tL21lZGlhL1NvbGFyVjQvc29sYXItdmVyc2lvbjIvYXNpYS1wYWNpZmljL2NuL3Byb2Zlc3Npb25hbHMvcHYtZXNzLWNoYXJnZXIvY3NzL3N3aXBlci1idW5kbGUuY3NzIj4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIKICAgIGhyZWY9Ii8tL21lZGlhL1NvbGFyVjQvc29sYXItdmVyc2lvbjIvYXNpYS1wYWNpZmljL2NuL3Byb2Zlc3Npb25hbHMvcHYtZXNzLWNoYXJnZXIvY3NzL2luZGV4LmNzcyI+CjxzdHlsZT4KICAgIC5jaGFyZ2luZzIgLmNoYXJnaW5nMi1wcm9kdWN0IC5wcm9kdWN0LWNvbiBkaXYgewogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICB9CgogICAgLmNoYXJnaW5nMiAuY2hhcmdpbmcyLXByb2R1Y3QgLnByb2R1Y3QtY29uIGRpdiBpbWcgewogICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAgIH0KCiAgICAuY2hhcmdpbmcyIC5jaGFyZ2luZzItcHJvZHVjdCAucHJvZHVjdC1jb24gZGl2OmhvdmVyIGltZyB7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOwogICAgfQogICAgLmNoYXJnaW5nMiAuY2hhcmdpbmcyLXByb2R1Y3QgLm1vcmUtcHJvZHVjdHN7CiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBhbGw7CiAgICB9CiAgICAuY2hhcmdpbmcyIC5jaGFyZ2luZzItcHJvZHVjdCAubW9yZS1wcm9kdWN0czpob3ZlciB7CiAgICAgICAgY29sb3I6ICNmZmY7CiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggcmdiKDE5OSwgMCwgMTEpOwogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxOTksIDAsIDExKTsKICAgIH0KCiAgICAuY2hhcmdpbmc4IC5jaGFyZ2luZzgtY29uIGRpdiB7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIH0KCiAgICAuY2hhcmdpbmc4IC5jaGFyZ2luZzgtY29uIGRpdiAuY2hhcmdpbmc4LWJhY2tncm91bmQgewogICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAgIH0KCiAgICAuY2hhcmdpbmc4IC5jaGFyZ2luZzgtY29uIGRpdiAuY2hhcmdpbmc4LWJhY2tncm91bmQ6aG92ZXIgewogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsKICAgIH0KICAgIC5jaGFyZ2luZzggLmNoYXJnaW5nOC1jb24gZGl2IGF7CiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBhbGw7CiAgICB9CiAgICAuY2hhcmdpbmc4IC5jaGFyZ2luZzgtY29uIGRpdiBhOmhvdmVyIHsKICAgICAgICBjb2xvcjogI2ZmZjsKICAgICAgICBib3JkZXI6IHNvbGlkIDFweCByZ2IoMTk5LCAwLCAxMSk7CiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE5OSwgMCwgMTEpOwogICAgfQogICAgLmNoYXJnaW5nOSBhewogICAgICAgIHRyYW5zaXRpb246IDAuM3MgYWxsOwogICAgfQogICAgLmNoYXJnaW5nOSBhOmhvdmVyIHsKICAgICAgICBjb2xvcjogI2ZmZjsKICAgICAgICBib3JkZXI6IHNvbGlkIDFweCByZ2IoMTk5LCAwLCAxMSk7CiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE5OSwgMCwgMTEpOwogICAgfQo8L3N0eWxlPmQCAg9kFgJmD2QWAmYPZBYMAgEPFgIfAQWMMDxkaXYgY2xhc3M9Im5hdi1hbGxMYW5nQm94Ij4KICAgIDxkaXYgY2xhc3M9Imljb24tY2xvc2UiPjwvZGl2PgogICAgPGRpdiBjbGFzcz0iY3Vyci1sYW5nIj48c3BhbiBjbGFzcz0iaWNvbi1jdXJyIj48L3NwYW4+CiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2VuIj5GdXNpb25Tb2xhciBHbG9iYWwgLyBFbmdsaXNoPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJhbGxMYW5nIj4KICAgICAgICA8ZGl2IGNsYXNzPSJhcmVhSXRlbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFyZWFUZXh0Ij5Bc2lhIFBhY2lmaWM8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0xpc3QiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9hdSI+QXVzdHJhbGlhIC8gRW5nbGlzaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vY24iPkNoaW5hIC8g566A5L2T5Lit5paHPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9oayI+SG9uZyBLb25nLCBDaGluYSAvIOe5gemrlOS4reaWhzwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vaWQiPkluZG9uZXNpYSAvIEluZG9uZXNpYW48L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2pwIj5KYXBhbiAvIOaXpeacrOiqnjwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vbXkiPk1hbGF5c2lhIC8gRW5nbGlzaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vcGgiPlBoaWxpcHBpbmVzIC8gRW5nbGlzaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vc2ciPlNpbmdhcG9yZSAvIEVuZ2xpc2g8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2tyIj5Tb3V0aCBLb3JlYSAvIO2VnOq1reyWtDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vdGgiPlRoYWlsYW5kIC8g4LmE4LiX4LiiPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS92biI+VmlldG5hbSAvIEVuZ2xpc2g8L2E+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImFyZWFJdGVtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXJlYVRleHQiPkV1cm9wZTwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nTGlzdCI+CgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9hdCI+QXVzdHJpYSAvIERldXRzY2g8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2JlLWZyIj5CZWxnaXVtIC8gRnJhbsOnYWlzPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9iZSI+QmVsZ2l1bSAvIE5lZGVybGFuZHM8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2JnIj5CdWxnYXJpYSAvINCx0YrQu9Cz0LDRgNGB0LrQuDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vaHIiPkNyb2F0aWEgLyBocnZhdHNraTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vY3oiPkN6ZWNoaWEgLyDEjWXFoXRpbmE8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2RrIj5EZW5tYXJrIC8gRGFuc2s8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2ZyIj5GcmFuY2UgLyBGcmFuw6dhaXM8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2RlIj5HZXJtYW55IC8gRGV1dHNjaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vZ3IiPkdyZWVjZSAvIM6VzrvOu863zr3Ouc66zqw8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2h1Ij5IdW5nYXJ5IC8gSHVuZ2FyaWFuPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9pZSI+SXJlbGFuZCAvIEVuZ2xpc2g8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2l0Ij5JdGFseSAvIEl0YWxpYW5vPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9ubCI+TmV0aGVybGFuZHMgLyBEdXRjaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vcGwiPlBvbGFuZCAvIFBvbGlzaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vcHQiPlBvcnR1Z2FsIC8gcG9ydHVndcOqczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vcm8iPlJvbWFuaWEgLyByb23Dom7EgzwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vc2siPlNsb3Zha2lhIC8gc2xvdmVuxI1pbmE8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2VzIj5TcGFpbiAvIEVzcGHDsW9sPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9zZSI+U3dlZGVuIC8gU3ZlbnNrYTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vY2giPlN3aXR6ZXJsYW5kIC8gRGV1dHNjaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vY2gtZnIiPlN3aXR6ZXJsYW5kIC8gRnJhbsOnYWlzPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS90ciI+VMO8cmtpeWUgLyBUw7xya8OnZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vdWEiPlVrcmFpbmUgLyDQo9C60YDQsNGX0L3QsDwvYT48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYXJlYUl0ZW0iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJhcmVhVGV4dCI+TGF0aW4gQW1lcmljYTwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nTGlzdCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2JyIj5CcmF6aWwgLyBQb3J0dWd1ZXNlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9sYXRhbSI+TGF0aW4gQW1lcmljYSAvIEVzcGHDsW9sPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9teCI+TcOpeGljbyAvIEVzcGHDsW9sPC9hPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJhcmVhSXRlbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFyZWFUZXh0Ij5NaWRkbGUgRWFzdCAmYW1wOyBBZnJpY2E8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0xpc3QiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9lZyI+RWd5cHQgLyDYp9mE2YTYutipINin2YTYudix2KjZitipPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9rZSI+S2VueWEgLyBFbmdsaXNoPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9tYSI+TW9yb2NjbyAvIEZyYW7Dp2FpczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vbmciPk5pZ2VyaWEgLyBFbmdsaXNoPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9wayI+UGFraXN0YW4gLyBFbmdsaXNoPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9zYSI+U2F1ZGkgQXJhYmlhIC8g2KfZhNmE2LrYqSDYp9mE2LnYsdio2YrYqSA8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL3NhLWVuIj5TYXVkaSBBcmFiaWEgLyBFbmdsaXNoPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS96YSI+U291dGggQWZyaWNhIC8gRW5nbGlzaDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxhbmdJdGVtIj48YSBocmVmPSJodHRwczovL3NvbGFyLmh1YXdlaS5jb20vdG4iPlR1bmlzaWEgLyBGcmFuw6dhaXM8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nSXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2FlIj5VQUUgLyDYp9mE2YTYutipINin2YTYudix2KjZitipPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ0l0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9hZS1lbiI+VUFFIC8gRW5nbGlzaDwvYT48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CgogICAgPC9kaXY+CjwvZGl2PmQCAg8WAh4LXyFJdGVtQ291bnQCBhYMZg9kFgRmDxUEDy9jbi9ob21lLW93bmVycwDkBHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjE1QjIzRjcnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeWutuW6reS4muS4uycsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonSG9tZSBPd25lcnMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQzlrrbluq3kuJrkuLtkAgEPFgIfAgL/////D2QCAQ9kFgRmDxUEEy9jbi9idXNpbmVzcy1vd25lcnMA7AR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkYxQzVFRDUyJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3kvIHkuJrkuJrkuLsnLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonQnVzaW5lc3MgT3duZXJzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQzkvIHkuJrkuJrkuLtkAgEPFgIfAgL/////D2QCAg9kFgRmDxUEGC9jbi91dGlsaXR5LXBsYW50LW93bmVycwDxBHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjM3OEVDMTcnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeeUteermeS4muS4uycsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0ZpcnN0X05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOiAnRmlyc3RfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidVdGlsaXR5IFBsYW50IE93bmVycycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M55S156uZ5Lia5Li7ZAIBDxYCHwIC/////w9kAgMPZBYEZg8VBB0vY24vcHJvZmVzc2lvbmFscy9yZXNpZGVudGlhbADqBHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjE0NUY1QjEnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeS4k+S4muS6uuWjqycsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0ZpcnN0X05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOiAnRmlyc3RfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQzkuJPkuJrkurrlo6tkAgEPFgQfAgIHHgdWaXNpYmxlZxYOZg9kFgJmDxUEHS9jbi9wcm9mZXNzaW9uYWxzL3Jlc2lkZW50aWFsAJwFdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGNjJERDVFRCcsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5LiT5Lia5Lq65aOrLeWutuW6ree7v+eUtScsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZmVzc2lvbmFscycrJysnKydSZXNpZGVudGlhbCBTbWFydCBQViAmIEVTUyBTb2x1dGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M5a625bqt57u/55S1ZAIBD2QWAmYPFQQVL2NuL3Byb2Zlc3Npb25hbHMvYy1pAJMFdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGMkJCMjVFOScsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5LiT5Lia5Lq65aOrLeihjOS4mue7v+eUtScsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrJ0MmSSBTbWFydCBQViAmIEVTUyBTb2x1dGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M6KGM5Lia57u/55S1ZAICD2QWAmYPFQQgL2NuL3Byb2Zlc3Npb25hbHMvcHYtZXNzLWNoYXJnZXIAnQV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkYyQkIyNUU5JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3kuJPkuJrkurrlo6st6KGM5Lia57u/55S1Jyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1Byb2Zlc3Npb25hbHMnKycrJysnT25lLXN0b3Agb3B0aWNhbCBzdG9yYWdlIGFuZCBjaGFyZ2luZycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0S5YWJ5YKo5YWF5LiA56uZ5byPZAIDD2QWAmYPFQQZL2NuL3Byb2Zlc3Npb25hbHMvdXRpbGl0eQCSBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjFFQzI3ODQnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeS4k+S4muS6uuWjqy3mmbrog73lhYnkvI8nLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1Byb2Zlc3Npb25hbHMnKycrJysnVXRpbGl0eSBTbWFydCBQViBTb2x1dGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0S5pm66IO95YWJ5LyP55S156uZZAIED2QWAmYPFQQVL2NuL3Byb2Zlc3Npb25hbHMvZXNzAJoFdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGNzc4REE4RCcsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5LiT5Lia5Lq65aOrLeaZuuiDvee7hOS4sicsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZmVzc2lvbmFscycrJysnKydVdGlsaXR5IFNtYXJ0IFN0cmluZyBFU1MgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319FeaZuuiDvee7hOS4suW8j+WCqOiDvWQCBQ9kFgJmDxUEHC9jbi9wcm9mZXNzaW9uYWxzL21pY3JvLWdyaWQAkgV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY3NjgyQkVBJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3kuJPkuJrkurrlo6st5pm66IO95b6u572RJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrJ1NtYXJ0IE1pY3JvLWdyaWQgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DOaZuuiDveW+rue9kWQCBg9kFgJmDxUEHS9jbi9wcm9mZXNzaW9uYWxzL1NtYXJ0RGVzaWduAI0FdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQzMzVFRTg0RkU2X0M2RjVBN0I0QTJCQ0M1QicsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5LiT5Lia5Lq65aOrLeaZuuiDveiuvuiuoeW3peWFtycsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrJ1NtYXJ0RGVzaWduIDIuMCcrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0S5pm66IO96K6+6K6h5bel5YW3ZAIED2QWBGYPFQQhL2NuL3BhcnRuZXJzL3BhcnRuZXItaW50cm9kdWN0aW9uAOUEdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGMkI3ODc1NCcsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5ZCI5L2c5LyZ5Ly0Jyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1BhcnRuZXJzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQzlkIjkvZzkvJnkvLRkAgEPFgQfAgIFHwNnFgpmD2QWAmYPFQQhL2NuL3BhcnRuZXJzL3BhcnRuZXItaW50cm9kdWN0aW9uAIgFdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGNzQ3MjMxNCcsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5ZCI5L2c5LyZ5Ly0LeS8meS8tOS7i+e7jScsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUGFydG5lcnMnKycrJysnUGFydG5lciBJbnRyb2R1Y3Rpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DOS8meS8tOS7i+e7jWQCAQ9kFgJmDxUELmh0dHBzOi8vcGFydG5lci5odWF3ZWkuY29tL2VjcHJpLyMvP2xhbmc9emhfQ04GX2JsYW5rhAV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY1RTI0RDhGJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3lkIjkvZzkvJnkvLQt5oiQ5Li65LyZ5Ly0Jyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQYXJ0bmVycycrJysnKydCZWNvbWUgYSBQYXJ0bmVyJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQzmiJDkuLrkvJnkvLRkAgIPZBYCZg8VBDBodHRwczovL2RpZ2l0YWxwb3dlci5odWF3ZWkuY29tL3BhcnRuZXIjL2NuL21haW4GX2JsYW5rgQV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY3QjQzRDBCJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3lkIjkvZzkvJnkvLQtcG93ZXJwYXJ0bmVyJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQYXJ0bmVycycrJysnKydQb3dlci1QYXJ0bmVyJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQ1Qb3dlci1QYXJ0bmVyZAIDD2QWAmYPFQQwaHR0cHM6Ly9jb21tdW5pdHkuc29sYXIuaHVhd2VpLmNvbS9jbi9pbmRleC5odG1sBl9ibGFua4sFdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGN0IwOTBBRicsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5ZCI5L2c5LyZ5Ly0LeWuieijheWVhuekvuWMuicsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUGFydG5lcnMnKycrJysnSW5zdGFsbGVycyBDb21tdW5pdHknKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319D+WuieijheWVhuekvuWMumQCBA9kFgJmDxUEHy9jbi9wYXJ0bmVycy9tYXA/dHlwZT1pbnN0YWxsZXIAiAV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDMzNUVFODRGRTZfQzgyMDlDN0M0MDQ0QkI3JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3lkIjkvZzkvJnkvLQt5a+75om+5a6J6KOF5ZWGJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQYXJ0bmVycycrJysnKydGaW5kIGFuIEluc3RhbGxlcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0P5a+75om+5a6J6KOF5ZWGZAIFD2QWBGYPFQQeL2NuL3Byb2Zlc3Npb25hbHMvYWxsLXByb2R1Y3RzANwEdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGMDNCMjY0QicsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5Lqn5ZOBJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZHVjdHMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQbkuqflk4FkAgEPFgIfAgL/////D2QCAw8WAh8CAgMWBmYPZBYEZg8VBBcvY24vc2VydmljZS1zdXBwb3J0L3RzYwDcBHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjI5RDIxQkInLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeaUr+aMgScsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0ZpcnN0X05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOiAnRmlyc3RfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidTdXBwb3J0JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0G5pSv5oyBZAIBDxYEHwICAx8DZxYGZg9kFgJmDxUEFy9jbi9zZXJ2aWNlLXN1cHBvcnQvdHNjAP4EdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQzMzVFRTg0RkU2X0M2RjVCMzZGNDlFMjNBOScsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5oqA5pyv5pSv5oyB5Lit5b+DJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidTdXBwb3J0JysnKycrJ1NlcnZpY2VzIGFuZCBTdXBwb3J0JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0P5pyN5Yqh5LiO5pSv5oyBZAIBD2QWAmYPFQRTaHR0cHM6Ly9mb3J1bS5odWF3ZWkuY29tL2VudGVycHJpc2UvemgvZm9ydW1zLzU4MDg3OTc5OTY3NTY2MjMzNi81ODA4Nzk4MjMwOTI0NjE1NjgGX2JsYW5r6QR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY0MkEyRTI3JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3mlK/mjIEt6K665Z2bJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1N1cHBvcnQnKycrJysnRm9ydW0nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQborrrlnZtkAgIPZBYCZg8VBGNodHRwczovL2RpZ2l0YWxwb3dlci5odWF3ZWkuY29tL3JvYm90Y2hhdC8jL2hvbWUvaW5kZXg/bGFuZz16aF9DTiZkb21haW49c21hcnRwdiZmcm9tX3RpdGxlX3poPTExMTcGX2JsYW5r+QR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY0NzdDQUY1JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3mlK/mjIEt5Zyo57q/5pSv5oyBJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidTdXBwb3J0JysnKycrJ09ubGluZSBTdXBwb3J0JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M5Zyo57q/5pSv5oyBZAIBD2QWBGYPFQQwaHR0cHM6Ly9jb21tdW5pdHkuc29sYXIuaHVhd2VpLmNvbS9jbi9pbmRleC5odG1sBl9ibGFua94EdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGMkEwQjk0MCcsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt56S+5Yy6Jyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J0NvbW11bml0eScrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319BuekvuWMumQCAQ8WAh8CAv////8PZAICD2QWBGYPFQQiaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2NuL2luZm8vLwZfYmxhbmvhBHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjRERUNBMTAnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeS4i+i9veS4reW/gycsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonRG93bmxvYWQnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQzkuIvovb3kuK3lv4NkAgEPFgQfAgICHwNnFgRmD2QWAmYPFQQiaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2NuL2luZm8vLwZfYmxhbmuIBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjZGMDhBNUYnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeS4i+i9veS4reW/gy3kuqflk4HotYTmlpnkuK3lv4MnLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J0Rvd25sb2FkJysnKycrJ1Byb2R1Y3QgRG9jdW1lbnQnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRLkuqflk4HotYTmlpnkuK3lv4NkAgEPZBYCZg8VBDlodHRwczovL2RpZ2l0YWxwb3dlci5odWF3ZWkuY29tL3Bvd2VyLW1hcmtldGluZy8jL2NuL2hvbWUGX2JsYW5rhAV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY0N0VEN0U1JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3kuIvovb3kuK3lv4Mt6JCl6ZSA6LWE5paZ5Lit5b+DJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidEb3dubG9hZCcrJysnKydNS1QgRG9jdW1lbnQnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRLokKXplIDotYTmlpnkuK3lv4NkAgQPFgIfAgIBFgJmD2QWAmYPFQQNL2NuL29yZGVyLW5vdwCqBHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjQ0MTVCNTAnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeeri+WNs+i0reS5sCcsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0J1eV9DbGljaycseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonQnV5X0NsaWNrJywnZXZlbnRMYWJlbCc6J09yZGVyIE5vdycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DOeri+WNs+i0reS5sGQCBg8WAh8CAgkWEmYPZBYEAgEPFgYeBGhyZWYFDy9jbi9ob21lLW93bmVycx4GdGFyZ2V0ZB4Hb25jbGljawXkBHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjE1QjIzRjcnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeWutuW6reS4muS4uycsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonSG9tZSBPd25lcnMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRYCZg8VAQzlrrbluq3kuJrkuLtkAgUPFgIfAgL/////D2QCAQ9kFgQCAQ8WBh8EBRMvY24vYnVzaW5lc3Mtb3duZXJzHwVkHwYF7AR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkYxQzVFRDUyJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3kvIHkuJrkuJrkuLsnLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonQnVzaW5lc3MgT3duZXJzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRYCZg8VAQzkvIHkuJrkuJrkuLtkAgUPFgIfAgL/////D2QCAg9kFgQCAQ8WBh8EBRgvY24vdXRpbGl0eS1wbGFudC1vd25lcnMfBWQfBgXxBHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjM3OEVDMTcnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeeUteermeS4muS4uycsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0ZpcnN0X05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOiAnRmlyc3RfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidVdGlsaXR5IFBsYW50IE93bmVycycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0WAmYPFQEM55S156uZ5Lia5Li7ZAIFDxYCHwIC/////w9kAgMPZBYGAgEPFgQfBAUMamF2YXNjcmlwdDo7HwYF6gR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkYxNDVGNUIxJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3kuJPkuJrkurrlo6snLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZmVzc2lvbmFscycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0WAmYPFQEM5LiT5Lia5Lq65aOrZAIDDxYCHwNnZAIFDxYEHwICBx8DZxYOAgEPZBYCZg8VBB0vY24vcHJvZmVzc2lvbmFscy9yZXNpZGVudGlhbACcBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjYyREQ1RUQnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeS4k+S4muS6uuWjqy3lrrbluq3nu7/nlLUnLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1Byb2Zlc3Npb25hbHMnKycrJysnUmVzaWRlbnRpYWwgU21hcnQgUFYgJiBFU1MgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DOWutuW6ree7v+eUtWQCAg9kFgJmDxUEFS9jbi9wcm9mZXNzaW9uYWxzL2MtaQCTBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjJCQjI1RTknLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeS4k+S4muS6uuWjqy3ooYzkuJrnu7/nlLUnLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZmVzc2lvbmFscycrJysnKydDJkkgU21hcnQgUFYgJiBFU1MgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DOihjOS4mue7v+eUtWQCAw9kFgJmDxUEIC9jbi9wcm9mZXNzaW9uYWxzL3B2LWVzcy1jaGFyZ2VyAJ0FdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGMkJCMjVFOScsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5LiT5Lia5Lq65aOrLeihjOS4mue7v+eUtScsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrJ09uZS1zdG9wIG9wdGljYWwgc3RvcmFnZSBhbmQgY2hhcmdpbmcnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319EuWFieWCqOWFheS4gOermeW8j2QCBA9kFgJmDxUEGS9jbi9wcm9mZXNzaW9uYWxzL3V0aWxpdHkAkgV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkYxRUMyNzg0JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3kuJPkuJrkurrlo6st5pm66IO95YWJ5LyPJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9mZXNzaW9uYWxzJysnKycrJ1V0aWxpdHkgU21hcnQgUFYgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319EuaZuuiDveWFieS8j+eUteermWQCBQ9kFgJmDxUEFS9jbi9wcm9mZXNzaW9uYWxzL2VzcwCaBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjc3OERBOEQnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeS4k+S4muS6uuWjqy3mmbrog73nu4TkuLInLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1Byb2Zlc3Npb25hbHMnKycrJysnVXRpbGl0eSBTbWFydCBTdHJpbmcgRVNTIFNvbHV0aW9uJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRXmmbrog73nu4TkuLLlvI/lgqjog71kAgYPZBYCZg8VBBwvY24vcHJvZmVzc2lvbmFscy9taWNyby1ncmlkAJIFdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGNzY4MkJFQScsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5LiT5Lia5Lq65aOrLeaZuuiDveW+rue9kScsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZmVzc2lvbmFscycrJysnKydTbWFydCBNaWNyby1ncmlkIFNvbHV0aW9uJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQzmmbrog73lvq7nvZFkAgcPZBYCZg8VBB0vY24vcHJvZmVzc2lvbmFscy9TbWFydERlc2lnbgCNBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0MzM1RUU4NEZFNl9DNkY1QTdCNEEyQkNDNUInLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeS4k+S4muS6uuWjqy3mmbrog73orr7orqHlt6XlhbcnLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonUHJvZmVzc2lvbmFscycrJysnKydTbWFydERlc2lnbiAyLjAnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319EuaZuuiDveiuvuiuoeW3peWFt2QCBA9kFgYCAQ8WBB8EBQxqYXZhc2NyaXB0OjsfBgXlBHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjJCNzg3NTQnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeWQiOS9nOS8meS8tCcsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0ZpcnN0X05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOiAnRmlyc3RfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQYXJ0bmVycycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0WAmYPFQEM5ZCI5L2c5LyZ5Ly0ZAIDDxYCHwNnZAIFDxYEHwICBR8DZxYKAgEPZBYCZg8VBCEvY24vcGFydG5lcnMvcGFydG5lci1pbnRyb2R1Y3Rpb24AiAV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY3NDcyMzE0JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3lkIjkvZzkvJnkvLQt5LyZ5Ly05LuL57uNJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQYXJ0bmVycycrJysnKydQYXJ0bmVyIEludHJvZHVjdGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M5LyZ5Ly05LuL57uNZAICD2QWAmYPFQQuaHR0cHM6Ly9wYXJ0bmVyLmh1YXdlaS5jb20vZWNwcmkvIy8/bGFuZz16aF9DTgZfYmxhbmuEBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjVFMjREOEYnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeWQiOS9nOS8meS8tC3miJDkuLrkvJnkvLQnLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1BhcnRuZXJzJysnKycrJ0JlY29tZSBhIFBhcnRuZXInKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DOaIkOS4uuS8meS8tGQCAw9kFgJmDxUEMGh0dHBzOi8vZGlnaXRhbHBvd2VyLmh1YXdlaS5jb20vcGFydG5lciMvY24vbWFpbgZfYmxhbmuBBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjdCNDNEMEInLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeWQiOS9nOS8meS8tC1wb3dlcnBhcnRuZXInLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1BhcnRuZXJzJysnKycrJ1Bvd2VyLVBhcnRuZXInKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgICB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DVBvd2VyLVBhcnRuZXJkAgQPZBYCZg8VBDBodHRwczovL2NvbW11bml0eS5zb2xhci5odWF3ZWkuY29tL2NuL2luZGV4Lmh0bWwGX2JsYW5riwV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY3QjA5MEFGJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3lkIjkvZzkvJnkvLQt5a6J6KOF5ZWG56S+5Yy6Jyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQYXJ0bmVycycrJysnKydJbnN0YWxsZXJzIENvbW11bml0eScrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSAgIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0P5a6J6KOF5ZWG56S+5Yy6ZAIFD2QWAmYPFQQfL2NuL3BhcnRuZXJzL21hcD90eXBlPWluc3RhbGxlcgCIBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0MzM1RUU4NEZFNl9DODIwOUM3QzQwNDRCQjcnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeWQiOS9nOS8meS8tC3lr7vmib7lronoo4XllYYnLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1BhcnRuZXJzJysnKycrJ0ZpbmQgYW4gSW5zdGFsbGVyJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pICAgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQ/lr7vmib7lronoo4XllYZkAgUPZBYEAgEPFgYfBAUeL2NuL3Byb2Zlc3Npb25hbHMvYWxsLXByb2R1Y3RzHwVkHwYF3AR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkYwM0IyNjRCJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3kuqflk4EnLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICBndGFnKCdldmVudCcsJ0ZpcnN0X05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOiAnRmlyc3RfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidQcm9kdWN0cycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319FgJmDxUBBuS6p+WTgWQCBQ8WAh8CAv////8PZAIGD2QWBgIBDxYEHwQFDGphdmFzY3JpcHQ6Ox8GBdwEdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGMjlEMjFCQicsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5pSv5oyBJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnRmlyc3RfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6ICdGaXJzdF9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1N1cHBvcnQnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRYCZg8VAQbmlK/mjIFkAgMPFgIfA2dkAgUPFgQfAgIDHwNnFgYCAQ9kFgJmDxUEFy9jbi9zZXJ2aWNlLXN1cHBvcnQvdHNjAP4EdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQzMzVFRTg0RkU2X0M2RjVCMzZGNDlFMjNBOScsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5oqA5pyv5pSv5oyB5Lit5b+DJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidTdXBwb3J0JysnKycrJ1NlcnZpY2VzIGFuZCBTdXBwb3J0JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0P5pyN5Yqh5LiO5pSv5oyBZAICD2QWAmYPFQRTaHR0cHM6Ly9mb3J1bS5odWF3ZWkuY29tL2VudGVycHJpc2UvemgvZm9ydW1zLzU4MDg3OTc5OTY3NTY2MjMzNi81ODA4Nzk4MjMwOTI0NjE1NjgGX2JsYW5r6QR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY0MkEyRTI3JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3mlK/mjIEt6K665Z2bJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdTdWJfTmF2aWdhdGlvbicseydldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J1N1Yl9OYXZpZ2F0aW9uJywnZXZlbnRMYWJlbCc6J1N1cHBvcnQnKycrJysnRm9ydW0nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQborrrlnZtkAgMPZBYCZg8VBGNodHRwczovL2RpZ2l0YWxwb3dlci5odWF3ZWkuY29tL3JvYm90Y2hhdC8jL2hvbWUvaW5kZXg/bGFuZz16aF9DTiZkb21haW49c21hcnRwdiZmcm9tX3RpdGxlX3poPTExMTcGX2JsYW5r+QR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY0NzdDQUY1JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3mlK/mjIEt5Zyo57q/5pSv5oyBJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidTdXBwb3J0JysnKycrJ09ubGluZSBTdXBwb3J0JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M5Zyo57q/5pSv5oyBZAIHD2QWBAIBDxYGHwQFMGh0dHBzOi8vY29tbXVuaXR5LnNvbGFyLmh1YXdlaS5jb20vY24vaW5kZXguaHRtbB8FBQZfYmxhbmsfBgXeBHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjJBMEI5NDAnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeekvuWMuicsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0ZpcnN0X05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOiAnRmlyc3RfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidDb21tdW5pdHknKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRYCZg8VAQbnpL7ljLpkAgUPFgIfAgL/////D2QCCA9kFgYCAQ8WBB8EBQxqYXZhc2NyaXB0OjsfBgXhBHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjRERUNBMTAnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG155yJLeS4i+i9veS4reW/gycsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgZ3RhZygnZXZlbnQnLCdGaXJzdF9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzogJ0ZpcnN0X05hdmlnYXRpb24nLCdldmVudExhYmVsJzonRG93bmxvYWQnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRYCZg8VAQzkuIvovb3kuK3lv4NkAgMPFgIfA2dkAgUPFgQfAgICHwNnFgQCAQ9kFgJmDxUEImh0dHBzOi8vc29sYXIuaHVhd2VpLmNvbS9jbi9pbmZvLy8GX2JsYW5riAV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY2RjA4QTVGJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3kuIvovb3kuK3lv4Mt5Lqn5ZOB6LWE5paZ5Lit5b+DJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnU3ViX05hdmlnYXRpb24nLHsnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRBY3Rpb24nOidTdWJfTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOidEb3dubG9hZCcrJysnKydQcm9kdWN0IERvY3VtZW50JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0S5Lqn5ZOB6LWE5paZ5Lit5b+DZAICD2QWAmYPFQQ5aHR0cHM6Ly9kaWdpdGFscG93ZXIuaHVhd2VpLmNvbS9wb3dlci1tYXJrZXRpbmcvIy9jbi9ob21lBl9ibGFua4QFdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGNDdFRDdFNScsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXnnIkt5LiL6L295Lit5b+DLeiQpemUgOi1hOaWmeS4reW/gycsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ1N1Yl9OYXZpZ2F0aW9uJyx7J2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50QWN0aW9uJzonU3ViX05hdmlnYXRpb24nLCdldmVudExhYmVsJzonRG93bmxvYWQnKycrJysnTUtUIERvY3VtZW50JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0S6JCl6ZSA6LWE5paZ5Lit5b+DZAIHDxYCHwICARYCZg9kFgJmDxUEDS9jbi9vcmRlci1ub3cAqgR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY0NDE1QjUwJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteeciS3nq4vljbPotK3kubAnLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCdXlfQ2xpY2snLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudEFjdGlvbic6J0J1eV9DbGljaycsJ2V2ZW50TGFiZWwnOidPcmRlciBOb3cnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQznq4vljbPotK3kubBkAgUPZBYCZg9kFgJmD2QWCAICDxYCHwICBRYKZg9kFgRmDxUBGOWFs+S6juWNjuS4uuaZuuiDveWFieS8j2QCAQ8WAh8CAgUWCgIBD2QWAmYPFQQNL2NuL25ld3Mtcm9vbQD6BHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjlBRTlGMDInLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLeaWsOmXu+WKqOaAgScsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdBYm91dCBGdXNpb25Tb2xhcicrJysnKydOZXdzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M5paw6Ze75Yqo5oCBZAICD2QWAmYPFQQPL2NuL2V2ZW50cy1saXN0APsEdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGNjg1QkVFMicsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXohJot5bGV5Lya5rS75YqoJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnQWJvdXQgRnVzaW9uU29sYXInKycrJysnRXZlbnRzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M5bGV5Lya5rS75YqoZAIDD2QWAmYPFQQTL2NuL3N1Y2Nlc3Mtc3RvcmllcwCGBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjYwMEM2QTknLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLeaIkOWKn+aVheS6iycsIH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnQWJvdXQgRnVzaW9uU29sYXInKycrJysnU3VjY2VzcyBTdG9yaWVzJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M5oiQ5Yqf5pWF5LqLZAIED2QWAmYPFQQkL2NuL2V2ZW50cy1saXN0L2NuLzIwMjMvcHVibGljYXRpb25zAIAFdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGQTdGRTkyNScsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXohJot5Ye654mI54mpJywgfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdBYm91dCBGdXNpb25Tb2xhcicrJysnKydQdWJsaWNhdGlvbnMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQnlh7rniYjnialkAgUPZBYCZg8VBA4vY24vbmV3c2xldHRlcgCBBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjkyRDQwMzknLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLemCruS7tuiuoumYhScsIH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnQWJvdXQgRnVzaW9uU29sYXInKycrJysnTmV3c2xldHRlcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DOmCruS7tuiuoumYhWQCAQ9kFgRmDxUBFeS6p+WTgSAmIOino+WGs+aWueahiGQCAQ8WAh8CAggWEAIBD2QWAmYPFQQdL2NuL3Byb2Zlc3Npb25hbHMvcmVzaWRlbnRpYWwAnAV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkZDNjhBMUIxJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteiEmi3lrrbluq3nu7/nlLUnLCB9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1Byb2R1Y3RzICYgU29sdXRpb24nKycrJysnUmVzaWRlbnRpYWwgU21hcnQgUFYgJiBFU1MgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQzlrrbluq3nu7/nlLVkAgIPZBYCZg8VBBUvY24vcHJvZmVzc2lvbmFscy9jLWkAlAV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY5MTdGQ0JGJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteiEmi3ooYzkuJrnu7/nlLUnLCB9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1Byb2R1Y3RzICYgU29sdXRpb24nKycrJysnQyZJIFNtYXJ0IFBWICYgRVNTIFNvbHV0aW9uJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M6KGM5Lia57u/55S1ZAIDD2QWAmYPFQQgL2NuL3Byb2Zlc3Npb25hbHMvcHYtZXNzLWNoYXJnZXIAngV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY5MTdGQ0JGJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteiEmi3ooYzkuJrnu7/nlLUnLCB9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1Byb2R1Y3RzICYgU29sdXRpb24nKycrJysnT25lLXN0b3Agb3B0aWNhbCBzdG9yYWdlIGFuZCBjaGFyZ2luZycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319EuWFieWCqOWFheS4gOermeW8j2QCBA9kFgJmDxUEGS9jbi9wcm9mZXNzaW9uYWxzL3V0aWxpdHkAlgV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkZDMTI5Njk5JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteiEmi3mmbrog73lhYnkvI/nlLXnq5knLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdQcm9kdWN0cyAmIFNvbHV0aW9uJysnKycrJ1V0aWxpdHkgU21hcnQgUFYgU29sdXRpb24nKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRLmmbrog73lhYnkvI/nlLXnq5lkAgUPZBYCZg8VBBUvY24vcHJvZmVzc2lvbmFscy9lc3MAoQV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY5NDA3REEyJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteiEmi3mmbrog73nu4TkuLLlvI/lgqjog70nLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdQcm9kdWN0cyAmIFNvbHV0aW9uJysnKycrJ1V0aWxpdHkgU21hcnQgU3RyaW5nIEVTUyBTb2x1dGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319FeaZuuiDvee7hOS4suW8j+WCqOiDvWQCBg9kFgJmDxUEHC9jbi9wcm9mZXNzaW9uYWxzL21pY3JvLWdyaWQAkgV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkY4NTY1NDFDJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteiEmi3mmbrog73lvq7nvZEnLCB9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1Byb2R1Y3RzICYgU29sdXRpb24nKycrJysnU21hcnQgTWljcm8tZ3JpZCBTb2x1dGlvbicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DOaZuuiDveW+rue9kWQCBw9kFgJmDxUEHi9jbi9wcm9mZXNzaW9uYWxzL2FsbC1wcm9kdWN0cwCEBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjgyRkFDOTQnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLeaJgOacieS6p+WTgScsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdQcm9kdWN0cyAmIFNvbHV0aW9uJysnKycrJ0FsbCBQcm9kdWN0cycrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DOaJgOacieS6p+WTgWQCCA9kFgJmDxUEHS9jbi9wcm9mZXNzaW9uYWxzL1NtYXJ0RGVzaWduAI4FdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGQTUwQkZBMicsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXohJot5pm66IO96K6+6K6h5bel5YW3JywgfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdQcm9kdWN0cyAmIFNvbHV0aW9uJysnKycrJ1NtYXJ0RGVzaWduIDIuMCcrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319EuaZuuiDveiuvuiuoeW3peWFt2QCAg9kFgRmDxUBDOWQiOS9nOS8meS8tGQCAQ8WAh8CAgQWCAIBD2QWAmYPFQQhL2NuL3BhcnRuZXJzL3BhcnRuZXItaW50cm9kdWN0aW9uAIEFdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGQUE4OTU3RicsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXohJot5LyZ5Ly05LuL57uNJyx9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1BhcnRuZXJzJysnKycrJ1BhcnRuZXIgSW50cm9kdWN0aW9uJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M5LyZ5Ly05LuL57uNZAICD2QWAmYPFQQuaHR0cHM6Ly9wYXJ0bmVyLmh1YXdlaS5jb20vZWNwcmkvIy8/bGFuZz16aF9DTgZfYmxhbmv9BHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRjkwODk1OTInLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLeaIkOS4uuS8meS8tCcsIH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdQYXJ0bmVycycrJysnKydCZWNvbWUgYSBQYXJ0bmVyJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M5oiQ5Li65LyZ5Ly0ZAIDD2QWAmYPFQQfL2NuL3BhcnRuZXJzL21hcD90eXBlPWluc3RhbGxlcgD/BHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRkE1RDg4NDcnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLeWvu+aJvuWuieijheWVhicsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnUGFydG5lcnMnKycrJysnRmluZCBhbiBJbnN0YWxsZXInKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fQ/lr7vmib7lronoo4XllYZkAgQPZBYCZg8VBDBodHRwczovL2RpZ2l0YWxwb3dlci5odWF3ZWkuY29tL3BhcnRuZXIjL2NuL21haW4GX2JsYW5r/AR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkZDOTAyRkE1JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteiEmi1Qb3dlci1QYXJ0bmVyJywgfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdQYXJ0bmVycycrJysnKydQb3dlci1QYXJ0bmVyJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0NUG93ZXItUGFydG5lcmQCAw9kFgRmDxUBD+acjeWKoeS4juaUr+aMgWQCAQ8WAh8CAgYWDAIBD2QWAmYPFQQXL2NuL3NlcnZpY2Utc3VwcG9ydC90c2MAlQV0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkZFOEUwMTg3JywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteiEmi3mioDmnK/mlK/mjIHkuK3lv4MnLCB9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1NlcnZpY2UgJiBTdXBwb3J0JysnKycrJ1RlY2huaWNhbCBTdXBwb3J0IENlbnRlcicrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319EuaKgOacr+aUr+aMgeS4reW/g2QCAg9kFgJmDxUEOWh0dHBzOi8vZGlnaXRhbHBvd2VyLmh1YXdlaS5jb20vcG93ZXItbWFya2V0aW5nLyMvY24vaG9tZQZfYmxhbmuJBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRkI1NUNCQkInLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLeiQpemUgOi1hOaWmeS4reW/gycsIH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnU2VydmljZSAmIFN1cHBvcnQnKycrJysnTUtUIERvY3VtZW50JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0S6JCl6ZSA6LWE5paZ5Lit5b+DZAIDD2QWAmYPFQQiaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2NuL2luZm8vLwZfYmxhbmuNBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRkRDNkMzMkMnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLeS6p+WTgei1hOaWmeS4reW/gycsIH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnU2VydmljZSAmIFN1cHBvcnQnKycrJysnUHJvZHVjdCBEb2N1bWVudCcrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319EuS6p+WTgei1hOaWmeS4reW/g2QCBA9kFgJmDxUEMGh0dHBzOi8vY29tbXVuaXR5LnNvbGFyLmh1YXdlaS5jb20vY24vaW5kZXguaHRtbAZfYmxhbmv6BHRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRkVBMTMwNzAnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLeekvuWMuicsIH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnU2VydmljZSAmIFN1cHBvcnQnKycrJysnQ29tbXVuaXR5JysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0G56S+5Yy6ZAIFD2QWAmYPFQRTaHR0cHM6Ly9mb3J1bS5odWF3ZWkuY29tL2VudGVycHJpc2UvemgvZm9ydW1zLzU4MDg3OTc5OTY3NTY2MjMzNi81ODA4Nzk4MjMwOTI0NjE1NjgGX2JsYW5r9gR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QkZDMDZGMEJDJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteiEmi3orrrlnZsnLCB9KTsgfSBjYXRjaCAoZSkge307dHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1NlcnZpY2UgJiBTdXBwb3J0JysnKycrJ0ZvcnVtJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0G6K665Z2bZAIGD2QWAmYPFQRjaHR0cHM6Ly9kaWdpdGFscG93ZXIuaHVhd2VpLmNvbS9yb2JvdGNoYXQvIy9ob21lL2luZGV4P2xhbmc9emhfQ04mZG9tYWluPXNtYXJ0cHYmZnJvbV90aXRsZV96aD0xMTE3Bl9ibGFua4UFdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGQkMwQzA0NCcsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXohJot5Zyo57q/5pSv5oyBJywgfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdTZXJ2aWNlICYgU3VwcG9ydCcrJysnKydPbmxpbmUgU3VwcG9ydCcrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319DOWcqOe6v+aUr+aMgWQCBA9kFgRmDxUBDOW/q+mAn+mTvuaOpWQCAQ8WAh8CAgUWCgIBD2QWAmYPFQQaaHR0cHM6Ly93d3cuaHVhd2VpLmNvbS9jbi8GX2JsYW5r/wR0cnkgeyB3aW5kb3cuaHdhKCd0cmFja1N0cnVjdEV2ZW50JywgeyB1ZW1faWQ6ICdQODFENDQ4Q0JGQ0EyMkZfQzgxREU2QzAwQ0M4NjREJywgdWVtX2xhYmVsOiAn54K55Ye7IOmhteiEmi3ljY7kuLrpm4blm6InLH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdRdWljayBMaW5rcycrJysnKydIdWF3ZWkgQ29ycG9yYXRlJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0M5Y2O5Li66ZuG5ZuiZAICD2QWAmYPFQQYaHR0cHM6Ly9lLmh1YXdlaS5jb20vY24vBl9ibGFua4cFdHJ5IHsgd2luZG93Lmh3YSgndHJhY2tTdHJ1Y3RFdmVudCcsIHsgdWVtX2lkOiAnUDgxRDQ0OENCRkNBMjJGX0M4MURFNkJGRTJGMUZEQScsIHVlbV9sYWJlbDogJ+eCueWHuyDpobXohJot5Y2O5Li65LyB5Lia5Lia5YqhJywgfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsICdldmVudExhYmVsJzogJ1F1aWNrIExpbmtzJysnKycrJ0h1YXdlaSBFbnRlcnByaXNlJysnKycrKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUpLnJlcGxhY2UoL1wvJC8sICcnKX0pIH0gY2F0Y2ggKGVycm9yKSB7aWYgKGVycm9yLm1lc3NhZ2UgPT09ICdndGFnIGlzIG5vdCBkZWZpbmVkJykge2NvbnNvbGUubG9nKCdHb29nbGUgQW5hbHl0aWNzIGlzIG5vdCBhdmFpbGFibGUuIEV2ZW50IHRyYWNraW5nIGlzIGRpc2FibGVkLicpO30gZWxzZSB7dGhyb3cgZXJyb3I7fX0S5Y2O5Li65LyB5Lia5Lia5YqhZAIDD2QWAmYPFQQuaHR0cHM6Ly9kaWdpdGFscG93ZXIuaHVhd2VpLmNvbS9jbi8/ZnJvbT1zb2xhcgZfYmxhbmuLBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRkYxMUY0RTQnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLeWNjuS4uuaVsOWtl+iDvea6kCcsIH0pOyB9IGNhdGNoIChlKSB7fTt0cnkgeyAgICAgZ3RhZygnZXZlbnQnLCdCb3R0b21fTmF2aWdhdGlvbicseydTaXRlX0NvdW50cnlfQ29kZV9IJzokKCdodG1sJykuYXR0cignZGF0YS1yZWdpb24nKS5yZXBsYWNlKC9bL10vZywgJycpLnRvVXBwZXJDYXNlKCksJ2V2ZW50Q2F0ZWdvcnknOmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lLCdldmVudEFjdGlvbic6J0JvdHRvbV9OYXZpZ2F0aW9uJywgJ2V2ZW50TGFiZWwnOiAnUXVpY2sgTGlua3MnKycrJysnSHVhd2VpIERpZ2l0YWwgUG93ZXInKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fRLljY7kuLrmlbDlrZfog73mupBkAgQPZBYCZg8VBFlodHRwczovL2ludGwuZnVzaW9uc29sYXIuaHVhd2VpLmNvbS9wdm1zd2Vic2l0ZS9ub2xvZ2luL2Fzc2V0cy9idWlsZC9pbmRleC5odG1sIy9qdW1wcGFnZQZfYmxhbmuxBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZDMDA1RTdCNDUnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLeS4i+i9veaZuuiDveWFieS8j0FwcO+8iOenu+WKqOerr++8iScsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdRdWljayBMaW5rcycrJysnKydEb3dubG9hZCBGdXNpb25Tb2xhciBBcHAgKE1vYmlsZSBWZXJzaW9uKScrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319JOS4i+i9veaZuuiDveWFieS8j0FwcO+8iOenu+WKqOerr++8iWQCBQ9kFgJmDxUEJGh0dHBzOi8vaW50bC5mdXNpb25zb2xhci5odWF3ZWkuY29tLwZfYmxhbmuXBXRyeSB7IHdpbmRvdy5od2EoJ3RyYWNrU3RydWN0RXZlbnQnLCB7IHVlbV9pZDogJ1A4MUQ0NDhDQkZDQTIyRl9DODFERTZCRkRFQTZBMEQnLCB1ZW1fbGFiZWw6ICfngrnlh7sg6aG16ISaLeeZu+W9leaZuuiDveWFieS8j+euoeeQhuezu+e7nycsfSk7IH0gY2F0Y2ggKGUpIHt9O3RyeSB7ICAgICBndGFnKCdldmVudCcsJ0JvdHRvbV9OYXZpZ2F0aW9uJyx7J1NpdGVfQ291bnRyeV9Db2RlX0gnOiQoJ2h0bWwnKS5hdHRyKCdkYXRhLXJlZ2lvbicpLnJlcGxhY2UoL1svXS9nLCAnJykudG9VcHBlckNhc2UoKSwnZXZlbnRDYXRlZ29yeSc6ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUsJ2V2ZW50QWN0aW9uJzonQm90dG9tX05hdmlnYXRpb24nLCAnZXZlbnRMYWJlbCc6ICdRdWljayBMaW5rcycrJysnKydGdXNpb25Tb2xhciBTbWFydFBWTVMnKycrJysod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkucmVwbGFjZSgvXC8kLywgJycpfSkgfSBjYXRjaCAoZXJyb3IpIHtpZiAoZXJyb3IubWVzc2FnZSA9PT0gJ2d0YWcgaXMgbm90IGRlZmluZWQnKSB7Y29uc29sZS5sb2coJ0dvb2dsZSBBbmFseXRpY3MgaXMgbm90IGF2YWlsYWJsZS4gRXZlbnQgdHJhY2tpbmcgaXMgZGlzYWJsZWQuJyk7fSBlbHNlIHt0aHJvdyBlcnJvcjt9fR7nmbvlvZXmmbrog73lhYnkvI/nrqHnkIbns7vnu59kAgMPFgIfAQUgwqkgMjAyNSDljY7kuLrmioDmnK/mnInpmZDlhazlj7hkAgQPFgIfAgIBFgJmD2QWAmYPFQOmBDxhIGNsYXNzPSJpdGVtLWxpbmsiIGhyZWY9Ii9jbi9wcml2YWN5IiB0YXJnZXQ9IiIgb25jbGljaz0idHJ5IHsgICAgIGd0YWcoJ2V2ZW50JywnQm90dG9tX05hdmlnYXRpb24nLHsnU2l0ZV9Db3VudHJ5X0NvZGVfSCc6JCgnaHRtbCcpLmF0dHIoJ2RhdGEtcmVnaW9uJykucmVwbGFjZSgvWy9dL2csICcnKS50b1VwcGVyQ2FzZSgpLCdldmVudENhdGVnb3J5Jzpkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSwnZXZlbnRBY3Rpb24nOidCb3R0b21fTmF2aWdhdGlvbicsJ2V2ZW50TGFiZWwnOiAnUHJpdmFjeScrJysnKyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKS5yZXBsYWNlKC9cLyQvLCAnJyl9KSB9IGNhdGNoIChlcnJvcikge2lmIChlcnJvci5tZXNzYWdlID09PSAnZ3RhZyBpcyBub3QgZGVmaW5lZCcpIHtjb25zb2xlLmxvZygnR29vZ2xlIEFuYWx5dGljcyBpcyBub3QgYXZhaWxhYmxlLiBFdmVudCB0cmFja2luZyBpcyBkaXNhYmxlZC4nKTt9IGVsc2Uge3Rocm93IGVycm9yO319IiAgcmVsPSJub3JlZmVycmVyIj4M6ZqQ56eB5pS/562WBDwvYT5kAgUPZBYCAgEPFgIfAQWVOjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CgogIC5wYWdlLWZvb3RlciAuZm9vdGVyLWJ1dHRvbSAuZm9vdGVyLWxpbmsgLmxpbmstaW1nLXNoaXBpbmhhbyB7CiAgICAgIGJhY2tncm91bmQ6IHVybCgiLy0vbWVkaWEvU29sYXJWNC9pbWFnZXMvSG9tZS91cGRhdGUvc2hpcGluaGFvLnN2ZyIpIDAgMCBuby1yZXBlYXQ7CiAgfQogIC5kYXJrIC5wYWdlLWZvb3RlciAuZm9vdGVyLWJ1dHRvbSAuZm9vdGVyLWxpbmsgLmxpbmstaW1nLXNoaXBpbmhhbyB7CiAgICBiYWNrZ3JvdW5kOiB1cmwoIi8tL21lZGlhL1NvbGFyVjQvaW1hZ2VzL0hvbWUvdXBkYXRlL3NoaXBpbmhhb19kYXJrX3Y1LnN2ZyIpIDAgMCBuby1yZXBlYXQ7Cn0KICA8L3N0eWxlPgogIAogIDxkaXYgY2xhc3M9InNvY2lhbC1pdGVtIHNvY2lhbC1pY29uIj4KICAgICAgPHNwYW4gY2xhc3M9ImZvb3Rlci1saW5rLWltZyBsaW5rLWltZy13ZWNoYXQiPgogICAgICA8L3NwYW4+CiAgICAgIDxkaXYgY2xhc3M9ImhvdmVyLXBvcCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJpY29uLWNsb3NlIj48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InBvcC10ZXh0Ij4KICAgICAgICAgICAgICA8cD7lrpjmlrnlvq7kv6E8L3A+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InBvcC1pbWciPgogICAgICAgICAgICAgIDxpbWcgc3JjPSIvQXNzZXRzL1NvbGFyL3Y0L2ltZy9jb21tb24vd2VjaGF0LnBuZyI+CiAgICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0ic29jaWFsLWl0ZW0gc29jaWFsLWljb24gbGFzdC1pY29uIj4KICAgICAgPHNwYW4gY2xhc3M9ImZvb3Rlci1saW5rLWltZyBsaW5rLWltZy10b3V0aWFvIj4KICAgICAgPC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJob3Zlci1wb3AiPgogICAgICAgICAgPGRpdiBjbGFzcz0iaWNvbi1jbG9zZSI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwb3AtdGV4dCI+CiAgICAgICAgICAgICAgPHA+5aS05p2hPC9wPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwb3AtaW1nIj4KICAgICAgICAgICAgICA8aW1nIHNyYz0iL0Fzc2V0cy9Tb2xhci92NC9pbWcvY29tbW9uL3RvdXRpYW8ucG5nIj4KICAgICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJzb2NpYWwtaXRlbSBzb2NpYWwtaWNvbiBsYXN0LWljb24iPgogICAgICA8c3BhbiBjbGFzcz0iZm9vdGVyLWxpbmstaW1nIGxpbmstaW1nLXNoaXBpbmhhbyI+CiAgICAgIDwvc3Bhbj4KICAgICAgPGRpdiBjbGFzcz0iaG92ZXItcG9wIj4KICAgICAgICAgIDxkaXYgY2xhc3M9Imljb24tY2xvc2UiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0icG9wLXRleHQiPgogICAgICAgICAgICAgIDxwPuinhumikeWPtzwvcD4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0icG9wLWltZyI+CiAgICAgICAgICAgICAgPGltZyBzcmM9Ii8tL21lZGlhL1NvbGFyVjQvaW1hZ2VzL0hvbWUvdXBkYXRlL2hvbWUtZm9vdGVyLWljb25fMy5qcGciPgogICAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogIDwvZGl2PgoKCgogIDwhLS0gY29va2llIC0tPgo8c2NyaXB0PgogICAgKGZ1bmN0aW9uIChjb25maWcpIHsKICAgICAgICBpZiAoIXdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKCcvY24nKSkgewogICAgICAgICAgICByZXR1cm4KICAgICAgICB9CiAgICAgICAgdmFyIG5hbWVzcGFjZSA9IGNvbmZpZy5uYW1lc3BhY2UgfHwgImh3YSI7CiAgICAgICAgaWYgKHNlbGZbbmFtZXNwYWNlXSB8fCBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJzY3JpcHQjdWVtX2YiKSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIHNlbGZbbmFtZXNwYWNlXSA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgKHNlbGZbbmFtZXNwYWNlXS5xID0gc2VsZltuYW1lc3BhY2VdLnEgfHwgW10pLnB1c2goYXJndW1lbnRzKTsKICAgICAgICB9OwogICAgICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7CiAgICAgICAgZWxlbWVudC5UUkFDS0VSX0NPTkZJRyA9IGNvbmZpZzsKICAgICAgICBlbGVtZW50LmFzeW5jID0gdHJ1ZTsKICAgICAgICBlbGVtZW50LmlkID0gInVlbV9mIjsKICAgICAgICBlbGVtZW50LnNyYyA9IGNvbmZpZy5zcmMgKyAiP18iICsgbmV3IERhdGUoKS50b0pTT04oKS5zcGxpdCgiVCIpWzBdOwogICAgICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoZWxlbWVudCk7CiAgICB9KSh7CiAgICAgICAgcGxhdGZvcm06ICJ3ZWIiLAogICAgICAgIGVkaXRpb246ICJoaXMiLAogICAgICAgIGVudjogInByb2QiLAogICAgICAgIGFwcEtleTogIjRhYjBkMmU1MWI0YWYxMWQwYTlkOTQ3YTg5YTg4MmNiIiwKICAgICAgICBzcmM6ICJodHRwczovL2h3YS5oaXMuaHVhd2VpLmNvbS9kaXN0L3VlbV9mLmpzIgogICAgfSk7Cjwvc2NyaXB0PgoKPHNjcmlwdCBjaGFyc2V0PSJVVEYtOCIgc3JjPSJodHRwczovL3N0YXRpYy5zZW5zb3JzZGF0YS5jbi9zZGsvMS4yNi4xNy9zZW5zb3JzZGF0YS5taW4uanM/dmVyPTIwMjQwODAyMTMxNiI+PC9zY3JpcHQ+CjxzY3JpcHQgY2hhcnNldD0iVVRGLTgiPgogICAgdmFyIHNlbnNvcnMgPSB3aW5kb3dbJ3NlbnNvcnNEYXRhQW5hbHl0aWMyMDE1MDUnXTsKICAgIHNlbnNvcnMudXNlKCdQYWdlTGVhdmUnLCB7fSk7CiAgICBzZW5zb3JzLmluaXQoewogICAgICAgIHNlcnZlcl91cmw6ICdodHRwczovL2NkcC50ZXN0Lmh1YXdlaS5jb20vc2EnLAogICAgICAgIGhlYXRtYXA6IHsgc2Nyb2xsX25vdGljZV9tYXA6ICdkZWZhdWx0JyB9LAogICAgICAgIHVzZV9jbGllbnRfdGltZTogdHJ1ZSwKICAgICAgICBzZW5kX3R5cGU6ICdiZWFjb24nCiAgICB9KTsKICAgIHNlbnNvcnMucXVpY2soJ2F1dG9UcmFjaycpOwo8L3NjcmlwdD4KCjxkaXYgY2xhc3M9ImJyb3dzZWhhcHB5IFJlYWRQb2xpY3kiPgogICAgPHA+5pys56uZ54K55L2/55SoY29va2llcyznu6fnu63mtY/op4jooajnpLrmgqjlkIzmhI/miJHku6zkvb/nlKhjb29raWVz44CCPGEgaHJlZj0iaHR0cHM6Ly9zb2xhci5odWF3ZWkuY29tL2NuL3ByaXZhY3kiIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgICAgPHNwYW4+Q29va2llc+WSjOmakOengeaUv+etliAmZ3Q8L3NwYW4+PC9hPjxhIGhyZWY9ImphdmFzY3JpcHQ6Y2xvc2VDb29raWVCYW5uZXIoKSIgY2xhc3M9ImNsb3NlIiB0aXRsZT0iY2xvc2UiPjwvYT4KICAgIDwvcD4KPC9kaXY+Cgo8c2NyaXB0PgogICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgIGpRdWVyeS5DYWNoZSA9IHsKICAgICAgICBnZXQ6IGZ1bmN0aW9uIChrZXkpIHsKICAgICAgICAgICAgdmFyIHZhbDsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIHZhbCA9IEpTT04ucGFyc2UoZGVjb2RlVVJJQ29tcG9uZW50KGxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSkpKTsKICAgICAgICAgICAgfSBjYXRjaCAoX2UpIHsgfQogICAgICAgICAgICByZXR1cm4gdmFsOwogICAgICAgIH0sCiAgICAgICAgc2V0OiBmdW5jdGlvbiAoa2V5LCBfdmFsdWUsIGV4cGlyZURheXMpIHsKICAgICAgICAgICAgdmFyIHZhbHVlID0gX3ZhbHVlOwogICAgICAgICAgICBpZiAoIXZhbHVlKSByZXR1cm47CiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICJvYmplY3QiKSB7CiAgICAgICAgICAgICAgICB2YWx1ZSA9IHsgdmFsdWU6IF92YWx1ZSB9OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciBkID0gbmV3IERhdGUoKTsKICAgICAgICAgICAgZC5zZXRUaW1lKGQuZ2V0VGltZSgpICsgMjQgKiA2MCAqIDYwICogMTAwMCAqIGV4cGlyZURheXMpOwogICAgICAgICAgICB2YXIgZXhwaXJlID0gZDsKICAgICAgICAgICAgdmFsdWUuZXhwaXJlID0gZXhwaXJlOwogICAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShrZXksIGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeSh2YWx1ZSkpKTsKICAgICAgICB9LAogICAgICAgIGRlbDogZnVuY3Rpb24gKGtleSkgewogICAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpOwogICAgICAgIH0sCiAgICB9OwogICAgY29uc3QgY29tbW9uTW9kdWxlID0gd2luZG93LmNvbW1vbk1vZHVsZSB8fCB7fTsKICAgIGNvbW1vbk1vZHVsZS5icm93c2VoYXBweSA9IGZ1bmN0aW9uIGJyb3dzZWhhcHB5KCkgewogICAgICAgIGlmICghJC5DYWNoZSkgewogICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgICAgICAgIGJyb3dzZWhhcHB5KCk7CiAgICAgICAgICAgIH0sIDIwMCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgICAgIGxldCBicm93c2VoYXBweUNhY2hlID0gJC5DYWNoZS5nZXQoJ2Jyb3dzZWhhcHB5Jyk7CiAgICAgICAgbGV0IGhpZGVDYWNoZSA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgJC5DYWNoZS5zZXQoJ2Jyb3dzZWhhcHB5JywgJ2Jyb3dzZWhhcHB5JywgMzY1KTsKICAgICAgICB9OwoKICAgICAgICAkKGRvY3VtZW50KS5vbignY2xpY2snLCAnLmJyb3dzZWhhcHB5IGEuY2xvc2UnLCBmdW5jdGlvbiAoZSkgewogICAgICAgICAgICAkKHRoaXMpLmNsb3Nlc3QoJy5icm93c2VoYXBweScpLnNsaWRlVXAoaGlkZUNhY2hlKTsKICAgICAgICB9KTsKICAgICAgICB0cnkgewogICAgICAgICAgICBpZiAoIWJyb3dzZWhhcHB5Q2FjaGUgfHwgbmV3IERhdGUoYnJvd3NlaGFwcHlDYWNoZS5leHBpcmUpIC0gbmV3IERhdGUoKSA8PSAwKSB7CiAgICAgICAgICAgICAgICAkLkNhY2hlLmRlbCgnYnJvd3NlaGFwcHknKTsKICAgICAgICAgICAgICAgICQoJy5icm93c2VoYXBweScpLnByZXBlbmRUbygnYm9keScpLnNsaWRlRG93bigpOwogICAgICAgICAgICAgICAgJCgnLmJyb3dzZWhhcHB5JykuY3NzKCdkaXNwbGF5JywgJ2Jsb2NrJyk7CiAgICAgICAgICAgICAgICBoaXN0b3J5LnNjcm9sbFJlc3RvcmF0aW9uID0gJ21hbnVhbCc7CiAgICAgICAgICAgICAgICAkKCdodG1sLGJvZHknKS5hbmltYXRlKAogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsVG9wOiAwLAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgJ2Zhc3QnCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgaGlzdG9yeS5zY3JvbGxSZXN0b3JhdGlvbiA9ICdhdXRvJzsKICAgICAgICAgICAgfQogICAgICAgIH0gY2F0Y2ggKF9lKSB7IH0KICAgIH07CiAgICBjb21tb25Nb2R1bGUuYnJvd3NlaGFwcHkoKTsKCiAgICBmdW5jdGlvbiBjbG9zZUNvb2tpZUJhbm5lcigpIHsKICAgICAgICBoaWRlQ2FjaGUoKTsKICAgICAgICAkKCcuYnJvd3NlaGFwcHknKS5jc3MoJ2Rpc3BsYXknLCAnbm9uZScpCiAgICB9Cn0sMTApCiAgICA8L3NjcmlwdD4KCjxzdHlsZT4KICAgIC5SZWFkUG9saWN5IHsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlOwogICAgICAgIGNvbG9yOiAjMjgyODI4OwogICAgICAgIGRpc3BsYXk6IG5vbmU7CiAgICAgICAgcGFkZGluZzogMTZweCAwOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIHotaW5kZXg6IDEwMDAwOwogICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICBib3R0b206IDA7CiAgICAgICAgcmlnaHQ6IDA7CiAgICB9CgogICAgLlJlYWRQb2xpY3kgcCB7CiAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjIyNTsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7CiAgICAgICAgd2lkdGg6IDkzLjcwNSU7CiAgICAgICAgbWF4LXdpZHRoOiAxNzk5LjEzNnB4OwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIH0KCiAgICAuUmVhZFBvbGljeSBwIHNwYW4gewogICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOwogICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7CiAgICB9CgogICAgLlJlYWRQb2xpY3kgcCBhIGVtIHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsKICAgICAgICBmb250LXdlaWdodDogYm9sZDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41czsKICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsOwogICAgfQoKICAgIC5SZWFkUG9saWN5IGEgewogICAgICAgIGNvbG9yOiAjYzcwMDBiOwogICAgfQoKICAgIC5SZWFkUG9saWN5IHAgYTpob3ZlciBlbSB7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOwogICAgfQoKICAgIC5SZWFkUG9saWN5IC5jbG9zZSB7CiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgcmlnaHQ6IDBweDsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBoZWlnaHQ6IDMwcHg7CiAgICAgICAgd2lkdGg6IDMwcHg7CiAgICAgICAgY29sb3I6ICNmZmY7CiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIGZsb2F0OiByaWdodDsKICAgICAgICBtYXJnaW4tdG9wOiAtN3B4OwogICAgICAgIG9wYWNpdHk6IDE7CiAgICB9CgogICAgLlJlYWRQb2xpY3kgLmNsb3NlOmJlZm9yZSB7CiAgICAgICAgY29udGVudDogJ+Kclic7CiAgICAgICAgd2lkdGg6IDMwcHg7CiAgICAgICAgaGVpZ2h0OiAzMHB4OwogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGZvbnQtZmFtaWx5OiAnY29ycGZvbnQnICFpbXBvcnRhbnQ7CiAgICAgICAgY29sb3I6ICMzMzM7CiAgICAgICAgZm9udC1zaXplOiAxNXB4OwogICAgfQoKICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHsKICAgICAgICAuUmVhZFBvbGljeSB7CiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICAgICAgYm90dG9tOiAwOwogICAgICAgICAgICBsZWZ0OiAwOwogICAgICAgICAgICB6LWluZGV4OiA5OTk7CiAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIH0KCiAgICAgICAgLlJlYWRQb2xpY3lbc3R5bGUqPSdibG9jayddfi5idG4tZ28tdG9wIHsKICAgICAgICAgICAgYm90dG9tOiAxMDBweDsKICAgICAgICB9CgogICAgICAgIC5SZWFkUG9saWN5W3N0eWxlKj0nYmxvY2snXX4ucG9wdXAtaWNvbiB7CiAgICAgICAgICAgIGJvdHRvbTogMTQzcHg7CiAgICAgICAgfQoKICAgICAgICAuUmVhZFBvbGljeVtzdHlsZSo9J2Jsb2NrJ11+Zm9vdGVyIHsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjZweDsKICAgICAgICB9CiAgICB9Cjwvc3R5bGU+ZAIGD2QWAmYPZBYCZg9kFgJmDxYCHwEFpww8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+IChmdW5jdGlvbihhLGIsYyxkKXsgYT0oKG5hdmlnYXRvci5sYW5ndWFnZXMgJiYgbmF2aWdhdG9yLmxhbmd1YWdlcy5sZW5ndGgpID8gbmF2aWdhdG9yLmxhbmd1YWdlc1swXSA6IChuYXZpZ2F0b3IuYnJvd3Nlckxhbmd1YWdlIHx8IG5hdmlnYXRvci51c2VyTGFuZ3VhZ2UgfHwgbmF2aWdhdG9yLmxhbmd1YWdlIHx8ICdlbicpKS50b0xvd2VyQ2FzZSgpID09ICJ6aC1jbiIgPyAnLy90YWdzLnRpcWNkbi5jbi91dGFnL2h1YXdlaS9zb2xhci9wcm9kL3V0YWcuanMnIDogJy8vdGFncy50aXFjZG4uY29tL3V0YWcvaHVhd2VpL3NvbGFyL3Byb2QvdXRhZy5qcyc7IGI9ZG9jdW1lbnQ7IGM9J3NjcmlwdCc7IGQ9Yi5jcmVhdGVFbGVtZW50KGMpOyBkLnNyYz1hOyBkLnR5cGU9J3RleHQvamF2YScrYzsgZC5hc3luYz10cnVlOyBhPWIuZ2V0RWxlbWVudHNCeVRhZ05hbWUoYylbMF07IGEucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZCxhKTsgfSkoKTsgPC9zY3JpcHQ+Cgo8c2NyaXB0IHNyYz0iL0Fzc2V0cy9Tb2xhci92NC9qcy91dGlscy9qcXVlcnktMy42LjAubWluLmpzIj48L3NjcmlwdD4KPHNjcmlwdCBzcmM9Ii9Bc3NldHMvU29sYXIvdjQvanMvc25lYy94c3MubWluLmpzIj48L3NjcmlwdD4KPHNjcmlwdCBzcmM9Ii9Bc3NldHMvU29sYXIvdjQvanMvdXRpbHMvcHVibGljUGFnZXMuanMiPjwvc2NyaXB0PgoKPHNjcmlwdD4KICAgIHZhciBob21lRm9sZGVyID0gJ2VuJzsKPC9zY3JpcHQ+Cgo8IS0tU29sYXIgdHJhY2sgY29kZS0tPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CnZhciB1dGFnX2RhdGEgPSB7IAogICAgc2l0ZV9uYW1lOiAic29sYXIiLAogICAgc2l0ZV90eXBlOiAid2Vic2l0ZSIKfTsgCjwvc2NyaXB0PiAKCjxzY3JpcHQgc3JjPSIvLS9tZWRpYS9Tb2xhclY0L3NvbGFyLXZlcnNpb24yL2NvbW1vbi9wcm9mZXNzaW9uYWxzL2FsbC1wcm9kdWN0cy9wcm9kdWN0L2NvbW1vbi1wcm9kdWN0L2pzL3V0aWxzUGx1Z2luVjNTVC5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLy0vbWVkaWEvU29sYXJWNC9zb2xhci12ZXJzaW9uMi9jb21tb24vc2VvL2NvbW1vbi1zZW8uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii8tL21lZGlhL1NvbGFyVjQvc29sYXItdmVyc2lvbjIvY29tbW9uL2RhdGEtYW5hbHlzaXMvYW5hbHlzaXMtdjIuanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHNyYz0iLy0vbWVkaWEvU29sYXJWNC9zb2xhci12ZXJzaW9uMi9hc2lhLXBhY2lmaWMvY24vcHJvZmVzc2lvbmFscy9wdi1lc3MtY2hhcmdlci9qcy91dGlsc1BsdWdpbi5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSIvLS9tZWRpYS9Tb2xhclY0L3NvbGFyLXZlcnNpb24yL2FzaWEtcGFjaWZpYy9jbi9wcm9mZXNzaW9uYWxzL3B2LWVzcy1jaGFyZ2VyL2pzL3N3aXBlcmJ1bmRsZW1pbi5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSIvLS9tZWRpYS9Tb2xhclY0L3NvbGFyLXZlcnNpb24yL2FzaWEtcGFjaWZpYy9jbi9wcm9mZXNzaW9uYWxzL3B2LWVzcy1jaGFyZ2VyL2pzL2luZGV4LmpzIj48L3NjcmlwdD5kZBCE2BvQaLdFtx4XVoMRTFNfu0f31FDkOnd5m83xZSQ9"> </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="/cn/online-experience-hall?step=card" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF8B83575', uem_label: '点击 页眉-在线体验专区',}); } catch (e) {};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;}}">在线体验专区</a> </div> <div class="nav-top-item nav-top-language"> <span class="language_ic"></span> <span>中国</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 &amp; 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="/cn"> <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="/cn/home-owners" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF15B23F7', uem_label: '点击 页眉-家庭业主',}); } catch (e) {};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;}}">家庭业主</a> <div class="submenu submenu-hidden"> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="/cn/business-owners" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF1C5ED52', uem_label: '点击 页眉-企业业主',}); } catch (e) {};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;}}">企业业主</a> <div class="submenu submenu-hidden"> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="/cn/utility-plant-owners" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF378EC17', uem_label: '点击 页眉-电站业主',}); } catch (e) {};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;}}">电站业主</a> <div class="submenu submenu-hidden"> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="/cn/professionals/residential" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF145F5B1', uem_label: '点击 页眉-专业人士',}); } catch (e) {};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;}}">专业人士</a> <div class="submenu submenu-hidden"> <a href="/cn/professionals/residential" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF62DD5ED', uem_label: '点击 页眉-专业人士-家庭绿电',}); } catch (e) {};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">家庭绿电</div> </a> <a href="/cn/professionals/c-i" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF2BB25E9', uem_label: '点击 页眉-专业人士-行业绿电',}); } catch (e) {};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">行业绿电</div> </a> <a href="/cn/professionals/pv-ess-charger" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF2BB25E9', uem_label: '点击 页眉-专业人士-行业绿电',}); } catch (e) {};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'+'+'+'One-stop optical storage and charging'+'+'+(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">光储充一站式</div> </a> <a href="/cn/professionals/utility" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF1EC2784', uem_label: '点击 页眉-专业人士-智能光伏',}); } catch (e) {};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">智能光伏电站</div> </a> <a href="/cn/professionals/ess" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF778DA8D', uem_label: '点击 页眉-专业人士-智能组串',}); } catch (e) {};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">智能组串式储能</div> </a> <a href="/cn/professionals/micro-grid" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF7682BEA', uem_label: '点击 页眉-专业人士-智能微网',}); } catch (e) {};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">智能微网</div> </a> <a href="/cn/professionals/SmartDesign" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D4335EE84FE6_C6F5A7B4A2BCC5B', uem_label: '点击 页眉-专业人士-智能设计工具',}); } catch (e) {};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">智能设计工具</div> </a> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="/cn/partners/partner-introduction" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF2B78754', uem_label: '点击 页眉-合作伙伴',}); } catch (e) {};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;}}">合作伙伴</a> <div class="submenu submenu-hidden"> <a href="/cn/partners/partner-introduction" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF7472314', uem_label: '点击 页眉-合作伙伴-伙伴介绍',}); } catch (e) {};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">伙伴介绍</div> </a> <a href="https://partner.huawei.com/ecpri/#/?lang=zh_CN" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF5E24D8F', uem_label: '点击 页眉-合作伙伴-成为伙伴',}); } catch (e) {};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">成为伙伴</div> </a> <a href="https://digitalpower.huawei.com/partner#/cn/main" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF7B43D0B', uem_label: '点击 页眉-合作伙伴-powerpartner',}); } catch (e) {};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">Power-Partner</div> </a> <a href="https://community.solar.huawei.com/cn/index.html" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF7B090AF', uem_label: '点击 页眉-合作伙伴-安装商社区',}); } catch (e) {};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">安装商社区</div> </a> <a href="/cn/partners/map?type=installer" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D4335EE84FE6_C8209C7C4044BB7', uem_label: '点击 页眉-合作伙伴-寻找安装商',}); } catch (e) {};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 an Installer'+'+'+(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">寻找安装商</div> </a> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="/cn/professionals/all-products" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF03B264B', uem_label: '点击 页眉-产品',}); } catch (e) {};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;}}">产品</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="/cn/service-support/tsc" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF29D21BB', uem_label: '点击 页眉-支持',}); } catch (e) {};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;}}">支持</a> <div class="submenu submenu-hidden"> <a href="/cn/service-support/tsc" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D4335EE84FE6_C6F5B36F49E23A9', uem_label: '点击 页眉-技术支持中心',}); } catch (e) {};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'+'+'+'Services and 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">服务与支持</div> </a> <a href="https://forum.huawei.com/enterprise/zh/forums/580879799675662336/580879823092461568" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF42A2E27', uem_label: '点击 页眉-支持-论坛',}); } catch (e) {};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'+'+'+'Forum'+'+'+(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">论坛</div> </a> <a href="https://digitalpower.huawei.com/robotchat/#/home/index?lang=zh_CN&domain=smartpv&from_title_zh=1117" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF477CAF5', uem_label: '点击 页眉-支持-在线支持',}); } catch (e) {};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">在线支持</div> </a> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="https://community.solar.huawei.com/cn/index.html" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF2A0B940', uem_label: '点击 页眉-社区',}); } catch (e) {};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;}}">社区</a> <div class="submenu submenu-hidden"> </div> </li> <li class="menu_item_li "><a class="menu_item_a" href="https://solar.huawei.com/cn/info/" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF4DECA10', uem_label: '点击 页眉-下载中心',}); } catch (e) {};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;}}">下载中心</a> <div class="submenu submenu-hidden"> <a href="https://solar.huawei.com/cn/info/" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF6F08A5F', uem_label: '点击 页眉-下载中心-产品资料中心',}); } catch (e) {};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">产品资料中心</div> </a> <a href="https://digitalpower.huawei.com/power-marketing/#/cn/home" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF47ED7E5', uem_label: '点击 页眉-下载中心-营销资料中心',}); } catch (e) {};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'+'+'+'MKT 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">营销资料中心</div> </a> </div> </li> </ul> </div> <div class="pageheader-right grid--vertical-align-center"> <a href="/cn/order-now" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF4415B50', uem_label: '点击 页眉-立即购买',}); } catch (e) {};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">立即购买</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="/cn"> <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>中国</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="/cn/home-owners" id="beforecontent_0_rptMobileMainNav_lkLink_0" class="item-link" onclick="try { window.hwa(&#39;trackStructEvent&#39;, { uem_id: &#39;P81D448CBFCA22F_C81DE6BF15B23F7&#39;, uem_label: &#39;点击 页眉-家庭业主&#39;,}); } catch (e) {};try { gtag(&#39;event&#39;,&#39;First_Navigation&#39;,{&#39;eventCategory&#39;:document.location.pathname,&#39;Site_Country_Code_H&#39;:$(&#39;html&#39;).attr(&#39;data-region&#39;).replace(/[/]/g, &#39;&#39;).toUpperCase(),&#39;eventAction&#39;: &#39;First_Navigation&#39;,&#39;eventLabel&#39;:&#39;Home Owners&#39;+&#39;+&#39;+(window.location.origin + window.location.pathname).replace(/\/$/, &#39;&#39;)}) } catch (error) {if (error.message === &#39;gtag is not defined&#39;) {console.log(&#39;Google Analytics is not available. Event tracking is disabled.&#39;);} else {throw error;}}"> <span>家庭业主</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a href="/cn/business-owners" id="beforecontent_0_rptMobileMainNav_lkLink_1" class="item-link" onclick="try { window.hwa(&#39;trackStructEvent&#39;, { uem_id: &#39;P81D448CBFCA22F_C81DE6BF1C5ED52&#39;, uem_label: &#39;点击 页眉-企业业主&#39;,}); } catch (e) {};try { gtag(&#39;event&#39;,&#39;First_Navigation&#39;,{&#39;eventCategory&#39;:document.location.pathname,&#39;Site_Country_Code_H&#39;:$(&#39;html&#39;).attr(&#39;data-region&#39;).replace(/[/]/g, &#39;&#39;).toUpperCase(),&#39;eventAction&#39;: &#39;First_Navigation&#39;,&#39;eventLabel&#39;:&#39;Business Owners&#39;+&#39;+&#39;+(window.location.origin + window.location.pathname).replace(/\/$/, &#39;&#39;)}) } catch (error) {if (error.message === &#39;gtag is not defined&#39;) {console.log(&#39;Google Analytics is not available. Event tracking is disabled.&#39;);} else {throw error;}}"> <span>企业业主</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a href="/cn/utility-plant-owners" id="beforecontent_0_rptMobileMainNav_lkLink_2" class="item-link" onclick="try { window.hwa(&#39;trackStructEvent&#39;, { uem_id: &#39;P81D448CBFCA22F_C81DE6BF378EC17&#39;, uem_label: &#39;点击 页眉-电站业主&#39;,}); } catch (e) {};try { gtag(&#39;event&#39;,&#39;First_Navigation&#39;,{&#39;eventCategory&#39;:document.location.pathname,&#39;Site_Country_Code_H&#39;:$(&#39;html&#39;).attr(&#39;data-region&#39;).replace(/[/]/g, &#39;&#39;).toUpperCase(),&#39;eventAction&#39;: &#39;First_Navigation&#39;,&#39;eventLabel&#39;:&#39;Utility Plant Owners&#39;+&#39;+&#39;+(window.location.origin + window.location.pathname).replace(/\/$/, &#39;&#39;)}) } catch (error) {if (error.message === &#39;gtag is not defined&#39;) {console.log(&#39;Google Analytics is not available. Event tracking is disabled.&#39;);} else {throw error;}}"> <span>电站业主</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a href="javascript:;" id="beforecontent_0_rptMobileMainNav_lkLink_3" class="item-link" onclick="try { window.hwa(&#39;trackStructEvent&#39;, { uem_id: &#39;P81D448CBFCA22F_C81DE6BF145F5B1&#39;, uem_label: &#39;点击 页眉-专业人士&#39;,}); } catch (e) {};try { gtag(&#39;event&#39;,&#39;First_Navigation&#39;,{&#39;eventCategory&#39;:document.location.pathname,&#39;Site_Country_Code_H&#39;:$(&#39;html&#39;).attr(&#39;data-region&#39;).replace(/[/]/g, &#39;&#39;).toUpperCase(),&#39;eventAction&#39;: &#39;First_Navigation&#39;,&#39;eventLabel&#39;:&#39;Professionals&#39;+&#39;+&#39;+(window.location.origin + window.location.pathname).replace(/\/$/, &#39;&#39;)}) } catch (error) {if (error.message === &#39;gtag is not defined&#39;) {console.log(&#39;Google Analytics is not available. Event tracking is disabled.&#39;);} else {throw error;}}"> <span>专业人士</span> </a> <span class="textItem_arr"></span> </div> <ul class="submenu" style="display: none;"> <li class="textItem"><a class="item-link" href="/cn/professionals/residential" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF62DD5ED', uem_label: '点击 页眉-专业人士-家庭绿电',}); } catch (e) {};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;}}">家庭绿电</a></li> <li class="textItem"><a class="item-link" href="/cn/professionals/c-i" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF2BB25E9', uem_label: '点击 页眉-专业人士-行业绿电',}); } catch (e) {};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;}}">行业绿电</a></li> <li class="textItem"><a class="item-link" href="/cn/professionals/pv-ess-charger" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF2BB25E9', uem_label: '点击 页眉-专业人士-行业绿电',}); } catch (e) {};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'+'+'+'One-stop optical storage and charging'+'+'+(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;}}">光储充一站式</a></li> <li class="textItem"><a class="item-link" href="/cn/professionals/utility" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF1EC2784', uem_label: '点击 页眉-专业人士-智能光伏',}); } catch (e) {};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;}}">智能光伏电站</a></li> <li class="textItem"><a class="item-link" href="/cn/professionals/ess" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF778DA8D', uem_label: '点击 页眉-专业人士-智能组串',}); } catch (e) {};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;}}">智能组串式储能</a></li> <li class="textItem"><a class="item-link" href="/cn/professionals/micro-grid" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF7682BEA', uem_label: '点击 页眉-专业人士-智能微网',}); } catch (e) {};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;}}">智能微网</a></li> <li class="textItem"><a class="item-link" href="/cn/professionals/SmartDesign" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D4335EE84FE6_C6F5A7B4A2BCC5B', uem_label: '点击 页眉-专业人士-智能设计工具',}); } catch (e) {};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;}}">智能设计工具</a></li> </ul> </li> <li class="textItem"> <div class="textItem_div"> <a href="javascript:;" id="beforecontent_0_rptMobileMainNav_lkLink_4" class="item-link" onclick="try { window.hwa(&#39;trackStructEvent&#39;, { uem_id: &#39;P81D448CBFCA22F_C81DE6BF2B78754&#39;, uem_label: &#39;点击 页眉-合作伙伴&#39;,}); } catch (e) {};try { gtag(&#39;event&#39;,&#39;First_Navigation&#39;,{&#39;eventCategory&#39;:document.location.pathname,&#39;Site_Country_Code_H&#39;:$(&#39;html&#39;).attr(&#39;data-region&#39;).replace(/[/]/g, &#39;&#39;).toUpperCase(),&#39;eventAction&#39;: &#39;First_Navigation&#39;,&#39;eventLabel&#39;:&#39;Partners&#39;+&#39;+&#39;+(window.location.origin + window.location.pathname).replace(/\/$/, &#39;&#39;)}) } catch (error) {if (error.message === &#39;gtag is not defined&#39;) {console.log(&#39;Google Analytics is not available. Event tracking is disabled.&#39;);} else {throw error;}}"> <span>合作伙伴</span> </a> <span class="textItem_arr"></span> </div> <ul class="submenu" style="display: none;"> <li class="textItem"><a class="item-link" href="/cn/partners/partner-introduction" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF7472314', uem_label: '点击 页眉-合作伙伴-伙伴介绍',}); } catch (e) {};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;}}">伙伴介绍</a></li> <li class="textItem"><a class="item-link" href="https://partner.huawei.com/ecpri/#/?lang=zh_CN" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF5E24D8F', uem_label: '点击 页眉-合作伙伴-成为伙伴',}); } catch (e) {};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;}}">成为伙伴</a></li> <li class="textItem"><a class="item-link" href="https://digitalpower.huawei.com/partner#/cn/main" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF7B43D0B', uem_label: '点击 页眉-合作伙伴-powerpartner',}); } catch (e) {};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;}}">Power-Partner</a></li> <li class="textItem"><a class="item-link" href="https://community.solar.huawei.com/cn/index.html" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF7B090AF', uem_label: '点击 页眉-合作伙伴-安装商社区',}); } catch (e) {};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;}}">安装商社区</a></li> <li class="textItem"><a class="item-link" href="/cn/partners/map?type=installer" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D4335EE84FE6_C8209C7C4044BB7', uem_label: '点击 页眉-合作伙伴-寻找安装商',}); } catch (e) {};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 an Installer'+'+'+(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;}}">寻找安装商</a></li> </ul> </li> <li class="textItem"> <div class="textItem_div"> <a href="/cn/professionals/all-products" id="beforecontent_0_rptMobileMainNav_lkLink_5" class="item-link" onclick="try { window.hwa(&#39;trackStructEvent&#39;, { uem_id: &#39;P81D448CBFCA22F_C81DE6BF03B264B&#39;, uem_label: &#39;点击 页眉-产品&#39;,}); } catch (e) {};try { gtag(&#39;event&#39;,&#39;First_Navigation&#39;,{&#39;eventCategory&#39;:document.location.pathname,&#39;Site_Country_Code_H&#39;:$(&#39;html&#39;).attr(&#39;data-region&#39;).replace(/[/]/g, &#39;&#39;).toUpperCase(),&#39;eventAction&#39;: &#39;First_Navigation&#39;,&#39;eventLabel&#39;:&#39;Products&#39;+&#39;+&#39;+(window.location.origin + window.location.pathname).replace(/\/$/, &#39;&#39;)}) } catch (error) {if (error.message === &#39;gtag is not defined&#39;) {console.log(&#39;Google Analytics is not available. Event tracking is disabled.&#39;);} else {throw error;}}"> <span>产品</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a href="javascript:;" id="beforecontent_0_rptMobileMainNav_lkLink_6" class="item-link" onclick="try { window.hwa(&#39;trackStructEvent&#39;, { uem_id: &#39;P81D448CBFCA22F_C81DE6BF29D21BB&#39;, uem_label: &#39;点击 页眉-支持&#39;,}); } catch (e) {};try { gtag(&#39;event&#39;,&#39;First_Navigation&#39;,{&#39;eventCategory&#39;:document.location.pathname,&#39;Site_Country_Code_H&#39;:$(&#39;html&#39;).attr(&#39;data-region&#39;).replace(/[/]/g, &#39;&#39;).toUpperCase(),&#39;eventAction&#39;: &#39;First_Navigation&#39;,&#39;eventLabel&#39;:&#39;Support&#39;+&#39;+&#39;+(window.location.origin + window.location.pathname).replace(/\/$/, &#39;&#39;)}) } catch (error) {if (error.message === &#39;gtag is not defined&#39;) {console.log(&#39;Google Analytics is not available. Event tracking is disabled.&#39;);} else {throw error;}}"> <span>支持</span> </a> <span class="textItem_arr"></span> </div> <ul class="submenu" style="display: none;"> <li class="textItem"><a class="item-link" href="/cn/service-support/tsc" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D4335EE84FE6_C6F5B36F49E23A9', uem_label: '点击 页眉-技术支持中心',}); } catch (e) {};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'+'+'+'Services and 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;}}">服务与支持</a></li> <li class="textItem"><a class="item-link" href="https://forum.huawei.com/enterprise/zh/forums/580879799675662336/580879823092461568" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF42A2E27', uem_label: '点击 页眉-支持-论坛',}); } catch (e) {};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'+'+'+'Forum'+'+'+(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;}}">论坛</a></li> <li class="textItem"><a class="item-link" href="https://digitalpower.huawei.com/robotchat/#/home/index?lang=zh_CN&domain=smartpv&from_title_zh=1117" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF477CAF5', uem_label: '点击 页眉-支持-在线支持',}); } catch (e) {};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;}}">在线支持</a></li> </ul> </li> <li class="textItem"> <div class="textItem_div"> <a href="https://community.solar.huawei.com/cn/index.html" id="beforecontent_0_rptMobileMainNav_lkLink_7" class="item-link" target="_blank" onclick="try { window.hwa(&#39;trackStructEvent&#39;, { uem_id: &#39;P81D448CBFCA22F_C81DE6BF2A0B940&#39;, uem_label: &#39;点击 页眉-社区&#39;,}); } catch (e) {};try { gtag(&#39;event&#39;,&#39;First_Navigation&#39;,{&#39;eventCategory&#39;:document.location.pathname,&#39;Site_Country_Code_H&#39;:$(&#39;html&#39;).attr(&#39;data-region&#39;).replace(/[/]/g, &#39;&#39;).toUpperCase(),&#39;eventAction&#39;: &#39;First_Navigation&#39;,&#39;eventLabel&#39;:&#39;Community&#39;+&#39;+&#39;+(window.location.origin + window.location.pathname).replace(/\/$/, &#39;&#39;)}) } catch (error) {if (error.message === &#39;gtag is not defined&#39;) {console.log(&#39;Google Analytics is not available. Event tracking is disabled.&#39;);} else {throw error;}}"> <span>社区</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a href="javascript:;" id="beforecontent_0_rptMobileMainNav_lkLink_8" class="item-link" onclick="try { window.hwa(&#39;trackStructEvent&#39;, { uem_id: &#39;P81D448CBFCA22F_C81DE6BF4DECA10&#39;, uem_label: &#39;点击 页眉-下载中心&#39;,}); } catch (e) {};try { gtag(&#39;event&#39;,&#39;First_Navigation&#39;,{&#39;eventCategory&#39;:document.location.pathname,&#39;Site_Country_Code_H&#39;:$(&#39;html&#39;).attr(&#39;data-region&#39;).replace(/[/]/g, &#39;&#39;).toUpperCase(),&#39;eventAction&#39;: &#39;First_Navigation&#39;,&#39;eventLabel&#39;:&#39;Download&#39;+&#39;+&#39;+(window.location.origin + window.location.pathname).replace(/\/$/, &#39;&#39;)}) } catch (error) {if (error.message === &#39;gtag is not defined&#39;) {console.log(&#39;Google Analytics is not available. Event tracking is disabled.&#39;);} else {throw error;}}"> <span>下载中心</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/cn/info/" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF6F08A5F', uem_label: '点击 页眉-下载中心-产品资料中心',}); } catch (e) {};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;}}">产品资料中心</a></li> <li class="textItem"><a class="item-link" href="https://digitalpower.huawei.com/power-marketing/#/cn/home" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF47ED7E5', uem_label: '点击 页眉-下载中心-营销资料中心',}); } catch (e) {};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'+'+'+'MKT 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;}}">营销资料中心</a></li> </ul> </li> <li class="textItem"> <div class="textItem_div"> <a class="item-link" href="/cn/online-experience-hall?step=card" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF8B83575', uem_label: '点击 页眉-在线体验专区',}); } catch (e) {};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>在线体验专区</span> </a> </div> </li> <li class="textItem"> <div class="textItem_div"> <a class="item-link" href="/cn/order-now" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF4415B50', uem_label: '点击 页眉-立即购买',}); } catch (e) {};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>立即购买</span> </a> </div> </li> </ul> </div> </div> </div> </div> </div> <!--HWDocContent--> <main class="charging"> <div class="nav-m charging-vav"> <p data-target="solution" data-text="Solution"><span>解决方案</span><img class="mobshow" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-icon.png" alt=""></p> <ul> <li data-target="solution" data-text="Solution">解决方案</li> <li data-target="product" data-text="Product">产品</li> <li data-target="advantages" data-text="Advantages">优势</li> <li data-target="success" data-text="Success Stories">成功案例</li> <li data-target="video-cases" data-text="Video Cases">视频案例</li> <li data-target="related" data-text="Related Information">相关资料</li> </ul> </div> <div class="charging1"> <video class="custom-videos lazyloading " data-name="电池包级气" autoplay="autoplay" muted="muted" loop="" playsinline="true" webkit-playsinline="true" x-webkit-airplay="true" x5-video-player-type="h5" x5-video-player-fullscreen="true" data-poster="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging-kvimg.png" data-poster-xs="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging-kvimg.png"> <source type="video/mp4" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging-kv.mp4" data-src-xs="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging-kv.mp4" src=""> </source> </video> <div class="charging1-text"> <h2>华为光储充一站式解决方案</h2> </div> </div> <div class="nav-t charging-vav"> <ul> <li data-target="solution" data-text="Solution">解决方案<img class="mobshow" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-icon.svg" alt=""></li> <li data-target="product" data-text="Product">产品</li> <li data-target="advantages" data-text="Advantages">优势</li> <li data-target="success" data-text="Success Stories">成功案例</li> <li data-target="video-cases" data-text="Video Cases">视频案例</li> <li data-target="related" data-text="Related Information">相关资料</li> </ul> </div> <div class="charging2" id="solution"> <h3>助力城市绿色高质量发展</h3> <div class="charging2-con"> <div class="imgbox"> <picture> <source type="image/png" media="(max-aspect-ratio: 11 / 10)" srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-img-mob-thumb.png" data-srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-img-mob.jpg"> <img class="lazyload charging2-background" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-img-thumb.png" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-img.jpg" alt="助力城市绿色高质量发展"> </source></picture> </div> <div class="charging2-icon iconbox1"> <p>风液智冷工商业储能 <img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-icon.png" alt="风液智冷工商业储能"> </p> <div><img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-icon-yuan.png" alt=""></div> <a class="anchor" target="_blank" data-text="Air-liquid intelligent cooling industrial and commercial energy storage" href="/cn/professionals/all-products/LUNA2000-215-Series"></a> </div> <div class="charging2-icon iconbox2"> <p>智能光伏控制器 <img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-icon.png" alt="智能光伏控制器"> </p> <div><img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-icon-yuan.png" alt=""></div> <a class="anchor" target="_blank" data-text="intelligent photovoltaic controller" href="https://solar.huawei.com/cn/professionals/all-products/SUN2000-150K-MG0-ZH"></a> </div> <div class="charging2-icon iconbox3"> <p>新一代全液冷超充 <img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-icon.png" alt="新一代全液冷超充"> </p> <div><img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-icon-yuan.png" alt=""></div> <a class="anchor" target="_blank" data-text="New generation full liquid cooling overcharge" href="https://digitalpower.huawei.com/cn/smart-charging-network/ultra-fast-charging.html"></a> </div> <div class="charging2-icon iconbox4"> <p>智能组件控制器 <img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-icon.png" alt="智能组件控制器"> </p> <div><img class="iconbox4-img" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-img2.png" alt=""><div></div></div> <a class="anchor" target="_blank" data-text="intelligent component controller" href="https://solar.huawei.com/cn/professionals/all-products/SUN2000-450W-P2-600W-P"></a> </div> <div class="charging2-icon iconbox5"> <p>Smart EMO <!-- <img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-icon.svg" alt=""> --> </p> <div><img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-icon-yuan.png" alt=""></div> </div> </div> <div class="charging2-product" id="product"> <div class="product-con"> <div> <img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-product1.png" alt="智能组件控制器"> <h4>智能组件控制器</h4> <p>组件级优化,高效释放屋顶潜能</p> <a class="anchor" data-text="intelligent component controller" href="https://solar.huawei.com/cn/professionals/all-products/SUN2000-450W-P2-600W-P"></a> </div> <div> <img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-product2.png" alt="智能光伏控制器"> <h4>智能光伏控制器</h4> <p>功率更大,发电更多,安全稳定,<br class="pcshow">运维简单高效</p> <a class="anchor" data-text="intelligent photovoltaic controller" href="https://solar.huawei.com/cn/professionals/all-products/SUN2000-150K-MG0-ZH"></a> </div> <div> <img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-product3.png" alt="风液智冷工商业储能"> <h4>风液智冷工商业储能</h4> <p>安全可靠,更优LCOS,极简安装,<br class="pcshow">超长寿命</p> <a class="anchor" data-text="Air-liquid intelligent cooling industrial and commercial energy storage" href="/cn/professionals/all-products/LUNA2000-215-Series"></a> </div> <div> <img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging2-product4.png" alt="新一代全液冷超充"> <h4>新一代全液冷超充</h4> <p>即充即走,不挑车型,智能降噪</p> <a class="anchor" target="_blank" data-text="New generation full liquid cooling overcharge" href="https://digitalpower.huawei.com/cn/smart-charging-network/ultra-fast-charging.html"></a> </div> </div> <a class="more-products" data-text="More Products" href="https://solar.huawei.com/cn/professionals/all-products">更多产品</a> </div> </div> <div class="charging3" id="advantages"> <div class="charging3-text"> <h3>极致安全</h3> <p>AFCI+RSD技术紧密联动,电弧电压双重保险,保障人财安全。<br class="pcshow">C2C电、热链路安全,防短路防起火,消除储能隐患。<br class="pcshow">全面精细监控,秒级定位异常点,杜绝安全意外。</p> </div> <div class="charging3-con"> <video class="custom-videos lazyloading " data-name="电池包级气" autoplay="autoplay" muted="muted" loop="" playsinline="true" webkit-playsinline="true" x-webkit-airplay="true" x5-video-player-type="h5" x5-video-player-fullscreen="true" data-poster="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging3-videoimg.jpeg" data-poster-xs="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging3-videoimg.jpeg"> <source type="video/mp4" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging3-video.mp4" data-src-xs="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging3-video.mp4" src=""> </source> </video> </div> </div> <div class="charging4"> <div class="charging4-box charging4-top"> <div class="text"> <h3>更高收益</h3> <p>独有的组件级优化方案,适应复杂工商业屋顶场景,高效释放每个屋顶潜能。一包一优化 2.0带来更大循环效率,更多放电2%。功率实现智能化调度,利用率更高。</p> </div> <div> <video class="custom-videos lazyloading charging4-background" data-name="电池包级气" autoplay="autoplay" muted="muted" loop="" playsinline="true" webkit-playsinline="true" x-webkit-airplay="true" x5-video-player-type="h5" x5-video-player-fullscreen="true" data-poster="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging4-videoimg1.jpeg" data-poster-xs="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging4-videoimg1.jpeg"> <source type="video/mp4" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging4-video1.mp4" data-src-xs="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging4-video1.mp4" src=""> </source> </video> </div> </div> <div class="charging4-box charging4-con"> <div class="text"> <h3>极简运维</h3> <p>光储充统一管理,智能协同,运维简单便捷。Pack级SOC自动校准,免人工上站。10年免换液,节省运维成本。提升绿电供应能力,高效营维。</p> </div> <div> <video class="custom-videos lazyloading charging4-background" data-name="电池包级气" autoplay="autoplay" muted="muted" loop="" playsinline="true" webkit-playsinline="true" x-webkit-airplay="true" x5-video-player-type="h5" x5-video-player-fullscreen="true" data-poster="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging4-videoimg2.jpeg" data-poster-xs="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging4-videoimg2.jpeg"> <source type="video/mp4" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging4-video2.mp4" data-src-xs="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging4-video2.mp4" src=""> </source> </video> </div> </div> <div class="charging4-box charging4-btm"> <div class="text"> <h3>更优体验</h3> <p>液冷超充终端更高功率,畅享极速充电体验。设备正常运行时噪声极低,静谧充电。</p> </div> <div> <picture> <source type="image/png" media="(max-aspect-ratio: 11 / 10)" srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging4-img-mob-thumb.png" data-srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging4-img-mob.png"> <img class="lazyload charging4-background" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging4-img-thumb.png" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging4-img.png" alt="更优体验"> </source></picture> </div> </div> </div> <div class="charging5"> <div class="charging5-text"> <h3>降容增收</h3> <p>光储充系统协同调度,降低变压器容量需求,减免市电改造。<br class="pcshow">全面提升光伏发电自用,节能降本增收。</p> </div> <div class="charging5-con"> <video class="custom-videos lazyloading " data-name="电池包级气" autoplay="autoplay" muted="muted" loop="" playsinline="true" webkit-playsinline="true" x-webkit-airplay="true" x5-video-player-type="h5" x5-video-player-fullscreen="true" data-poster="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging5-videoimg.jpeg" data-poster-xs="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging5-videoimg.jpeg"> <source type="video/mp4" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging5-video.mp4" data-src-xs="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging5-video.mp4" src=""> </source> </video> </div> </div> <div class="charging6" id="success"> <h3>成功案例</h3> <section class="section-advantage"> <div class="min"> <!-- <div class="mb-left"></div> <div class="mb-right"></div> --> <div class="lunbo"> <div class="swiper-button-prev" id="lunbo-swiper-button-prev"> </div> <div class="swiper-button-next" id="lunbo-swiper-button-next"> </div> <div class="lunbo-swiper-pagination"></div> <div class="swiper-wrapper"> <div class="swiper-slide" data-text="Ningbo Beilun Optical Storage and Charging Integration Project"> <div class="lunbo-img"> <picture> <source type="image/png" media="(max-aspect-ratio: 11 / 10)" srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img1-mob-thumb.png" data-srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img1-mob.png"> <img class="lazyload charging6-background" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img1-thumb.png" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img1.png" alt="宁波北仑·光储充一体化项目"> </source></picture> </div> <div class="lunbo-text"> <h3>宁波北仑·光储充一体化项目 </h3> <p>浙江宁波 浙江首个应用华为行业绿电3.0</p> </div> </div> <div class="swiper-slide" data-text="Qingchuang Mercure Light Storage Supercharged Station"> <div class="lunbo-img"> <picture> <source type="image/png" media="(max-aspect-ratio: 11 / 10)" srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img2-mob-thumb.png" data-srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img2-mob.png"> <img class="lazyload charging6-background" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img2-thumb.png" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img2.png" alt="青创美居光储超充站"> </source></picture> </div> <div class="lunbo-text"> <h3>青创美居光储超充站 </h3> <p>广东深圳 搭载华为全新一代的工商业光储充产品;光伏装机5MW,储能容量215kWh</p> </div> </div> <div class="swiper-slide" data-text="Beacon Hill Park Ximen Light Storage Overfilling Station"> <div class="lunbo-img"> <picture> <source type="image/png" media="(max-aspect-ratio: 11 / 10)" srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img3-mob-thumb.png" data-srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img3-mob.png"> <img class="lazyload charging6-background" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img3-thumb.png" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img3.png" alt="笔架山公园西门光储超充站"> </source></picture> </div> <div class="lunbo-text"> <h3>笔架山公园西门光储超充站 </h3> <p>广东深圳 毗邻多个核心商圈,车流量大;光伏装机50kW,储能容量430kWh</p> </div> </div> <div class="swiper-slide" data-text="Futian Transportation Hub Optical Storage Overcharge Station"> <div class="lunbo-img"> <picture> <source type="image/png" media="(max-aspect-ratio: 11 / 10)" srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img4-mob-thumb.png" data-srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img4-mob.png"> <img class="lazyload charging6-background" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img4-thumb.png" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img4.png" alt="福田交通枢纽光储超充站"> </source></picture> </div> <div class="lunbo-text"> <h3>福田交通枢纽光储超充站 </h3> <p>广东深圳 城市交通枢纽地段,运营车流量大;光伏装机60kW,储能容量200kWh</p> </div> </div> <div class="swiper-slide" data-text="Excellent light storage and charging project"> <div class="lunbo-img"> <picture> <source type="image/png" media="(max-aspect-ratio: 11 / 10)" srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img5-mob-thumb.png" data-srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img5-mob.png"> <img class="lazyload charging6-background" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img5-thumb.png" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging6-img5.png" alt="优光储充项目"> </source></picture> </div> <div class="lunbo-text"> <h3>优光储充项目 </h3> <p>广东深圳 光伏自发自用,储能两充两放;光伏装机1800kW,储能容量400kWh</p> </div> </div> </div> </div> </div> </section> </div> <div class="charging7" id="video-cases"> <h3>视频案例</h3> <div class="charging7-con"> <div class="solar-pop-video-bg"> <div class="solar-pop-video-content"> <img src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/close.jpg" alt="" class="solar-pop-close"> <video data-name="" data-video-ratio="16:9" autoplay="" class="solar-pop-video" controls="" playsinline="true" webkit-playsinline="true" controlslist="nodownload" webkit-playsinline="true" x-webkit-airplay="true" x5-video-player-type="h5" x5-video-player-fullscreen="true" poster="" src=""></video> </div> </div> <div class="topten1-video"> <div class="video_play video_play1 solar-video-btn-click" data-name="Anzhong Park Excellent Light Storage and Charging Project" data-solarpopvideo="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-video1.MP4" data-solarpopimg="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg1.jpg"> <img class="video-play" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/video-icon.png" alt="安众园区优光储充项目"> <img class="charging7-videoimg" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg1.jpg" alt="安众园区优光储充项目"> </div> <p>安众园区优光储充项目</p> </div> <div class="topten1-video"> <div class="video_play video_play1 solar-video-btn-click" data-name="Guangdong Jiangmen Filling Overcharge Station" data-solarpopvideo="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-video2.mp4" data-solarpopimg="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg2.jpg"> <img class="video-play" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/video-icon.png" alt="广东江门充霸超充站"> <img class="charging7-videoimg" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg2.jpg" alt="广东江门充霸超充站"> </div> <p>广东江门充霸超充站</p> </div> <div class="topten1-video"> <div class="video_play video_play1 solar-video-btn-click" data-name="Sanya Baoting Service Area Optical Storage and Filling Integrated Demonstration Station" data-solarpopvideo="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-video3.mp4" data-solarpopimg="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg3.jpg"> <img class="video-play" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/video-icon.png" alt="三亚保亭服务区光储充一体示范站"> <img class="charging7-videoimg" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg3.jpg" alt="三亚保亭服务区光储充一体示范站"> </div> <p>三亚保亭服务区光储充一体示范站</p> </div> <div class="topten1-video"> <div class="video_play video_play1 solar-video-btn-click" data-name="Shenzhen Longgang Building Materials Park" data-solarpopvideo="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-video4.MP4" data-solarpopimg="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg4.jpg"> <img class="video-play" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/video-icon.png" alt="深圳龙岗建材园区"> <img class="charging7-videoimg" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg4.jpg" alt="深圳龙岗建材园区"> </div> <p>深圳龙岗建材园区</p> </div> <div class="topten1-video"> <div class="video_play video_play1 solar-video-btn-click" data-name="PetroChina Bijiashan Park Ximen Light Storage Overfilling Station" data-solarpopvideo="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-video5.mp4" data-solarpopimg="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg5.jpg"> <img class="video-play" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/video-icon.png" alt="中国石油笔架山公园西门光储超充站"> <img class="charging7-videoimg" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg5.jpg" alt="中国石油笔架山公园西门光储超充站"> </div> <p>中国石油笔架山公园西门光储超充站</p> </div> <div class="topten1-video"> <div class="video_play video_play1 solar-video-btn-click" data-name="Guangdong Hengpi Service Area Optical Storage and Charging Supercharging Station" data-solarpopvideo="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-video6.mp4" data-solarpopimg="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg5.jpg"> <img class="video-play" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/video-icon.png" alt="广东横陂服务区光储充超级充电站"> <img class="charging7-videoimg" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/video/charging7-videoimg5.jpg" alt="广东横陂服务区光储充超级充电站"> </div> <p>广东横陂服务区光储充超级充电站</p> </div> </div> </div> <div class="charging8" id="related"> <h3>资料下载</h3> <div class="charging8-con"> <div> <picture> <source type="image/png" media="(max-aspect-ratio: 11 / 10)" srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img-thumb.png" data-srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img.png"> <img class="lazyload charging8-background" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img-thumb.png" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img.png" alt="资料下载"> </source></picture> <h4>彩页</h4> <p>光储充一站式解决方案</p> <a href="/download?p=%2f-%2fmedia%2fSolarV4%2fsolar-version2%2fasia-pacific%2fcn%2fprofessionals%2fpv-ess-charger%2fimg%2fbrochure.pdf" data-text="Brochure" target="_blank">下载</a> </div> <div> <picture> <source type="image/png" media="(max-aspect-ratio: 11 / 10)" srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img-thumb.png" data-srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img.png"> <img class="lazyload charging8-background" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img-thumb.png" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img.png" alt="资料下载"> </source></picture> <h4>宣传册</h4> <p>光储充一站式解决方案</p> <a href="/download?p=%2f-%2fmedia%2fSolarV4%2fsolar-version2%2fasia-pacific%2fcn%2fprofessionals%2fpv-ess-charger%2fimg%2fpublicize-volumes.pdf" data-text="publicize volumes" target="_blank">下载</a> </div> <div> <picture> <source type="image/png" media="(max-aspect-ratio: 11 / 10)" srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img3-thumb.png" data-srcset="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img3.png"> <img class="lazyload charging8-background" src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img3-thumb.png" data-src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/img/charging8-img3.png" alt="资料下载"> </source></picture> <h4>案例集</h4> <p>光储充一站式解决方案</p> <a href="/download?p=%2f-%2fmedia%2fSolarV4%2fsolar-version2%2fasia-pacific%2fcn%2fprofessionals%2fpv-ess-charger%2fimg%2fcases.pdf" data-text="Case Collection" target="_blank">下载</a> </div> </div> </div> <div class="charging9"> <h3>开启绿色低碳新时代</h3> <p>致电客服或联系当地经销商,我们会为您提供贴心细致的服务,并尽快安排专业人员上门安装。</p> <a target="_blank" data-text="Huawei One-Stop Solution for Optical Storage and Charging-Contact us" href="https://solar.huawei.com/cn/order-now">联系我们</a> </div> </main> <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/#/cn/home" target="_blank"> <div class="side-tip-text ml18">营销资料中心</div> </a> <div class="side-tip-line ml12"></div> <a href="https://solar.huawei.com/cn/info/" target="_blank"> <div class="side-tip-text ml12">产品资料中心</div> </a> <div class="icon-download"></div> </div> </div> <div class="side-tip"> <a href="https://community.solar.huawei.com/cn/index.html" target="_blank"> <div class="icon-community"></div> <div class="hover grid--vertical-align-center"> <div class="side-tip-text ml24">社区</div> <div class="icon-community"></div> </div> </a> </div> <div class="side-tip"> <a href="https://digitalpower.huawei.com/robotchat/#/home/index?lang=zh_CN&domain=smartpv&from_title_zh=1117" target="_blank"> <div class="icon-onlineChat"></div> <div class="hover grid--vertical-align-center"> <div class="side-tip-text ml24">在线支持</div> <div class="icon-onlineChat"></div> </div> </a> </div> <div class='side-tip back-top'> <span></span> </div> </div> </div> <!--/HWDocContent--> <div id="pageFooterWrapper" class=""> <div class="page-footer"> <div class="footer-main"> <div class="bread-crumb"> <a href="/cn">主页</a> <span>&nbsp;>&nbsp;</span> <div class="last_bread">华为光储充一站式解决方案</div> </div> <div class="footer-note"> <p> </p> </div> <div class="footer-top-pc"> <div class="footer-item"> <p class="footer-col-title"> 关于华为智能光伏 <span class="textItem_arr"></span> </p> <ul class="footer-col-list"> <li> <a href="/cn/news-room" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF9AE9F02', uem_label: '点击 页脚-新闻动态',}); } catch (e) {};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;}}">新闻动态</a> </li> <li> <a href="/cn/events-list" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF685BEE2', uem_label: '点击 页脚-展会活动',}); } catch (e) {};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'+'+'+'Events'+'+'+(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;}}">展会活动</a> </li> <li> <a href="/cn/success-stories" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF600C6A9', uem_label: '点击 页脚-成功故事', }); } catch (e) {};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;}}">成功故事</a> </li> <li> <a href="/cn/events-list/cn/2023/publications" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFA7FE925', uem_label: '点击 页脚-出版物', }); } catch (e) {};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'+'+'+'Publications'+'+'+(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;}}">出版物</a> </li> <li> <a href="/cn/newsletter" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF92D4039', uem_label: '点击 页脚-邮件订阅', }); } catch (e) {};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'+'+'+'Newsletter'+'+'+(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;}}">邮件订阅</a> </li> </ul> </div> <div class="footer-item"> <p class="footer-col-title"> 产品 & 解决方案 <span class="textItem_arr"></span> </p> <ul class="footer-col-list"> <li> <a href="/cn/professionals/residential" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFC68A1B1', uem_label: '点击 页脚-家庭绿电', }); } catch (e) {};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;}}">家庭绿电</a> </li> <li> <a href="/cn/professionals/c-i" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF917FCBF', uem_label: '点击 页脚-行业绿电', }); } catch (e) {};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;}}">行业绿电</a> </li> <li> <a href="/cn/professionals/pv-ess-charger" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF917FCBF', uem_label: '点击 页脚-行业绿电', }); } catch (e) {};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'+'+'+'One-stop optical storage and charging'+'+'+(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;}}">光储充一站式</a> </li> <li> <a href="/cn/professionals/utility" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFC129699', uem_label: '点击 页脚-智能光伏电站',}); } catch (e) {};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;}}">智能光伏电站</a> </li> <li> <a href="/cn/professionals/ess" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF9407DA2', uem_label: '点击 页脚-智能组串式储能',}); } catch (e) {};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;}}">智能组串式储能</a> </li> <li> <a href="/cn/professionals/micro-grid" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF856541C', uem_label: '点击 页脚-智能微网', }); } catch (e) {};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;}}">智能微网</a> </li> <li> <a href="/cn/professionals/all-products" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF82FAC94', uem_label: '点击 页脚-所有产品',}); } catch (e) {};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;}}">所有产品</a> </li> <li> <a href="/cn/professionals/SmartDesign" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFA50BFA2', uem_label: '点击 页脚-智能设计工具', }); } catch (e) {};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;}}">智能设计工具</a> </li> </ul> </div> <div class="footer-item"> <p class="footer-col-title"> 合作伙伴 <span class="textItem_arr"></span> </p> <ul class="footer-col-list"> <li> <a href="/cn/partners/partner-introduction" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFAA8957F', uem_label: '点击 页脚-伙伴介绍',}); } catch (e) {};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;}}">伙伴介绍</a> </li> <li> <a href="https://partner.huawei.com/ecpri/#/?lang=zh_CN" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BF9089592', uem_label: '点击 页脚-成为伙伴', }); } catch (e) {};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;}}">成为伙伴</a> </li> <li> <a href="/cn/partners/map?type=installer" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFA5D8847', uem_label: '点击 页脚-寻找安装商',}); } catch (e) {};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 an Installer'+'+'+(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;}}">寻找安装商</a> </li> <li> <a href="https://digitalpower.huawei.com/partner#/cn/main" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFC902FA5', uem_label: '点击 页脚-Power-Partner', }); } catch (e) {};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;}}">Power-Partner</a> </li> </ul> </div> <div class="footer-item"> <p class="footer-col-title"> 服务与支持 <span class="textItem_arr"></span> </p> <ul class="footer-col-list"> <li> <a href="/cn/service-support/tsc" target="" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFE8E0187', uem_label: '点击 页脚-技术支持中心', }); } catch (e) {};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;}}">技术支持中心</a> </li> <li> <a href="https://digitalpower.huawei.com/power-marketing/#/cn/home" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFB55CBBB', uem_label: '点击 页脚-营销资料中心', }); } catch (e) {};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'+'+'+'MKT 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;}}">营销资料中心</a> </li> <li> <a href="https://solar.huawei.com/cn/info/" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFDC6C32C', uem_label: '点击 页脚-产品资料中心', }); } catch (e) {};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;}}">产品资料中心</a> </li> <li> <a href="https://community.solar.huawei.com/cn/index.html" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFEA13070', uem_label: '点击 页脚-社区', }); } catch (e) {};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;}}">社区</a> </li> <li> <a href="https://forum.huawei.com/enterprise/zh/forums/580879799675662336/580879823092461568" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFC06F0BC', uem_label: '点击 页脚-论坛', }); } catch (e) {};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'+'+'+'Forum'+'+'+(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;}}">论坛</a> </li> <li> <a href="https://digitalpower.huawei.com/robotchat/#/home/index?lang=zh_CN&domain=smartpv&from_title_zh=1117" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFBC0C044', uem_label: '点击 页脚-在线支持', }); } catch (e) {};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;}}">在线支持</a> </li> </ul> </div> <div class="footer-item"> <p class="footer-col-title"> 快速链接 <span class="textItem_arr"></span> </p> <ul class="footer-col-list"> <li> <a href="https://www.huawei.com/cn" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6C00CC864D', uem_label: '点击 页脚-华为集团',}); } catch (e) {};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;}}">华为集团</a> </li> <li> <a href="https://e.huawei.com/cn" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFE2F1FDA', uem_label: '点击 页脚-华为企业业务', }); } catch (e) {};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;}}">华为企业业务</a> </li> <li> <a href="https://digitalpower.huawei.com/cn/?from=solar" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFF11F4E4', uem_label: '点击 页脚-华为数字能源', }); } catch (e) {};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;}}">华为数字能源</a> </li> <li> <a href="https://intl.fusionsolar.huawei.com/pvmswebsite/nologin/assets/build/index.html#/jumppage" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6C005E7B45', uem_label: '点击 页脚-下载智能光伏App(移动端)',}); } catch (e) {};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;}}">下载智能光伏App(移动端)</a> </li> <li> <a href="https://intl.fusionsolar.huawei.com" target="_blank" onclick="try { window.hwa('trackStructEvent', { uem_id: 'P81D448CBFCA22F_C81DE6BFDEA6A0D', uem_label: '点击 页脚-登录智能光伏管理系统',}); } catch (e) {};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;}}">登录智能光伏管理系统</a> </li> </ul> </div> </div> <div class="footer-buttom"> <div class="footer-copyright-content"> <div class="footer-copyright footer-copyright-item"> © 2025 华为技术有限公司 </div> <div class="footer-law"> <span class="footer-copyright-item"> <a class="item-link" href="/cn/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"> 隐私政策 </a> </span> </div> </div> <div class="footer-link"> <style type="text/css"> .page-footer .footer-buttom .footer-link .link-img-shipinhao { background: url("/-/media/SolarV4/images/Home/update/shipinhao.svg") 0 0 no-repeat; } .dark .page-footer .footer-buttom .footer-link .link-img-shipinhao { background: url("/-/media/SolarV4/images/Home/update/shipinhao_dark_v5.svg") 0 0 no-repeat; } </style> <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 class="social-item social-icon last-icon"> <span class="footer-link-img link-img-shipinhao"> </span> <div class="hover-pop"> <div class="icon-close"></div> <div class="pop-text"> <p>视频号</p> </div> <div class="pop-img"> <img src="/-/media/SolarV4/images/Home/update/home-footer-icon_3.jpg"> </div> </div> </div> <!-- cookie --> <script> (function (config) { if (!window.location.href.includes('/cn')) { return } var namespace = config.namespace || "hwa"; if (self[namespace] || document.querySelector("script#uem_f")) { return; } self[namespace] = function () { (self[namespace].q = self[namespace].q || []).push(arguments); }; var element = document.createElement("script"); element.TRACKER_CONFIG = config; element.async = true; element.id = "uem_f"; element.src = config.src + "?_" + new Date().toJSON().split("T")[0]; document.head.appendChild(element); })({ platform: "web", edition: "his", env: "prod", appKey: "4ab0d2e51b4af11d0a9d947a89a882cb", src: "https://hwa.his.huawei.com/dist/uem_f.js" }); </script> <script charset="UTF-8" src="https://static.sensorsdata.cn/sdk/1.26.17/sensorsdata.min.js?ver=202412261628"></script> <script charset="UTF-8"> var sensors = window['sensorsDataAnalytic201505']; sensors.use('PageLeave', {}); sensors.init({ server_url: 'https://cdp.test.huawei.com/sa', heatmap: { scroll_notice_map: 'default' }, use_client_time: true, send_type: 'beacon' }); sensors.quick('autoTrack'); </script> <div class="browsehappy ReadPolicy"> <p>本站点使用cookies,继续浏览表示您同意我们使用cookies。<a href="https://solar.huawei.com/cn/privacy" target="_blank"> <span>Cookies和隐私政策 &gt</span></a><a href="javascript:closeCookieBanner()" class="close" title="close"></a> </p> </div> <script> setTimeout(function() { jQuery.Cache = { get: function (key) { var val; try { val = JSON.parse(decodeURIComponent(localStorage.getItem(key))); } catch (_e) { } return val; }, set: function (key, _value, expireDays) { var value = _value; if (!value) return; if (typeof value !== "object") { value = { value: _value }; } var d = new Date(); d.setTime(d.getTime() + 24 * 60 * 60 * 1000 * expireDays); var expire = d; value.expire = expire; localStorage.setItem(key, encodeURIComponent(JSON.stringify(value))); }, del: function (key) { localStorage.removeItem(key); }, }; const commonModule = window.commonModule || {}; commonModule.browsehappy = function browsehappy() { if (!$.Cache) { setTimeout(() => { browsehappy(); }, 200); return; } let browsehappyCache = $.Cache.get('browsehappy'); let hideCache = function () { $.Cache.set('browsehappy', 'browsehappy', 365); }; $(document).on('click', '.browsehappy a.close', function (e) { $(this).closest('.browsehappy').slideUp(hideCache); }); try { if (!browsehappyCache || new Date(browsehappyCache.expire) - new Date() <= 0) { $.Cache.del('browsehappy'); $('.browsehappy').prependTo('body').slideDown(); $('.browsehappy').css('display', 'block'); history.scrollRestoration = 'manual'; $('html,body').animate( { scrollTop: 0, }, 'fast' ); } else { history.scrollRestoration = 'auto'; } } catch (_e) { } }; commonModule.browsehappy(); function closeCookieBanner() { hideCache(); $('.browsehappy').css('display', 'none') } },10) </script> <style> .ReadPolicy { background-color: #eeeeee; color: #282828; display: none; padding: 16px 0; width: 100%; z-index: 10000; position: fixed; bottom: 0; right: 0; } .ReadPolicy p { margin: 0 auto; font-size: 14px; line-height: 1.225; position: relative; padding-right: 20px; padding-left: 20px; width: 93.705%; max-width: 1799.136px; text-align: center; } .ReadPolicy p span { display: inline-block; vertical-align: top; letter-spacing: normal; } .ReadPolicy p a em { display: inline-block; vertical-align: top; font-weight: bold; transition: all 0.5s; letter-spacing: normal; } .ReadPolicy a { color: #c7000b; } .ReadPolicy p a:hover em { transform: translateX(10px); } .ReadPolicy .close { text-decoration: none; position: absolute; top: 0; right: 0px; display: block; height: 30px; width: 30px; color: #fff; line-height: 30px; text-align: center; float: right; margin-top: -7px; opacity: 1; } .ReadPolicy .close:before { content: '✖'; width: 30px; height: 30px; display: block; font-family: 'corpfont' !important; color: #333; font-size: 15px; } @media (max-width: 1024px) { .ReadPolicy { position: fixed; bottom: 0; left: 0; z-index: 999; width: 100%; } .ReadPolicy[style*='block']~.btn-go-top { bottom: 100px; } .ReadPolicy[style*='block']~.popup-icon { bottom: 143px; } .ReadPolicy[style*='block']~footer { margin-bottom: 66px; } } </style> </div> </div> </div> </div> </div> <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="/Assets/Solar/v4/js/utils/jquery-3.6.0.min.js?ver=202412261628"></script> <script src="/Assets/Solar/v4/js/snec/xss.min.js?ver=202412261628"></script> <script src="/Assets/Solar/v4/js/utils/publicPages.js?ver=202412261628"></script> <script> var homeFolder = 'en'; </script> <!--Solar track code--> <script type="text/javascript"> var utag_data = { site_name: "solar", site_type: "website" }; </script> <script src="/-/media/SolarV4/solar-version2/common/professionals/all-products/product/common-product/js/utilsPluginV3ST.js?ver=202412261628"></script> <script src="/-/media/SolarV4/solar-version2/common/seo/common-seo.js?ver=202412261628"></script> <script src="/-/media/SolarV4/solar-version2/common/data-analysis/analysis-v2.js?ver=202412261628"></script> <script src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/js/utilsPlugin.js?ver=202412261628"></script> <script src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/js/swiperbundlemin.js?ver=202412261628"></script> <script src="/-/media/SolarV4/solar-version2/asia-pacific/cn/professionals/pv-ess-charger/js/index.js?ver=202412261628"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10