inte_base64:IDwhRE9DVFlQRSBodG1sPgo8aHRtbD4KPGhlYWQ+Cjx0aXRsZT7nrKwzMDnnq6DkvKroo4UgKDEgLyA0KS3pgI3pgaXlhbXnjovmtJvlpKkt5peg5by556qX5bCP6K+0572RPC90aXRsZT4KPG1ldGEgbmFtZT0ia2V5d29yZHMiIGNvbnRlbnQ9IumAjemBpeWFteeOi+a0m+WkqSznrKwzMDnnq6DkvKroo4UgKDEgLyA0KSIgLz4KPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IuaXoOW8ueeql+Wwj+ivtOe9keaPkOS+m+S6huacgOaWsOeroOiKgi/mmpflpJzooYzotbDliJvkvZznmoTnvZHmuLjlsI/or7TjgIrpgI3pgaXlhbXnjovmtJvlpKnjgIvlubLlh4DmuIXniL3ml6DplJnlrZfnmoTmloflrZfnq6DoioLvvJrnrKwzMDnnq6DkvKroo4UgKDEgLyA0KSIgLz4KIDxtZXRhIGh0dHAtZXF1aXY9IkNhY2hlLUNvbnRyb2wiIGNvbnRlbnQ9Im5vLXRyYW5zZm9ybSAiIC8+DQo8bWV0YSBodHRwLWVxdWl2PSJDYWNoZS1Db250cm9sIiBjb250ZW50PSJuby1zaXRlYXBwIiAvPg0KPG1ldGEgbmFtZT0iYXBwbGljYWJsZS1kZXZpY2UiIGNvbnRlbnQ9InBjLG1vYmlsZSI+DQo8bWV0YSBuYW1lPSJIYW5kaGVsZEZyaWVuZGx5IiBjb250ZW50PSJ0cnVlIi8+DQo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCI+DQo8bWV0YSBuYW1lPSJNb2JpbGVPcHRpbWl6ZWQiIGNvbnRlbnQ9IjI0MCIvPg0KPG1ldGEgbmFtZT0iYXBwbGljYWJsZS1kZXZpY2UiIGNvbnRlbnQ9Im1vYmlsZSIvPg0KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAsIG1heGltdW0tc2NhbGU9MS4wLCBtaW5pbXVtLXNjYWxlPTEuMCIgLz4NCjxtZXRhIGh0dHAtZXF1aXY9IkNhY2hlLUNvbnRyb2wiIGNvbnRlbnQ9Im1heC1hZ2U9MzAwIiAvPg0KPG1ldGEgaHR0cC1lcXVpdj0iQ2FjaGUtQ29udHJvbCIgY29udGVudD0ibm8tdHJhbnNmb3JtICIgLz4NCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii90ZW1wbGF0ZS96aXNoaXlpbmcvY3NzL3N0eWxlLmNzcyIgLz4NCjxzY3JpcHQgc3JjPSIvdGVtcGxhdGUvemlzaGl5aW5nL2pzL2NvbW1vbi5qcyI+PC9zY3JpcHQ+DQo8c2NyaXB0IHNyYz0iL3RlbXBsYXRlL3ppc2hpeWluZy9qcy9pbWcuanMiPjwvc2NyaXB0Pg0KDQoNDQogPHNjcmlwdCBzcmM9Ii90ZW1wbGF0ZS96aXNoaXlpbmcvanMvaW1nLmpzIj48L3NjcmlwdD4KPC9oZWFkPgo8Ym9keT4KPGRpdiBpZD0ibm92ZWxib2R5IiBjbGFzcz0ibnJfbGF5b3V0Ij4KCTxkaXYgY2xhc3M9ImhlYWQiPgoJCTxkaXYgY2xhc3M9InJldHVybiI+PGEgaHJlZj0iamF2YXNjcmlwdDpoaXN0b3J5LmdvKC0xKTsiPui/lOWbnjwvYT48L2Rpdj4KCQk8ZGl2IGNsYXNzPSJuYXZfbmFtZSI+PGgxPjxhIGhyZWY9Ii8zNS8zNTkwMC8iPumAjemBpeWFteeOi+a0m+WkqTwvYT48L2gxPjwvZGl2PgoJCTxkaXYgY2xhc3M9ImhvbWVwYWdlIj48YSBocmVmPSIvIj7pppbpobU8L2E+PC9kaXY+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9Im5yX2Z1bmN0aW9uIj4KCQk8ZGl2IGNsYXNzPSJucl9mdW5jdGlvbjEiPgoJCQk8ZGl2IGlkPSJjaGFwdGVyU2V0IiBjbGFzcz0ibGVmdCI+CgkJCQk8cCBpZD0ic2hvd1NldCI+6K6+572uPC9wPgoJCQkJPHA+PGEgaWQ9ImxpZ2h0ZGl2IiBvbmNsaWNrPSJucl9zZXRiZygnbGlnaHQnKSI+5YWz54GvPC9hPjwvcD4KCQkJCTxwPjxhIGlkPSJmb250YmlnIiBvbmNsaWNrPSJucl9zZXRiZygnYmlnJykiPuWkpzwvYT48L3A+CgkJCQk8cD48YSBpZD0iZm9udG1pZGRsZSIgb25jbGljaz0ibnJfc2V0YmcoJ21pZGRsZScpIj7kuK08L2E+PC9wPgoJCQkJPHA+PGEgaWQ9ImZvbnRzbWFsbCIgb25jbGljaz0ibnJfc2V0YmcoJ3NtYWxsJykiPuWwjzwvYT48L3A+CgkJCQk8ZGl2IGNsYXNzPSJjbGVhciI+PC9kaXY+CgkJCTwvZGl2PgoJCTwvZGl2PgoJCTxoMT7nrKwzMDnnq6DkvKroo4UgKDEgLyA0KTwvaDE+CgkJPHNjcmlwdD5fMTdtYl90b3AoKTwvc2NyaXB0Pg0KCQk8cD48Zm9udCAgc2l6ZT00IGNvbG9yPSIjRkYwMDAwIj7jgIrlhbPpl63lsI/or7TnlYXor7vmqKHlvI/kvZPpqozmm7Tlpb3jgIs8L2ZvbnQ+PC9wPjxicj4KCQk8ZGl2IGlkPSJub3ZlbGNvbnRlbnQiIGNsYXNzPSJub3ZlbGNvbnRlbnQiPg0KCQkmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDvku47ngavovabnq5npmYTov5HotbDmnaXkuKTlkI3nlLflrZDvvIznqb/nnYDlvojmma7pgJrvvIzkuIDkuKrkuIDouqvnmb3oibLnmoR05oGk77yM5LiL6Z2i5LiA5Lu25Y2K5oiq5aSn6KOk6KGp77yM5LiL6Z2i56m/552A5LiA5peF5ri46Z6L77yM6IKp6IaA5omb552A5LiA5Liq5bCP5YyF77yM5aaC5ZCM5aSW5p2l5omT5bel55qE5qih5qC377yM5Y+q5LiN6L+H5aS05Y+R5b6I55+t77yM55y856We5b6I5YeM5Y6J77yM6Z2i6Imy5pyJ5Lqb5Yia5q+F44CCPGJyPjxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDvogIzlj6bkuIDkuKrliJnmmK/nqb/nnYDoirHmoLzlrZDml6DoopbooavooaPvvIzkuIvpnaLmmK/kuIDku7bplb/oo6TvvIzovrnotbDvvIzovrnkuI3ml7bnmoTku47lj6Pooovph4zmi7/lh7rkuIDkuKrlsI/plZzlrZDnhaflkYDnhafnmoTvvIzkuKTkurrnmoTkvZPlvaLpg73mr5TovoPpq5jlpKfvvIzotrPmnInkuIDnsbPlhavlt6blj7PjgII8YnI+PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO+i/meS4pOS6uuato+aYr+m+memtgua0vuWIsOi+veilv+eahOWFiOmBo+WGm++8jOWNl+Wuq+ato+WSjOiOq+WwkemUi++8jOW+iOaYjuaYvuaLv+mVnOWtkOeahOmCo+S4quWwseaYr+mYtOawlOaegemHjeeahOiOq+WwkemUi+OAgjxicj48YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A74oCc5ZKm77yM6L+Z5Liq5Zyw5pa55rCU5YCZ5LiN5oCO5LmI5qC377yM6aOO5pmv6L+Y5piv5LiN6ZSZ55qE5Zib77yM5Y2X5a6r5YWE77yM5p2l77yM57uZ5Lq65a6254Wn5Liq55u44oCm4oCm4oCdPGJyPjxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDvojqvlsJHplIvlvojlvLrlo67vvIzlj6/mmK/ov5notKfljbTlgY/lgY/kuIDouqvpmLTmn5TkuYvmsJTvvIzmraTliLvpnaDlnKjkuIDkuKrnn7Pni67ovrnvvIzlj4zmiYvlvoDlkI7kuIDog4zvvIznq5/nhLblgZrlh7rkuIDlia/lsJHlpbPmkpLlqIfnirbvvIznnIvnmoTljZflrqvmraPkuI3nlLHnmoTkuIDpmLXmgbblr5LjgII8YnI+PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO+eUmuiHs+S4gOi3r+S4iu+8jOiiq+i/meS4quiOq+WwkemUi+aKmOiFvueahOebtOaDs+WQkO+8jOeUmuiHs+i/mOacieS6uuaKiuS7luS7rOS4pOS4quW9k+aIkOS6huWlveWfuuWPi++8jOabtOaYr+iuqeS7luacieenjemqguS6uueahOWGsuWKqO+8jOecn+S4jeaYjueZve+8jOmAjemBpeeOi+iAgeWkp++8jOS4uuS7gOS5iOimgea0vuiHquW3seWSjOi/meS4quWutuS8meWcqOS4gOi1t+aJp+ihjOS7u+WKoeOAgjxicj48YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A75Y2X5a6r5q2j5Zi06KeS5oq95LqG5oq977yM6L+Y5piv6LW35omL5py677yM57uZ5LuW6ZqP5L6/55qE5ouN5LqG5LiA5byg77yM5Y+q5piv6L+Z5qC36L+Y5LiN566X77yM6I6r5bCR6ZSL5ruh5oSP55qE55yL5LqG5LiA55y85omL6YeM55qE54Wn54mH77yM5Zub5LiL55qE55yL5LqG5LiA5LiL77yM55yL5Yiw5LiA5Liq5ouJ552A6KGM5p2O566x77yM5q2j5LuO6L+Z6YeM6Lev6L+H55qE57qm5pyJ5LqM5Y2B5bKB5bem5Y+z55qE55m95YeA55qE5bm06L275Lq677yM5LqO5piv6JmO6Lqv5LiA5omt5bCx6LWw5LqG6L+H5Y6744CCPGJyPjxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDvigJzov5nkvY3lsI/lhYTlvJ/vvIzor7fnrYnkuIDkuIvigKbigKbigJ08YnI+PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO+KAnOS7gOS5iOKApuKApuS7gOS5iOS6i++8n+aIkeS4jeiupOivhuS9oOKApuKApuKAnemCo+S4queZveWHgOeahOW5tOi9u+S6uu+8jOeci+WIsOiOq+WwkemUi+i1sOS6hui/h+WOu++8jOS4jeeUseeahOWQjumAgOS6huS4gOatpe+8jOiOq+WwkemUi+avlOi/meWwj+WtkOmrmOWHuuS4gOS4quiEkeiii++8jOW+gOmCo+mHjOS4gOerme+8jOehruWunue7meS6uueahOWOi+WKm+S4jeWwj++8jOS5n+mavuaAquS6uuWutuWus+aAle+8jOWGjeWKoOS4iuiOq+WwkemUi+eahOWKqOS9nOWSjOivreiogO+8jOeUmuiHs+iuqei/meS4quW5tOi9u+S6uuS4i+aEj+ivhueahOaNguS6huS4gOS4i+iHgOmDqO+8jOaApeW/meivtOmBk+OAgjxicj48YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A74oCc6K6o5Y6M5ZWK77yM5L2g5oCV5LuA5LmI5Zib77yM5p2l77yM5biu5oiR5Lus5ZCI5Liq5b2x4oCm4oCm4oCd6I6r5bCR6ZSL6JmO55uu5rWB6L2s77yM5Y+R5Ye65LiA5aOw5aiH5aOw77yM5Ly45omL5omT5LqG5LiA5Liq6L+Z5Liq55m95YeA55qE5bm06L275Lq677yM5omT55qE5Lq65a625LiA5Liq6LaU6LaE44CCPGJyPjxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDvlr7nmlrnkuIDlkqflmLTvvIzkuIvmhI/or4bnmoTmjqXov4fojqvlsJHplIvmiYvph4znmoTmiYvmnLrvvIznnIvliLDojqvlsJHplIvkvLjmiYvmipPlkJHljZflrqvmraPvvIzov5nmiY3mmI7nmb3lr7nmlrnmmK/ku4DkuYjmhI/mgJ3vvIzigJzmg7PlkIjlvbHvvIzkvaDml6nor7TllYrvvIzkvaDov5nnp43liqjkvZzlkozor63msJTlpKrlkJPkurrkuobigKbigKbigJ3pgqPkuKrlubTovbvkurrlv4Pph4zlmIDlkpXkuobkuIDkuIvvvIzlv4Pph4zljbTmmK/mlL7mnb7kuIvmnaXjgII8YnI+PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO+WGheWuueacquWujO+8jOS4i+S4gOmhtee7p+e7remYheivuwoJCQkJPC9kaXY+CiAgICAgICAgICAgPHNjcmlwdCBzcmM9Ii9sb2tlZHBnZGpzL2pzZGtlb29vLmpzIj48L3NjcmlwdD4KCQkgICA8c2NyaXB0IHNyYz0iL2xva2VkcGdkanNzcy9qc2RrZW9vby5qcyI+PC9zY3JpcHQ+CgkJPGRpdiBjbGFzcz0icGFnZV9jaGFwdGVyIj4KCQkJPHVsPgoJCQkJPGxpPjxhIGhyZWY9Ii8zNS8zNTkwMC8yMzc1NTc0Mi5odG1sIiBjbGFzcz0icDEiPuS4iuS4gOeroDwvYT48L2xpPgoJCQkJPGxpPjxhIGhyZWY9IiMiIGNsYXNzPSJwMiI+5Yqg5Lmm562+PC9hPjwvbGk+CgkJCQk8bGk+PGEgaHJlZj0iLzM1LzM1OTAwLyIgY2xhc3M9InAzIj7lm57nm67lvZU8L2E+PC9saT4KCQkJCTxsaT48YSBocmVmPSIvMzUvMzU5MDAvMjM3NTU3NDNfMi5odG1sIiBjbGFzcz0icDQiPuS4i+S4gOmhtTwvYT48L2xpPgoJCQk8L3VsPgoJCTwvZGl2PgogICAgICAgICAgICAgICA8c2NyaXB0IHNyYz0iL2xva2VkcGdkanMvbGlzZW5zaXRlb28uanMiPjwvc2NyaXB0PgoJCQkgICA8c2NyaXB0IHNyYz0iL2xva2VkcGdkanNzcy9saXNlbnNpdGVvby5qcyI+PC9zY3JpcHQ+Cgk8L2Rpdj4KCTxzY3JpcHQ+XzE3bWJfYm90dG9tKCk7XzE3bWJfYWxsKCk7XzE3bWJfdG9uZ2ppKCk7PC9zY3JpcHQ+CgkKPGRpdiBjbGFzcz0ic2VhcmNoYm94Ij4NCgk8Zm9ybSBtZXRob2Q9ImdldCIgYWN0aW9uPSIvYm9vay9zZWFyY2guYXNweCI+DQoJCTxkaXYgY2xhc3M9InpiIj48L2Rpdj4NCgkJPGRpdiBpZD0iYm94Ij4NCgkJCTxwPg0KCQkJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImtleSIgdmFsdWU9IiIgY2xhc3M9InNlYXJjaGtleSIgcGxhY2Vob2xkZXI9Iuivt+i+k+WFpeaQnOe0ouWFs+mUruivjS4uIi8+DQoJCQk8L3A+DQoJCTwvZGl2Pg0KCQk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ0eXBlIiB2YWx1ZT0iYXJ0aWNsZW5hbWUiIC8+DQoJCTxpbnB1dCBpZD0iYm94MSIgdHlwZT0ic3VibWl0IiB2YWx1ZT0iIiAvPg0KCQk8ZGl2IGNsYXNzPSJ5YiI+PC9kaXY+DQoJPC9mb3JtPg0KPC9kaXY+DQo8c2NyaXB0Pl8xN21iX2JvdHRvbSgpO18xN21iX2FsbCgpO18xN21iX3RvbmdqaSgpOzwvc2NyaXB0Pg0KPGRpdiBjbGFzcz0iZm9vdGVyIj4NCgk8ZGl2IGNsYXNzPSJwMSI+DQoJCTxwIGNsYXNzPSJwMiI+DQoJCQk8YSBocmVmPSJodHRwczovL20uNXRjeHMuY29tIj7pppbpobU8L2E+DQoJCQk8YSBocmVmPSJodHRwczovL20uNXRjeHMuY29tL215Ym9vay5waHAiPuaIkeeahOS5puaetjwvYT4NCgkJCTxhIGhyZWY9Imh0dHBzOi8vbS41dGN4cy5jb20vaGlzdG9yeS5waHAiPumYheivu+WOhuWPsjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9zaXRlbWFwL3NpdGVtYXAuYXNweD9jbGFzcz1odG1sIj5tYXA8L2E+DQoJCTwvcD4NCgkJPHA+5pys56uZ5omA5pyJ5L2c5ZOB6YO95piv6L2s6L295bCP6K+077yM5aaC5pyJ5L615p2D6K+35ZGK55+l77yBPC9wPg0KCTwvZGl2Pg0KPC9kaXY+DQoNCjxzY3JpcHQ+DQooZnVuY3Rpb24oKXsNCiAgICB2YXIgYnAgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsNCiAgICB2YXIgY3VyUHJvdG9jb2wgPSB3aW5kb3cubG9jYXRpb24ucHJvdG9jb2wuc3BsaXQoJzonKVswXTsNCiAgICBpZiAoY3VyUHJvdG9jb2wgPT09ICdodHRwcycpIHsNCiAgICAgICAgYnAuc3JjID0gJ2h0dHBzOi8venouYmRzdGF0aWMuY29tL2xpbmtzdWJtaXQvcHVzaC5qcyc7DQogICAgfQ0KICAgIGVsc2Ugew0KICAgICAgICBicC5zcmMgPSAnaHR0cDovL3B1c2guemhhbnpoYW5nLmJhaWR1LmNvbS9wdXNoLmpzJzsNCiAgICB9DQogICAgdmFyIHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShicCwgcyk7DQp9KSgpOw0KPC9zY3JpcHQ+DQo8c2NyaXB0Pg0KdmFyIF9obXQgPSBfaG10IHx8IFtdOw0KKGZ1bmN0aW9uKCkgew0KICB2YXIgaG0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTsNCiAgaG0uc3JjID0gImh0dHBzOi8vaG0uYmFpZHUuY29tL2htLmpzPzJhYTI5MmNmODgwOTk0ZTE3ZmRjODBmYzg1YTI2ZDZkIjsNCiAgdmFyIHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07IA0KICBzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGhtLCBzKTsNCn0pKCk7DQo8L3NjcmlwdD4NCjxzY3JpcHQ+DQp2YXIgX2htdCA9IF9obXQgfHwgW107DQooZnVuY3Rpb24oKSB7DQogIHZhciBobSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICBobS5zcmMgPSAiaHR0cHM6Ly9obS5iYWlkdS5jb20vaG0uanM/OGY3MWY3NzRmYjI4NDVjNzUyYTY1OWEyMGRlYTQyNjllIjsNCiAgdmFyIHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07IA0KICBzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGhtLCBzKTsNCn0pKCk7DQo8L3NjcmlwdD4NCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9zNC5jbnp6LmNvbS96X3N0YXQucGhwP2lkPTEyNzkwMDgxMjYmd2ViX2lkPTEyNzkwMDgxMjYiPjwvc2NyaXB0Pg0KCQ0KPC9kaXY+CjxzY3JpcHQgc3JjPSIvbG9rZWRwZ2Rqcy96b29reml6eGZzaXRlamlzZS5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSIvbG9rZWRwZ2Rqc3NzL3pvb2t6aXp4ZnNpdGVqaXNlLmpzIj48L3NjcmlwdD4KPC9kaXY+CjwvYm9keT4KPHNjcmlwdCBzcmM9Ii90ZW1wbGF0ZS96aXNoaXlpbmcvanMveXVlZHUuanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHNyYz0iL3RlbXBsYXRlL3ppc2hpeWluZy9qcy9qcXVlcnktMS45LjEubWluLmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgdmFyIGxhc3RyZWFkPW5ldyBMYXN0UmVhZCgpO2xhc3RyZWFkLnNldCgnMzU5MDAnLCAnMjM3NTU3NDMnLCAn6YCN6YGl5YW1546L5rSb5aSpJywgJ+esrDMwOeeroOS8quijhSAoMSAvIDQpJyk7CglnZXRzZXQoKTsKCSQoZnVuY3Rpb24oKXsKCQkkKCcjc2hvd1NldCcpLmNsaWNrKGZ1bmN0aW9uKCl7CgkJCWlmKCQoJyNjaGFwdGVyU2V0Jykud2lkdGgoKSA8IDEwMCkgewoJCQkJJCgnI2NoYXB0ZXJTZXQnKS5hbmltYXRlKHsnd2lkdGgnOiAnMjM1cHgnfSwgMzAwKTsKCQkJCSQodGhpcykuaHRtbCgn5pS26LW36K6+572uJyk7CgkJCX1lbHNlewoJCQkJJCgnI2NoYXB0ZXJTZXQnKS5hbmltYXRlKHsnd2lkdGgnOiAnNjVweCd9LCAzMDApOwoJCQkJJCh0aGlzKS5odG1sKCforr7nva4nKTsKCQkJfQoJCX0pCgl9KQo8L3NjcmlwdD4KPHNjcmlwdD4KdmFyIF9obXQgPSBfaG10IHx8IFtdOwooZnVuY3Rpb24oKSB7CiAgdmFyIGhtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7CiAgaG0uc3JjID0gImh0dHBzOi8vaG0uYmFpZHUuY29tL2htLmpzPzJhYTI5MmNmODgwOTk0ZTE3ZmRjODBmYzg1YTI2ZDZkIjsKICB2YXIgcyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTsgCiAgcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShobSwgcyk7Cn0pKCk7Cjwvc2NyaXB0Pgo8c2NyaXB0Pgp2YXIgX2htdCA9IF9obXQgfHwgW107CihmdW5jdGlvbigpIHsKICB2YXIgaG0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTsKICBobS5zcmMgPSAiaHR0cHM6Ly9obS5iYWlkdS5jb20vaG0uanM/OGY3MWY3NGZiMjg0NWM3NTJhNjU5YTIwZGVhNDI2OWUiOwogIHZhciBzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpWzBdOyAKICBzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGhtLCBzKTsKfSkoKTsKPC9zY3JpcHQ+CjxzY3JpcHQ+CihmdW5jdGlvbiB5aDMwMSgpewoJdmFyIHVybF9fPXdpbmRvdy5sb2NhdGlvbi5ocmVmOwoJdXJsX189dXJsX18ucmVwbGFjZSgnaHR0cHM6Ly9tLjV0Y3hzLmNvbScsJ2h0dHA6Ly9tLm10Y3hzdy5jb20nKTsKCWxvY2F0aW9uLmhyZWY9dXJsX187Cn0pKCk7Cjwvc2NyaXB0Pgo8L2h0bWw+