building.cpp: In member function 'void<unnamed struct>::update(int, int, int, <unnamed struct>::line)':
building.cpp:28:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
28 | if(s(l+r>>1) < T[i](l+r>>1))
| ~^~
building.cpp:28:30: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
28 | if(s(l+r>>1) < T[i](l+r>>1))
| ~^~
building.cpp:29:40: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
29 | swap(s,T[i]),update(i*2+1,l+r>>1,r,s);
| ~^~
building.cpp:30:28: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
30 | else update(i*2,l,l+r>>1,s);
| ~^~
building.cpp: In member function 'll<unnamed struct>::query(int, int, int, int)':
building.cpp:37:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
37 | if(p<l+r>>1)
| ~^~
building.cpp:38:45: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
38 | return min(T[i](p),query(i*2,l,l+r>>1,p));
| ~^~
building.cpp:39:46: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
39 | else return min(T[i](p),query(i*2+1,l+r>>1,r,p));
| ~^~