deblo.c: In function 'append':
deblo.c:12:23: warning: suggest parentheses around '-' in operand of '&' [-Wparentheses]
12 | if (o >= 2 && (o & o - 1) == 0)
| ~~^~~
deblo.c: In function 'dfs':
deblo.c:32:54: warning: suggest parentheses around '+' inside '<<' [-Wparentheses]
32 | ans += (long long) kk[i][l] * (sz[j] - kk[j][l]) + (long long) (sz[i] - kk[i][l]) * kk[j][l] << l;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
deblo.c: In function 'main':
deblo.c:43:2: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
43 | scanf("%d", &n);
| ^~~~~~~~~~~~~~~
deblo.c:45:3: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
45 | scanf("%d", &aa[i]);
| ^~~~~~~~~~~~~~~~~~~
deblo.c:49:3: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
49 | scanf("%d%d", &i, &j), i--, j--;
| ^~~~~~~~~~~~~~~~~~~~~