#include <iostream>
#include <cmath>
#include <vector>


using namespace std;
#define LENGTH 10

bool isDropEnabled(int x, int y){
  if(0<=x && x<LENGTH && 0<=y && y<LENGTH){
    return true;
  }else{
    return false;
  }
}
 



int main(){
  int x, y, size;
  char c;
  int density[LENGTH][LENGTH];
  for(int i=0;i<LENGTH;i++){
    for(int j=0;j<LENGTH;j++){
      density[i][j]=0;
    }
  }
  
  while(cin >> x >> c >> y >> c >> size){
    if(size==1){
      for(int i=-1;i<2;i++){
	for(int j=-1;j<2;j++){
	  if(isDropEnabled(x+i, y+j) && ((i+j)%2==1 || i==j==0)){
	    density[x+i][y+j]++;
	  }
	}
      }
    }

    if(size==2){
      for(int i=-1;i<2;i++){
	for(int j=-1;j<2;j++){
	  if(isDropEnabled(x+i, y+j)){
	    density[x+i][y+j]++;
	  }
	}
      }
    }

    if(size==3){
      for(int i=-2;i<3;i++){
	for(int j=-2;j<3;j++){
	  if(isDropEnabled(x+i, y+j) && (abs(i)+abs(j) <=2)){
	    density[x+i][y+j]++;
	  }
	}
      }
    }
    cout << ":" << x << " " << y << " " << size << endl;
  }

  cout << "out" << endl;

  
  //
  int empty=0;
  int max=0;
  for(int i=0;i<LENGTH;i++){
    for(int j=0;j<LENGTH;j++){
      if(density[i][j]==0){
	empty++;
      }else if(max < density[i][j]){
	max = density[i][j];
      }
    }
  }
  cout << empty << endl;
  cout << max << endl;
  
}