#include <stdio.h>
typedef struct
{
int id;
int pid;
const char *name;
} item;
item prcs[] =
{
{ 732, 134, "li" },
{ 494, 747, "li.-item._current" },
{ 590, 484, "ul" },
{ 252, 680, "ul.pinned-site-list.sortable" },
{ 296, 704, "div.topbar-dialog.help-dialog.js-help-dialog.dno" },
{ 986, 381, "ol.-list" },
{ 178, 795, "span.item-summary" },
{ 609, 816, "div.child-content" },
{ 788, 601, "li.related-site" },
{ 148, 788, "div.L-shaped-icon-container" },
{ 847, 590, "li" },
{ 484, 296, "div.modal-content" },
{ 747, 961, "ol.-list" },
{ 110, 616, "a.site-link.js-gps-track" },
{ 387, 132, "span.rep-score" },
{ 800, 590, "li" },
{ 688, 651, "svg" },
{ 40, 135, "a.js-gps-track" },
{ 430, 601, "li" },
{ 132, 99, "a.site-link.js-gps-track" },
{ 744, 676, "svg" },
{ 940, 6, "span.indicator-badge.js-unread-count._positive" },
{ 955, 754, "a.-link.js-gps-track" },
{ 160, 283, "a.js-gps-track" },
{ 134, 56, "ul.my-sites" },
{ 703, 31, "li.-item" },
{ 780, 34, "a" },
{ 289, 0, "div.-container" },
{ 881, 126, "a" },
{ 465, 812, "svg" },
{ 829, 543, "div.header" },
{ 567, 543, "div.modal-content.current-site-container" },
{ 651, 388, "a.-link.js-inbox-button" },
{ 283, 590, "li" },
{ 616, 134, "li" },
{ 173, 590, "li" },
{ 56, 543, "div.modal-content" },
{ 34, 126, "h3" },
{ 973, 134, "li" },
{ 417, 680, "input.site-filter-input" },
{ 249, 491, "a.-link.js-gps-track.js-review-button" },
{ 704, 381, "div.-dialog-container.js-topbar-dialog-corral" },
{ 63, 889, "span.badgecount" },
{ 135, 430, "div.related-links" },
{ 3, 264, "h3" },
{ 871, 110, "div.favicon.favicon-ru.site-icon" },
{ 473, 642, "svg" },
{ 663, 365, "span.rep-score" },
{ 391, 266, "a" },
{ 192, 641, "div.favicon.favicon-russian.site-icon" },
{ 961, 770, "nav.navigation" },
{ 773, 823, "button.btn-topbar-primary.js-search-submit" },
{ 801, 865, "img.-avatar.js-avatar-me" },
{ 813, 430, "a.current-site-link.site-link.js-gps-track" },
{ 910, 59, "span.rep-score" },
{ 388, 986, "li.-item" },
{ 922, 44, "span.badge3" },
{ 601, 567, "ul.current-site" },
{ 851, 102, "span.item-summary" },
{ 833, 365, "div.favicon.favicon-stackoverflow.site-icon" },
{ 357, 314, "span" },
{ 66, 590, "li" },
{ 281, 173, "a.js-gps-track" },
{ 795, 847, "a.js-gps-track" },
{ 841, 110, "span.rep-score" },
{ 314, 974, "div.-badges" },
{ 772, 651, "span.indicator-badge.js-unread-count._important" },
{ 893, 770, "a.-logo.js-gps-track" },
{ 543, 704, "div.topbar-dialog.siteSwitcher-dialog.dno" },
{ 491, 986, "li.-item" },
{ 962, 747, "li.-item" },
{ 706, 3, "a" },
{ 44, 314, "span" },
{ 364, 135, "a.js-gps-track" },
{ 642, 409, "a.-link.js-site-switcher-button.js-gps-track" },
{ 515, 357, "span.badgecount" },
{ 719, 160, "span.item-summary" },
{ 383, 135, "a.js-gps-track" },
{ 754, 747, "li.-item" },
{ 105, 494, "a.-link.js-gps-track" },
{ 126, 543, "div.header" },
{ 189, 148, "span.L-shaped-icon" },
{ 80, 44, "span.badgecount" },
{ 217, 465, "path" },
{ 102, 800, "a.js-gps-track" },
{ 99, 134, "li" },
{ 856, 289, "div.-actions" },
{ 865, 974, "div.gravatar-wrapper-24" },
{ 974, 856, "a.my-profile.js-gps-track" },
{ 694, 59, "div.favicon.favicon-stackexchangemeta.site-icon" },
{ 911, 829, "a.fr" },
{ 823, 289, "form.searchbar" },
{ 266, 829, "h3" },
{ 685, 986, "li.-item" },
{ 920, 962, "a.-link.js-gps-track" },
{ 957, 856, "nav.secondary-nav" },
{ 934, 986, "li.-item" },
{ 201, 112, "span.item-summary" },
{ 172, 357, "span.badge1" },
{ 171, 122, "path" },
{ 680, 56, "div.pinned-site-editor-container" },
{ 29, 641, "span.rep-score" },
{ 264, 543, "div.header" },
{ 812, 536, "a.-link.js-mod-inbox-button" },
{ 462, 348, "path" },
{ 493, 688, "path" },
{ 544, 473, "path" },
{ 948, 126, "a" },
{ 891, 142, "span.indicator-badge._regular" },
{ 796, 744, "path" },
{ 81, 788, "a.site-link.js-gps-track" },
{ 275, 132, "div.favicon.favicon-codegolf.site-icon" },
{ 122, 6, "svg" },
{ 112, 66, "a.js-gps-track" },
{ 889, 314, "span" },
{ 6, 934, "a.-link.js-achievements-button" },
{ 230, 81, "div.favicon.favicon-rumeta.site-icon" },
{ 557, 893, "span.-img._glyph" },
{ 565, 974, "div.-rep.js-header-rep" },
{ 458, 249, "svg" },
{ 770, 289, "div.-main" },
{ 405, 680, "input" },
{ 365, 255, "a.site-link.js-gps-track" },
{ 409, 986, "li.-item" },
{ 348, 773, "svg" },
{ 381, 856, "nav.secondary-nav" },
{ 41, 813, "div.favicon.favicon-ru.site-icon" },
{ 641, 973, "a.site-link.js-gps-track" },
{ 128, 823, "input.f-input.js-search-field" },
{ 255, 134, "li" },
{ 676, 685, "a.-link.js-help-button" },
{ 983, 889, "span.badge2" },
{ 858, 680, "ul.js-found-sites.found-sites" },
{ 432, 458, "path" },
{ 31, 957, "ol.-list" },
{ 142, 703, "a.-link._text-only" },
{ 816, 543, "div.modal-content" },
{ 481, 680, "a" },
{ 654, 281, "span.item-summary" },
{ 536, 31, "li.-item" },
{ 59, 732, "a.site-link.js-gps-track" },
{ 74, 680, "input" }
};
const unsigned n = sizeof prcs / sizeof (item);
void dfs(int pid, unsigned level)
{
for (unsigned q=0; q<n; ++q)
if (prcs[q].pid == pid)
{
printf("%*s%d %s\n", level
*2, "", prcs
[q
].
id, prcs
[q
].
name); dfs(prcs[q].id, level+1);
}
}
int main(void)
{
dfs(0, 0);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp0eXBlZGVmIHN0cnVjdAp7CiAgaW50IGlkOwogIGludCBwaWQ7CiAgY29uc3QgY2hhciAqbmFtZTsKfSBpdGVtOwoKaXRlbSBwcmNzW10gPQp7CiAgeyAgIDczMiwgICAxMzQsICAgImxpIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA0OTQsICAgNzQ3LCAgICJsaS4taXRlbS5fY3VycmVudCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNTkwLCAgIDQ4NCwgICAidWwiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDI1MiwgICA2ODAsICAgInVsLnBpbm5lZC1zaXRlLWxpc3Quc29ydGFibGUiICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAyOTYsICAgNzA0LCAgICJkaXYudG9wYmFyLWRpYWxvZy5oZWxwLWRpYWxvZy5qcy1oZWxwLWRpYWxvZy5kbm8iICAgfSwKICB7ICAgOTg2LCAgIDM4MSwgICAib2wuLWxpc3QiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDE3OCwgICA3OTUsICAgInNwYW4uaXRlbS1zdW1tYXJ5IiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA2MDksICAgODE2LCAgICJkaXYuY2hpbGQtY29udGVudCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNzg4LCAgIDYwMSwgICAibGkucmVsYXRlZC1zaXRlIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDE0OCwgICA3ODgsICAgImRpdi5MLXNoYXBlZC1pY29uLWNvbnRhaW5lciIgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA4NDcsICAgNTkwLCAgICJsaSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNDg0LCAgIDI5NiwgICAiZGl2Lm1vZGFsLWNvbnRlbnQiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDc0NywgICA5NjEsICAgIm9sLi1saXN0IiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAxMTAsICAgNjE2LCAgICJhLnNpdGUtbGluay5qcy1ncHMtdHJhY2siICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMzg3LCAgIDEzMiwgICAic3Bhbi5yZXAtc2NvcmUiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDgwMCwgICA1OTAsICAgImxpIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA2ODgsICAgNjUxLCAgICJzdmciICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgIDQwLCAgIDEzNSwgICAiYS5qcy1ncHMtdHJhY2siICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDQzMCwgICA2MDEsICAgImxpIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAxMzIsICAgIDk5LCAgICJhLnNpdGUtbGluay5qcy1ncHMtdHJhY2siICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNzQ0LCAgIDY3NiwgICAic3ZnIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDk0MCwgICAgIDYsICAgInNwYW4uaW5kaWNhdG9yLWJhZGdlLmpzLXVucmVhZC1jb3VudC5fcG9zaXRpdmUiICAgICB9LAogIHsgICA5NTUsICAgNzU0LCAgICJhLi1saW5rLmpzLWdwcy10cmFjayIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMTYwLCAgIDI4MywgICAiYS5qcy1ncHMtdHJhY2siICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDEzNCwgICAgNTYsICAgInVsLm15LXNpdGVzIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA3MDMsICAgIDMxLCAgICJsaS4taXRlbSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNzgwLCAgICAzNCwgICAiYSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDI4OSwgICAgIDAsICAgImRpdi4tY29udGFpbmVyIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA4ODEsICAgMTI2LCAgICJhIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNDY1LCAgIDgxMiwgICAic3ZnIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDgyOSwgICA1NDMsICAgImRpdi5oZWFkZXIiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA1NjcsICAgNTQzLCAgICJkaXYubW9kYWwtY29udGVudC5jdXJyZW50LXNpdGUtY29udGFpbmVyIiAgICAgICAgICAgfSwKICB7ICAgNjUxLCAgIDM4OCwgICAiYS4tbGluay5qcy1pbmJveC1idXR0b24iICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDI4MywgICA1OTAsICAgImxpIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA2MTYsICAgMTM0LCAgICJsaSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMTczLCAgIDU5MCwgICAibGkiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgICA1NiwgICA1NDMsICAgImRpdi5tb2RhbC1jb250ZW50IiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAgMzQsICAgMTI2LCAgICJoMyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgOTczLCAgIDEzNCwgICAibGkiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDQxNywgICA2ODAsICAgImlucHV0LnNpdGUtZmlsdGVyLWlucHV0IiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAyNDksICAgNDkxLCAgICJhLi1saW5rLmpzLWdwcy10cmFjay5qcy1yZXZpZXctYnV0dG9uIiAgICAgICAgICAgICAgfSwKICB7ICAgNzA0LCAgIDM4MSwgICAiZGl2Li1kaWFsb2ctY29udGFpbmVyLmpzLXRvcGJhci1kaWFsb2ctY29ycmFsIiAgICAgIH0sCiAgeyAgICA2MywgICA4ODksICAgInNwYW4uYmFkZ2Vjb3VudCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAxMzUsICAgNDMwLCAgICJkaXYucmVsYXRlZC1saW5rcyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgICAzLCAgIDI2NCwgICAiaDMiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDg3MSwgICAxMTAsICAgImRpdi5mYXZpY29uLmZhdmljb24tcnUuc2l0ZS1pY29uIiAgICAgICAgICAgICAgICAgICB9LAogIHsgICA0NzMsICAgNjQyLCAgICJzdmciICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNjYzLCAgIDM2NSwgICAic3Bhbi5yZXAtc2NvcmUiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDM5MSwgICAyNjYsICAgImEiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAxOTIsICAgNjQxLCAgICJkaXYuZmF2aWNvbi5mYXZpY29uLXJ1c3NpYW4uc2l0ZS1pY29uIiAgICAgICAgICAgICAgfSwKICB7ICAgOTYxLCAgIDc3MCwgICAibmF2Lm5hdmlnYXRpb24iICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDc3MywgICA4MjMsICAgImJ1dHRvbi5idG4tdG9wYmFyLXByaW1hcnkuanMtc2VhcmNoLXN1Ym1pdCIgICAgICAgICB9LAogIHsgICA4MDEsICAgODY1LCAgICJpbWcuLWF2YXRhci5qcy1hdmF0YXItbWUiICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgODEzLCAgIDQzMCwgICAiYS5jdXJyZW50LXNpdGUtbGluay5zaXRlLWxpbmsuanMtZ3BzLXRyYWNrIiAgICAgICAgIH0sCiAgeyAgIDkxMCwgICAgNTksICAgInNwYW4ucmVwLXNjb3JlIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAzODgsICAgOTg2LCAgICJsaS4taXRlbSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgOTIyLCAgICA0NCwgICAic3Bhbi5iYWRnZTMiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDYwMSwgICA1NjcsICAgInVsLmN1cnJlbnQtc2l0ZSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA4NTEsICAgMTAyLCAgICJzcGFuLml0ZW0tc3VtbWFyeSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgODMzLCAgIDM2NSwgICAiZGl2LmZhdmljb24uZmF2aWNvbi1zdGFja292ZXJmbG93LnNpdGUtaWNvbiIgICAgICAgIH0sCiAgeyAgIDM1NywgICAzMTQsICAgInNwYW4iICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAgNjYsICAgNTkwLCAgICJsaSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMjgxLCAgIDE3MywgICAiYS5qcy1ncHMtdHJhY2siICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDc5NSwgICA4NDcsICAgImEuanMtZ3BzLXRyYWNrIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA4NDEsICAgMTEwLCAgICJzcGFuLnJlcC1zY29yZSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMzE0LCAgIDk3NCwgICAiZGl2Li1iYWRnZXMiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDc3MiwgICA2NTEsICAgInNwYW4uaW5kaWNhdG9yLWJhZGdlLmpzLXVucmVhZC1jb3VudC5faW1wb3J0YW50IiAgICB9LAogIHsgICA4OTMsICAgNzcwLCAgICJhLi1sb2dvLmpzLWdwcy10cmFjayIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNTQzLCAgIDcwNCwgICAiZGl2LnRvcGJhci1kaWFsb2cuc2l0ZVN3aXRjaGVyLWRpYWxvZy5kbm8iICAgICAgICAgIH0sCiAgeyAgIDQ5MSwgICA5ODYsICAgImxpLi1pdGVtIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA5NjIsICAgNzQ3LCAgICJsaS4taXRlbSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNzA2LCAgICAgMywgICAiYSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgICA0NCwgICAzMTQsICAgInNwYW4iICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAzNjQsICAgMTM1LCAgICJhLmpzLWdwcy10cmFjayIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNjQyLCAgIDQwOSwgICAiYS4tbGluay5qcy1zaXRlLXN3aXRjaGVyLWJ1dHRvbi5qcy1ncHMtdHJhY2siICAgICAgIH0sCiAgeyAgIDUxNSwgICAzNTcsICAgInNwYW4uYmFkZ2Vjb3VudCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA3MTksICAgMTYwLCAgICJzcGFuLml0ZW0tc3VtbWFyeSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMzgzLCAgIDEzNSwgICAiYS5qcy1ncHMtdHJhY2siICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDc1NCwgICA3NDcsICAgImxpLi1pdGVtIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAxMDUsICAgNDk0LCAgICJhLi1saW5rLmpzLWdwcy10cmFjayIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMTI2LCAgIDU0MywgICAiZGl2LmhlYWRlciIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDE4OSwgICAxNDgsICAgInNwYW4uTC1zaGFwZWQtaWNvbiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAgODAsICAgIDQ0LCAgICJzcGFuLmJhZGdlY291bnQiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMjE3LCAgIDQ2NSwgICAicGF0aCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDEwMiwgICA4MDAsICAgImEuanMtZ3BzLXRyYWNrIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAgOTksICAgMTM0LCAgICJsaSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgODU2LCAgIDI4OSwgICAiZGl2Li1hY3Rpb25zIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDg2NSwgICA5NzQsICAgImRpdi5ncmF2YXRhci13cmFwcGVyLTI0IiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA5NzQsICAgODU2LCAgICJhLm15LXByb2ZpbGUuanMtZ3BzLXRyYWNrIiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNjk0LCAgICA1OSwgICAiZGl2LmZhdmljb24uZmF2aWNvbi1zdGFja2V4Y2hhbmdlbWV0YS5zaXRlLWljb24iICAgIH0sCiAgeyAgIDkxMSwgICA4MjksICAgImEuZnIiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA4MjMsICAgMjg5LCAgICJmb3JtLnNlYXJjaGJhciIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMjY2LCAgIDgyOSwgICAiaDMiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDY4NSwgICA5ODYsICAgImxpLi1pdGVtIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA5MjAsICAgOTYyLCAgICJhLi1saW5rLmpzLWdwcy10cmFjayIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgOTU3LCAgIDg1NiwgICAibmF2LnNlY29uZGFyeS1uYXYiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDkzNCwgICA5ODYsICAgImxpLi1pdGVtIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAyMDEsICAgMTEyLCAgICJzcGFuLml0ZW0tc3VtbWFyeSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMTcyLCAgIDM1NywgICAic3Bhbi5iYWRnZTEiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDE3MSwgICAxMjIsICAgInBhdGgiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA2ODAsICAgIDU2LCAgICJkaXYucGlubmVkLXNpdGUtZWRpdG9yLWNvbnRhaW5lciIgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgIDI5LCAgIDY0MSwgICAic3Bhbi5yZXAtc2NvcmUiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDI2NCwgICA1NDMsICAgImRpdi5oZWFkZXIiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA4MTIsICAgNTM2LCAgICJhLi1saW5rLmpzLW1vZC1pbmJveC1idXR0b24iICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNDYyLCAgIDM0OCwgICAicGF0aCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDQ5MywgICA2ODgsICAgInBhdGgiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA1NDQsICAgNDczLCAgICJwYXRoIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgOTQ4LCAgIDEyNiwgICAiYSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDg5MSwgICAxNDIsICAgInNwYW4uaW5kaWNhdG9yLWJhZGdlLl9yZWd1bGFyIiAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA3OTYsICAgNzQ0LCAgICJwYXRoIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgIDgxLCAgIDc4OCwgICAiYS5zaXRlLWxpbmsuanMtZ3BzLXRyYWNrIiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDI3NSwgICAxMzIsICAgImRpdi5mYXZpY29uLmZhdmljb24tY29kZWdvbGYuc2l0ZS1pY29uIiAgICAgICAgICAgICB9LAogIHsgICAxMjIsICAgICA2LCAgICJzdmciICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMTEyLCAgICA2NiwgICAiYS5qcy1ncHMtdHJhY2siICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDg4OSwgICAzMTQsICAgInNwYW4iICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAgIDYsICAgOTM0LCAgICJhLi1saW5rLmpzLWFjaGlldmVtZW50cy1idXR0b24iICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMjMwLCAgICA4MSwgICAiZGl2LmZhdmljb24uZmF2aWNvbi1ydW1ldGEuc2l0ZS1pY29uIiAgICAgICAgICAgICAgIH0sCiAgeyAgIDU1NywgICA4OTMsICAgInNwYW4uLWltZy5fZ2x5cGgiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA1NjUsICAgOTc0LCAgICJkaXYuLXJlcC5qcy1oZWFkZXItcmVwIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNDU4LCAgIDI0OSwgICAic3ZnIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDc3MCwgICAyODksICAgImRpdi4tbWFpbiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA0MDUsICAgNjgwLCAgICJpbnB1dCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMzY1LCAgIDI1NSwgICAiYS5zaXRlLWxpbmsuanMtZ3BzLXRyYWNrIiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDQwOSwgICA5ODYsICAgImxpLi1pdGVtIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICAzNDgsICAgNzczLCAgICJzdmciICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMzgxLCAgIDg1NiwgICAibmF2LnNlY29uZGFyeS1uYXYiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgICA0MSwgICA4MTMsICAgImRpdi5mYXZpY29uLmZhdmljb24tcnUuc2l0ZS1pY29uIiAgICAgICAgICAgICAgICAgICB9LAogIHsgICA2NDEsICAgOTczLCAgICJhLnNpdGUtbGluay5qcy1ncHMtdHJhY2siICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgMTI4LCAgIDgyMywgICAiaW5wdXQuZi1pbnB1dC5qcy1zZWFyY2gtZmllbGQiICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDI1NSwgICAxMzQsICAgImxpIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA2NzYsICAgNjg1LCAgICJhLi1saW5rLmpzLWhlbHAtYnV0dG9uIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgOTgzLCAgIDg4OSwgICAic3Bhbi5iYWRnZTIiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDg1OCwgICA2ODAsICAgInVsLmpzLWZvdW5kLXNpdGVzLmZvdW5kLXNpdGVzIiAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA0MzIsICAgNDU4LCAgICJwYXRoIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgIDMxLCAgIDk1NywgICAib2wuLWxpc3QiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDE0MiwgICA3MDMsICAgImEuLWxpbmsuX3RleHQtb25seSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA4MTYsICAgNTQzLCAgICJkaXYubW9kYWwtY29udGVudCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgNDgxLCAgIDY4MCwgICAiYSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgIDY1NCwgICAyODEsICAgInNwYW4uaXRlbS1zdW1tYXJ5IiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogIHsgICA1MzYsICAgIDMxLCAgICJsaS4taXRlbSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICB7ICAgIDU5LCAgIDczMiwgICAiYS5zaXRlLWxpbmsuanMtZ3BzLXRyYWNrIiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgeyAgICA3NCwgICA2ODAsICAgImlucHV0IiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9Cn07Cgpjb25zdCB1bnNpZ25lZCBuID0gc2l6ZW9mIHByY3MgLyBzaXplb2YgKGl0ZW0pOwoKdm9pZCBkZnMoaW50IHBpZCwgdW5zaWduZWQgbGV2ZWwpCnsKICBmb3IgKHVuc2lnbmVkIHE9MDsgcTxuOyArK3EpCiAgICBpZiAocHJjc1txXS5waWQgPT0gcGlkKQogICAgewogICAgICBwcmludGYoIiUqcyVkICVzXG4iLCBsZXZlbCoyLCAiIiwgcHJjc1txXS5pZCwgcHJjc1txXS5uYW1lKTsKICAgICAgZGZzKHByY3NbcV0uaWQsIGxldmVsKzEpOwogICAgfQp9CgppbnQgbWFpbih2b2lkKQp7CiAgZGZzKDAsIDApOwogIHJldHVybiAwOwp9