osmosmjerka.cpp: In function 'std::string uppercase(std::string)':
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:117:3: note: in expansion of macro 'rep'
117 | rep(i,n) if (s[i] >= 'a' && s[i] <= 'z') s[i] = s[i] - 'a' + 'A';
| ^~~
osmosmjerka.cpp: In function 'std::string lowercase(std::string)':
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:123:3: note: in expansion of macro 'rep'
123 | rep(i,n) if (s[i] >= 'A' && s[i] <= 'Z') s[i] = s[i] - 'A' + 'a';
| ^~~
osmosmjerka.cpp: In function 'long long int add(long long int, long long int)':
osmosmjerka.cpp:139:50: warning: comparison of integer expressions of different signedness: 'long long int' and 'const uint64_t' {aka 'const long unsigned int'} [-Wsign-compare]
139 | static inline ll add(ll x, ll y) {x+=y; return x >= MOD ? x-MOD : x;}
| ~~^~~~~~
osmosmjerka.cpp: In function 'void init()':
osmosmjerka.cpp:32:31: warning: unnecessary parentheses in declaration of 'x' [-Wparentheses]
32 | #define loope(i,s,e) for (int (i)=(s);(i)<=(e);++(i))
| ^
osmosmjerka.cpp:35:19: note: in expansion of macro 'loope'
35 | #define repn(i,n) loope(i,1,n)
| ^~~~~
osmosmjerka.cpp:173:3: note: in expansion of macro 'repn'
173 | repn(x,LOGK-1) bpow[x] = mul(bpow[x-1] , bpow[x-1]);
| ^~~~
osmosmjerka.cpp: In function 'void solve(int, int)':
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:179:5: note: in expansion of macro 'rep'
179 | rep(i,n) rep(j,m) hash_[i][j][0] = v[i][j];
| ^~~
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'j' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:179:14: note: in expansion of macro 'rep'
179 | rep(i,n) rep(j,m) hash_[i][j][0] = v[i][j];
| ^~~
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:180:5: note: in expansion of macro 'rep'
180 | rep(i,n) rep(j,m) nxt[i][j][0] = {ADD(i,dx,n) , ADD(j,dy,m)};
| ^~~
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'j' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:180:14: note: in expansion of macro 'rep'
180 | rep(i,n) rep(j,m) nxt[i][j][0] = {ADD(i,dx,n) , ADD(j,dy,m)};
| ^~~
osmosmjerka.cpp:32:31: warning: unnecessary parentheses in declaration of 'k' [-Wparentheses]
32 | #define loope(i,s,e) for (int (i)=(s);(i)<=(e);++(i))
| ^
osmosmjerka.cpp:35:19: note: in expansion of macro 'loope'
35 | #define repn(i,n) loope(i,1,n)
| ^~~~~
osmosmjerka.cpp:183:5: note: in expansion of macro 'repn'
183 | repn(k,LOGK-1)
| ^~~~
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:185:9: note: in expansion of macro 'rep'
185 | rep(i,n) rep(j,m)
| ^~~
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'j' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:185:18: note: in expansion of macro 'rep'
185 | rep(i,n) rep(j,m)
| ^~~
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:194:5: note: in expansion of macro 'rep'
194 | rep(i,n) rep(j,m)
| ^~~
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'j' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:194:14: note: in expansion of macro 'rep'
194 | rep(i,n) rep(j,m)
| ^~~
osmosmjerka.cpp: In function 'int main()':
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:219:3: note: in expansion of macro 'rep'
219 | rep(i,n)
| ^~~
osmosmjerka.cpp:31:30: warning: unnecessary parentheses in declaration of 'j' [-Wparentheses]
31 | #define loop(i,s,e) for (int (i)=(s);(i)<(e);++(i))
| ^
osmosmjerka.cpp:34:18: note: in expansion of macro 'loop'
34 | #define rep(i,n) loop(i,0,n)
| ^~~~
osmosmjerka.cpp:222:5: note: in expansion of macro 'rep'
222 | rep(j,m) v[i][j] = s[j];
| ^~~
osmosmjerka.cpp:32:31: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses]
32 | #define loope(i,s,e) for (int (i)=(s);(i)<=(e);++(i))
| ^
osmosmjerka.cpp:225:3: note: in expansion of macro 'loope'
225 | loope(i,-1,1) loope(j,-1,1)
| ^~~~~
osmosmjerka.cpp:32:31: warning: unnecessary parentheses in declaration of 'j' [-Wparentheses]
32 | #define loope(i,s,e) for (int (i)=(s);(i)<=(e);++(i))
| ^
osmosmjerka.cpp:225:17: note: in expansion of macro 'loope'
225 | loope(i,-1,1) loope(j,-1,1)
| ^~~~~
osmosmjerka.cpp:217:8: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
217 | scanf("%d%d%d", &n, &m, &k);
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~