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:61:41: required from here
secret.cpp:8:13: warning: 'disjoint_sparse_table<int>::A' will be initialized after [-Wreorder]
8 | 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:12:3: warning: when initialized here [-Wreorder]
12 | disjoint_sparse_table(vector<T> &A, function<T(T, T)> f): A(A), f(f){
| ^~~~~~~~~~~~~~~~~~~~~
/usr/bin/ld: /tmp/ccpH5Unv.o: in function `main':
grader-full.cpp:(.text.startup+0x2a8): undefined reference to `Init(int, int*)'
collect2: error: ld returned 1 exit status