#include <stdio.h>
int qmax(int b[20],int m)
{
int max=b[0];
for(int i=1;i<m;i++)
{
if(max<b[i])
max=b[i];
}
return max;
}
int qmin(int b[20],int m)
{
int min=b[0];
for(int i=1;i<m;i++)
{
if(min>b[i])
min=b[i];
}
return min;
}
int main()
{
int n,m,i,j;
int b[100][20],max[100],min[100],z;
double ave[100],top;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)
{
z=0;
for(j=0;j<m;j++)
{
scanf("%d",&b[i][j]);
z=z+b[i][j];
}
max[i]=qmax(b[i],m);
min[i]=qmin(b[i],m);
ave[i]=(z-max[i]-min[i])/(m-2);
}
top=ave[0];
for(i=1;i<n;i++)
{
if(top<ave[i])
top=ave[i];
}
printf("%.2lf",top);
return 0;
}