anchor.diff:          {break,Ccs,_} ->                        %Atomic that does not fit
               [Ccs|print1_tail(Cdr, L, D, I, L)];
           {break,Ccs} ->                          %Non-atomic
  +            %% Force a break after not an atomic.
               [Ccs|print1_tail(Cdr, L, D, I, L)]
       end.
   
  
positive.code: %%  Print a map, one key value pair per line.
  
  print1_map(Map, D, I, L) ->
      [$#,$M,$(,print1_map_body(maps:to_list(Map), D, I+3, L-1),$)].
  
  print1_map_body([], _, _, _) -> [];
  print1_map_body([KV|KVs], D, I, L) ->
      [print1_map_assoc(KV, D, I, L)|print1_map_rest(KVs, D-1, I, L)].
  
  print1_map_rest([], _, _, _) -> [];
  print1_map_rest(_, 0, _, _) -> " ...";
  print1_map_rest([KV|KVs], D, I, L) ->
      Massoc = print1_map_assoc(KV, D, I, L),
      [$\n,blanks(I, []),Massoc|print1_map_rest(KVs, D-1, I, L)].
  
  print1_map_assoc({K,V}, D, I, L) ->
      Kcs = lfe_io:print1(K, D-1),                %Print without line breaks
      Kl = flatlength(Kcs),
      Vcs = lfe_io:print1(V, D-1),                %Print without line breaks
      Vl = flatlength(Vcs),
      %% Test whether we can use the one line versions and how.
      if I + Kl + 1 + Vl =< L ->                  %Both on same line
              [Kcs,$\s,Vcs];
         true ->                                  %On separate lines
              %% Can we use the flat versions?
              Ks = if I + Kl =< L -> Kcs;
                      true -> print1(K, D-1, I, L)
                   end,
              Vs = if I + Vl =< L -> Vcs;
                      true -> print1(V, D-1, I, L)
                   end,
              [Ks,$\n,blanks(I, []),Vs]
      end.
  
negative.code: %% Copyright (c) 2008-2014 Robert Virding
  %%
  %% Licensed under the Apache License, Version 2.0 (the "License");
  %% you may not use this file except in compliance with the License.
  