#include<bits/stdc++.h>
using namespace std;
int t,id;
int m() {
	int n,m,c,f;
	int cans=0;
	int fans=0;
	int fan=0;
	scanf("%d%d%d%d",&n,&m,&c,&f);
	string a[n+1];
	for(int i=1; i<=n; i++) {
		cin>>a[i];
	}
//	int x1,x2,x3,y0,y1,y2;
	bool flag=0;

	
		for(int x1=1; x1<=n; x1++)
			for(int x2=x1+2; x2<=n; x2++)
				for(int y0=0; y0<m; y0++) {
					for(int j=x1; j<=x2; j++)
						if(a[j][y0]=='1') {
							flag=1;
							break;
						}
					if(flag==1){
						flag=0;
						continue;
					}
/*					for(int y1=y0+1; y1<m; y1++)
						for(int j=y0; j<=y1; j++) {
							flag=0;
							if(a[x1][j]=='1') {
								flag=1;
								break;
							}
						}
					if(flag==1){
						flag=0;
						continue;
					}
					for(int y2=y0+1; y2<m; y2++)
						for(int j=y0; j<=y2; j++) {
							flag=0;
							if(a[x2][j]=='1') {
								flag=1;
								break;
							}
						}
					if(flag==1){
						flag=0;
						continue;
					}*/
					int cup=0;
					int cdown=0;
					for(int j=y0+1;j<=m;j++)
					{
						if(a[x1][j]=='0')cup++;
						else break;
					}
						for(int j=y0+1;j<=m;j++)
					{
						if(a[x2][j]=='0')cdown++;
						else break;
					}
					cans+=cup*cdown;
//					cout<<cup<<' '<<cdown<<endl;
					fan=0;
	//				if(f==0)cout<<"0"<<endl;
	//				else {
						for(int x3=x2+1; x3<=n; x3++)
							if(a[x3][y0]=='0')fan++;
							fans+=fan*cup*cdown;
	//				}
				}


	


printf("%d ",cans*c);

printf("%d ",fans*f);
cans=0;
fans=0;

return 0;
}
int main() {
	freopen("plant.in","r",stdin);
	freopen("plant.out","w",stdout);
	cin>>t>>id;
	for(int i=1; i<=t; i++) {
		m();
	}
	return 0;
}