anchor.diff:      }.
   
   -type parsing_error() ::
  -    {data_format_invalid, binary()}.
  +      {data_format_invalid, binary()}
  +    | {field_missing      , binary()}
  +    .
   
   -type retrival_error() ::
         {internal, parsing_error()}
  
positive.code:     ;   {ok, Value} ->
              case of_bin(Value)
              of  {error, {data_format_invalid, _}=ParsingError} ->
                      {error, {internal, ParsingError}}
              ;   {ok, #t{expiry=ExpiryOpt}=T} ->
                      ExpiryToOkOrError =
  
negative.code: -spec of_props(t_props()) ->
      hope_result:t(t(credentials_type()), parsing_error()).
  of_props(Props) ->
      % TODO: Check for all missing fields, not just the first.
      MakeFieldGetter =
          fun (Key) ->
              fun (Acc) ->
  