const fi = 'ex5.inp'; fo = 'ex5.out'; maxn = round(1e3); p = 663224321; var q,n : longint; c : array [-1..maxn+5,-1..maxn+5] of int64; sta,fin : int64; res : int64; procedure initial; var i,j : longint; begin c[0,0]:=1; for i:=1 to maxn do for j:=1 to i do c[j,i]:=(c[j,i-1]+c[j-1,i-1]) mod p; end; procedure caculate; var i : longint; begin sta:=n-1; fin:=n*(n-1) div 2; res:=0; for i:=sta to fin do res:=(res+c[i,fin]) mod p; end; procedure solve; var i : longint; begin //assign(input,fi); reset(input); //assign(output,fo); rewrite(output); initial; readln(q); for i:=1 to q do begin readln(n); caculate; writeln(res); end; end; BEGIN solve; END.