anchor.diff:  parse_file(File) ->
       {ok, IoDev} = file:open(File,[read, binary]),
       Line = file:read_line(IoDev),
  -    parse_lines(Line,IoDev,[]).
  +    parse_lines(Line,IoDev,{[],[]}).
   
   
   parse_lines(eof,IoDev,List) ->
  
positive.code:     NewList = parse_line(Line,List),
      parse_lines(NewLine,IoDev,NewList).
  
  parse_line(Line,List) ->
      case jsx:is_json(Line) of
          true -> 
              Entry = jsx:decode(Line,[return_maps,{labels,attempt_atom}]),
              verify_and_add(Entry,List);
          false ->
              List
      end.
  
  verify_and_add(#{iss := Iss, sub := Sub, uid := Uid, uidNumber := UidNumber,
                   gidNumber := GidNumber, homeDirectory := HomeDir}, List ) when
        is_binary(Iss), is_binary(Sub), is_binary(Uid), is_integer(UidNumber),
        is_integer(GidNumber), is_binary(HomeDir) ->
      [{{Iss, Sub}, Uid, UidNumber, GidNumber, HomeDir} | List];
  verify_and_add(_Entry, List) ->
      List.
  
  
  
negative.code:      };
  generate_config(file) ->
      File = ?CONFIG(idh_file),
      {Mappings, Users} = parse_file(File),
      #{ file => File ,
         mappings => Mappings,
         users => Users
       };
  generate_config(_) ->
      #{}.
  