semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
int main()
{
	int k;
	cin >> k;
	int i, j, l, lin, col, sum = 0;
	int num[101][101];
	for(l = 1; l <= k; l++)
	{
		cin >> lin >> col;
		for(i = 1; i <= lin; i++)
		{
			for(j = 1; j <= col; j++)
				cin >> num[i][j];
		}
		
		if(lin >= 2 && col >= 2)
		{
			for(i = 2; i <= lin - 1; i++)
				sum = sum + num[i][1] + num[i][col];
			for(j = 1; j <= col; j++)
				sum = sum + num[1][j] + num[lin][j];
		}
		if(lin == 1 && col >= 2)
		{
			for(j = 1; j <= col; j++)
				sum = sum + num[1][j];
		}
		if(col == 1 && lin >= 2)
		{
			for(i = 1; i <= lin; i++)
				sum = sum + num[i][1];
		}
		if(col == 1 && lin == 1)
			sum = sum + num[1][1];
		cout << sum << endl;
		sum = 0;
	}
	return 0;
}
int main(){
    int t;
    cin>>t;
    while(t>0)
    {
              int a[102][102];
              int m,n;
              cin>>m>>n;
              int sum = 0;
              for(int i = 0;i < m;i++){
                      for(int j = 0;j < n;j++)
                      cin>>*(*(a+i)+j);
                      }
              if( m ==1 ) {
                  for(int i = 0;i < n;i++)
                    sum += *(*a+i);
                  } 
              else{           
              for(int i = 0;i < n;i++)
                    sum += *(*a+i);
              for(int i = 1;i < m-1;i++)
                      sum = sum + *(*(a+i)) + *(*(a+i) + n-1);
              for(int i = 0;i < n;i++)
                    sum += *(*(a+m-1) + i);
                    }
              cout<<sum<<endl;
              t--;
     }

    return 0;
}
/*
 * t3_3.cpp
 *
 *  Created on: 2011-1-8
 *      Author: Lenovo
 */
