secret.cpp: In constructor 'disjoint_sparse_table<T>::disjoint_sparse_table(std::vector<_Tp>&, std::function<T(T, T)>)':
secret.cpp:13:27: error: 'LOG' was not declared in this scope
13 | D = vector<vector<T>>(LOG, vector<T>(N));
| ^~~
secret.cpp: In instantiation of 'disjoint_sparse_table<T>::disjoint_sparse_table(std::vector<_Tp>&, std::function<T(T, T)>) [with T = int]':
secret.cpp:44:46: required from here
secret.cpp:7:13: warning: 'disjoint_sparse_table<int>::A' will be initialized after [-Wreorder]
7 | vector<T> A;
| ^
secret.cpp:6:21: warning: 'std::function<int(int, int)> disjoint_sparse_table<int>::f' [-Wreorder]
6 | function<T(T, T)> f;
| ^
secret.cpp:11:3: warning: when initialized here [-Wreorder]
11 | disjoint_sparse_table(vector<T> &A, function<T(T, T)> f): A(A), f(f){
| ^~~~~~~~~~~~~~~~~~~~~