#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <map>
#include <vector>
using namespace std;

typedef pair<int, int> P;
typedef pair<P, int> P2;

int main(){
  int n, h, a, b;
  string op;
  
  while(cin >> n >> h){
    map<P2, bool> cube; // x y z
    if(n == 0 && h == 0) break;
    for(int i = 0 ; i < h ; i++){
      cin >> op >> a >> b;
      
      if(op == "xy"){
	for(int i = 1 ; i < n+1 ; i++){
	  if(!cube[P2(P(a, b),i)]){
	    cube[P2(P(a, b), i)] = true;
	  }
	}
      }
      if(op == "yz"){
	for(int i = 1 ; i < n+1 ; i++){
	  if(!cube[P2(P(i, a), b)]){
	    cube[P2(P(i, a), b)] = true;
	  }
	}
      }
      if(op == "xz"){
	for(int i = 1 ; i < n+1 ; i++){
	  if(!cube[P2(P(a, i), b)]){
	    cube[P2(P(a, i), b)] = true;
	  }
	}
      }
    }
    cout << n*n*n - cube.size() << endl;
  }
  return 0;
}