PCFkb2N0eXBlIGh0bWw+CjxodG1sIGxhbmc9ImVzIj4KPGhlYWQ+CjxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCxpbml0aWFsLXNjYWxlPTEsdmlld3BvcnQtZml0PWNvdmVyLG1heGltdW0tc2NhbGU9MSI+CjxtZXRhIG5hbWU9InRoZW1lLWNvbG9yIiBjb250ZW50PSIjMGExNzI5Ij4KPG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSIgY29udGVudD0ieWVzIj4KPG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtc3RhdHVzLWJhci1zdHlsZSIgY29udGVudD0iYmxhY2stdHJhbnNsdWNlbnQiPgo8dGl0bGU+Q3VhZHJvTGFiIMK3IFNpbXVsYWRvciBkZSBjdWFkcm9zIGVsw6ljdHJpY29zPC90aXRsZT4KPHN0eWxlPgo6cm9vdHstLWJnOiNmMmY1Zjk7LS1pbms6IzE0MjQzYjstLW11dGVkOiM2YTdhOTA7LS1saW5lOiNkZmU2ZWY7LS13aGl0ZTojZmZmOy0tYmx1ZTojMjQ2OWU4Oy0tZGVlcDojMGExNzI5Oy0tYXF1YTojMjZiZGFmOy0tb3JhbmdlOiNmYWFjNTM7LS1yZWQ6I2QzNGE1NjstLXBpdGNoOjM2cHg7LS1yYWRpdXM6MThweDstLXNoYWRvdzowIDhweCAzMHB4IHJnYmEoMjksNTIsODQsLjA3KX0KKntib3gtc2l6aW5nOmJvcmRlci1ib3h9aHRtbHtiYWNrZ3JvdW5kOnZhcigtLWJnKX1ib2R5e21hcmdpbjowO2NvbG9yOnZhcigtLWluayk7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsIlNlZ29lIFVJIixJbnRlcixzeXN0ZW0tdWksc2Fucy1zZXJpZjttaW4taGVpZ2h0OjEwMHZoOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWR9YnV0dG9uLGlucHV0LHNlbGVjdHtmb250OmluaGVyaXR9YnV0dG9ue2N1cnNvcjpwb2ludGVyfWJ1dHRvbjpkaXNhYmxlZHtvcGFjaXR5Oi40O2N1cnNvcjpub3QtYWxsb3dlZH1idXR0b24saW5wdXQsc2VsZWN0e291dGxpbmUtY29sb3I6IzgyYWFmNX1he2NvbG9yOnZhcigtLWJsdWUpfWJ1dHRvbnt0b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9ufWhlYWRlcntiYWNrZ3JvdW5kOnZhcigtLWRlZXApO2NvbG9yOndoaXRlO3Bvc2l0aW9uOnN0aWNreTt0b3A6MDt6LWluZGV4OjQwO3BhZGRpbmc6bWF4KDEzcHgsZW52KHNhZmUtYXJlYS1pbnNldC10b3ApKSAxN3B4IDEzcHg7Ym94LXNoYWRvdzowIDVweCAyNHB4IHJnYmEoMCwwLDAsLjEzKX0uaGVhZHttYXgtd2lkdGg6MTQ2MHB4O21hcmdpbjphdXRvO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjExcHh9LmJyYW5kbWFya3t3aWR0aDozOXB4O2hlaWdodDozOXB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0MGRlZywjNDhiOWZmLCMyMjY1ZTUpO2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czoxM3B4O2ZvbnQtc2l6ZToyMnB4O2JveC1zaGFkb3c6MCA1cHggMTZweCAjMjY3OGRhNDQ7ZmxleC1zaHJpbms6MH0uYnJhbmQgc3Ryb25ne2Rpc3BsYXk6YmxvY2s7bGV0dGVyLXNwYWNpbmc6LS43cHg7Zm9udC1zaXplOjIwcHh9LmJyYW5kIHNtYWxse2Rpc3BsYXk6YmxvY2s7Y29sb3I6IzllYjNjZjtmb250LXNpemU6MTBweDtsZXR0ZXItc3BhY2luZzoxLjJweDtmb250LXdlaWdodDo3MDB9LmhlYWQtcmlnaHR7bWFyZ2luLWxlZnQ6YXV0bztkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo3cHh9Lmljb25idG57ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttaW4td2lkdGg6MzlweDtoZWlnaHQ6MzlweDtib3JkZXI6MXB4IHNvbGlkICNmZmZmZmYzMDtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDojZmZmZmZmMTI7Y29sb3I6d2hpdGU7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtc2l6ZToxOHB4fS5oZWFkLXN0YXR1c3tkaXNwbGF5OmZsZXg7Z2FwOjdweH0uaGVhZC1waWxse2JhY2tncm91bmQ6IzE4MzA0Yztib3JkZXI6MXB4IHNvbGlkICMyYzQ0NjM7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6OHB4IDExcHg7Y29sb3I6I2Q2ZTJmMztmb250LXNpemU6MTFweH0uaGVhZC1waWxsIGJ7Y29sb3I6I2ZmZjtmb250LXNpemU6MTVweDtkaXNwbGF5OmJsb2NrfS5hcHB7bWF4LXdpZHRoOjE0NjBweDttYXJnaW46YXV0bztwYWRkaW5nOjE4cHggMTdweCAxMTBweH0uaGVyb3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1lbmQ7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjE1cHg7bWFyZ2luOjZweCAwIDE3cHh9LmV5ZWJyb3d7Zm9udC1zaXplOjEwcHg7bGV0dGVyLXNwYWNpbmc6MS43cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2NvbG9yOnZhcigtLWJsdWUpO2ZvbnQtd2VpZ2h0Ojg1MH0uaGVybyBoMXtmb250LXNpemU6Y2xhbXAoMjNweCwzLjR2dywzNXB4KTtsZXR0ZXItc3BhY2luZzotMXB4O2xpbmUtaGVpZ2h0OjEuMTU7bWFyZ2luOjZweCAwfS5zdWJ0aXRsZXtjb2xvcjp2YXIoLS1tdXRlZCk7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MS41fS5oZXJvLXRvb2xze2Rpc3BsYXk6ZmxleDtnYXA6OHB4O2ZsZXgtd3JhcDp3cmFwO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uYnRue2JvcmRlcjoxcHggc29saWQgdmFyKC0tbGluZSk7YmFja2dyb3VuZDojZmZmO2NvbG9yOnZhcigtLWluayk7Ym9yZGVyLXJhZGl1czoxMnB4O21pbi1oZWlnaHQ6NDFweDtwYWRkaW5nOjEwcHggMTNweDtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo3NTA7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6N3B4fS5idG4ucHJpbWFyeXtiYWNrZ3JvdW5kOnZhcigtLWJsdWUpO2JvcmRlci1jb2xvcjp2YXIoLS1ibHVlKTtjb2xvcjp3aGl0ZX0uYnRuLnNvZnR7YmFja2dyb3VuZDojZWNmM2ZmO2JvcmRlci1jb2xvcjojZDdlNmZmO2NvbG9yOiMxNzU0Yjl9LmJ0bi5kYW5nZXJ7Y29sb3I6I2JiMzA0MztiYWNrZ3JvdW5kOiNmZmYxZjI7Ym9yZGVyLWNvbG9yOiNmZmRkZTJ9LmJ0bi5zbWFsbHtwYWRkaW5nOjdweCAxMHB4O21pbi1oZWlnaHQ6MzRweH0uYnRuLmZ1bGx7d2lkdGg6MTAwJX0uYnRuOmFjdGl2ZSwuaWNvbmJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45OCl9LmxheW91dHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjI2MHB4IG1pbm1heCgwLDFmcik7Z2FwOjE2cHg7YWxpZ24taXRlbXM6c3RhcnR9LnNpZGV7cG9zaXRpb246c3RpY2t5O3RvcDo5MnB4O21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDExMXB4KTtvdmVyZmxvdzphdXRvO3Njcm9sbGJhci13aWR0aDp0aGlufS5zaWRlIC5wYW5lbHtwYWRkaW5nOjEzcHh9LmNvbnRlbnR7bWluLXdpZHRoOjB9LnBhbmVse2JhY2tncm91bmQ6dmFyKC0td2hpdGUpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tbGluZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMpO3BhZGRpbmc6MTdweDtib3gtc2hhZG93OnZhcigtLXNoYWRvdyk7bWFyZ2luLWJvdHRvbToxNnB4fS5wYW5lbCBoMntmb250LXNpemU6MTdweDtsZXR0ZXItc3BhY2luZzotLjM1cHg7bWFyZ2luOjB9LnBhbmVsIGgze2ZvbnQtc2l6ZToxNHB4O2xldHRlci1zcGFjaW5nOi0uMnB4O21hcmdpbjowfS5wYW5lbC1oZWFke2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEycHg7bWFyZ2luLWJvdHRvbToxM3B4fS50aW55e2NvbG9yOnZhcigtLW11dGVkKTtmb250LXNpemU6MTFweH0uc2VjdGlvbi1sYWJlbHtmb250LXNpemU6MTBweDtsZXR0ZXItc3BhY2luZzoxLjI1cHg7Zm9udC13ZWlnaHQ6ODAwO2NvbG9yOiM3Mzg2YTA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO21hcmdpbjoxNnB4IDAgOXB4fS5zdGF0c3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg0LG1pbm1heCgwLDFmcikpO2dhcDoxMHB4O21hcmdpbi1ib3R0b206MTVweH0uc3RhdHtwYWRkaW5nOjEycHggMTNweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWxpbmUpO2JhY2tncm91bmQ6I2ZmZjtib3JkZXItcmFkaXVzOjE1cHg7bWluLXdpZHRoOjB9LnN0YXQgc21hbGx7ZGlzcGxheTpibG9jaztjb2xvcjp2YXIoLS1tdXRlZCk7Zm9udC1zaXplOjEwcHg7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbi1ib3R0b206NXB4fS5zdGF0IHN0cm9uZ3tmb250LXNpemU6MjNweDtsZXR0ZXItc3BhY2luZzotLjhweDtsaW5lLWhlaWdodDoxLjF9LnN0YXQgc3Ryb25nIGVte2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjYwMDtmb250LXN0eWxlOm5vcm1hbDtjb2xvcjp2YXIoLS1tdXRlZCk7bWFyZ2luLWxlZnQ6M3B4fS5zdGF0IC5zdGF0dXNtaW5pe2Rpc3BsYXk6YmxvY2s7Y29sb3I6dmFyKC0tbXV0ZWQpO2ZvbnQtc2l6ZToxMHB4O21hcmdpbi10b3A6NXB4fS5zdGF0IC5nb29ke2NvbG9yOiMwYjliODF9LnN0YXQgLndhcm57Y29sb3I6I2RiOGQyZX0ucHJvZ3Jlc3N7aGVpZ2h0OjZweDtiYWNrZ3JvdW5kOiNlN2VlZjY7Ym9yZGVyLXJhZGl1czoxMHB4O292ZXJmbG93OmhpZGRlbjttYXJnaW4tdG9wOjhweH0ucHJvZ3Jlc3M+c3BhbntkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCMzNGJkYjIsIzNkODRlOSk7Ym9yZGVyLXJhZGl1czoxMHB4fS5yYWlsLXRvcHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7ZmxleC13cmFwOndyYXA7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47bWFyZ2luLWJvdHRvbToxNnB4fS5yYWlsLXRhZ3N7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo2cHh9LnRhZ3tib3JkZXI6MXB4IHNvbGlkICNkYmU1ZjA7YmFja2dyb3VuZDojZjVmOGZjO2JvcmRlci1yYWRpdXM6OTk5cHg7Y29sb3I6IzU2NzA4YTtmb250LXNpemU6MTBweDtmb250LXdlaWdodDo3NTA7cGFkZGluZzo2cHggOXB4fS50YWcuZ3JlZW57YmFja2dyb3VuZDojZTdmOGYyO2JvcmRlci1jb2xvcjojYjdlOGRhO2NvbG9yOiMxMTc5NWR9LnRhZy5vcmFuZ2V7YmFja2dyb3VuZDojZmZmNWU2O2JvcmRlci1jb2xvcjojZmZlMGFiO2NvbG9yOiM5ZTZiMTV9LmJvYXJkLXNoZWxse2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZDllMGU5LCNlZWYyZjcgMTIlLCNlMWU3ZWUpO2JvcmRlcjoxcHggc29saWQgI2M5ZDJkZTtib3JkZXItcmFkaXVzOjIwcHg7cGFkZGluZzoxNHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2JveC1zaGFkb3c6aW5zZXQgMCAzcHggN3B4ICM5YWE5YmMzM30uYm9hcmQtaW5uZXJ7Ym9yZGVyOjJweCBzb2xpZCAjYTdiNGMzO2JhY2tncm91bmQ6I2Q1ZGVlODtib3JkZXItcmFkaXVzOjEzcHg7cGFkZGluZzoxMnB4IDlweDtib3gtc2hhZG93Omluc2V0IDAgMXB4IDEycHggIzk4YTViODRhfS5yYWNrLW91dGVye2JhY2tncm91bmQ6I2Q2ZGRlNjtib3JkZXI6MXB4IHNvbGlkICNhZWJhY2E7Ym9yZGVyLXJhZGl1czo5cHg7cGFkZGluZzo2cHggMCAxMHB4O21hcmdpbi1ib3R0b206MTJweH0ucmFj
ay1vdXRlcjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0ucmFjay1oZHtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzozcHggOXB4IDhweDtjb2xvcjojNTM2NzdiO2ZvbnQtc2l6ZToxMHB4O2ZvbnQtd2VpZ2h0Ojc1MDtsZXR0ZXItc3BhY2luZzouMjVweH0ucmFjay1zY3JvbGx7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVuO3Njcm9sbGJhci13aWR0aDp0aGluOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO3BhZGRpbmc6MCAzcHggOHB4fS5yYWNrLXRyYWNre3dpZHRoOmNhbGModmFyKC0tY29scykqdmFyKC0tcGl0Y2gpKTtoZWlnaHQ6MTI1cHg7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpmbGV4O2lzb2xhdGlvbjppc29sYXRlO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwjYmVjOGQ0IDAgNCUsI2RiZTNlYiA1JSAyNCUsI2I1YzBjZSAyNSUgMzElLCM5MDllYWMgMzIlIDQwJSwjYTliN2M2IDQxJSA1MSUsIzg3OTdhNyA1MiUgNTglLCNkNmRlZTcgNjAlIDgwJSwjYTZiM2MzIDgxJSAxMDAlKTtib3JkZXItcmFkaXVzOjNweDtib3JkZXI6MXB4IHNvbGlkICNhN2IyYzE7Ym94LXNoYWRvdzppbnNldCAwIDJweCA1cHggIzU4NjY3ODQwfS5yYWNrLXRyYWNrOmJlZm9yZXtjb250ZW50OiIiO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4OjA7YmFja2dyb3VuZDpyZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDkwZGVnLHRyYW5zcGFyZW50IDAsdHJhbnNwYXJlbnQgY2FsYyh2YXIoLS1waXRjaCkgLSAxcHgpLCM2NTc3ODkzOCBjYWxjKHZhcigtLXBpdGNoKSAtIDFweCksIzY1Nzc4OTM4IHZhcigtLXBpdGNoKSl9LnNsb3QtbnVte3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToycHg7Zm9udC1zaXplOjdweDtjb2xvcjojNWY2Yjc5O3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoM3B4KTt6LWluZGV4OjF9LmRldmljZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6M3B4O2hlaWdodDoxMTZweDt6LWluZGV4OjI7Ym9yZGVyLXJhZGl1czo0cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2U3ZWNmMiwjZmZmIDE2JSwjZjhmYWZjIDc1JSwjZDVkZmU5KTtib3gtc2hhZG93OjJweCAzcHggNHB4ICM2NDczODY4MywwIDAgMCAxcHggI2E4YjNjMDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtvdmVyZmxvdzpoaWRkZW47dG91Y2gtYWN0aW9uOm5vbmU7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7Y3Vyc29yOmdyYWI7cGFkZGluZzowIDFweH0uZGV2aWNlOmFjdGl2ZXtjdXJzb3I6Z3JhYmJpbmd9LmRldmljZS5zZWxlY3RlZHtvdXRsaW5lOjNweCBzb2xpZCAjMzQ3ZWZiO291dGxpbmUtb2Zmc2V0OjJweDt6LWluZGV4OjR9LmRldmljZS5kcmFnLW9yaWdpbntvcGFjaXR5Oi4yMH0uZGV2aWNlIC5kLWxpbmV7aGVpZ2h0OjZweDtiYWNrZ3JvdW5kOnZhcigtLXRvbmUpO3dpZHRoOjEwMCU7bWFyZ2luOjAgMCA0cHh9LmQtYnJhbmR7Zm9udC13ZWlnaHQ6OTAwO2ZvbnQtc2l6ZTo3cHg7bGV0dGVyLXNwYWNpbmc6LS4xNXB4O2NvbG9yOiM3MjgxOTY7bWFyZ2luOjAgMCAzcHg7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5kLWNvZGV7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6OTAwO2xpbmUtaGVpZ2h0OjEuMTtjb2xvcjojMjUzOTRjO21heC13aWR0aDo5NSU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcH0uZC1yYXRpbmd7Zm9udC1zaXplOjhweDtmb250LXdlaWdodDo3NTA7Y29sb3I6IzU1NzA4NzttYXJnaW46NHB4IDAgM3B4fS5kLXN3aXRjaHt3aWR0aDo1MSU7bWluLXdpZHRoOjEycHg7bWF4LXdpZHRoOjMxcHg7aGVpZ2h0OjMwcHg7Ym9yZGVyLXJhZGl1czozcHg7Ym9yZGVyOjFweCBzb2xpZCAjOWRhYWJjO2JhY2tncm91bmQ6I2RhZTFlNztib3gtc2hhZG93Omluc2V0IDAgM3B4IDRweCAjNjA3NThhMjk7ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjtmbGV4LXNocmluazowO21hcmdpbjphdXRvIDAgNHB4O2N1cnNvcjpwb2ludGVyO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb247cGFkZGluZzowfS5kLXN3aXRjaCBzcGFue2hlaWdodDoxNXB4O3dpZHRoOjc1JTtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgjNjA3Mjg2LCM0MjU2NmIpO2JveC1zaGFkb3c6MCAxcHggMXB4ICMwMDA2O3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xMnN9LmQtc3dpdGNoLm9uIHNwYW57dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoIzJiOWM4MiwjMWM3MDVkKX0uZC1zd2l0Y2gub2ZmIHNwYW57dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNXB4KX0uZC1sYWJlbHtmb250LXNpemU6N3B4O2ZvbnQtd2VpZ2h0OjkwMDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bGV0dGVyLXNwYWNpbmc6LjFweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6MTAwJTt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW46MCAwIDVweH0uZGV2aWNlLm5hcnJvdyAuZC1icmFuZCwuZGV2aWNlLm5hcnJvdyAuZC1yYXRpbmd7Zm9udC1zaXplOjZweH0uZGV2aWNlLm5hcnJvdyAuZC1jb2Rle2ZvbnQtc2l6ZTo5cHh9LmRldmljZS5uYXJyb3cgLmQtbGFiZWx7Zm9udC1zaXplOjZweDt3cml0aW5nLW1vZGU6dmVydGljYWwtcmw7dGV4dC1vcmllbnRhdGlvbjptaXhlZDt3aGl0ZS1zcGFjZTpub3dyYXA7bWF4LWhlaWdodDoyOXB4O21heC13aWR0aDoxMDAlfS5kZXZpY2UubmFycm93IC5kLXN3aXRjaHttYXJnaW46YXV0byAwIDRweH0uZHJvcC1zcG90e3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxcHg7aGVpZ2h0OjEyMnB4O3otaW5kZXg6ODtib3JkZXItcmFkaXVzOjVweDtiYWNrZ3JvdW5kOiMyOGIzOGYzMztib3JkZXI6MnB4IGRhc2hlZCAjMjRhMDdkO3BvaW50ZXItZXZlbnRzOm5vbmV9LmRyb3Atc3BvdC5pbnZhbGlke2JhY2tncm91bmQ6I2UzNGI0YjMyO2JvcmRlci1jb2xvcjojZGQ0ZTVifS5kcmFnLWdob3N0e3Bvc2l0aW9uOmZpeGVkO3BvaW50ZXItZXZlbnRzOm5vbmU7ei1pbmRleDoxMjA7b3BhY2l0eTouOTI7dHJhbnNmb3JtOnJvdGF0ZSgtMmRlZyk7Ym94LXNoYWRvdzowIDE1cHggMjZweCAjMTAyZDU1ODAhaW1wb3J0YW50fS5ib2FyZC1mb290ZXJ7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2ZsZXgtd3JhcDp3cmFwO21hcmdpbi10b3A6MTNweH0uYm9hcmQtZm9vdGVyIC50aW55e21heC13aWR0aDo1MzBweH0uYm9hcmQtdG9vbHN7ZGlzcGxheTpmbGV4O2dhcDo2cHg7ZmxleC13cmFwOndyYXB9LmhpbnR7cGFkZGluZzoxMXB4IDEzcHg7Ym9yZGVyOjFweCBzb2xpZCAjZDllOWZjO2JvcmRlci1yYWRpdXM6MTNweDtiYWNrZ3JvdW5kOiNmMWY3ZmY7ZGlzcGxheTpmbGV4O2dhcDoxMHB4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Y29sb3I6IzQ4NjQ4MDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxLjU7bWFyZ2luLXRvcDoxM3B4fS5oaW50IGJ7Y29sb3I6IzE5NGY5ZH0uY2F0YWxvZy1ncm91cHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6OHB4fS5jYXRhbG9nLXRpbGV7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1saW5lKTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLXJhZGl1czoxM3B4O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmxlZnQ7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo5cHg7cGFkZGluZzo5cHg7bWluLWhlaWdodDo2MHB4O2NvbG9yOmluaGVyaXQ7bWluLXdpZHRoOjA7dG91Y2gtYWN0aW9uOm1hbmlwdWxhdGlvbn0uY2F0YWxvZy10aWxlOmFjdGl2ZXtiYWNrZ3JvdW5kOiNlY2Y1ZmZ9LnRpbGUtaWNvbnt3aWR0aDozOHB4O2hlaWdodDozOXB4O2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLXRvbmUpIDEyJSx3aGl0ZSk7Ym9yZGVyOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS10b25lKSAyMiUsd2hpdGUpO2NvbG9yOnZhcigtLXRvbmUpO2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7Zm9udC13ZWlnaHQ6OTAwO2ZvbnQtc2l6ZToxMXB4O2ZsZXgtc2hyaW5rOjB9LnRpbGUtaW5mb3ttaW4td2lkdGg6MDtmbGV4OjF9LnRpbGUtaW5mbyBzdHJvbmd7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTJweDtjb2xvcjojMjIzNzRlfS50aWxlLWluZm8gc21hbGx7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTBweDtjb2xvcjp2YXIoLS1tdXRlZCk7bWFyZ2luLXRvcDo0cHg7bGluZS1oZWlnaHQ6MS4zfS50aWxlLXBsdXN7Ym9yZGVyLXJhZGl1czo5cHg7YmFja2dyb3VuZDojZjBmNWZmO2NvbG9yOiMyOTZhZGE7Zm9udC1zaXplOjIwcHg7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO2ZsZXgtc2hyaW5rOjB9LnR3by1jb2x7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKTtnYXA6MTBweH0uZGlhZ3JhbXtwYWRkaW5nOjE4cHggMTFweDtiYWNrZ3JvdW5kOiNmOGZiZmY7Ym9yZGVyOjFweCBkYXNoZWQgI2JkY2JkZDtib3JkZXItcmFkaXVzOjE2cHg7b3ZlcmZsb3cteDphdXRvfS5jaGFpbi1tYWlue2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjlweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXgtd3JhcDp3cmFwfS5zY2hlbWUtbm9kZXtib3JkZXI6MXB4IHNvbGlkICNhOWJkZDI7YmFja2dyb3VuZDp3aGl0ZTtib3JkZXItcmFkaXVzOjExcHg7cGFkZGluZzoxMXB4O21pbi13aWR0aDo4MnB4O3RleHQtYWxpZ246Y2VudGVyfS5zY2hlbWUtbm9kZSBie2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOjEycHh9LnNjaGVtZS1ub2RlIHNtYWxse2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOjEwcHg7Y29sb3I6IzZjODE5NDttYXJnaW4tdG9wOjRweH0uc2NoZW1lLWFycm93e2NvbG9yOiM3Yzk0YWI7Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6ODAwfS5ncm91cC1saXN0e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KGF1dG8tZml0LG1pbm1heCgyMzBweCwxZnIpKTtnYXA6MTFweDttYXJnaW4tdG9wOjE4cHh9LnItZ3JvdXB7YmFja2dyb3VuZDp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkICNkNWUwZWI7Ym9yZGVyLXJhZGl1czoxM3B4O292ZXJmbG93OmhpZGRlbn0uci1ncm91cC1oZWFke2JhY2tncm91bmQ6I2VhZjFmYTtwYWRkaW5nOjEycHg7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDo3cHg7YWxpZ24taXRlbXM6Y2VudGVyO2ZvbnQtc2l6ZToxM3B4
O2ZvbnQtd2VpZ2h0OjgwMH0uci1ncm91cC1ib2R5e3BhZGRpbmc6MTBweDtib3JkZXItbGVmdDozcHggc29saWQgIzZmOGRhNTttYXJnaW46MTFweCAxM3B4IDE0cHh9LmJyYW5jaHtkaXNwbGF5OmZsZXg7Z2FwOjEwcHg7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlNWViZjM7cGFkZGluZzo5cHggMDtwb3NpdGlvbjpyZWxhdGl2ZTtmb250LXNpemU6MTJweH0uYnJhbmNoOmJlZm9yZXtjb250ZW50OiIiO3dpZHRoOjE3cHg7Ym9yZGVyLXRvcDoycHggc29saWQgI2EzYjVjODtmbGV4LXNocmluazowfS5icmFuY2g6bGFzdC1jaGlsZHtib3JkZXI6MH0uYnJhbmNoIGJ7Zm9udC1zaXplOjEycHh9LmJyYW5jaCBzbWFsbHtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxMHB4O2NvbG9yOiM3OTg4OWI7bWFyZ2luLXRvcDozcHh9LnRlc3Qtcm93e2Rpc3BsYXk6ZmxleDtnYXA6MTFweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTllZmY1O3BhZGRpbmc6MTNweCAwO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LnRlc3Qtcm93Omxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbTowfS50ZXN0LWljb3t3aWR0aDoyOXB4O2hlaWdodDoyOXB4O2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo5cHg7ZmxleC1zaHJpbms6MDtmb250LXNpemU6MTVweH0udGVzdC1pY28ub2t7YmFja2dyb3VuZDojZTBmNWVkO2NvbG9yOiMwNzg0NjF9LnRlc3QtaWNvLndhcm57YmFja2dyb3VuZDojZmZmMWQ4O2NvbG9yOiNiNjc3MTF9LnRlc3QtaWNvLmVycm9ye2JhY2tncm91bmQ6I2ZmZWFlYztjb2xvcjojYzU0MTRkfS50ZXN0LXJvdyBzdHJvbmd7Zm9udC1zaXplOjEycHg7ZGlzcGxheTpibG9jazttYXJnaW4tYm90dG9tOjNweH0udGVzdC1yb3cgcHtmb250LXNpemU6MTFweDtjb2xvcjojNmE3ZDkxO2xpbmUtaGVpZ2h0OjEuNDg7bWFyZ2luOjB9LnRhYmxlLXdyYXB7b3ZlcmZsb3c6YXV0b30uZGF0YS10YWJsZXt3aWR0aDoxMDAlO2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtmb250LXNpemU6MTJweDttaW4td2lkdGg6NDgwcHh9LmRhdGEtdGFibGUgdGh7dGV4dC1hbGlnbjpsZWZ0O2ZvbnQtc2l6ZToxMHB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtsZXR0ZXItc3BhY2luZzouOHB4O2NvbG9yOiM3MDgwOTY7cGFkZGluZzoxMXB4O2JhY2tncm91bmQ6I2YyZjZmYjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZGNlNWYwO3doaXRlLXNwYWNlOm5vd3JhcH0uZGF0YS10YWJsZSB0ZHtwYWRkaW5nOjExcHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U3ZWRmNTt2ZXJ0aWNhbC1hbGlnbjp0b3B9LmRhdGEtdGFibGUgdHI6bGFzdC1jaGlsZCB0ZHtib3JkZXI6MH0uZGF0YS10YWJsZSB0ZCBzbWFsbHtkaXNwbGF5OmJsb2NrO2NvbG9yOiM4MzkxYTE7bWFyZ2luLXRvcDozcHh9LmtwaS13YXJue2JhY2tncm91bmQ6I2ZmZjRlMjtib3JkZXI6MXB4IHNvbGlkICNmZWUyYWY7Ym9yZGVyLXJhZGl1czoxM3B4O2NvbG9yOiM5YTY0MTk7cGFkZGluZzoxMnB4O2ZvbnQtc2l6ZToxMXB4O2xpbmUtaGVpZ2h0OjEuNn0ucGlsbHtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZToxMHB4O3BhZGRpbmc6NHB4IDhweDtmb250LXdlaWdodDo4NTA7YmFja2dyb3VuZDojZWFmMGY5O2NvbG9yOiM0MzYxODQ7d2hpdGUtc3BhY2U6bm93cmFwfS5waWxsLnJlZHtiYWNrZ3JvdW5kOiNmZmViZWQ7Y29sb3I6I2JjMzY0YX0ucGlsbC5ncmVlbntiYWNrZ3JvdW5kOiNlMmY3ZWQ7Y29sb3I6IzEzODM1ZX0ucGlsbC5nb2xke2JhY2tncm91bmQ6I2ZmZjFkODtjb2xvcjojYTE2YzE4fS5maWVsZHN7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKTtnYXA6MTFweH0uZmllbGR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NXB4O21pbi13aWR0aDowfS5maWVsZC53aWRle2dyaWQtY29sdW1uOjEvLTF9LmZpZWxkIGxhYmVse2ZvbnQtc2l6ZToxMHB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtmb250LXdlaWdodDo4MDA7Y29sb3I6IzdhOGE5YztsZXR0ZXItc3BhY2luZzouNXB4fS5maWVsZCBpbnB1dCwuZmllbGQgc2VsZWN0e3dpZHRoOjEwMCU7aGVpZ2h0OjQxcHg7Ym9yZGVyOjFweCBzb2xpZCAjZDRlMGVjO2JhY2tncm91bmQ6I2Y5ZmJmZjtib3JkZXItcmFkaXVzOjExcHg7cGFkZGluZzo4cHggMTBweDtjb2xvcjojMjUzYjUzO21pbi13aWR0aDowO2ZvbnQtc2l6ZToxNHB4fS5maWVsZCBpbnB1dDpmb2N1cywuZmllbGQgc2VsZWN0OmZvY3Vze2JvcmRlci1jb2xvcjojNDM4MmYzO2JhY2tncm91bmQ6d2hpdGV9LnNoZWV0LXdyYXB7ZGlzcGxheTpub25lO3Bvc2l0aW9uOmZpeGVkO2luc2V0OjA7ei1pbmRleDoxMDA7YmFja2dyb3VuZDojMDkxNTI3OWM7YWxpZ24taXRlbXM6ZmxleC1lbmQ7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uc2hlZXQtd3JhcC5hY3RpdmV7ZGlzcGxheTpmbGV4fS5zaGVldHtiYWNrZ3JvdW5kOndoaXRlO2JvcmRlci1yYWRpdXM6MjRweCAyNHB4IDAgMDtwYWRkaW5nOjIwcHggMThweCBjYWxjKDI0cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjYwMHB4O21heC1oZWlnaHQ6ODZkdmg7b3ZlcmZsb3c6YXV0bztib3gtc2hhZG93OjAgLTE4cHggNTBweCAjMDAwMn0uc2hlZXQtZ3JhYnt3aWR0aDozNXB4O2hlaWdodDo1cHg7YmFja2dyb3VuZDojZDhlMWVjO2JvcmRlci1yYWRpdXM6MTAwcHg7bWFyZ2luOi01cHggYXV0byAxNXB4fS5zaGVldC10b3B7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTBweDttYXJnaW4tYm90dG9tOjE4cHh9LnNoZWV0LXRvcCBoMnttYXJnaW46MDtmb250LXNpemU6MTlweDtsZXR0ZXItc3BhY2luZzotLjRweH0uc2hlZXQtY2xvc2V7Ym9yZGVyOjA7YmFja2dyb3VuZDojZWVmM2Y4O3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7Ym9yZGVyLXJhZGl1czo5cHg7Y29sb3I6IzU0Njc3Yztmb250LXNpemU6MTlweH0uc2hlZXQtYnV0dG9uc3tkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7Z2FwOjdweDttYXJnaW4tdG9wOjE5cHh9LnNoZWV0LWJ1dHRvbnMgLmJ0bntmbGV4OjF9LmNvbG9yLWxpbmV7d2lkdGg6MzhweDtoZWlnaHQ6NXB4O2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOnZhcigtLXRvbmUpfS5uYXZ7ZGlzcGxheTpub25lfS5kZXNrdG9wLW9ubHl7fS5tb2JpbGUtb25seXtkaXNwbGF5Om5vbmV9LmVtcHR5e2JvcmRlcjoxcHggZGFzaGVkICNkNmUxZWM7Ym9yZGVyLXJhZGl1czoxNHB4O2NvbG9yOiM4MDkwYTM7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzoyNXB4O2ZvbnQtc2l6ZToxMnB4fS5zdWJub3Rle2ZvbnQtc2l6ZToxMXB4O2NvbG9yOiM3ODg5OWE7bGluZS1oZWlnaHQ6MS42O21hcmdpbi10b3A6MTJweH0uc3BsYXNoLWNoaXB7YmFja2dyb3VuZDojZTNmNGYwO2NvbG9yOiMwYjg0NmM7Ym9yZGVyLXJhZGl1czo4cHg7Zm9udC1zaXplOjEwcHg7Zm9udC13ZWlnaHQ6OTAwO3BhZGRpbmc6NXB4IDdweDtkaXNwbGF5OmlubGluZS1ibG9ja30ubWV0ZXJsaW5le3dpZHRoOjEwMCU7aGVpZ2h0OjlweDtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojZTVlYWYxO292ZXJmbG93OmhpZGRlbn0ubWV0ZXJsaW5lPnNwYW57aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9jaztiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjMjhiODljLCM0Mzg1ZWQpfS5mb290ZXJ7Zm9udC1zaXplOjExcHg7Y29sb3I6Izg0OTNhNTtsaW5lLWhlaWdodDoxLjY7bWFyZ2luOjE1cHggM3B4fS50b2FzdHtwb3NpdGlvbjpmaXhlZDtib3R0b206MjdweDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDM1cHgpO3otaW5kZXg6MTUwO2JhY2tncm91bmQ6IzEwMWYzMjtjb2xvcjp3aGl0ZTtwYWRkaW5nOjEycHggMTZweDtib3JkZXItcmFkaXVzOjEycHg7Ym94LXNoYWRvdzowIDEycHggNDBweCAjMDAwMztmb250LXNpemU6MTJweDtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOi4yNXM7bWF4LXdpZHRoOmNhbGMoMTAwdncgLSAzMnB4KTt0ZXh0LWFsaWduOmNlbnRlcn0udG9hc3Quc2hvd3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgwKX0udGFiLXBhbmVse2Rpc3BsYXk6bm9uZX0udGFiLXBhbmVsLmFjdGl2ZXtkaXNwbGF5OmJsb2NrfS5zZWN0aW9uLW5hdntkaXNwbGF5OmZsZXg7Z2FwOjZweDtvdmVyZmxvdzphdXRvO21hcmdpbjowIDAgMTNweDtzY3JvbGxiYXItd2lkdGg6bm9uZX0uc2VjdGlvbi1uYXYgYnV0dG9ue2JvcmRlcjoxcHggc29saWQgI2RjZTZmMDtib3JkZXItcmFkaXVzOjMwcHg7cGFkZGluZzo4cHggMTNweDtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6IzcxODI5YTt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NzUwfS5zZWN0aW9uLW5hdiBidXR0b24uYWN0aXZle2JhY2tncm91bmQ6IzE3NGI5Njtib3JkZXItY29sb3I6IzE3NGI5Njtjb2xvcjp3aGl0ZX0uc3RhdHJvd3tkaXNwbGF5OmZsZXg7Z2FwOjhweDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47ZmxleC13cmFwOndyYXA7bWFyZ2luOjE1cHggMH0ubm90ZS1yb3d7YmFja2dyb3VuZDojZjhmYWZjO2JvcmRlci1yYWRpdXM6MTJweDtwYWRkaW5nOjEwcHggMTJweDtmb250LXNpemU6MTFweDtjb2xvcjojNjI3OTkyO2xpbmUtaGVpZ2h0OjEuNTttYXJnaW4tdG9wOjlweH0uY2lyY3VpdC1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjEycHg7Ym9yZGVyOjFweCBzb2xpZCAjZTFlOGYwO2JvcmRlci1yYWRpdXM6MTNweDtiYWNrZ3JvdW5kOndoaXRlO21hcmdpbi1ib3R0b206OHB4fS5jaXJjdWl0LXJvdyAuaWR4e3dpZHRoOjQzcHg7aGVpZ2h0OjQxcHg7YmFja2dyb3VuZDojZjBmNWZmO2NvbG9yOiMyNDY4ZDk7Ym9yZGVyLXJhZGl1czoxMXB4O2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7Zm9udC13ZWlnaHQ6OTAwO2ZvbnQtc2l6ZToxMnB4O2ZsZXgtc2hyaW5rOjB9LmNpcmN1aXQtcm93IC5jaS1ib2R5e2ZsZXg6MTttaW4td2lkdGg6MH0uY2lyY3VpdC1yb3cgc3Ryb25ne2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOjEycHh9LmNpcmN1aXQtcm93IHNtYWxse2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOjEwcHg7Y29sb3I6dmFyKC0tbXV0ZWQpO21hcmdpbi10b3A6NHB4fS5jaXJjdWl0LXJvdyBidXR0b257Ym9yZGVyOjA7YmFja2dyb3VuZDojZTlmMmZmO2NvbG9yOiMyNDZiZGM7Ym9yZGVyLXJhZGl1czo5cHg7cGFkZGluZzo4cHggMTFweDtmb250LXdlaWdodDo5MDA7Zm9udC1zaXplOjE3cHh9LnNjaGVtZS1rcGlze2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6N3B4O21hcmdpbi1ib3R0b206MTJweH0uc2NoZW1lLWtwaXMgLnRhZ3tmb250LXNpemU6MTFweH0uY2ly
Y3VpdC1tZXRlcntoZWlnaHQ6NXB4O2JhY2tncm91bmQ6I2VlZjFmNTtib3JkZXItcmFkaXVzOjEwcHg7bWFyZ2luLXRvcDo3cHg7b3ZlcmZsb3c6aGlkZGVufS5jaXJjdWl0LW1ldGVyIHNwYW57ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kOiM0Nzk0ZTg7Ym9yZGVyLXJhZGl1czoxMHB4fS5zd2l0Y2gtdG9we2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweH0ub24tbWFya3tib3JkZXI6MXB4IHNvbGlkICNjNWU1ZDg7YmFja2dyb3VuZDojZTdmOGYxO2NvbG9yOiMxNTg2NmE7Zm9udC1zaXplOjEwcHg7Zm9udC13ZWlnaHQ6ODAwO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjVweCA4cHh9Lm9mZi1tYXJre2JvcmRlcjoxcHggc29saWQgI2YwY2VjYTtiYWNrZ3JvdW5kOiNmZmYwZjA7Y29sb3I6I2JiNDg1NDtmb250LXNpemU6MTBweDtmb250LXdlaWdodDo4MDA7Ym9yZGVyLXJhZGl1czoxMHB4O3BhZGRpbmc6NXB4IDhweH0KQG1lZGlhKG1heC13aWR0aDo5NTBweCl7LmxheW91dHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfS5zaWRle2Rpc3BsYXk6bm9uZX0uYXBwe21heC13aWR0aDo3NjBweH0uZGVza3RvcC1vbmx5e2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9Lm1vYmlsZS1vbmx5e2Rpc3BsYXk6aW5pdGlhbH0ubmF2e2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpmaXhlZDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDt6LWluZGV4OjQ1O2JhY2tncm91bmQ6I2ZmZjtib3JkZXItdG9wOjFweCBzb2xpZCAjZGNlNWVmO3BhZGRpbmc6NnB4IDdweCBjYWxjKDdweCArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7Ym94LXNoYWRvdzowIC0zcHggMjJweCAjMGIyNDQ5MTg7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDtnYXA6MnB4fS5uYXYgYnV0dG9ue2JhY2tncm91bmQ6bm9uZTtib3JkZXI6MDtib3JkZXItcmFkaXVzOjExcHg7Y29sb3I6Izg1OTVhODtwYWRkaW5nOjhweCAzcHggNnB4O21pbi13aWR0aDowO2ZsZXg6MTtmb250LXdlaWdodDo3NTA7Zm9udC1zaXplOjEwcHh9Lm5hdiBidXR0b24uYWN0aXZle2JhY2tncm91bmQ6I2VhZjJmZjtjb2xvcjojMjI2OWUzfS5uYXYgLm52aWNvbntkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToyMXB4O2xpbmUtaGVpZ2h0OjIxcHg7bWFyZ2luLWJvdHRvbTo0cHh9LmFwcHtwYWRkaW5nLWJvdHRvbTpjYWxjKDkwcHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpfS5oZXJve21hcmdpbi10b3A6MH0uaGVhZC1waWxsOmxhc3QtY2hpbGR7ZGlzcGxheTpub25lfX0KQG1lZGlhKG1heC13aWR0aDo1MDBweCl7OnJvb3R7LS1waXRjaDoyNXB4fS5hcHB7cGFkZGluZzoxM3B4IDExcHggY2FsYyg5NXB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKX0uYnJhbmQgc3Ryb25ne2ZvbnQtc2l6ZToxN3B4fS5icmFuZG1hcmt7aGVpZ2h0OjM0cHg7d2lkdGg6MzRweDtmb250LXNpemU6MThweH0uaGVhZC1waWxse3BhZGRpbmc6NnB4IDhweH0uaGVhZC1waWxsIGJ7Zm9udC1zaXplOjEzcHh9LmhlYWQtcGlsbDpsYXN0LWNoaWxke2Rpc3BsYXk6bm9uZX0uaGVybyBoMXtmb250LXNpemU6MjRweH0uc3VidGl0bGV7Zm9udC1zaXplOjExcHh9Lmhlcm8tdG9vbHN7d2lkdGg6MTAwJTtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0uaGVyb3tmbGV4LXdyYXA6d3JhcDtnYXA6OXB4fS5wYW5lbHtwYWRkaW5nOjEzcHg7Ym9yZGVyLXJhZGl1czoxNXB4fS5zdGF0c3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDIsbWlubWF4KDAsMWZyKSk7Z2FwOjhweH0uc3RhdHtwYWRkaW5nOjEwcHh9LnN0YXQgc3Ryb25ne2ZvbnQtc2l6ZToyMnB4fS5ib2FyZC1zaGVsbHtwYWRkaW5nOjhweDtib3JkZXItcmFkaXVzOjE0cHh9LmJvYXJkLWlubmVye3BhZGRpbmc6OHB4IDRweH0ucmFjay10cmFja3toZWlnaHQ6MTIycHh9LnJhY2stb3V0ZXJ7bWFyZ2luLWJvdHRvbTo5cHh9LmRldmljZXtoZWlnaHQ6MTEzcHh9LnJhaWwtdG9we2dhcDo3cHh9LmJ0bnttaW4taGVpZ2h0OjM4cHg7Zm9udC1zaXplOjExcHh9LnR3by1jb2x7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcn0uaGVhZHtnYXA6OHB4fWhlYWRlcntwYWRkaW5nLWxlZnQ6MTJweDtwYWRkaW5nLXJpZ2h0OjEycHh9LnNlY3Rpb24tbGFiZWx7bWFyZ2luOjE0cHggMCA4cHh9LmNhdGFsb2ctZ3JvdXB7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnJ9LmNhdGFsb2ctdGlsZXtwYWRkaW5nOjdweDtnYXA6NnB4O21pbi1oZWlnaHQ6NjVweH0udGlsZS1pY29ue3dpZHRoOjMwcHg7aGVpZ2h0OjM2cHg7Zm9udC1zaXplOjlweH0udGlsZS1pbmZvIHN0cm9uZ3tmb250LXNpemU6MTBweH0udGlsZS1pbmZvIHNtYWxse2ZvbnQtc2l6ZTo5cHh9LnRpbGUtcGx1c3tkaXNwbGF5Om5vbmV9LnBhbmVsLWhlYWR7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uZGF0YS10YWJsZXtmb250LXNpemU6MTFweH19CkBtZWRpYSBwcmludHtoZWFkZXIsLm5hdiwuaGVyby10b29scywuc2lkZSwuYm9hcmQtdG9vbHMsLnNoZWV0LXdyYXAsLmJ0biwudG9hc3QsLmhpZGUtcHJpbnQsLnNlY3Rpb24tbmF2e2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmFwcHtwYWRkaW5nOjB9LnRhYi1wYW5lbHtkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0ucGFuZWx7Ym94LXNoYWRvdzpub25lO2JyZWFrLWluc2lkZTphdm9pZDtib3JkZXI6MXB4IHNvbGlkICNhZWJjY2N9LmxheW91dHtkaXNwbGF5OmJsb2NrfS5ib2FyZC1zaGVsbHtwcmludC1jb2xvci1hZGp1c3Q6ZXhhY3Q7LXdlYmtpdC1wcmludC1jb2xvci1hZGp1c3Q6ZXhhY3R9LmRldmljZXtwcmludC1jb2xvci1hZGp1c3Q6ZXhhY3Q7LXdlYmtpdC1wcmludC1jb2xvci1hZGp1c3Q6ZXhhY3R9Lmhlcm97bWFyZ2luLWJvdHRvbTo5cHh9LnN0YXR7Ym94LXNoYWRvdzpub25lfS5yYWNrLXNjcm9sbHtvdmVyZmxvdzp2aXNpYmxlfS50YWItcGFuZWwjY2F0YWxvZ3tkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5mb290ZXJ7bWFyZ2luLXRvcDoyNXB4fX0KPC9zdHlsZT4KPC9oZWFkPgo8Ym9keT4KPGhlYWRlcj48ZGl2IGNsYXNzPSJoZWFkIj48ZGl2IGNsYXNzPSJicmFuZG1hcmsiPuKaoTwvZGl2PjxkaXYgY2xhc3M9ImJyYW5kIj48c3Ryb25nPkN1YWRyb0xhYjwvc3Ryb25nPjxzbWFsbD5JTlRBUSDCtyBWSVZJRU5EQSAvIFJFQlQ8L3NtYWxsPjwvZGl2PjxkaXYgY2xhc3M9ImhlYWQtcmlnaHQiPjxkaXYgY2xhc3M9ImhlYWQtc3RhdHVzIj48ZGl2IGNsYXNzPSJoZWFkLXBpbGwiPjxiIGlkPSJoZWFkbW9kdWxlcyI+MC8yNDwvYj4gbcOzZHVsb3M8L2Rpdj48ZGl2IGNsYXNzPSJoZWFkLXBpbGwiPjxiIGlkPSJoZWFkY2hlY2siPuKAlDwvYj4gYXZpc29zPC9kaXY+PC9kaXY+PGJ1dHRvbiBjbGFzcz0iaWNvbmJ0biIgZGF0YS1hY3Rpb249InVuZG8iIHRpdGxlPSJEZXNoYWNlciI+4oa2PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0iaWNvbmJ0biIgZGF0YS1hY3Rpb249ImNvbmZpZyIgdGl0bGU9IkNvbmZpZ3VyYWNpw7NuIj7impk8L2J1dHRvbj48L2Rpdj48L2Rpdj48L2hlYWRlcj4KPGRpdiBjbGFzcz0iYXBwIj4KPGRpdiBjbGFzcz0iaGVybyI+PGRpdj48ZGl2IGNsYXNzPSJleWVicm93Ij5FU1RVRElPIElOVEVSQUNUSVZPIMK3IDIzMCBWIE1PTk9Gw4FTSUNPPC9kaXY+PGgxIGlkPSJwcm9qZWN0LXRpdGxlIj5NaSBjdWFkcm8gZWzDqWN0cmljbzwvaDE+PGRpdiBjbGFzcz0ic3VidGl0bGUiPkRpc2XDsWEsIG11ZXZlLCBjb25maWd1cmEgeSByZXZpc2EgY2FkYSBlbGVtZW50byBkZWwgY3VhZHJvLjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9Imhlcm8tdG9vbHMiPjxidXR0b24gY2xhc3M9ImJ0biIgZGF0YS1hY3Rpb249Im5ldy1tZW51Ij7inKYgUGxhbnRpbGxhczwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biBzb2Z0IiBkYXRhLWFjdGlvbj0ic2F2ZS1qc29uIj7ih6kgR3VhcmRhcjwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biBkZXNrdG9wLW9ubHkiIGRhdGEtYWN0aW9uPSJwcmludCI+4o6ZIEluZm9ybWUgUERGPC9idXR0b24+PC9kaXY+PC9kaXY+CjxkaXYgY2xhc3M9InN0YXRzIiBpZD0ic3RhdHMiPjwvZGl2Pgo8ZGl2IGNsYXNzPSJsYXlvdXQiPjxhc2lkZSBjbGFzcz0ic2lkZSI+PGRpdiBjbGFzcz0icGFuZWwiPjxkaXYgY2xhc3M9InBhbmVsLWhlYWQiPjxoMj4rIENvbXBvbmVudGVzPC9oMj48c3BhbiBjbGFzcz0idGlueSI+QXJyYXN0cmEgbyBwdWxzYTwvc3Bhbj48L2Rpdj48ZGl2IGlkPSJzaWRlYmFyLWNhdGFsb2ciPjwvZGl2PjwvZGl2PjwvYXNpZGU+PG1haW4gY2xhc3M9ImNvbnRlbnQiPgo8c2VjdGlvbiBpZD0iYm9hcmQiIGNsYXNzPSJ0YWItcGFuZWwgYWN0aXZlIj48L3NlY3Rpb24+CjxzZWN0aW9uIGlkPSJjYXRhbG9nIiBjbGFzcz0idGFiLXBhbmVsIj48L3NlY3Rpb24+CjxzZWN0aW9uIGlkPSJzY2hlbWUiIGNsYXNzPSJ0YWItcGFuZWwiPjwvc2VjdGlvbj4KPHNlY3Rpb24gaWQ9ImNoZWNrcyIgY2xhc3M9InRhYi1wYW5lbCI+PC9zZWN0aW9uPgo8c2VjdGlvbiBpZD0iYm9tIiBjbGFzcz0idGFiLXBhbmVsIj48L3NlY3Rpb24+CjxkaXYgY2xhc3M9ImZvb3RlciI+SGVycmFtaWVudGEgZWR1Y2F0aXZhIHkgZGUgcHJlZGltZW5zaW9uYWRvLiBObyBzdXN0aXR1eWUgZWwgY8OhbGN1bG8gcmVnbGFtZW50YXJpbyBjb21wbGV0bywgbGEgc2VsZWNjacOzbiBkZSBtYXRlcmlhbCBjb21wYXRpYmxlLCBsYXMgaW5zdHJ1Y2Npb25lcyBkZSBmYWJyaWNhbnRlIG5pIGxhIHJldmlzacOzbiB5IGVqZWN1Y2nDs24gcG9yIHByb2Zlc2lvbmFsIGhhYmlsaXRhZG8uIE5vcm1hdGl2YSBkZSByZWZlcmVuY2lhOiBSRUJULCBJVEMtQlQtMTAsIDE3LCAxOSwgMjMsIDI1IHkgNTIuPC9kaXY+CjwvbWFpbj48L2Rpdj48L2Rpdj4KPG5hdiBjbGFzcz0ibmF2IiBhcmlhLWxhYmVsPSJTZWNjaW9uZXMiPjxidXR0b24gZGF0YS1hY3Rpb249ImdvIiBkYXRhLXZpZXc9ImJvYXJkIiBjbGFzcz0iYWN0aXZlIj48c3BhbiBjbGFzcz0ibnZpY29uIj7ilqY8L3NwYW4+Q3VhZHJvPC9idXR0b24+PGJ1dHRvbiBkYXRhLWFjdGlvbj0iZ28iIGRhdGEtdmlldz0iY2F0YWxvZyI+PHNwYW4gY2xhc3M9Im52aWNvbiI+4oqePC9zcGFuPkHDsWFkaXI8L2J1dHRvbj48YnV0dG9uIGRhdGEtYWN0aW9uPSJnbyIgZGF0YS12aWV3PSJzY2hlbWUiPjxzcGFuIGNsYXNzPSJudmljb24iPuKRgjwvc3Bhbj5Fc3F1ZW1hPC9idXR0b24+PGJ1dHRvbiBkYXRhLWFjdGlvbj0iZ28iIGRhdGEtdmlldz0iY2hlY2tzIj48c3BhbiBjbGFzcz0ibnZpY29uIj7inJM8L3NwYW4+UmV2aXNhcjwvYnV0dG9uPjxidXR0b24gZGF0YS1hY3Rpb249ImdvIiBkYXRhLXZpZXc9ImJvbSI+PHNwYW4gY2xhc3M9Im52aWNvbiI+4omhPC9zcGFuPk1hdGVyaWFsPC9idXR0b24+PC9uYXY+CjxkaXYgY2xhc3M9InNoZWV0LXdyYXAiIGlkPSJtb2RhbCIgcm9sZT0icHJlc2VudGF0aW9uIj48L2Rpdj48ZGl2IGNsYXNzPSJ0b2FzdCIgaWQ9InRvYXN0Ij48L2Rpdj48aW5wdXQgaWQ9ImZpbGUtbG9hZCIgdHlwZT0iZmlsZSIgYWNjZXB0PSIuanNvbixhcHBsaWNhdGlvbi9qc29u
IiBoaWRkZW4+CjxzY3JpcHQ+CigoKT0+eyd1c2Ugc3RyaWN0JzsKY29uc3QgZWw9aWQ9PmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKSwgZXNjPXM9PlN0cmluZyhzPz8nJykucmVwbGFjZSgvWyY8PiInXS9nLGM9Pih7JyYnOicmYW1wOycsJzwnOicmbHQ7JywnPic6JyZndDsnLCciJzonJnF1b3Q7JywiJyI6JyYjMzk7J31bY10pKTsKY29uc3QgVFlQRVM9e0lHQTp7bmFtZTonSW50ZXJydXB0b3IgZ2VuZXJhbCBhdXRvbcOhdGljbycsc2hvcnQ6J0lHQScsbW9kczoyLGFtcDo0MCxjb2xvcjonI2VlOWE0OCcsZGVzYzonMlAgwrcgZ2VuZXJhbCDCtyBjdXJ2YSBDJ30sU1BEOntuYW1lOidQcm90ZWN0b3Igc29icmV0ZW5zaW9uZXMnLHNob3J0OidTUEQnLG1vZHM6MixhbXA6NDAsY29sb3I6JyNhMTc5ZDYnLGRlc2M6J1RyYW5zaXRvcmlhcyAoY29uY2VwdHVhbCknfSxJRDp7bmFtZTonSW50ZXJydXB0b3IgZGlmZXJlbmNpYWwnLHNob3J0OidJRCcsbW9kczoyLGFtcDo0MCxjb2xvcjonIzJiOWQ5NCcsZGVzYzonMlAgwrcgMzAgbUEgwrcgdGlwbyBBJ30sUElBOntuYW1lOidNYWduZXRvdMOpcm1pY28gYmlwb2xhcicsc2hvcnQ6J1BJQScsbW9kczoyLGFtcDoxNixjb2xvcjonIzNjODVkZicsZGVzYzonMlAgwrcgY3VydmEgQyd9LFBJQTE6e25hbWU6J01hZ25ldG90w6lybWljbyBjb21wYWN0bycsc2hvcnQ6J1BJQScsbW9kczoxLGFtcDoxNixjb2xvcjonIzNjODVkZicsZGVzYzonMVArTiDCtyAxIG3Ds2R1bG8qJ30sUkNCTzp7bmFtZTonRGlmZXJlbmNpYWwgbWFnbmV0b3TDqXJtaWNvJyxzaG9ydDonUkNCTycsbW9kczoyLGFtcDoxNixjb2xvcjonIzIxYTdiNycsZGVzYzonUHJvdGVjY2nDs24gY29tYmluYWRhJ30sQ09OVEFDVDp7bmFtZTonQ29udGFjdG9yIG1vZHVsYXInLHNob3J0OidLTScsbW9kczoyLGFtcDoyNSxjb2xvcjonIzgwOTFhYycsZGVzYzonTWFuaW9icmEgZGUgY2FyZ2FzJ30sTUVURVI6e25hbWU6J01lZGlkb3IgZGUgZW5lcmfDrWEnLHNob3J0OidrV2gnLG1vZHM6MSxhbXA6NDAsY29sb3I6JyM3YjhhYTInLGRlc2M6J0xlY3R1cmEgb3JpZW50YXRpdmEnfSxCTEFOSzp7bmFtZTonTcOzZHVsbyBkZSByZXNlcnZhIC8gdGFwYScsc2hvcnQ6J0xJQlJFJyxtb2RzOjEsYW1wOjAsY29sb3I6JyNiNGJkYzcnLGRlc2M6J1Jlc2VydmEgZGUgMSBtw7NkdWxvJ30sQk9STkE6e25hbWU6J0Jsb3F1ZSBkZSBib3JuYXMgRElOJyxzaG9ydDonQk9STicsbW9kczoxLGFtcDozMixjb2xvcjonIzdlOGI5YicsZGVzYzonQXV4aWxpYXIgwrcgdmVyaWZpY2FyIGVzcGFjaW8gcmVhbCd9fTsKY29uc3QgQ0lSPXtDMTp7bmFtZTonSWx1bWluYWNpw7NuJyxhbXA6MTAsc2VjdGlvbjoxLjUscG9pbnRzOjEyLG1heDozMCxsb2FkOjc1MH0sQzI6e25hbWU6J1RvbWFzIGdlbmVyYWxlcyB5IGZyaWdvcsOtZmljbycsYW1wOjE2LHNlY3Rpb246Mi41LHBvaW50czoxMixtYXg6MjAsbG9hZDoxMTAwfSxDMzp7bmFtZTonQ29jaW5hIHkgaG9ybm8nLGFtcDoyNSxzZWN0aW9uOjYscG9pbnRzOjIsbWF4OjIsbG9hZDo0MDAwfSxDNDp7bmFtZTonTGF2YWRvcmEsIGxhdmF2YWppbGxhcyB5IHRlcm1vJyxhbXA6MjAsc2VjdGlvbjo0LHBvaW50czozLG1heDozLGxvYWQ6MzAwMH0sQzRMOntuYW1lOidMYXZhZG9yYSDCtyBDNCBkZXNkb2JsYWRvJyxhbXA6MTYsc2VjdGlvbjoyLjUscG9pbnRzOjEsbWF4OjEsbG9hZDoxODAwfSxDNEQ6e25hbWU6J0xhdmF2YWppbGxhcyDCtyBDNCBkZXNkb2JsYWRvJyxhbXA6MTYsc2VjdGlvbjoyLjUscG9pbnRzOjEsbWF4OjEsbG9hZDoxODAwfSxDNFQ6e25hbWU6J1Rlcm1vIMK3IEM0IGRlc2RvYmxhZG8nLGFtcDoxNixzZWN0aW9uOjIuNSxwb2ludHM6MSxtYXg6MSxsb2FkOjE1MDB9LEM1OntuYW1lOidUb21hcyBkZSBiYcOxbyB5IGNvY2luYScsYW1wOjE2LHNlY3Rpb246Mi41LHBvaW50czo0LG1heDo2LGxvYWQ6MTAwMH0sQzY6e25hbWU6J0lsdW1pbmFjacOzbiBhZGljaW9uYWwnLGFtcDoxMCxzZWN0aW9uOjEuNSxwb2ludHM6MTIsbWF4OjMwLGxvYWQ6NzAwfSxDNzp7bmFtZTonVG9tYXMgYWRpY2lvbmFsZXMnLGFtcDoxNixzZWN0aW9uOjIuNSxwb2ludHM6MTIsbWF4OjIwLGxvYWQ6MTIwMH0sQzg6e25hbWU6J0NhbGVmYWNjacOzbiBlbMOpY3RyaWNhJyxhbXA6MjUsc2VjdGlvbjo2LHBvaW50czoxLG1heDowLGxvYWQ6NDUwMH0sQzk6e25hbWU6J0FpcmUgYWNvbmRpY2lvbmFkbycsYW1wOjI1LHNlY3Rpb246Nixwb2ludHM6MSxtYXg6MCxsb2FkOjQwMDB9LEMxMDp7bmFtZTonU2VjYWRvcmEnLGFtcDoxNixzZWN0aW9uOjIuNSxwb2ludHM6MSxtYXg6MSxsb2FkOjI2MDB9LEMxMTp7bmFtZTonRG9tw7N0aWNhJyxhbXA6MTAsc2VjdGlvbjoxLjUscG9pbnRzOjEsbWF4OjAsbG9hZDozMDB9LEMxMjp7bmFtZTonQ2lyY3VpdG8gYWRpY2lvbmFsIEMzL0M0L0M1JyxhbXA6MTYsc2VjdGlvbjoyLjUscG9pbnRzOjEsbWF4OjAsbG9hZDoxMzAwfSxDMTM6e25hbWU6J1JlY2FyZ2EgdmVow61jdWxvIGVsw6ljdHJpY28nLGFtcDoxNixzZWN0aW9uOjIuNSxwb2ludHM6MSxtYXg6MCxsb2FkOjM2MDB9fTsKY29uc3QgQ0FURUdPUlk9W1snUHJvdGVjY2lvbmVzIGdlbmVyYWxlcycsWydJR0EnLCdTUEQnLCdJRCddXSxbJ1Byb3RlY2Npb25lcyBwb3IgY2lyY3VpdG8nLFsnUElBJywnUElBMScsJ1JDQk8nXV0sWydFbGVtZW50b3MgYXV4aWxpYXJlcycsWydDT05UQUNUJywnTUVURVInLCdCT1JOQScsJ0JMQU5LJ11dXTsKY29uc3QgQ0lSR1JPVVA9W1snRWxlY3RyaWZpY2FjacOzbiBiw6FzaWNhJyxbJ0MxJywnQzInLCdDMycsJ0M0JywnQzUnXV0sWydDNCBkZXNkb2JsYWRvIChhbHRlcm5hdGl2YSknLFsnQzRMJywnQzREJywnQzRUJ11dLFsnRWxlY3RyaWZpY2FjacOzbiBlbGV2YWRhIC8gYW1wbGlhY2nDs24nLFsnQzYnLCdDNycsJ0M4JywnQzknLCdDMTAnLCdDMTEnLCdDMTInLCdDMTMnXV1dOwpsZXQgY291bnQ9NTAsIHN0YXRlLCBzZWxlY3RlZD1udWxsLCB2aWV3PSdib2FyZCcsIG9wZW5TaGVldD0nJywgc3RhY2s9W10sIGZ1dHVyZT1bXSwgZHJhZz1udWxsLCB0b2FzdFRpbWVyPW51bGw7CmZ1bmN0aW9uIHVpZCgpe3JldHVybiAnZCcrKCsrY291bnQpKydfJytNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqOTk5OSl9CmZ1bmN0aW9uIGRldih0eXBlLHBvcyxvcHRzPXt9KXtjb25zdCB0PVRZUEVTW3R5cGVdO3JldHVybiB7aWQ6dWlkKCksdHlwZSxwb3MsbW9kczp0Lm1vZHMsYW1wOnQuYW1wLG5hbWU6dC5zaG9ydCxncm91cDonJyxvbjp0cnVlLHJkYzozMCxyY2R0eXBlOidBJyxzZWN0aW9uOjIuNSxwb2ludHM6MSxsZW5ndGg6MTAsd2F0dHM6MCxjdXJ2ZTonQycsLi4ub3B0c319CmZ1bmN0aW9uIHNlZWQobW9kZT0nYmFzaWMnKXsKIGxldCBhPVtkZXYoJ0lHQScsMCx7bmFtZTonSUdBJyxhbXA6bW9kZT09PSdoaWdoJz80MDoyNX0pLGRldignU1BEJywyLHtuYW1lOidTUEQnfSksZGV2KCdJRCcsNCx7bmFtZTonSUQgMScsYW1wOm1vZGU9PT0naGlnaCc/NDA6NDB9KV07CiBmb3IoY29uc3QgW2ksY29kZV0gb2YgWydDMScsJ0MyJywnQzMnLCdDNCcsJ0M1J10uZW50cmllcygpKXtsZXQgYz1DSVJbY29kZV0scG9zPVs2LDgsMTAsMTIsMTRdW2ldO2EucHVzaChkZXYoJ1BJQScscG9zLHtuYW1lOmNvZGUsYW1wOmMuYW1wLHNlY3Rpb246Yy5zZWN0aW9uLHBvaW50czpjLnBvaW50cyx3YXR0czpjLmxvYWQsZ3JvdXA6YVsyXS5pZCxjaXJjdWl0OmNvZGV9KSk7fQogaWYobW9kZT09PSdoaWdoJyl7CiBsZXQgaWQyPWRldignSUQnLDE2LHtuYW1lOidJRCAyJyxhbXA6NDB9KTthLnB1c2goaWQyKTsKIGxldCBjb2Rlcz1bJ0M3JywnQzknLCdDMTAnXTtjb2Rlcy5mb3JFYWNoKChjLGkpPT57bGV0IHA9Q0lSW2NdO2EucHVzaChkZXYoJ1BJQScsMTgraSoyLHtuYW1lOmMsYW1wOnAuYW1wLHNlY3Rpb246cC5zZWN0aW9uLHBvaW50czpwLnBvaW50cyx3YXR0czpwLmxvYWQsZ3JvdXA6aWQyLmlkLGNpcmN1aXQ6Y30pKTt9KTsKIH0KIHJldHVybiB7bmFtZTptb2RlPT09J2hpZ2gnPydWaXZpZW5kYSDCtyBlbGVjdHJpZmljYWNpw7NuIGVsZXZhZGEnOidNaSBjdWFkcm8gZWzDqWN0cmljbycsZ3JhZGU6bW9kZT09PSdoaWdoJz8naGlnaCc6J2Jhc2ljJyxhcmVhOm1vZGU9PT0naGlnaCc/MTY1Ojg1LGNvbHM6MTIscm93czptb2RlPT09J2hpZ2gnPzM6Mixjb250cmFjdDptb2RlPT09J2hpZ2gnPzY5MDA6NDYwMCxkZXZpY2VzOmF9Owp9CmZ1bmN0aW9uIG5vcm0obyl7aWYoIW98fHR5cGVvZiBvIT09J29iamVjdCd8fCFBcnJheS5pc0FycmF5KG8uZGV2aWNlcykpcmV0dXJuIG51bGw7CiBjb25zdCBjb2xzPVsxMiwxOCwyNF0uaW5jbHVkZXMoK28uY29scyk/K28uY29sczoxMixyb3dzPVsxLDIsMyw0LDVdLmluY2x1ZGVzKCtvLnJvd3MpPytvLnJvd3M6MixkZXZpY2VzPVtdO2xldCBvY2N1cGllZD1uZXcgU2V0KCk7CiBmb3IoY29uc3QgZCBvZiBvLmRldmljZXMuc2xpY2UoMCwxMjUpKXtpZighZHx8IVRZUEVTW2QudHlwZV0pY29udGludWU7Y29uc3QgbW9kcz1UWVBFU1tkLnR5cGVdLm1vZHMscG9zPU51bWJlcihkLnBvcyksaWQ9U3RyaW5nKGQuaWR8fHVpZCgpKS5zbGljZSgwLDYwKTtpZighTnVtYmVyLmlzSW50ZWdlcihwb3MpfHxwb3M8MHx8cG9zK21vZHM+Y29scypyb3dzfHxNYXRoLmZsb29yKHBvcy9jb2xzKSE9PU1hdGguZmxvb3IoKHBvcyttb2RzLTEpL2NvbHMpKWNvbnRpbnVlOyBpZihBcnJheS5mcm9tKHtsZW5ndGg6bW9kc30sKF8saSk9PnBvcytpKS5zb21lKHY9Pm9jY3VwaWVkLmhhcyh2KSkpY29udGludWU7Zm9yKGxldCBpPTA7aTxtb2RzO2krKylvY2N1cGllZC5hZGQocG9zK2kpO2RldmljZXMucHVzaCh7Li4uZGV2KGQudHlwZSxwb3MpLC4uLmQsbW9kcyxwb3MsaWQsbmFtZTpTdHJpbmcoZC5uYW1lfHxUWVBFU1tkLnR5cGVdLnNob3J0KS5zbGljZSgwLDkwKSxhbXA6TWF0aC5taW4oMTI1LE1hdGgubWF4KDAsTnVtYmVyKGQuYW1wKXx8MCkpLHNlY3Rpb246TWF0aC5taW4oOTUsTWF0aC5tYXgoLjUsTnVtYmVyKGQuc2VjdGlvbil8fDIuNSkpLHBvaW50czpNYXRoLm1pbig5OTksTWF0aC5tYXgoMCxOdW1iZXIoZC5wb2ludHMpfHwwKSksbGVuZ3RoOk1hdGgubWluKDIwMDAsTWF0aC5tYXgoMCxOdW1iZXIoZC5sZW5ndGgpfHwwKSksd2F0dHM6TWF0aC5taW4oNTAwMDAsTWF0aC5tYXgoMCxOdW1iZXIoZC53YXR0cyl8fDApKSxvbjohIWQub259KTt9CiBjb3VudCs9ZGV2aWNlcy5sZW5ndGgrMTsKIHJldHVybiB7bmFtZTpTdHJpbmcoby5uYW1lfHwnTWkgY3VhZHJvIGVsw6ljdHJpY28nKS5zbGljZSgwLDkwKSxncmFkZTpvLmdyYWRlPT09J2hpZ2gnPydoaWdoJzonYmFzaWMnLGFyZWE6TWF0aC5taW4oMzAwMCxNYXRoLm1heCgwLE51bWJlcihvLmFyZWEpfHw4MCkpLGNvbHMscm93cyxjb250cmFjdDpNYXRoLm1pbig2MDAwMCxNYXRoLm1heCgwLE51bWJlcihvLmNvbnRyYWN0KXx8NDYwMCkpLGRldmljZXN9O30KdHJ5e3N0YXRlPW5vcm0oSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnY3VhZHJvbGFiLXByb2plY3QtdjIn
KXx8J251bGwnKSl8fHNlZWQoKX1jYXRjaHtzdGF0ZT1zZWVkKCl9CmNvbnN0IHNhdmVMb2NhbD0oKT0+e3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnY3VhZHJvbGFiLXByb2plY3QtdjInLEpTT04uc3RyaW5naWZ5KHN0YXRlKSl9Y2F0Y2h7fX07CmZ1bmN0aW9uIGNvbW1pdCgpe3N0YWNrLnB1c2goSlNPTi5zdHJpbmdpZnkoc3RhdGUpKTtpZihzdGFjay5sZW5ndGg+NDUpc3RhY2suc2hpZnQoKTtmdXR1cmU9W119CmZ1bmN0aW9uIHVuZG8oKXtpZighc3RhY2subGVuZ3RoKXJldHVybiBzaG93VG9hc3QoJ05vIGhheSBhY2Npb25lcyBxdWUgZGVzaGFjZXInKTtmdXR1cmUucHVzaChKU09OLnN0cmluZ2lmeShzdGF0ZSkpO3N0YXRlPW5vcm0oSlNPTi5wYXJzZShzdGFjay5wb3AoKSkpO3NlbGVjdGVkPW51bGw7Y2xvc2VNb2RhbCgpO3NhdmVMb2NhbCgpO3JlbmRlcigpfQpmdW5jdGlvbiByZWRvKCl7aWYoIWZ1dHVyZS5sZW5ndGgpcmV0dXJuIHNob3dUb2FzdCgnTm8gaGF5IGFjY2lvbmVzIHF1ZSByZWhhY2VyJyk7c3RhY2sucHVzaChKU09OLnN0cmluZ2lmeShzdGF0ZSkpO3N0YXRlPW5vcm0oSlNPTi5wYXJzZShmdXR1cmUucG9wKCkpKTtzZWxlY3RlZD1udWxsO2Nsb3NlTW9kYWwoKTtzYXZlTG9jYWwoKTtyZW5kZXIoKX0KZnVuY3Rpb24gbW9kdXNlZCgpe3JldHVybiBzdGF0ZS5kZXZpY2VzLnJlZHVjZSgocyxkKT0+cytkLm1vZHMsMCl9CmZ1bmN0aW9uIHNvcnRlZCgpe3JldHVybiBbLi4uc3RhdGUuZGV2aWNlc10uc29ydCgoYSxiKT0+YS5wb3MtYi5wb3MpfQpmdW5jdGlvbiBvY2N1cGllZChwb3MsbW9kcyxleGNsdWRlKXtyZXR1cm4gc3RhdGUuZGV2aWNlcy5zb21lKGQ9PmQuaWQhPT1leGNsdWRlJiZwb3M8ZC5wb3MrZC5tb2RzJiZkLnBvczxwb3MrbW9kcyl9CmZ1bmN0aW9uIHZhbGlkU3BvdChwb3MsbW9kcyxleGNsdWRlKXtyZXR1cm4gTnVtYmVyLmlzSW50ZWdlcihwb3MpJiZwb3M+PTAmJnBvcyttb2RzPD1zdGF0ZS5jb2xzKnN0YXRlLnJvd3MmJk1hdGguZmxvb3IocG9zL3N0YXRlLmNvbHMpPT09TWF0aC5mbG9vcigocG9zK21vZHMtMSkvc3RhdGUuY29scykmJiFvY2N1cGllZChwb3MsbW9kcyxleGNsdWRlKX0KZnVuY3Rpb24gZmluZFNwb3QobW9kcyl7Zm9yKGxldCByb3c9MDtyb3c8c3RhdGUucm93cztyb3crKylmb3IobGV0IGM9MDtjPD1zdGF0ZS5jb2xzLW1vZHM7YysrKXtsZXQgcD1yb3cqc3RhdGUuY29scytjO2lmKHZhbGlkU3BvdChwLG1vZHMpKXJldHVybiBwfXJldHVybiAtMX0KZnVuY3Rpb24gcmVjYWxjU2ltcGxlKCl7Y29uc3QgYWN0aXZlPXN0YXRlLmRldmljZXMuZmlsdGVyKGQ9PmlzQ2lyY3VpdChkKSYmZGV2aWNlQWN0aXZlKGQpKTtyZXR1cm4gYWN0aXZlLnJlZHVjZSgodixkKT0+disoK2Qud2F0dHN8fDApLDApfQpmdW5jdGlvbiBpc0NpcmN1aXQoZCl7cmV0dXJuICEhZC5jaXJjdWl0JiZbJ1BJQScsJ1BJQTEnLCdSQ0JPJ10uaW5jbHVkZXMoZC50eXBlKX0KZnVuY3Rpb24gaWRzKCl7cmV0dXJuIHNvcnRlZCgpLmZpbHRlcihkPT5kLnR5cGU9PT0nSUQnKX0KZnVuY3Rpb24gZGV2aWNlQWN0aXZlKGQpe2lmKCFkLm9uKXJldHVybiBmYWxzZTtjb25zdCBpZz1zdGF0ZS5kZXZpY2VzLmZpbmQoeD0+eC50eXBlPT09J0lHQScpO2lmKGlnJiYhaWcub24pcmV0dXJuIGZhbHNlO2lmKGQudHlwZT09PSdJRCcpcmV0dXJuIHRydWU7aWYoaXNDaXJjdWl0KGQpJiZkLnR5cGUhPT0nUkNCTycpe2NvbnN0IHI9c3RhdGUuZGV2aWNlcy5maW5kKHg9PnguaWQ9PT1kLmdyb3VwJiZ4LnR5cGU9PT0nSUQnKTtyZXR1cm4gISEociYmci5vbil9cmV0dXJuIHRydWV9CmZ1bmN0aW9uIGRyb3BDYWxjKGQpe3JldHVybiBkJiZkLnNlY3Rpb24+MD8oMipkLmFtcCpkLmxlbmd0aCouMDIyNS9kLnNlY3Rpb24vMjMwKjEwMCk6MH0KZnVuY3Rpb24gc2VjdGlvbkxhYmVsKHYpe3JldHVybiBTdHJpbmcodikucmVwbGFjZSgnLicsJywnKSsnIG1twrInfQpmdW5jdGlvbiB2YWxpZGF0ZSgpe2NvbnN0IGNoZWNrcz1bXSxlcnI9KHNldmVyaXR5LHRpdGxlLGRldGFpbCk9PmNoZWNrcy5wdXNoKHtzZXZlcml0eSx0aXRsZSxkZXRhaWx9KSxhbGw9c3RhdGUuZGV2aWNlcyxpZ2E9YWxsLmZpbHRlcihkPT5kLnR5cGU9PT0nSUdBJyksY2lyPWFsbC5maWx0ZXIoaXNDaXJjdWl0KSxyZD1pZHMoKSxjQ29kZXM9bmV3IFNldChjaXIubWFwKGQ9PmQuY2lyY3VpdCkpLGVsZXY9c3RhdGUuZ3JhZGU9PT0naGlnaCc7CiBpZihpZ2EubGVuZ3RoIT09MSllcnIoJ2Vycm9yJywnSW50ZXJydXB0b3IgZ2VuZXJhbCcsaWdhLmxlbmd0aD09PTA/J0ZhbHRhIGVsIElHQSBkZSBjb3J0ZSBnZW5lcmFsLic6J0hheSBtw6FzIGRlIHVuIElHQSBlbiBlbCBtb2RlbG86IHJldmlzYXIgZXNxdWVtYS4nKTtlbHNlIGlmKGlnYVswXS5hbXA8KGVsZXY/NDA6MjUpKWVycignZXJyb3InLCdDYWxpYnJlIGRlbCBJR0EnLGBQcmV2aXN0byAke2VsZXY/J2VsZWN0cmlmaWNhY2nDs24gZWxldmFkYTogbcOtbmltbyA0MCBBICg5LDIga1cpJzonZWxlY3RyaWZpY2FjacOzbiBiw6FzaWNhOiBtw61uaW1vIDI1IEEgKDUsNzUga1cpJ30uIElHQSBjb25maWd1cmFkbzogJHtpZ2FbMF0uYW1wfSBBLmApO2Vsc2UgZXJyKCdvaycsJ0lHQSBpZGVudGlmaWNhZG8nLGAke2lnYVswXS5hbXB9IEEuIENvbmZpcm1hciBwb2RlciBkZSBjb3J0ZSAoYWwgbWVub3MgNCw1IGtBKSB5IGNvb3JkaW5hY2nDs24gcmVhbC5gKTsKIGNvbnN0IG1hbmRhdG9yeT1bJ0MxJywnQzInLCdDMycsJ0M0JywnQzUnXS5maWx0ZXIoYz0+Yz09PSdDNCc/IShbLi4uY0NvZGVzXS5zb21lKHg9PlsnQzQnLCdDNEwnLCdDNEQnLCdDNFQnXS5pbmNsdWRlcyh4KSkpOiFjQ29kZXMuaGFzKGMpKTtpZihtYW5kYXRvcnkubGVuZ3RoKWVycignZXJyb3InLCdDaXJjdWl0b3MgYsOhc2ljb3MgYXVzZW50ZXMnLGBGYWx0YW46ICR7bWFuZGF0b3J5LmpvaW4oJywgJyl9LiBMYSB2aXZpZW5kYSBkZWJlIHByZXZlciBDMSBhIEM1LmApO2Vsc2UgZXJyKCdvaycsJ0NpcmN1aXRvcyBiw6FzaWNvcycsYExvcyBjaW5jbyBzZXJ2aWNpb3MgYsOhc2ljb3MgQzHigJNDNSBlc3TDoW4gcmVwcmVzZW50YWRvcyR7Y0NvZGVzLmhhcygnQzQnKT8nJzonIGNvbiBkZXNkb2JsYW1pZW50byBkZSBDNCd9LmApOwogY29uc3Qgc3BsaXQ9WydDNEwnLCdDNEQnLCdDNFQnXS5maWx0ZXIoeD0+Y0NvZGVzLmhhcyh4KSk7aWYoc3BsaXQubGVuZ3RoJiZzcGxpdC5sZW5ndGghPT0zJiYhY0NvZGVzLmhhcygnQzQnKSllcnIoJ3dhcm4nLCdDNCBkZXNkb2JsYWRvIGluY29tcGxldG8nLCdFbCBlamVtcGxvIEM0IHNlcGFyYWRvIHN1ZWxlIHByZXZlciBsYXZhZG9yYSwgbGF2YXZhamlsbGFzIHkgdGVybW8gLyBzdSB0b21hIGNvcnJlc3BvbmRpZW50ZS4nKTsKIGlmKHJkLmxlbmd0aD09PTAmJiFhbGwuc29tZShkPT5kLnR5cGU9PT0nUkNCTycpKWVycignZXJyb3InLCdTaW4gcHJvdGVjY2nDs24gZGlmZXJlbmNpYWwnLCdBw7FhZGUgYWwgbWVub3MgdW4gSUQgZGUgMzAgbUEgbyBkaXNwb3NpdGl2b3MgY29tYmluYWRvcyBhZGVjdWFkb3MuJyk7CiBmb3IoY29uc3QgZCBvZiByZCl7aWYoZC5yZGM+MzApZXJyKCdlcnJvcicsYCR7ZC5uYW1lfTogc2Vuc2liaWxpZGFkIGV4Y2VzaXZhYCxgRWwgZGlmZXJlbmNpYWwgcXVlIHByb3RlZ2UgY2lyY3VpdG9zIGRlIHZpdmllbmRhIGRlYmUgZ2FyYW50aXphciBJzpRuIOKJpDMwIG1BLmApO2lmKGlnYS5sZW5ndGgmJmQuYW1wPGlnYVswXS5hbXApZXJyKCd3YXJuJyxgJHtkLm5hbWV9OiBpbnRlbnNpZGFkIGFzaWduYWRhYCxgSUQgJHtkLmFtcH0gQSBtZW5vciBxdWUgSUdBICR7aWdhWzBdLmFtcH0gQS4gUmV2aXNhciBzdSBwcm90ZWNjacOzbiBmcmVudGUgYSBzb2JyZWNhcmdhcyAvIGNvb3JkaW5hY2nDs24uYCl9CiBjb25zdCBncm91cHM9e307Zm9yKGNvbnN0IHIgb2YgcmQpZ3JvdXBzW3IuaWRdPVtdOwogZm9yKGNvbnN0IGQgb2YgY2lyKXtsZXQgYz1DSVJbZC5jaXJjdWl0XTtpZihjKXtpZihkLmFtcCE9PWMuYW1wJiZkLmNpcmN1aXQhPT0nQzEzJyYmZC5jaXJjdWl0IT09J0MxMicpZXJyKCd3YXJuJyxgJHtkLm5hbWV9OiBjYWxpYnJlYCxgUmVmZXJlbmNpYSBJVEMtQlQtMjU6ICR7Yy5hbXB9IEE7IGNvbmZpZ3VyYWRvICR7ZC5hbXB9IEEuIFJldmlzYXIgZWwgZGltZW5zaW9uYWRvLmApO2lmKGQuc2VjdGlvbjxjLnNlY3Rpb24mJmQuY2lyY3VpdCE9PSdDMTMnJiZkLmNpcmN1aXQhPT0nQzEyJyllcnIoJ2Vycm9yJyxgJHtkLm5hbWV9OiBzZWNjacOzbmAsYFNlY2Npw7NuICR7c2VjdGlvbkxhYmVsKGQuc2VjdGlvbil9IGluZmVyaW9yIGEgcmVmZXJlbmNpYSBkZSAke3NlY3Rpb25MYWJlbChjLnNlY3Rpb24pfSBkZSBJVEMtQlQtMjUgZW4gY29uZGljaW9uZXMgaW5kaWNhZGFzLmApO2lmKGMubWF4JiZkLnBvaW50cz5jLm1heCllcnIoJ3dhcm4nLGAke2QubmFtZX06IHB1bnRvcyBleGNlc2l2b3NgLGAke2QucG9pbnRzfSBwdW50b3M7IHJlZmVyZW5jaWEgbcOheGltYSAke2MubWF4fSBlbiBlc3RhIGNsYXNlIGRlIGNpcmN1aXRvLmApfQogY29uc3QgZHJvcD1kcm9wQ2FsYyhkKTtpZihkcm9wPjMpZXJyKCd3YXJuJyxgJHtkLm5hbWV9OiBjYcOtZGEgZGUgdGVuc2nDs25gLGAke2Ryb3AudG9GaXhlZCgxKX0gJSBlc3RpbWFkbyAoMjMwIFYsIGNvYnJlLCBsb25naXR1ZCBpZGEgJHtkLmxlbmd0aH0gbSwgY2FyZ2EgSW4pLiBPYmpldGl2byBtw6F4aW1vIDMgJSBlbiB2aXZpZW5kYSwgc3VqZXRvIGFsIGPDoWxjdWxvIGNvbXBsZXRvLmApOwogaWYoZC50eXBlIT09J1JDQk8nKXtsZXQgcj1yZC5maW5kKHg9PnguaWQ9PT1kLmdyb3VwKTtpZighcillcnIoJ2Vycm9yJyxgJHtkLm5hbWV9OiBzaW4gZGlmZXJlbmNpYWxgLGBBc2lnbmEgZXN0ZSBjaXJjdWl0byBhIHVuIGRpZmVyZW5jaWFsIGV4aXN0ZW50ZS5gKTtlbHNlIGdyb3Vwc1tyLmlkXS5wdXNoKGQpfQogaWYoZC5jaXJjdWl0PT09J0MxMycpe2xldCByPXJkLmZpbmQoeD0+eC5pZD09PWQuZ3JvdXApO2xldCByZWxhdGVkPXI/Y2lyLmZpbHRlcih4PT54LnR5cGUhPT0nUkNCTycmJnguZ3JvdXA9PT1yLmlkJiZ4LmlkIT09ZC5pZCk6W107aWYoZC50eXBlPT09J1JDQk8nKWVycignd2FybicsJ0MxMzogZGlmZXJlbmNpYWwgZGUgcmVjYXJnYScsJ0NvbXByb2JhciBjdW1wbGltaWVudG8gSVRDLUJULTUyLCBkZXRlY2Npw7NuIGRlIGNvbXBvbmVudGUgY29udGludWEsIHNpc3RlbWEgZGUgcHJvdGVjY2nDs24geSBlc3F1ZW1hIGRlIHJlY2FyZ2EuJyk7ZWxzZSBpZighcillcnIoJ2Vycm9yJywnQzEzOiBkaWZlcmVuY2lhbCBleGNsdXNpdm8nLCdFbCBjaXJjdWl0byBDMTMgbmVjZXNpdGEgcHJvdGVjY2nDs24gZGlmZXJlbmNpYWwgZXNwZWPDrWZpY2Egc2Vnw7puIElUQy1CVC01Mi4nKTtlbHNlIGlmKHJlbGF0ZWQubGVuZ3RoKWVycignZXJyb3InLCdDMTM6IGRpZmVyZW5jaWFsIGNvbXBhcnRpZG8nLCdDMTMgcmVxdWllcmUgZGlmZXJlbmNpYWwgZXhjbHVzaXZvIGVuIGVsIHN1cHVlc3RvIGRlIGFwbGljYWNpw7NuIHJlY29naWRvIGVuIElUQy1CVC0yNS81Mi4nKTtlbHNl
IGVycignd2FybicsJ0MxMzogcHJvdGVjY2nDs24gZXNwZWPDrWZpY2EnLCdWZXJpZmljYXIgdGlwbyBkZSBkaWZlcmVuY2lhbCB5IHByb3RlY2Npw7NuIGNvbnRyYSBjb3JyaWVudGUgcmVzaWR1YWwgY29udGludWEgc2Vnw7puIGVxdWlwbyBkZSByZWNhcmdhIGUgSVRDLUJULTUyLicpfX0KIGZvcihsZXQgciBvZiByZCl7bGV0IGE9Z3JvdXBzW3IuaWRdfHxbXSxvcmRpbmFyeT1hLmZpbHRlcihkPT4hWydDNEwnLCdDNEQnLCdDNFQnXS5pbmNsdWRlcyhkLmNpcmN1aXQpKSxzcGxpdE51bT1hLmZpbHRlcihkPT5bJ0M0TCcsJ0M0RCcsJ0M0VCddLmluY2x1ZGVzKGQuY2lyY3VpdCkpLmxlbmd0aDtsZXQgZWZmZWN0aXZlPW9yZGluYXJ5Lmxlbmd0aCsoc3BsaXROdW0/MTowKTtpZihlZmZlY3RpdmU+NSllcnIoJ2Vycm9yJyxgJHtyLm5hbWV9OiBleGNlc28gZGUgY2lyY3VpdG9zYCxgU2UgY3VlbnRhbiAke2VmZmVjdGl2ZX0gY2lyY3VpdG9zIGVmZWN0aXZvcyBwcm90ZWdpZG9zIHBvciBlbCBtaXNtbyBJRCAoY3JpdGVyaW8gaGFiaXR1YWw6IG3DoXhpbW8gNTsgQzQgZGVzZG9ibGFkbyBjb250ZW1wbGFkbyBjb21vIGV4Y2VwY2nDs24pLmApfQogaWYoZWxldiYmaWdhLmxlbmd0aCYmaWdhWzBdLmFtcDw0MCl7fWlmKCtzdGF0ZS5hcmVhPjE2MCYmIWVsZXYpZXJyKCd3YXJuJywnR3JhZG8gZGUgZWxlY3RyaWZpY2FjacOzbicsYENvbiAke3N0YXRlLmFyZWF9IG3CsiDDunRpbGVzLCBjb3JyZXNwb25kZSByZXZpc2FyIGVsZWN0cmlmaWNhY2nDs24gZWxldmFkYS5gKTtpZihbLi4uY0NvZGVzXS5zb21lKHg9PlsnQzgnLCdDOScsJ0MxMCcsJ0MxMScsJ0MxMyddLmluY2x1ZGVzKHgpKSYmIWVsZXYpZXJyKCd3YXJuJywnR3JhZG8gZGUgZWxlY3RyaWZpY2FjacOzbicsJ0xvcyBlcXVpcG9zIG9wY2lvbmFsZXMgcHJldmlzdG9zIHB1ZWRlbiByZXF1ZXJpciBlbGVjdHJpZmljYWNpw7NuIGVsZXZhZGEgc2Vnw7puIElUQy1CVC0xMC8yNS4nKTsKIGNvbnN0IGxpdmVXYXR0cz1yZWNhbGNTaW1wbGUoKTsKIGlmKGlnYS5sZW5ndGg9PT0xJiZsaXZlV2F0dHM+aWdhWzBdLmFtcCoyMzApZXJyKCd3YXJuJywnQ2FyZ2Egc2ltdWx0w6FuZWEgZGUgbGEgc2ltdWxhY2nDs24nLGBMYXMgY2FyZ2FzIGFub3RhZGFzIHkgZW5jZW5kaWRhcyBzdW1hbiAkeyhsaXZlV2F0dHMvMTAwMCkudG9GaXhlZCgyKX0ga1csIHBvciBlbmNpbWEgZGUgbGEgcG90ZW5jaWEgYXNvY2lhZGEgYWwgSUdBICR7KGlnYVswXS5hbXAqMjMwLzEwMDApLnRvRml4ZWQoMil9IGtXLiBSZXZpc2EgbGEgc2ltdWx0YW5laWRhZCBzdXB1ZXN0YTsgZWwgcHJvZ3JhbWEgbm8gc2ltdWxhIGVsIHRpZW1wbyByZWFsIGRlIGRpc3Bhcm8uYCk7CiBpZihzdGF0ZS5jb250cmFjdD4wJiZsaXZlV2F0dHM+c3RhdGUuY29udHJhY3QpZXJyKCd3YXJuJywnQ2FyZ2EgZnJlbnRlIGEgcG90ZW5jaWEgY29udHJhdGFkYScsYExhIHN1bWEgaW5zdGFudMOhbmVhIHN1cHVlc3RhIGRlICR7KGxpdmVXYXR0cy8xMDAwKS50b0ZpeGVkKDIpfSBrVyBzdXBlcmEgbG9zICR7KHN0YXRlLmNvbnRyYWN0LzEwMDApLnRvRml4ZWQoMil9IGtXIGFub3RhZG9zIGNvbW8gY29udHJhdGFkb3M7IG5vIGVzIHVuIGluY3VtcGxpbWllbnRvIGRlIGRpc2XDsW8gcG9yIHPDrSBtaXNtby5gKTsKIGNvbnN0IHRvdGFsPXN0YXRlLmNvbHMqc3RhdGUucm93cyxmcmVlPXRvdGFsLW1vZHVzZWQoKTtpZihmcmVlPE1hdGguY2VpbCh0b3RhbCouMSkpZXJyKCd3YXJuJywnUmVzZXJ2YSBkZSBlc3BhY2lvJyxgU29sbyBxdWVkYW4gJHtmcmVlfSBtw7NkdWxvcyBsaWJyZXMuIFJlY29tZW5kYWRhIHVuYSByZXNlcnZhIHByw6FjdGljYSBkZSBhbXBsaWFjacOzbiwgYXVucXVlIG5vIGVzIGFxdcOtIHVuYSBleGlnZW5jaWEgUkVCVCBnZW5lcmFsLmApO2Vsc2UgZXJyKCdvaycsJ0h1ZWNvcyBkZSBhbXBsaWFjacOzbicsYCR7ZnJlZX0gZGUgJHt0b3RhbH0gbcOzZHVsb3MgZGlzcG9uaWJsZXMgKCR7TWF0aC5yb3VuZChmcmVlL3RvdGFsKjEwMCl9ICUpLmApOwogaWYoIWFsbC5zb21lKGQ9PmQudHlwZT09PSdTUEQnKSllcnIoJ3dhcm4nLCdTb2JyZXRlbnNpb25lcycsJ05vIGhhcyByZXByZXNlbnRhZG8gcHJvdGVjdG9yIGRlIHNvYnJldGVuc2lvbmVzLiBFdmFsdWFyIG5lY2VzaWRhZCBjb25mb3JtZSBJVEMtQlQtMjMgeSBjb25kaWNpb25lcyBkZSBzdW1pbmlzdHJvLicpO2Vsc2UgZXJyKCdvaycsJ1Byb3RlY2Npw7NuIGNvbnRyYSBzb2JyZXRlbnNpb25lcyByZXByZXNlbnRhZGEnLCdGYWx0YW4gc2VsZWNjaW9uYXIgdGlwbywgY29vcmRpbmFjacOzbiwgcHJvdGVjY2nDs24gZGUgcmVzcGFsZG8geSBjb25leGnDs24gcmVhbCBzZWfDum4gZmFicmljYW50ZS9JVEMtQlQtMjMuJyk7CiBmb3IoY29uc3QgZCBvZiBhbGwuZmlsdGVyKHg9PngudHlwZT09PSdQSUExJykpZXJyKCd3YXJuJyxgJHtkLm5hbWV9OiBmb3JtYXRvIGNvbXBhY3RvYCwnQ29tcHJvYmFyIHF1ZSBlbCBtb2RlbG8gZGUgMSBtw7NkdWxvIHNlYSByZWFsbWVudGUgMVArTiBkZSBjb3J0ZSBvbW5pcG9sYXIsIHBvZGVyIGRlIGNvcnRlIHkgY29tcGF0aWJpbGlkYWQgY29uIHBlaW5lLicpOwogcmV0dXJuIGNoZWNrc30KZnVuY3Rpb24gZGV2aWNlSHRtbChkKXtjb25zdCB0PVRZUEVTW2QudHlwZV0sY2lyYz1pc0NpcmN1aXQoZCk/ZC5jaXJjdWl0OicnLHNlbGVjdGVkQ2xzPXNlbGVjdGVkPT09ZC5pZD8nIHNlbGVjdGVkJzonJyxtaW5pPWQubW9kcz09PTE/JyBuYXJyb3cnOicnLHN0YXR1cz1kZXZpY2VBY3RpdmUoZCkscj1kLnR5cGU9PT0nSUQnP2Ake2QuYW1wfUEgwrcgJHtkLnJkY31tQWA6ZC50eXBlPT09J1NQRCc/J1QyKic6ZC50eXBlPT09J0JMQU5LJz8n4oCUJzpgJHtkLmFtcH1BYCxuYW1lPWlzQ2lyY3VpdChkKT9kLm5hbWV8fGNpcmM6ZC5uYW1lOwogcmV0dXJuIGA8ZGl2IGNsYXNzPSJkZXZpY2Uke3NlbGVjdGVkQ2xzfSR7bWluaX0iIGRhdGEtaWQ9IiR7ZXNjKGQuaWQpfSIgc3R5bGU9ImxlZnQ6Y2FsYygke2QucG9zJXN0YXRlLmNvbHN9ICogdmFyKC0tcGl0Y2gpKTt3aWR0aDpjYWxjKCR7ZC5tb2RzfSAqIHZhcigtLXBpdGNoKSAtIDJweCk7LS10b25lOiR7dC5jb2xvcn0iIHRpdGxlPSIke2VzYyh0Lm5hbWUpfSDCtyAke2VzYyhuYW1lKX0iPjxkaXYgY2xhc3M9ImQtbGluZSI+PC9kaXY+PGRpdiBjbGFzcz0iZC1icmFuZCI+JHtkLnR5cGU9PT0nQkxBTksnPydSRVNFUlZBJzonSU5UQVEgTEFCJ308L2Rpdj48ZGl2IGNsYXNzPSJkLWNvZGUiPiR7ZXNjKGlzQ2lyY3VpdChkKT9jaXJjOnQuc2hvcnQpfTwvZGl2PjxkaXYgY2xhc3M9ImQtcmF0aW5nIj4ke2VzYyhyKX08L2Rpdj48YnV0dG9uIGNsYXNzPSJkLXN3aXRjaCAke2Qub24/J29uJzonb2ZmJ30iIGRhdGEtYWN0aW9uPSJ0b2dnbGUiIGRhdGEtaWQ9IiR7ZXNjKGQuaWQpfSIgdGl0bGU9IkFjdGl2YXIvZGVzYWN0aXZhciBzaW11bGFjacOzbiI+PHNwYW4+PC9zcGFuPjwvYnV0dG9uPjxkaXYgY2xhc3M9ImQtbGFiZWwiPiR7ZXNjKG5hbWUpfTwvZGl2PjwvZGl2PmB9CmZ1bmN0aW9uIGNhdGFsb2dUaWxlcyhvbmx5KXtsZXQgZ3JvdXBzPW9ubHk/Q0FURUdPUlk6Q0FURUdPUlk7cmV0dXJuIGdyb3Vwcy5tYXAoKFt0aXRsZSxjb2Rlc10pPT5gPGRpdiBjbGFzcz0ic2VjdGlvbi1sYWJlbCI+JHt0aXRsZX08L2Rpdj48ZGl2IGNsYXNzPSJjYXRhbG9nLWdyb3VwIj4ke2NvZGVzLm1hcCh0eXBlPT57bGV0IHQ9VFlQRVNbdHlwZV07cmV0dXJuIGA8YnV0dG9uIGNsYXNzPSJjYXRhbG9nLXRpbGUiIGRhdGEtYWN0aW9uPSJhZGQtZGV2aWNlIiBkYXRhLXR5cGU9IiR7dHlwZX0iIHN0eWxlPSItLXRvbmU6JHt0LmNvbG9yfSI+PGRpdiBjbGFzcz0idGlsZS1pY29uIj4ke3Quc2hvcnR9PC9kaXY+PGRpdiBjbGFzcz0idGlsZS1pbmZvIj48c3Ryb25nPiR7dC5uYW1lfTwvc3Ryb25nPjxzbWFsbD4ke3QuZGVzY30gwrcgJHt0Lm1vZHN9TTwvc21hbGw+PC9kaXY+PHNwYW4gY2xhc3M9InRpbGUtcGx1cyI+Kzwvc3Bhbj48L2J1dHRvbj5gfSkuam9pbignJyl9PC9kaXY+YCkuam9pbignJyl9CmZ1bmN0aW9uIHN0YXR1c0Zvcigpe2xldCBpc3N1ZXM9dmFsaWRhdGUoKSxlcnJvcnM9aXNzdWVzLmZpbHRlcih4PT54LnNldmVyaXR5PT09J2Vycm9yJykubGVuZ3RoLHdhcm5pbmdzPWlzc3Vlcy5maWx0ZXIoeD0+eC5zZXZlcml0eT09PSd3YXJuJykubGVuZ3RoO3JldHVybiB7aXNzdWVzLGVycm9ycyx3YXJuaW5nc319CmZ1bmN0aW9uIHJlbmRlcigpe2xldCBwcmV2U2Nyb2xsPVsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcucmFjay1zY3JvbGwnKV0ubWFwKHg9Pnguc2Nyb2xsTGVmdCkscz1zdGF0dXNGb3IoKSx0b3RhbD1zdGF0ZS5yb3dzKnN0YXRlLmNvbHMsdXNlZD1tb2R1c2VkKCksbG9hZD1yZWNhbGNTaW1wbGUoKSxpZz1zdGF0ZS5kZXZpY2VzLmZpbmQoeD0+eC50eXBlPT09J0lHQScpOwogZWwoJ3Byb2plY3QtdGl0bGUnKS50ZXh0Q29udGVudD1zdGF0ZS5uYW1lO2VsKCdoZWFkbW9kdWxlcycpLnRleHRDb250ZW50PWAke3VzZWR9LyR7dG90YWx9YDtlbCgnaGVhZGNoZWNrJykudGV4dENvbnRlbnQ9YCR7cy5lcnJvcnMrcy53YXJuaW5nc31gOwogZWwoJ3N0YXRzJykuaW5uZXJIVE1MPWA8ZGl2IGNsYXNzPSJzdGF0Ij48c21hbGw+RXNwYWNpbyB1dGlsaXphZG88L3NtYWxsPjxzdHJvbmc+JHt1c2VkfTxlbT4vICR7dG90YWx9IE08L2VtPjwvc3Ryb25nPjxkaXYgY2xhc3M9InByb2dyZXNzIj48c3BhbiBzdHlsZT0id2lkdGg6JHt1c2VkL3RvdGFsKjEwMH0lIj48L3NwYW4+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic3RhdCI+PHNtYWxsPkNpcmN1aXRvczwvc21hbGw+PHN0cm9uZz4ke3N0YXRlLmRldmljZXMuZmlsdGVyKGlzQ2lyY3VpdCkubGVuZ3RofTwvc3Ryb25nPjxzcGFuIGNsYXNzPSJzdGF0dXNtaW5pIj4ke3N0YXRlLmdyYWRlPT09J2hpZ2gnPydFbGVjdHJpZmljYWNpw7NuIGVsZXZhZGEnOidFbGVjdHJpZmljYWNpw7NuIGLDoXNpY2EnfTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzdGF0Ij48c21hbGw+Q2FyZ2Egc2ltdWxhZGE8L3NtYWxsPjxzdHJvbmc+JHsobG9hZC8xMDAwKS50b0ZpeGVkKDEpfTxlbT5rVzwvZW0+PC9zdHJvbmc+PHNwYW4gY2xhc3M9InN0YXR1c21pbmkiPiR7KGxvYWQvMjMwKS50b0ZpeGVkKDEpfSBBIMK3IGNhcmdhcyBkZWNsYXJhZGFzPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InN0YXQiPjxzbWFsbD5Db21wcm9iYWNpb25lczwvc21hbGw+PHN0cm9uZyBjbGFzcz0iJHtzLmVycm9ycz8nd2Fybic6J2dvb2QnfSI+JHtzLmVycm9ycz9zLmVycm9ycysnICEnOnMud2FybmluZ3M/J1JldmlzYXInOidPSyd9PC9zdHJvbmc+PHNwYW4gY2xhc3M9InN0YXR1c21pbmkiPiR7cy5lcnJvcnN9IGluY2lkZW5jaWFzIMK3ICR7cy53YXJuaW5nc30gYXZpc29zPC9zcGFuPjwvZGl2PmA7CiBlbCgnc2lkZWJhci1jYXRhbG9nJykuaW5uZXJIVE1MPWNhdGFsb2dUaWxlcyh0cnVlKTsKIGNvbnN0IHJhaWxzPUFycmF5LmZyb20oe2xlbmd0aDpzdGF0ZS5yb3dzfSwoXyxyKT0+YDxkaXYgY2xhc3M9InJhY2st
b3V0ZXIiPjxkaXYgY2xhc3M9InJhY2staGQiPjxzcGFuPkNBUlJJTCBESU4gJHtyKzF9PC9zcGFuPjxzcGFuPiR7c29ydGVkKCkuZmlsdGVyKHg9Pk1hdGguZmxvb3IoeC5wb3Mvc3RhdGUuY29scyk9PT1yKS5yZWR1Y2UoKG4sZCk9Pm4rZC5tb2RzLDApfS8ke3N0YXRlLmNvbHN9IG3Ds2R1bG9zPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InJhY2stc2Nyb2xsIj48ZGl2IGNsYXNzPSJyYWNrLXRyYWNrIiBkYXRhLXJvdz0iJHtyfSIgc3R5bGU9Ii0tY29sczoke3N0YXRlLmNvbHN9Ij4ke0FycmF5LmZyb20oe2xlbmd0aDpzdGF0ZS5jb2xzfSwoXyxpKT0+YDxkaXYgY2xhc3M9InNsb3QtbnVtIiBzdHlsZT0ibGVmdDpjYWxjKCR7aX0gKiB2YXIoLS1waXRjaCkpIj4ke2krMX08L2Rpdj5gKS5qb2luKCcnKX0ke3NvcnRlZCgpLmZpbHRlcih4PT5NYXRoLmZsb29yKHgucG9zL3N0YXRlLmNvbHMpPT09cikubWFwKGRldmljZUh0bWwpLmpvaW4oJycpfTwvZGl2PjwvZGl2PjwvZGl2PmApLmpvaW4oJycpOwogZWwoJ2JvYXJkJykuaW5uZXJIVE1MPWA8ZGl2IGNsYXNzPSJwYW5lbCI+PGRpdiBjbGFzcz0icmFpbC10b3AiPjxkaXY+PGgyPkRpc3RyaWJ1Y2nDs24gZsOtc2ljYSBkZWwgY3VhZHJvPC9oMj48ZGl2IGNsYXNzPSJ0aW55IiBzdHlsZT0ibWFyZ2luLXRvcDo1cHgiPiR7c3RhdGUucm93c30gZmlsYXMgw5cgJHtzdGF0ZS5jb2xzfSBtw7NkdWxvcyDCtyAkeyhzdGF0ZS5jb2xzKnN0YXRlLnJvd3MqMTgpfSBtbSBkZSBjYXJyaWwgdGXDs3JpY288L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJyYWlsLXRhZ3MiPjxzcGFuIGNsYXNzPSJ0YWcgZ3JlZW4iPuKXjyBEaXNlw7FvIGVkaXRhYmxlPC9zcGFuPjxzcGFuIGNsYXNzPSJ0YWciPjIzMCBWIMK3IDFGK048L3NwYW4+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iYm9hcmQtc2hlbGwiPjxkaXYgY2xhc3M9ImJvYXJkLWlubmVyIj4ke3JhaWxzfTwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImJvYXJkLWZvb3RlciI+PHNwYW4gY2xhc3M9InRpbnkiPvCfkYYgUHVsc2EgdW4gYXBhcmF0byBwYXJhIGVkaXRhcmxvLiA8Yj5NYW50ZW5sbyB5IGFycsOhc3RyYWxvPC9iPiBjb24gZWwgZGVkbyBwYXJhIG1vdmVybG8uIFRvY2EgbGEgcGFsYW5jYSBwYXJhIGVuY2VuZGVyIG8gYXBhZ2FyIGxhIHNpbXVsYWNpw7NuLjwvc3Bhbj48ZGl2IGNsYXNzPSJib2FyZC10b29scyI+PGJ1dHRvbiBjbGFzcz0iYnRuIHNtYWxsIiBkYXRhLWFjdGlvbj0iYXV0b2FycmFuZ2UiPuKYtyBPcmRlbmFyPC9idXR0b24+PGJ1dHRvbiBjbGFzcz0iYnRuIHNtYWxsIiBkYXRhLWFjdGlvbj0icmVkbyI+4oa3IFJlaGFjZXI8L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJidG4gc21hbGwgcHJpbWFyeSIgZGF0YS1hY3Rpb249ImdvIiBkYXRhLXZpZXc9ImNhdGFsb2ciPu+8iyBBw7FhZGlyPC9idXR0b24+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iaGludCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxOHB4Ij7ik5g8L3NwYW4+PHNwYW4+PGI+Q29uZXhpb25lcyBlbMOpY3RyaWNhczo8L2I+IGxhIHBvc2ljacOzbiB2aXN1YWwgZW4gZWwgY2FycmlsIG5vIGltcGxpY2EgY29uZXhpw7NuLiBBc2lnbmEgY2FkYSBQSUEgYSBzdSBkaWZlcmVuY2lhbCBlbiBzdXMgcHJvcGllZGFkZXM7IGNvbnN1bHRhIGxhIHRvcG9sb2fDrWEgb3JpZW50YXRpdmEgZW4gwqtFc3F1ZW1hwrsuPC9zcGFuPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InBhbmVsIj48ZGl2IGNsYXNzPSJwYW5lbC1oZWFkIj48aDI+Q2lyY3VpdG9zIGluc3RhbGFkb3M8L2gyPjxidXR0b24gY2xhc3M9ImJ0biBzbWFsbCIgZGF0YS1hY3Rpb249ImdvIiBkYXRhLXZpZXc9ImNhdGFsb2ciPisgQcOxYWRpcjwvYnV0dG9uPjwvZGl2PiR7cmVuZGVyQ2lyY3VpdENhcmRzKCl9PC9kaXY+YDsKIGVsKCdjYXRhbG9nJykuaW5uZXJIVE1MPWA8ZGl2IGNsYXNzPSJwYW5lbCI+PGRpdiBjbGFzcz0icGFuZWwtaGVhZCI+PGgyPkJpYmxpb3RlY2EgZGUgY29tcG9uZW50ZXM8L2gyPjxzcGFuIGNsYXNzPSJ0aW55Ij5QdWxzYSArIHBhcmEgY29sb2Nhcjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ0d28tY29sIj48ZGl2PiR7Y2F0YWxvZ1RpbGVzKCl9PC9kaXY+PGRpdj48ZGl2IGNsYXNzPSJzZWN0aW9uLWxhYmVsIj5DaXJjdWl0b3MgZGUgdml2aWVuZGEgwrcgSVRDLUJULTI1PC9kaXY+JHtDSVJHUk9VUC5tYXAoKFt0aXRsZSxrZXlzXSk9PmA8ZGl2IGNsYXNzPSJzZWN0aW9uLWxhYmVsIj4ke3RpdGxlfTwvZGl2PiR7a2V5cy5tYXAoYz0+YDxkaXYgY2xhc3M9ImNpcmN1aXQtcm93Ij48ZGl2IGNsYXNzPSJpZHgiPiR7Yy5yZXBsYWNlKCdDNCcsJ0M0wrcnKX08L2Rpdj48ZGl2IGNsYXNzPSJjaS1ib2R5Ij48c3Ryb25nPiR7Q0lSW2NdLm5hbWV9PC9zdHJvbmc+PHNtYWxsPiR7Q0lSW2NdLmFtcH0gQSDCtyAke3NlY3Rpb25MYWJlbChDSVJbY10uc2VjdGlvbil9JHtDSVJbY10ubWF4PycgwrcgbWF4LiAnK0NJUltjXS5tYXgrJyBwdW50b3MnOicnfTwvc21hbGw+PC9kaXY+PGJ1dHRvbiBkYXRhLWFjdGlvbj0iYWRkLWNpcmN1aXQiIGRhdGEtY29kZT0iJHtjfSIgdGl0bGU9IkHDsWFkaXIgJHtjfSI+KzwvYnV0dG9uPjwvZGl2PmApLmpvaW4oJycpfWApLmpvaW4oJycpfTwvZGl2PjwvZGl2PjwvZGl2PmA7CiBlbCgnc2NoZW1lJykuaW5uZXJIVE1MPXJlbmRlclNjaGVtZSgpO2VsKCdjaGVja3MnKS5pbm5lckhUTUw9cmVuZGVyQ2hlY2tzKHMuaXNzdWVzKTtlbCgnYm9tJykuaW5uZXJIVE1MPXJlbmRlckJvbSgpOwogZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnRhYi1wYW5lbCcpLmZvckVhY2goeD0+eC5jbGFzc0xpc3QudG9nZ2xlKCdhY3RpdmUnLHguaWQ9PT12aWV3KSk7ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLm5hdiBidXR0b24nKS5mb3JFYWNoKHg9PnguY2xhc3NMaXN0LnRvZ2dsZSgnYWN0aXZlJyx4LmRhdGFzZXQudmlldz09PXZpZXcpKTtkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcucmFjay1zY3JvbGwnKS5mb3JFYWNoKCh4LGkpPT54LnNjcm9sbExlZnQ9cHJldlNjcm9sbFtpXXx8MCk7CiBzYXZlTG9jYWwoKTt9CmZ1bmN0aW9uIHJlbmRlckNpcmN1aXRDYXJkcygpe2xldCBsaXN0PXNvcnRlZCgpLmZpbHRlcihpc0NpcmN1aXQpO2lmKCFsaXN0Lmxlbmd0aClyZXR1cm4gYDxkaXYgY2xhc3M9ImVtcHR5Ij5Bw7puIG5vIGhhcyBhw7FhZGlkbyBjaXJjdWl0b3MuPC9kaXY+YDsKIHJldHVybiBgPGRpdiBjbGFzcz0idHdvLWNvbCI+JHtsaXN0Lm1hcChkPT57bGV0IHI9c3RhdGUuZGV2aWNlcy5maW5kKHg9PnguaWQ9PT1kLmdyb3VwKSxwY3Q9ZHJvcENhbGMoZCk7cmV0dXJuIGA8ZGl2IGNsYXNzPSJjaXJjdWl0LXJvdyIgc3R5bGU9ImN1cnNvcjpwb2ludGVyIiBkYXRhLWFjdGlvbj0iZWRpdCIgZGF0YS1pZD0iJHtlc2MoZC5pZCl9Ij48ZGl2IGNsYXNzPSJpZHgiPiR7ZXNjKGQuY2lyY3VpdCl9PC9kaXY+PGRpdiBjbGFzcz0iY2ktYm9keSI+PHN0cm9uZz4ke2VzYyhkLm5hbWUpfTwvc3Ryb25nPjxzbWFsbD4ke2QuYW1wfSBBIMK3ICR7c2VjdGlvbkxhYmVsKGQuc2VjdGlvbil9IMK3ICR7cj9lc2Moci5uYW1lKTpkLnR5cGU9PT0nUkNCTyc/J0RpZmVyZW5jaWFsIHByb3Bpbyc6J1NpbiBJRCd9PC9zbWFsbD48ZGl2IGNsYXNzPSJjaXJjdWl0LW1ldGVyIj48c3BhbiBzdHlsZT0id2lkdGg6JHtNYXRoLm1pbihwY3QvMyoxMDAsMTAwKX0lO2JhY2tncm91bmQ6JHtwY3Q+Mz8nI2RjNmI1Nyc6Jyd9Ij48L3NwYW4+PC9kaXY+PC9kaXY+PHNwYW4gY2xhc3M9InBpbGwgJHtkZXZpY2VBY3RpdmUoZCk/J2dyZWVuJzoncmVkJ30iPiR7ZGV2aWNlQWN0aXZlKGQpPydPTic6J09GRid9PC9zcGFuPjwvZGl2PmB9KS5qb2luKCcnKX08L2Rpdj5gO30KZnVuY3Rpb24gcmVuZGVyU2NoZW1lKCl7bGV0IGlnPXN0YXRlLmRldmljZXMuZmluZCh4PT54LnR5cGU9PT0nSUdBJyksc3BkPXN0YXRlLmRldmljZXMuZmlsdGVyKHg9PngudHlwZT09PSdTUEQnKSxncm91cHM9aWRzKCk7bGV0IGxpc3Q9c3RhdGUuZGV2aWNlcy5maWx0ZXIoaXNDaXJjdWl0KSxpbmRlcGVuZGVudHM9bGlzdC5maWx0ZXIoZD0+ZC50eXBlPT09J1JDQk8nKTtsZXQgbm9Hcm91cD1saXN0LmZpbHRlcihkPT5kLnR5cGUhPT0nUkNCTycmJiFncm91cHMuc29tZShyPT5yLmlkPT09ZC5ncm91cCkpOwogY29uc3QgYnJhbmNoSHRtbD1kPT5gPGRpdiBjbGFzcz0iYnJhbmNoIj48ZGl2IHN0eWxlPSJmbGV4OjEiPjxiPiR7ZXNjKGQuY2lyY3VpdCl9IMK3ICR7ZXNjKGQubmFtZSl9PC9iPjxzbWFsbD5QSUEgJHtkLmFtcH0gQSDCtyAke3NlY3Rpb25MYWJlbChkLnNlY3Rpb24pfSDCtyAke2QubGVuZ3RofSBtIMK3IM6UVSDiiYggJHtkcm9wQ2FsYyhkKS50b0ZpeGVkKDIpfSAlPC9zbWFsbD48L2Rpdj48c3BhbiBjbGFzcz0iJHtkZXZpY2VBY3RpdmUoZCk/J29uLW1hcmsnOidvZmYtbWFyayd9Ij4ke2RldmljZUFjdGl2ZShkKT8nT04nOidPRkYnfTwvc3Bhbj48L2Rpdj5gOwogcmV0dXJuIGA8ZGl2IGNsYXNzPSJwYW5lbCI+PGRpdiBjbGFzcz0icGFuZWwtaGVhZCI+PGRpdj48aDI+RXNxdWVtYSBmdW5jaW9uYWwgb3JpZW50YXRpdm88L2gyPjxkaXYgY2xhc3M9InRpbnkiIHN0eWxlPSJtYXJnaW4tdG9wOjVweCI+QWdydXBhY2nDs24gZGVjbGFyYWRhLCBubyBwbGFubyBkZSBjb25leGlvbmFkbyBkZSBib3JuZXM8L2Rpdj48L2Rpdj48c3BhbiBjbGFzcz0icGlsbCI+MUYgKyBOICsgUEU8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0iZGlhZ3JhbSI+PGRpdiBjbGFzcz0iY2hhaW4tbWFpbiI+PGRpdiBjbGFzcz0ic2NoZW1lLW5vZGUiPjxiPlJFRDwvYj48c21hbGw+MjMwIFYgQUM8L3NtYWxsPjwvZGl2PjxzcGFuIGNsYXNzPSJzY2hlbWUtYXJyb3ciPuKftjwvc3Bhbj48ZGl2IGNsYXNzPSJzY2hlbWUtbm9kZSIgc3R5bGU9ImJvcmRlci10b3A6NHB4IHNvbGlkICNlZTlhNDgiPjxiPklHQSAke2lnP2lnLmFtcCsnIEEnOifigJQnfTwvYj48c21hbGw+JHtpZz8oaWcub24/J0NFUlJBRE8nOidBQklFUlRPJyk6J05vIGluc3RhbGFkbyd9PC9zbWFsbD48L2Rpdj48c3BhbiBjbGFzcz0ic2NoZW1lLWFycm93Ij7in7Y8L3NwYW4+PGRpdiBjbGFzcz0ic2NoZW1lLW5vZGUiIHN0eWxlPSJib3JkZXItdG9wOjRweCBzb2xpZCAjYTE3OWQ2Ij48Yj5TUEQgw5cke3NwZC5sZW5ndGh9PC9iPjxzbWFsbD5EZXJpdmFjacOzbio8L3NtYWxsPjwvZGl2PjxzcGFuIGNsYXNzPSJzY2hlbWUtYXJyb3ciPuKftjwvc3Bhbj48ZGl2IGNsYXNzPSJzY2hlbWUtbm9kZSI+PGI+UkVQQVJUTzwvYj48c21hbGw+QSBkaWZlcmVuY2lhbGVzPC9zbWFsbD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJncm91cC1saXN0Ij4ke2dyb3Vwcy5tYXAocj0+e2xldCBjaXJzPWxpc3QuZmlsdGVyKGQ9PmQuZ3JvdXA9PT1yLmlkJiZkLnR5cGUhPT0nUkNCTycpO3JldHVybiBgPGRpdiBjbGFzcz0ici1ncm91cCI+PGRpdiBjbGFzcz0ici1ncm91cC1oZWFkIj48c3Bhbj4ke2VzYyhyLm5hbWUpfSDCtyAke3IuYW1wfSBBIC8gJHtyLnJkY30gbUE8L3NwYW4+PHNwYW4gY2xhc3M9IiR7ci5vbj8nb24tbWFy
ayc6J29mZi1tYXJrJ30iPiR7ci5vbj8nT04nOidPRkYnfTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJyLWdyb3VwLWJvZHkiPiR7Y2lycy5sZW5ndGg/Y2lycy5tYXAoYnJhbmNoSHRtbCkuam9pbignJyk6JzxzcGFuIGNsYXNzPSJ0aW55Ij5TaW4gY2lyY3VpdG9zIGFzaWduYWRvczwvc3Bhbj4nfTwvZGl2PjwvZGl2PmB9KS5qb2luKCcnKX0ke2luZGVwZW5kZW50cy5sZW5ndGg/YDxkaXYgY2xhc3M9InItZ3JvdXAiPjxkaXYgY2xhc3M9InItZ3JvdXAtaGVhZCI+UkNCTyDCtyBwcm90ZWNjacOzbiBpbmRpdmlkdWFsPC9kaXY+PGRpdiBjbGFzcz0ici1ncm91cC1ib2R5Ij4ke2luZGVwZW5kZW50cy5tYXAoYnJhbmNoSHRtbCkuam9pbignJyl9PC9kaXY+PC9kaXY+YDonJ30ke25vR3JvdXAubGVuZ3RoP2A8ZGl2IGNsYXNzPSJyLWdyb3VwIiBzdHlsZT0iYm9yZGVyLWNvbG9yOiNlYWIwYWMiPjxkaXYgY2xhc3M9InItZ3JvdXAtaGVhZCIgc3R5bGU9ImJhY2tncm91bmQ6I2ZmZjBlZiI+4pqgIENpcmN1aXRvcyBzaW4gZGlmZXJlbmNpYWw8L2Rpdj48ZGl2IGNsYXNzPSJyLWdyb3VwLWJvZHkiPiR7bm9Hcm91cC5tYXAoYnJhbmNoSHRtbCkuam9pbignJyl9PC9kaXY+PC9kaXY+YDonJ308L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJub3RlLXJvdyI+KiBMYSBwcm90ZWNjacOzbiBkZSBzb2JyZXRlbnNpb25lcyBzZSBkaWJ1amEgY29tbyByZWZlcmVuY2lhIGRlIHByZXNlbmNpYSwgbm8gY29tbyB1biBjb25leGlvbmFkbyBzZXJpZSBjb3JyZWN0by4gRWwgZXNxdWVtYSByZWFsIGRlcGVuZGUgZGUgZXF1aXBvLCBwdWVzdGEgYSB0aWVycmEsIHByb3RlY2Npw7NuIGRlIHJlc3BhbGRvLCBzZWxlY3RpdmlkYWQsIGFsaW1lbnRhY2nDs24geSBkb2N1bWVudGFjacOzbiBkZWwgZmFicmljYW50ZS4gTGEgYmFycmEgUEUgeSBsb3MgY29uZHVjdG9yZXMgbm8gc2UgZGV0YWxsYW4gYXF1w60uPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0icGFuZWwiPjxkaXYgY2xhc3M9InBhbmVsLWhlYWQiPjxoMj5CYWxhbmNlIHNpbXVsYWRvIGRlIGNhcmdhPC9oMj48c3BhbiBjbGFzcz0icGlsbCI+Tm8gbWlkZSBjb25zdW1vIHJlYWw8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic3RhdHJvdyI+PGRpdj48c3BhbiBjbGFzcz0idGlueSI+Q2FyZ2FzIGFjdGl2YXMgZGVjbGFyYWRhczwvc3Bhbj48ZGl2IHN0eWxlPSJmb250LXNpemU6MjdweDtmb250LXdlaWdodDo4NTAiPiR7KHJlY2FsY1NpbXBsZSgpLzEwMDApLnRvRml4ZWQoMil9IGtXPC9kaXY+PC9kaXY+PGRpdj48c3BhbiBjbGFzcz0idGlueSI+SW50ZW5zaWRhZCB0ZcOzcmljYSAoUCAvIDIzMCBWKTwvc3Bhbj48ZGl2IHN0eWxlPSJmb250LXNpemU6MjdweDtmb250LXdlaWdodDo4NTAiPiR7KHJlY2FsY1NpbXBsZSgpLzIzMCkudG9GaXhlZCgxKX0gQTwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9Im1ldGVybGluZSI+PHNwYW4gc3R5bGU9IndpZHRoOiR7TWF0aC5taW4oMTAwLHJlY2FsY1NpbXBsZSgpL01hdGgubWF4KDEsc3RhdGUuY29udHJhY3QpKjEwMCl9JTtiYWNrZ3JvdW5kOiR7cmVjYWxjU2ltcGxlKCk+c3RhdGUuY29udHJhY3Q/JyNlMTgxNTMnOicnfSI+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InN0YXRyb3ciPjxzcGFuIGNsYXNzPSJ0aW55Ij5Qb3RlbmNpYSBjb250cmF0YWRhIGFub3RhZGE6ICR7KHN0YXRlLmNvbnRyYWN0LzEwMDApLnRvRml4ZWQoMil9IGtXPC9zcGFuPjxzcGFuIGNsYXNzPSJwaWxsICR7cmVjYWxjU2ltcGxlKCk+c3RhdGUuY29udHJhY3Q/J2dvbGQnOidncmVlbid9Ij4ke3JlY2FsY1NpbXBsZSgpPnN0YXRlLmNvbnRyYWN0PydDYXJnYSBkZWNsYXJhZGEgc3VwZXJpb3IgYWwgY29udHJhdG8nOidEZW50cm8gZGVsIGNvbnRyYXRvIGRlY2xhcmFkbyd9PC9zcGFuPjwvZGl2PjxwIGNsYXNzPSJzdWJub3RlIj5FcyB1bmEgc3VtYSBkZSBwb3RlbmNpYXMgaW50cm9kdWNpZGFzIGRlIGxvcyBjaXJjdWl0b3MgZW5jZW5kaWRvcywgc2luIGZhY3RvcmVzIGRlIHNpbXVsdGFuZWlkYWQgbmkgY8OhbGN1bG8gZGUgZGlzcGFybyBkZSBpbnRlcnJ1cHRvcmVzLCBjdXJ2YSB0w6lybWljYSBvIGVuZXJnw61hIHJlYWwuIExhIHBvdGVuY2lhIGNvbnRyYXRhZGEgbm8gZGV0ZXJtaW5hIGF1dG9tw6F0aWNhbWVudGUgZWwgSUdBLjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJwYW5lbCBoaWRlLXByaW50Ij48ZGl2IGNsYXNzPSJwYW5lbC1oZWFkIj48ZGl2PjxoMj7imqEgU2ltdWxhZG9yIGRlIGluY2lkZW5jaWFzPC9oMj48ZGl2IGNsYXNzPSJ0aW55IiBzdHlsZT0ibWFyZ2luLXRvcDo0cHgiPlBydWViYSBxdcOpIGNpcmN1aXRvcyBxdWVkYXLDrWFuIGRlc2NvbmVjdGFkb3M8L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+JHtmaWVsZCgnU2VsZWNjaW9uYSB1biBjaXJjdWl0bycsYDxzZWxlY3QgaWQ9ImZhdWx0LWNpcmN1aXQiPiR7bGlzdC5tYXAoZD0+YDxvcHRpb24gdmFsdWU9IiR7ZXNjKGQuaWQpfSI+JHtlc2MoZC5jaXJjdWl0KX0gwrcgJHtlc2MoZC5uYW1lKX08L29wdGlvbj5gKS5qb2luKCcnKX08L3NlbGVjdD5gLHRydWUpfTwvZGl2PjxkaXYgY2xhc3M9InNoZWV0LWJ1dHRvbnMiPjxidXR0b24gY2xhc3M9ImJ0biIgZGF0YS1hY3Rpb249ImZhdWx0LWVhcnRoIj7imqEgRnVnYSBhIHRpZXJyYTwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biIgZGF0YS1hY3Rpb249ImZhdWx0LW92ZXJsb2FkIj7imqAgU29icmVjYXJnYTwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biIgZGF0YS1hY3Rpb249ImZhdWx0LW1haW4iPuKXryBDb3J0ZSBnZW5lcmFsPC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0ic2hlZXQtYnV0dG9ucyI+PGJ1dHRvbiBjbGFzcz0iYnRuIHByaW1hcnkiIGRhdGEtYWN0aW9uPSJyZXNldC1wb3dlciI+4oa6IFJlYXJtYXIgdG9kb3MgbG9zIGFwYXJhdG9zPC9idXR0b24+PC9kaXY+PHAgY2xhc3M9InN1Ym5vdGUiPlJlcHJlc2VudGFjacOzbiBsw7NnaWNhIHNpbXBsaWZpY2FkYTogdW5hIGZ1Z2EgYWJyZSBlbCBkaWZlcmVuY2lhbCBhc29jaWFkbyB5IGRlc2NvbmVjdGEgc3UgZ3J1cG87IHVuYSBzb2JyZWNhcmdhIGFicmUgc29sbyBlbCBhdXRvbcOhdGljbyBlbGVnaWRvLiBObyBzZSBjYWxjdWxhbiB1bWJyYWxlcywgc2VsZWN0aXZpZGFkIHRlbXBvcmFsIG5pIGRpc3Bhcm9zIGbDrXNpY29zLjwvcD48L2Rpdj5gO30KZnVuY3Rpb24gcmVuZGVyQ2hlY2tzKGlzc3Vlcyl7bGV0IGVycj1pc3N1ZXMuZmlsdGVyKHg9Pnguc2V2ZXJpdHk9PT0nZXJyb3InKS5sZW5ndGgsd2Fybj1pc3N1ZXMuZmlsdGVyKHg9Pnguc2V2ZXJpdHk9PT0nd2FybicpLmxlbmd0aCxvaz1pc3N1ZXMuZmlsdGVyKHg9Pnguc2V2ZXJpdHk9PT0nb2snKS5sZW5ndGg7cmV0dXJuIGA8ZGl2IGNsYXNzPSJwYW5lbCI+PGRpdiBjbGFzcz0icGFuZWwtaGVhZCI+PGRpdj48aDI+VmVyaWZpY2FjacOzbiBvcmllbnRhdGl2YSBSRUJUPC9oMj48ZGl2IGNsYXNzPSJ0aW55IiBzdHlsZT0ibWFyZ2luLXRvcDo1cHgiPlJldmlzaW9uZXMgYXV0b21hdGl6YWRhcyB5IGN1ZXN0aW9uZXMgcGFyYSBjb21wcm9iYXI8L2Rpdj48L2Rpdj48YnV0dG9uIGNsYXNzPSJidG4gc21hbGwiIGRhdGEtYWN0aW9uPSJwcmludCI+4o6ZIFBERjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9InNjaGVtZS1rcGlzIj48c3BhbiBjbGFzcz0icGlsbCByZWQiPiR7ZXJyfSBpbmNpZGVuY2lhczwvc3Bhbj48c3BhbiBjbGFzcz0icGlsbCBnb2xkIj4ke3dhcm59IGF2aXNvczwvc3Bhbj48c3BhbiBjbGFzcz0icGlsbCBncmVlbiI+JHtva30gcHVudG9zIGNvcnJlY3Rvczwvc3Bhbj48L2Rpdj4ke2lzc3Vlcy5tYXAoaT0+YDxkaXYgY2xhc3M9InRlc3Qtcm93Ij48ZGl2IGNsYXNzPSJ0ZXN0LWljbyAke2kuc2V2ZXJpdHl9Ij4ke2kuc2V2ZXJpdHk9PT0nb2snPyfinJMnOmkuc2V2ZXJpdHk9PT0nd2Fybic/JyEnOifDlyd9PC9kaXY+PGRpdj48c3Ryb25nPiR7ZXNjKGkudGl0bGUpfTwvc3Ryb25nPjxwPiR7ZXNjKGkuZGV0YWlsKX08L3A+PC9kaXY+PC9kaXY+YCkuam9pbignJyl9PC9kaXY+PGRpdiBjbGFzcz0icGFuZWwiPjxoMj5MbyBxdWUgZWwgc2ltdWxhZG9yIHRvZGF2w61hIG5vIGNlcnRpZmljYTwvaDI+PHAgY2xhc3M9InN1Ym5vdGUiPlBvZGVyIGRlIGNvcnRlIHkgY29ydG9jaXJjdWl0byBwcmV2aXN0bywgc2VjY2nDs24gcmVhbCBkZSBkZXJpdmFjacOzbiBpbmRpdmlkdWFsLCBtb2RvcyBkZSBpbnN0YWxhY2nDs24sIGludGVuc2lkYWRlcyBhZG1pc2libGVzIHkgZmFjdG9yZXMgZGUgY29ycmVjY2nDs24sIGNvbnRpbnVpZGFkIGRlbCBQRSwgdGllcnJhcywgc2VsZWN0aXZpZGFkLCBwcm90ZWNjacOzbiBjb250cmEgc29icmV0ZW5zaW9uZXMgY29uY3JldGEsIGVuc2F5byBkZSBkaWZlcmVuY2lhbGVzLCBlc3F1ZW1hIHRyaWbDoXNpY28sIGNvbXBhdGliaWxpZGFkIHBlaW5lcyB5IGJvcm5lcywgZXhpZ2VuY2lhcyBhdXRvbsOzbWljYXMgeSBkZWwgZmFicmljYW50ZSwgZG9jdW1lbnRhY2nDs24geSBib2xldMOtbi4gUGFyYSB2YWxpZGFjacOzbiByZWdsYW1lbnRhcmlhIHNlIHJlcXVpZXJlIGVzdHVkaW8gcmVhbCB5IGNvbXByb2JhY2nDs24gcHJvZmVzaW9uYWwuPC9wPjxwIGNsYXNzPSJzdWJub3RlIj48YSBocmVmPSJodHRwczovL3d3dy5ib2UuZXMvYnVzY2FyL2FjdC5waHA/aWQ9Qk9FLUEtMjAwMi0xODA5OSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9yZWZlcnJlciI+Q29uc3VsdGFyIFJFQlQgY29uc29saWRhZG8gKEJPRSkg4oaXPC9hPjwvcD48L2Rpdj5gO30KZnVuY3Rpb24gcmVuZGVyQm9tKCl7bGV0IGFycj1zb3J0ZWQoKSxjb3VudHM9e307Zm9yKGxldCBkIG9mIGFycil7bGV0IGs9YCR7ZC50eXBlfXwke2QuYW1wfXwke2QucmRjfHwwfXwke2QubW9kc31gO2lmKCFjb3VudHNba10pY291bnRzW2tdPXtkLG46MH07Y291bnRzW2tdLm4rK31sZXQgdG90PXN0YXRlLmNvbHMqc3RhdGUucm93cyxmcmVlPXRvdC1tb2R1c2VkKCk7bGV0IHJvd3M9T2JqZWN0LnZhbHVlcyhjb3VudHMpLm1hcCgoe2Qsbn0pPT57bGV0IHQ9VFlQRVNbZC50eXBlXTtyZXR1cm4gYDx0cj48dGQ+PHN0cm9uZz4ke2VzYyh0Lm5hbWUpfTwvc3Ryb25nPjxzbWFsbD4ke2VzYyhkLnR5cGUpfTwvc21hbGw+PC90ZD48dGQ+JHtkLmFtcD9kLmFtcCsnIEEnOifigJQnfSR7ZC50eXBlPT09J0lEJz8nIC8gJytkLnJkYysnIG1BJzonJ308L3RkPjx0ZD4ke2QubW9kc30gTTwvdGQ+PHRkPjxiPiR7bn08L2I+PC90ZD48dGQ+JHtuKmQubW9kc30gTTwvdGQ+PC90cj5gfSkuam9pbignJyk7bGV0IGNpcmN1aXRSb3dzPWFyci5maWx0ZXIoaXNDaXJjdWl0KS5tYXAoZD0+YDx0cj48dGQ+PHN0cm9uZz4ke2VzYyhkLmNpcmN1aXQpfSAke2VzYyhkLm5hbWUpfTwvc3Ryb25nPjwvdGQ+PHRkPiR7ZC5hbXB9IEE8L3RkPjx0ZD4ke3NlY3Rpb25MYWJlbChkLnNlY3Rpb24pfTwvdGQ+PHRkPiR7ZC5wb2ludHN9PC90ZD48dGQ+JHtkLmxlbmd0aH0gbTwvdGQ+PC90cj5gKS5qb2luKCcnKTtyZXR1cm4gYDxkaXYgY2xhc3M9InBhbmVsIj48ZGl2IGNsYXNzPSJwYW5lbC1oZWFk
Ij48ZGl2PjxoMj5MaXN0YSBkZSBtYXRlcmlhbGVzPC9oMj48ZGl2IGNsYXNzPSJ0aW55IiBzdHlsZT0ibWFyZ2luLXRvcDo0cHgiPkN1YW50aWZpY2FjacOzbiBkZWwgbW9kZWxvLCBzaW4gcmVmZXJlbmNpYXMgY29tZXJjaWFsZXM8L2Rpdj48L2Rpdj48YnV0dG9uIGNsYXNzPSJidG4gc21hbGwgcHJpbWFyeSIgZGF0YS1hY3Rpb249ImNzdiI+4oaTIENTVjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9InRhYmxlLXdyYXAiPjx0YWJsZSBjbGFzcz0iZGF0YS10YWJsZSI+PHRoZWFkPjx0cj48dGg+Q29tcG9uZW50ZTwvdGg+PHRoPkNhbGlicmU8L3RoPjx0aD5BbmNodXJhPC90aD48dGg+VWRzLjwvdGg+PHRoPlRvdGFsPC90aD48L3RyPjwvdGhlYWQ+PHRib2R5PiR7cm93c3x8Jzx0cj48dGQgY29sc3Bhbj0iNSI+U2luIG1hdGVyaWFsZXM8L3RkPjwvdHI+J308L3Rib2R5PjwvdGFibGU+PC9kaXY+PGRpdiBjbGFzcz0ic3RhdHJvdyI+PHN0cm9uZz5FbnZvbHZlbnRlIHByb3B1ZXN0YTogJHtzdGF0ZS5yb3dzfSDDlyAke3N0YXRlLmNvbHN9IG3Ds2R1bG9zICgke3RvdH0gTSk8L3N0cm9uZz48c3BhbiBjbGFzcz0icGlsbCAke2ZyZWU8PTI/J2dvbGQnOidncmVlbid9Ij4ke2ZyZWV9IE0gbGlicmVzPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImtwaS13YXJuIj5NYXRlcmlhbCBhdXhpbGlhciBhIHByZXN1cHVlc3RhciB5IHZlcmlmaWNhciBhcGFydGU6IGVudm9sdmVudGUgY29uIElQL0lLIGFkZWN1YWRvLCBwZWluZXMgZGUgZGlzdHJpYnVjacOzbiBjb21wYXRpYmxlcyBjb24gbGEgZ2FtYSBleGFjdGEgeSBvcmllbnRhY2nDs24gZGUgYm9ybmVzLCBib3JuYXMgTi9QRSwgcG9zaWJsZXMgYmxvcXVlcyByZXBhcnRpZG9yZXMsIGNhYmxlYWRvIGZsZXhpYmxlL3Rlcm1pbmFsZXMsIGNvbmV4aW9uYWRvIFNQRCBzZWfDum4gZmFicmljYW50ZSwgdGFwZXRhcywgbWFyY2Fkb3JlcyB5IHJvdHVsYWNpw7NuLiBObyBzZSBwcmVzdXB1ZXN0YW4gbG9uZ2l0dWRlcyByZWFsZXMgbmkgY29tcGF0aWJpbGlkYWQgZW50cmUgc2VyaWVzIHkgbWFyY2FzLjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InBhbmVsIj48ZGl2IGNsYXNzPSJwYW5lbC1oZWFkIj48aDI+UmVsYWNpw7NuIGRlIGNpcmN1aXRvcyB5IHNlY2Npb25lczwvaDI+PHNwYW4gY2xhc3M9InBpbGwiPiR7YXJyLmZpbHRlcihpc0NpcmN1aXQpLmxlbmd0aH0gY2lyY3VpdG9zPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InRhYmxlLXdyYXAiPjx0YWJsZSBjbGFzcz0iZGF0YS10YWJsZSI+PHRoZWFkPjx0cj48dGg+Q2lyY3VpdG88L3RoPjx0aD5QSUE8L3RoPjx0aD5TZWNjacOzbiBtb2RlbG88L3RoPjx0aD5QdW50b3M8L3RoPjx0aD5Mb25naXR1ZCBpZGE8L3RoPjwvdHI+PC90aGVhZD48dGJvZHk+JHtjaXJjdWl0Um93c3x8Jzx0cj48dGQgY29sc3Bhbj0iNSI+U2luIGNpcmN1aXRvczwvdGQ+PC90cj4nfTwvdGJvZHk+PC90YWJsZT48L2Rpdj48ZGl2IGNsYXNzPSJzaGVldC1idXR0b25zIGhpZGUtcHJpbnQiPjxidXR0b24gY2xhc3M9ImJ0biIgZGF0YS1hY3Rpb249InNhdmUtanNvbiI+4oepIEd1YXJkYXIgcHJveWVjdG88L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJidG4iIGRhdGEtYWN0aW9uPSJsb2FkLWpzb24iPuKHpyBJbXBvcnRhcjwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biIgZGF0YS1hY3Rpb249InByaW50Ij7ijpkgSW1wcmltaXIgLyBQREY8L2J1dHRvbj48L2Rpdj48L2Rpdj5gO30KZnVuY3Rpb24gc2hvd01vZGFsKGh0bWwpe2VsKCdtb2RhbCcpLmlubmVySFRNTD1gPGRpdiBjbGFzcz0ic2hlZXQiIHJvbGU9ImRpYWxvZyIgYXJpYS1tb2RhbD0idHJ1ZSI+PGRpdiBjbGFzcz0ic2hlZXQtZ3JhYiI+PC9kaXY+JHtodG1sfTwvZGl2PmA7ZWwoJ21vZGFsJykuY2xhc3NMaXN0LmFkZCgnYWN0aXZlJyk7b3BlblNoZWV0PSdvcGVuJ30KZnVuY3Rpb24gY2xvc2VNb2RhbCgpe2VsKCdtb2RhbCcpLmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpO2VsKCdtb2RhbCcpLmlubmVySFRNTD0nJztvcGVuU2hlZXQ9Jyd9CmZ1bmN0aW9uIGZpZWxkKGxhYmVsLGNvbnRlbnQsd2lkZT1mYWxzZSl7cmV0dXJuIGA8ZGl2IGNsYXNzPSJmaWVsZCAke3dpZGU/J3dpZGUnOicnfSI+PGxhYmVsPiR7bGFiZWx9PC9sYWJlbD4ke2NvbnRlbnR9PC9kaXY+YH0KZnVuY3Rpb24gc2VsZWN0KG9wdGlvbnMsdmFsdWUsa2V5KXtyZXR1cm4gYDxzZWxlY3QgZGF0YS1lZGl0PSIke2tleX0iPiR7b3B0aW9ucy5tYXAoKFt2LHRdKT0+YDxvcHRpb24gdmFsdWU9IiR7ZXNjKHYpfSIgJHtTdHJpbmcodik9PT1TdHJpbmcodmFsdWUpPydzZWxlY3RlZCc6Jyd9PiR7ZXNjKHQpfTwvb3B0aW9uPmApLmpvaW4oJycpfTwvc2VsZWN0PmB9CmZ1bmN0aW9uIGlucHV0KHZhbHVlLGtleSx0eXBlPSd0ZXh0JyxhdHRycz0nJyl7cmV0dXJuIGA8aW5wdXQgZGF0YS1lZGl0PSIke2tleX0iIHR5cGU9IiR7dHlwZX0iIHZhbHVlPSIke2VzYyh2YWx1ZSl9IiAke2F0dHJzfT5gfQpmdW5jdGlvbiBlZGl0RGV2aWNlKGlkKXtzZWxlY3RlZD1pZDtjb25zdCBkPXN0YXRlLmRldmljZXMuZmluZCh4PT54LmlkPT09aWQpO2lmKCFkKXJldHVybjt2aWV3PSdib2FyZCc7cmVuZGVyKCk7bGV0IHQ9VFlQRVNbZC50eXBlXSxyTGlzdD1pZHMoKTtsZXQgY2hvaWNlcz1bWycnLCfigJQgU2luIGFzaWduYWNpw7NuIOKAlCddLC4uLnJMaXN0Lm1hcCh4PT5beC5pZCx4Lm5hbWUrJyDCtyAnK3guYW1wKycgQSddKV07bGV0IGlzQz1pc0NpcmN1aXQoZCk7c2hvd01vZGFsKGA8ZGl2IGNsYXNzPSJzaGVldC10b3AiPjxkaXY+PGRpdiBjbGFzcz0iZXllYnJvdyI+UFJPUElFREFERVMgREVMIENPTVBPTkVOVEU8L2Rpdj48aDI+JHtlc2ModC5uYW1lKX08L2gyPjwvZGl2PjxidXR0b24gY2xhc3M9InNoZWV0LWNsb3NlIiBkYXRhLWFjdGlvbj0iY2xvc2UiPsOXPC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGRzIj4ke2ZpZWxkKCdFdGlxdWV0YScsaW5wdXQoZC5uYW1lLCduYW1lJyksJ3dpZGUnKX0ke2ZpZWxkKCdJbnRlbnNpZGFkIGFzaWduYWRhJyxzZWxlY3QoWzAsNiwxMCwxMywxNiwyMCwyNSwzMiw0MCw1MCw2Myw4MCwxMDBdLm1hcChuPT5bbixuKycgQSddKSxkLmFtcCwnYW1wJykpfSR7ZC50eXBlPT09J0lEJ3x8ZC50eXBlPT09J1JDQk8nP2ZpZWxkKCdUaXBvIGRlIGRpZmVyZW5jaWFsJyxzZWxlY3QoWydBJywnQUMnLCdGJywnQiddLm1hcCh4PT5beCwnVGlwbyAnK3hdKSxkLnJjZHR5cGUsJ3JjZHR5cGUnKSk6Jyd9JHtkLnR5cGU9PT0nSUQnfHxkLnR5cGU9PT0nUkNCTyc/ZmllbGQoJ1NlbnNpYmlsaWRhZCcsc2VsZWN0KFsxMCwzMCwxMDAsMzAwXS5tYXAoeD0+W3gseCsnIG1BJ10pLGQucmRjLCdyZGMnKSk6Jyd9JHtpc0M/ZmllbGQoJ0N1cnZhIFBJQScsc2VsZWN0KFsnQicsJ0MnLCdEJ10ubWFwKHg9Plt4LCdDdXJ2YSAnK3hdKSxkLmN1cnZlLCdjdXJ2ZScpKTonJ30ke2lzQyYmZC50eXBlIT09J1JDQk8nP2ZpZWxkKCdEaWZlcmVuY2lhbCBxdWUgcHJvdGVnZSBlbCBjaXJjdWl0bycsc2VsZWN0KGNob2ljZXMsZC5ncm91cCwnZ3JvdXAnKSx0cnVlKTonJ30ke2lzQz9maWVsZCgnU2VjY2nDs24gZGVsIGNpcmN1aXRvJyxzZWxlY3QoWzEuNSwyLjUsNCw2LDEwLDE2XS5tYXAoeD0+W3gsc2VjdGlvbkxhYmVsKHgpXSksZC5zZWN0aW9uLCdzZWN0aW9uJykpOicnfSR7aXNDP2ZpZWxkKCdQdW50b3MgZGUgdXRpbGl6YWNpw7NuJyxpbnB1dChkLnBvaW50cywncG9pbnRzJywnbnVtYmVyJywnbWluPSIwIiBtYXg9Ijk5OSInKSk6Jyd9JHtpc0M/ZmllbGQoJ0Rpc3RhbmNpYSBoYXN0YSB0b21hIG3DoXMgYWxlamFkYSAobSknLGlucHV0KGQubGVuZ3RoLCdsZW5ndGgnLCdudW1iZXInLCdtaW49IjAiIHN0ZXA9IjAuNSInKSk6Jyd9JHtpc0M/ZmllbGQoJ0NhcmdhIHByZXZpc3RhIHBhcmEgc2ltdWxhciAoVyknLGlucHV0KGQud2F0dHMsJ3dhdHRzJywnbnVtYmVyJywnbWluPSIwIiBzdGVwPSI1MCInKSk6Jyd9PC9kaXY+JHtpc0M/YDxkaXYgY2xhc3M9Im5vdGUtcm93Ij5DYcOtZGEgZXN0aW1hZGEgYSBJbjogPGI+JHtkcm9wQ2FsYyhkKS50b0ZpeGVkKDIpfSAlPC9iPiDCtyBjb25kdWN0b3IgZGUgY29icmUsIGhpcMOzdGVzaXMgMCwwMjI1IM6pwrdtbcKyL20sIHRlbnNpw7NuIDIzMCBWLiBFbCBjw6FsY3VsbyBjb21wbGV0byBwdWVkZSBtb2RpZmljYXIgbGEgc2VjY2nDs24gbmVjZXNhcmlhLjwvZGl2PmA6Jyd9PGRpdiBjbGFzcz0ic2VjdGlvbi1sYWJlbCI+QUpVU1RBUiBQT1NJQ0nDk04gQ09OIFBSRUNJU0nDk048L2Rpdj48ZGl2IGNsYXNzPSJzaGVldC1idXR0b25zIiBzdHlsZT0ibWFyZ2luLXRvcDowIj48YnV0dG9uIGNsYXNzPSJidG4iIGRhdGEtYWN0aW9uPSJudWRnZSIgZGF0YS1vZmZzZXQ9Ii0ke3N0YXRlLmNvbHN9Ij7ihpEgRmlsYSBhbnRlcmlvcjwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biIgZGF0YS1hY3Rpb249Im51ZGdlIiBkYXRhLW9mZnNldD0iLTEiPuKGkDwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biIgZGF0YS1hY3Rpb249Im51ZGdlIiBkYXRhLW9mZnNldD0iMSI+4oaSPC9idXR0b24+PGJ1dHRvbiBjbGFzcz0iYnRuIiBkYXRhLWFjdGlvbj0ibnVkZ2UiIGRhdGEtb2Zmc2V0PSIke3N0YXRlLmNvbHN9Ij7ihpMgRmlsYSBzaWd1aWVudGU8L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJzaGVldC1idXR0b25zIj48YnV0dG9uIGNsYXNzPSJidG4iIGRhdGEtYWN0aW9uPSJkdXBsaWNhdGUiIGRhdGEtaWQ9IiR7ZXNjKGlkKX0iPuKniSBEdXBsaWNhcjwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biBkYW5nZXIiIGRhdGEtYWN0aW9uPSJkZWxldGUiIGRhdGEtaWQ9IiR7ZXNjKGlkKX0iPuKclSBFbGltaW5hcjwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biBwcmltYXJ5IiBkYXRhLWFjdGlvbj0iY2xvc2UiPkhlY2hvIOKckzwvYnV0dG9uPjwvZGl2PmApO30KZnVuY3Rpb24gY29uZmlnKCl7c2hvd01vZGFsKGA8ZGl2IGNsYXNzPSJzaGVldC10b3AiPjxkaXY+PGRpdiBjbGFzcz0iZXllYnJvdyI+UEFSw4FNRVRST1MgREUgUFJPWUVDVE88L2Rpdj48aDI+Q29uZmlndXJhciBjdWFkcm88L2gyPjwvZGl2PjxidXR0b24gY2xhc3M9InNoZWV0LWNsb3NlIiBkYXRhLWFjdGlvbj0iY2xvc2UiPsOXPC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGRzIj4ke2ZpZWxkKCdOb21icmUgZGVsIHByb3llY3RvJyxpbnB1dChzdGF0ZS5uYW1lLCdjZmc6bmFtZScpLHRydWUpfSR7ZmllbGQoJ0dyYWRvIGRlIGVsZWN0cmlmaWNhY2nDs24nLHNlbGVjdChbWydiYXNpYycsJ0LDoXNpY2EgwrcgNSw3NSBrVyddLFsnaGlnaCcsJ0VsZXZhZGEgwrcgOSwyIGtXJ11dLHN0YXRlLmdyYWRlLCdjZmc6Z3JhZGUnKSx0cnVlKX0ke2ZpZWxkKCdTdXBlcmZpY2llIMO6dGlsIChtwrIpJyxpbnB1dChzdGF0ZS5hcmVhLCdjZmc6YXJlYScsJ251bWJlcicsJ21pbj0iMCInKSl9JHtmaWVsZCgnUG90ZW5jaWEgY29udHJhdGFkYSAoVyknLGlucHV0KHN0YXRlLmNvbnRyYWN0LCdjZmc6Y29udHJhY3QnLCdudW1iZXInLCdtaW49IjAiIHN0ZXA9IjEwMCInKSl9JHtm
aWVsZCgnTcOzZHVsb3MgcG9yIGZpbGEnLHNlbGVjdChbMTIsMTgsMjRdLm1hcChuPT5bbixuKycgbcOzZHVsb3MnXSksc3RhdGUuY29scywnY2ZnOmNvbHMnKSl9JHtmaWVsZCgnTsO6bWVybyBkZSBmaWxhcycsc2VsZWN0KFsxLDIsMyw0LDVdLm1hcChuPT5bbixuKycgZmlsYXMnXSksc3RhdGUucm93cywnY2ZnOnJvd3MnKSl9PC9kaXY+PGRpdiBjbGFzcz0ibm90ZS1yb3ciPkFsIGNhbWJpYXIgbGFzIGRpbWVuc2lvbmVzIHNlIHJlY29sb2NhbiBsb3MgZGlzcG9zaXRpdm9zLCBjb25zZXJ2YW5kbyBzdSBvcmRlbiB5IGNhcmFjdGVyw61zdGljYXMsIMO6bmljYW1lbnRlIGN1YW5kbyBjYWJlbiB0b2Rvcy4gRWwgZ3JhZG8gZGUgZWxlY3RyaWZpY2FjacOzbiBubyBtb2RpZmljYSBhdXRvbcOhdGljYW1lbnRlIGVsIGNhbGlicmUgZGUgbG9zIGFwYXJhdG9zLjwvZGl2PjxkaXYgY2xhc3M9InNoZWV0LWJ1dHRvbnMiPjxidXR0b24gY2xhc3M9ImJ0biIgZGF0YS1hY3Rpb249ImxvYWQtanNvbiI+4oenIEltcG9ydGFyIEpTT048L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJidG4iIGRhdGEtYWN0aW9uPSJzYXZlLWpzb24iPuKHqSBFeHBvcnRhcjwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biBwcmltYXJ5IiBkYXRhLWFjdGlvbj0iY2xvc2UiPkhlY2hvIOKckzwvYnV0dG9uPjwvZGl2PmApfQpmdW5jdGlvbiBuZXdNZW51KCl7c2hvd01vZGFsKGA8ZGl2IGNsYXNzPSJzaGVldC10b3AiPjxkaXY+PGRpdiBjbGFzcz0iZXllYnJvdyI+RU1QRVpBUiBVTiBESVNFw5FPPC9kaXY+PGgyPlBsYW50aWxsYXMgZGUgY3VhZHJvPC9oMj48L2Rpdj48YnV0dG9uIGNsYXNzPSJzaGVldC1jbG9zZSIgZGF0YS1hY3Rpb249ImNsb3NlIj7DlzwvYnV0dG9uPjwvZGl2PjxkaXYgc3R5bGU9ImRpc3BsYXk6Z3JpZDtnYXA6MTBweCI+PGJ1dHRvbiBjbGFzcz0iY2F0YWxvZy10aWxlIiBkYXRhLWFjdGlvbj0idGVtcGxhdGUiIGRhdGEtbW9kZT0iYmFzaWMiIHN0eWxlPSItLXRvbmU6IzI3NmRjZSI+PGRpdiBjbGFzcz0idGlsZS1pY29uIj5DMeKAkzU8L2Rpdj48ZGl2IGNsYXNzPSJ0aWxlLWluZm8iPjxzdHJvbmc+Vml2aWVuZGEgYsOhc2ljYSDCtyA1LDc1IGtXPC9zdHJvbmc+PHNtYWxsPklHQSwgU1BELCAxIGRpZmVyZW5jaWFsIHkgQzEgYSBDNSDCtyAyw5cxMiBNPC9zbWFsbD48L2Rpdj48c3BhbiBjbGFzcz0idGlsZS1wbHVzIj7ihpI8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0iY2F0YWxvZy10aWxlIiBkYXRhLWFjdGlvbj0idGVtcGxhdGUiIGRhdGEtbW9kZT0iaGlnaCIgc3R5bGU9Ii0tdG9uZTojMTM5NzgzIj48ZGl2IGNsYXNzPSJ0aWxlLWljb24iPkMx4oCTMTA8L2Rpdj48ZGl2IGNsYXNzPSJ0aWxlLWluZm8iPjxzdHJvbmc+Vml2aWVuZGEgZWxldmFkYSDCtyA5LDIga1c8L3N0cm9uZz48c21hbGw+MiBkaWZlcmVuY2lhbGVzLCBjaXJjdWl0b3MgYWRpY2lvbmFsZXMgwrcgM8OXMTIgTTwvc21hbGw+PC9kaXY+PHNwYW4gY2xhc3M9InRpbGUtcGx1cyI+4oaSPC9zcGFuPjwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImNhdGFsb2ctdGlsZSIgZGF0YS1hY3Rpb249InRlbXBsYXRlIiBkYXRhLW1vZGU9ImVtcHR5IiBzdHlsZT0iLS10b25lOiM3ODkwYTQiPjxkaXYgY2xhc3M9InRpbGUtaWNvbiI+77yLPC9kaXY+PGRpdiBjbGFzcz0idGlsZS1pbmZvIj48c3Ryb25nPkN1YWRybyB2YWPDrW88L3N0cm9uZz48c21hbGw+RW1waWV6YSBhIGNvbG9jYXIgbG9zIGFwYXJhdG9zIGRlc2RlIGNlcm8gwrcgMsOXMTIgTTwvc21hbGw+PC9kaXY+PHNwYW4gY2xhc3M9InRpbGUtcGx1cyI+4oaSPC9zcGFuPjwvYnV0dG9uPjwvZGl2PjxwIGNsYXNzPSJzdWJub3RlIj5DYXJnYXIgdW5hIHBsYW50aWxsYSBzdXN0aXR1eWUgZWwgZGlzZcOxbyBhY3R1YWwuIFB1ZWRlcyBleHBvcnRhciB1biBKU09OIGFudGVzLjwvcD5gKX0KZnVuY3Rpb24gdG9hc3QodHh0KXtsZXQgeD1lbCgndG9hc3QnKTt4LnRleHRDb250ZW50PXR4dDt4LmNsYXNzTGlzdC5hZGQoJ3Nob3cnKTtjbGVhclRpbWVvdXQodG9hc3RUaW1lcik7dG9hc3RUaW1lcj1zZXRUaW1lb3V0KCgpPT54LmNsYXNzTGlzdC5yZW1vdmUoJ3Nob3cnKSwyNjAwKX1jb25zdCBzaG93VG9hc3Q9dG9hc3Q7CmZ1bmN0aW9uIGFkZCh0eXBlLGNvbmZpZyl7bGV0IHA9ZmluZFNwb3QoVFlQRVNbdHlwZV0ubW9kcyk7aWYocDwwKXt0b2FzdCgnTm8gcXVlZGFuIGh1ZWNvcyBjb250aWd1b3MuIEFtcGzDrWEgZWwgY3VhZHJvIGVuIOKamS4nKTtyZXR1cm4gZmFsc2V9Y29tbWl0KCk7bGV0IGQ9ZGV2KHR5cGUscCxjb25maWd8fHt9KTtpZih0eXBlPT09J0lEJylkLm5hbWU9J0lEICcrKHN0YXRlLmRldmljZXMuZmlsdGVyKHg9PngudHlwZT09PSdJRCcpLmxlbmd0aCsxKTtzdGF0ZS5kZXZpY2VzLnB1c2goZCk7cmVuZGVyKCk7dG9hc3QoYCR7ZC5uYW1lfSBhw7FhZGlkbyBhbCBjdWFkcm9gKTtyZXR1cm4gZH0KZnVuY3Rpb24gYWRkQ2lyY3VpdChjb2RlKXtsZXQgYz1DSVJbY29kZV0scD1maW5kU3BvdCgyKTtpZihwPDApe3RvYXN0KCdTaW4gMiBtw7NkdWxvcyBjb250aWd1b3MuIEFtcGzDrWEgZWwgY3VhZHJvIGVuIOKamS4nKTtyZXR1cm59bGV0IGlkPWlkcygpLmZpbmQocj0+c3RhdGUuZGV2aWNlcy5maWx0ZXIoeD0+aXNDaXJjdWl0KHgpJiZ4Lmdyb3VwPT09ci5pZCkubGVuZ3RoPDUpLGdyb3VwPWlkPy5pZHx8Jyc7aWYoY29kZT09PSdDMTMnKWdyb3VwPScnO2xldCBkPWFkZCgnUElBJyx7Y2lyY3VpdDpjb2RlLG5hbWU6Y29kZSxhbXA6Yy5hbXAsc2VjdGlvbjpjLnNlY3Rpb24scG9pbnRzOmMucG9pbnRzLGxlbmd0aDoxMCx3YXR0czpjLmxvYWQsZ3JvdXB9KTtpZihkJiYoIWdyb3VwfHxjb2RlPT09J0MxMycpKXRvYXN0KGNvZGU9PT0nQzEzJz8nQzEzIGHDsWFkaWRvOiBuZWNlc2l0YSBkaWZlcmVuY2lhbCBleGNsdXNpdm8geSByZXZpc2nDs24gSVRDLUJULTUyJzonQ2lyY3VpdG8gYcOxYWRpZG86IGFzaWduYSB1biBkaWZlcmVuY2lhbCBlbiBzdXMgcHJvcGllZGFkZXMuJyk7fQpmdW5jdGlvbiBtYWtlTW92ZShkLHBvcyl7aWYoIXZhbGlkU3BvdChwb3MsZC5tb2RzLGQuaWQpKXt0b2FzdCgnRXNhIHBvc2ljacOzbiBlc3TDoSBvY3VwYWRhIG8gbm8gY2FiZS4nKTtyZXR1cm4gZmFsc2V9aWYocG9zPT09ZC5wb3MpcmV0dXJuIHRydWU7Y29tbWl0KCk7ZC5wb3M9cG9zO3JlbmRlcigpO3JldHVybiB0cnVlfQpmdW5jdGlvbiBwYWNrKCl7bGV0IGRzPXNvcnRlZCgpLG5leHQ9MCxwbGFjZW1lbnRzPVtdO2Zvcihjb25zdCBkIG9mIGRzKXtsZXQgY29sPW5leHQlc3RhdGUuY29scztpZihjb2wrZC5tb2RzPnN0YXRlLmNvbHMpbmV4dCs9c3RhdGUuY29scy1jb2w7aWYobmV4dCtkLm1vZHM+c3RhdGUuY29scypzdGF0ZS5yb3dzKXt0b2FzdCgnTm8gaGF5IGNhcGFjaWRhZCBwYXJhIG9yZGVuYXIgdG9kb3MgbG9zIGVsZW1lbnRvcy4nKTtyZXR1cm59cGxhY2VtZW50cy5wdXNoKFtkLG5leHRdKTtuZXh0Kz1kLm1vZHN9Y29tbWl0KCk7cGxhY2VtZW50cy5mb3JFYWNoKChbZCxwXSk9PmQucG9zPXApO3JlbmRlcigpO3RvYXN0KCdDb21wb25lbnRlcyBvcmRlbmFkb3MgcG9yIHBvc2ljacOzbicpfQpmdW5jdGlvbiBjb252ZXJ0TGF5b3V0KGNvbHMscm93cyl7bGV0IGRzPXNvcnRlZCgpLHA9MCxwbGFjZW1lbnRzPVtdO2Zvcihjb25zdCBkIG9mIGRzKXtpZihwJWNvbHMrZC5tb2RzPmNvbHMpcCs9Y29scy1wJWNvbHM7aWYocCtkLm1vZHM+Y29scypyb3dzKXJldHVybiBmYWxzZTtwbGFjZW1lbnRzLnB1c2goW2QscF0pO3ArPWQubW9kc31jb21taXQoKTtzdGF0ZS5jb2xzPWNvbHM7c3RhdGUucm93cz1yb3dzO3BsYWNlbWVudHMuZm9yRWFjaCgoW2QscF0pPT5kLnBvcz1wKTtyZW5kZXIoKTtyZXR1cm4gdHJ1ZX0KZnVuY3Rpb24gbnVkZ2Uob2Zmc2V0KXtsZXQgZD1zdGF0ZS5kZXZpY2VzLmZpbmQoeD0+eC5pZD09PXNlbGVjdGVkKTtpZighZClyZXR1cm47Y29uc3QgcD1kLnBvcytvZmZzZXQ7aWYobWFrZU1vdmUoZCxwKSllZGl0RGV2aWNlKGQuaWQpfQpmdW5jdGlvbiBleHBvcnRGaWxlKGJsb2IsbmFtZSl7bGV0IHVybD1VUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpLGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO2EuaHJlZj11cmw7YS5kb3dubG9hZD1uYW1lO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7YS5jbGljaygpO2EucmVtb3ZlKCk7c2V0VGltZW91dCgoKT0+VVJMLnJldm9rZU9iamVjdFVSTCh1cmwpLDEyMDAwKX0KZnVuY3Rpb24gZmlsZW5hbWUoKXtyZXR1cm4gKHN0YXRlLm5hbWV8fCdjdWFkcm8nKS5ub3JtYWxpemUoJ05GRCcpLnJlcGxhY2UoL1tcdTAzMDAtXHUwMzZmXS9nLCcnKS5yZXBsYWNlKC9bXlx3LV0rL2csJ18nKS5zbGljZSgwLDM2KXx8J2N1YWRybyd9CmZ1bmN0aW9uIHNhdmVKc29uKCl7ZXhwb3J0RmlsZShuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkoe2Zvcm1hdDonQ3VhZHJvTGFiLXYyJyxleHBvcnRlZEF0Om5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSwuLi5zdGF0ZX0sbnVsbCwyKV0se3R5cGU6J2FwcGxpY2F0aW9uL2pzb24nfSksZmlsZW5hbWUoKSsnLmpzb24nKTt0b2FzdCgnUHJveWVjdG8gZXhwb3J0YWRvIGNvbW8gSlNPTicpfQpmdW5jdGlvbiBtYWtlQ1NWKCl7bGV0IHJvd3M9W1snVGlwbycsJ05vbWJyZScsJ0NpcmN1aXRvJywnSW50ZW5zaWRhZCBBJywnTcOzZHVsb3MnLCdTZWNjacOzbiBtbTInLCdEaWZlcmVuY2lhbCBhc2lnbmFkbycsJ0xvbmdpdHVkIG0nLCdDYXJnYSBXJywnUHVudG9zJ11dO2ZvcihsZXQgZCBvZiBzb3J0ZWQoKSlyb3dzLnB1c2goW1RZUEVTW2QudHlwZV0ubmFtZSxkLm5hbWUsZC5jaXJjdWl0fHwnJyxkLmFtcCxkLm1vZHMsZC5jaXJjdWl0P2Quc2VjdGlvbjonJyxzdGF0ZS5kZXZpY2VzLmZpbmQoeD0+eC5pZD09PWQuZ3JvdXApPy5uYW1lfHwnJyxkLmNpcmN1aXQ/ZC5sZW5ndGg6JycsZC5jaXJjdWl0P2Qud2F0dHM6JycsZC5jaXJjdWl0P2QucG9pbnRzOicnXSk7cm93cy51bnNoaWZ0KFsnUHJveWVjdG8nLHN0YXRlLm5hbWVdLFsnRmlsYXMnLHN0YXRlLnJvd3NdLFsnTcOzZHVsb3MgcG9yIGZpbGEnLHN0YXRlLmNvbHNdKTtyZXR1cm4gJ1x1ZmVmZicrcm93cy5tYXAocj0+ci5tYXAodj0+JyInK1N0cmluZyh2KS5yZXBsYWNlKC8iL2csJyIiJykrJyInKS5qb2luKCc7JykpLmpvaW4oJ1xyXG4nKX0KZnVuY3Rpb24gcGVyZm9ybShhY3Rpb24sZCl7aWYoYWN0aW9uPT09J2dvJyl7dmlldz1kLnZpZXd8fCdib2FyZCc7cmVuZGVyKCk7d2luZG93LnNjcm9sbFRvKHt0b3A6MCxiZWhhdmlvcjonaW5zdGFudCd9KTtyZXR1cm59CiBpZihhY3Rpb249PT0nY29uZmlnJylyZXR1cm4gY29uZmlnKCk7aWYoYWN0aW9uPT09J25ldy1tZW51JylyZXR1cm4gbmV3TWVudSgpO2lmKGFjdGlvbj09PSdjbG9zZScpcmV0dXJuIGNsb3NlTW9kYWwoKTtpZihhY3Rpb249PT0ndW5kbycpcmV0dXJuIHVuZG8oKTtpZihhY3Rpb249PT0ncmVkbycpcmV0dXJuIHJlZG8oKTtpZihhY3Rpb249PT0nYWRkLWRldmljZScpe2xldCBhPWFkZChkLnR5cGUpO2lmKGEmJndpbmRvdy5tYXRjaE1lZGlhKCco
bWF4LXdpZHRoOjk1MHB4KScpLm1hdGNoZXMpe3ZpZXc9J2JvYXJkJztyZW5kZXIoKTt3aW5kb3cuc2Nyb2xsVG8oe3RvcDowLGJlaGF2aW9yOidpbnN0YW50J30pfXJldHVybn0KIGlmKGFjdGlvbj09PSdhZGQtY2lyY3VpdCcpe2FkZENpcmN1aXQoZC5jb2RlKTtpZih3aW5kb3cubWF0Y2hNZWRpYSgnKG1heC13aWR0aDo5NTBweCknKS5tYXRjaGVzKXt2aWV3PSdib2FyZCc7cmVuZGVyKCk7d2luZG93LnNjcm9sbFRvKHt0b3A6MCxiZWhhdmlvcjonaW5zdGFudCd9KX1yZXR1cm59CiBpZihhY3Rpb249PT0nZWRpdCcpcmV0dXJuIGVkaXREZXZpY2UoZC5pZCk7CiBpZihhY3Rpb249PT0ndG9nZ2xlJyl7bGV0IGRldj1zdGF0ZS5kZXZpY2VzLmZpbmQoeD0+eC5pZD09PWQuaWQpO2lmKGRldil7Y29tbWl0KCk7ZGV2Lm9uPSFkZXYub247cmVuZGVyKCl9cmV0dXJufQogaWYoYWN0aW9uPT09J3RlbXBsYXRlJyl7aWYoIWNvbmZpcm0oJ8K/U3VzdGl0dWlyIGVsIGRpc2XDsW8gYWN0dWFsIHBvciBlc3RhIHBsYW50aWxsYT8nKSlyZXR1cm47Y29tbWl0KCk7c3RhdGU9ZC5tb2RlPT09J2VtcHR5Jz97Li4uc2VlZCgpLG5hbWU6J051ZXZvIGN1YWRybycsZGV2aWNlczpbXX06c2VlZChkLm1vZGUpO3NlbGVjdGVkPW51bGw7dmlldz0nYm9hcmQnO2Nsb3NlTW9kYWwoKTtyZW5kZXIoKTt0b2FzdCgnUGxhbnRpbGxhIGNhcmdhZGEnKTtyZXR1cm59CiBpZihbJ2ZhdWx0LWVhcnRoJywnZmF1bHQtb3ZlcmxvYWQnLCdmYXVsdC1tYWluJywncmVzZXQtcG93ZXInXS5pbmNsdWRlcyhhY3Rpb24pKXsKIGxldCBjPXN0YXRlLmRldmljZXMuZmluZCh4PT54LmlkPT09ZWwoJ2ZhdWx0LWNpcmN1aXQnKT8udmFsdWUpLGlnYT1zdGF0ZS5kZXZpY2VzLmZpbmQoeD0+eC50eXBlPT09J0lHQScpOwogaWYoYWN0aW9uPT09J3Jlc2V0LXBvd2VyJyl7Y29tbWl0KCk7c3RhdGUuZGV2aWNlcy5mb3JFYWNoKHg9Pngub249dHJ1ZSk7cmVuZGVyKCk7dG9hc3QoJ1RvZG9zIGxvcyBpbnRlcnJ1cHRvcmVzIGVzdMOhbiByZWFybWFkb3MgZW4gbGEgc2ltdWxhY2nDs24nKTtyZXR1cm59CiBpZihhY3Rpb249PT0nZmF1bHQtbWFpbicpe2lmKCFpZ2EpcmV0dXJuIHRvYXN0KCdObyBoYXkgSUdBIGluc3RhbGFkbycpO2NvbW1pdCgpO2lnYS5vbj1mYWxzZTtyZW5kZXIoKTt0b2FzdCgnQ29ydGUgZ2VuZXJhbDogdG9kYXMgbGFzIHNhbGlkYXMgc2luIGFsaW1lbnRhY2nDs24nKTtyZXR1cm59CiBpZighYylyZXR1cm4gdG9hc3QoJ0HDsWFkZSBvIHNlbGVjY2lvbmEgdW4gY2lyY3VpdG8gcHJpbWVybycpOwogaWYoYWN0aW9uPT09J2ZhdWx0LW92ZXJsb2FkJyl7Y29tbWl0KCk7Yy5vbj1mYWxzZTtyZW5kZXIoKTt0b2FzdChgU29icmVjYXJnYSBzaW11bGFkYTogYWJpZXJ0byAke2MubmFtZX1gKTtyZXR1cm59CiBjb25zdCBkaWY9Yy50eXBlPT09J1JDQk8nP2M6c3RhdGUuZGV2aWNlcy5maW5kKHg9PnguaWQ9PT1jLmdyb3VwJiZ4LnR5cGU9PT0nSUQnKTtpZighZGlmKXJldHVybiB0b2FzdCgnRXN0ZSBjaXJjdWl0byBubyB0aWVuZSBkaWZlcmVuY2lhbCBhc2lnbmFkby4gUmV2w61zYWxvIHByaW1lcm8uJyk7Y29tbWl0KCk7ZGlmLm9uPWZhbHNlO3JlbmRlcigpO3RvYXN0KGBGdWdhIHNpbXVsYWRhOiBhYnJlICR7ZGlmLm5hbWV9IHkgZGVzY29uZWN0YSBzdSBncnVwb2ApO3JldHVybn0KIGlmKGFjdGlvbj09PSdhdXRvYXJyYW5nZScpcmV0dXJuIHBhY2soKTtpZihhY3Rpb249PT0nbnVkZ2UnKXJldHVybiBudWRnZShOdW1iZXIoZC5vZmZzZXQpKTsKIGlmKGFjdGlvbj09PSdkZWxldGUnKXtsZXQgeD1zdGF0ZS5kZXZpY2VzLmZpbmQoeD0+eC5pZD09PWQuaWQpO2lmKCF4KXJldHVybjtjb21taXQoKTtzdGF0ZS5kZXZpY2VzPXN0YXRlLmRldmljZXMuZmlsdGVyKHk9PnkuaWQhPT14LmlkKTtzZWxlY3RlZD1udWxsO2Nsb3NlTW9kYWwoKTtyZW5kZXIoKTt0b2FzdCgnQ29tcG9uZW50ZSBlbGltaW5hZG8nKTtyZXR1cm59CiBpZihhY3Rpb249PT0nZHVwbGljYXRlJyl7bGV0IHg9c3RhdGUuZGV2aWNlcy5maW5kKHg9PnguaWQ9PT1kLmlkKTtpZigheClyZXR1cm47bGV0IGNvbmZpZz17Li4ueH07ZGVsZXRlIGNvbmZpZy5pZDtkZWxldGUgY29uZmlnLnBvcztsZXQgYWRkZWQ9YWRkKHgudHlwZSx7Li4uY29uZmlnLG5hbWU6eC5uYW1lKycgY29waWEnfSk7aWYoYWRkZWQpZWRpdERldmljZShhZGRlZC5pZCk7cmV0dXJufQogaWYoYWN0aW9uPT09J3NhdmUtanNvbicpcmV0dXJuIHNhdmVKc29uKCk7aWYoYWN0aW9uPT09J2xvYWQtanNvbicpe2VsKCdmaWxlLWxvYWQnKS5jbGljaygpO3JldHVybn1pZihhY3Rpb249PT0nY3N2Jyl7ZXhwb3J0RmlsZShuZXcgQmxvYihbbWFrZUNTVigpXSx7dHlwZTondGV4dC9jc3Y7Y2hhcnNldD11dGYtODsnfSksZmlsZW5hbWUoKSsnX21hdGVyaWFsZXMuY3N2Jyk7dG9hc3QoJ0NTViBnZW5lcmFkbycpO3JldHVybn1pZihhY3Rpb249PT0ncHJpbnQnKXtjbG9zZU1vZGFsKCk7d2luZG93LnByaW50KCk7cmV0dXJufX0KZnVuY3Rpb24gYXBwbHlFZGl0KGtleSx2YWx1ZSl7aWYoIWtleSlyZXR1cm47bGV0IGlzY2ZnPWtleS5zdGFydHNXaXRoKCdjZmc6JyksYXR0cj1pc2NmZz9rZXkuc2xpY2UoNCk6a2V5LG9iaj1pc2NmZz9zdGF0ZTpzdGF0ZS5kZXZpY2VzLmZpbmQoZD0+ZC5pZD09PXNlbGVjdGVkKTtpZighb2JqKXJldHVybjtjb25zdCBpc251bT1bJ2FtcCcsJ3JkYycsJ3NlY3Rpb24nLCdwb2ludHMnLCdsZW5ndGgnLCd3YXR0cycsJ2FyZWEnLCdjb250cmFjdCcsJ2NvbHMnLCdyb3dzJ10uaW5jbHVkZXMoYXR0cik7bGV0IHZhbD1pc251bT9OdW1iZXIodmFsdWUpOnZhbHVlO2lmKGlzbnVtJiYhTnVtYmVyLmlzRmluaXRlKHZhbCkpcmV0dXJuOwogaWYoaXNjZmcmJlsnY29scycsJ3Jvd3MnXS5pbmNsdWRlcyhhdHRyKSl7bGV0IGNvbHM9YXR0cj09PSdjb2xzJz92YWw6c3RhdGUuY29scyxyb3dzPWF0dHI9PT0ncm93cyc/dmFsOnN0YXRlLnJvd3M7aWYoIWNvbnZlcnRMYXlvdXQoY29scyxyb3dzKSl7dG9hc3QoJ05vIGNhYmVuIGxvcyBjb21wb25lbnRlcyBlbiBlc2FzIGRpbWVuc2lvbmVzLicpO2NvbmZpZygpO3JldHVybn1jb25maWcoKTtyZXR1cm59CiBpZihhdHRyPT09J25hbWUnKXZhbD1TdHJpbmcodmFsKS5zbGljZSgwLDkwKTtpZihhdHRyPT09J2dyYWRlJyYmIVsnYmFzaWMnLCdoaWdoJ10uaW5jbHVkZXModmFsKSlyZXR1cm47CiBjb21taXQoKTtvYmpbYXR0cl09dmFsO3JlbmRlcigpO2lmKGlzY2ZnKWNvbmZpZygpO2Vsc2UgZWRpdERldmljZShvYmouaWQpfQpmdW5jdGlvbiB0b3VjaFN0YXJ0KGV2LGZyb21DYXRhbG9nPWZhbHNlKXtpZihldi5idXR0b24hPT0wJiZldi5wb2ludGVyVHlwZT09PSdtb3VzZScpcmV0dXJuO2xldCBkSWQ9ZXYudGFyZ2V0LmNsb3Nlc3QoJy5kZXZpY2UnKT8uZGF0YXNldC5pZDtpZihldi50YXJnZXQuY2xvc2VzdCgnW2RhdGEtYWN0aW9uPSJ0b2dnbGUiXScpKXJldHVybjtjb25zdCBlbHQ9ZnJvbUNhdGFsb2c/ZXYudGFyZ2V0LmNsb3Nlc3QoJy5jYXRhbG9nLXRpbGUnKTpldi50YXJnZXQuY2xvc2VzdCgnLmRldmljZScpO2lmKCFlbHQpcmV0dXJuO2xldCBkPWZyb21DYXRhbG9nP3tpZDoncGFsZXR0ZScsdHlwZTplbHQuZGF0YXNldC50eXBlLG1vZHM6VFlQRVNbZWx0LmRhdGFzZXQudHlwZV0/Lm1vZHN9OnN0YXRlLmRldmljZXMuZmluZCh4PT54LmlkPT09ZElkKTtpZighZClyZXR1cm47ZHJhZz17c3RhcnRYOmV2LmNsaWVudFgsc3RhcnRZOmV2LmNsaWVudFksbGFzdFg6ZXYuY2xpZW50WCxsYXN0WTpldi5jbGllbnRZLGQsZWx0LGZyb21DYXRhbG9nLG1vdmluZzpmYWxzZSxnaG9zdDpudWxsLHNwb3Q6bnVsbH07CiBpZihldi5wb2ludGVyVHlwZT09PSd0b3VjaCcmJiFmcm9tQ2F0YWxvZylldi5wcmV2ZW50RGVmYXVsdCgpOwp9CmZ1bmN0aW9uIG1vdmVEcmFnKGV2KXtpZighZHJhZylyZXR1cm47bGV0IHg9ZXYuY2xpZW50WCx5PWV2LmNsaWVudFk7ZHJhZy5sYXN0WD14O2RyYWcubGFzdFk9eTtpZighZHJhZy5tb3ZpbmcmJk1hdGguaHlwb3QoeC1kcmFnLnN0YXJ0WCx5LWRyYWcuc3RhcnRZKT45KXtkcmFnLm1vdmluZz10cnVlO2NvbnN0IGdob3N0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO2dob3N0LmNsYXNzTmFtZT0nZGV2aWNlIGRyYWctZ2hvc3QnO2dob3N0LnN0eWxlLmNzc1RleHQ9YHdpZHRoOmNhbGMoJHtkcmFnLmQubW9kc30gKiB2YXIoLS1waXRjaCkgLSAycHgpO2hlaWdodDoxMTZweDstLXRvbmU6JHtUWVBFU1tkcmFnLmQudHlwZV0uY29sb3J9O2A7Z2hvc3QuaW5uZXJIVE1MPWRyYWcuZnJvbUNhdGFsb2c/YDxkaXYgY2xhc3M9ImQtbGluZSI+PC9kaXY+PGRpdiBjbGFzcz0iZC1jb2RlIj4ke1RZUEVTW2RyYWcuZC50eXBlXS5zaG9ydH08L2Rpdj48ZGl2IGNsYXNzPSJkLWxhYmVsIj4ke1RZUEVTW2RyYWcuZC50eXBlXS5uYW1lfTwvZGl2PmA6ZHJhZy5lbHQuaW5uZXJIVE1MO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZ2hvc3QpO2RyYWcuZ2hvc3Q9Z2hvc3Q7aWYoIWRyYWcuZnJvbUNhdGFsb2cpZHJhZy5lbHQuY2xhc3NMaXN0LmFkZCgnZHJhZy1vcmlnaW4nKX0KIGlmKCFkcmFnLm1vdmluZylyZXR1cm47ZXYucHJldmVudERlZmF1bHQoKTtsZXQgZ2hvc3Q9ZHJhZy5naG9zdDtnaG9zdC5zdHlsZS53aWR0aD1kcmFnLmQubW9kcypwYXJzZUZsb2F0KGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5nZXRQcm9wZXJ0eVZhbHVlKCctLXBpdGNoJykpLTIrJ3B4JztnaG9zdC5zdHlsZS5sZWZ0PSh4LWdob3N0Lm9mZnNldFdpZHRoLzIpKydweCc7Z2hvc3Quc3R5bGUudG9wPSh5LTU0KSsncHgnO2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5kcm9wLXNwb3QnKS5mb3JFYWNoKGU9PmUucmVtb3ZlKCkpO2xldCB0YXJnZXQ9ZG9jdW1lbnQuZWxlbWVudEZyb21Qb2ludCh4LHkpPy5jbG9zZXN0KCcucmFjay10cmFjaycpO2lmKCF0YXJnZXQpe2RyYWcuc3BvdD1udWxsO3JldHVybn1sZXQgcm93PU51bWJlcih0YXJnZXQuZGF0YXNldC5yb3cpLHJlY3Q9dGFyZ2V0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLHBpdGNoPXBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmdldFByb3BlcnR5VmFsdWUoJy0tcGl0Y2gnKSl8fDM2LHNsb3Q9TWF0aC5mbG9vcigoeC1yZWN0LmxlZnQpL3BpdGNoKSxwb3M9cm93KnN0YXRlLmNvbHMrc2xvdCxvaz12YWxpZFNwb3QocG9zLGRyYWcuZC5tb2RzLGRyYWcuZnJvbUNhdGFsb2c/bnVsbDpkcmFnLmQuaWQpO2RyYWcuc3BvdD17cG9zLG9rfTtsZXQgc3BvdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtzcG90LmNsYXNzTmFtZT0nZHJvcC1zcG90Jysob2s/Jyc6JyBpbnZhbGlkJyk7c3BvdC5zdHlsZS5sZWZ0PXNsb3QqcGl0Y2grJ3B4JztzcG90LnN0eWxlLndpZHRoPWRyYWcuZC5tb2RzKnBpdGNoKydweCc7dGFyZ2V0LmFwcGVuZENoaWxkKHNwb3QpfQpmdW5jdGlvbiBlbmREcmFnKGV2KXtpZighZHJhZylyZXR1cm47bGV0IGQ9ZHJhZztkcmFnPW51bGw7ZG9jdW1lbnQu
cXVlcnlTZWxlY3RvckFsbCgnLmRyb3Atc3BvdCcpLmZvckVhY2goeD0+eC5yZW1vdmUoKSk7ZC5naG9zdD8ucmVtb3ZlKCk7ZC5lbHQ/LmNsYXNzTGlzdC5yZW1vdmUoJ2RyYWctb3JpZ2luJyk7aWYoZC5tb3Zpbmcpe2lmKGQuc3BvdD8ub2spe2lmKGQuZnJvbUNhdGFsb2cpYWRkKGQuZC50eXBlLHtwb3M6ZC5zcG90LnBvc30pO2Vsc2UgbWFrZU1vdmUoZC5kLGQuc3BvdC5wb3MpfWVsc2UgdG9hc3QoJ1N1ZWx0YSBlbCBjb21wb25lbnRlIHNvYnJlIHVuIGh1ZWNvIGxpYnJlIGRlbCBjYXJyaWwnKTtyZXR1cm59aWYoIWQuZnJvbUNhdGFsb2cpZWRpdERldmljZShkLmQuaWQpfQpmdW5jdGlvbiBhdHRhY2goKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsZT0+e2xldCBhPWUudGFyZ2V0LmNsb3Nlc3QoJ1tkYXRhLWFjdGlvbl0nKTtpZighYSlyZXR1cm47aWYoYS5jbGFzc0xpc3QuY29udGFpbnMoJ2RldmljZScpKXJldHVybjtpZihhLmRhdGFzZXQuYWN0aW9uPT09J3RvZ2dsZScmJmRyYWc/Lm1vdmluZylyZXR1cm47ZS5wcmV2ZW50RGVmYXVsdCgpO2Uuc3RvcFByb3BhZ2F0aW9uKCk7cGVyZm9ybShhLmRhdGFzZXQuYWN0aW9uLGEuZGF0YXNldCl9KTsKIGVsKCdtb2RhbCcpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJyxlPT57aWYoZS50YXJnZXQ9PT1lbCgnbW9kYWwnKSljbG9zZU1vZGFsKCl9KTsKIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsZT0+e2lmKGUudGFyZ2V0Lm1hdGNoZXMoJ1tkYXRhLWVkaXRdJykpYXBwbHlFZGl0KGUudGFyZ2V0LmRhdGFzZXQuZWRpdCxlLnRhcmdldC52YWx1ZSl9KTsKIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJyxlPT57aWYoZS50YXJnZXQuY2xvc2VzdCgnLnJhY2stdHJhY2sgLmRldmljZScpJiYhZS50YXJnZXQuY2xvc2VzdCgnLmQtc3dpdGNoJykpdG91Y2hTdGFydChlKTtlbHNlIGlmKGUucG9pbnRlclR5cGU9PT0nbW91c2UnJiZlLnRhcmdldC5jbG9zZXN0KCcuc2lkZSAuY2F0YWxvZy10aWxlJykpdG91Y2hTdGFydChlLHRydWUpfSk7CiBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVybW92ZScsbW92ZURyYWcse3Bhc3NpdmU6ZmFsc2V9KTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVydXAnLGVuZERyYWcpO2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJjYW5jZWwnLCgpPT57aWYoIWRyYWcpcmV0dXJuO2RyYWcuZ2hvc3Q/LnJlbW92ZSgpO2RyYWc9bnVsbDtkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuZHJvcC1zcG90JykuZm9yRWFjaCh4PT54LnJlbW92ZSgpKTtyZW5kZXIoKX0pOwogZWwoJ2ZpbGUtbG9hZCcpLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsYXN5bmMgZT0+e2NvbnN0IGZpbGU9ZS50YXJnZXQuZmlsZXNbMF07aWYoIWZpbGUpcmV0dXJuO3RyeXtsZXQgb2JqPUpTT04ucGFyc2UoYXdhaXQgZmlsZS50ZXh0KCkpLHM9bm9ybShvYmopO2lmKCFzKXRocm93IEVycm9yKCdGb3JtYXRvIGluY29ycmVjdG8nKTtpZighY29uZmlybSgnwr9JbXBvcnRhciBlc3RlIGRpc2XDsW8/IFNlIHN1c3RpdHVpcsOhIGVsIGFjdHVhbC4nKSlyZXR1cm47Y29tbWl0KCk7c3RhdGU9cztzZWxlY3RlZD1udWxsO3ZpZXc9J2JvYXJkJztjbG9zZU1vZGFsKCk7cmVuZGVyKCk7dG9hc3QoJ1Byb3llY3RvIGltcG9ydGFkbyBjb3JyZWN0YW1lbnRlJyl9Y2F0Y2goZXgpe3RvYXN0KCdObyBzZSBoYSBwb2RpZG8gaW1wb3J0YXIgZWwgSlNPTi4nKX1maW5hbGx5e2UudGFyZ2V0LnZhbHVlPScnfX0pOwogZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsZT0+e2lmKGUua2V5PT09J0VzY2FwZScpY2xvc2VNb2RhbCgpO2lmKChlLm1ldGFLZXl8fGUuY3RybEtleSkmJmUua2V5PT09J3onKXtlLnByZXZlbnREZWZhdWx0KCk7ZS5zaGlmdEtleT9yZWRvKCk6dW5kbygpfX0pfQphdHRhY2goKTtyZW5kZXIoKTsKCn0pKCk7Cjwvc2NyaXB0Pgo8L2JvZHk+PC9odG1sPg==
Preparando CuadroLab…
WhatsApp us
Contacto
Carrer del Barcelonès, 3, 08940 Cornellà de Llobregat, Barcelona
+34 620 771 612
info@intaq.es