()const{return cp(x,-y);}
}w[N];
void fft(cp p[],int n){
for(int i=0,j=0;i<n;++i){
if(i>j...rep(i,0,n){
w[i]=cp(cos(2*PI*i/n),sin(2*PI*i/n));
p[i]=cp(x[i],y[i]);
}
fft...p[j])*h;
}
fft(q,n);
rep(i,0,n)z[i]=q[i].x/n+0.5;
}
int n,m,p;
ll a[N],b[N],c[N];
int main...;fft(q,n);
rep(i,0,n){
int j=i?...(p,n);fft(q,n);
rep(i,0,n){
int j=i?