anchor.diff:          _ ->
               build_string(TArgs, Head, Token, ArgName, ArgValue, Store)
       end.
  +
  +%%--------------------------------------------------------------------
  +%% @private
  +%% @doc
  +%%
  +%%  Write the results to the process calls state ref
  +%% 
  +%% @spec 
  +%% @end
  +%%--------------------------------------------------------------------
  +store_action_results(ActionName, Time, State) ->
  +    case dict:is_key(ActionName, State#state.results) of
  +        true ->
  +            State#state{results=dict:append(ActionName, 
  +                                            Time, 
  +                                            State#state.results)};
  +        _ -> 
  +            State#state{results=dict:store( ActionName, 
  +                                            [Time], 
  +                                            State#state.results)}
  +    end.
  +
  +%%--------------------------------------------------------------------
  +%% @private
  +%% @doc
  +%%
  +%% Builds the form encoded arguments string
  +%%
  +%% @spec 
  +%% @end
  +%%--------------------------------------------------------------------
  +process_keydata(_, _, [], Store) ->
  +    Store;
  +process_keydata(Results, Data, Keys, Store) ->
  +    [Key | OtherKeys] = Keys,
  +    KeyValue = proplists:get_value(Key, Data),
  +    NewKeyName = proplists:get_value(Key, Results),
  +    NewStore = dict:store(NewKeyName, KeyValue, Store),
  +    process_keydata(Results, Data, OtherKeys, NewStore).
  +
  +%%--------------------------------------------------------------------
  +%% @private
  +%% @doc
  +%%
  +%% Process the output from the game server
  +%%
  +%% @spec 
  +%% @end
  +%%--------------------------------------------------------------------
  +proces_action_results(_, undefined, _, State) ->
  +    State;
  +
  +proces_action_results(_, _, undefined, State) ->
  +    State;
  +
  +proces_action_results(Result, json, Results, State) ->
  +    {_, {_,Info, JsonData}} = Result,
  +    httpc:store_cookies(Info, binary_to_list(State#state.url)),
  +
  +    %% TODO  This is still a large point of failure
  +    %% If the server returns invalid json then this whole client
  +    %% is screwed up.  However for this demo pass I am cool
  +    %% with things being a little less robust but I need to fix
  +    %% it before I move into first production phase
  +    {Data} = jiffy:decode(JsonData),
  +    Keys    = proplists:get_keys(Results),
  +    Store   = State#state.keystore,
  +    NKS     = process_keydata(Results, Data, Keys, Store),
  +    State#state{keystore=NKS};
  +
  +proces_action_results(_Result, _Type, _Results, State) ->
  +    State.
   
   %%--------------------------------------------------------------------
   %% @private
  
positive.code:                                         binary_to_list(Body)
                                      }, 
                                      HTTPOps, Ops]),
              {_, {_,Info, JsonData}} = Result,
              io:format("JSonData = ~p~n",[JsonData]),
              {Data} = jiffy:decode(JsonData),
              NewState = process_results( Results, Data, State ),
              httpc:store_cookies(Info, binary_to_list(BaseURL)),
              store_action_results(ActionName, Time, NewState);
  
          post_json ->
  
negative.code:                                     Method, 
                                      {binary_to_list(URL), Header}, 
                                      HTTPOps, Ops]),
              NewState = proces_action_results(Result, ResultsType, Results, State),
              store_action_results(ActionName, Time, NewState);
  
          post ->
  