int main()
{
	int juzhen[101][101];
	int m,n,i,j,sum;
	int k;
	cin>>k;
	while(k>0)
	{sum=0;
	cin>>m>>n;
	for(i=0;i<m;i++){
		for(j=0;j<n;j++){
			cin>>juzhen[i][j];
			if(i==0)sum+=juzhen[i][j];
			if(i==m-1)sum+=juzhen[i][j];
			if(j==0&&i!=0&&i!=m-1)sum+=juzhen[i][j];
			if(j==n-1&&i!=0&&i!=m-1)sum+=juzhen[i][j];
		}
	}
	cout<<sum<<endl;
	k--;
}
	return 0;
}
int main()
{
	int i, number;
	cin>>number;//???
	for(i=0;i<number;i++)
	{
		int m,n;
		cin>>m>>n;//hang lie
		int a[100][100];//????
		int *p=NULL,*q=NULL,i;
	      for(p=*a;p<*a+n*m;p++)//input
		{
			cin>>*p;
		}
		int sum=0;
		for(p=*a;p<*a+n;p++)//add hang
		{
			sum=sum+*p;
		}
		if(m!=1)//??????
		{
		for(p=*a+(m-1)*n;p<*a+m*n;p++)//add hang
		{
			sum=sum+*p;
		}
		}
		for(p=*a+n;p<*a+(m-1)*n;p=p+n)//add lie
		{
			sum=sum+*p+*(p+n-1);
		}
		cout<<sum<<endl;//output
	}
	
	return 0;
}
int main()
{
	int a[100][100],sum[100]={0},i,j,l,k,m,n;
	cin>>k;
	for(i=0;i<k;i++)
	{
		cin>>m>>n;
		for(j=0;j<m;j++)
		 for(l=0;l<n;l++)
		  cin>>a[j][l];
		for(j=0;j<n;j++)
		sum[i]=sum[i]+a[0][j];
		for(j=1;j<m;j++)
		{
			sum[i]=sum[i]+a[j][0];
			sum[i]=sum[i]+a[j][n-1];
		}
		for(j=1;j<n-1;j++)
		sum[i]=sum[i]+a[m-1][j];
	}
	for(i=0;i<k;i++)
	cout<<sum[i]<<endl;
	return 0;
}
int main()
{
    int m,n,k,i,j;
    cin >> k ;
    while (k--)
    {
        int sum=0;
        cin >> m >> n;
        int a[m][n];
        for (i=0; i<m; i++)
            for (j=0; j<n; j++)
                cin >> a[i][j];

        int (*p)[n];
        p=a;
        for (j=0; j<n-1; j++)
            sum+=*(*p+j);
        for (i=0; i<m-1; i++)
            sum+=*(*(p+i)+n-1);
        for (j=1; j<n; j++)
            sum+=*(*(p+m-1)+j);
        for (i=1; i<m; i++)
            sum+=**(p+i);
            cout << sum << endl;

    }
    return 0;
}
int main ()
{
    int k=0;
    cin>>k;
    for (int i=0;i<k;i++)
    {
        int m=0,n=0;
        cin>>m>>n;
        int mat[100][100]={0};
        int sum=0;
        for (int j=0;j<m;j++)
        for (int k=0;k<n;k++)
        {
            cin>>*(*(mat+j)+k);
            if((j==0)||(j==m-1)||(k==0)||(k==n-1))//????????????????????? 
            {
                sum=sum+*(*(mat+j)+k);
            }
        }
        cout<<sum<<endl;
        
    }
   
    return 0; 
}
main()
{
  int *a,i,m,n,k,s=0,*b,j;
  scanf("%d",&k);
  b=(int *)calloc(k,sizeof(int));
  for(i=0;i<k;i++)
  {
     scanf("%d %d",&m,&n);
     a=(int *)calloc(m*n,sizeof(int));
     for(j=0;j<m*n;j++)scanf("%d",a+j);
     for(j=0;j<m;j++)
     { s=s+*(a+j*n)+*(a+j*n+n-1);
     }
     for(j=1;j<n-1;j++)
      s=s+*(a+j)+*(a+(m-1)*n+j);

     *(b+i)=s;
     free(a);
     s=0;
  }
  for(i=0;i<k;i++){
  printf("%d",*(b+i));
  if(i<k-1)printf("\n");}

}
int main()
{
int p,n,m,i,k,j,a[100][100] ,s[100];
	scanf("%d",&p);
	for(k=0;k<p;k++)
	{   s[k]=0;
		scanf("%d%d",&m,&n);
		for(i=0;i<m;i++)
			for(j=0;j<n;j++)
			{
				scanf("%d",&a[i][j]);
				if(i==0) s[k]+=a[i][j];
					else if((m-i-1)==0) s[k]+=a[i][j];
						else if(j==0) s[k]+=a[i][j];
							else if((n-j-1)==0) s[k]+=a[i][j];
			}
	}
	for(k=0;k<p;k++)
		printf("%d\n",s[k]);
return 0; 
}
int main()
{
   int k;
   cin>>k;
   for(int i=1;i<=k;i++)
    {
      int m,n;
      cin>>m>>n;
      int a[m][n];
      int (*p)[n]=a;
      for(int x=0;x<m;x++)
        for(int y=0;y<n;y++)
          cin>>*(*(p+x)+y);
      int sum=0;
      for(int y=0;y<n;y++)
        sum+=*(*(p)+y);
      for(int x=1;x<m;x++)
        sum+=*(*(p+x)+n-1);
      for(int y=n-2;y>=0;y--)
        sum+=*(*(p+m-1)+y);
      for(int x=m-2;x>=1;x--)
        sum+=*(*(p+x));
      cout<<sum<<endl;      
     
     
     
     }
   
   
   
   

 return 0;
 }
