anchor.diff:              {Partial, Iteration, _Updates} = spread_autotree:parse_updates_and_broadcast(
                   <<(State#state.partial)/binary, Data/binary>>,
                   fun(Event) ->
  -                    lager:info("CALLBACK!"),
                       gen_server:cast(Self, {load_binary_event, Event})
                   end),
               %% Loop with partial
  
positive.code: add_stream(Stream, Event, State) ->
      State#state{streams = [#stream{gun_stream = Stream, event = Event} | State#state.streams]}.
  
  add_subs_stream(Stream, State) ->
      State#state{subs_streams = [Stream | State#state.subs_streams]}.
  
  
  remove_stream(StreamRef, State) ->
  
negative.code:     NewStreams = lists:keydelete(StreamRef, 2, Streams),
  
      SubStreams = State#state.subs_streams,
      {OldSubStream, NewSubStreams} = case lists:keytake(StreamRef, 2, SubStreams) of
          {value, Tuple, NewTuples} ->
              {Tuple, NewTuples};
          false ->
              {not_a_sub_stream, SubStreams}
      end,
  
      {OldSubStream, State#state{streams = NewStreams, subs_streams = NewSubStreams}}.
  
  -spec manage_data(binary(), any(), boolean(), state()) -> state().
  manage_data(Data, StreamRef, IsFin, State) ->
  