anchor.diff:                             case socket:accept(LSock) of
                                  {ok, Sock} ->
                                      ?SEV_IPRINT("accepted: try start handler"),
  -                                   {ok, Handler} = sc_rc_tcp_handler_start(1,
  -                                                                           Recv,
  -                                                                           Sock),
  +                                   Handler = sc_rc_tcp_handler_start(1, Recv, Sock),
                                      ?SEV_IPRINT("handler started"),
                                      {ok, State#{csock1   => Sock,
                                                  handler1 => Handler}};
                                  {error, _} = ERROR ->
                                      ERROR
                              end
  +                   end},
  +         #{desc => "await handle 1 ready (init)",
  +           cmd  => fun(#{tester   := Tester, 
  +                         handler1 := Handler1} = _State) ->
  +                           ?SEV_AWAIT_READY(Handler1, handler1, init, 
  +                                            [{tester, Tester}])
                      end},
            #{desc => "accept 2",
              cmd  => fun(#{lsock := LSock, recv := Recv} = State) ->
                              case socket:accept(LSock) of
                                  {ok, Sock} ->
                                      ?SEV_IPRINT("accepted: try start handler"),
  -                                   {ok, Handler} = sc_rc_tcp_handler_start(2,
  -                                                                           Recv,
  -                                                                           Sock),
  +                                   Handler = sc_rc_tcp_handler_start(2, Recv, Sock),
                                      ?SEV_IPRINT("handler started"),
                                      {ok, State#{csock2   => Sock,
                                                  handler2 => Handler}};
                                  {error, _} = ERROR ->
                                      ERROR
                              end
  +                   end},
  +         #{desc => "await handle 2 ready (init)",
  +           cmd  => fun(#{tester   := Tester, 
  +                         handler1 := Handler1, 
  +                         handler2 := Handler2} = _State) ->
  +                           ?SEV_AWAIT_READY(Handler2, handler2, init, 
  +                                            [{tester,   Tester},
  +                                             {handler1, Handler1}])
                      end},
            #{desc => "accept 3",
              cmd  => fun(#{lsock := LSock, recv := Recv} = State) ->
                              case socket:accept(LSock) of
                                  {ok, Sock} ->
                                      ?SEV_IPRINT("accepted: try start handler"),
  -                                   {ok, Handler} = sc_rc_tcp_handler_start(3,
  -                                                                           Recv,
  -                                                                           Sock),
  +                                   Handler = sc_rc_tcp_handler_start(3, Recv, Sock),
                                      ?SEV_IPRINT("handler started"),
                                      {ok, State#{csock3   => Sock,
                                                  handler3 => Handler}};
  
positive.code:                    end},
           #{desc => "order handler 1 to receive",
             cmd  => fun(#{handler1 := Pid} = _State) ->
                             Pid ! {recv, self()},
                             ok
                     end},
           #{desc => "order handler 2 to receive",
             cmd  => fun(#{handler2 := Pid} = _State) ->
                             Pid ! {recv, self()},
                             ok
                     end},
           #{desc => "order handler 3 to receive",
             cmd  => fun(#{handler3 := Pid} = _State) ->
                             Pid ! {recv, self()},
                             ok
                     end},
           #{desc => "await ready from handler 1 (recv)",
             cmd  => fun(#{handler1 := Pid} = _State) ->
                             receive
                                 {ready, Pid, ok} ->
                                     ok;
                                 {ready, Pid, Result} ->
                                     Result;
                                 {'DOWN', _, process, Pid, Reason} ->
                                     {error, {handler1_exit, Reason}}
                             end
                     end},
           #{desc => "await ready from handler 2 (recv)",
             cmd  => fun(#{handler2 := Pid} = _State) ->
                             receive
                                 {ready, Pid, ok} ->
                                     ok;
                                 {ready, Pid, Result} ->
                                     Result;
                                 {'DOWN', _, process, Pid, Reason} ->
                                     {error, {handler2_exit, Reason}}
                             end
                     end},
           #{desc => "await ready from handler 3 (recv)",
             cmd  => fun(#{handler3 := Pid} = _State) ->
                             receive
                                 {ready, Pid, ok} ->
                                     ok;
                                 {ready, Pid, Result} ->
                                     Result;
                                 {'DOWN', _, process, Pid, Reason} ->
                                     {error, {handler3_exit, Reason}}
                             end
                     end},
           #{desc => "announce ready (recv closed from all handlers)",
  
negative.code:             {error, {recv, C, E, S}}
      end.
      
  sc_rc_tcp_handler_announce_ready(Parent, Slogan, Result) ->
      ?SEV_IPRINT("announce ready"),
      ?SEV_ANNOUNCE_READY(Parent, Slogan, Result),
      ok.
  
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  