int main()
{
 int n,i,j;
 cin>>n;
 for(i=1;i<=n;i++)
 {
  int row,line,a,b,A[101][101];
  int sum=0;
  cin>>row>>line;
  for(a=1;a<=row;a++)
   for(b=1;b<=line;b++)
     cin>>A[a][b];
   for(a=1;a<=row;a++)
	   sum+=A[a][1];
   for(b=2;b<=line;b++)
	   sum+=A[row][b];
   for(a=row-1;a>=1;a--)
	   sum+=A[a][line];
   for(b=line-1;b>=2;b--)
	   sum+=A[1][b];
   cout<<sum<<endl;
 }


}
int main(int argc, char* argv[])
{
	int k,m,n,i,col,row,sum[100]={0};
	scanf("%d",&k);
	for(i=0;i<k;i++){
		scanf("%d %d",&m,&n);
		int sz[100][100];
		
		for(row=0;row<m;row++){
			for(col=0;col<n;col++){
				scanf("%d",&sz[row][col]);
			}
		}
		for(col=0;col<n-1;col++) sum[i]+=sz[0][col];
		for(row=0;row<m-1;row++) sum[i]+=sz[row][n-1];
		for(col=n-1;col>0;col--) sum[i]+=sz[m-1][col];
		for(row=m-1;row>0;row--) sum[i]+=sz[row][0];
		printf("%d\n",sum[i]);
	}

	

	return 0;
}
int main()
{
 int k,sum;
 int i , j , l;
 int a[101][101];
 int m , n;
 sum = 0 ;
 scanf("%d",&k);
 
 for( i = 1 ; i <= k ; i++)
 {
	sum = 0;
	scanf("%d%d",&m,&n);
	for( j = 1 ; j <= m ; j ++)
	{
		for( l = 1; l <= n; l ++)
			scanf("%d",&a[j][l]);
    }
	for( j = 1 ; j <= n ; j ++)
	    sum = sum + a[1][j] + a[m][j];
	for( j = 2 ; j <= m - 1 ; j ++)
		sum = sum + a[j][1] + a[j][n];

	printf("%d\n",sum);
  
 }
 return 0;
}
/* Note:Your choice is C IDE */
int main()
{
    int i,j,k,p,a[100][100],s[100]={0},m,n;
    scanf("%d",&k);
    for(p=1;p<=k;p++)
    {
    	scanf("%d%d",&m,&n);
    	for(i=1;i<=m;i++)
    	{
    		for(j=1;j<=n;j++)
    		{
    			scanf("%d",&a[i][j]);
    		}
    	}
    	for(j=1;j<=n;j++)
    	{
    		s[p]=s[p]+(a[1][j]);
    	}
    	for(j=1;j<=n;j++)
    	{
    		s[p]=s[p]+(a[m][j]);
    	}
    	for(i=2;i<=m-1;i++)
    	{
    		s[p]=s[p]+a[i][1]+a[i][n];
    	}
    }
    printf("%d",s[1]);
    for(p=2;p<=k;p++)
    {
    	printf("\n%d",s[p]);
    }
    return 0;
}
int main()
{
	int k = 0, m = 0, n = 0;//???k??????????m????n?m<100?n<100?
	int ans = 0, a = 0;
	cin >> k;
	for (int i = 0; i < k; i ++)
	{
		cin >> m >> n;
		for (int j = 0; j < m; j ++)//???
			for (int l = 0; l < n; l ++)
			{
				cin >> a;
				if (!l || l == (n - 1))
					ans += a;
				else if (!j || j == (m - 1))
					ans += a;
			}
		cout << ans << endl;
		ans = 0;
	}
	return 0;
}
void main()
{
	int fy();
	int num,k;
	scanf("%d",&num);
	for(k=0;k<num;k++)
	{
		printf("%d\n",fy());
	}
}
int fy()
{
	int a[100][100];
	int sum=0,m,n,i,j;
	scanf("%d%d",&m,&n);
	for(i=0;i<m;i++)
	{
		scanf("%d",*(a+i));
		sum=sum+*(*(a+i));
		for(j=1;j<n;j++)
			scanf(" %d",*(a+i)+j);
		sum=sum+*(*(a+i)+n-1);
	}
	for(i=1;i<n-1;i++)
	{
		sum=sum+a[0][i]+a[m-1][i];
	}
	return sum;
}
const int maxn = 110;
int n, m;
int d[maxn][maxn];

int main()
{
    int t;
    
    scanf("%d", &t);
    while(t-->0)
    {
        int sum = 0;
        scanf("%d%d", &n, &m);
        for(int i = 0; i < n; i++) 
            for(int j = 0; j < m; j++)
            {
                int tmp;
                scanf("%d", &tmp);    
                if(i == 0 || i == n-1 || j == 0 || j == m - 1)
                    sum += tmp;
            }  
            
        printf("%d\n", sum);
    }
 return 0;    
}
int sum(int m,int n){
	int i,j,sz[100][100],num=0;
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)
			scanf("%d",&sz[i][j]);
	for(i=0,j=0;j<n;j++)
		num+=sz[i][j];
	for(i=m-1,j=0;j<n;j++)
		num+=sz[i][j];
	for(i=1,j=0;i<m-1;i++)
		num+=sz[i][j];
	for(i=1,j=n-1;i<m-1;i++)
		num+=sz[i][j];
	return num;
}

