Progression.cpp: In function 'long long int lcq(node*, long long int, long long int, long long int)':
Progression.cpp:35:9: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
35 | if(l+r>>1<pos)
| ~^~
Progression.cpp:36:30: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
36 | return lcq(rt->rc,l+r+2>>1,r,pos);
| ~~~^~
Progression.cpp:37:26: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
37 | return lcq(rt->lc,l,l+r>>1,pos);
| ~^~
Progression.cpp: In function 'void lcua(node*, long long int, long long int, long long int, long long int, Ln)':
Progression.cpp:45:20: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
45 | lcua(rt->lc,l,l+r>>1,tl,tr,x);
| ~^~
Progression.cpp:46:20: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
46 | lcua(rt->rc,l+r+2>>1,r,tl,tr,x);
| ~~~^~
Progression.cpp: In function 'void lcus(node*, long long int, long long int, long long int, long long int, Ln)':
Progression.cpp:54:20: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
54 | lcus(rt->lc,l,l+r>>1,tl,tr,x);
| ~^~
Progression.cpp:55:20: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
55 | lcus(rt->rc,l+r+2>>1,r,tl,tr,x);
| ~~~^~
Progression.cpp: In constructor 'tp2::tp2(tp2, tp2)':
Progression.cpp:62:26: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
62 | fans=(a.ans==a.sz&&FE==b.FE||!a.sz?a.sz+b.fans:a.fans);
| ~~~~~~~~~~~^~~~~~~~~~
Progression.cpp:63:26: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
63 | lans=(b.ans==b.sz&&LE==a.LE||!b.sz?b.sz+a.lans:b.lans);
| ~~~~~~~~~~~^~~~~~~~~~
Progression.cpp: In function 'tp2 segq(long long int, long long int, long long int, long long int, long long int)':
Progression.cpp:91:28: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
91 | return tp2(segq(i*2,l,l+r>>1,tl,tr),segq(i*2+1,l+r+2>>1,r,tl,tr));
| ~^~
Progression.cpp:91:55: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
91 | return tp2(segq(i*2,l,l+r>>1,tl,tr),segq(i*2+1,l+r+2>>1,r,tl,tr));
| ~~~^~
Progression.cpp: In function 'void segua(long long int, long long int, long long int, long long int, long long int, long long int)':
Progression.cpp:98:18: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
98 | segua(i*2,l,l+r>>1,tl,tr,X);
| ~^~
Progression.cpp:99:20: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
99 | segua(i*2+1,l+r+2>>1,r,tl,tr,X);
| ~~~^~
Progression.cpp: In function 'void segus(long long int, long long int, long long int, long long int, long long int, long long int)':
Progression.cpp:107:18: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
107 | segus(i*2,l,l+r>>1,tl,tr,X);
| ~^~
Progression.cpp:108:20: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
108 | segus(i*2+1,l+r+2>>1,r,tl,tr,X);
| ~~~^~