foo.cc: In function 'void build(int, int, int)':
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:24:16: note: in expansion of macro 'mid'
24 | build(lc,l,mid);build(rc,mid+1,r);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:24:30: note: in expansion of macro 'mid'
24 | build(lc,l,mid);build(rc,mid+1,r);
| ^~~
foo.cc: In function 'void push_down(int, int, int)':
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:30:15: note: in expansion of macro 'mid'
30 | sum[lc]+=(mid-l+1)*lazy[o];
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:34:17: note: in expansion of macro 'mid'
34 | sum[rc]+=(r-mid)*lazy[o];
| ^~~
foo.cc: In function 'void add(int, int, int, int, int, long long int)':
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:48:12: note: in expansion of macro 'mid'
48 | if(nl<=mid)add(lc,l,mid,nl,nr,v);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:48:25: note: in expansion of macro 'mid'
48 | if(nl<=mid)add(lc,l,mid,nl,nr,v);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:49:11: note: in expansion of macro 'mid'
49 | if(nr>mid)add(rc,mid+1,r,nl,nr,v);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:49:22: note: in expansion of macro 'mid'
49 | if(nr>mid)add(rc,mid+1,r,nl,nr,v);
| ^~~
foo.cc: In function 'void div(int, int, int, int, int, long long int)':
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:66:12: note: in expansion of macro 'mid'
66 | if(nl<=mid)div(lc,l,mid,nl,nr,v);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:66:25: note: in expansion of macro 'mid'
66 | if(nl<=mid)div(lc,l,mid,nl,nr,v);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:67:11: note: in expansion of macro 'mid'
67 | if(nr>mid)div(rc,mid+1,r,nl,nr,v);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:67:22: note: in expansion of macro 'mid'
67 | if(nr>mid)div(rc,mid+1,r,nl,nr,v);
| ^~~
foo.cc: In function 'long long int query_min(int, int, int, int, int)':
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:74:12: note: in expansion of macro 'mid'
74 | if(nr<=mid)return query_min(lc,l,mid,nl,nr);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:74:38: note: in expansion of macro 'mid'
74 | if(nr<=mid)return query_min(lc,l,mid,nl,nr);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:75:16: note: in expansion of macro 'mid'
75 | else if(nl>mid)return query_min(rc,mid+1,r,nl,nr);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:75:40: note: in expansion of macro 'mid'
75 | else if(nl>mid)return query_min(rc,mid+1,r,nl,nr);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:76:36: note: in expansion of macro 'mid'
76 | else return min(query_min(lc,l,mid,nl,mid),query_min(rc,mid+1,r,mid+1,nr));
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:76:43: note: in expansion of macro 'mid'
76 | else return min(query_min(lc,l,mid,nl,mid),query_min(rc,mid+1,r,mid+1,nr));
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:76:61: note: in expansion of macro 'mid'
76 | else return min(query_min(lc,l,mid,nl,mid),query_min(rc,mid+1,r,mid+1,nr));
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:76:69: note: in expansion of macro 'mid'
76 | else return min(query_min(lc,l,mid,nl,mid),query_min(rc,mid+1,r,mid+1,nr));
| ^~~
foo.cc: In function 'long long int query_sum(int, int, int, int, int)':
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:82:12: note: in expansion of macro 'mid'
82 | if(nr<=mid)return query_sum(lc,l,mid,nl,nr);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:82:38: note: in expansion of macro 'mid'
82 | if(nr<=mid)return query_sum(lc,l,mid,nl,nr);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:83:16: note: in expansion of macro 'mid'
83 | else if(nl>mid)return query_sum(rc,mid+1,r,nl,nr);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:83:40: note: in expansion of macro 'mid'
83 | else if(nl>mid)return query_sum(rc,mid+1,r,nl,nr);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:84:32: note: in expansion of macro 'mid'
84 | else return query_sum(lc,l,mid,nl,mid)+query_sum(rc,mid+1,r,mid+1,nr);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:84:39: note: in expansion of macro 'mid'
84 | else return query_sum(lc,l,mid,nl,mid)+query_sum(rc,mid+1,r,mid+1,nr);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:84:57: note: in expansion of macro 'mid'
84 | else return query_sum(lc,l,mid,nl,mid)+query_sum(rc,mid+1,r,mid+1,nr);
| ^~~
foo.cc:6:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
6 | #define mid (l+r>>1)
| ~^~
foo.cc:84:65: note: in expansion of macro 'mid'
84 | else return query_sum(lc,l,mid,nl,mid)+query_sum(rc,mid+1,r,mid+1,nr);
| ^~~
foo.cc: In function 'int main()':
foo.cc:87:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
87 | scanf("%d%d",&n,&q);
| ~~~~~^~~~~~~~~~~~~~
foo.cc:90:32: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
90 | for(int i=1;i<=n;i++) scanf("%lld",&a[i]);
| ~~~~~^~~~~~~~~~~~~~
foo.cc:93:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
93 | scanf("%d",&op);
| ~~~~~^~~~~~~~~~
foo.cc:94:24: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
94 | if(op==1) scanf("%d%d%lld",&x,&y,&z),div(1,1,n,x,y,z);
| ~~~~~^~~~~~~~~~~~~~~~~~~~~
foo.cc:95:24: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
95 | if(op==2) scanf("%d%lld",&x,&z),add(1,1,n,x,x,z);
| ~~~~~^~~~~~~~~~~~~~~~
foo.cc:96:29: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
96 | else if(op==3) scanf("%d",&x),printf("%lld\n",query_sum(1,1,n,x,x));
| ~~~~~^~~~~~~~~