#include #include #pragma GCC target("avx2") #pragma GCC optimize("O3") #pragma GCC optimize("unroll-loops") using namespace std; using namespace atcoder; using ll=long long;using ull=unsigned long long; using uint=unsigned int;using ld=long double; #define MINT998244353 //#define MINT1000000007 //#define STATIC_MINT constexpr ll INF=1000000001000000001; constexpr int IINF = 1001001001; #ifdef MINT998244353 constexpr ll MOD=998244353;using mint=modint998244353; #elif defined(MINT1000000007) constexpr ll MOD=1000000007;using mint=modint1000000007; #elif defined(STATIC_MINT) constexpr ll MOD=998244353;using mint=static_modint; #else using mint=modint; #endif using pii=pair;using pil=pair;using pli=pair;using pll=pair; using vi=vector;using vvi=vector;using vvvi=vector; using vl=vector;using vvl=vector;using vvvl=vector;using vvvvl=vector; using vd=vector;using vvd=vector;using vvvd=vector; using vm=vector;using vvm=vector;using vvvm=vector;using vvvvm=vector; templateusing vc=vector;templateusing vvc=vector>; #define rep(...) GET_MACRO(__VA_ARGS__,rep4,rep3,rep2)(__VA_ARGS__) #define rrep(...) GET_MACRO(__VA_ARGS__,rrep4,rrep3,rrep2)(__VA_ARGS__) #define GET_MACRO(_1, _2, _3, _4, NAME, ...) NAME #define rep2(i,N) for(ll i=0;i=0;--i) #define rrep3(i,M,N) for(ll i=N-1;i>=M;--i) #define rrep4(i,M,N,D) for(ll i=N-1;i>=M;i-=D) #define ALL(A) A.begin(),A.end() #define RALL(A) A.rbegin(),A.rend() #define UNIQUE(A) A.erase(unique(ALL(A)), A.end()) #define len(x) (int)x.size() template using min_priority_queue=priority_queue,greater>; template inline bool chmin(T& a,T b){if(a>b){a=b;return true;}return false;} template inline bool chmax(T& a,T b){if(a>(istream &is, mint &a){ll v;is>>v;a=v;return is;} ostream &operator<<(ostream &os, const mint &a){return os< istream &operator>>(istream &is,vector &v){for(auto &e:v)is>>e;return is;} template ostream &operator<<(ostream &os,const vector &v){for(auto &e:v)os< MLE(1<<30);rep(i,9)cout<>N>>M; cout<>T; while(T--) main_(); }