horses.cpp: In function 'long long int up(int, int, int, int, int, long long int)':
horses.cpp:6:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
horses.cpp:7:20: note: in expansion of macro 'tm'
#define sol v+v,tl,tm,l,r
^~
horses.cpp:20:26: note: in expansion of macro 'sol'
return s[v] = max(up(sol,x) , up(sag,x));
^~~
horses.cpp:6:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
horses.cpp:8:19: note: in expansion of macro 'tm'
#define sag v+v+1,tm+1,tr,l,r
^~
horses.cpp:20:38: note: in expansion of macro 'sag'
return s[v] = max(up(sol,x) , up(sag,x));
^~~
horses.cpp: In function 'long long int qry(int, int, int, int, int)':
horses.cpp:6:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
horses.cpp:7:20: note: in expansion of macro 'tm'
#define sol v+v,tl,tm,l,r
^~
horses.cpp:25:20: note: in expansion of macro 'sol'
return max(qry(sol) , qry(sag));
^~~
horses.cpp:6:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
horses.cpp:8:19: note: in expansion of macro 'tm'
#define sag v+v+1,tm+1,tr,l,r
^~
horses.cpp:25:31: note: in expansion of macro 'sag'
return max(qry(sol) , qry(sag));
^~~
horses.cpp: In function 'long long int up2(int, int, int, int, int, long long int)':
horses.cpp:6:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
horses.cpp:7:20: note: in expansion of macro 'tm'
#define sol v+v,tl,tm,l,r
^~
horses.cpp:30:24: note: in expansion of macro 'sol'
return ss[v] = up2(sol,x) * up2(sag,x) % mod;
^~~
horses.cpp:6:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
horses.cpp:8:19: note: in expansion of macro 'tm'
#define sag v+v+1,tm+1,tr,l,r
^~
horses.cpp:30:37: note: in expansion of macro 'sag'
return ss[v] = up2(sol,x) * up2(sag,x) % mod;
^~~
horses.cpp: In function 'long long int qry2(int, int, int, int, int)':
horses.cpp:6:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
horses.cpp:7:20: note: in expansion of macro 'tm'
#define sol v+v,tl,tm,l,r
^~
horses.cpp:35:17: note: in expansion of macro 'sol'
return qry2(sol) * qry2(sag) % mod;
^~~
horses.cpp:6:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
horses.cpp:8:19: note: in expansion of macro 'tm'
#define sag v+v+1,tm+1,tr,l,r
^~
horses.cpp:35:29: note: in expansion of macro 'sag'
return qry2(sol) * qry2(sag) % mod;
^~~
horses.cpp: In function 'int f()':
horses.cpp:49:25: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
B[j] = qry(1,0,n-1,l,r);
~^~
horses.cpp:49:31: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
B[j] = qry(1,0,n-1,l,r);
^
horses.cpp:49:31: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
horses.cpp:58:25: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
B[j] = qry(1,0,n-1,l,r);
~^~
horses.cpp:58:31: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
B[j] = qry(1,0,n-1,l,r);
^
horses.cpp:58:31: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
horses.cpp:68:29: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
return mx%mod*qry2(1,0,n-1,0,r+1)%mod;
~^~
horses.cpp:68:35: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
return mx%mod*qry2(1,0,n-1,0,r+1)%mod;
~^~
horses.cpp:68:38: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
return mx%mod*qry2(1,0,n-1,0,r+1)%mod;
~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
horses.cpp: In function 'int updateX(int, int)':
horses.cpp:75:14: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
up2(1,0,n-1,pos,pos,val);
~^~
horses.cpp: In function 'int updateY(int, int)':
horses.cpp:80:13: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
up(1,0,n-1,pos,pos,val);
~^~
horses.cpp: In function 'int init(int, int*, int*)':
horses.cpp:90:18: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
up2(1,0,n-1,i,i,X[i]);
~^~
horses.cpp:94:17: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
up(1,0,n-1,i,i,Y[i]);
~^~