#include #include #include using namespace std; #define all(v) ((v).begin()), ((v).end()) #define sz size() #define clr(v,d) memset(v,d,sizeof(v)) #define rep(i, v) for(int i=0;i<(v).sz;++i) #define lp(i, n) for(int i=0;i<(int)(n);++i) #define lpi(i, j, n) for(int i=(j);i<(int)(n);++i) #define lpd(i, j, n) for(int i=(j);i>=(int)(n);--i) #define pb(e) push_back(e) #define mp(a, b) make_pair(a, b) #define fi first #define se second #define sci(a) scanf("%d",&a) #define scii(a, b) scanf("%d%d",&a, &b) #define pri(a) printf("%d\n",a) #define prii(a, b) printf("%d %d\n",a, b) #define DB1(a) std::cout<<#a<<"="<<(a)<