anchor.diff:          replace_tree('<Param>', Param),
           replace_term('<call-read-field>', mk_fn(d_read_field_def_, MsgName)),
           splice_trees('<OutParams>', OutParams)]),
  -     "\n\n",
  +     "\n",
        format_packed_field_seq_decoder(MsgName, FieldDef, Opts)].
   
   format_packed_field_seq_decoder(MsgName, #field{type=Type}=Field, Opts) ->
  
positive.code:     Value = ?expr(Value),
      Params2 = updated_merged_params(MsgName, FieldDef, AnRes, Value, Params),
      ReadFieldDefFnName = mk_fn(d_read_field_def_, MsgName),
      [gpb_codegen:format_fn(
         mk_fn(d_field_, MsgName, FName),
         fun(<<Value:'<N>'/'<T>', Rest/binary>>, Z1, Z2, '<InParams>') ->
                 '<call-read-field>'(Rest, Z1, Z2, '<OutParams>')
         end,
         [replace_term('<N>', BitLen),
          splice_trees('<T>', [erl_syntax:atom(BT) || BT <- BitTypes]),
          splice_trees('<InParams>', InParams),
          replace_term('<call-read-field>', ReadFieldDefFnName),
          splice_trees('<OutParams>', Params2)]),
       "\n\n"].
  
  new_bindings(Tuples) ->
      lists:foldl(fun add_binding/2, new_bindings(), Tuples).
  
negative.code:          [replace_term('<call-read-field>', ReadFieldFnName),
            replace_term('<NumBits>', NumBits),
            splice_trees('<Params>', Params)]),
         "\n"]
        || NumBits <- [32, 64]]].
  
  format_nif_decoder_error_wrappers(Defs, _AnRes, _Opts) ->
  