/*                                             *
 *                                             *
 *  NES ZELDA MSSAGE FRAGMENTS COUNT PROGRAM   *
 *           ( English  version )              *
 *                                             *
 *                                             */

/* 
#include "inc.h"
*/

#include	"stdio.h"
#define		unshort	  unsigned short
#define		unchar	  unsigned char


unshort sp_tbl[3][6]={
					 {'@','@','@','@','S','\0\0'},
					 {'@','@','@','R','\0\0'},
					 {'@','@','Q','\0\0'}};

unshort q_tbl[5][5]={
				     {'f','','','@','\0\0'},
				     {'f','','','\0\0'},
				     {'f','','','\0\0'},
				     {'f','','@','\0\0'},	
				     {'f','','@','\0\0'}};

unshort a_tbl[15][5]={
					  {'','','','@','\0\0'},
					  {'','','','@','\0\0'},
					  {'','','','@','\0\0'},
					  {'','','','\0\0'},
					  {'','','','\0\0'},
					  {'','','','\0\0'},
					  {'','','@','\0\0'},
					  {'','','','\0\0'},
					  {'','','','\0\0'},
					  {'','','','\0\0'},
					  {'','','@','\0\0'},
					  {'','','','\0\0'},
					  {'','','\0\0'},
					  {'','','\0\0'},
					  {'','','\0\0'}};
					  
unshort b_tbl[5][5]={
					 {'','','','@','\0\0'},
					 {'','','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'}};

unshort c_tbl[5][5]={
					 {'','','','@','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','\0\0'}};
					  						
unshort d_tbl[4][5]={
					 {'','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'}};
				   
unshort e_tbl[9][5]={
                     {'','','','@','\0\0'},
                     {'','','@','\0\0'},
                     {'','','@','\0\0'},
                     {'','','','\0\0'},
                     {'','','','\0\0'},
                     {'','','@','\0\0'},
		     {'','','\0\0'},
                     {'','','\0\0'},
                     {'','','\0\0'}};
                                 

					 
unshort f_tbl[4][5]={
					 {'','','','@','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'}};

unshort g_tbl[5][6]={
					 {'','','','','@','\0\0'},
					 {'','','','','@','\0\0'},
					 {'','','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'}};
				   
unshort h_tbl[5][5]={
					 {'','','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'}};
					 
unshort i_tbl[5][6]={
					 {'','','','','@','\0\0'},
					 {'','','','@','\0\0'},				  
					 {'','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'}};
				  
unshort j_tbl[1][5]={{'','','','','\0\0'}};

unshort k_tbl[1][5]={{'','','','','\0\0'}};

unshort l_tbl[4][5]={
					 {'','','','\0\0'},
					 {'','','@','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'}};
				   			
unshort m_tbl[4][5]={
					 {'','','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'}};
					 
unshort n_tbl[4][5]={
					 {'','f','','@','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'}};
				   
unshort o_tbl[9][6]={
					 {'','','','','','\0\0'},        
					 {'','','','','\0\0'},
					 {'','','','','\0\0'},
					 {'','','','@','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'}};
					 
unshort p_tbl[4][5]={
					 {'','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'}};
					 
unshort r_tbl[5][5]={
					 {'','','','@','\0\0'},
					 {'','','@','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','\0\0'}};
	
unshort s_tbl[8][5]={
					 {'','','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'}};
					  
unshort t_tbl[11][6]={
					  {'','','','','@','\0\0'},
					  {'','','','@','\0\0'},
					  {'','','','','\0\0'},
					  {'','','','\0\0'},
					  {'','','','\0\0'},
					  {'','','','\0\0'},
					  {'','','','\0\0'},
					  {'','','','\0\0'},
					  {'','','','\0\0'},
					  {'','','\0\0'},
					  {'','','\0\0'}};
					    
unshort u_tbl[1][5]={{'','','\0\0'}};

unshort v_tbl[1][5]={{'','','','\0\0'}};

unshort w_tbl[7][5]={
					 {'','','','','\0\0'}, 
					 {'','','@','\0\0'},
					 {'','','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'},
					 {'','','\0\0'}};
	
unshort y_tbl[1][5]={{'','','','\0\0'}};  
	
unshort bb_tbl[1][5]={{'a','','\0\0'}};

unshort dd_tbl[1][5]={{'c','','\0\0'}};

unshort gg_tbl[1][5]={{'f','','\0\0'}};

unshort hh_tbl[3][5]={
					  {'g','','','','\0\0'},
					  {'g','','','\0\0'},
					  {'g','','\0\0'}};
					  
unshort ii_tbl[2][5]={
					  {'h','f','','\0\0'},
					  {'h','','\0\0'}};
				    
unshort nn_tbl[2][5]={
					  {'m','','','\0\0'},
					  {'m','','\0\0'}};

unshort oo_tbl[1][5]={{'n','','\0\0'}};

unshort pp_tbl[1][5]={{'o','','','\0\0'}};

unshort tt_tbl[3][5]={{'s','','','\0\0'},
					  {'s','','','\0\0'},
					  {'s','','','\0\0'}};
					  
