#include <stdio.h>
FILE *fp;
#define n 4064
float u[n][n],v[n][n];
char head[72][80];
main(ac,av)
int ac; char *av[];
{
  int i,j;
  char f1[60],f2[60];
  if(ac<2){
    printf("\n\t ***** badline image ******\n");
    exit(0);
  }
  strcpy(f1,av[1]);
  j=nindex(f1,"."); if(j>0)f1[j]=0;
  strcpy(f2,f1); strcat(f2,".fit"); 
  fp=fopen(f2,"rb");  if(fp==0){ printf("%s not found!\n",f2); exit(0); }
  fread(head,72,80,fp); fread(u,n*n,4,fp); fclose(fp);
  swap4(u,n*n*4);
  for(i=0;i<n;i++)for(j=0;j<n;j++)v[i][j]=u[i][j];
  i=1734;                          // line of bad_line
  for(j=2031;j<3542;j++)           // column start & end
    v[i][j]=(u[i-1][j]+u[i+1][j])/2.;
  swap4(v,n*n*4);
  fp=fopen(f2,"wb"); fwrite(head,72,80,fp); fwrite(v,n*n,4,fp); fclose(fp);
  printf("modified bad_line of: %s\n",f2);
}

