anchor.diff:      Value = 43, %% note we round here, since we don't have floats :(
       #{
          metric := RMetric,
  -       tags := RTags,
  -       time := RTime,
  -       value := RValue
  +       key    := RKey,
  +       tags   := RTags,
  +       time   := RTime,
  +       value  := RValue
        } = parse(In),
       ?assertEqual(Metric, RMetric),
  +    ?assertEqual(Key, RKey),
       ?assertEqual(Tags, RTags),
       ?assertEqual(Time, RTime),
       ?assertEqual(Value, RValue).
  
positive.code:     parse_value(R, <<Part/binary, C>>, M).
  
  
  parse_tags(<<>>, Tag, M = #{tags := Tags}) ->
      {K, V} = parse_tag(Tag, <<>>),
      M#{tags := lists:sort([{<<"">>, K, V} | Tags])};
  
  parse_tags(<<" ", R/binary>>, Tag, M = #{tags := Tags}) ->
      {K, V} = parse_tag(Tag, <<>>),
  
negative.code: parse_tag(<<C, R/binary>>, K) ->
      parse_tag(R, <<K/binary, C>>).
  
  recombine_tags(Tags) ->
      [<<K/binary, "=", V/binary>> || {_,K,V} <- Tags].
  
  -ifdef(TEST).
  
  