anchor.diff:  %% @end
   %%--------------------------------------------------------------------
   stopped(tick, State = #state{uuid = UUID}) ->
  -    lager:info("[zlogin:~s] tick", [UUID]),
       ConsolePort = open_zlogin(State),
       receive
           {'EXIT', ConsolePort, _PosixCode} ->
               tick(),
  -            lager:info("[zlogin:~s] failed to login.", [UUID]),
               {next_state, stopped, State}
       after
           200 ->
  
positive.code:             State = #state{console = _C}) ->
      lager:warning("[console:~s] Exited with status ~p but vm in stopped.",
                    [State#state.uuid, PosixCode]),
      {next_state, stopped, State#state{console = undefined}};
  
  handle_info({'EXIT', _C, PosixCode}, connected,
              State = #state{console = _C}) ->
      lager:warning("[console:~s] Exited with status ~p but vm in stopped.",
                    [State#state.uuid, PosixCode]),
      {next_state, stopped, State#state{console = undefined}};
  
  handle_info({C, {data, Data}}, connected,
  
negative.code: tick() ->
      gen_fsm:send_event_after(1000, tick).
  
  check() ->
      gen_fsm:send_event_after(60000, check).
  
  %%--------------------------------------------------------------------
  %% @private
  %% @doc
  