RE
#include<bits/stdc++.h>
using namespace std;
const int maxn=1010,mod=998244353;
int t,n,m,c,f,id;
int r[maxn][maxn],d[maxn][maxn];
long long sum[maxn][maxn],C,F;
bool a[maxn][maxn];
void init(){
memset(a,0,sizeof(a));
memset(sum,0,sizeof(sum));
memset(r,0,sizeof(r));
memset(d,0,sizeof(d));
cin>>n>>m>>c>>f;
cin.get();
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
a[i][j]=cin.get()-'0';
}cin.get();
}
for(int i=1;i<=n;i++){
int Sum=0;
for(int j=m-1;j>=1;j--){
if(a[i][j])r[i][j]=0;
else r[i][j]=r[i][j+1]+(!a[i][j+1]);
}
}
for(int j=1;j<=m;j++){
int Sum=0;
for(int i=2;i<=n;i++){
sum[i][j]=sum[i-1][j]+r[i-1][j];
if(a[i][j])sum[i][j]=0;
}
}
for(int j=1;j<=m;j++){
int Sum=0;
for(int i=n-1;i>=1;i--){
if(a[i][j])d[i][j]=0;
else d[i][j]=d[i+1][j]+(!a[i+1][j]);
}
}
return;
}
void solve(){
C=F=0;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
if(a[i][j])continue;
long long tmp=((sum[i][j]-r[i-1][j])%mod)*r[i][j];
tmp%=mod;
C+=tmp;C%=mod;
tmp*=d[i][j];
tmp%=mod;
F+=tmp;
F%=mod;
}
}C*=c;F*=f;
return;
}
int main(){
cin>>t>>id;cin.get();
while(t--){
init();
solve();
cout<<C<<' '<<F<<'\n';
}
return 0;
}