DJ PASCOE’S TOP TEN TUNES 2

£6.99

After the incredible success of his first publication, ‘DJ Pascoe’s Top Ten Tunes 2’ was released in 2013.  In this edition Pascoe ranks music by a variety of artists based on its popularity, commercial success and of course his own opinion! The ideal book for both musical connoisseurs and budding DJ’s ‘Top Ten Tunes 2’ is a must read.


Notice: WC_Product::get_upsells is deprecated since version 3.0! Use WC_Product::get_upsell_ids instead. in /home/content/n3pnexwpnas01_data02/76/4026276/html/wp-includes/functions.php on line 3839

Notice: WC_Product::get_related is deprecated since version 3.0! Use wc_get_related_products instead. in /home/content/n3pnexwpnas01_data02/76/4026276/html/wp-includes/functions.php on line 3839
 
PGRpdiBzdHlsZT0ibWluLWhlaWdodDozMDBweDttaW4td2lkdGg6NjAwcHg7cGFkZGluZzoxMDBweDsiPiANCgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2ZfYnJvd3Nlcl91bmtub3duIGdmb3JtX3dyYXBwZXInIGlkPSdnZm9ybV93cmFwcGVyXzEnIHN0eWxlPSdkaXNwbGF5Om5vbmUnPjxhIGlkPSdnZl8xJyBjbGFzcz0nZ2Zvcm1fYW5jaG9yJyA+PC9hPjxmb3JtIG1ldGhvZD0ncG9zdCcgZW5jdHlwZT0nbXVsdGlwYXJ0L2Zvcm0tZGF0YScgdGFyZ2V0PSdnZm9ybV9hamF4X2ZyYW1lXzEnIGlkPSdnZm9ybV8xJyAgYWN0aW9uPScvcHJvZHVjdC9kai1wYXNjb2VzLXRvcC10ZW4tdHVuZXMtMi8jZ2ZfMSc+CiAgICAgICAgPGRpdiBpZD0nZ2ZfcHJvZ3Jlc3NiYXJfd3JhcHBlcl8xJyBjbGFzcz0nZ2ZfcHJvZ3Jlc3NiYXJfd3JhcHBlcic+CiAgICAgICAgICAgIDxoMyBjbGFzcz0nZ2ZfcHJvZ3Jlc3NiYXJfdGl0bGUnPlN0ZXAgMSBvZiA3IC0gRGF0ZSBvZiBldmVudAogICAgICAgIDwvaDM+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9J2dmX3Byb2dyZXNzYmFyJz4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J2dmX3Byb2dyZXNzYmFyX3BlcmNlbnRhZ2UgcGVyY2VudGJhcl9yZWQgcGVyY2VudGJhcl8xNCcgc3R5bGU9J3dpZHRoOjE0JTsnPjxzcGFuPjE0JTwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J2dmb3JtX2JvZHknPjxkaXYgaWQ9J2dmb3JtX3BhZ2VfMV8xJyBjbGFzcz0nZ2Zvcm1fcGFnZScgPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdnZm9ybV9wYWdlX2ZpZWxkcyc+PHVsIGlkPSdnZm9ybV9maWVsZHNfMScgY2xhc3M9J2dmb3JtX2ZpZWxkcyB0b3BfbGFiZWwgZm9ybV9zdWJsYWJlbF9iZWxvdyBkZXNjcmlwdGlvbl9iZWxvdyc+PGxpIGlkPSdmaWVsZF8xXzInIGNsYXNzPSdnZmllbGQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgZ2ZpZWxkX3Zpc2liaWxpdHlfdmlzaWJsZScgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzFfMl8xJyA+V2hhdCBkYXRlIGRvIHlvdSBuZWVkIHRoZSBESj88L2xhYmVsPjxkaXYgaWQ9J2lucHV0XzFfMicgY2xhc3M9J2dpbnB1dF9jb250YWluZXIgZ2lucHV0X2NvbnRhaW5lcl9kYXRlJz48ZGl2IGNsYXNzPSdjbGVhci1tdWx0aSc+PGRpdiBjbGFzcz0nZ2ZpZWxkX2RhdGVfZHJvcGRvd25fbW9udGggZ2lucHV0X2NvbnRhaW5lciBnaW5wdXRfY29udGFpbmVyX2RhdGUnIGlkPSdpbnB1dF8xXzJfMV9jb250YWluZXInPjxzZWxlY3QgbmFtZT0naW5wdXRfMltdJyBpZD0naW5wdXRfMV8yXzEnIHRhYmluZGV4PScxJyAgPjxvcHRpb24gdmFsdWU9Jyc+TW9udGg8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxJyA+MTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzInID4yPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMycgPjM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSc0JyA+NDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzUnID41PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nNicgPjY8L29wdGlvbj48b3B0aW9uIHZhbHVlPSc3JyA+Nzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzgnID44PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nOScgPjk8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxMCcgPjEwPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTEnID4xMTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzEyJyA+MTI8L29wdGlvbj48L3NlbGVjdD48L2Rpdj48ZGl2IGNsYXNzPSdnZmllbGRfZGF0ZV9kcm9wZG93bl9kYXkgZ2lucHV0X2NvbnRhaW5lciBnaW5wdXRfY29udGFpbmVyX2RhdGUnIGlkPSdpbnB1dF8xXzJfMl9jb250YWluZXInPjxzZWxlY3QgbmFtZT0naW5wdXRfMltdJyBpZD0naW5wdXRfMV8yXzInIHRhYmluZGV4PScyJyAgPjxvcHRpb24gdmFsdWU9Jyc+RGF5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMScgPjE8L29wdGlvbj48b3B0aW9uIHZhbHVlPScyJyA+Mjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzMnID4zPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nNCcgPjQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSc1JyA+NTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzYnID42PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nNycgPjc8L29wdGlvbj48b3B0aW9uIHZhbHVlPSc4JyA+ODwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzknID45PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTAnID4xMDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzExJyA+MTE8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxMicgPjEyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTMnID4xMzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE0JyA+MTQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxNScgPjE1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTYnID4xNjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE3JyA+MTc8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOCcgPjE4PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTknID4xOTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzIwJyA+MjA8L29wdGlvbj48b3B0aW9uIHZhbHVlPScyMScgPjIxPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMjInID4yMjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzIzJyA+MjM8L29wdGlvbj48b3B0aW9uIHZhbHVlPScyNCcgPjI0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMjUnID4yNTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzI2JyA+MjY8L29wdGlvbj48b3B0aW9uIHZhbHVlPScyNycgPjI3PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMjgnID4yODwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzI5JyA+Mjk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSczMCcgPjMwPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMzEnID4zMTwvb3B0aW9uPjwvc2VsZWN0PjwvZGl2PjxkaXYgY2xhc3M9J2dmaWVsZF9kYXRlX2Ryb3Bkb3duX3llYXIgZ2lucHV0X2NvbnRhaW5lciBnaW5wdXRfY29udGFpbmVyX2RhdGUnIGlkPSdpbnB1dF8xXzJfM19jb250YWluZXInPjxzZWxlY3QgbmFtZT0naW5wdXRfMltdJyBpZD0naW5wdXRfMV8yXzMnIHRhYmluZGV4PSczJyAgPjxvcHRpb24gdmFsdWU9Jyc+WWVhcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzIwMTknID4yMDE5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMjAxOCcgPjIwMTg8L29wdGlvbj48b3B0aW9uIHZhbHVlPScyMDE3JyA+MjAxNzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzIwMTYnID4yMDE2PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMjAxNScgPjIwMTU8L29wdGlvbj48b3B0aW9uIHZhbHVlPScyMDE0JyA+MjAxNDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzIwMTMnID4yMDEzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMjAxMicgPjIwMTI8L29wdGlvbj48b3B0aW9uIHZhbHVlPScyMDExJyA+MjAxMTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzIwMTAnID4yMDEwPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMjAwOScgPjIwMDk8L29wdGlvbj48b3B0aW9uIHZhbHVlPScyMDA4JyA+MjAwODwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzIwMDcnID4yMDA3PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMjAwNicgPjIwMDY8L29wdGlvbj48b3B0aW9uIHZhbHVlPScyMDA1JyA+MjAwNTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzIwMDQnID4yMDA0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMjAwMycgPjIwMDM8L29wdGlvbj48b3B0aW9uIHZhbHVlPScyMDAyJyA+MjAwMjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzIwMDEnID4yMDAxPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMjAwMCcgPjIwMDA8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTk5JyA+MTk5OTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5OTgnID4xOTk4PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk5NycgPjE5OTc8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTk2JyA+MTk5Njwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5OTUnID4xOTk1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk5NCcgPjE5OTQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTkzJyA+MTk5Mzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5OTInID4xOTkyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk5MScgPjE5OTE8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTkwJyA+MTk5MDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5ODknID4xOTg5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk4OCcgPjE5ODg8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTg3JyA+MTk4Nzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5ODYnID4xOTg2PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk4NScgPjE5ODU8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTg0JyA+MTk4NDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5ODMnID4xOTgzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk4MicgPjE5ODI8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTgxJyA+MTk4MTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5ODAnID4xOTgwPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk3OScgPjE5Nzk8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTc4JyA+MTk3ODwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NzcnID4xOTc3PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk3NicgPjE5NzY8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTc1JyA+MTk3NTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NzQnID4xOTc0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk3MycgPjE5NzM8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTcyJyA+MTk3Mjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NzEnID4xOTcxPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk3MCcgPjE5NzA8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTY5JyA+MTk2OTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NjgnID4xOTY4PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk2NycgPjE5Njc8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTY2JyA+MTk2Njwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NjUnID4xOTY1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk2NCcgPjE5NjQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTYzJyA+MTk2Mzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NjInID4xOTYyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk2MScgPjE5NjE8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTYwJyA+MTk2MDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NTknID4xOTU5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk1OCcgPjE5NTg8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTU3JyA+MTk1Nzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NTYnID4xOTU2PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk1NScgPjE5NTU8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTU0JyA+MTk1NDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NTMnID4xOTUzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk1MicgPjE5NTI8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTUxJyA+MTk1MTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NTAnID4xOTUwPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk0OScgPjE5NDk8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTQ4JyA+MTk0ODwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NDcnID4xOTQ3PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk0NicgPjE5NDY8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTQ1JyA+MTk0NTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NDQnID4xOTQ0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk0MycgPjE5NDM8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTQyJyA+MTk0Mjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5NDEnID4xOTQxPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTk0MCcgPjE5NDA8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTM5JyA+MTkzOTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5MzgnID4xOTM4PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTkzNycgPjE5Mzc8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTM2JyA+MTkzNjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5MzUnID4xOTM1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTkzNCcgPjE5MzQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTMzJyA+MTkzMzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5MzInID4xOTMyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTkzMScgPjE5MzE8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTMwJyA+MTkzMDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5MjknID4xOTI5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTkyOCcgPjE5Mjg8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTI3JyA+MTkyNzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5MjYnID4xOTI2PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTkyNScgPjE5MjU8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTI0JyA+MTkyNDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5MjMnID4xOTIzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nMTkyMicgPjE5MjI8L29wdGlvbj48b3B0aW9uIHZhbHVlPScxOTIxJyA+MTkyMTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9JzE5MjAnID4xOTIwPC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+PC9kaXY+PC9kaXY+PC9saT48L3VsPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J2dmb3JtX3BhZ2VfZm9vdGVyJz4KICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdidXR0b24nIGlkPSdnZm9ybV9uZXh0X2J1dHRvbl8xXzEnIGNsYXNzPSdnZm9ybV9uZXh0X2J1dHRvbiBidXR0b24nIHZhbHVlPSdOZXh0JyB0YWJpbmRleD0nNCcgb25jbGljaz0nalF1ZXJ5KCIjZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzEiKS52YWwoIjIiKTsgIGpRdWVyeSgiI2dmb3JtXzEiKS50cmlnZ2VyKCJzdWJtaXQiLFt0cnVlXSk7ICcgb25rZXlwcmVzcz0naWYoIGV2ZW50LmtleUNvZGUgPT0gMTMgKXsgalF1ZXJ5KCIjZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzEiKS52YWwoIjIiKTsgIGpRdWVyeSgiI2dmb3JtXzEiKS50cmlnZ2VyKCJzdWJtaXQiLFt0cnVlXSk7IH0gJyAvPiAKICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBpZD0nZ2Zvcm1fcGFnZV8xXzInIGNsYXNzPSdnZm9ybV9wYWdlJyBzdHlsZT0nZGlzcGxheTpub25lOyc+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2Zvcm1fcGFnZV9maWVsZHMnPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgaWQ9J2dmb3JtX2ZpZWxkc18xXzInIGNsYXNzPSdnZm9ybV9maWVsZHMgdG9wX2xhYmVsIGZvcm1fc3VibGFiZWxfYmVsb3cgZGVzY3JpcHRpb25fYmVsb3cnPjxsaSBpZD0nZmllbGRfMV8zJyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlJyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMV8zJyA+V2hhdCB0eXBlIG9mIGV2ZW50IGRvIHlvdSBuZWVkIHRoZSBESiBmb3I/PHNwYW4gY2xhc3M9J2dmaWVsZF9yZXF1aXJlZCc+Kjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXIgZ2lucHV0X2NvbnRhaW5lcl9zZWxlY3QnPjxzZWxlY3QgbmFtZT0naW5wdXRfMycgaWQ9J2lucHV0XzFfMycgb25jaGFuZ2U9J2dmX2FwcGx5X3J1bGVzKDEsWzQsNV0pOycgY2xhc3M9J2xhcmdlIGdmaWVsZF9zZWxlY3QnIHRhYmluZGV4PSc1JyAgYXJpYS1yZXF1aXJlZD0idHJ1ZSIgYXJpYS1pbnZhbGlkPSJmYWxzZSI+PG9wdGlvbiB2YWx1ZT0nQmlydGhkYXkgUGFydHknID5CaXJ0aGRheSBQYXJ0eTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvbW11bml0eSBFdmVudCcgPkNvbW11bml0eSBFdmVudDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NocmlzdG1hcyBQYXJ0eScgPkNocmlzdG1hcyBQYXJ0eTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0thcmFva2UgUGFydHknID5LYXJhb2tlIFBhcnR5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29ycG9yYXRlIEV2ZW50JyA+Q29ycG9yYXRlIEV2ZW50PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2Nob29sIERpc2NvL1Byb20nID5TY2hvb2wgRGlzY28vUHJvbTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1dlZGRpbmcgUmVjZXB0aW9uJyA+V2VkZGluZyBSZWNlcHRpb248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdPdGhlcicgPk90aGVyPC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzFfNCcgY2xhc3M9J2dmaWVsZCBnZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgZ2ZpZWxkX3Zpc2liaWxpdHlfdmlzaWJsZScgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzFfNCcgPkFnZTxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfdGV4dCc+PGlucHV0IG5hbWU9J2lucHV0XzQnIGlkPSdpbnB1dF8xXzQnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nICB0YWJpbmRleD0nNicgICBhcmlhLXJlcXVpcmVkPSJ0cnVlIiBhcmlhLWludmFsaWQ9ImZhbHNlIiAvPjwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8xXzUnIGNsYXNzPSdnZmllbGQgZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8xXzUnID5EZXNjcmliZSBPdGhlcjxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfdGV4dCc+PGlucHV0IG5hbWU9J2lucHV0XzUnIGlkPSdpbnB1dF8xXzUnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdsYXJnZScgIHRhYmluZGV4PSc3JyAgIGFyaWEtcmVxdWlyZWQ9InRydWUiIGFyaWEtaW52YWxpZD0iZmFsc2UiIC8+PC9kaXY+PC9saT48L3VsPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J2dmb3JtX3BhZ2VfZm9vdGVyJz4KICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9J2J1dHRvbicgaWQ9J2dmb3JtX3ByZXZpb3VzX2J1dHRvbl8xXzYnIGNsYXNzPSdnZm9ybV9wcmV2aW91c19idXR0b24gYnV0dG9uJyB2YWx1ZT0nUHJldmlvdXMnIHRhYmluZGV4PSc4JyBvbmNsaWNrPSdqUXVlcnkoIiNnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMSIpLnZhbCgiMSIpOyAgalF1ZXJ5KCIjZ2Zvcm1fMSIpLnRyaWdnZXIoInN1Ym1pdCIsW3RydWVdKTsgJyBvbmtleXByZXNzPSdpZiggZXZlbnQua2V5Q29kZSA9PSAxMyApeyBqUXVlcnkoIiNnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMSIpLnZhbCgiMSIpOyAgalF1ZXJ5KCIjZ2Zvcm1fMSIpLnRyaWdnZXIoInN1Ym1pdCIsW3RydWVdKTsgfSAnIC8+IDxpbnB1dCB0eXBlPSdidXR0b24nIGlkPSdnZm9ybV9uZXh0X2J1dHRvbl8xXzYnIGNsYXNzPSdnZm9ybV9uZXh0X2J1dHRvbiBidXR0b24nIHZhbHVlPSdOZXh0JyB0YWJpbmRleD0nOScgb25jbGljaz0nalF1ZXJ5KCIjZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzEiKS52YWwoIjMiKTsgIGpRdWVyeSgiI2dmb3JtXzEiKS50cmlnZ2VyKCJzdWJtaXQiLFt0cnVlXSk7ICcgb25rZXlwcmVzcz0naWYoIGV2ZW50LmtleUNvZGUgPT0gMTMgKXsgalF1ZXJ5KCIjZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzEiKS52YWwoIjMiKTsgIGpRdWVyeSgiI2dmb3JtXzEiKS50cmlnZ2VyKCJzdWJtaXQiLFt0cnVlXSk7IH0gJyAvPiAKICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBpZD0nZ2Zvcm1fcGFnZV8xXzMnIGNsYXNzPSdnZm9ybV9wYWdlJyBzdHlsZT0nZGlzcGxheTpub25lOyc+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2Zvcm1fcGFnZV9maWVsZHMnPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgaWQ9J2dmb3JtX2ZpZWxkc18xXzMnIGNsYXNzPSdnZm9ybV9maWVsZHMgdG9wX2xhYmVsIGZvcm1fc3VibGFiZWxfYmVsb3cgZGVzY3JpcHRpb25fYmVsb3cnPjxsaSBpZD0nZmllbGRfMV8xNCcgY2xhc3M9J2dmaWVsZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlJyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnICA+V2hpY2ggdHlwZXMgb2YgREogU2VydmljZSB3b3VsZCB5b3UgY29uc2lkZXI/PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfY2hlY2tib3gnPjx1bCBjbGFzcz0nZ2ZpZWxkX2NoZWNrYm94JyBpZD0naW5wdXRfMV8xNCc+PGxpIGNsYXNzPSdnY2hvaWNlXzFfMTRfMSc+CgkJCQkJCQkJPGlucHV0IG5hbWU9J2lucHV0XzE0LjEnIHR5cGU9J2NoZWNrYm94JyAgdmFsdWU9J1dhbGsgaW4gREogdXNpbmcgeW91ci92ZW51ZXMgZXF1aXBtZW50JyAgaWQ9J2Nob2ljZV8xXzE0XzEnIHRhYmluZGV4PScxMCcgIC8+CgkJCQkJCQkJPGxhYmVsIGZvcj0nY2hvaWNlXzFfMTRfMScgaWQ9J2xhYmVsXzFfMTRfMSc+V2FsayBpbiBESiB1c2luZyB5b3VyL3ZlbnVlcyBlcXVpcG1lbnQ8L2xhYmVsPgoJCQkJCQkJPC9saT48bGkgY2xhc3M9J2djaG9pY2VfMV8xNF8yJz4KCQkJCQkJCQk8aW5wdXQgbmFtZT0naW5wdXRfMTQuMicgdHlwZT0nY2hlY2tib3gnICB2YWx1ZT0nREogdXNpbmcgdGhlaXIgb3duIGVxdWlwbWVudCcgIGlkPSdjaG9pY2VfMV8xNF8yJyB0YWJpbmRleD0nMTEnICAvPgoJCQkJCQkJCTxsYWJlbCBmb3I9J2Nob2ljZV8xXzE0XzInIGlkPSdsYWJlbF8xXzE0XzInPkRKIHVzaW5nIHRoZWlyIG93biBlcXVpcG1lbnQ8L2xhYmVsPgoJCQkJCQkJPC9saT48L3VsPjwvZGl2PjwvbGk+PC91bD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdnZm9ybV9wYWdlX2Zvb3Rlcic+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdidXR0b24nIGlkPSdnZm9ybV9wcmV2aW91c19idXR0b25fMV85JyBjbGFzcz0nZ2Zvcm1fcHJldmlvdXNfYnV0dG9uIGJ1dHRvbicgdmFsdWU9J1ByZXZpb3VzJyB0YWJpbmRleD0nMTInIG9uY2xpY2s9J2pRdWVyeSgiI2dmb3JtX3RhcmdldF9wYWdlX251bWJlcl8xIikudmFsKCIyIik7ICBqUXVlcnkoIiNnZm9ybV8xIikudHJpZ2dlcigic3VibWl0IixbdHJ1ZV0pOyAnIG9ua2V5cHJlc3M9J2lmKCBldmVudC5rZXlDb2RlID09IDEzICl7IGpRdWVyeSgiI2dmb3JtX3RhcmdldF9wYWdlX251bWJlcl8xIikudmFsKCIyIik7ICBqUXVlcnkoIiNnZm9ybV8xIikudHJpZ2dlcigic3VibWl0IixbdHJ1ZV0pOyB9ICcgLz4gPGlucHV0IHR5cGU9J2J1dHRvbicgaWQ9J2dmb3JtX25leHRfYnV0dG9uXzFfOScgY2xhc3M9J2dmb3JtX25leHRfYnV0dG9uIGJ1dHRvbicgdmFsdWU9J05leHQnIHRhYmluZGV4PScxMycgb25jbGljaz0nalF1ZXJ5KCIjZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzEiKS52YWwoIjQiKTsgIGpRdWVyeSgiI2dmb3JtXzEiKS50cmlnZ2VyKCJzdWJtaXQiLFt0cnVlXSk7ICcgb25rZXlwcmVzcz0naWYoIGV2ZW50LmtleUNvZGUgPT0gMTMgKXsgalF1ZXJ5KCIjZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzEiKS52YWwoIjQiKTsgIGpRdWVyeSgiI2dmb3JtXzEiKS50cmlnZ2VyKCJzdWJtaXQiLFt0cnVlXSk7IH0gJyAvPiAKICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBpZD0nZ2Zvcm1fcGFnZV8xXzQnIGNsYXNzPSdnZm9ybV9wYWdlJyBzdHlsZT0nZGlzcGxheTpub25lOyc+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2Zvcm1fcGFnZV9maWVsZHMnPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgaWQ9J2dmb3JtX2ZpZWxkc18xXzQnIGNsYXNzPSdnZm9ybV9maWVsZHMgdG9wX2xhYmVsIGZvcm1fc3VibGFiZWxfYmVsb3cgZGVzY3JpcHRpb25fYmVsb3cnPjxsaSBpZD0nZmllbGRfMV8xNScgY2xhc3M9J2dmaWVsZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlJyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnICA+V2hpY2ggb2YgdGhlIGZvbGxvd2luZyBzZXJ2aWNlcyBkbyB5b3UgcmVxdWlyZT88L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXIgZ2lucHV0X2NvbnRhaW5lcl9jaGVja2JveCc+PHVsIGNsYXNzPSdnZmllbGRfY2hlY2tib3gnIGlkPSdpbnB1dF8xXzE1Jz48bGkgY2xhc3M9J2djaG9pY2VfMV8xNV8xJz4KCQkJCQkJCQk8aW5wdXQgbmFtZT0naW5wdXRfMTUuMScgdHlwZT0nY2hlY2tib3gnICB2YWx1ZT0nSW50ZWxsaWdlbnQgRGlzY28gTGlnaHRpbmcnICBpZD0nY2hvaWNlXzFfMTVfMScgdGFiaW5kZXg9JzE0JyAgLz4KCQkJCQkJCQk8bGFiZWwgZm9yPSdjaG9pY2VfMV8xNV8xJyBpZD0nbGFiZWxfMV8xNV8xJz5JbnRlbGxpZ2VudCBEaXNjbyBMaWdodGluZzwvbGFiZWw+CgkJCQkJCQk8L2xpPjxsaSBjbGFzcz0nZ2Nob2ljZV8xXzE1XzInPgoJCQkJCQkJCTxpbnB1dCBuYW1lPSdpbnB1dF8xNS4yJyB0eXBlPSdjaGVja2JveCcgIHZhbHVlPSdLYXJhb2tlIChNaWNyb3Bob25lcywgU2NyZWVucyBhbmQgU29uZyBCb29rcyknICBpZD0nY2hvaWNlXzFfMTVfMicgdGFiaW5kZXg9JzE1JyAgLz4KCQkJCQkJCQk8bGFiZWwgZm9yPSdjaG9pY2VfMV8xNV8yJyBpZD0nbGFiZWxfMV8xNV8yJz5LYXJhb2tlIChNaWNyb3Bob25lcywgU2NyZWVucyBhbmQgU29uZyBCb29rcyk8L2xhYmVsPgoJCQkJCQkJPC9saT48bGkgY2xhc3M9J2djaG9pY2VfMV8xNV8zJz4KCQkJCQkJCQk8aW5wdXQgbmFtZT0naW5wdXRfMTUuMycgdHlwZT0nY2hlY2tib3gnICB2YWx1ZT0nU21va2UsIEhhemUgb3IgQnViYmxlIE1hY2hpbmVzJyAgaWQ9J2Nob2ljZV8xXzE1XzMnIHRhYmluZGV4PScxNicgIC8+CgkJCQkJCQkJPGxhYmVsIGZvcj0nY2hvaWNlXzFfMTVfMycgaWQ9J2xhYmVsXzFfMTVfMyc+U21va2UsIEhhemUgb3IgQnViYmxlIE1hY2hpbmVzPC9sYWJlbD4KCQkJCQkJCTwvbGk+PGxpIGNsYXNzPSdnY2hvaWNlXzFfMTVfNCc+CgkJCQkJCQkJPGlucHV0IG5hbWU9J2lucHV0XzE1LjQnIHR5cGU9J2NoZWNrYm94JyAgdmFsdWU9J1VwbGlnaHRpbmcnICBpZD0nY2hvaWNlXzFfMTVfNCcgdGFiaW5kZXg9JzE3JyAgLz4KCQkJCQkJCQk8bGFiZWwgZm9yPSdjaG9pY2VfMV8xNV80JyBpZD0nbGFiZWxfMV8xNV80Jz5VcGxpZ2h0aW5nPC9sYWJlbD4KCQkJCQkJCTwvbGk+PC91bD48L2Rpdj48L2xpPjwvdWw+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2Zvcm1fcGFnZV9mb290ZXInPgogICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0nYnV0dG9uJyBpZD0nZ2Zvcm1fcHJldmlvdXNfYnV0dG9uXzFfMTEnIGNsYXNzPSdnZm9ybV9wcmV2aW91c19idXR0b24gYnV0dG9uJyB2YWx1ZT0nUHJldmlvdXMnIHRhYmluZGV4PScxOCcgb25jbGljaz0nalF1ZXJ5KCIjZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzEiKS52YWwoIjMiKTsgIGpRdWVyeSgiI2dmb3JtXzEiKS50cmlnZ2VyKCJzdWJtaXQiLFt0cnVlXSk7ICcgb25rZXlwcmVzcz0naWYoIGV2ZW50LmtleUNvZGUgPT0gMTMgKXsgalF1ZXJ5KCIjZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzEiKS52YWwoIjMiKTsgIGpRdWVyeSgiI2dmb3JtXzEiKS50cmlnZ2VyKCJzdWJtaXQiLFt0cnVlXSk7IH0gJyAvPiA8aW5wdXQgdHlwZT0nYnV0dG9uJyBpZD0nZ2Zvcm1fbmV4dF9idXR0b25fMV8xMScgY2xhc3M9J2dmb3JtX25leHRfYnV0dG9uIGJ1dHRvbicgdmFsdWU9J05leHQnIHRhYmluZGV4PScxOScgb25jbGljaz0nalF1ZXJ5KCIjZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzEiKS52YWwoIjUiKTsgIGpRdWVyeSgiI2dmb3JtXzEiKS50cmlnZ2VyKCJzdWJtaXQiLFt0cnVlXSk7ICcgb25rZXlwcmVzcz0naWYoIGV2ZW50LmtleUNvZGUgPT0gMTMgKXsgalF1ZXJ5KCIjZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzEiKS52YWwoIjUiKTsgIGpRdWVyeSgiI2dmb3JtXzEiKS50cmlnZ2VyKCJzdWJtaXQiLFt0cnVlXSk7IH0gJyAvPiAKICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBpZD0nZ2Zvcm1fcGFnZV8xXzUnIGNsYXNzPSdnZm9ybV9wYWdlJyBzdHlsZT0nZGlzcGxheTpub25lOyc+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2Zvcm1fcGFnZV9maWVsZHMnPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgaWQ9J2dmb3JtX2ZpZWxkc18xXzUnIGNsYXNzPSdnZm9ybV9maWVsZHMgdG9wX2xhYmVsIGZvcm1fc3VibGFiZWxfYmVsb3cgZGVzY3JpcHRpb25fYmVsb3cnPjxsaSBpZD0nZmllbGRfMV8xOCcgY2xhc3M9J2dmaWVsZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlJyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwgZ2ZpZWxkX2xhYmVsX2JlZm9yZV9jb21wbGV4JyBmb3I9J2lucHV0XzFfMThfMScgPldoYXQgdGltZSB3b3VsZCB5b3UgbGlrZSB0aGUgREomIzAzOTtzIHRvIHN0YXJ0IHBsYXlpbmcgbXVzaWM/PC9sYWJlbD48ZGl2IGNsYXNzPSdjbGVhci1tdWx0aSc+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J2dmaWVsZF90aW1lX2hvdXIgZ2lucHV0X2NvbnRhaW5lciBnaW5wdXRfY29udGFpbmVyX3RpbWUnIGlkPSdpbnB1dF8xXzE4Jz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSd0ZXh0JyBtYXhsZW5ndGg9JzInIG5hbWU9J2lucHV0XzE4W10nIGlkPSdpbnB1dF8xXzE4XzEnIHZhbHVlPScnIHRhYmluZGV4PScyMCcgICAvPiA8aT46PC9pPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0naW5wdXRfMV8xOF8xJyA+SEg8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2ZpZWxkX3RpbWVfbWludXRlIGdpbnB1dF9jb250YWluZXIgZ2lucHV0X2NvbnRhaW5lcl90aW1lJz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSd0ZXh0JyBtYXhsZW5ndGg9JzInIG5hbWU9J2lucHV0XzE4W10nIGlkPSdpbnB1dF8xXzE4XzInIHZhbHVlPScnIHRhYmluZGV4PScyMScgICAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0naW5wdXRfMV8xOF8yJyA+TU08L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9saT48bGkgaWQ9J2ZpZWxkXzFfMTcnIGNsYXNzPSdnZmllbGQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgZ2ZpZWxkX3Zpc2liaWxpdHlfdmlzaWJsZScgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzFfMTcnID5Ib3cgbWFueSBob3VycyB3b3VsZCB5b3UgbGlrZSB0byBib29rIHRoZSBESiBmb3I/PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfbnVtYmVyJz48aW5wdXQgbmFtZT0naW5wdXRfMTcnIGlkPSdpbnB1dF8xXzE3JyB0eXBlPSd0ZXh0JyAgICB2YWx1ZT0nJyBjbGFzcz0nbWVkaXVtJyB0YWJpbmRleD0nMjMnICAgICAgYXJpYS1pbnZhbGlkPSJmYWxzZSIvPjwvZGl2PjwvbGk+PC91bD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdnZm9ybV9wYWdlX2Zvb3Rlcic+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdidXR0b24nIGlkPSdnZm9ybV9wcmV2aW91c19idXR0b25fMV8xNicgY2xhc3M9J2dmb3JtX3ByZXZpb3VzX2J1dHRvbiBidXR0b24nIHZhbHVlPSdQcmV2aW91cycgdGFiaW5kZXg9JzI0JyBvbmNsaWNrPSdqUXVlcnkoIiNnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMSIpLnZhbCgiNCIpOyAgalF1ZXJ5KCIjZ2Zvcm1fMSIpLnRyaWdnZXIoInN1Ym1pdCIsW3RydWVdKTsgJyBvbmtleXByZXNzPSdpZiggZXZlbnQua2V5Q29kZSA9PSAxMyApeyBqUXVlcnkoIiNnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMSIpLnZhbCgiNCIpOyAgalF1ZXJ5KCIjZ2Zvcm1fMSIpLnRyaWdnZXIoInN1Ym1pdCIsW3RydWVdKTsgfSAnIC8+IDxpbnB1dCB0eXBlPSdidXR0b24nIGlkPSdnZm9ybV9uZXh0X2J1dHRvbl8xXzE2JyBjbGFzcz0nZ2Zvcm1fbmV4dF9idXR0b24gYnV0dG9uJyB2YWx1ZT0nTmV4dCcgdGFiaW5kZXg9JzI1JyBvbmNsaWNrPSdqUXVlcnkoIiNnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMSIpLnZhbCgiNiIpOyAgalF1ZXJ5KCIjZ2Zvcm1fMSIpLnRyaWdnZXIoInN1Ym1pdCIsW3RydWVdKTsgJyBvbmtleXByZXNzPSdpZiggZXZlbnQua2V5Q29kZSA9PSAxMyApeyBqUXVlcnkoIiNnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMSIpLnZhbCgiNiIpOyAgalF1ZXJ5KCIjZ2Zvcm1fMSIpLnRyaWdnZXIoInN1Ym1pdCIsW3RydWVdKTsgfSAnIC8+IAogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGlkPSdnZm9ybV9wYWdlXzFfNicgY2xhc3M9J2dmb3JtX3BhZ2UnIHN0eWxlPSdkaXNwbGF5Om5vbmU7Jz4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdnZm9ybV9wYWdlX2ZpZWxkcyc+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBpZD0nZ2Zvcm1fZmllbGRzXzFfNicgY2xhc3M9J2dmb3JtX2ZpZWxkcyB0b3BfbGFiZWwgZm9ybV9zdWJsYWJlbF9iZWxvdyBkZXNjcmlwdGlvbl9iZWxvdyc+PGxpIGlkPSdmaWVsZF8xXzEyJyBjbGFzcz0nZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlJyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMV8xMicgPldoZXJlIHdpbGwgdGhlIGV2ZW50IGJlIHRha2luZyBwbGFjZT88c3BhbiBjbGFzcz0nZ2ZpZWxkX3JlcXVpcmVkJz4qPC9zcGFuPjwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lciBnaW5wdXRfY29udGFpbmVyX3RleHQnPjxpbnB1dCBuYW1lPSdpbnB1dF8xMicgaWQ9J2lucHV0XzFfMTInIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdsYXJnZScgIHRhYmluZGV4PScyNicgICBhcmlhLXJlcXVpcmVkPSJ0cnVlIiBhcmlhLWludmFsaWQ9ImZhbHNlIiAvPjwvZGl2PjwvbGk+PC91bD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdnZm9ybV9wYWdlX2Zvb3Rlcic+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdidXR0b24nIGlkPSdnZm9ybV9wcmV2aW91c19idXR0b25fMV8xOScgY2xhc3M9J2dmb3JtX3ByZXZpb3VzX2J1dHRvbiBidXR0b24nIHZhbHVlPSdQcmV2aW91cycgdGFiaW5kZXg9JzI3JyBvbmNsaWNrPSdqUXVlcnkoIiNnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMSIpLnZhbCgiNSIpOyAgalF1ZXJ5KCIjZ2Zvcm1fMSIpLnRyaWdnZXIoInN1Ym1pdCIsW3RydWVdKTsgJyBvbmtleXByZXNzPSdpZiggZXZlbnQua2V5Q29kZSA9PSAxMyApeyBqUXVlcnkoIiNnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMSIpLnZhbCgiNSIpOyAgalF1ZXJ5KCIjZ2Zvcm1fMSIpLnRyaWdnZXIoInN1Ym1pdCIsW3RydWVdKTsgfSAnIC8+IDxpbnB1dCB0eXBlPSdidXR0b24nIGlkPSdnZm9ybV9uZXh0X2J1dHRvbl8xXzE5JyBjbGFzcz0nZ2Zvcm1fbmV4dF9idXR0b24gYnV0dG9uJyB2YWx1ZT0nTmV4dCcgdGFiaW5kZXg9JzI4JyBvbmNsaWNrPSdqUXVlcnkoIiNnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMSIpLnZhbCgiNyIpOyAgalF1ZXJ5KCIjZ2Zvcm1fMSIpLnRyaWdnZXIoInN1Ym1pdCIsW3RydWVdKTsgJyBvbmtleXByZXNzPSdpZiggZXZlbnQua2V5Q29kZSA9PSAxMyApeyBqUXVlcnkoIiNnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMSIpLnZhbCgiNyIpOyAgalF1ZXJ5KCIjZ2Zvcm1fMSIpLnRyaWdnZXIoInN1Ym1pdCIsW3RydWVdKTsgfSAnIC8+IAogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGlkPSdnZm9ybV9wYWdlXzFfNycgY2xhc3M9J2dmb3JtX3BhZ2UnIHN0eWxlPSdkaXNwbGF5Om5vbmU7Jz4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdnZm9ybV9wYWdlX2ZpZWxkcyc+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBpZD0nZ2Zvcm1fZmllbGRzXzFfNycgY2xhc3M9J2dmb3JtX2ZpZWxkcyB0b3BfbGFiZWwgZm9ybV9zdWJsYWJlbF9iZWxvdyBkZXNjcmlwdGlvbl9iZWxvdyc+PGxpIGlkPSdmaWVsZF8xXzIwJyBjbGFzcz0nZ2ZpZWxkIGwgZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCBnZmllbGRfbGFiZWxfYmVmb3JlX2NvbXBsZXgnIGZvcj0naW5wdXRfMV8yMF8zJyA+TmFtZTxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29tcGxleCBnaW5wdXRfY29udGFpbmVyIG5vX3ByZWZpeCBoYXNfZmlyc3RfbmFtZSBub19taWRkbGVfbmFtZSBoYXNfbGFzdF9uYW1lIG5vX3N1ZmZpeCBnZl9uYW1lX2hhc18yIGdpbnB1dF9jb250YWluZXJfbmFtZSBnZmllbGRfdHJpZ2dlcl9jaGFuZ2UnIGlkPSdpbnB1dF8xXzIwJz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9J2lucHV0XzFfMjBfM19jb250YWluZXInIGNsYXNzPSduYW1lX2ZpcnN0JyA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0ndGV4dCcgbmFtZT0naW5wdXRfMjAuMycgaWQ9J2lucHV0XzFfMjBfMycgdmFsdWU9JycgYXJpYS1sYWJlbD0nRmlyc3QgbmFtZScgdGFiaW5kZXg9JzMwJyAgYXJpYS1yZXF1aXJlZD0idHJ1ZSIgYXJpYS1pbnZhbGlkPSJmYWxzZSIgcGxhY2Vob2xkZXI9J0ZpcnN0IE5hbWUnLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9J2lucHV0XzFfMjBfMycgPkZpcnN0IE5hbWU8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPSdpbnB1dF8xXzIwXzZfY29udGFpbmVyJyBjbGFzcz0nbmFtZV9sYXN0JyA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0ndGV4dCcgbmFtZT0naW5wdXRfMjAuNicgaWQ9J2lucHV0XzFfMjBfNicgdmFsdWU9JycgYXJpYS1sYWJlbD0nTGFzdCBuYW1lJyB0YWJpbmRleD0nMzInICBhcmlhLXJlcXVpcmVkPSJ0cnVlIiBhcmlhLWludmFsaWQ9ImZhbHNlIiBwbGFjZWhvbGRlcj0nTGFzdCBOYW1lJy8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSdpbnB1dF8xXzIwXzYnID5MYXN0PC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvbGk+PGxpIGlkPSdmaWVsZF8xXzIxJyBjbGFzcz0nZ2ZpZWxkIGwgZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUnID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8xXzIxJyA+RW1haWw8c3BhbiBjbGFzcz0nZ2ZpZWxkX3JlcXVpcmVkJz4qPC9zcGFuPjwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lciBnaW5wdXRfY29udGFpbmVyX2VtYWlsJz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBuYW1lPSdpbnB1dF8yMScgaWQ9J2lucHV0XzFfMjEnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdsYXJnZScgdGFiaW5kZXg9JzM0JyAgIHBsYWNlaG9sZGVyPSdFbWFpbCcgYXJpYS1yZXF1aXJlZD0idHJ1ZSIgYXJpYS1pbnZhbGlkPSJmYWxzZSIvPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2xpPjxsaSBpZD0nZmllbGRfMV8yMycgY2xhc3M9J2dmaWVsZCBsIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlJyA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMV8yMycgPlBob25lIE51bWJlcjxzcGFuIGNsYXNzPSdnZmllbGRfcmVxdWlyZWQnPio8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfdGV4dCc+PGlucHV0IG5hbWU9J2lucHV0XzIzJyBpZD0naW5wdXRfMV8yMycgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J2xhcmdlJyAgdGFiaW5kZXg9JzM1JyAgcGxhY2Vob2xkZXI9J1Bob25lIE51bWJlcicgYXJpYS1yZXF1aXJlZD0idHJ1ZSIgYXJpYS1pbnZhbGlkPSJmYWxzZSIgLz48L2Rpdj48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSdnZm9ybV9wYWdlX2Zvb3RlciB0b3BfbGFiZWwnPjxpbnB1dCB0eXBlPSdzdWJtaXQnIGlkPSdnZm9ybV9wcmV2aW91c19idXR0b25fMScgY2xhc3M9J2dmb3JtX3ByZXZpb3VzX2J1dHRvbiBidXR0b24nIHZhbHVlPSdQcmV2aW91cycgdGFiaW5kZXg9JzM2JyBvbmNsaWNrPSdpZih3aW5kb3dbImdmX3N1Ym1pdHRpbmdfMSJdKXtyZXR1cm4gZmFsc2U7fSAgd2luZG93WyJnZl9zdWJtaXR0aW5nXzEiXT10cnVlOyAgJyBvbmtleXByZXNzPSdpZiggZXZlbnQua2V5Q29kZSA9PSAxMyApeyBpZih3aW5kb3dbImdmX3N1Ym1pdHRpbmdfMSJdKXtyZXR1cm4gZmFsc2U7fSB3aW5kb3dbImdmX3N1Ym1pdHRpbmdfMSJdPXRydWU7ICBqUXVlcnkoIiNnZm9ybV8xIikudHJpZ2dlcigic3VibWl0IixbdHJ1ZV0pOyB9JyAvPiA8aW5wdXQgdHlwZT0nc3VibWl0JyBpZD0nZ2Zvcm1fc3VibWl0X2J1dHRvbl8xJyBjbGFzcz0nZ2Zvcm1fYnV0dG9uIGJ1dHRvbicgdmFsdWU9J1N1Ym1pdCcgdGFiaW5kZXg9JzM3JyBvbmNsaWNrPSdpZih3aW5kb3dbImdmX3N1Ym1pdHRpbmdfMSJdKXtyZXR1cm4gZmFsc2U7fSAgd2luZG93WyJnZl9zdWJtaXR0aW5nXzEiXT10cnVlOyAgJyBvbmtleXByZXNzPSdpZiggZXZlbnQua2V5Q29kZSA9PSAxMyApeyBpZih3aW5kb3dbImdmX3N1Ym1pdHRpbmdfMSJdKXtyZXR1cm4gZmFsc2U7fSB3aW5kb3dbImdmX3N1Ym1pdHRpbmdfMSJdPXRydWU7ICBqUXVlcnkoIiNnZm9ybV8xIikudHJpZ2dlcigic3VibWl0IixbdHJ1ZV0pOyB9JyAvPiA8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSdnZm9ybV9hamF4JyB2YWx1ZT0nZm9ybV9pZD0xJmFtcDt0aXRsZT0mYW1wO2Rlc2NyaXB0aW9uPSZhbXA7dGFiaW5kZXg9MCcgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0naXNfc3VibWl0XzEnIHZhbHVlPScxJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdnZm9ybV9zdWJtaXQnIHZhbHVlPScxJyAvPgogICAgICAgICAgICAKICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fdW5pcXVlX2lkJyB2YWx1ZT0nJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdzdGF0ZV8xJyB2YWx1ZT0nV3lKYlhTSXNJbVJpWlRBeVpEQTBaVEEzT0RSa05HTmhPVEUwT0daaFkyUXpOR1JoTXpZMUlsMD0nIC8+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2dmb3JtX3RhcmdldF9wYWdlX251bWJlcl8xJyBpZD0nZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzEnIHZhbHVlPScyJyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdnZm9ybV9zb3VyY2VfcGFnZV9udW1iZXJfMScgaWQ9J2dmb3JtX3NvdXJjZV9wYWdlX251bWJlcl8xJyB2YWx1ZT0nMScgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0nZ2Zvcm1fZmllbGRfdmFsdWVzJyB2YWx1ZT0nJyAvPgogICAgICAgICAgICAKICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZm9ybT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8aWZyYW1lIHN0eWxlPSdkaXNwbGF5Om5vbmU7d2lkdGg6MHB4O2hlaWdodDowcHg7JyBzcmM9J2Fib3V0OmJsYW5rJyBuYW1lPSdnZm9ybV9hamF4X2ZyYW1lXzEnIGlkPSdnZm9ybV9hamF4X2ZyYW1lXzEnPlRoaXMgaWZyYW1lIGNvbnRhaW5zIHRoZSBsb2dpYyByZXF1aXJlZCB0byBoYW5kbGUgQWpheCBwb3dlcmVkIEdyYXZpdHkgRm9ybXMuPC9pZnJhbWU+CiAgICAgICAgICAgICAgICA8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+alF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigkKXtnZm9ybUluaXRTcGlubmVyKCAxLCAnaHR0cDovL2dyb292ZWNvbnRyb2xkanMuY28udWsvd3AtY29udGVudC9wbHVnaW5zL2dyYXZpdHlmb3Jtcy9pbWFnZXMvc3Bpbm5lci5naWYnICk7alF1ZXJ5KCcjZ2Zvcm1fYWpheF9mcmFtZV8xJykubG9hZCggZnVuY3Rpb24oKXt2YXIgY29udGVudHMgPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcqJykuaHRtbCgpO3ZhciBpc19wb3N0YmFjayA9IGNvbnRlbnRzLmluZGV4T2YoJ0dGX0FKQVhfUE9TVEJBQ0snKSA+PSAwO2lmKCFpc19wb3N0YmFjayl7cmV0dXJuO312YXIgZm9ybV9jb250ZW50ID0galF1ZXJ5KHRoaXMpLmNvbnRlbnRzKCkuZmluZCgnI2dmb3JtX3dyYXBwZXJfMScpO3ZhciBpc19jb25maXJtYXRpb24gPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcjZ2Zvcm1fY29uZmlybWF0aW9uX3dyYXBwZXJfMScpLmxlbmd0aCA+IDA7dmFyIGlzX3JlZGlyZWN0ID0gY29udGVudHMuaW5kZXhPZignZ2Zvcm1SZWRpcmVjdCgpeycpID49IDA7dmFyIGlzX2Zvcm0gPSBmb3JtX2NvbnRlbnQubGVuZ3RoID4gMCAmJiAhIGlzX3JlZGlyZWN0ICYmICEgaXNfY29uZmlybWF0aW9uO2lmKGlzX2Zvcm0pe2pRdWVyeSgnI2dmb3JtX3dyYXBwZXJfMScpLmh0bWwoZm9ybV9jb250ZW50Lmh0bWwoKSk7aWYoZm9ybV9jb250ZW50Lmhhc0NsYXNzKCdnZm9ybV92YWxpZGF0aW9uX2Vycm9yJykpe2pRdWVyeSgnI2dmb3JtX3dyYXBwZXJfMScpLmFkZENsYXNzKCdnZm9ybV92YWxpZGF0aW9uX2Vycm9yJyk7fSBlbHNlIHtqUXVlcnkoJyNnZm9ybV93cmFwcGVyXzEnKS5yZW1vdmVDbGFzcygnZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvcicpO31zZXRUaW1lb3V0KCBmdW5jdGlvbigpIHsgLyogZGVsYXkgdGhlIHNjcm9sbCBieSA1MCBtaWxsaXNlY29uZHMgdG8gZml4IGEgYnVnIGluIGNocm9tZSAqLyBqUXVlcnkoZG9jdW1lbnQpLnNjcm9sbFRvcChqUXVlcnkoJyNnZm9ybV93cmFwcGVyXzEnKS5vZmZzZXQoKS50b3ApOyB9LCA1MCApO2lmKHdpbmRvd1snZ2Zvcm1Jbml0RGF0ZXBpY2tlciddKSB7Z2Zvcm1Jbml0RGF0ZXBpY2tlcigpO31pZih3aW5kb3dbJ2dmb3JtSW5pdFByaWNlRmllbGRzJ10pIHtnZm9ybUluaXRQcmljZUZpZWxkcygpO312YXIgY3VycmVudF9wYWdlID0galF1ZXJ5KCcjZ2Zvcm1fc291cmNlX3BhZ2VfbnVtYmVyXzEnKS52YWwoKTtnZm9ybUluaXRTcGlubmVyKCAxLCAnaHR0cDovL2dyb292ZWNvbnRyb2xkanMuY28udWsvd3AtY29udGVudC9wbHVnaW5zL2dyYXZpdHlmb3Jtcy9pbWFnZXMvc3Bpbm5lci5naWYnICk7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wYWdlX2xvYWRlZCcsIFsxLCBjdXJyZW50X3BhZ2VdKTt3aW5kb3dbJ2dmX3N1Ym1pdHRpbmdfMSddID0gZmFsc2U7fWVsc2UgaWYoIWlzX3JlZGlyZWN0KXt2YXIgY29uZmlybWF0aW9uX2NvbnRlbnQgPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcuR0ZfQUpBWF9QT1NUQkFDSycpLmh0bWwoKTtpZighY29uZmlybWF0aW9uX2NvbnRlbnQpe2NvbmZpcm1hdGlvbl9jb250ZW50ID0gY29udGVudHM7fXNldFRpbWVvdXQoZnVuY3Rpb24oKXtqUXVlcnkoJyNnZm9ybV93cmFwcGVyXzEnKS5yZXBsYWNlV2l0aChjb25maXJtYXRpb25fY29udGVudCk7alF1ZXJ5KGRvY3VtZW50KS5zY3JvbGxUb3AoalF1ZXJ5KCcjZ2ZfMScpLm9mZnNldCgpLnRvcCk7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9jb25maXJtYXRpb25fbG9hZGVkJywgWzFdKTt3aW5kb3dbJ2dmX3N1Ym1pdHRpbmdfMSddID0gZmFsc2U7fSwgNTApO31lbHNle2pRdWVyeSgnI2dmb3JtXzEnKS5hcHBlbmQoY29udGVudHMpO2lmKHdpbmRvd1snZ2Zvcm1SZWRpcmVjdCddKSB7Z2Zvcm1SZWRpcmVjdCgpO319alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wb3N0X3JlbmRlcicsIFsxLCBjdXJyZW50X3BhZ2VdKTt9ICk7fSApOzwvc2NyaXB0PjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4gaWYodHlwZW9mIGdmX2dsb2JhbCA9PSAndW5kZWZpbmVkJykgdmFyIGdmX2dsb2JhbCA9IHsiZ2ZfY3VycmVuY3lfY29uZmlnIjp7Im5hbWUiOiJVLlMuIERvbGxhciIsInN5bWJvbF9sZWZ0IjoiJCIsInN5bWJvbF9yaWdodCI6IiIsInN5bWJvbF9wYWRkaW5nIjoiIiwidGhvdXNhbmRfc2VwYXJhdG9yIjoiLCIsImRlY2ltYWxfc2VwYXJhdG9yIjoiLiIsImRlY2ltYWxzIjoyfSwiYmFzZV91cmwiOiJodHRwOlwvXC9ncm9vdmVjb250cm9sZGpzLmNvLnVrXC93cC1jb250ZW50XC9wbHVnaW5zXC9ncmF2aXR5Zm9ybXMiLCJudW1iZXJfZm9ybWF0cyI6W10sInNwaW5uZXJVcmwiOiJodHRwOlwvXC9ncm9vdmVjb250cm9sZGpzLmNvLnVrXC93cC1jb250ZW50XC9wbHVnaW5zXC9ncmF2aXR5Zm9ybXNcL2ltYWdlc1wvc3Bpbm5lci5naWYifTtqUXVlcnkoZG9jdW1lbnQpLmJpbmQoJ2dmb3JtX3Bvc3RfcmVuZGVyJywgZnVuY3Rpb24oZXZlbnQsIGZvcm1JZCwgY3VycmVudFBhZ2Upe2lmKGZvcm1JZCA9PSAxKSB7Z2ZfZ2xvYmFsWyJudW1iZXJfZm9ybWF0cyJdWzFdID0geyIyIjp7InByaWNlIjpmYWxzZSwidmFsdWUiOmZhbHNlfSwiMSI6eyJwcmljZSI6ZmFsc2UsInZhbHVlIjpmYWxzZX0sIjMiOnsicHJpY2UiOmZhbHNlLCJ2YWx1ZSI6ZmFsc2V9LCI0Ijp7InByaWNlIjpmYWxzZSwidmFsdWUiOmZhbHNlfSwiNSI6eyJwcmljZSI6ZmFsc2UsInZhbHVlIjpmYWxzZX0sIjYiOnsicHJpY2UiOmZhbHNlLCJ2YWx1ZSI6ZmFsc2V9LCIxNCI6eyJwcmljZSI6ZmFsc2UsInZhbHVlIjpmYWxzZX0sIjkiOnsicHJpY2UiOmZhbHNlLCJ2YWx1ZSI6ZmFsc2V9LCIxNSI6eyJwcmljZSI6ZmFsc2UsInZhbHVlIjpmYWxzZX0sIjExIjp7InByaWNlIjpmYWxzZSwidmFsdWUiOmZhbHNlfSwiMTgiOnsicHJpY2UiOmZhbHNlLCJ2YWx1ZSI6ZmFsc2V9LCIxNyI6eyJwcmljZSI6ZmFsc2UsInZhbHVlIjoiZGVjaW1hbF9kb3QifSwiMTYiOnsicHJpY2UiOmZhbHNlLCJ2YWx1ZSI6ZmFsc2V9LCIxMiI6eyJwcmljZSI6ZmFsc2UsInZhbHVlIjpmYWxzZX0sIjE5Ijp7InByaWNlIjpmYWxzZSwidmFsdWUiOmZhbHNlfSwiMjAiOnsicHJpY2UiOmZhbHNlLCJ2YWx1ZSI6ZmFsc2V9LCIyMSI6eyJwcmljZSI6ZmFsc2UsInZhbHVlIjpmYWxzZX0sIjIzIjp7InByaWNlIjpmYWxzZSwidmFsdWUiOmZhbHNlfX07aWYod2luZG93WydqUXVlcnknXSl7aWYoIXdpbmRvd1snZ2ZfZm9ybV9jb25kaXRpb25hbF9sb2dpYyddKXdpbmRvd1snZ2ZfZm9ybV9jb25kaXRpb25hbF9sb2dpYyddID0gbmV3IEFycmF5KCk7d2luZG93WydnZl9mb3JtX2NvbmRpdGlvbmFsX2xvZ2ljJ11bMV0gPSB7IGxvZ2ljOiB7IDQ6IHsiZmllbGQiOnsiYWN0aW9uVHlwZSI6InNob3ciLCJsb2dpY1R5cGUiOiJhbGwiLCJydWxlcyI6W3siZmllbGRJZCI6IjMiLCJvcGVyYXRvciI6ImlzIiwidmFsdWUiOiJCaXJ0aGRheSBQYXJ0eSJ9XX0sIm5leHRCdXR0b24iOm51bGwsInNlY3Rpb24iOm51bGx9LDU6IHsiZmllbGQiOnsiYWN0aW9uVHlwZSI6InNob3ciLCJsb2dpY1R5cGUiOiJhbGwiLCJydWxlcyI6W3siZmllbGRJZCI6IjMiLCJvcGVyYXRvciI6ImlzIiwidmFsdWUiOiJPdGhlciJ9XX0sIm5leHRCdXR0b24iOm51bGwsInNlY3Rpb24iOm51bGx9IH0sIGRlcGVuZGVudHM6IHsgNDogWzRdLDU6IFs1XSB9LCBhbmltYXRpb246IDAsIGRlZmF1bHRzOiB7IjIiOnsibSI6IiIsImQiOiIiLCJ5IjoiIn0sIjE4Ijp7IjE4LjEiOiIiLCIxOC4yIjoiIiwiMTguMyI6IiJ9LCIyMCI6eyIyMC4yIjoiIiwiMjAuMyI6IiIsIjIwLjQiOiIiLCIyMC42IjoiIiwiMjAuOCI6IiJ9fSwgZmllbGRzOiB7IjIiOltdLCIxIjpbXSwiMyI6WzQsNV0sIjQiOltdLCI1IjpbXSwiNiI6W10sIjE0IjpbXSwiOSI6W10sIjE1IjpbXSwiMTEiOltdLCIxOCI6W10sIjE3IjpbXSwiMTYiOltdLCIxMiI6W10sIjE5IjpbXSwiMjAiOltdLCIyMSI6W10sIjIzIjpbXX0gfTsgaWYoIXdpbmRvd1snZ2ZfbnVtYmVyX2Zvcm1hdCddKXdpbmRvd1snZ2ZfbnVtYmVyX2Zvcm1hdCddID0gJ2RlY2ltYWxfZG90JztqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7Z2ZfYXBwbHlfcnVsZXMoMSwgWzQsNV0sIHRydWUpO2pRdWVyeSgnI2dmb3JtX3dyYXBwZXJfMScpLnNob3coKTtqUXVlcnkoZG9jdW1lbnQpLnRyaWdnZXIoJ2dmb3JtX3Bvc3RfY29uZGl0aW9uYWxfbG9naWMnLCBbMSwgbnVsbCwgdHJ1ZV0pO30gKTt9IGlmKHR5cGVvZiBQbGFjZWhvbGRlcnMgIT0gJ3VuZGVmaW5lZCcpewogICAgICAgICAgICAgICAgICAgICAgICBQbGFjZWhvbGRlcnMuZW5hYmxlKCk7CiAgICAgICAgICAgICAgICAgICAgfX0gfSApO2pRdWVyeShkb2N1bWVudCkuYmluZCgnZ2Zvcm1fcG9zdF9jb25kaXRpb25hbF9sb2dpYycsIGZ1bmN0aW9uKGV2ZW50LCBmb3JtSWQsIGZpZWxkcywgaXNJbml0KXt9ICk7PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPiBqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wb3N0X3JlbmRlcicsIFsxLCAxXSkgfSApOyA8L3NjcmlwdD4NCjwvZGl2Pg==