added filediff logic