#include <stdio.h>
#include <stdlib.h>


int main(int argc, char* argv[]){
  FILE* fp = fopen(argv[1],"r");
  char header[54];
  fread(header,54,1,fp);
  for (int i=0; i<54; i++)
    printf("%x",header[i]);
  printf("\n");
  int* ptr = (int*)(header+2);
  printf("The size of file is %d\n", *ptr); 
  char* image=malloc(*ptr-54);
  fread(image,*ptr-54,1, fp); 
  for (int j=0; j<*ptr-54; j+=3){
    char byte=(image[j]+image[j+1]+image[j+2])/3;
    image[j]=image[j+1]=image[j+2]=byte;
  }
  FILE* fout = fopen("out.bmp","w");
  fwrite(header,54,1,fout);
  fwrite(image,*ptr-54,1,fout);
  fclose(fp);
  fclose(fout);  
  return EXIT_SUCCESS;
}