void main(){
	int k,i,num,m,n;
	scanf("%d",&k);
	for(i=0;i<k;i++){
		scanf("%d %d",&m,&n);
		num=sum(m,n);
		printf("%d\n",num);
	}
}
/**
* @file 1.cpp
* @author ???
* @date 2011-10-26
* @description
* ??????:?????????
*/
int main()
{
	int a[100][100], j, i, l, p, q;
	int k, m, n, sum;
	cin >> k;
	for (i = 0; i <k; i++)
	{
		sum = 0;
		cin >> m >> n;
		for (j = 1; j <= m; j++)
		{
			for (l = 1; l <= n; l++)
				cin >> a[j][l];
		}
		for (p = 1; p <= n; p++)
		{
			sum = sum + a[1][p] + a[m][p];
		}
		for(q = 2; q < m; q++)
		{
			sum = sum + a[q][1] + a[q][n];
		}
		cout << sum << endl;
	}
	return 0;
}
int main()
{
	int i,j,a,b,k,m,n,*p,sum1=0,sum2=0,*sum;
	p=(int*)malloc(10000*sizeof(int));
	scanf("%d",&k);
	sum=(int*)malloc(1000*sizeof(int));
	for(i=0;i<k;i++)
	{
		scanf("%d %d",&m,&n);
		for(j=0;j<m*n;j++)
		{
			scanf("%d",p+j);
			sum1=sum1+*(p+j);
		}
        for(a=1;a<m-1;a++)
		{
			for(b=1;b<n-1;b++)
			{
				sum2+=*(p+a*n+b);
			}
		}
		*(sum+i)=sum1-sum2;
		sum1=0;
		sum2=0;
	}
	for(i=0;i<k;i++)
	{
		printf("%d\n",*(sum+i));
	}
}
void sq(int*p,int m,int n)
{
	int i,s;
	s=0;
	for(i=0;i<n;i++)
		s=s+*(p+i);
	for(i=1;i<m;i++)
		s=s+*(p+n*i)+*(p+n*i+n-1);
	for(i=1;i<n-1;i++)
		s=s+*(p+(m-1)*n+i);
	printf("%d\n",s);
}
void main()
{
	int *p,m,n,k,i,j;
	scanf("%d",&k);
	for(i=0;i<k;i++)
	{
		scanf("%d %d",&m,&n);
		p=(int *)malloc(m*n*sizeof(int));
		for(j=0;j<m*n;j++)
			scanf("%d",p+j);
		sq(p,m,n);
		free(p);
	}
}
int main()
{
    int k,m[200],n[200],i,t,j,a[200][200],sum;
    scanf("%d", &k);
    for(i=1;i<=k;i++)
    {
                     
                     scanf("%d%d", &m[i], &n[i]);
                     for(t=1;t<=m[i];t++)
                     {
                                         for(j=1;j<=n[i];j++)
                                         {
                                                             scanf("%d", &a[t][j]);
                                         }
                     }
                     
                    if(m[i]==1&&n[i]==1)
                    printf("%d", a[1][1]);
                    else
                    {
                    
                     sum=0;
    
                      for(t=1;t<=n[i];t++)
                      {
                                          sum=sum+a[1][t];
                      }
                     
                      for(j=1;j<=n[i];j++)
                      {
                                          sum=sum+a[m[i]][j];
                      }
                     
                      for(t=1;t<=m[i];t++)
                      {
                                          sum=sum+a[t][1];
                      }
                     
                      for(j=1;j<=m[i];j++)
                      {
                                          sum=sum+a[j][n[i]];
                      }
                     
                      sum=sum-a[1][1]-a[1][n[i]]-a[m[i]][n[i]]-a[m[i]][1];
                      printf("%d\n", sum);
                      }
    }
    
    return 0;
}
int main()
{
	int k;
	cin>>k;
	for(int x=1;x<=k;x++)
	{
		int m,n;
		int A[100][100];
		int sum=0,a;
		cin>>m>>n;
		for(int j=1;j<=n;j++)
		{
			cin>>a;
			sum+=a;
		}
		for(int i=2;i<=m-1;i++)
		{
			cin>>a;
			sum+=a;
			for(int j=2;j<=n-1;j++)
				cin>>a;
			cin>>a;
			sum+=a;
		}
		if(n!=1)
		{
			for(int j=1;j<=n;j++)
			{
				cin>>a;
			    sum+=a;
		    }
		}
		cout<<sum<<endl;
	}
	return 0;
}
int main(){
    int k,m,n,i,a,b;
    scanf("%d",&k);
    int s[k];
    for(i=0;i<k;i++){
        s[i]=0;
    }
    for(i=0;i<k;i++){
        scanf("%d%d",&m,&n);
        int sz[m][n];
        for(a=0;a<m;a++){
            for(b=0;b<n;b++){
                scanf("%d",&sz[a][b]);
            }
        }
        for(b=0;b<n;b++){
            s[i]=s[i]+sz[0][b];
        }
        for(a=1;a<m-1;a++){
            s[i]=s[i]+sz[a][0];
            s[i]=s[i]+sz[a][n-1];
        }
        if(m!=1){
            for(b=0;b<n;b++){
                s[i]=s[i]+sz[m-1][b];
            }
        }
    }
    for(i=0;i<k;i++){
        printf("%d\n",s[i]);
    }
    return 0;
}
int main()
{
	int k,m,n,i,j,jz[100][100],sum=0;   //????????????
	cin >> k;                           //??????
	while (cin >> m >> n)               //????????
	{
	    for(i=0;i<m;i++)                //?????
		{
			for(j=0;j<n;j++)
				cin >> jz[i][j];
		}
		if(m==1&&n==1)                  //???
			sum=jz[0][0];
		else if(m==1)
		{
			for(i=0;i<n;i++)
				sum=sum+jz[0][i];
		}
        else if(m==1)
		{
			for(i=0;i<n;i++)
				sum=sum+jz[0][i];
		}
		else
		{
			for(i=0;i<n;i++)                
				sum=sum+jz[0][i]+jz[m-1][i];
			for(i=1;i<m-1;i++)
				sum=sum+jz[i][0]+jz[i][n-1];
		}
		cout << sum << endl;            //???
		sum=0;
	}
	return 0;
}
//****************************************************** 
//* ? ? ?   ???????????                  *
//* ? ?      ?? ? ?                              *
//* ? ? ? ??2010 ? 12 ? 8 ?                    * 
//* ? ?      ?1000010185                            *
//****************************************************** 
int main()
{
	int a[100][100], k, n, m;
	cin >> k;
	for (int i = 0; i < k; i++)
	{
		int sum = 0;
		cin >> m >> n;
		for (int j = 0; j < m; j++)
			for (int k = 0; k < n; k++)
				cin >> a[j][k];
		int *p = a[0];
		for (; p < a[0] + n; p++) //  ????????
			sum += *p;
		if (m == 1) // ?????
		{
			cout << sum << endl;
			continue;
		}
		p = a[m - 1];
		for (; p < a[m - 1] + n; p++) // ?????????
			sum += *p;
		int (*q)[100] = a + 1;
		for (; q <= a + m - 2; q++) // ????????????????????????
			sum += **q + *((*q) + n - 1);
		if (n == 1) // ?????
		{
			cout << (sum - a[0][0] - a[m - 1][0]) / 2 + a[0][0] + a[m - 1][0];
			continue;
		}
		cout << sum << endl;
	}
	return 0;
}
void main()
{
	int k,m,n,a[110][110],i,j,l,s=0;
	scanf("%d",&k);
	for(i=1;i<=k;i++)
	{
		scanf("%d %d",&m,&n);
		for(j=1;j<=m;j++)
			for(l=1;l<=n;l++)
				scanf("%d",&a[j][l]);
		if(m==1) for(j=1;j<=n;j++) s=s+a[1][j];
		else if(n==1) for(j=i;j<=m;j++) s=s+a[j][1];
		else
		{for(j=1;j<=m;j++)
		{s=s+a[j][1]+a[j][n];a[j][1]=0;a[j][n]=0;}
		for(j=2;j<n;j++)
		{s=s+a[1][j]+a[m][j];a[1][j]=0;a[m][j]=0;}}
		printf("%d\n",s);
		s=0;
	}
}
int mat[MAX][MAX];
int main()
{
//	ifstream cin("a.txt");
	int k;
	cin>>k;
	while(k--)
	{
		int m,n,sum=0;
		cin>>m>>n;
		for(int i=0;i<m;i++)
			for(int j=0;j<n;j++)
				cin>>mat[i][j];
		for(int j=0;j<n;j++)
		{
			if(m>1)
				sum+=mat[m-1][j];
			sum+=mat[0][j];
		}
		for(int i=1;i<m-1;i++)
		{
			if(n>1)
				sum+=mat[i][n-1];
			sum+=mat[i][0];
			
		}
		cout<<sum<<endl;
	}
	return 0;
}
int main()
{
	int k,sum=0;
	int shuzu[NUM][NUM];
	scanf("%d",&k);
	for(int i=0;i<k;i++)
	{
		int m,n;
		scanf("%d %d",&m,&n);
		for(int s=0;s<m;s++)
		{
			for(int t=0;t<n;t++)
			{
				scanf("%d",&(shuzu[s][t]));
			}
		}
		if(m>2&&n>2)
		{
			for(int x=0;x<m;x++)
			{
				sum+=shuzu[x][0]+shuzu[x][n-1];
			}
			for(int y=1;y<n-1;y++)
			{
				sum+=shuzu[0][y]+shuzu[m-1][y];
			}
		}
		else
		{
			for(int z=0;z<m;z++)
			{
				for(int h=0;h<n;h++)
				{
					sum+=shuzu[z][h];
				}
			}
		}
		printf("%d\n",sum);
		sum=0;
	}
	return 0;
}
int main()
{
	const int max=100;
	int num;
	cin>>num;
	while(num--){
		int m,n;
		cin>>m>>n;
		int a[max][max];
		int i,j;
		for(i=0;i<m;i++){
			for(j=0;j<n;j++){
				cin>>a[i][j];
			}
		}
		int sum=0;
		for(j=0;j<n;j++){
			if(m==1){
				sum+=a[0][j];
			}
			else{
				sum+=a[0][j];
				sum+=a[m-1][j];
			}
		}
		for(i=1;i<m-1;i++){
			if(n==1){
				sum+=a[i][0];
			}
			else{
				sum+=a[i][0];
				sum+=a[i][n-1];
			}
		}
		cout<<sum<<endl;
	}
	return 0;
}
main()
{
int nn,ii;
scanf("%d",&nn);
for(ii=1;ii<=nn;ii++)
{
    int n,m,t,i,j,x,y,sum=0;
    scanf("%d %d",&y,&x);
    for(i=1;i<=y;i++)
    {
        for(j=1;j<=x;j++)
        {
            scanf("%d",&t);
            if(i==1||i==y||j==x||j==1)
            {sum+=t;}
        }
    }
    printf("%d\n",sum);
}
}
int main()
{
    int k,n,m,i,j,s;
    int a[100][100];
    int (*p)[100];
    int sum[100] = {0};
    cin >> k;
    for(s = 0;s < k;s++)
    {
       p = a;
       cin >> n >> m;
       for(i=0;i<n;i++)
       {
          for(j=0;j<m;j++)
          cin >> *(*(p+i)+j);
       }
       for(i = 0;i<n;i++)
       {
             if((i == 0)||(i == n-1))
             for(j = 0;j<m;j++)
             sum[s] = sum[s] + *(*(p+i)+j);
             else
             sum[s] = sum[s] + *(*(p+i))+*(*(p+i)+m-1);
          }
       }
    for(i = 0;i<k;i++)
    cout << sum[i] << endl;
    return 0;
}
int main()
{
    int n;
    scanf("%d", &n);
    int i;
    for(i=0;i<n;i++){
         int a,b;
         scanf("%d %d",&a,&b);
         int c[a][b];
         int j,k;
         for(j=0;j<a;j++){
               for(k=0;k<b;k++){
                      scanf("%d",&c[j][k]);
               }  
         }
         int s=0;
         for(k=0;k<b;k++){
               s+=c[0][k];
         }
         for(j=1;j<a;j++){
               s+=c[j][b-1];
         }
         for(k=0;k<b-1;k++){
               s+=c[a-1][k];
         }
         for(j=1;j<a-1;j++){
               s+=c[j][0];
         }
         printf("%d\n",s);
    }
    return 0;
}
int main()
{
	int i,k,n,j,a,b,s[100]={0},f[100][100];
	int *p=NULL;
	cin >> n;
	for ( i=0;i<n;i++ )
		{
			cin >> a >> b;
			for ( j=0;j<a;j++ )
				for ( k=0;k<b;k++ )
					cin >> f[j][k];
			for ( j=0;j<a;j++ )
				{
					p=f[j];
					s[i] += *p;
					p=f[j]+b-1;
					s[i] += *p;
				}
			for ( k=1;k<b-1;k++ )
				{
					p=f[0]+k;
					s[i] += *p;
					p=f[a-1]+k;
					s[i] += *p;
				}
		}
	for ( i=0;i<n;i++ )
		cout << s[i] << endl;

	return 0;
}
int main()
{
	int m[100],n[100],i,j,a,k,sz[100][100],sum[100]={0};
	scanf("%d",&k);
	for(a=0;a<k;a++)
	{
		scanf("%d%d",&m[a],&n[a]);
		for(i=0;i<m[a];i++)
		{
			for(j=0;j<n[a];j++)
			{
				scanf("%d",&sz[i][j]);
			}
		}
	     if(m[a]!=1&&n[a]!=1)
		 {
			for(j=0;j<n[a];j++)
			{
				sum[a]+=sz[0][j];
				sum[a]+=sz[m[a]-1][j];
			}
			for(i=1;i<m[a]-1;i++)
			{
				sum[a]+=sz[i][0];
				sum[a]+=sz[i][n[a]-1];
			}
		 }
		 else
		 {
			 for(i=0;i<m[a];i++)
			 {
				 for(j=0;j<n[a];j++)
				 {
					 sum[a]+=sz[i][j];
				 }
			 }
		 }
	}
		for(a=0;a<k;a++)
		printf("%d\n",sum[a]);
	
		return 0;
}
int main()
{
	int k,m[1000],n[1000],i,a,b,x,sum;
	scanf("%d",&k);
	sum=0;
	for(i=0;i<k;i++){
		scanf("%d %d",&m[i],&n[i]);
		for(a=0;a<m[i];a++){
			for(b=0;b<n[i];b++){
				scanf("%d",&x);
				if(a==0||b==0||a==m[i]-1||b==n[i]-1){
					sum+=x;
				}
			}
		}
		printf("%d\n",sum);
		sum=0;
	}
	return 0;
}
int main()
{
  int k,m,n;
  scanf("%d",&k);
  
  for(int l=1;l<=k;l++){
    scanf("%d %d",&m,&n);
    
    int sz[m][n];
    for(int j=0;j<m;j++){
      for(int i=0;i<n;i++){
        scanf("%d",&(sz[j][i]));
      }
    }
    
    int a=0;
    for(int j=0;j<m;j++){
      for(int i=0;i<n;i++){
        a+=sz[j][i];
      }
    }
    for(int j=1;j<m-1;j++){
      for(int i=1;i<n-1;i++){
        a-=sz[j][i];
      }
    }
    printf("%d\n",a);
  }
  
  return 0;
}
main()
{
 int s,y,i,j,k,n,m,t,q;
 scanf("%d",&t);
 
 //printf("%d\n",t); 
 for(q=0;q<t;q++)
 { s=0;
 y=0;
 scanf("%d %d",&m,&n);
 int a[m][n];
    for(i=0;i<m;i++)
  {
    for(j=0;j<n;j++)
    {
     scanf("%d",&a[i][j]);// printf("%d\n",a[i][j]);             
    }                
  }
  for(i=0;i<n;i++)
  {
   s=a[0][i]+a[m-1][i]+s; //printf("%d\n",s);                 
  }
  for(i=1;i<m-1;i++)
  {
   y=a[i][0]+a[i][n-1]+y; //printf("%d\n",y);                   
  }
  //k=s+y;
   printf("%d\n",(s+y));              
 }
 getchar();
 getchar();
 getchar(); 
   getchar();
 getchar();
 getchar();   
}
int m()
{
	int m,n,a[10000],i,j,s=0;
	int *p;
	p=a;
	scanf("%d %d",&m,&n);
	for(i=0;i<m*n;i++)
	{
		scanf("%d",p+i);
	}
	for(i=0;i<m;i++)
	{
		if(i==0||i==m-1)
		{
			for(j=0;j<n;j++)
			{
				s=s+*(p+i*n+j);
			}
		}
		else
		{
			for(j=0;j<n;j++)
			{
				if(j==0||j==n-1)s=s+*(p+i*n+j);
			}
		}
	}
	return s;
}
int main()
{
	int k,i,sum;
	scanf("%d",&k);
	for(i=1;i<=k;i++)
	{
		sum=m();
		printf("%d\n",sum);
	}
	return 0;
}
void main()
{
	int bianyuan();
	int n,i;
	scanf("%d",&n);
	for(i=0;i<n;i++)
		printf("%d\n",bianyuan());

}