unshort yy_tbl[2][5]={{'x','','','\0\0'},
					  {'x','','','\0\0'}};             
					  
unshort sp_cnt[3];
unshort q_cnt[5];
unshort a_cnt[15];
unshort b_cnt[5];
unshort c_cnt[5];
unshort d_cnt[4];
unshort e_cnt[9];
unshort f_cnt[4];
unshort g_cnt[5];
unshort h_cnt[5];
unshort i_cnt[5];
unshort j_cnt=0,k_cnt=0;
unshort l_cnt[4];
unshort m_cnt[4];
unshort n_cnt[4];
unshort o_cnt[9];
unshort p_cnt[4];
unshort r_cnt[5];
unshort s_cnt[8];
unshort t_cnt[11];
unshort u_cnt=0,v_cnt=0;
unshort w_cnt[7];
unshort y_cnt=0,bb_cnt=0,dd_cnt=0,gg_cnt=0;
unshort hh_cnt[3];
unshort ii_cnt[2];
unshort nn_cnt[2];
unshort oo_cnt=0,pp_cnt=0;
unshort tt_cnt[3];
unshort yy_cnt[2];

	
main(argc,argv)
int  argc;
char *argv[];
{
	FILE *rfp1;
	FILE *rfp2;

	unshort tot=0;
	unshort i;
	unshort *r_pnt;
	unchar  r_buf[150];

	char    name_buf[20];

	if((rfp1=fopen("msgtbl.TBL","r"))==NULL){
		printf("OPEN ERROR msgtbl.TBL !!\n"); exit(1);
	}

	cnt_tbl_cls();

	while(fgets(name_buf,20,rfp1)!=NULL){
		
		name_buf[11]='\0';

		if((rfp2=fopen(name_buf,"r"))==NULL){
			printf("OPEN ERROR %s !!\n",name_buf); exit(1);
		}

		while(fgets(r_buf,150,rfp2)!=NULL){

			r_pnt=(unshort *)r_buf;
			
			while((char)(*r_pnt)!='\0'){
			
				switch(*r_pnt){
						
					case '':
						while(*r_pnt!='') r_pnt++;
						r_pnt++;
						break;
						
					case '@':
						if(*(r_pnt+1)==sp_tbl[0][1] && *(r_pnt+2)==sp_tbl[0][2] && *(r_pnt+3)==sp_tbl[0][3]){
							sp_cnt[0]++;
							r_pnt+=4;
						}
						
						else if(*(r_pnt+1)==sp_tbl[1][1] && *(r_pnt+2)==sp_tbl[1][2]){
								sp_cnt[1]++;
								r_pnt+=3;
						}
						
						else if(*(r_pnt+1)==sp_tbl[2][1]){
								sp_cnt[2]++;
								r_pnt+=2;
						}
						
						else {
							r_pnt++;
						}
	
						break;
	
	
					case 'f':
						
						if(*(r_pnt+1)==q_tbl[0][1] && *(r_pnt+2)==q_tbl[0][2] && *(r_pnt+3)==q_tbl[0][3]){
						   		q_cnt[0]++;
							 	r_pnt+=4;
							 	break;
						}   		

						for(i=1;i<5;i++){
							if(*(r_pnt+1)==q_tbl[i][1] && *(r_pnt+2)==q_tbl[i][2]){
						   		q_cnt[i]++;
						   		r_pnt+=2;
						   		i=100;
						   	}	
						}
						
						r_pnt++;
						break;   		
						
	
					case '':
						for(i=0;i<3;i++){
							if(*(r_pnt+1)==a_tbl[i][1] && *(r_pnt+2)==a_tbl[i][2] && *(r_pnt+3)==a_tbl[i][3]){
					   			a_cnt[i]++;
					   			r_pnt+=4;
					   			i=100;
					   		}	
					   	}		
	
						if(i==100) break;					
	
						for(i=3;i<12;i++){
							if(*(r_pnt+1)==a_tbl[i][1] && *(r_pnt+2)==a_tbl[i][2]){
								a_cnt[i]++;
								r_pnt+=3;
								i=100;
							}	
						}
						
						if(i==100) break;	
						
						for(i=12;i<15;i++){	   		
							if(*(r_pnt+1)==a_tbl[i][1]){
					   			a_cnt[i]++;
					   			r_pnt++;
					   			i=100;
					   		}	
					   	}		

						r_pnt++;   		
						break;

						
					case '':
						if(*(r_pnt+1)==b_tbl[0][1] && *(r_pnt+2)==b_tbl[0][2] && *(r_pnt+3)==b_tbl[0][3]){
					   			b_cnt[0]++;
					   			r_pnt+=4;
					   			break;
					   	}		

						if(*(r_pnt+1)==b_tbl[1][1] && *(r_pnt+2)==b_tbl[1][2]){
					   			b_cnt[1]++;
					   			r_pnt+=3;
					   			break;
					   	}		

						for(i=2;i<5;i++){
							if(*(r_pnt+1)==b_tbl[i][1]){
								b_cnt[i]++;
								r_pnt++;
								i=100;
							}	
						}
	
						r_pnt++;   		
						break;

						
					case '':
						if(*(r_pnt+1)==c_tbl[0][1] && *(r_pnt+2)==c_tbl[0][2] && *(r_pnt+3)==c_tbl[0][3]){
					   			c_cnt[0]++;
					   			r_pnt+=4;
					   			break;
					   	}		

						for(i=1;i<4;i++){	   		
							if(*(r_pnt+1)==c_tbl[i][1] && *(r_pnt+2)==c_tbl[i][2]){
					   			c_cnt[i]++;
					   			r_pnt+=3;
					   			i=100;
					   		}	
					   	}
					   	
						if(i==100) break;		

						if(*(r_pnt+1)==c_tbl[4][1]){
								c_cnt[4]++;
								r_pnt++;
						}		

						r_pnt++;   		
						break;

						
					case '':
						for(i=0;i<2;i++){	   		
							if(*(r_pnt+1)==d_tbl[i][1] && *(r_pnt+2)==d_tbl[i][2]){
					   			d_cnt[i]++;
					   			r_pnt+=3;
					   			i=100;
					   		}	
					   	}	
					   	
						if(i==100) break;

						for(i=2;i<4;i++){
							if(*(r_pnt+1)==d_tbl[i][1]){
								d_cnt[i]++;
								r_pnt++;
							}	
						}		
						
						r_pnt++;
						break;
						
					case '':
						if(*(r_pnt+1)==e_tbl[0][1] && *(r_pnt+2)==e_tbl[0][2] && *(r_pnt+3)==e_tbl[0][3]){
					   			e_cnt[0]++;
					   			r_pnt+=4;
					   			break;
					   	}		

						for(i=1;i<6;i++){	   		
							if(*(r_pnt+1)==e_tbl[i][1] && *(r_pnt+2)==e_tbl[i][2]){
					   			e_cnt[i]++;
					   			r_pnt+=3;
					   			i=100;
					   		}	
					   	}		

						if(i==100) break;

						for(i=6;i<9;i++){
							if(*(r_pnt+1)==e_tbl[i][1]){
								e_cnt[i]++;
								r_pnt++;
								i=100;
							}	
						}		

						r_pnt++;   		
						break;

						
					case '':
						if(*(r_pnt+1)==f_tbl[0][1] && *(r_pnt+2)==f_tbl[0][2] && *(r_pnt+3)==f_tbl[0][3]){
					   			f_cnt[0]++;
					   			r_pnt+=4;
					   			break;
					   	}		

						for(i=1;i<4;i++){	   		
							if(*(r_pnt+1)==f_tbl[i][1] && *(r_pnt+2)==f_tbl[i][2]){
					   			f_cnt[i]++;
					   			r_pnt+=2;
					   			i=100;
					   		}	
					   	}		

						r_pnt++;   		
						break;
						
	
					case '':
						for(i=0;i<2;i++){
							if(*(r_pnt+1)==g_tbl[i][1] && *(r_pnt+2)==g_tbl[i][2] &&
							   *(r_pnt+3)==g_tbl[i][3] && *(r_pnt+4)==g_tbl[i][4]){
					   			g_cnt[i]++;
					   			r_pnt+=5;
					   			i=100;
					   		}	
					   	}		

						if(i==100) break;

						if(*(r_pnt+1)==g_tbl[2][1] && *(r_pnt+2)==g_tbl[2][2]){
					   			g_cnt[2]++;
					   			r_pnt+=3;
					   			break;
					   	}		

						for(i=3;i<5;i++){
							if(*(r_pnt+1)==g_tbl[i][1]){
								g_cnt[i]++;
								r_pnt++;
							}	
						}		
						
						r_pnt++;   		
						break;
						
	
					case '':
						if(*(r_pnt+1)==h_tbl[0][1] && *(r_pnt+2)==h_tbl[0][2] && *(r_pnt+3)==h_tbl[0][3]){
					   			h_cnt[0]++;
					   			r_pnt+=4;
					   			break;
					   	}		

						for(i=1;i<3;i++){	   		
							if(*(r_pnt+1)==h_tbl[i][1] && *(r_pnt+2)==h_tbl[i][2]){
					   			h_cnt[i]++;
					   			r_pnt+=3;
					   			i=100;
					   		}	
					   	}		

						if(i==100) break;

						for(i=3;i<5;i++){
							if(*(r_pnt+1)==h_tbl[i][1]){
								h_cnt[i]++;
								r_pnt++;
								i=100;
							}	
						}		

						r_pnt++;   		
						break;

						
					case '':
						if(*(r_pnt+1)==i_tbl[0][1] && *(r_pnt+2)==i_tbl[0][2] &&
						   *(r_pnt+3)==i_tbl[0][3] && *(r_pnt+4)==i_tbl[0][4]){
					   			i_cnt[0]++;
					   			r_pnt+=5;
					   			break;
					   	}		

						if(*(r_pnt+1)==i_tbl[1][1] && *(r_pnt+2)==i_tbl[1][2] && *(r_pnt+3)==i_tbl[1][3]){
					   			i_cnt[1]++;
					   			r_pnt+=4;
					   			break;
					   	}		

						for(i=2;i<5;i++){
							if(*(r_pnt+1)==i_tbl[i][1]){
								i_cnt[i]++;
								r_pnt++;
								i=100;
							}	
						}		
				   			
						r_pnt++;   		
						break;
						
	
					case '':
						if(*(r_pnt+1)==j_tbl[0][1] && *(r_pnt+2)==j_tbl[0][2] && *(r_pnt+3)==j_tbl[0][3]){
						   		j_cnt++;
						   		r_pnt+=3;
						}   	
							
						r_pnt++;   		
						break;
						
	   		
					case '':
						if(*(r_pnt+1)==k_tbl[0][1] && *(r_pnt+2)==k_tbl[0][2] && *(r_pnt+3)==k_tbl[0][3]){
						        k_cnt++;
						        r_pnt+=3;
						}        
	
						r_pnt++;        
						break;
	
						 
					case '':
						for(i=0;i<2;i++){
							if(*(r_pnt+1)==l_tbl[i][1] && *(r_pnt+2)==l_tbl[i][2]){
					   			l_cnt[i]++;
					   			r_pnt+=3;
					   			i=100;
					   		}	
					   	}		

						if(i==100) break;

						for(i=2;i<4;i++){	   		
							if(*(r_pnt+1)==l_tbl[i][1]){
					   			l_cnt[i]++;
					   			r_pnt++;
					   			i=100;
					   		}	
					   	}		

						r_pnt++;   		
						break;


					case '':
						if(*(r_pnt+1)==m_tbl[0][1] && *(r_pnt+2)==m_tbl[0][2]){
								m_cnt[0]++;
								r_pnt+=3;
								break;
						}		

						for(i=1;i<4;i++){	   		
							if(*(r_pnt+1)==m_tbl[i][1]){
					   			m_cnt[i]++;
					   			r_pnt++;
					   			i=100;
					   		}	
					   	}		

						r_pnt++;   		
						break;
						
	
					case '':
						if(*(r_pnt+1)==n_tbl[0][1] && *(r_pnt+2)==n_tbl[0][2] && *(r_pnt+3)==n_tbl[0][3]){
					   			n_cnt[0]++;
					   			r_pnt+=4;
					   			break;
					   	}		

						for(i=1;i<4;i++){	   		
							if(*(r_pnt+1)==n_tbl[i][1] && *(r_pnt+2)==n_tbl[i][2]){
					   			n_cnt[i]++;
					   			r_pnt+=2;
					   			i=100;
					   		}	
					   	}		

						r_pnt++;   		
						break;
						
	
					case '':
						if(*(r_pnt+1)==o_tbl[0][1] && *(r_pnt+2)==o_tbl[0][2] &&
						   *(r_pnt+3)==o_tbl[0][3] && *(r_pnt+4)==o_tbl[0][4]){
					   			o_cnt[0]++;
					   			r_pnt+=5;
					   			break;
					   	}		

						for(i=1;i<4;i++){
							if(*(r_pnt+1)==o_tbl[i][1] && *(r_pnt+2)==o_tbl[i][2] && *(r_pnt+3)==o_tbl[i][3]){
					   			o_cnt[i]++;
					   			r_pnt+=4;
					   			i=100;
					   		}	
					   	}
					   	
						if(i==100) break;

						for(i=4;i<6;i++){	   		
							if(*(r_pnt+1)==o_tbl[i][1] && *(r_pnt+2)==o_tbl[i][2]){
					   			o_cnt[i]++;
					   			r_pnt+=3;
					   			i=100;
					   		}	
					   	}		

						if(i==100) break;

						for(i=6;i<9;i++){
							if(*(r_pnt+1)==o_tbl[i][1]){
								o_cnt[i]++;
								r_pnt++;
								i=100;
							}	
						}		
						
						r_pnt++;   		
						break;

						
					case '':
						for(i=0;i<4;i++){	   		
							if(*(r_pnt+1)==p_tbl[i][1] && *(r_pnt+2)==p_tbl[i][2]){
					   			p_cnt[i]++;
					   			r_pnt+=2;
					   			i=100;
					   		}	
					   	}
					   	
					   	r_pnt++;
					   	break;
			
	
					case '':
						if(*(r_pnt+1)==r_tbl[0][1] && *(r_pnt+2)==r_tbl[0][2] && *(r_pnt+3)==r_tbl[0][3]){
					   			r_cnt[0]++;
					   			r_pnt+=4;
					   			break;
					   	}		

						for(i=1;i<4;i++){	   		
							if(*(r_pnt+1)==r_tbl[i][1] && *(r_pnt+2)==r_tbl[i][2]){
					   			r_cnt[i]++;
					   			r_pnt+=3;
					   			i=100;
					   		}
					   	}		

						if(i==100) break;
						
						if(*(r_pnt+1)==r_tbl[4][1]){
							r_cnt[4]++;
							r_pnt++;
						}	

						r_pnt++;   		
						break;
						
	
					case '':
						if(*(r_pnt+1)==s_tbl[0][1] && *(r_pnt+2)==s_tbl[0][2] && *(r_pnt+3)==s_tbl[0][3]){
					   			s_cnt[0]++;
					   			r_pnt+=4;
					   			break;
					   	}		

						for(i=1;i<3;i++){	   		
							if(*(r_pnt+1)==s_tbl[i][1] && *(r_pnt+2)==s_tbl[i][2]){
					   			s_cnt[i]++;
					   			r_pnt+=3;
					   			i=100;
					   		}	
					   	}		

						if(i==100) break;
						
						for(i=3;i<8;i++){
							if(*(r_pnt+1)==s_tbl[i][1]){
					   			s_cnt[i]++;
					   			r_pnt++;
					   			i=100;
					   		}		
					   	}			

						r_pnt++;   		
						break;
						 
	  		
					case '':
						if(*(r_pnt+1)==t_tbl[0][1] && *(r_pnt+2)==t_tbl[0][2] &&
						   *(r_pnt+3)==t_tbl[0][3] && *(r_pnt+4)==t_tbl[0][4]){
					   			t_cnt[0]++;
					   			r_pnt+=5;
					   			break;
					   	}		

						for(i=1;i<3;i++){
							if(*(r_pnt+1)==t_tbl[i][1] && *(r_pnt+2)==t_tbl[i][2] && *(r_pnt+3)==t_tbl[i][3]){
				      			t_cnt[i]++;
					   			r_pnt+=4;
					   			i=100;
					   		}	
					   	}

						if(i==100) break;
						
						for(i=3;i<9;i++){	   		
							if(*(r_pnt+1)==t_tbl[i][1] && *(r_pnt+2)==t_tbl[i][2]){
					   			t_cnt[i]++;
					   			r_pnt+=3;
					   			i=100;
					   		}	
					   	}		

						if(i==100) break;
						
						for(i=9;i<11;i++){
							if(*(r_pnt+1)==t_tbl[i][1]){
								t_cnt[i]++;
								r_pnt++;
								i=100;
							}	
						}		
					   			
						r_pnt++;   		
						break;
						
					case '':
						if(*(r_pnt+1)==u_tbl[0][1]){
						   		u_cnt++;
						   		r_pnt++;
						}
						   		
						r_pnt++;   		
						break; 
						
	  		
					case '':
						if(*(r_pnt+1)==v_tbl[0][1] && *(r_pnt+2)==v_tbl[0][2]){
						   		v_cnt++;
						   		r_pnt+=2;
						}
						   		
						r_pnt++;   		
						break;  
						
	 		
					case '':
						if(*(r_pnt+1)==w_tbl[0][1] && *(r_pnt+2)==w_tbl[0][2] && *(r_pnt+3)==w_tbl[0][3]){
					   			w_cnt[0]++;
					   			r_pnt+=4;
					   			break;
					   	}		

						for(i=1;i<3;i++){	   		
							if(*(r_pnt+1)==w_tbl[i][1] && *(r_pnt+2)==w_tbl[i][2]){
					   			w_cnt[i]++;
					   			r_pnt+=3;
					   			i=100;
					   		}	
					   	}	
					   	
						if(i==100) break;	

						for(i=3;i<7;i++){
							if(*(r_pnt+1)==w_tbl[i][1]){
								w_cnt[i]++;
								r_pnt++;
								i=100;
							}	
					   	}			

						r_pnt++;   		
						break;

						   		
					case '': 
						if( (*(r_pnt+1)==y_tbl[0][1]) && (*(r_pnt+2)==y_tbl[0][2]) ){
						   		y_cnt++;
						   		r_pnt+=2;
						}
						   		
						r_pnt++;   		
						break;   		


					case 'a':
						if(*(r_pnt+1)==bb_tbl[0][1]){
						   		bb_cnt++;
						   		r_pnt++;
						}   		

						r_pnt++;   		
						break;   		


					case 'c':
						if(*(r_pnt+1)==dd_tbl[0][1]){
						   		dd_cnt++;
						   		r_pnt++;
						}   		

						r_pnt++;   		
						break;   		


					case 'f':
						if(*(r_pnt+1)==gg_tbl[0][1]){
						   		gg_cnt++;
						   		r_pnt++;
						}
						   		
						r_pnt++;   		
						break;   		


					case 'g':
						if(*(r_pnt+1)==hh_tbl[0][1] && *(r_pnt+2)==hh_tbl[0][2] && *(r_pnt+3)==hh_tbl[0][3]){
					   			hh_cnt[0]++;
					   			r_pnt+=4;
					   			break;
					   	}		
					   			
						if(*(r_pnt+1)==hh_tbl[1][1] && *(r_pnt+2)==hh_tbl[1][2]){
					   			hh_cnt[1]++;
					   			r_pnt+=3;
					   			break;
					   	}		

						if(*(r_pnt+1)==hh_tbl[2][1]){
					   			hh_cnt[2]++;
					   			r_pnt++;
					   	}		

						r_pnt++;   		
						break;   		

					
					case 'h':
						if(*(r_pnt+1)==ii_tbl[0][1] && *(r_pnt+2)==ii_tbl[0][2]){
					   			ii_cnt[0]++;
					   			r_pnt+=3;
					   			break;
					   	}		
						   		
						if(*(r_pnt+1)==ii_tbl[1][1]){
					   			ii_cnt[1]++;
					   			r_pnt++;
					   	}
					   			
						r_pnt++;   		
						break;   		
						
	
					case 'm':
						if(*(r_pnt+1)==nn_tbl[0][1] && *(r_pnt+2)==nn_tbl[0][2]){
					   			nn_cnt[0]++;
					   			r_pnt+=3;
					   			break;
					   	}		

						if(*(r_pnt+1)==nn_tbl[1][1]){
					   			nn_cnt[1]++;
					   			r_pnt++;
					   	}		
						   		
						r_pnt++;   		
						break;   		
						
	
					case 'n':
						if(*(r_pnt+1)==oo_tbl[0][1]){
						   		oo_cnt++;
						   		r_pnt++;
						}
						   		
						r_pnt++;   		
						break;   		


					case 'o':
						if(*(r_pnt+1)==pp_tbl[0][1] && *(r_pnt+2)==pp_tbl[0][2]){
						   		pp_cnt++;
						   		r_pnt+=2;
						}
						   		
						r_pnt++;   		
						break;   		
						

					case 's':
						for(i=0;i<3;i++){
							if(*(r_pnt+1)==tt_tbl[i][1] && *(r_pnt+2)==tt_tbl[i][2]){
									tt_cnt[i]++;
						   			r_pnt+=2;
						   			i=100;
						   	}		
						}  
						 			
						r_pnt++;   		
						break;   		
						
					case 'x':
						for(i=0;i<2;i++){
							if(*(r_pnt+1)==yy_tbl[i][1] && *(r_pnt+2)==yy_tbl[i][2]){
						   			yy_cnt[i]++;
						   			r_pnt+=2;
						   			i=100;
						   	}		
						}
						   			
						r_pnt++;   		
						break;   		
						
					default :
							r_pnt++;
							break;	
				}
			}
		}
		fclose(rfp2);
	}
	
		
	for(i=0;i<3;i++){
	    printf("%10s --> %4d    * %d  =  %d\n",sp_tbl[i],sp_cnt[i],(strlen(sp_tbl[i])/2-2),(sp_cnt[i]*(strlen(sp_tbl[i])/2-2)));	
		tot+=sp_cnt[i]*(strlen(sp_tbl[i])/2-2);
	}	

	for(i=0;i<5;i++){
		printf("%10s --> %4d    * %d  =  %d\n",q_tbl[i],q_cnt[i],(strlen(q_tbl[i])/2-1),(q_cnt[i]*(strlen(q_tbl[i])/2-1)));
		tot+=q_cnt[i]*(strlen(q_tbl[i])/2-1);
	}	

	for(i=0;i<15;i++){
		printf("%10s --> %4d    * %d  =  %d\n",a_tbl[i],a_cnt[i],(strlen(a_tbl[i])/2-1),(a_cnt[i]*(strlen(a_tbl[i])/2-1)));
    	tot+=a_cnt[i]*(strlen(a_tbl[i])/2-1);
    }	

    for(i=0;i<5;i++){
        printf("%10s --> %4d    * %d  =  %d\n",b_tbl[i],b_cnt[i],(strlen(b_tbl[i])/2-1),(b_cnt[i]*(strlen(b_tbl[i])/2-1)));
		tot+=b_cnt[i]*(strlen(b_tbl[i])/2-1);
	}	

	for(i=0;i<5;i++){
		printf("%10s --> %4d    * %d  =  %d\n",c_tbl[i],c_cnt[i],(strlen(c_tbl[i])/2-1),(c_cnt[i]*(strlen(c_tbl[i])/2-1)));
		tot+=c_cnt[i]*(strlen(c_tbl[i])/2-1);
	}	

	for(i=0;i<4;i++){
	    printf("%10s --> %4d    * %d  =  %d\n",d_tbl[i],d_cnt[i],(strlen(d_tbl[i])/2-1),(d_cnt[i]*(strlen(d_tbl[i])/2-1)));
		tot+=d_cnt[i]*(strlen(d_tbl[i])/2-1);
	}

	for(i=0;i<9;i++){
		printf("%10s --> %4d    * %d  =  %d\n",e_tbl[i],e_cnt[i],(strlen(e_tbl[i])/2-1),(e_cnt[i]*(strlen(e_tbl[i])/2-1)));
		tot+=e_cnt[i]*(strlen(e_tbl[i])/2-1);
	}

	for(i=0;i<4;i++){
		printf("%10s --> %4d    * %d  =  %d\n",f_tbl[i],f_cnt[i],(strlen(f_tbl[i])/2-1),(f_cnt[i]*(strlen(f_tbl[i])/2-1)));		
		tot+=f_cnt[i]*(strlen(f_tbl[i])/2-1);
	}	

	for(i=0;i<5;i++){
		printf("%10s --> %4d    * %d  =  %d\n",g_tbl[i],g_cnt[i],(strlen(g_tbl[i])/2-1),(g_cnt[i]*(strlen(g_tbl[i])/2-1)));
		tot+=g_cnt[i]*(strlen(g_tbl[i])/2-1);
	}

	for(i=0;i<5;i++){
		printf("%10s --> %4d    * %d  =  %d\n",h_tbl[i],h_cnt[i],(strlen(h_tbl[i])/2-1),(h_cnt[i]*(strlen(h_tbl[i])/2-1)));
		tot+=h_cnt[i]*(strlen(h_tbl[i])/2-1);
	}

	for(i=0;i<5;i++){
		printf("%10s --> %4d    * %d  =  %d\n",i_tbl[i],i_cnt[i],(strlen(i_tbl[i])/2-1),(i_cnt[i]*(strlen(i_tbl[i])/2-1)));
		tot+=i_cnt[i]*(strlen(i_tbl[i])/2-1);
	}

	printf("%10s --> %4d    * %d  =  %d\n",j_tbl[0],j_cnt,(strlen(j_tbl[0])/2-1),(j_cnt*(strlen(j_tbl[0])/2-1)));
	tot+=j_cnt*(strlen(j_tbl[0])/2-1);
	
	printf("%10s --> %4d    * %d  =  %d\n",k_tbl[0],k_cnt,(strlen(k_tbl[0])/2-1),(k_cnt*(strlen(k_tbl[0])/2-1)));
	tot+=k_cnt*(strlen(k_tbl[0])/2-1);

	for(i=0;i<4;i++){
		printf("%10s --> %4d    * %d  =  %d\n",l_tbl[i],l_cnt[i],(strlen(l_tbl[i])/2-1),(l_cnt[i]*(strlen(l_tbl[i])/2-1)));
		tot+=l_cnt[i]*(strlen(l_tbl[i])/2-1);
	}

	for(i=0;i<4;i++){
		printf("%10s --> %4d    * %d  =  %d\n",m_tbl[i],m_cnt[i],(strlen(m_tbl[i])/2-1),(m_cnt[i]*(strlen(m_tbl[i])/2-1)));
		tot+=m_cnt[i]*(strlen(m_tbl[i])/2-1);
	}

	for(i=0;i<4;i++){
		printf("%10s --> %4d    * %d  =  %d\n",n_tbl[i],n_cnt[i],(strlen(n_tbl[i])/2-1),(n_cnt[i]*(strlen(n_tbl[i])/2-1)));
		tot+=n_cnt[i]*(strlen(n_tbl[i])/2-1);
	}

	for(i=0;i<9;i++){
		printf("%10s --> %4d    * %d  =  %d\n",o_tbl[i],o_cnt[i],(strlen(o_tbl[i])/2-1),(o_cnt[i]*(strlen(o_tbl[i])/2-1)));
		tot+=o_cnt[i]*(strlen(o_tbl[i])/2-1);
	}

	for(i=0;i<4;i++){
		printf("%10s --> %4d    * %d  =  %d\n",p_tbl[i],p_cnt[i],(strlen(p_tbl[i])/2-1),(p_cnt[i]*(strlen(p_tbl[i])/2-1)));
		tot+=p_cnt[i]*(strlen(p_tbl[i])/2-1);
	}

	for(i=0;i<5;i++){
		printf("%10s --> %4d    * %d  =  %d\n",r_tbl[i],r_cnt[i],(strlen(r_tbl[i])/2-1),(r_cnt[i]*(strlen(r_tbl[i])/2-1)));
		tot+=r_cnt[i]*(strlen(r_tbl[i])/2-1);
	}

	for(i=0;i<8;i++){
		printf("%10s --> %4d    * %d  =  %d\n",s_tbl[i],s_cnt[i],(strlen(s_tbl[i])/2-1),(s_cnt[i]*(strlen(s_tbl[i])/2-1)));
		tot+=s_cnt[i]*(strlen(s_tbl[i])/2-1);
	}

	for(i=0;i<11;i++){
		printf("%10s --> %4d    * %d  =  %d\n",t_tbl[i],t_cnt[i],(strlen(t_tbl[i])/2-1),(t_cnt[i]*(strlen(t_tbl[i])/2-1)));
		tot+=t_cnt[i]*(strlen(t_tbl[i])/2-1);
	}

	printf("%10s --> %4d    * %d  =  %d\n",u_tbl[0],u_cnt,(strlen(u_tbl[0])/2-1),(u_cnt*(strlen(u_tbl[0])/2-1)));
	tot+=u_cnt*(strlen(u_tbl[0])/2-1);

	printf("%10s --> %4d    * %d  =  %d\n",v_tbl[0],v_cnt,(strlen(v_tbl[0])/2-1),(v_cnt*(strlen(v_tbl[0])/2-1)));
	tot+=v_cnt*(strlen(v_tbl[0])/2-1);

	for(i=0;i<7;i++){
		printf("%10s --> %4d    * %d  =  %d\n",w_tbl[i],w_cnt[i],(strlen(w_tbl[i])/2-1),(w_cnt[i]*(strlen(w_tbl[i])/2-1)));
		tot+=w_cnt[i]*(strlen(w_tbl[i])/2-1);
	}

	printf("%10s --> %4d    * %d  =  %d\n",y_tbl[0],y_cnt,(strlen(y_tbl[0])/2-1),(y_cnt*(strlen(y_tbl[0])/2-1)));
	tot+=y_cnt*(strlen(y_tbl[0])/2-1);

	printf("%10s --> %4d    * %d  =  %d\n",bb_tbl[0],bb_cnt,(strlen(bb_tbl[0])/2-1),(bb_cnt*(strlen(bb_tbl[0])/2-1)));
	tot+=bb_cnt*(strlen(bb_tbl[0])/2-1);
	
	printf("%10s --> %4d    * %d  =  %d\n",dd_tbl[0],dd_cnt,(strlen(dd_tbl[0])/2-1),(dd_cnt*(strlen(dd_tbl[0])/2-1)));
	tot+=dd_cnt*(strlen(dd_tbl[0])/2-1);
	
	printf("%10s --> %4d    * %d  =  %d\n",gg_tbl[0],gg_cnt,(strlen(gg_tbl[0])/2-1),(gg_cnt*(strlen(gg_tbl[0])/2-1)));
	tot+=gg_cnt*(strlen(gg_tbl[0])/2-1);

	for(i=0;i<3;i++){
		printf("%10s --> %4d    * %d  =  %d\n",hh_tbl[i],hh_cnt[i],(strlen(hh_tbl[i])/2-1),(hh_cnt[i]*(strlen(hh_tbl[i])/2-1)));
		tot+=hh_cnt[i]*(strlen(hh_tbl[i])/2-1);
	}

	for(i=0;i<2;i++){
		printf("%10s --> %4d    * %d  =  %d\n",ii_tbl[i],ii_cnt[i],(strlen(ii_tbl[i])/2-1),(ii_cnt[i]*(strlen(ii_tbl[i])/2-1)));
		tot+=ii_cnt[i]*(strlen(ii_tbl[i])/2-1);
	}

	for(i=0;i<2;i++){
		printf("%10s --> %4d    * %d  =  %d\n",nn_tbl[i],nn_cnt[i],(strlen(nn_tbl[i])/2-1),(nn_cnt[i]*(strlen(nn_tbl[i])/2-1)));
		tot+=nn_cnt[i]*(strlen(nn_tbl[i])/2-1);
	}

	printf("%10s --> %4d    * %d  =  %d\n",oo_tbl[0],oo_cnt,(strlen(oo_tbl[0])/2-1),(oo_cnt*(strlen(oo_tbl[0])/2-1)));
	tot+=oo_cnt*(strlen(oo_tbl[0])/2-1);

	printf("%10s --> %4d    * %d  =  %d\n",pp_tbl[0],pp_cnt,(strlen(pp_tbl[0])/2-1),(pp_cnt*(strlen(pp_tbl[0])/2-1)));
	tot+=pp_cnt*(strlen(pp_tbl[0])/2-1);

	for(i=0;i<3;i++){
		printf("%10s --> %4d    * %d  =  %d\n",tt_tbl[i],tt_cnt[i],(strlen(tt_tbl[i])/2-1),(tt_cnt[i]*(strlen(tt_tbl[i])/2-1)));
		tot+=tt_cnt[i]*(strlen(tt_tbl[i])/2-1);
	}

	for(i=0;i<2;i++){
		printf("%10s --> %4d    * %d  =  %d\n",yy_tbl[i],yy_cnt[i],(strlen(yy_tbl[i])/2-1),(yy_cnt[i]*(strlen(yy_tbl[i])/2-1)));
		tot+=yy_cnt[i]*(strlen(yy_tbl[i])/2-1);
	}
					printf("\n\nTOTAL  =  %6d\n",tot);	

	fclose(rfp1);


}


cnt_tbl_cls()
{
	unshort i;
	
	for(i=0;i<15;i++) a_cnt[i]=0;
	for(i=0;i<11;i++) t_cnt[i]=0;
	for(i=0;i<2;i++){
		nn_cnt[i]=0;
		yy_cnt[i]=0;
		ii_cnt[i]=0;
	}
	for(i=0;i<3;i++){
		sp_cnt[i]=0;
		hh_cnt[i]=0;
		tt_cnt[i]=0;
	}
	for(i=0;i<4;i++){
		d_cnt[i]=0;
		f_cnt[i]=0;		
		l_cnt[i]=0;
		m_cnt[i]=0;
		n_cnt[i]=0;
		p_cnt[i]=0;
	}
	for(i=0;i<5;i++){
		q_cnt[i]=0;
		b_cnt[i]=0;
		c_cnt[i]=0;
		g_cnt[i]=0;
		h_cnt[i]=0;
		i_cnt[i]=0;
		r_cnt[i]=0;
	}
	for(i=0;i<7;i++) w_cnt[i]=0;
	for(i=0;i<8;i++) s_cnt[i]=0;		
	for(i=0;i<9;i++){
		e_cnt[i]=0;
		o_cnt[i]=0;
	}

}

