anchor.diff:    receive
       connect ->
         init_feed(State);
  +    {'EXIT', Parent, _} ->
  +      cleanup(State, "parent stopped"),
  +      exit(normal);
       {system, From, Request} ->
         sys:handle_system_msg(
           Request, From, Parent, ?MODULE, [],
           {wait_retry, State})
     end.
   
  -wait_response(#state{ ref = Ref, options = Options}=State) ->
  +wait_response(#state{ parent = Parent, ref = Ref, options = Options}=State) ->
     receive
       {hackney_response, Ref, {status, 200, _}} ->
         Conn = State#state.conn,
  
positive.code:   ).
  
  init(Parent, Conn, Options) ->
    proc_lib:init_ack(Parent, {ok, self()}),
    %% initialize the state
    State = #state{ parent = Parent,
  
negative.code:         [?MODULE_STRING, Reason]
         ),
        cleanup(Ref, Reason),
        exit(Reason);
      {'EXIT', Parent, _} ->
        cleanup(State, "parent stopped"),
        exit(normal);
      {system, From, Request} ->
        sys:handle_system_msg(
          Request, From, Parent, ?MODULE, [],
          {wait_response, State})
    after State#state.hackney_timeout ->
      cleanup(State, timeout),
      exit(timeout)
  