int bianyuan()
{
	int c[10000];
	int m,n,i,j,t,sum=0;
	scanf("%d%d",&m,&n);
	t=m*n;
	int *p=c;
	for(i=0;i<t;i++)
		scanf("%d",p+i);//*
	if(t==1)
		return *p;
	for(i=0;i<n-1;i++)
		sum+=*(p+i);
	for(i=1;i<m;i++)
		sum+=*(p+i*n)+*(p+i*n-1);
	for(i=1;i<n;i++)
		sum+=*(p+(m-1)*n+i);
	return sum;
}
int sum(int a[100][100],int m,int n)
{
	int x=0,i;
	for(i=0;i<n;i++)
	{
		x=x+a[0][i]+a[m-1][i];
	}
	for(i=1;i<m-1;i++)
	{
		x=x+a[i][0]+a[i][n-1];
	}
	return x;
}
int main()
{
	int k,i;
	cin >>k;
	for(i=1;i<=k;i++)
	{
		int a[100][100]={0},m,n,j,k;
		cin >> m >> n;
		for(j=0;j<m;j++)
		{
			for(k=0;k<n;k++)
			{
				cin >> a[j][k];
			}
		}
		cout <<sum(a,m,n) << endl;
	}
	return 0;
}
main()
{int i,j,l;
	int k,n,m,a[100][100]={0},(*p)[100]=a,t=0;
	
scanf("%d",&k);
for(l=1;l<=k;l++)
{
	scanf("%d %d",&n,&m);
	for(i=0;i<=n-1;i++)
		for(j=0;j<=m-1;j++)
	scanf("%d",*(p+i)+j);
		
	for(j=0;j<=m-1;j++)
	{if(n!=1)
	{t+=*(*(p)+j);
	t+=*(*(p+n-1)+j);
	}
	else
     t+=*(*(p)+j);
	}
    for(i=1;i<=n-2;i++)
	{if(m!=1)
	{
		t+=*(*(p+i));
		t+=*(*(p+i)+m-1);
	}
	else
        t+=*(*(p+i));
	}
		printf("%d\n",t);t=0;
}
}
int main()
{
	int k=0,x=0,y=0,temp=0,sum=0,i,j,m;
	scanf("%d",&k);
	for(i=0;i<k;i++)
	{
		sum=0;
		scanf("%d",&x);
		scanf("%d",&y);
		for(j=0;j<x;j++)
		{
			for(m=0;m<y;m++)
			{
				scanf("%d",&temp);
				if(j==0||m==0||j==x-1||m==y-1)
					sum=sum+temp;
			}
		}
		printf("%d\n",sum);
	}
	return 0;
}
int main()
{
	int k;
	cin>>k;                       //??k?
	for(int a=0;a<k;a++)
	{
		int m,n;
		cin>>m>>n;
		int A[100][100];         //??????        
		int i,j;
		for(i=0;i<m;i++)
		{
			for(j=0;j<n;j++)
			{
				cin>>A[i][j];    //????
			}
		}
		int (*p)[100];          //????
		p = A;
		int num = 0;
		for(j=0;j<n;j++)
		{
			num = num+ *(*p+j); //???????
		}
		
		for(i=1;i<m-1;i++)      //??????????
		{
			num = num+ **(p+i)+ *(*(p+i)+n-1);
		}
	
		for(j=0;j<n;j++)        //????????
		{
			num = num+ *(*(p+m-1)+j);
		}

		cout<<num<<endl;        //????
	}
	return 0;
}
int main()
{
	int kk,m,n,i,j,k,a[100][100],c[300];
	scanf("%d",&kk);
	for(i=0;i<kk;i++)
	{
		scanf("%d%d",&m,&n);
		for(j=0;j<m;j++)
		{
			for(k=0;k<n;k++)
				scanf("%d",&a[j][k]);
		}
		*(c+i)=0;
		if(m==1&n==1)
			*(c+i)=a[0][0];
		else
		{
			for(j=1,k=0;j<m;j++)
			{
			    *(c+i)+=*(*(a+j)+k);
			}
		    for(k=1,j--;k<n;k++)
			{
			    *(c+i)+=*(*(a+j)+k);
			}
		    for(j=j-1,k--;j>=0;j--)
			{
			    *(c+i)+=*(*(a+j)+k);
			}
		    for(k=k-1,j++;k>=0;k--)
			{
			    *(c+i)+=*(*(a+j)+k);
			}
		}
	}
	for(i=0;i<kk;i++)
		printf("%d\n",*(c+i));
	return 0;
}
int main()
{
	int n,i,j,sum[10000]={0};
	int a[100][100]={0},k;
	int *p=sum,x,y;
	scanf("%d",&n);
	for(k=0;k<n;k++)
	{
		scanf("%d %d",&x,&y);
		for(i=0;i<x;i++)
		{
			for(j=0;j<y;j++)
				scanf("%d",&a[i][j]);
		}
		if(x!=1)
		{
			for(j=0;j<y;j++)
			{
				*(p+k)+=a[0][j]+a[x-1][j];
			}
			for(i=1;i<x-1;i++)
			{
				*(p+k)+=a[i][0]+a[i][y-1];
			}
		}
		else
		{
			for(j=0;j<y;j++)
			{
				*(p+k)+=a[0][j];
			}
		}
	}
	for(;p<(sum+n);p++)
	{
		printf("%d\n",*p);
	}
	return 0;
}
/*
 * main.cpp
 *
 *  Created on: 2012-12-10
 *      Author: ??
 *     ????????????????????????????????????????????????????????????

 */


void function()
{
	int a[110][110],(*p)[110];
	int n,m,i,sum=0,j;
	cin>>n>>m;
	for (i=0;i<n;i++)
		for (j=0;j<m;j++)
			cin>>a[i][j];
	p=a;
	for (i=0;i<m;i++)
	{
		sum+=*(*p+i);
		if (n>1) sum+=*(*(p+n-1)+i);
	}
	for (i=1;i<n-1;i++)
	{
		sum+=**(p+i);
		if (m>1) sum+=*(*(p+i)+m-1);
	}
	cout<<sum<<endl;
}
int main()
{
	int n,i;
	cin>>n;
	for (i=1;i<=n;i++)
		function();
	return 0;
}