#include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); long long N,M; cin >> N >> M; if(N%2 == 0){cout << N*M << endl; return 0;} if(N == 1){cout << 0 << endl; return 0;} long long answer = N/2*2*M,now = (N-2)*M; for(int i=30; i>=0; i--) if(M&(1<=0; k--){ if(left&(1<= (1< best(N),A(N); auto dfs = [&](auto dfs,int pos,int low,int sum = 0) -> void { if(pos == N){ if(maxa >= sum) return; int x = 0; for(auto a : A) x ^= a; if(x == 0) maxa = sum,best = A; return; } for(int i=low; i<=M; i++){ A.at(pos) = i; dfs(dfs,pos+1,i,sum+i); } }; dfs(dfs,0,0); cout << maxa << endl; for(auto a : best) cout << a << " "; cout << endl; }