#include <iostream>
#include <algorithm>
using namespace std;

int main() {
	int a[20][20];
	int mata[20][20][20][20];
	int x,y,z,w,s,x1,y1,matatabi;
	cin >> s ;
	for(int i=0;i<s;i++){
		cin >> x1 >> y1;
		for(int b=0;b<20;b++){
			for(int c=0;c<20;c++){
				a[b][c]=0;
			}
		}
		a[0][0]=1;
		for(int d=0;d<20;d++){
			for(int e=0;e<20;e++){
				for(int f=0;f<20;f++){
					for(int g=0;g<20;g++){
					    mata[d][e][f][g]=0;
					    }
				}
			}
		}
		
		cin >>matatabi;
		for(int j=0;j<matatabi;j++){
			cin>>x>>y>>z>>w;
			mata[x][y][z][w]=1;
		}
		for(int k=0;k<x1;k++){
			if(mata[k][0][k+1][0]!=1 && mata[k+1][0][k][0]!=1){
			a[k+1][0]=a[k][0];
			}
		}
		for(int l=0;l<y1;l++){
			if(mata[0][l][0][l+1]!=1 && mata[0][l+1][0][l]!=1){
			a[0][l+1]=a[0][l];
			}
		}
		for(int m=1;m<y1+1;m++){
			for(int n=1;n<x1+1;n++){
				if(mata[n-1][m][n][m]!=1 && mata[n][m][n-1][m]!=1){
				a[n][m]+=a[n-1][m]; 
				}
				if(mata[n][m-1][n][m]!=1 && mata[n][m][n][m-1]!=1){
				a[n][m]+=a[n][m-1];
				}
			}
		}
			
		if(a[x1][y1]==0){
			cout << "Miserable Hokusai!"<<endl;
		}else{
	    cout << a[x1][y1]<<endl;
		}
	    }
	return 0; 
}