anchor.diff:  
   safer(LD,_,[stop|_]) ->
     {stop,shutdown,LD};
  -safer(LD,F,[print_state|As]) ->
  -  print_state(LD#ld.mod,last(As)),
  -  safe_default(F,LD);
  +safer(LD,F,[get_state|As]) ->
  +  CLD = last(As),
  +  safe_reply(F,LD,{expand_recs(LD#ld.mod,CLD),CLD});
   safer(LD,F,As) ->
     case erlang:function_exported(LD#ld.mod,F,length(As)) of
       false-> safe_default(F,LD);
  
positive.code:   end.
  
  safe_reply(handle_call,LD,{Reply,CLD}) -> {reply,Reply,LD#ld{cld=CLD}};
  safe_reply(handle_cast,LD,CLD) -> {noreply,LD#ld{cld=CLD}};
  safe_reply(handle_info,LD,CLD) -> {noreply,LD#ld{cld=CLD}};
  safe_reply(_          ,LD,CLD) -> {ok,LD#ld{cld=CLD}}.
  
  safe_default(handle_call,LD) -> {reply,ok,LD};
  safe_default(handle_cast,LD) -> {noreply,LD};
  
negative.code: terminate(Reason,LD) -> 
    safer(LD,terminate,[Reason,LD#ld.cld]).
  
  code_change(OldVsn,LD,Info) -> 
    safer(LD,code_change,[OldVsn,LD#ld.cld,Info]).
  
  handle_cast(Msg,LD) -> 
    safer(LD,handle_cast,[Msg,LD#ld.cld]).
  