xiaomianao666

小程序:NUU影院

Apr 22nd, 2025
351
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 海阔视界规则分享,当前分享的是:小程序¥home_rule_v2¥base64://@NUU影院@eyJsYXN0X2NoYXB0ZXJfcnVsZSI6IiIsInRpdGxlIjoiTlVV5b2x6ZmiIiwiYXV0aG9yIjoieGMyMDIyIiwidXJsIjoiaHR0cHM6Ly9udXUuc3UvIiwidmVyc2lvbiI6MjAyNTA0MjIsImNvbF90eXBlIjoibW92aWVfMyIsImNsYXNzX25hbWUiOiIiLCJ0eXBlIjoidmlkZW8iLCJjbGFzc191cmwiOiIiLCJhcmVhX25hbWUiOiIiLCJhcmVhX3VybCI6IiIsInNvcnRfbmFtZSI6IiIsInllYXJfbmFtZSI6IiIsInNvcnRfdXJsIjoiIiwieWVhcl91cmwiOiIiLCJmaW5kX3J1bGUiOiJqczpcbmV2YWwoSlNPTi5wYXJzZShyZXF1ZXN0KCdoaWtlcjovL3BhZ2UvYicpKS5ydWxlKSIsInNlYXJjaF91cmwiOiIvcy9wYWdlL2Z5cGFnZS93ZC8qKi5odG1sIiwiZ3JvdXAiOiIj4piDIiwic2VhcmNoRmluZCI6ImpzOlxuZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS9zaicpKS5ydWxlKSIsImRldGFpbF9jb2xfdHlwZSI6Im1vdmllXzMiLCJkZXRhaWxfZmluZF9ydWxlIjoiIiwic2RldGFpbF9jb2xfdHlwZSI6Im1vdmllXzMiLCJzZGV0YWlsX2ZpbmRfcnVsZSI6IiIsInVhIjoibW9iaWxlIiwicHJlUnVsZSI6IiIsInBhZ2VzIjoiW3tcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJhXCIsXCJwYXRoXCI6XCJhLmh0bWxcIixcInJ1bGVcIjpcIjwhRE9DVFlQRSBodG1sPjxodG1sIGxhbmc9XFxcImVuXFxcIj48aGVhZD48bWV0YSBjaGFyc2V0PVxcXCJVVEYtOFxcXCI+PG1ldGEgbmFtZT1cXFwidmlld3BvcnRcXFwiIGNvbnRlbnQ9XFxcIndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjBcXFwiPjxzY3JpcHQgc3JjPVxcXCJodHRwczovL2Nkbi50YWlsd2luZGNzcy5jb21cXFwiPjwvc2NyaXB0PjxsaW5rIGhyZWY9XFxcImh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjcuMi9jc3MvYWxsLm1pbi5jc3NcXFwiIHJlbD1cXFwic3R5bGVzaGVldFxcXCI+PHRpdGxlPmhkcDwvdGl0bGU+PHN0eWxlPi5zbGlkZXJ7cG9zaXRpb246cmVsYXRpdmU7bWF4LXdpZHRoOjgwMHB4O21hcmdpbjotNTBweCBhdXRvIDZweCBhdXRvO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjEycHg7aGVpZ2h0OjIxOHB4fS5zbGlkZXtkaXNwbGF5Om5vbmU7aGVpZ2h0OjEwMCV9LnNsaWRlIGltZ3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlO29iamVjdC1maXQ6Y292ZXI7Ym9yZGVyLXJhZGl1czoxMHB4O2JveC1zaGFkb3c6MCA0cHggOHB4IDAgcmdiYSgwLDAsMCwwLjYpLDAgNnB4IDIwcHggMCByZ2JhKDAsMCwwLDAuMTkpfS5zbGlkZS1uYW1le3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToyMHB4O2xlZnQ6MDtyaWdodDowO2NvbG9yOndoaXRlO3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6MTBweDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5jb250YWluZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1ib3R0b206MzBweDtwYWRkaW5nOjIwcHh9LmltYWdle21hcmdpbi1yaWdodDoxMHB4fS5pbWFnZSBpbWd7d2lkdGg6MTUwcHg7aGVpZ2h0OmF1dG99LnNlYXJjaC1ib3h7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MzUwcHh9LnNlYXJjaC1ib3ggaW5wdXR7d2lkdGg6MTAwJTtwYWRkaW5nOjE1cHggNDBweCAxNXB4IDEwcHg7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2JvcmRlci1yYWRpdXM6NXB4O2ZvbnQtc2l6ZToxNnB4O2hlaWdodDozNnB4fS5zZWFyY2gtYm94IC5zZWFyY2gtaWNvbntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxMHB4O3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7Zm9udC1zaXplOjIwcHg7Y29sb3I6Izg4ODtjdXJzb3I6cG9pbnRlcn08L3N0eWxlPjwvaGVhZD48Ym9keSBjbGFzcz1cXFwiYmctZ3JheS0xMDBcXFwiPjxkaXYgY2xhc3M9XFxcImNvbnRhaW5lclxcXCI+PGRpdiBjbGFzcz1cXFwiaW1hZ2VcXFwiPjxhPjxpbWcgc3JjPVxcXCJodHRwczovL251dS5zdS91cGxvYWQvbXhwcm9jbXMvMjAyNDA4MDktMS9kOTZhMjAyZTk5NDU4ZTkzZDkzMDBkMDNjMzUyMTJkZi5wbmdcXFwiIGFsdD1cXFwi5Zu+54mHXFxcIj48L2E+PC9kaXY+PGRpdiBjbGFzcz1cXFwic2VhcmNoLWJveFxcXCI+PGlucHV0IHR5cGU9XFxcInRleHRcXFwiIGlkPVxcXCJzZWFyY2gtaW5wdXRcXFwiIHBsYWNlaG9sZGVyPVxcXCLor7fovpPlhaXlhbPplK7or40uLi5cXFwiPjxzcGFuIGNsYXNzPVxcXCJzZWFyY2gtaWNvblxcXCIgaWQ9XFxcInNlYXJjaC1pY29uXFxcIj7wn5SNPC9zcGFuPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9XFxcInNsaWRlclxcXCI+PGRpdiBjbGFzcz1cXFwic2xpZGVcXFwiPjxhIGhyZWY9XFxcImhpa2VyOi8vc2VhcmNoP3M9NzQ55bGAJnJ1bGU9TlVV5b2x6ZmiXFxcIj48aW1nIHNyYz1cXFwiaHR0cHM6Ly9jZG4uYmJqLmljdS9iYmpwb3N0ZXIvMjAyNC8xMi8xMC9temMwMDIwMGVhOXQxZ2wuanBnXFxcIiBhbHQ9XFxcIjc0OeWxgFxcXCI+PC9hPjxkaXYgY2xhc3M9XFxcInNsaWRlLW5hbWVcXFwiPjc0OeWxgDwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9XFxcInNsaWRlXFxcIj48YSBocmVmPVxcXCJoaWtlcjovL3NlYXJjaD9zPVjlsYDlr4bmoaMmcnVsZT1OVVXlvbHpmaJcXFwiPjxpbWcgc3JjPVxcXCJodHRwczovL2Nkbi5iYmouaWN1L2JianBvc3Rlci8yMDI1LzA0LzE3L216YzAwMjAweWd3ODc5dy5qcGdcXFwiIGFsdD1cXFwiWOWxgOWvhuaho1xcXCI+PC9hPjxkaXYgY2xhc3M9XFxcInNsaWRlLW5hbWVcXFwiPljlsYDlr4bmoaM8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPVxcXCJzbGlkZVxcXCI+PGEgaHJlZj1cXFwiaGlrZXI6Ly9zZWFyY2g/cz3mgqzplZwmcnVsZT1OVVXlvbHpmaJcXFwiPjxpbWcgc3JjPVxcXCJodHRwczovL2Nkbi5iYmouaWN1L2JianBvc3Rlci8yMDI1LzA0LzE3L216YzAwMjAwbTQ5aGZpZC5qcGdcXFwiIGFsdD1cXFwi5oKs6ZWcXFxcIj48L2E+PGRpdiBjbGFzcz1cXFwic2xpZGUtbmFtZVxcXCI+5oKs6ZWcPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz1cXFwic2xpZGVcXFwiPjxhIGhyZWY9XFxcImhpa2VyOi8vc2VhcmNoP3M954yO6a2C5Lq6JnJ1bGU9TlVV5b2x6ZmiXFxcIj48aW1nIHNyYz1cXFwiaHR0cHM6Ly9jZG4uYmJqLmljdS9iYmpwb3N0ZXIvMjAyNS8wNC8xNy9temMwMDIwMDczMjc2dGEuanBnXFxcIiBhbHQ9XFxcIueMjumtguS6ulxcXCI+PC9hPjxkaXYgY2xhc3M9XFxcInNsaWRlLW5hbWVcXFwiPueMjumtguS6ujwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9XFxcInNsaWRlXFxcIj48YSBocmVmPVxcXCJoaWtlcjovL3NlYXJjaD9zPeaIkeeahOWQjuWNiueUnyZydWxlPU5VVeW9semZolxcXCI+PGltZyBzcmM9XFxcImh0dHBzOi8vY2RuLmJiai5pY3UvYmJqcG9zdGVyLzIwMjUvMDQvMDcvbXpjMDAyMDByYjB4dWZvLmpwZ1xcXCIgYWx0PVxcXCLmiJHnmoTlkI7ljYrnlJ9cXFwiPjwvYT48ZGl2IGNsYXNzPVxcXCJzbGlkZS1uYW1lXFxcIj7miJHnmoTlkI7ljYrnlJ88L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPVxcXCJzbGlkZVxcXCI+PGEgaHJlZj1cXFwiaGlrZXI6Ly9zZWFyY2g/cz3or6/mnYAzJnJ1bGU9TlVV5b2x6ZmiXFxcIj48aW1nIHNyYz1cXFwiaHR0cHM6Ly9jZG4uYmJqLmljdS9iYmpwb3N0ZXIvMjAyNS8wNC8wNy9temMwMDIwMDVmMGo2OXcuanBnXFxcIiBhbHQ9XFxcIuivr+adgDNcXFwiPjwvYT48ZGl2IGNsYXNzPVxcXCJzbGlkZS1uYW1lXFxcIj7or6/mnYAzPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz1cXFwic2xpZGVcXFwiPjxhIGhyZWY9XFxcImhpa2VyOi8vc2VhcmNoP3M954Sa5Z+OJnJ1bGU9TlVV5b2x6ZmiXFxcIj48aW1nIHNyYz1cXFwiaHR0cHM6Ly9jZG4uYmJqLmljdS9iYmpwb3N0ZXIvMjAyNS8wNC8wNy9temMwMDIwMHVydnYwcDMuanBnXFxcIiBhbHQ9XFxcIueEmuWfjlxcXCI+PC9hPjxkaXYgY2xhc3M9XFxcInNsaWRlLW5hbWVcXFwiPueEmuWfjjwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQ+bGV0IHNsaWRlSW5kZXggPSAwO3Nob3dTbGlkZXMoKTtmdW5jdGlvbiBzaG93U2xpZGVzKCl7bGV0IGk7bGV0IHNsaWRlcyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXFxcInNsaWRlXFxcIik7Zm9yIChpID0gMDsgaSA8IHNsaWRlcy5sZW5ndGg7IGkrKykge3NsaWRlc1tpXS5zdHlsZS5kaXNwbGF5ID0gXFxcIm5vbmVcXFwiO31zbGlkZUluZGV4Kys7aWYgKHNsaWRlSW5kZXggPiBzbGlkZXMubGVuZ3RoKSB7c2xpZGVJbmRleCA9IDE7fXNsaWRlc1tzbGlkZUluZGV4IC0gMV0uc3R5bGUuZGlzcGxheSA9IFxcXCJibG9ja1xcXCI7c2V0VGltZW91dChzaG93U2xpZGVzLCAzMDAwKTt9Y29uc3Qgc2VhcmNoSW5wdXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2VhcmNoLWlucHV0Jyk7Y29uc3Qgc2VhcmNoSWNvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdzZWFyY2gtaWNvbicpO3NlYXJjaEljb24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBwZXJmb3JtU2VhcmNoKTtzZWFyY2hJbnB1dC5hZGRFdmVudExpc3RlbmVyKCdrZXlwcmVzcycsIGZ1bmN0aW9uKGV2ZW50KSB7aWYgKGV2ZW50LmtleSA9PT0gJ0VudGVyJykge3BlcmZvcm1TZWFyY2goKTt9fSk7ZnVuY3Rpb24gcGVyZm9ybVNlYXJjaCgpIHtjb25zdCBzZWFyY2hUZXJtID0gc2VhcmNoSW5wdXQudmFsdWUudHJpbSgpO2lmIChzZWFyY2hUZXJtIT09ICcnKSB7Y29uc3Qgc2VhcmNoVVJMID0gYGhpa2VyOi8vc2VhcmNoP3M9JHtlbmNvZGVVUklDb21wb25lbnQoc2VhcmNoVGVybSl9JnJ1bGU9TlVV5b2x6ZmiYDt3aW5kb3cub3BlbihzZWFyY2hVUkwsICdfYmxhbmsnKTt9IGVsc2Uge2FsZXJ0KCfor7fovpPlhaXmkJzntKLlhoXlrrnvvIEnKTt9fTwvc2NyaXB0PjwvYm9keT48L2h0bWw+XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJiXCIsXCJwYXRoXCI6XCJiXCIsXCJydWxlXCI6XCJqczpcXG52YXIgaXRlbXMgPSBbXTtcXG52YXIgZ2V0UmFuZ2VDb2xvcnMgPSBmdW5jdGlvbigpIHtcXG4gICAgcmV0dXJuICcjJyArICgnMDAwMDAnICsgKE1hdGgucmFuZG9tKCkgKiAweDEwMDAwMDAgPDwgMCkudG9TdHJpbmcoMTYpKS5zdWJzdHIoLTYpO1xcbn1cXG5cXG5ldmFsUHJpdmF0ZUpTKCdoZDhCMXdrbFoxSnJoQjNZOHhpRE5FT0tpN3h6dEtQeUVmOS80bUJ1T2pyejE0OUsvcmxLYnlkQkNJVzhlZ1VPaGl0bWtYTytyVG1KSUYxTFpWWG9zRWdYdGMwS3pnZGd4Ly9tUE1iN0daSi91ZkppdmZSQkJKOWhlbW90MlhjWlJ3clRDdnU3RnViN3BWQlh5b0NIVTF5WDgzdm9XaS9tclNZV25TUDVnSUVOMTllN3FIOW5ETERTbVIvNW56YlpKL3I1cjF5QmUyTnQwZjhwaHYwaEZ3ODBIS3B4OEc4SHlpTEMwK0gwRHRxZURyQlpYbGI3a2FkNGJKVDByVVF1Yi9CbWVGMVJ2TndCY0cvMXBnSmRRZEs2OCt3d1JuTm4zK2RNU1FadGVubExLZXdwcW5tcUUrRWF2UVR1dUtIZTBWMldrV0VraVc1S0hPQnFXbWRZMGttR2R0dmVLTzhuZUpmVDJsaVhycWQ0SlhRMTBNZGZqczREOTVLNHlxeDFPVHlMWk43U2FVYkcrRzd6VTJJRWtZSEs4Sk1iOFhCZGxiSTcrRnMrS01SS1BMY0ErVVdQb3Y5NDVIRW9kUk54eE9nQVdMWlpJdDNhSzUrQVF2RWlIUT09Jyk7XFxuY29uc3QgcGFnZSA9IE1ZX1BBR0VcXG52YXIgaHRtbCA9IGdldFJlc0NvZGUoKTtcXG5cXG5cXG52YXIgdGFiX3NldCA9IHBkZmEoaHRtbCwgJ2JvZHkmJi5tb2R1bGUsMTo3Jyk7XFxudGFiX3NldC5mb3JFYWNoKChkYXRhLCBpKSA9PiB7XFxuICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgdGl0bGU6ICc8Yj48YmlnPjxmb250IGNvbG9yPVxcXCIjMzQyYTJiXFxcIj4nICsgcGRmaChkYXRhLCBcXFwiaDImJlRleHRcXFwiKS5yZXBsYWNlKCdkaWFueWluZycsJycpLnJlcGxhY2UoJ2p1amknLCcnKS5yZXBsYWNlKCd6b25neWknLCcnKS5yZXBsYWNlKCdkb25nbWFuJywnJykucmVwbGFjZSgnc2h1YW5nanUnLCcnKS5yZXBsYWNlKCdqaWx1JywnJykgKyAnPC9mb250PjwvYmlnPjwvYj4nLFxcbiAgICAgICAgaW1nOiBcXFwiaHR0cHM6Ly9zMS5jaHUwLmNvbS9zcmMvaW1nL3BuZy81Ni81NmMyZGQ4YWQ4NDg0NGNjOTA5NzE4NDBmODAyODg3Yi5wbmc/aW1hZ2VNb2dyMi9hdXRvLW9yaWVudC90aHVtYm5haWwvITI4MngyODJyL2dyYXZpdHkvQ2VudGVyL2Nyb3AvMjgyeDI4Mi9xdWFsaXR5Lzg1LyU3Q2ltYWdlVmlldzIvMi93LzI4MiZlPTIwNTEwMjA4MDAmdG9rZW49MXNyblpHTEtaMEFxbHo2ZGs3eUY0U2tpWWY0ZVAtWXJFT2RNMXNvYjp1VzA0NzZUSnlwTFlSeXZnZlpXd0VxQi1kcFE9XFxcIixcXG4gICAgICAgIHVybDogcGQoZGF0YSwgJ2EmJmhyZWYnKS5yZXBsYWNlKCdmJywgJ3gvaWQnKS5yZXBsYWNlKCcuaHRtbCcsICcvcGFnZS9meXBhZ2UuaHRtbCcpICsgJyNub0hpc3RvcnkjQHJ1bGU9anM6JC5yZXF1aXJlKFxcXCJmXFxcIiknLFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0X2ljb24nLCBcXG4gICAgfSk7XFxuICAgIHZhciBpdGVtID0gcGRmYShkYXRhLCAnYm9keSYmLm1vZHVsZS1pdGVtLDA6OScpO1xcbiAgICBpdGVtLmZvckVhY2goKGl0ZW0pID0+IHtcXG4gICAgICAgIGxldCBpbWcgPSBwZChpdGVtLCAnLmxhenlsb2FkJiZkYXRhLW9yaWdpbmFsJyk7XFxuICAgICAgICBpdGVtcy5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogcGRmaChpdGVtLCAnYSYmdGl0bGUnKSxcXG4gICAgICAgICAgICBkZXNjOiBwZGZoKGl0ZW0sICcubW9kdWxlLWl0ZW0tbm90ZSYmVGV4dCcpLFxcbiAgICAgICAgICAgIGltZzogaW1nICsgXFxcIkBSZWZlcmVyPVxcXCIsXFxuICAgICAgICAgICAgdXJsOiBwZChpdGVtLCAnYSYmaHJlZicpICsgJyNpbW1lcnNpdmVUaGVtZSMjYXV0b0NhY2hlI0BydWxlPWpzOiQucmVxdWlyZShcXFwiY1xcXCIpJyxcXG4gICAgICAgICAgICBjb2xfdHlwZTogXFxcIm1vdmllXzNfbWFycXVlZVxcXCIsXFxuICAgICAgICAgICAgZXh0cmE6IHtcXG4gICAgICAgICAgICAgICAgaW1nOiBpbWdcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9KTtcXG4gICAgfSlcXG4gICAgaXRlbXMucHVzaCh7XFxuICAgICAgICBjb2xfdHlwZTogXFxcImxpbmVfYmxhbmtcXFwiXFxuICAgIH0pO1xcbn0pXFxuXFxuc2V0UmVzdWx0KGl0ZW1zKTtcIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcImNcIixcInBhdGhcIjpcImNcIixcInJ1bGVcIjpcImpzOlxcbnZhciBkID0gW107XFxudmFyIGh0bWwgPSBnZXRSZXNDb2RlKCk7XFxuXFxudmFyIGxhenkgPSAkKCcnKS5sYXp5UnVsZSgoKSA9PiB7XFxuICAgIHRyeSB7XFxuICAgICAgICBmdW5jdGlvbiB0b1VybChwbGF5VXJsKSB7XFxuICAgICAgICAgICAgaWYgKC9tZ3R2fHNvaHUvLnRlc3QocGxheVVybCkpIHtcXG4gICAgICAgICAgICAgICAgcmV0dXJuIHBsYXlVcmwgKyBcXFwiO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfVxcXCI7XFxuICAgICAgICAgICAgfSBlbHNlIGlmICgvYmlsaS8udGVzdChwbGF5VXJsKSkge1xcbiAgICAgICAgICAgICAgICByZXR1cm4gcGxheVVybCArIFxcXCI7e1VzZXItQWdlbnRATW96aWxsYS81LjAmJlJlZmVyZXJAaHR0cHM6Ly93d3cuYmlsaWJpbGkuY29tfVxcXCI7XFxuICAgICAgICAgICAgfSBlbHNlIGlmICgvaXhpZ3VhLy50ZXN0KHBsYXlVcmwpKSB7XFxuICAgICAgICAgICAgICAgIHJldHVybiBwbGF5VXJsICsgXFxcIiNpc1ZpZGVvPXRydWUjXFxcIiArIFxcXCIjLm1wNDt7UmVmZXJlckBodHRwczovL3d3dy5peGlndWEuY29tLyYmVXNlci1BZ2VudEBNb3ppbGxhLzUuMH1cXFwiO1xcbiAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgIHJldHVybiBwbGF5VXJsO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH1cXG5cXG4gICAgICAgIHZhciBodG1sID0gcmVxdWVzdChpbnB1dCwge30pO1xcbiAgICAgICAgdmFyIHBsYXllcl9kYXRhID0gSlNPTi5wYXJzZShodG1sLm1hdGNoKC9yIHBsYXllcl8uKj89KC4qPyk8LylbMV0pO1xcbiAgICAgICAgdmFyIGZybyA9IHBsYXllcl9kYXRhLmZyb207XFxuICAgICAgICB2YXIgcGxheVVybCA9IHBsYXllcl9kYXRhLnVybDtcXG5cXG5cXG4gICAgICAgIGlmIChwbGF5ZXJfZGF0YS5lbmNyeXB0ID09ICcxJykge1xcbiAgICAgICAgICAgIHBsYXlVcmwgPSB1bmVzY2FwZShwbGF5ZXJfZGF0YS51cmwpO1xcbiAgICAgICAgfSBlbHNlIGlmIChwbGF5ZXJfZGF0YS5lbmNyeXB0ID09ICcyJykge1xcbiAgICAgICAgICAgIHBsYXlVcmwgPSB1bmVzY2FwZShiYXNlNjREZWNvZGUocGxheWVyX2RhdGEudXJsKSk7XFxuICAgICAgICB9O1xcbiAgICAgICAgdmFyIGV4Y2x1ZGUgPSAvcGxheW0zdTh8bTN1OFxcXFwudHZ8bWluXFxcXC5jc3N8NDA0XFxcXC5tM3U4fFxcXFwuY3NzLztcXG4gICAgICAgIHZhciBjb250YWluID0gL1xcXFwubXA0fFxcXFwubTN1OHxcXFxcLmZsdnxcXFxcLmF2aXxcXFxcLm1wZWd8XFxcXC53bXZ8XFxcXC5tb3Z8XFxcXC5ybXZifFxcXFwuZGF0fHFxQkZkb3dubG9hZHxtaW1lPXZpZGVvJTJGfHZpZGVvX21wNC87XFxuICAgICAgICBpZiAoIWV4Y2x1ZGUudGVzdChwbGF5VXJsKSAmJiBjb250YWluLnRlc3QocGxheVVybCkpIHtcXG4gICAgICAgICAgICByZXR1cm4gdG9VcmwocGxheVVybCk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICB2YXIganhVcmwgPSAnJztcXG4gICAgICAgIHZhciBqeEh0bWwgPSByZXF1ZXN0KGp4VXJsLCB7XFxuICAgICAgICAgICAgaGVhZGVyczoge1xcbiAgICAgICAgICAgICAgICBcXFwiVXNlci1BZ2VudFxcXCI6IFxcXCJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKVxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIG1ldGhvZDogXFxcIkdFVFxcXCJcXG4gICAgICAgIH0pO1xcbiAgICAgICAgZXZhbChqeEh0bWwubWF0Y2goL3ZhciBjb25maWcgPSB7W1xcXFxzXFxcXFNdKj99LylbMF0gKyBcXFwiXFxcIik7XFxuICAgICAgICB2YXIgYXBpVXJsID0gJyc7XFxuICAgICAgICB2YXIgYXBpSHRtbCA9IHJlcXVlc3QoYXBpVXJsLCB7XFxuICAgICAgICAgICAgaGVhZGVyczoge1xcbiAgICAgICAgICAgICAgICBcXFwiVXNlci1BZ2VudFxcXCI6IFxcXCJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKVxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIGJvZHk6IFxcXCJ1cmw9XFxcIiArIGNvbmZpZy51cmwgKyBcXFwiJnRpbWU9XFxcIiArIGNvbmZpZy50aW1lICsgXFxcIiZrZXk9XFxcIiArIGNvbmZpZy5rZXksXFxuICAgICAgICAgICAgbWV0aG9kOiBcXFwiUE9TVFxcXCJcXG4gICAgICAgIH0pO1xcbiAgICAgICAgdmFyIGpzb24gPSBKU09OLnBhcnNlKGFwaUh0bWwpO1xcbiAgICAgICAgaWYgKGpzb24uY29kZSA9PSAyMDApIHtcXG4gICAgICAgICAgICBwbGF5VXJsID0ganNvbi51cmw7XFxuICAgICAgICAgICAgcmV0dXJuIHRvVXJsKHBsYXlVcmwpO1xcbiAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8vJyArIGpzb24ubXNnO1xcbiAgICAgICAgfVxcblxcbiAgICB9IGNhdGNoIChlKSB7XFxuICAgICAgICAvL3NldEVycm9yKGUpO1xcbiAgICAgICAgc2hvd0xvYWRpbmcoXFxcIuato+WcqOi/m+ihjOajgOe0ou+8jOivt+eojeWAmS4uLlxcXCIpO1xcbiAgICAgICAgdmFyIHZpZGVvID0gJ3g1UnVsZTovLycgKyBpbnB1dCArICdAJyArICQudG9TdHJpbmcoKCkgPT4ge1xcbiAgICAgICAgICAgIC8vZmJhLmxvZyhmYmEuZ2V0VXJscygpKVxcbiAgICAgICAgICAgIHZhciB1cmxzID0gX2dldFVybHMoKVxcbiAgICAgICAgICAgIHZhciBleGNsdWRlID0gL3BsYXltM3U4fG0zdThcXFxcLnR2fG1pblxcXFwuY3NzfDQwNFxcXFwubTN1OHxcXFxcLmNzcy87XFxuICAgICAgICAgICAgdmFyIGNvbnRhaW4gPSAvXFxcXC5tcDR8XFxcXC5tM3U4fFxcXFwuZmx2fFxcXFwuYXZpfFxcXFwubXBlZ3xcXFxcLndtdnxcXFxcLm1vdnxcXFxcLnJtdmJ8XFxcXC5kYXR8cXFCRmRvd25sb2FkfG1pbWU9dmlkZW8lMkZ8dmlkZW9fbXA0LztcXG4gICAgICAgICAgICBmb3IgKHZhciBpIGluIHVybHMpIHtcXG4gICAgICAgICAgICAgICAgaWYgKCFleGNsdWRlLnRlc3QodXJsc1tpXSkgJiYgY29udGFpbi50ZXN0KHVybHNbaV0pKSB7XFxuICAgICAgICAgICAgICAgICAgICAvLyBmeV9icmlkZ2VfYXBwLmxvZyh1cmxzW2ldKVxcbiAgICAgICAgICAgICAgICAgICAgaWYgKC9tZ3R2fHNvaHUvLnRlc3QodXJsc1tpXSkpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXJsc1tpXSArIFxcXCI7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9XFxcIjtcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL2JpbGkvLnRlc3QodXJsc1tpXSkpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXJsc1tpXSArIFxcXCI7e1VzZXItQWdlbnRATW96aWxsYS81LjAmJlJlZmVyZXJAaHR0cHM6Ly93d3cuYmlsaWJpbGkuY29tfVxcXCI7XFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKC9peGlndWEvLnRlc3QodXJsc1tpXSkpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXJsc1tpXSArIFxcXCIjaXNWaWRlbz10cnVlI1xcXCIgKyBcXFwiIy5tcDQ7e1JlZmVyZXJAaHR0cHM6Ly93d3cuaXhpZ3VhLmNvbS8mJlVzZXItQWdlbnRATW96aWxsYS81LjB9XFxcIjtcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVybHNbaV1cXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH0pO1xcbiAgICAgICAgcmV0dXJuIHZpZGVvO1xcbiAgICB9XFxufSk7XFxuXFxuLy/nur/ot6/lkI3liJfooajnmoTlrprkvY1cXG52YXIgYXJ0cyA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJ2JvZHkmJi50YWItaXRlbScpO1xcblxcbi8v57q/6Lev5ZCN5YiX6KGo5ZCN56ew55qE5a6a5L2NXFxudmFyIHRhYnMgPSBbXTtcXG5mb3IgKHZhciBpIGluIGFydHMpIHtcXG4gICAgdGFicy5wdXNoKHBhcnNlRG9tRm9ySHRtbChhcnRzW2ldLCAnc3BhbiYmVGV4dCcpLnJlcGxhY2UoJ++8iOivt+WLv+ebuOS/oeinhumikeWGheW5v+WRiu+8iScsJycpKVxcbn1cXG5cXG4vL+aSreaUvuWIl+ihqOeahOWIl+ihqOeahOWumuS9jVxcbnZhciBjb250cyA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJ2JvZHkmJi5tb2R1bGUtbGlzdCcpO1xcbnZhciBsaXN0cyA9IFtdO1xcbmZvciAodmFyIGkgaW4gY29udHMpIHtcXG4gICAgdmFyIHRlbXAgPSBwYXJzZURvbUZvckFycmF5KGNvbnRzW2ldLCAnYm9keSYmYTpub3QoOmNvbnRhaW5zKOaOkuW6jykpJylcXG4gICAgbGlzdHMucHVzaCh0ZW1wKVxcbn1cXG5cXG52YXIg5a+85ryUID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsICcubW9kdWxlLWluZm8taXRlbSwxJiZUZXh0JykucmVwbGFjZSgvXFxcXC8vZywgJyAnKTtcXG5cXG52YXIg5Li75ryUID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsICcubW9kdWxlLWluZm8taXRlbSwyJiZUZXh0Jyk7XFxuXFxudmFyIOabtOaWsCA9IHBhcnNlRG9tRm9ySHRtbChodG1sLCAnLm1vZHVsZS1pbmZvLWl0ZW0sMyYmVGV4dCcpO1xcblxcbnZhciDnirbmgIEgPSBwYXJzZURvbUZvckh0bWwoaHRtbCwgJy5tb2R1bGUtaW5mby1pdGVtLDQmJlRleHQnKTtcXG5cXG52YXIg5Zu+54mHID0gcGFyc2VEb20oaHRtbCwgJy5sYXp5bG9hZCYmZGF0YS1vcmlnaW5hbHx8ZGF0YS1zcmMnKTtcXG5cXG52YXIg566A5LuLID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsICcubW9kdWxlLWluZm8taW50cm9kdWN0aW9uLWNvbnRlbnQmJlRleHQnKS5yZXBsYWNlKCfmlLbotbcnLCAnJyk7XFxuXFxudmFyIENvbG9yID0gXFxcIiNmMTNiNjZhXFxcIjtcXG52YXIgQ29sb3IxID0gXFxcIiMwOThBQzFcXFwiO1xcblxcbmZ1bmN0aW9uIGdldEhlYWQodGl0bGUpIHtcXG4gICAgcmV0dXJuICfigJjigJjigJnigJk8c3Ryb25nPjxmb250IGNvbG9yPVxcXCInICsgQ29sb3IgKyAnXFxcIj4nICsgdGl0bGUgKyAnPC9mcm9udD48L3N0cm9uZz4nO1xcbn1cXG5sZXQgbGluZV9tb2RlbCA9IDg7XFxubGV0IGxpbmVfdHlwZV9tb2RlbCA9ICdibGFua19ibG9jayc7XFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6IOWvvOa8lCArICdcXFxcbicgKyDkuLvmvJQsXFxuICAgIGRlc2M6IOabtOaWsCArICdcXFxcbicgKyDnirbmgIEsXFxuICAgIHBpY191cmw6IOWbvueJhyxcXG4gICAgdXJsOiBNWV9VUkwsXFxuICAgIGNvbF90eXBlOiAnbW92aWVfMV92ZXJ0aWNhbF9waWNfYmx1cidcXG59KTtcXG5kLnB1c2goe1xcbiAgICB0aXRsZTogJ+KAmOKAmOKAmeKAmTxzbWFsbD48Zm9udCBjb2xvcj1cXFwiI2ZmMTQ4ZThlXFxcIj7nroDku4vvvJonICsg566A5LuLLnN1YnN0cigwLCA1NSkgKyAnLi4uPC9mb250PjxzbWFsbD48Zm9udCBjb2xvcj1cXFwicmVkXFxcIj7or6bmg4U8L2ZvbnQ+PC9zbWFsbD48L3NtYWxsPicsXFxuICAgIHVybDogJ2hpa2VyOi8vZW1wdHkjJyArICdcXFxcbicgKyDnroDku4sgKyBgQHJ1bGU9anM6dmFyIHJlcyA9IHt9OyB2YXIgZCA9IFtdO2QucHVzaCh7dGl0bGU6J+W9seeJh+eugOS7i++8micrIE1ZX1VSTC5zcGxpdCgnaGlrZXI6Ly9lbXB0eSMnKVsxXSxjb2xfdHlwZTogJ2xvbmdfdGV4dCd9KTtyZXMuZGF0YSA9IGQ7IHNldEhvbWVSZXN1bHQocmVzKTtgLFxcbiAgICBjb2xfdHlwZTogJ3RleHRfMSdcXG59KTtcXG5mb3IgKGxldCBpID0gMDsgaSA8IGxpbmVfbW9kZWw7IGkrKykge1xcbiAgICBkLnB1c2goe1xcbiAgICAgICAgY29sX3R5cGU6IGxpbmVfdHlwZV9tb2RlbFxcbiAgICB9KVxcbn1cXG5cXG52YXIg5pCc57Si5qCH562+ID0gJ2gxJiZUZXh0JztcXG52YXIgdGl0bGUgPSBwYXJzZURvbUZvckh0bWwoaHRtbCwg5pCc57Si5qCH562+KTtcXG5kLnB1c2goe1xcbiAgICB0aXRsZTogXFxcIummmeaDheW9seinhlxcXCIsXFxuICAgIHBpY191cmw6ICdodHRwczovL2VkdS1pbWFnZS5ub3Nkbi4xMjcubmV0L0I3NTczQjMyQjEzRDlDOEFBRjgwMUY5NjI4ODU3RUY2LnBuZycsXFxuICAgIHVybDogJ2hpa2VyOi8vc2VhcmNoP3M9JyArIHRpdGxlICsgJyZydWxlPemmmeaDheW9seinhicsXFxuICAgIGNvbF90eXBlOiAnaWNvbl9zbWFsbF80JyxcXG59KTtcXG5kLnB1c2goe1xcbiAgICB0aXRsZTogJ+S6keebmOWQmy7nroAnLFxcbiAgICBwaWNfdXJsOiAnaHR0cHM6Ly9pbWcuYWxpY2RuLmNvbS9pbWdleHRyYS9pMi9PMUNOMDFET1ljczcxdjNCNmJPZW1WTV8hITYwMDAwMDAwMDYxMTYtMi10cHMtNTEyLTUxMi5wbmcnLFxcbiAgICB1cmw6ICdoaWtlcjovL3NlYXJjaD9zPScgKyB0aXRsZSArICcmcnVsZT3kupHnm5jlkJsu566AJyxcXG4gICAgY29sX3R5cGU6ICdpY29uX3NtYWxsXzQnLFxcbn0pO1xcbmQucHVzaCh7XFxuICAgIHRpdGxlOiAn6aOO5b2xJyxcXG4gICAgcGljX3VybDogJ2h0dHBzOi8vczEuYXgxeC5jb20vMjAyMi8xMC8xNS94d1RQZFUuanBnJyxcXG4gICAgdXJsOiAnaGlrZXI6Ly9zZWFyY2g/cz0nICsgdGl0bGUgKyAnJnJ1bGU96aOO5b2xJyxcXG4gICAgY29sX3R5cGU6ICdpY29uX3NtYWxsXzQnLFxcbn0pO1xcbmQucHVzaCh7XFxuICAgIHRpdGxlOiAn6Z2S6LGGJyxcXG4gICAgcGljX3VybDogJ2h0dHBzOi8vaTAud3AuY29tL2kwLmltZzJpcGZzLmNvbS9pcGZzL1FtWkVzQTZod1l5akFhaUt1bzRVY3drUTM2aWlVbUtxQVppTHFSSjExcFpCMlA/ZmlsZW5hbWU9JUU5JTlEJTkyJUU4JUIxJTg2LnBuZycsXFxuICAgIHVybDogJ2hpa2VyOi8vc2VhcmNoP3M9JyArIHRpdGxlICsgJyZydWxlPemdkuixhicsXFxuICAgIGNvbF90eXBlOiAnaWNvbl9zbWFsbF80JyxcXG59KTtcXG5cXG5mdW5jdGlvbiBzZXRUYWJzKHRhYnMsIHZhcmkpIHtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAoZ2V0VmFyKCdzaHNvcnQnKSA9PSAnMScpID8gJ+KAnOKAnOKAneKAnTxiPjxzcGFuIHN0eWxlPVxcXCJjb2xvcjogI0ZGMDAwMFxcXCI+6YCG5bqPPC9zcGFuPjwvYj4nIDogJ+KAnOKAnOKAneKAnTxiPjxzcGFuIHN0eWxlPVxcXCJjb2xvcjogIzFhYWQxOVxcXCI+5q2j5bqPPC9zcGFuPjwvYj4nLFxcbiAgICAgICAgdXJsOiBgQGxhenlSdWxlPS5qczpsZXQgY29uZiA9IGdldFZhcignc2hzb3J0Jyk7aWYoY29uZj09JzEnKXtwdXRWYXIoe2tleTonc2hzb3J0JywgdmFsdWU6JzAnfSk7fWVsc2V7cHV0VmFyKHtrZXk6J3Noc29ydCcsIHZhbHVlOicxJ30pfTtyZWZyZXNoUGFnZSgpOyd0b2FzdDovL+WIh+aNouaOkuW6j+aIkOWKnydgLFxcbiAgICAgICAgY29sX3R5cGU6ICdmbGV4X2J1dHRvbidcXG4gICAgfSlcXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0YWJzLmxlbmd0aDsgaSsrKSB7XFxuICAgICAgICB2YXIgdXJsID0gXFxcIiNub0xvYWRpbmcjQGxhenlSdWxlPS5qczpwdXRWYXIoJ1xcXCIgKyB2YXJpICsgXFxcIicsICdcXFwiICsgaSArIFxcXCInKTtyZWZyZXNoUGFnZShmYWxzZSk7J3RvYXN0Oi8v5YiH5o2i5oiQ5Yqf77yBJzsnI25vSGlzdG9yeSNoaWtlcjovL2VtcHR5J1xcXCI7XFxuICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgIHRpdGxlOiBnZXRWYXIodmFyaSwgJzAnKSA9PSBpID8gJ+KAnOKAnCcgKyB0YWJzW2ldICsgJ+KAneKAnScgOiB0YWJzW2ldLFxcbiAgICAgICAgICAgIHVybDogdXJsLFxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnZmxleF9idXR0b24nXFxuICAgICAgICB9KVxcbiAgICB9XFxufVxcblxcbmZ1bmN0aW9uIHNldExpc3RzKGxpc3RzLCBpbmRleCkge1xcbiAgICB2YXIgbGlzdCA9IGxpc3RzW2luZGV4XTtcXG4gICAgaWYgKGdldFZhcignc2hzb3J0JykgPT0gJzEnKSB7XFxuICAgICAgICB2YXIgbGlzdCA9IGxpc3RzW2luZGV4XS5yZXZlcnNlKCk7XFxuICAgIH1cXG4gICAgZm9yICh2YXIgaiBpbiBsaXN0KSB7XFxuICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgIHRpdGxlOiBwZGZoKGxpc3Rbal0sICdhJiZUZXh0JylcXG4gICAgICAgICAgICAgICAgLnJlcGxhY2UoL+esrChcXFxcZCsp6ZuGLywgJyQxJylcXG4gICAgICAgICAgICAgICAgLnJlcGxhY2UoJ+esrCcsICcnKVxcbiAgICAgICAgICAgICAgICAucmVwbGFjZSgn5pyfJywgJycpLFxcbiAgICAgICAgICAgIHVybDogcGQobGlzdFtqXSwgJ2EmJmhyZWYnKSArIGxhenksXFxuICAgICAgICAgICAgY29sX3R5cGU6IGxpc3QubGVuZ3RoID4gMyA/ICd0ZXh0XzQnIDogJ3RleHRfMidcXG4gICAgICAgIH0pO1xcbiAgICB9XFxufVxcblxcbnNldFRhYnModGFicywgTVlfVVJMKTtcXG5zZXRMaXN0cyhsaXN0cywgZ2V0VmFyKE1ZX1VSTCwgJzAnKSk7XFxuZC5wdXNoKHtcXG4gICAgY29sX3R5cGU6ICdsaW5lX2JsYW5rJ1xcbn0pXFxuXFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6ICfigJjigJjigJnigJnnm7jlhbPmjqjojZAnLmJvbGQoKSxcXG4gICAgdXJsOiAnaGlrZXI6Ly9lbXB0eScsXFxuICAgIGNvbF90eXBlOiBcXFwidGV4dF8xXFxcIlxcbn0pO1xcblxcbnZhcsKgbGlzdMKgPcKgcGRmYShnZXRSZXNDb2RlKCkswqAnYm9keSYmLm1vZHVsZS1pdGVtLDA6OScpO1xcbmZvcsKgKHZhcsKgasKgaW7CoGxpc3QpwqB7XFxuwqDCoMKgwqBkLnB1c2goe1xcbsKgwqDCoMKgwqDCoMKgwqB0aXRsZTrCoHBkZmgobGlzdFtqXSzCoCdhJiZ0aXRsZScpLFxcbsKgwqDCoMKgwqDCoMKgwqBkZXNjOsKgcGRmaChsaXN0W2pdLMKgJy5tb2R1bGUtaXRlbS10ZXh0fHwubW9kdWxlLWl0ZW0tbm90ZSYmVGV4dCcpLFxcbsKgwqDCoMKgwqDCoMKgwqBwaWNfdXJsOsKgcGQobGlzdFtqXSzCoCdpbWd8fC5sYXp5JiZkYXRhLXNyY3x8ZGF0YS1vcmlnaW5hbHx8c3JjJynCoCvCoCdAUmVmZXJlcj0nLFxcbsKgwqDCoMKgwqDCoMKgwqB1cmw6wqBwZChsaXN0W2pdLMKgJ2EmJmhyZWYnKcKgK8KgJyNpbW1lcnNpdmVUaGVtZSMjYXV0b0NhY2hlI0BydWxlPWpzOiQucmVxdWlyZShcXFwiY1xcXCIpJ1xcbn0pO1xcbn1cXG5zZXRSZXN1bHQoZCk7XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJlXCIsXCJwYXRoXCI6XCJzalwiLFwicnVsZVwiOlwianM6XFxudmFyIGQgPSBbXTtcXG52YXIgaHRtbCA9IGdldFJlc0NvZGUoKVxcbnZhcsKgbGlzdMKgPcKgcGRmYShnZXRSZXNDb2RlKCkswqAnYm9keSYmLm1vZHVsZS1pdGVtJyk7XFxuZm9ywqAodmFywqBqwqBpbsKgbGlzdCnCoHtcXG7CoMKgwqDCoGQucHVzaCh7XFxuwqDCoMKgwqDCoMKgwqDCoHRpdGxlOsKgcGRmaChsaXN0W2pdLMKgJy5tb2R1bGUtY2FyZC1pdGVtLXRpdGxlJiZUZXh0JyksXFxuwqDCoMKgwqDCoMKgwqDCoGRlc2M6wqBwZGZoKGxpc3Rbal0swqAnLm1vZHVsZS1pbmZvLWl0ZW0mJlRleHQnKSxcXG4gICAgICAgICBjb250ZW50OnBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCAnLm1vZHVsZS1pbmZvLWl0ZW0sMSYmVGV4dCcpLFxcbsKgwqDCoMKgwqDCoMKgwqBwaWNfdXJsOsKgcGQobGlzdFtqXSzCoCdpbWd8fC5sYXp5JiZkYXRhLXNyY3x8ZGF0YS1vcmlnaW5hbHx8c3JjJynCoCvCoCdAUmVmZXJlcj0nLFxcbsKgwqDCoMKgwqDCoMKgwqB1cmw6wqBwZChsaXN0W2pdLMKgJ2EmJmhyZWYnKSvCoCcjaW1tZXJzaXZlVGhlbWUjI2F1dG9DYWNoZSNAcnVsZT1qczokLnJlcXVpcmUoXFxcImNcXFwiKSdcXG59KTtcXG59XFxuc2V0UmVzdWx0KGQpO1wifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiZlwiLFwicGF0aFwiOlwiZlwiLFwicnVsZVwiOlwianM6XFxudmFyIGQgPSBbXTtcXG5cXG5cXG52YXIgZ2V0UmFuZ2VDb2xvcnMgPSBmdW5jdGlvbigpIHvCoMKgwqDCoMKgwqDCoFxcbiAgICByZXR1cm4gJyMnICsgKCcwMDAwMCcgKyAoTWF0aC5yYW5kb20oKSAqIDB4MTAwMDAwMCA8PCAwKS50b1N0cmluZygxNikpLnN1YnN0cigtNik7wqDCoMKgwqDCoFxcbn1cXG5cXG5jb25zdCDliIbnsbvpopzoibIgPSBnZXRSYW5nZUNvbG9ycygpXFxuY29uc3Qg5aSn57G75a6a5L2NID0gJ2JvZHkmJi5uYXZiYXItaXRlbXMnXFxuY29uc3Qg5ou85o6l5YiG57G7ID0gJ2JvZHkmJi5tb2R1bGUtY2xhc3MtaXRlbXMnXFxuY29uc3Qg5bCP57G75a6a5L2NID0gJ2JvZHkmJmE6bm90KDptYXRjaGVzKOi/veWJp+WRqOihqHzmnIDmlrDotYTorq986aaW6aG1fOabtOaWsHzng63mkJzmppx85a2m5Lmg6LWE5rqQfEFQUHznlZnoqIApKSdcXG5jb25zdCDliIbnsbvmoIfpopggPSAnYSYmVGV4dCdcXG5jb25zdCDliIbnsbvpk77mjqUgPSAnYSYmaHJlZidcXG5NWV9VUkwgPSBNWV9VUkwucmVwbGFjZSgnaGlrZXI6Ly9lbXB0eSMjJywgJycpXFxuXFxubGV0IHRydWVfdXJsID0gZ2V0VmFyKE1ZX1JVTEUudXJsLCBNWV9VUkwpXFxuY29uc3QgcGFnZSA9IE1ZX1BBR0VcXG5pZiAoZ2V0VmFyKE1ZX1JVTEUudXJsKSkge1xcbiAgICB0cnVlX3VybCA9IHRydWVfdXJsLnJlcGxhY2UoJ2YnLCAneC9pZCcpLnJlcGxhY2UoJy5odG1sJywgJy9wYWdlLycgKyBwYWdlICsgJy5odG1sJyk7XFxufVxcblxcbi8vbG9nKHRydWVfdXJsKVxcbnZhciBodG1sID0gcmVxdWVzdCh0cnVlX3VybClcXG5cXG5ldmFsKEpTT04ucGFyc2UocmVxdWVzdCgnaGlrZXI6Ly9wYWdlL2cnKSkucnVsZSlcXG5cXG52YXIgbGlzdCA9IHBkZmEoaHRtbCwgJ2JvZHkmJi5tb2R1bGUtaXRlbScpO1xcbmZvciAodmFyIGogaW4gbGlzdCkge1xcbiAgICBkLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IHBkZmgobGlzdFtqXSwgJ2EmJnRpdGxlJyksXFxuICAgICAgICBkZXNjOiBwZGZoKGxpc3Rbal0sICcubW9kdWxlLWl0ZW0tbm90ZSYmVGV4dCcpLFxcbiAgICAgICAgaW1nOiBwZChsaXN0W2pdLCAnLmxhenlsb2FkJiZkYXRhLW9yaWdpbmFsJykgKyBcXFwiQFJlZmVyZXI9XFxcIixcXG4gICAgICAgIHVybDogcGQobGlzdFtqXSwgJ2EmJmhyZWYnKSArICcjaW1tZXJzaXZlVGhlbWUjI2F1dG9DYWNoZSNAcnVsZT1qczokLnJlcXVpcmUoXFxcImNcXFwiKScsXFxuY29sX3R5cGU6ICdtb3ZpZV8zX21hcnF1ZWUnLFxcbiAgICAgICAgICAgIH0pXFxufVxcbnNldFJlc3VsdChkKTtcIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcImdcIixcInBhdGhcIjpcImdcIixcInJ1bGVcIjpcImNvbnN0IGVtcHR5ID0gXFxcImhpa2VyOi8vZW1wdHlcXFwiXFxuXFxudHJ5IHtcXG4gICAgdmFyIGNhdGVnb3JpZXMgPSBwZGZhKGh0bWwsIOWkp+exu+WumuS9jSkuY29uY2F0KHBkZmEoaHRtbCwg5ou85o6l5YiG57G7KSlcXG59IGNhdGNoIChlKSB7XFxuICAgIHZhciBjYXRlZ29yaWVzID0gcGRmYShodG1sLCDlpKfnsbvlrprkvY0pXFxufVxcblxcbmxldCBpbml0X2NhdGUgPSBbXVxcblxcbmZvciAobGV0IGkgPSAwOyBpIDwgMjA7IGkrKykge1xcbiAgICBpbml0X2NhdGUucHVzaChcXFwiMFxcXCIpXFxufVxcblxcbmNvbnN0IGZvbGQgPSBnZXRWYXIoTVlfUlVMRS5ncm91cCwgXFxcIjBcXFwiKVxcbmNvbnN0IGNhdGVfdGVtcF9qc29uID0gZ2V0VmFyKE1ZX1JVTEUudGl0bGUsIEpTT04uc3RyaW5naWZ5KGluaXRfY2F0ZSkpXFxuY29uc3QgY2F0ZV90ZW1wID0gSlNPTi5wYXJzZShjYXRlX3RlbXBfanNvbilcXG5cXG5pZiAocGFyc2VJbnQocGFnZSkgPT09IDEpIHtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiBmb2xkID09PSAnMScgPyAn4oCc4oCc4oCd4oCdPGI+PHNwYW4gc3R5bGU9XFxcImNvbG9yOiAjMTlCODlEXFxcIj7imJw8L3NwYW4+PC9iPicgOiAn4oCc4oCc4oCd4oCdPGI+PHNwYW4gc3R5bGU9XFxcImNvbG9yOiAjOTEwMTEzXFxcIj7imJ48L3NwYW4+PC9iPicsXFxuICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZSgoZm9sZCkgPT4ge1xcbiAgICAgICAgICAgIHB1dFZhcihNWV9SVUxFLmdyb3VwLCBmb2xkID09PSAnMScgPyAnMCcgOiAnMScpO1xcbiAgICAgICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKTtcXG4gICAgICAgICAgICByZXR1cm4gXFxcImhpa2VyOi8vZW1wdHlcXFwiXFxuICAgICAgICB9LCBmb2xkKSxcXG4gICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbicsXFxuICAgIH0pXFxuXFxuY2F0ZWdvcmllcy5mb3JFYWNoKChjYXRlZ29yeSwgaW5kZXgpID0+IHtcXG4gICAgICAgIGxldCBzdWJfY2F0ZWdvcmllcyA9IHBkZmEoY2F0ZWdvcnksIOWwj+exu+WumuS9jSk7XFxuICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcXG4gICAgICAgICAgICBzdWJfY2F0ZWdvcmllcy5mb3JFYWNoKChpdGVtLCBrZXkpID0+IHtcXG4gICAgICAgICAgICAgICAgbGV0IHRpdGxlID0gcGRmaChpdGVtLCDliIbnsbvmoIfpopgpXFxuICAgICAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICB0aXRsZToga2V5LnRvU3RyaW5nKCkgPT09IGNhdGVfdGVtcFtpbmRleF0gPyAn4oCc4oCc4oCd4oCdPGI+PHNwYW4gc3R5bGU9XFxcImNvbG9yOiAnICsg5YiG57G76aKc6ImyICsgJ1xcXCI+JyArIHRpdGxlICsgJzwvc3Bhbj48L2I+JyA6IHRpdGxlLFxcbiAgICAgICAgICAgICAgICAgICAgdXJsOiAkKHBkKGl0ZW0sIOWIhuexu+mTvuaOpSkgKyAnI25vTG9hZGluZyMnKS5sYXp5UnVsZSgocGFyYW1zKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IG5ld19jYXRlID0gW11cXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXMuY2F0ZV90ZW1wLmZvckVhY2goKGNhdGUsIGluZGV4KSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld19jYXRlLnB1c2goaW5kZXggPT09IDAgPyBwYXJhbXMua2V5LnRvU3RyaW5nKCkgOiBcXFwiMFxcXCIpXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICAgICAgICAgICAgICBwdXRWYXIoTVlfUlVMRS50aXRsZSwgSlNPTi5zdHJpbmdpZnkobmV3X2NhdGUpKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dFZhcihNWV9SVUxFLnVybCwgaW5wdXQpXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UodHJ1ZSlcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gXFxcImhpa2VyOi8vZW1wdHlcXFwiXFxuICAgICAgICAgICAgICAgICAgICB9LCB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0ZV90ZW1wOiBjYXRlX3RlbXAsXFxuICAgICAgICAgICAgICAgICAgICAgICAga2V5OiBrZXksXFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFnZTogcGFnZSxcXG4gICAgICAgICAgICAgICAgICAgIH0pLFxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXG4gICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiBcXFwiYmxhbmtfYmxvY2tcXFwiXFxuICAgICAgICAgICAgfSk7XFxuICAgICAgICB9IGVsc2UgaWYgKGZvbGQgPT09ICcxJykge1xcbiAgICAgICAgICAgIHN1Yl9jYXRlZ29yaWVzLmZvckVhY2goKGl0ZW0sIGtleSkgPT4ge1xcbiAgICAgICAgICAgICAgICBsZXQgdGl0bGUgPSBwZGZoKGl0ZW0sIOWIhuexu+agh+mimClcXG4gICAgICAgICAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBrZXkudG9TdHJpbmcoKSA9PT0gY2F0ZV90ZW1wW2luZGV4XSA/ICfigJzigJzigJ3igJ08Yj48c3BhbiBzdHlsZT1cXFwiY29sb3I6ICcgKyDliIbnsbvpopzoibIgKyAnXFxcIj4nICsgdGl0bGUgKyAnPC9zcGFuPjwvYj4nIDogdGl0bGUsXFxuICAgICAgICAgICAgICAgICAgICB1cmw6ICQocGQoaXRlbSwg5YiG57G76ZO+5o6lKSArICcjbm9Mb2FkaW5nIycpLmxhenlSdWxlKChwYXJhbXMpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXMuY2F0ZV90ZW1wW3BhcmFtcy5pbmRleF0gPSBwYXJhbXMua2V5LnRvU3RyaW5nKClcXG5cXG4gICAgICAgICAgICAgICAgICAgICAgICBwdXRWYXIoTVlfUlVMRS50aXRsZSwgSlNPTi5zdHJpbmdpZnkocGFyYW1zLmNhdGVfdGVtcCkpXFxuICAgICAgICAgICAgICAgICAgICAgICAgcHV0VmFyKE1ZX1JVTEUudXJsLCBpbnB1dClcXG4gICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSh0cnVlKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFwiaGlrZXI6Ly9lbXB0eVxcXCJcXG4gICAgICAgICAgICAgICAgICAgIH0sIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBjYXRlX3RlbXA6IGNhdGVfdGVtcCxcXG4gICAgICAgICAgICAgICAgICAgICAgICBpbmRleDogaW5kZXgsXFxuICAgICAgICAgICAgICAgICAgICAgICAga2V5OiBrZXksXFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFnZTogcGFnZSxcXG4gICAgICAgICAgICAgICAgICAgIH0pLFxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXG4gICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiBcXFwiYmxhbmtfYmxvY2tcXFwiXFxuICAgICAgICAgICAgfSk7XFxuICAgICAgICB9XFxuICAgIH0pXFxufVwifV0iLCJpY29uIjoiaHR0cHM6Ly9udXUuc3UvdXBsb2FkL214cHJvY21zLzIwMjQwODA5LTEvZDk2YTIwMmU5OTQ1OGU5M2Q5MzAwZDAzYzM1MjEyZGYucG5nIiwicHJveHkiOiIifQ==
Add Comment
Please, Sign In to add comment