anchor.diff:  
   -spec put(pid(), table_name(), [{binary(), ts_value()}]) ->
                    ok | {error, term()}.
  +%% @doc Make data records from a list (3rd arg) and insert them, one
  +%%      by one, into a TS table (2nd arg), using client Pid (1st
  +%%      arg). Each record is a list of values of appropriate types for
  +%%      the complete set of table columns, in the order in which they
  +%%      appear in table's DDL. Type validation is done on the first
  +%%      record only. If any subsequent record contains fewer or more
  +%%      elements than there are columns, or some element fails to
  +%%      convert to the appropriate type, the rest of the records will
  +%%      not get inserted.
   put(Pid, TableName, Measurements) ->
       put(Pid, TableName, [], Measurements).
   
   -spec put(pid(), table_name(), [binary()], [{binary(), ts_value()}]) ->
                    ok | {error, term()}.
  +%% @doc Make data records from a list (4th arg) and insert them, one
  +%%      by one, into a TS table (2nd arg), using client Pid (1st
  +%%      arg). Each record is a list of values of types appropriate for
  +%%      the fields mentioned in the column list (3rd arg), in that
  +%%      order. Type validation is done on the first record only. If
  +%%      any subsequent record contains fewer or more elements than
  +%%      there are columns, or some element fails to convert to the
  +%%      appropriate type, the rest of the records will not get
  +%%      inserted.
   put(Pid, TableName, Columns, Measurements) ->
       Message = riakc_ts_put_operator:serialize(TableName, Columns, Measurements),
       Response = server_call(Pid, Message),
  
positive.code: 
  -spec get(pid(), table_name(), [ts_value()], proplists:proplist()) ->
                   {[binary()], [[ts_value()]]}.
  get(Pid, TableName, Key, Options) ->
      Message = riak_pb_ts_codec:encode_tsgetreq(TableName, Key, Options),
      case server_call(Pid, Message) of
  
negative.code: 
  -spec query(pid(), string()) ->
                     {[binary()], [tuple()]} | {error, term()}.
  %% @doc Execute a SELECT query given in a string (2nd argument) with
  %%      client Pid (1st arg).  The result returned is a tuple
  %%      containing a list of columns as binaries in the first element,
  %%      and a list of records, each represented as a list of values,
  %%      in the second element.
  query(Pid, QueryText) ->
      query(Pid, QueryText, []).
  
  -spec query(pid(), string(), [{binary(), binary()}]) ->
                     {[binary()], [tuple()]} | {error, term()}.
  %% @doc Execute a SELECT query given in a string (2nd argument) with
  %%      client Pid (1st arg), using interpolations (3rd arg). The
  %%      result returned is a tuple containing a list of columns as
  %%      binaries in the first element, and a list of records, each
  %%      represented as a list of values, in the second element.
  query(Pid, QueryText, Interpolations) ->
      Message = riakc_ts_query_operator:serialize(QueryText, Interpolations),
      Response = server_call(Pid, Message),
  