/* author: Leonardone @ NEETSDKASU */
#include <stdio.h>
void string(char c, int n) {
while (n-- > 0) {
}
}
void printItem(int p) {
}
void btree3(int n) {
int a = (1 << n) - 1;
int b = ((a + 1) >> 1) - 1;
int c = 1;
int p = 1;
int i, j;
for (i = 0; i < n; i++) {
string(' ', b * 3);
for (j = 0; j < c; j++) {
if (j > 0) {
string(' ', a * 3);
}
printItem(p);
p++;
}
c <<= 1;
a = b;
b = ((a + 1) >> 1) - 1;
}
}
int main(void) {
int i;
for (i = 1; i <= 6; i++) {
btree3(i);
string('-', 64);
}
return 0;
}
LyogYXV0aG9yOiBMZW9uYXJkb25lIEAgTkVFVFNES0FTVSAqLwojaW5jbHVkZSA8c3RkaW8uaD4KCnZvaWQgc3RyaW5nKGNoYXIgYywgaW50IG4pIHsKCXdoaWxlIChuLS0gPiAwKSB7CgkJcHV0Y2hhcihjKTsKCX0KfQoKdm9pZCBwcmludEl0ZW0oaW50IHApIHsKCXByaW50ZigiJTAzZCIsIHApOwp9Cgp2b2lkIGJ0cmVlMyhpbnQgbikgewoJaW50IGEgPSAoMSA8PCBuKSAtIDE7CglpbnQgYiA9ICgoYSArIDEpID4+IDEpIC0gMTsKCWludCBjID0gMTsKCWludCBwID0gMTsKCWludCBpLCBqOwoJCglmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CgkJc3RyaW5nKCcgJywgYiAqIDMpOwoJCWZvciAoaiA9IDA7IGogPCBjOyBqKyspIHsKCQkJaWYgKGogPiAwKSB7CgkJCQlzdHJpbmcoJyAnLCBhICogMyk7CgkJCX0KCQkJcHJpbnRJdGVtKHApOwoJCQlwKys7CgkJfQoJCWMgPDw9IDE7CgkJYSA9IGI7CgkJYiA9ICgoYSArIDEpID4+IDEpIC0gMTsKCQlwdXRjaGFyKCdcbicpOwoJfQp9CgoKaW50IG1haW4odm9pZCkgewoJaW50IGk7CgkKCWZvciAoaSA9IDE7IGkgPD0gNjsgaSsrKSB7CgkJYnRyZWUzKGkpOwoJCXN0cmluZygnLScsIDY0KTsKCQlwdXRjaGFyKCdcbicpOwoJfQoJCglyZXR1cm4gMDsKfQo=