runtime/protoiface: move and rename XXX_Methods

This CL moves and renames the protoreflect.ProtoMessage.XXX_Methods
to protoreflect.Message.ProtoMethods.

Since one needs to obtain a protoreflect.Message now to get at
the fast-path methods, we modify the method signatures to take
in a protoreflect.Message instead of protoreflect.ProtoMessage.
Doing so also avoids the wrapper hack that was formerly done on
impl.messageReflectWrapper.

After this change the new protoc-gen-go no longer generates
any XXX fields or methods. All internal fields and methods are truly
hidden from the end-user.

name                                     old time/op    new time/op    delta
Wire/Unmarshal/google_message1_proto2-4    1.50µs ±10%    1.50µs ± 2%    ~     (p=0.483 n=10+9)
Wire/Unmarshal/google_message1_proto3-4    1.06µs ± 6%    1.06µs ± 4%    ~     (p=0.814 n=9+9)
Wire/Unmarshal/google_message2-4            734µs ±22%     689µs ±13%    ~     (p=0.133 n=10+9)
Wire/Marshal/google_message1_proto2-4       790ns ±46%     652ns ± 8%    ~     (p=0.590 n=10+9)
Wire/Marshal/google_message1_proto3-4       872ns ± 4%     857ns ± 3%    ~     (p=0.168 n=9+9)
Wire/Marshal/google_message2-4              232µs ±16%     221µs ± 3%  -4.75%  (p=0.014 n=9+9)
Wire/Size/google_message1_proto2-4          164ns ± 2%     167ns ± 4%  +1.87%  (p=0.046 n=9+10)
Wire/Size/google_message1_proto3-4          240ns ± 9%     229ns ± 1%  -4.81%  (p=0.000 n=9+8)
Wire/Size/google_message2-4                58.9µs ± 9%    59.6µs ± 2%  +1.23%  (p=0.040 n=9+9)

name                                     old alloc/op   new alloc/op   delta
Wire/Unmarshal/google_message1_proto2-4      912B ± 0%      912B ± 0%    ~     (all equal)
Wire/Unmarshal/google_message1_proto3-4      688B ± 0%      688B ± 0%    ~     (all equal)
Wire/Unmarshal/google_message2-4            470kB ± 0%     470kB ± 0%    ~     (p=0.215 n=10+10)
Wire/Marshal/google_message1_proto2-4        240B ± 0%      240B ± 0%    ~     (all equal)
Wire/Marshal/google_message1_proto3-4        224B ± 0%      224B ± 0%    ~     (all equal)
Wire/Marshal/google_message2-4             90.1kB ± 0%    90.1kB ± 0%    ~     (all equal)
Wire/Size/google_message1_proto2-4          0.00B          0.00B         ~     (all equal)
Wire/Size/google_message1_proto3-4          0.00B          0.00B         ~     (all equal)
Wire/Size/google_message2-4                 0.00B          0.00B         ~     (all equal)

name                                     old allocs/op  new allocs/op  delta
Wire/Unmarshal/google_message1_proto2-4      24.0 ± 0%      24.0 ± 0%    ~     (all equal)
Wire/Unmarshal/google_message1_proto3-4      6.00 ± 0%      6.00 ± 0%    ~     (all equal)
Wire/Unmarshal/google_message2-4            8.49k ± 0%     8.49k ± 0%    ~     (all equal)
Wire/Marshal/google_message1_proto2-4        1.00 ± 0%      1.00 ± 0%    ~     (all equal)
Wire/Marshal/google_message1_proto3-4        1.00 ± 0%      1.00 ± 0%    ~     (all equal)
Wire/Marshal/google_message2-4               1.00 ± 0%      1.00 ± 0%    ~     (all equal)
Wire/Size/google_message1_proto2-4           0.00           0.00         ~     (all equal)
Wire/Size/google_message1_proto3-4           0.00           0.00         ~     (all equal)
Wire/Size/google_message2-4                  0.00           0.00         ~     (all equal)

Change-Id: Ibf3263ad0f293326695c22020a92a6b938ef4f65
Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/185697
Reviewed-by: Damien Neil <dneil@google.com>
diff --git a/cmd/protoc-gen-go-grpc/testdata/grpc/grpc.pb.go b/cmd/protoc-gen-go-grpc/testdata/grpc/grpc.pb.go
index 685bafa..9513441 100644
--- a/cmd/protoc-gen-go-grpc/testdata/grpc/grpc.pb.go
+++ b/cmd/protoc-gen-go-grpc/testdata/grpc/grpc.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -45,10 +44,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Request) XXX_Methods() *protoiface.Methods {
-	return file_grpc_grpc_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Request.ProtoReflect.Type instead.
 func (*Request) Descriptor() ([]byte, []int) {
 	return file_grpc_grpc_proto_rawDescGZIP(), []int{0}
@@ -82,10 +77,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Response) XXX_Methods() *protoiface.Methods {
-	return file_grpc_grpc_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Response.ProtoReflect.Type instead.
 func (*Response) Descriptor() ([]byte, []int) {
 	return file_grpc_grpc_proto_rawDescGZIP(), []int{1}
diff --git a/cmd/protoc-gen-go/internal_gengo/reflect.go b/cmd/protoc-gen-go/internal_gengo/reflect.go
index 43099b2..f0ebaff 100644
--- a/cmd/protoc-gen-go/internal_gengo/reflect.go
+++ b/cmd/protoc-gen-go/internal_gengo/reflect.go
@@ -306,12 +306,6 @@
 	g.P("return mi.MessageOf(x)")
 	g.P("}")
 	g.P()
-
-	// XXX_Methods method.
-	g.P("func (x *", message.GoIdent, ") XXX_Methods() *", protoifacePackage.Ident("Methods"), " {")
-	g.P("return ", typesVar, "[", idx, "].Methods()")
-	g.P("}")
-	g.P()
 }
 
 func fileVarName(f *protogen.File, suffix string) string {
diff --git a/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go b/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go
index 895886f..0929000 100644
--- a/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go
+++ b/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -94,10 +93,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *AnnotationsTestMessage) XXX_Methods() *protoiface.Methods {
-	return file_annotations_annotations_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use AnnotationsTestMessage.ProtoReflect.Type instead.
 func (*AnnotationsTestMessage) Descriptor() ([]byte, []int) {
 	return file_annotations_annotations_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go.meta b/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go.meta
index 4debc0d..ee6a342 100644
--- a/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go.meta
+++ b/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go.meta
@@ -1 +1 @@
-annotation:{path:5 path:0 source_file:"annotations/annotations.proto" begin:631 end:650} annotation:{path:5 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:667 end:714} annotation:{path:4 path:0 source_file:"annotations/annotations.proto" begin:1821 end:1843} annotation:{path:4 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:1899 end:1919} annotation:{path:4 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:3032 end:3055}
\ No newline at end of file
+annotation:{path:5 path:0 source_file:"annotations/annotations.proto" begin:571 end:590} annotation:{path:5 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:607 end:654} annotation:{path:4 path:0 source_file:"annotations/annotations.proto" begin:1761 end:1783} annotation:{path:4 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:1839 end:1859} annotation:{path:4 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:2835 end:2858}
\ No newline at end of file
diff --git a/cmd/protoc-gen-go/testdata/comments/comments.pb.go b/cmd/protoc-gen-go/testdata/comments/comments.pb.go
index b01afe9..1cf3f56 100644
--- a/cmd/protoc-gen-go/testdata/comments/comments.pb.go
+++ b/cmd/protoc-gen-go/testdata/comments/comments.pb.go
@@ -7,7 +7,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -56,10 +55,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message1) XXX_Methods() *protoiface.Methods {
-	return file_comments_comments_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message1.ProtoReflect.Type instead.
 func (*Message1) Descriptor() ([]byte, []int) {
 	return file_comments_comments_proto_rawDescGZIP(), []int{0}
@@ -125,10 +120,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2) XXX_Methods() *protoiface.Methods {
-	return file_comments_comments_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message2.ProtoReflect.Type instead.
 func (*Message2) Descriptor() ([]byte, []int) {
 	return file_comments_comments_proto_rawDescGZIP(), []int{1}
@@ -163,10 +154,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message1_Message1A) XXX_Methods() *protoiface.Methods {
-	return file_comments_comments_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message1_Message1A.ProtoReflect.Type instead.
 func (*Message1_Message1A) Descriptor() ([]byte, []int) {
 	return file_comments_comments_proto_rawDescGZIP(), []int{0, 0}
@@ -201,10 +188,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message1_Message1B) XXX_Methods() *protoiface.Methods {
-	return file_comments_comments_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message1_Message1B.ProtoReflect.Type instead.
 func (*Message1_Message1B) Descriptor() ([]byte, []int) {
 	return file_comments_comments_proto_rawDescGZIP(), []int{0, 1}
@@ -239,10 +222,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2_Message2A) XXX_Methods() *protoiface.Methods {
-	return file_comments_comments_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message2_Message2A.ProtoReflect.Type instead.
 func (*Message2_Message2A) Descriptor() ([]byte, []int) {
 	return file_comments_comments_proto_rawDescGZIP(), []int{1, 0}
@@ -277,10 +256,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2_Message2B) XXX_Methods() *protoiface.Methods {
-	return file_comments_comments_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message2_Message2B.ProtoReflect.Type instead.
 func (*Message2_Message2B) Descriptor() ([]byte, []int) {
 	return file_comments_comments_proto_rawDescGZIP(), []int{1, 1}
diff --git a/cmd/protoc-gen-go/testdata/comments/deprecated.pb.go b/cmd/protoc-gen-go/testdata/comments/deprecated.pb.go
index 0cb5754..d3aa272 100644
--- a/cmd/protoc-gen-go/testdata/comments/deprecated.pb.go
+++ b/cmd/protoc-gen-go/testdata/comments/deprecated.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -84,10 +83,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *DeprecatedMessage) XXX_Methods() *protoiface.Methods {
-	return file_comments_deprecated_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use DeprecatedMessage.ProtoReflect.Type instead.
 func (*DeprecatedMessage) Descriptor() ([]byte, []int) {
 	return file_comments_deprecated_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/extensions/base/base.pb.go b/cmd/protoc-gen-go/testdata/extensions/base/base.pb.go
index dc14c4c..7a09744 100644
--- a/cmd/protoc-gen-go/testdata/extensions/base/base.pb.go
+++ b/cmd/protoc-gen-go/testdata/extensions/base/base.pb.go
@@ -47,10 +47,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *BaseMessage) XXX_Methods() *protoiface.Methods {
-	return file_extensions_base_base_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use BaseMessage.ProtoReflect.Type instead.
 func (*BaseMessage) Descriptor() ([]byte, []int) {
 	return file_extensions_base_base_proto_rawDescGZIP(), []int{0}
@@ -102,10 +98,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *MessageSetWireFormatMessage) XXX_Methods() *protoiface.Methods {
-	return file_extensions_base_base_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use MessageSetWireFormatMessage.ProtoReflect.Type instead.
 func (*MessageSetWireFormatMessage) Descriptor() ([]byte, []int) {
 	return file_extensions_base_base_proto_rawDescGZIP(), []int{1}
diff --git a/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go b/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go
index 9a6167d..4a34578 100644
--- a/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go
+++ b/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go
@@ -96,10 +96,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message) XXX_Methods() *protoiface.Methods {
-	return file_extensions_ext_ext_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message.ProtoReflect.Type instead.
 func (*Message) Descriptor() ([]byte, []int) {
 	return file_extensions_ext_ext_proto_rawDescGZIP(), []int{0}
@@ -141,10 +137,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ExtensionGroup) XXX_Methods() *protoiface.Methods {
-	return file_extensions_ext_ext_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use ExtensionGroup.ProtoReflect.Type instead.
 func (*ExtensionGroup) Descriptor() ([]byte, []int) {
 	return file_extensions_ext_ext_proto_rawDescGZIP(), []int{1}
@@ -186,10 +178,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ExtendingMessage) XXX_Methods() *protoiface.Methods {
-	return file_extensions_ext_ext_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use ExtendingMessage.ProtoReflect.Type instead.
 func (*ExtendingMessage) Descriptor() ([]byte, []int) {
 	return file_extensions_ext_ext_proto_rawDescGZIP(), []int{2}
@@ -224,10 +212,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *RepeatedGroup) XXX_Methods() *protoiface.Methods {
-	return file_extensions_ext_ext_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use RepeatedGroup.ProtoReflect.Type instead.
 func (*RepeatedGroup) Descriptor() ([]byte, []int) {
 	return file_extensions_ext_ext_proto_rawDescGZIP(), []int{3}
@@ -270,10 +254,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Extendable) XXX_Methods() *protoiface.Methods {
-	return file_extensions_ext_ext_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Extendable.ProtoReflect.Type instead.
 func (*Extendable) Descriptor() ([]byte, []int) {
 	return file_extensions_ext_ext_proto_rawDescGZIP(), []int{4}
@@ -317,10 +297,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *MessageSetWireFormatExtension) XXX_Methods() *protoiface.Methods {
-	return file_extensions_ext_ext_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use MessageSetWireFormatExtension.ProtoReflect.Type instead.
 func (*MessageSetWireFormatExtension) Descriptor() ([]byte, []int) {
 	return file_extensions_ext_ext_proto_rawDescGZIP(), []int{5}
@@ -354,10 +330,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message_M) XXX_Methods() *protoiface.Methods {
-	return file_extensions_ext_ext_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message_M.ProtoReflect.Type instead.
 func (*Message_M) Descriptor() ([]byte, []int) {
 	return file_extensions_ext_ext_proto_rawDescGZIP(), []int{0, 0}
@@ -391,10 +363,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ExtendingMessage_ExtendingMessageSubmessage) XXX_Methods() *protoiface.Methods {
-	return file_extensions_ext_ext_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use ExtendingMessage_ExtendingMessageSubmessage.ProtoReflect.Type instead.
 func (*ExtendingMessage_ExtendingMessageSubmessage) Descriptor() ([]byte, []int) {
 	return file_extensions_ext_ext_proto_rawDescGZIP(), []int{2, 0}
diff --git a/cmd/protoc-gen-go/testdata/extensions/extra/extra.pb.go b/cmd/protoc-gen-go/testdata/extensions/extra/extra.pb.go
index 04468fb..dda95ce 100644
--- a/cmd/protoc-gen-go/testdata/extensions/extra/extra.pb.go
+++ b/cmd/protoc-gen-go/testdata/extensions/extra/extra.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -46,10 +45,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ExtraMessage) XXX_Methods() *protoiface.Methods {
-	return file_extensions_extra_extra_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use ExtraMessage.ProtoReflect.Type instead.
 func (*ExtraMessage) Descriptor() ([]byte, []int) {
 	return file_extensions_extra_extra_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.pb.go b/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.pb.go
index df5e65b..ed4bbd9 100644
--- a/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.pb.go
+++ b/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.pb.go
@@ -84,10 +84,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message) XXX_Methods() *protoiface.Methods {
-	return file_extensions_proto3_ext3_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message.ProtoReflect.Type instead.
 func (*Message) Descriptor() ([]byte, []int) {
 	return file_extensions_proto3_ext3_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.pb.go b/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.pb.go
index 52fc8f5..59ca34d 100644
--- a/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.pb.go
+++ b/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -84,10 +83,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message) XXX_Methods() *protoiface.Methods {
-	return file_fieldnames_fieldnames_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message.ProtoReflect.Type instead.
 func (*Message) Descriptor() ([]byte, []int) {
 	return file_fieldnames_fieldnames_proto_rawDescGZIP(), []int{0}
@@ -304,10 +299,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message_OneofMessageConflict) XXX_Methods() *protoiface.Methods {
-	return file_fieldnames_fieldnames_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message_OneofMessageConflict.ProtoReflect.Type instead.
 func (*Message_OneofMessageConflict) Descriptor() ([]byte, []int) {
 	return file_fieldnames_fieldnames_proto_rawDescGZIP(), []int{0, 0}
diff --git a/cmd/protoc-gen-go/testdata/import_public/a.pb.go b/cmd/protoc-gen-go/testdata/import_public/a.pb.go
index 28f50ba..5b2e6ec 100644
--- a/cmd/protoc-gen-go/testdata/import_public/a.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/a.pb.go
@@ -6,7 +6,6 @@
 import (
 	sub "google.golang.org/protobuf/cmd/protoc-gen-go/testdata/import_public/sub"
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -87,10 +86,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Public) XXX_Methods() *protoiface.Methods {
-	return file_import_public_a_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Public.ProtoReflect.Type instead.
 func (*Public) Descriptor() ([]byte, []int) {
 	return file_import_public_a_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/import_public/b.pb.go b/cmd/protoc-gen-go/testdata/import_public/b.pb.go
index 2b26113..ed3e836 100644
--- a/cmd/protoc-gen-go/testdata/import_public/b.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/b.pb.go
@@ -6,7 +6,6 @@
 import (
 	sub "google.golang.org/protobuf/cmd/protoc-gen-go/testdata/import_public/sub"
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -48,10 +47,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Local) XXX_Methods() *protoiface.Methods {
-	return file_import_public_b_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Local.ProtoReflect.Type instead.
 func (*Local) Descriptor() ([]byte, []int) {
 	return file_import_public_b_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/import_public/c.pb.go b/cmd/protoc-gen-go/testdata/import_public/c.pb.go
index 5c2b346..5fa0e7d 100644
--- a/cmd/protoc-gen-go/testdata/import_public/c.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/c.pb.go
@@ -6,7 +6,6 @@
 import (
 	sub2 "google.golang.org/protobuf/cmd/protoc-gen-go/testdata/import_public/sub2"
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -51,10 +50,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *UsingPublicImport) XXX_Methods() *protoiface.Methods {
-	return file_import_public_c_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use UsingPublicImport.ProtoReflect.Type instead.
 func (*UsingPublicImport) Descriptor() ([]byte, []int) {
 	return file_import_public_c_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/import_public/sub/a.pb.go b/cmd/protoc-gen-go/testdata/import_public/sub/a.pb.go
index 49bc41e..2463089 100644
--- a/cmd/protoc-gen-go/testdata/import_public/sub/a.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/sub/a.pb.go
@@ -203,10 +203,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *M) XXX_Methods() *protoiface.Methods {
-	return file_import_public_sub_a_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use M.ProtoReflect.Type instead.
 func (*M) Descriptor() ([]byte, []int) {
 	return file_import_public_sub_a_proto_rawDescGZIP(), []int{0}
@@ -323,10 +319,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *M_Submessage) XXX_Methods() *protoiface.Methods {
-	return file_import_public_sub_a_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use M_Submessage.ProtoReflect.Type instead.
 func (*M_Submessage) Descriptor() ([]byte, []int) {
 	return file_import_public_sub_a_proto_rawDescGZIP(), []int{0, 0}
diff --git a/cmd/protoc-gen-go/testdata/import_public/sub/b.pb.go b/cmd/protoc-gen-go/testdata/import_public/sub/b.pb.go
index 32d6473..a461703 100644
--- a/cmd/protoc-gen-go/testdata/import_public/sub/b.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/sub/b.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -45,10 +44,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *M2) XXX_Methods() *protoiface.Methods {
-	return file_import_public_sub_b_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use M2.ProtoReflect.Type instead.
 func (*M2) Descriptor() ([]byte, []int) {
 	return file_import_public_sub_b_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/import_public/sub2/a.pb.go b/cmd/protoc-gen-go/testdata/import_public/sub2/a.pb.go
index ef605ea..f555273 100644
--- a/cmd/protoc-gen-go/testdata/import_public/sub2/a.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/sub2/a.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -45,10 +44,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Sub2Message) XXX_Methods() *protoiface.Methods {
-	return file_import_public_sub2_a_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Sub2Message.ProtoReflect.Type instead.
 func (*Sub2Message) Descriptor() ([]byte, []int) {
 	return file_import_public_sub2_a_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/imports/fmt/m.pb.go b/cmd/protoc-gen-go/testdata/imports/fmt/m.pb.go
index dc7568b..ddc787e 100644
--- a/cmd/protoc-gen-go/testdata/imports/fmt/m.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/fmt/m.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -45,10 +44,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *M) XXX_Methods() *protoiface.Methods {
-	return file_imports_fmt_m_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use M.ProtoReflect.Type instead.
 func (*M) Descriptor() ([]byte, []int) {
 	return file_imports_fmt_m_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/imports/test_a_1/m1.pb.go b/cmd/protoc-gen-go/testdata/imports/test_a_1/m1.pb.go
index 52d5391..74d9a94 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_a_1/m1.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_a_1/m1.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -83,10 +82,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *M1) XXX_Methods() *protoiface.Methods {
-	return file_imports_test_a_1_m1_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use M1.ProtoReflect.Type instead.
 func (*M1) Descriptor() ([]byte, []int) {
 	return file_imports_test_a_1_m1_proto_rawDescGZIP(), []int{0}
@@ -121,10 +116,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *M1_1) XXX_Methods() *protoiface.Methods {
-	return file_imports_test_a_1_m1_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use M1_1.ProtoReflect.Type instead.
 func (*M1_1) Descriptor() ([]byte, []int) {
 	return file_imports_test_a_1_m1_proto_rawDescGZIP(), []int{1}
diff --git a/cmd/protoc-gen-go/testdata/imports/test_a_1/m2.pb.go b/cmd/protoc-gen-go/testdata/imports/test_a_1/m2.pb.go
index 0433505..0e46332 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_a_1/m2.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_a_1/m2.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -45,10 +44,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *M2) XXX_Methods() *protoiface.Methods {
-	return file_imports_test_a_1_m2_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use M2.ProtoReflect.Type instead.
 func (*M2) Descriptor() ([]byte, []int) {
 	return file_imports_test_a_1_m2_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/imports/test_a_2/m3.pb.go b/cmd/protoc-gen-go/testdata/imports/test_a_2/m3.pb.go
index 6121ed4..fbd3ae6 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_a_2/m3.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_a_2/m3.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -45,10 +44,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *M3) XXX_Methods() *protoiface.Methods {
-	return file_imports_test_a_2_m3_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use M3.ProtoReflect.Type instead.
 func (*M3) Descriptor() ([]byte, []int) {
 	return file_imports_test_a_2_m3_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/imports/test_a_2/m4.pb.go b/cmd/protoc-gen-go/testdata/imports/test_a_2/m4.pb.go
index eda832a..16919af 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_a_2/m4.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_a_2/m4.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -45,10 +44,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *M4) XXX_Methods() *protoiface.Methods {
-	return file_imports_test_a_2_m4_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use M4.ProtoReflect.Type instead.
 func (*M4) Descriptor() ([]byte, []int) {
 	return file_imports_test_a_2_m4_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/imports/test_b_1/m1.pb.go b/cmd/protoc-gen-go/testdata/imports/test_b_1/m1.pb.go
index 3a4677e..8f49585 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_b_1/m1.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_b_1/m1.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -45,10 +44,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *M1) XXX_Methods() *protoiface.Methods {
-	return file_imports_test_b_1_m1_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use M1.ProtoReflect.Type instead.
 func (*M1) Descriptor() ([]byte, []int) {
 	return file_imports_test_b_1_m1_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/imports/test_b_1/m2.pb.go b/cmd/protoc-gen-go/testdata/imports/test_b_1/m2.pb.go
index c2558c9..d859647 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_b_1/m2.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_b_1/m2.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -45,10 +44,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *M2) XXX_Methods() *protoiface.Methods {
-	return file_imports_test_b_1_m2_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use M2.ProtoReflect.Type instead.
 func (*M2) Descriptor() ([]byte, []int) {
 	return file_imports_test_b_1_m2_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/imports/test_import_a1m1.pb.go b/cmd/protoc-gen-go/testdata/imports/test_import_a1m1.pb.go
index c310d52..15536ca 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_import_a1m1.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_import_a1m1.pb.go
@@ -6,7 +6,6 @@
 import (
 	test_a_1 "google.golang.org/protobuf/cmd/protoc-gen-go/testdata/imports/test_a_1"
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -47,10 +46,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *A1M1) XXX_Methods() *protoiface.Methods {
-	return file_imports_test_import_a1m1_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use A1M1.ProtoReflect.Type instead.
 func (*A1M1) Descriptor() ([]byte, []int) {
 	return file_imports_test_import_a1m1_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/imports/test_import_a1m2.pb.go b/cmd/protoc-gen-go/testdata/imports/test_import_a1m2.pb.go
index c07111b..c7c9563 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_import_a1m2.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_import_a1m2.pb.go
@@ -6,7 +6,6 @@
 import (
 	test_a_1 "google.golang.org/protobuf/cmd/protoc-gen-go/testdata/imports/test_a_1"
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -47,10 +46,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *A1M2) XXX_Methods() *protoiface.Methods {
-	return file_imports_test_import_a1m2_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use A1M2.ProtoReflect.Type instead.
 func (*A1M2) Descriptor() ([]byte, []int) {
 	return file_imports_test_import_a1m2_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/imports/test_import_all.pb.go b/cmd/protoc-gen-go/testdata/imports/test_import_all.pb.go
index a872359..abf9739 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_import_all.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_import_all.pb.go
@@ -9,7 +9,6 @@
 	_ "google.golang.org/protobuf/cmd/protoc-gen-go/testdata/imports/test_a_2"
 	test_b_1 "google.golang.org/protobuf/cmd/protoc-gen-go/testdata/imports/test_b_1"
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -54,10 +53,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *All) XXX_Methods() *protoiface.Methods {
-	return file_imports_test_import_all_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use All.ProtoReflect.Type instead.
 func (*All) Descriptor() ([]byte, []int) {
 	return file_imports_test_import_all_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/issue780_oneof_conflict/test.pb.go b/cmd/protoc-gen-go/testdata/issue780_oneof_conflict/test.pb.go
index 47a2f03..91b0c27 100644
--- a/cmd/protoc-gen-go/testdata/issue780_oneof_conflict/test.pb.go
+++ b/cmd/protoc-gen-go/testdata/issue780_oneof_conflict/test.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -48,10 +47,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Foo) XXX_Methods() *protoiface.Methods {
-	return file_issue780_oneof_conflict_test_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Foo.ProtoReflect.Type instead.
 func (*Foo) Descriptor() ([]byte, []int) {
 	return file_issue780_oneof_conflict_test_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/nopackage/nopackage.pb.go b/cmd/protoc-gen-go/testdata/nopackage/nopackage.pb.go
index c1fb2a0..a416a81 100644
--- a/cmd/protoc-gen-go/testdata/nopackage/nopackage.pb.go
+++ b/cmd/protoc-gen-go/testdata/nopackage/nopackage.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -95,10 +94,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message) XXX_Methods() *protoiface.Methods {
-	return file_nopackage_nopackage_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message.ProtoReflect.Type instead.
 func (*Message) Descriptor() ([]byte, []int) {
 	return file_nopackage_nopackage_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/proto2/enum.pb.go b/cmd/protoc-gen-go/testdata/proto2/enum.pb.go
index 8df45bc..ed0a8c5 100644
--- a/cmd/protoc-gen-go/testdata/proto2/enum.pb.go
+++ b/cmd/protoc-gen-go/testdata/proto2/enum.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -343,10 +342,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *EnumContainerMessage1) XXX_Methods() *protoiface.Methods {
-	return file_proto2_enum_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use EnumContainerMessage1.ProtoReflect.Type instead.
 func (*EnumContainerMessage1) Descriptor() ([]byte, []int) {
 	return file_proto2_enum_proto_rawDescGZIP(), []int{0}
@@ -397,10 +392,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *EnumContainerMessage1_EnumContainerMessage2) XXX_Methods() *protoiface.Methods {
-	return file_proto2_enum_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use EnumContainerMessage1_EnumContainerMessage2.ProtoReflect.Type instead.
 func (*EnumContainerMessage1_EnumContainerMessage2) Descriptor() ([]byte, []int) {
 	return file_proto2_enum_proto_rawDescGZIP(), []int{0, 0}
diff --git a/cmd/protoc-gen-go/testdata/proto2/fields.pb.go b/cmd/protoc-gen-go/testdata/proto2/fields.pb.go
index 794e33e..b2a9c6c 100644
--- a/cmd/protoc-gen-go/testdata/proto2/fields.pb.go
+++ b/cmd/protoc-gen-go/testdata/proto2/fields.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	math "math"
 	sync "sync"
@@ -203,10 +202,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FieldTestMessage) XXX_Methods() *protoiface.Methods {
-	return file_proto2_fields_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use FieldTestMessage.ProtoReflect.Type instead.
 func (*FieldTestMessage) Descriptor() ([]byte, []int) {
 	return file_proto2_fields_proto_rawDescGZIP(), []int{0}
@@ -1131,10 +1126,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FieldTestMessage_OptionalGroup) XXX_Methods() *protoiface.Methods {
-	return file_proto2_fields_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use FieldTestMessage_OptionalGroup.ProtoReflect.Type instead.
 func (*FieldTestMessage_OptionalGroup) Descriptor() ([]byte, []int) {
 	return file_proto2_fields_proto_rawDescGZIP(), []int{0, 0}
@@ -1176,10 +1167,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FieldTestMessage_RequiredGroup) XXX_Methods() *protoiface.Methods {
-	return file_proto2_fields_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use FieldTestMessage_RequiredGroup.ProtoReflect.Type instead.
 func (*FieldTestMessage_RequiredGroup) Descriptor() ([]byte, []int) {
 	return file_proto2_fields_proto_rawDescGZIP(), []int{0, 1}
@@ -1221,10 +1208,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FieldTestMessage_RepeatedGroup) XXX_Methods() *protoiface.Methods {
-	return file_proto2_fields_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use FieldTestMessage_RepeatedGroup.ProtoReflect.Type instead.
 func (*FieldTestMessage_RepeatedGroup) Descriptor() ([]byte, []int) {
 	return file_proto2_fields_proto_rawDescGZIP(), []int{0, 2}
@@ -1266,10 +1249,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FieldTestMessage_OneofGroup) XXX_Methods() *protoiface.Methods {
-	return file_proto2_fields_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use FieldTestMessage_OneofGroup.ProtoReflect.Type instead.
 func (*FieldTestMessage_OneofGroup) Descriptor() ([]byte, []int) {
 	return file_proto2_fields_proto_rawDescGZIP(), []int{0, 6}
@@ -1310,10 +1289,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FieldTestMessage_Message) XXX_Methods() *protoiface.Methods {
-	return file_proto2_fields_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use FieldTestMessage_Message.ProtoReflect.Type instead.
 func (*FieldTestMessage_Message) Descriptor() ([]byte, []int) {
 	return file_proto2_fields_proto_rawDescGZIP(), []int{0, 7}
diff --git a/cmd/protoc-gen-go/testdata/proto2/nested_messages.pb.go b/cmd/protoc-gen-go/testdata/proto2/nested_messages.pb.go
index fe60801..c217a2a 100644
--- a/cmd/protoc-gen-go/testdata/proto2/nested_messages.pb.go
+++ b/cmd/protoc-gen-go/testdata/proto2/nested_messages.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -47,10 +46,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Layer1) XXX_Methods() *protoiface.Methods {
-	return file_proto2_nested_messages_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Layer1.ProtoReflect.Type instead.
 func (*Layer1) Descriptor() ([]byte, []int) {
 	return file_proto2_nested_messages_proto_rawDescGZIP(), []int{0}
@@ -99,10 +94,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Layer1_Layer2) XXX_Methods() *protoiface.Methods {
-	return file_proto2_nested_messages_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Layer1_Layer2.ProtoReflect.Type instead.
 func (*Layer1_Layer2) Descriptor() ([]byte, []int) {
 	return file_proto2_nested_messages_proto_rawDescGZIP(), []int{0, 0}
@@ -143,10 +134,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Layer1_Layer2_Layer3) XXX_Methods() *protoiface.Methods {
-	return file_proto2_nested_messages_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Layer1_Layer2_Layer3.ProtoReflect.Type instead.
 func (*Layer1_Layer2_Layer3) Descriptor() ([]byte, []int) {
 	return file_proto2_nested_messages_proto_rawDescGZIP(), []int{0, 0, 0}
diff --git a/cmd/protoc-gen-go/testdata/proto2/proto2.pb.go b/cmd/protoc-gen-go/testdata/proto2/proto2.pb.go
index 57ac220..8d20d06 100644
--- a/cmd/protoc-gen-go/testdata/proto2/proto2.pb.go
+++ b/cmd/protoc-gen-go/testdata/proto2/proto2.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -47,10 +46,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message) XXX_Methods() *protoiface.Methods {
-	return file_proto2_proto2_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message.ProtoReflect.Type instead.
 func (*Message) Descriptor() ([]byte, []int) {
 	return file_proto2_proto2_proto_rawDescGZIP(), []int{0}
diff --git a/cmd/protoc-gen-go/testdata/proto3/fields.pb.go b/cmd/protoc-gen-go/testdata/proto3/fields.pb.go
index 7646822..3586968 100644
--- a/cmd/protoc-gen-go/testdata/proto3/fields.pb.go
+++ b/cmd/protoc-gen-go/testdata/proto3/fields.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -120,10 +119,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FieldTestMessage) XXX_Methods() *protoiface.Methods {
-	return file_proto3_fields_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use FieldTestMessage.ProtoReflect.Type instead.
 func (*FieldTestMessage) Descriptor() ([]byte, []int) {
 	return file_proto3_fields_proto_rawDescGZIP(), []int{0}
@@ -416,10 +411,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FieldTestMessage_Message) XXX_Methods() *protoiface.Methods {
-	return file_proto3_fields_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use FieldTestMessage_Message.ProtoReflect.Type instead.
 func (*FieldTestMessage_Message) Descriptor() ([]byte, []int) {
 	return file_proto3_fields_proto_rawDescGZIP(), []int{0, 3}
diff --git a/encoding/testprotos/pb2/test.pb.go b/encoding/testprotos/pb2/test.pb.go
index 1cadf09..a9c102a 100644
--- a/encoding/testprotos/pb2/test.pb.go
+++ b/encoding/testprotos/pb2/test.pb.go
@@ -175,10 +175,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Scalars) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Scalars.ProtoReflect.Type instead.
 func (*Scalars) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{0}
@@ -322,10 +318,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Enums) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Enums.ProtoReflect.Type instead.
 func (*Enums) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{1}
@@ -397,10 +389,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Repeats) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Repeats.ProtoReflect.Type instead.
 func (*Repeats) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{2}
@@ -500,10 +488,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Nested) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Nested.ProtoReflect.Type instead.
 func (*Nested) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{3}
@@ -556,10 +540,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Nests) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Nests.ProtoReflect.Type instead.
 func (*Nests) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{4}
@@ -628,10 +608,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Requireds) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Requireds.ProtoReflect.Type instead.
 func (*Requireds) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{5}
@@ -710,10 +686,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *PartialRequired) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use PartialRequired.ProtoReflect.Type instead.
 func (*PartialRequired) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{6}
@@ -762,10 +734,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *NestedWithRequired) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use NestedWithRequired.ProtoReflect.Type instead.
 func (*NestedWithRequired) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{7}
@@ -812,10 +780,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *IndirectRequired) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use IndirectRequired.ProtoReflect.Type instead.
 func (*IndirectRequired) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{8}
@@ -898,10 +862,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Extensions) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Extensions.ProtoReflect.Type instead.
 func (*Extensions) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{9}
@@ -965,10 +925,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ExtensionsContainer) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use ExtensionsContainer.ProtoReflect.Type instead.
 func (*ExtensionsContainer) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{10}
@@ -1003,10 +959,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *MessageSet) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use MessageSet.ProtoReflect.Type instead.
 func (*MessageSet) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{11}
@@ -1050,10 +1002,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *MessageSetExtension) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use MessageSetExtension.ProtoReflect.Type instead.
 func (*MessageSetExtension) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{12}
@@ -1095,10 +1043,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FakeMessageSet) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use FakeMessageSet.ProtoReflect.Type instead.
 func (*FakeMessageSet) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{13}
@@ -1142,10 +1086,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FakeMessageSetExtension) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use FakeMessageSetExtension.ProtoReflect.Type instead.
 func (*FakeMessageSetExtension) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{14}
@@ -1205,10 +1145,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *KnownTypes) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use KnownTypes.ProtoReflect.Type instead.
 func (*KnownTypes) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{15}
@@ -1371,10 +1307,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Nests_OptGroup) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use Nests_OptGroup.ProtoReflect.Type instead.
 func (*Nests_OptGroup) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{4, 0}
@@ -1430,10 +1362,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Nests_RptGroup) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use Nests_RptGroup.ProtoReflect.Type instead.
 func (*Nests_RptGroup) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{4, 1}
@@ -1475,10 +1403,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Nests_OptGroup_OptNestedGroup) XXX_Methods() *protoiface.Methods {
-	return file_pb2_test_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use Nests_OptGroup_OptNestedGroup.ProtoReflect.Type instead.
 func (*Nests_OptGroup_OptNestedGroup) Descriptor() ([]byte, []int) {
 	return file_pb2_test_proto_rawDescGZIP(), []int{4, 0, 0}
diff --git a/encoding/testprotos/pb3/test.pb.go b/encoding/testprotos/pb3/test.pb.go
index 411965e..aaa20e0 100644
--- a/encoding/testprotos/pb3/test.pb.go
+++ b/encoding/testprotos/pb3/test.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -154,10 +153,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Scalars) XXX_Methods() *protoiface.Methods {
-	return file_pb3_test_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Scalars.ProtoReflect.Type instead.
 func (*Scalars) Descriptor() ([]byte, []int) {
 	return file_pb3_test_proto_rawDescGZIP(), []int{0}
@@ -299,10 +294,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Enums) XXX_Methods() *protoiface.Methods {
-	return file_pb3_test_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Enums.ProtoReflect.Type instead.
 func (*Enums) Descriptor() ([]byte, []int) {
 	return file_pb3_test_proto_rawDescGZIP(), []int{1}
@@ -352,10 +343,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Nests) XXX_Methods() *protoiface.Methods {
-	return file_pb3_test_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Nests.ProtoReflect.Type instead.
 func (*Nests) Descriptor() ([]byte, []int) {
 	return file_pb3_test_proto_rawDescGZIP(), []int{2}
@@ -399,10 +386,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Nested) XXX_Methods() *protoiface.Methods {
-	return file_pb3_test_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Nested.ProtoReflect.Type instead.
 func (*Nested) Descriptor() ([]byte, []int) {
 	return file_pb3_test_proto_rawDescGZIP(), []int{3}
@@ -456,10 +439,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Oneofs) XXX_Methods() *protoiface.Methods {
-	return file_pb3_test_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Oneofs.ProtoReflect.Type instead.
 func (*Oneofs) Descriptor() ([]byte, []int) {
 	return file_pb3_test_proto_rawDescGZIP(), []int{4}
@@ -549,10 +528,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Maps) XXX_Methods() *protoiface.Methods {
-	return file_pb3_test_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Maps.ProtoReflect.Type instead.
 func (*Maps) Descriptor() ([]byte, []int) {
 	return file_pb3_test_proto_rawDescGZIP(), []int{5}
@@ -623,10 +598,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *JSONNames) XXX_Methods() *protoiface.Methods {
-	return file_pb3_test_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use JSONNames.ProtoReflect.Type instead.
 func (*JSONNames) Descriptor() ([]byte, []int) {
 	return file_pb3_test_proto_rawDescGZIP(), []int{6}
diff --git a/internal/cmd/generate-types/impl.go b/internal/cmd/generate-types/impl.go
index bb5e006..938b7f8 100644
--- a/internal/cmd/generate-types/impl.go
+++ b/internal/cmd/generate-types/impl.go
@@ -453,6 +453,10 @@
 func (m *{{.}}) ProtoUnwrap() interface{} {
 	return m.pointer().AsIfaceOf(m.mi.GoType.Elem())
 }
+func (m *{{.}}) ProtoMethods() *protoiface.Methods {
+	m.mi.init()
+	return &m.mi.methods
+}
 
 func (m *{{.}}) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
 	m.mi.init()
diff --git a/internal/impl/decode.go b/internal/impl/decode.go
index 5fdffe3..4e4c7f3 100644
--- a/internal/impl/decode.go
+++ b/internal/impl/decode.go
@@ -50,8 +50,14 @@
 func (o unmarshalOptions) Resolver() preg.ExtensionTypeResolver { return o.resolver }
 
 // unmarshal is protoreflect.Methods.Unmarshal.
-func (mi *MessageInfo) unmarshal(b []byte, m pref.ProtoMessage, opts piface.UnmarshalOptions) error {
-	_, err := mi.unmarshalPointer(b, pointerOfIface(m), 0, newUnmarshalOptions(opts))
+func (mi *MessageInfo) unmarshal(b []byte, m pref.Message, opts piface.UnmarshalOptions) error {
+	var p pointer
+	if ms, ok := m.(*messageState); ok {
+		p = ms.pointer()
+	} else {
+		p = m.(*messageReflectWrapper).pointer()
+	}
+	_, err := mi.unmarshalPointer(b, p, 0, newUnmarshalOptions(opts))
 	return err
 }
 
diff --git a/internal/impl/encode.go b/internal/impl/encode.go
index bf7308a..010d412 100644
--- a/internal/impl/encode.go
+++ b/internal/impl/encode.go
@@ -47,8 +47,14 @@
 func (o marshalOptions) UseCachedSize() bool { return o&marshalUseCachedSize != 0 }
 
 // size is protoreflect.Methods.Size.
-func (mi *MessageInfo) size(msg pref.ProtoMessage) (size int) {
-	return mi.sizePointer(pointerOfIface(msg), 0)
+func (mi *MessageInfo) size(m pref.Message) (size int) {
+	var p pointer
+	if ms, ok := m.(*messageState); ok {
+		p = ms.pointer()
+	} else {
+		p = m.(*messageReflectWrapper).pointer()
+	}
+	return mi.sizePointer(p, 0)
 }
 
 func (mi *MessageInfo) sizePointer(p pointer, opts marshalOptions) (size int) {
@@ -88,8 +94,14 @@
 }
 
 // marshalAppend is protoreflect.Methods.MarshalAppend.
-func (mi *MessageInfo) marshalAppend(b []byte, msg pref.ProtoMessage, opts piface.MarshalOptions) ([]byte, error) {
-	return mi.marshalAppendPointer(b, pointerOfIface(msg), newMarshalOptions(opts))
+func (mi *MessageInfo) marshalAppend(b []byte, m pref.Message, opts piface.MarshalOptions) ([]byte, error) {
+	var p pointer
+	if ms, ok := m.(*messageState); ok {
+		p = ms.pointer()
+	} else {
+		p = m.(*messageReflectWrapper).pointer()
+	}
+	return mi.marshalAppendPointer(b, p, newMarshalOptions(opts))
 }
 
 func (mi *MessageInfo) marshalAppendPointer(b []byte, p pointer, opts marshalOptions) ([]byte, error) {
diff --git a/internal/impl/isinit.go b/internal/impl/isinit.go
index a533cf4..ca00012 100644
--- a/internal/impl/isinit.go
+++ b/internal/impl/isinit.go
@@ -8,12 +8,17 @@
 	"sync"
 
 	"google.golang.org/protobuf/internal/errors"
-	"google.golang.org/protobuf/proto"
 	pref "google.golang.org/protobuf/reflect/protoreflect"
 )
 
-func (mi *MessageInfo) isInitialized(msg proto.Message) error {
-	return mi.isInitializedPointer(pointerOfIface(msg))
+func (mi *MessageInfo) isInitialized(m pref.Message) error {
+	var p pointer
+	if ms, ok := m.(*messageState); ok {
+		p = ms.pointer()
+	} else {
+		p = m.(*messageReflectWrapper).pointer()
+	}
+	return mi.isInitializedPointer(p)
 }
 
 func (mi *MessageInfo) isInitializedPointer(p pointer) error {
diff --git a/internal/impl/message.go b/internal/impl/message.go
index 201e1d6..09e91ed 100644
--- a/internal/impl/message.go
+++ b/internal/impl/message.go
@@ -295,9 +295,3 @@
 		}
 	}
 }
-
-// TODO: Move this to be on the reflect message instance.
-func (mi *MessageInfo) Methods() *piface.Methods {
-	mi.init()
-	return &mi.methods
-}
diff --git a/internal/impl/message_reflect.go b/internal/impl/message_reflect.go
index a9eb7a9..c79b55a 100644
--- a/internal/impl/message_reflect.go
+++ b/internal/impl/message_reflect.go
@@ -11,7 +11,6 @@
 	"google.golang.org/protobuf/internal/pragma"
 	pvalue "google.golang.org/protobuf/internal/value"
 	pref "google.golang.org/protobuf/reflect/protoreflect"
-	piface "google.golang.org/protobuf/runtime/protoiface"
 )
 
 // MessageState is a data structure that is nested as the first field in a
@@ -81,8 +80,8 @@
 }
 
 type (
-	messageIfaceWrapper   messageDataType
 	messageReflectWrapper messageDataType
+	messageIfaceWrapper   messageDataType
 )
 
 var (
@@ -112,33 +111,9 @@
 func (m *messageIfaceWrapper) ProtoReflect() pref.Message {
 	return (*messageReflectWrapper)(m)
 }
-func (m *messageIfaceWrapper) XXX_Methods() *piface.Methods {
-	// TODO: Consider not recreating this on every call.
-	m.mi.init()
-	return &piface.Methods{
-		Flags:         piface.MethodFlagDeterministicMarshal,
-		MarshalAppend: m.marshalAppend,
-		Unmarshal:     m.unmarshal,
-		Size:          m.size,
-		IsInitialized: m.isInitialized,
-	}
-}
 func (m *messageIfaceWrapper) ProtoUnwrap() interface{} {
 	return m.p.AsIfaceOf(m.mi.GoType.Elem())
 }
-func (m *messageIfaceWrapper) marshalAppend(b []byte, _ pref.ProtoMessage, opts piface.MarshalOptions) ([]byte, error) {
-	return m.mi.marshalAppendPointer(b, m.p, newMarshalOptions(opts))
-}
-func (m *messageIfaceWrapper) unmarshal(b []byte, _ pref.ProtoMessage, opts piface.UnmarshalOptions) error {
-	_, err := m.mi.unmarshalPointer(b, m.p, 0, newUnmarshalOptions(opts))
-	return err
-}
-func (m *messageIfaceWrapper) size(msg pref.ProtoMessage) (size int) {
-	return m.mi.sizePointer(m.p, 0)
-}
-func (m *messageIfaceWrapper) isInitialized(_ pref.ProtoMessage) error {
-	return m.mi.isInitializedPointer(m.p)
-}
 
 type extensionMap map[int32]ExtensionField
 
diff --git a/internal/impl/message_reflect_gen.go b/internal/impl/message_reflect_gen.go
index 41ba0b9..efe4e89 100644
--- a/internal/impl/message_reflect_gen.go
+++ b/internal/impl/message_reflect_gen.go
@@ -8,6 +8,7 @@
 
 import (
 	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
 )
 
 func (m *messageState) Descriptor() protoreflect.MessageDescriptor {
@@ -22,6 +23,10 @@
 func (m *messageState) ProtoUnwrap() interface{} {
 	return m.pointer().AsIfaceOf(m.mi.GoType.Elem())
 }
+func (m *messageState) ProtoMethods() *protoiface.Methods {
+	m.mi.init()
+	return &m.mi.methods
+}
 
 func (m *messageState) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
 	m.mi.init()
@@ -113,6 +118,10 @@
 func (m *messageReflectWrapper) ProtoUnwrap() interface{} {
 	return m.pointer().AsIfaceOf(m.mi.GoType.Elem())
 }
+func (m *messageReflectWrapper) ProtoMethods() *protoiface.Methods {
+	m.mi.init()
+	return &m.mi.methods
+}
 
 func (m *messageReflectWrapper) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
 	m.mi.init()
diff --git a/internal/testprotos/benchmarks/benchmarks.pb.go b/internal/testprotos/benchmarks/benchmarks.pb.go
index 5479355..6328f64 100644
--- a/internal/testprotos/benchmarks/benchmarks.pb.go
+++ b/internal/testprotos/benchmarks/benchmarks.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -70,10 +69,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *BenchmarkDataset) XXX_Methods() *protoiface.Methods {
-	return file_benchmarks_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use BenchmarkDataset.ProtoReflect.Type instead.
 func (*BenchmarkDataset) Descriptor() ([]byte, []int) {
 	return file_benchmarks_proto_rawDescGZIP(), []int{0}
diff --git a/internal/testprotos/benchmarks/datasets/google_message1/proto2/benchmark_message1_proto2.pb.go b/internal/testprotos/benchmarks/datasets/google_message1/proto2/benchmark_message1_proto2.pb.go
index 3ec1ece..8741be6 100644
--- a/internal/testprotos/benchmarks/datasets/google_message1/proto2/benchmark_message1_proto2.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message1/proto2/benchmark_message1_proto2.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -86,10 +85,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *GoogleMessage1) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message1_proto2_benchmark_message1_proto2_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use GoogleMessage1.ProtoReflect.Type instead.
 func (*GoogleMessage1) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message1_proto2_benchmark_message1_proto2_proto_rawDescGZIP(), []int{0}
@@ -455,10 +450,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *GoogleMessage1SubMessage) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message1_proto2_benchmark_message1_proto2_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use GoogleMessage1SubMessage.ProtoReflect.Type instead.
 func (*GoogleMessage1SubMessage) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message1_proto2_benchmark_message1_proto2_proto_rawDescGZIP(), []int{1}
diff --git a/internal/testprotos/benchmarks/datasets/google_message1/proto3/benchmark_message1_proto3.pb.go b/internal/testprotos/benchmarks/datasets/google_message1/proto3/benchmark_message1_proto3.pb.go
index 2ed4a83..8957480 100644
--- a/internal/testprotos/benchmarks/datasets/google_message1/proto3/benchmark_message1_proto3.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message1/proto3/benchmark_message1_proto3.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -86,10 +85,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *GoogleMessage1) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message1_proto3_benchmark_message1_proto3_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use GoogleMessage1.ProtoReflect.Type instead.
 func (*GoogleMessage1) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message1_proto3_benchmark_message1_proto3_proto_rawDescGZIP(), []int{0}
@@ -430,10 +425,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *GoogleMessage1SubMessage) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message1_proto3_benchmark_message1_proto3_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use GoogleMessage1SubMessage.ProtoReflect.Type instead.
 func (*GoogleMessage1SubMessage) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message1_proto3_benchmark_message1_proto3_proto_rawDescGZIP(), []int{1}
diff --git a/internal/testprotos/benchmarks/datasets/google_message2/benchmark_message2.pb.go b/internal/testprotos/benchmarks/datasets/google_message2/benchmark_message2.pb.go
index 5b048f1..fe056e8 100644
--- a/internal/testprotos/benchmarks/datasets/google_message2/benchmark_message2.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message2/benchmark_message2.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -75,10 +74,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *GoogleMessage2) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message2_benchmark_message2_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use GoogleMessage2.ProtoReflect.Type instead.
 func (*GoogleMessage2) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message2_benchmark_message2_proto_rawDescGZIP(), []int{0}
@@ -349,10 +344,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *GoogleMessage2GroupedMessage) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message2_benchmark_message2_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use GoogleMessage2GroupedMessage.ProtoReflect.Type instead.
 func (*GoogleMessage2GroupedMessage) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message2_benchmark_message2_proto_rawDescGZIP(), []int{1}
@@ -483,10 +474,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *GoogleMessage2_Group1) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message2_benchmark_message2_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use GoogleMessage2_Group1.ProtoReflect.Type instead.
 func (*GoogleMessage2_Group1) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message2_benchmark_message2_proto_rawDescGZIP(), []int{0, 0}
diff --git a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3.pb.go b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3.pb.go
index 0ea2e92..17d473b 100644
--- a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3.pb.go
@@ -60,10 +60,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *GoogleMessage3) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use GoogleMessage3.ProtoReflect.Type instead.
 func (*GoogleMessage3) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{0}
@@ -206,10 +202,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message1327) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message1327.ProtoReflect.Type instead.
 func (*Message1327) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{1}
@@ -281,10 +273,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3672) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message3672.ProtoReflect.Type instead.
 func (*Message3672) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{2}
@@ -395,10 +383,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3804) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message3804.ProtoReflect.Type instead.
 func (*Message3804) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{3}
@@ -482,10 +466,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6849) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message6849.ProtoReflect.Type instead.
 func (*Message6849) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{4}
@@ -527,10 +507,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6866) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message6866.ProtoReflect.Type instead.
 func (*Message6866) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{5}
@@ -572,10 +548,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6870) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message6870.ProtoReflect.Type instead.
 func (*Message6870) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{6}
@@ -661,10 +633,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7651) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use Message7651.ProtoReflect.Type instead.
 func (*Message7651) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{7}
@@ -1019,10 +987,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7864) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use Message7864.ProtoReflect.Type instead.
 func (*Message7864) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{8}
@@ -1118,10 +1082,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7929) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Message7929.ProtoReflect.Type instead.
 func (*Message7929) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{9}
@@ -1312,10 +1272,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8508) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use Message8508.ProtoReflect.Type instead.
 func (*Message8508) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{10}
@@ -1470,10 +1426,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9122) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use Message9122.ProtoReflect.Type instead.
 func (*Message9122) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{11}
@@ -1522,10 +1474,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10177) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use Message10177.ProtoReflect.Type instead.
 func (*Message10177) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{12}
@@ -1569,10 +1517,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10278) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use Message10278.ProtoReflect.Type instead.
 func (*Message10278) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{13}
@@ -1628,10 +1572,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10323) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use Message10323.ProtoReflect.Type instead.
 func (*Message10323) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{14}
@@ -1674,10 +1614,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10324) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use Message10324.ProtoReflect.Type instead.
 func (*Message10324) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{15}
@@ -1726,10 +1662,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11990) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use Message11990.ProtoReflect.Type instead.
 func (*Message11990) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{16}
@@ -1773,10 +1705,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12691) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use Message12691.ProtoReflect.Type instead.
 func (*Message12691) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{17}
@@ -1851,10 +1779,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12870) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use Message12870.ProtoReflect.Type instead.
 func (*Message12870) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{18}
@@ -2030,10 +1954,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13154) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use Message13154.ProtoReflect.Type instead.
 func (*Message13154) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{19}
@@ -2114,10 +2034,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16507) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use Message16507.ProtoReflect.Type instead.
 func (*Message16507) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{20}
@@ -2385,10 +2301,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16564) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[21].Methods()
-}
-
 // Deprecated: Use Message16564.ProtoReflect.Type instead.
 func (*Message16564) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{21}
@@ -2431,10 +2343,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16661) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use Message16661.ProtoReflect.Type instead.
 func (*Message16661) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{22}
@@ -2486,10 +2394,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16746) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use Message16746.ProtoReflect.Type instead.
 func (*Message16746) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{23}
@@ -2553,10 +2457,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message17786) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use Message17786.ProtoReflect.Type instead.
 func (*Message17786) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{24}
@@ -2605,10 +2505,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message22857) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use Message22857.ProtoReflect.Type instead.
 func (*Message22857) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{25}
@@ -2651,10 +2547,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24404) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[26].Methods()
-}
-
 // Deprecated: Use Message24404.ProtoReflect.Type instead.
 func (*Message24404) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{26}
@@ -2704,10 +2596,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message27300) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[27].Methods()
-}
-
 // Deprecated: Use Message27300.ProtoReflect.Type instead.
 func (*Message27300) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{27}
@@ -2778,10 +2666,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message27453) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[28].Methods()
-}
-
 // Deprecated: Use Message27453.ProtoReflect.Type instead.
 func (*Message27453) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{28}
@@ -2978,10 +2862,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3672_Message3673) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[29].Methods()
-}
-
 // Deprecated: Use Message3672_Message3673.ProtoReflect.Type instead.
 func (*Message3672_Message3673) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{2, 0}
@@ -3031,10 +2911,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3672_Message3674) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[30].Methods()
-}
-
 // Deprecated: Use Message3672_Message3674.ProtoReflect.Type instead.
 func (*Message3672_Message3674) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{2, 1}
@@ -3108,10 +2984,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message17786_Message17787) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[31].Methods()
-}
-
 // Deprecated: Use Message17786_Message17787.ProtoReflect.Type instead.
 func (*Message17786_Message17787) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{24, 0}
@@ -3358,10 +3230,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24404_Message24405) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_proto_msgTypes[32].Methods()
-}
-
 // Deprecated: Use Message24404_Message24405.ProtoReflect.Type instead.
 func (*Message24404_Message24405) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_proto_rawDescGZIP(), []int{26, 0}
diff --git a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_1.pb.go b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_1.pb.go
index 4446b50..f4df4ca 100644
--- a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_1.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_1.pb.go
@@ -46,10 +46,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message34390) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message34390.ProtoReflect.Type instead.
 func (*Message34390) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{0}
@@ -92,10 +88,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message34624) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message34624.ProtoReflect.Type instead.
 func (*Message34624) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{1}
@@ -157,10 +149,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message34791) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message34791.ProtoReflect.Type instead.
 func (*Message34791) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{2}
@@ -298,10 +286,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35483) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message35483.ProtoReflect.Type instead.
 func (*Message35483) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{3}
@@ -385,10 +369,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35807) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message35807.ProtoReflect.Type instead.
 func (*Message35807) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{4}
@@ -480,10 +460,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message37487) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message37487.ProtoReflect.Type instead.
 func (*Message37487) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{5}
@@ -536,10 +512,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13062) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message13062.ProtoReflect.Type instead.
 func (*Message13062) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{6}
@@ -609,10 +581,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message952) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use Message952.ProtoReflect.Type instead.
 func (*Message952) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{7}
@@ -716,10 +684,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use Message36876.ProtoReflect.Type instead.
 func (*Message36876) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8}
@@ -1194,10 +1158,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message1328) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Message1328.ProtoReflect.Type instead.
 func (*Message1328) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{9}
@@ -1231,10 +1191,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6850) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use Message6850.ProtoReflect.Type instead.
 func (*Message6850) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{10}
@@ -1301,10 +1257,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6863) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use Message6863.ProtoReflect.Type instead.
 func (*Message6863) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{11}
@@ -1569,10 +1521,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6871) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use Message6871.ProtoReflect.Type instead.
 func (*Message6871) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{12}
@@ -1608,10 +1556,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7547) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use Message7547.ProtoReflect.Type instead.
 func (*Message7547) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{13}
@@ -1671,10 +1615,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7648) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use Message7648.ProtoReflect.Type instead.
 func (*Message7648) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{14}
@@ -1792,10 +1732,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7865) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use Message7865.ProtoReflect.Type instead.
 func (*Message7865) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{15}
@@ -1831,10 +1767,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7928) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use Message7928.ProtoReflect.Type instead.
 func (*Message7928) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{16}
@@ -1885,10 +1817,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7919) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use Message7919.ProtoReflect.Type instead.
 func (*Message7919) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{17}
@@ -1945,10 +1873,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7920) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use Message7920.ProtoReflect.Type instead.
 func (*Message7920) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{18}
@@ -2000,10 +1924,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7921) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use Message7921.ProtoReflect.Type instead.
 func (*Message7921) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{19}
@@ -2070,10 +1990,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8511) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use Message8511.ProtoReflect.Type instead.
 func (*Message8511) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{20}
@@ -2148,10 +2064,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8512) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[21].Methods()
-}
-
 // Deprecated: Use Message8512.ProtoReflect.Type instead.
 func (*Message8512) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{21}
@@ -2231,10 +2143,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8513) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use Message8513.ProtoReflect.Type instead.
 func (*Message8513) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{22}
@@ -2301,10 +2209,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8514) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use Message8514.ProtoReflect.Type instead.
 func (*Message8514) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{23}
@@ -2376,10 +2280,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8515) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use Message8515.ProtoReflect.Type instead.
 func (*Message8515) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{24}
@@ -2441,10 +2341,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10320) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use Message10320.ProtoReflect.Type instead.
 func (*Message10320) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{25}
@@ -2530,10 +2426,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10321) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[26].Methods()
-}
-
 // Deprecated: Use Message10321.ProtoReflect.Type instead.
 func (*Message10321) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{26}
@@ -2591,10 +2483,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10322) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[27].Methods()
-}
-
 // Deprecated: Use Message10322.ProtoReflect.Type instead.
 func (*Message10322) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{27}
@@ -2653,10 +2541,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11988) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[28].Methods()
-}
-
 // Deprecated: Use Message11988.ProtoReflect.Type instead.
 func (*Message11988) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{28}
@@ -2722,10 +2606,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12668) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[29].Methods()
-}
-
 // Deprecated: Use Message12668.ProtoReflect.Type instead.
 func (*Message12668) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{29}
@@ -2794,10 +2674,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12825) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[30].Methods()
-}
-
 // Deprecated: Use Message12825.ProtoReflect.Type instead.
 func (*Message12825) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{30}
@@ -2883,10 +2759,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16478) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[31].Methods()
-}
-
 // Deprecated: Use Message16478.ProtoReflect.Type instead.
 func (*Message16478) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{31}
@@ -2944,10 +2816,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16552) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[32].Methods()
-}
-
 // Deprecated: Use Message16552.ProtoReflect.Type instead.
 func (*Message16552) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{32}
@@ -3005,10 +2873,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16660) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[33].Methods()
-}
-
 // Deprecated: Use Message16660.ProtoReflect.Type instead.
 func (*Message16660) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{33}
@@ -3088,10 +2952,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16727) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[34].Methods()
-}
-
 // Deprecated: Use Message16727.ProtoReflect.Type instead.
 func (*Message16727) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{34}
@@ -3304,10 +3164,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16725) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[35].Methods()
-}
-
 // Deprecated: Use Message16725.ProtoReflect.Type instead.
 func (*Message16725) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{35}
@@ -3377,10 +3233,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message17726) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[36].Methods()
-}
-
 // Deprecated: Use Message17726.ProtoReflect.Type instead.
 func (*Message17726) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{36}
@@ -3570,10 +3422,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message17782) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[37].Methods()
-}
-
 // Deprecated: Use Message17782.ProtoReflect.Type instead.
 func (*Message17782) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{37}
@@ -3627,10 +3475,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message17783) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[38].Methods()
-}
-
 // Deprecated: Use Message17783.ProtoReflect.Type instead.
 func (*Message17783) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{38}
@@ -3786,10 +3630,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16945) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[39].Methods()
-}
-
 // Deprecated: Use Message16945.ProtoReflect.Type instead.
 func (*Message16945) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{39}
@@ -5083,10 +4923,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message34791_Message34792) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[40].Methods()
-}
-
 // Deprecated: Use Message34791_Message34792.ProtoReflect.Type instead.
 func (*Message34791_Message34792) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{2, 0}
@@ -5139,10 +4975,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36877) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[41].Methods()
-}
-
 // Deprecated: Use Message36876_Message36877.ProtoReflect.Type instead.
 func (*Message36876_Message36877) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 0}
@@ -5211,10 +5043,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36878) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[42].Methods()
-}
-
 // Deprecated: Use Message36876_Message36878.ProtoReflect.Type instead.
 func (*Message36876_Message36878) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 1}
@@ -5250,10 +5078,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36879) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[43].Methods()
-}
-
 // Deprecated: Use Message36876_Message36879.ProtoReflect.Type instead.
 func (*Message36876_Message36879) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 2}
@@ -5301,10 +5125,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36880) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[44].Methods()
-}
-
 // Deprecated: Use Message36876_Message36880.ProtoReflect.Type instead.
 func (*Message36876_Message36880) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 3}
@@ -5338,10 +5158,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36881) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[45].Methods()
-}
-
 // Deprecated: Use Message36876_Message36881.ProtoReflect.Type instead.
 func (*Message36876_Message36881) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 4}
@@ -5375,10 +5191,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36882) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[46].Methods()
-}
-
 // Deprecated: Use Message36876_Message36882.ProtoReflect.Type instead.
 func (*Message36876_Message36882) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 5}
@@ -5412,10 +5224,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36883) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[47].Methods()
-}
-
 // Deprecated: Use Message36876_Message36883.ProtoReflect.Type instead.
 func (*Message36876_Message36883) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 6}
@@ -5449,10 +5257,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36884) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[48].Methods()
-}
-
 // Deprecated: Use Message36876_Message36884.ProtoReflect.Type instead.
 func (*Message36876_Message36884) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 7}
@@ -5486,10 +5290,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36885) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[49].Methods()
-}
-
 // Deprecated: Use Message36876_Message36885.ProtoReflect.Type instead.
 func (*Message36876_Message36885) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 8}
@@ -5523,10 +5323,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36886) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[50].Methods()
-}
-
 // Deprecated: Use Message36876_Message36886.ProtoReflect.Type instead.
 func (*Message36876_Message36886) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 9}
@@ -5560,10 +5356,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36887) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[51].Methods()
-}
-
 // Deprecated: Use Message36876_Message36887.ProtoReflect.Type instead.
 func (*Message36876_Message36887) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 10}
@@ -5603,10 +5395,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36888) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[52].Methods()
-}
-
 // Deprecated: Use Message36876_Message36888.ProtoReflect.Type instead.
 func (*Message36876_Message36888) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 11}
@@ -5707,10 +5495,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36889) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[53].Methods()
-}
-
 // Deprecated: Use Message36876_Message36889.ProtoReflect.Type instead.
 func (*Message36876_Message36889) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 12}
@@ -5919,10 +5703,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36910) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[54].Methods()
-}
-
 // Deprecated: Use Message36876_Message36910.ProtoReflect.Type instead.
 func (*Message36876_Message36910) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 13}
@@ -5960,10 +5740,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36911) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[55].Methods()
-}
-
 // Deprecated: Use Message36876_Message36911.ProtoReflect.Type instead.
 func (*Message36876_Message36911) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 14}
@@ -6027,10 +5803,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36876_Message36912) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[56].Methods()
-}
-
 // Deprecated: Use Message36876_Message36912.ProtoReflect.Type instead.
 func (*Message36876_Message36912) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{8, 15}
@@ -6084,10 +5856,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message17783_Message17784) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[57].Methods()
-}
-
 // Deprecated: Use Message17783_Message17784.ProtoReflect.Type instead.
 func (*Message17783_Message17784) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{38, 0}
@@ -6169,10 +5937,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message17783_Message17785) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_1_proto_msgTypes[58].Methods()
-}
-
 // Deprecated: Use Message17783_Message17785.ProtoReflect.Type instead.
 func (*Message17783_Message17785) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_1_proto_rawDescGZIP(), []int{38, 1}
diff --git a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_2.pb.go b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_2.pb.go
index 4fcda87..1aab9e8 100644
--- a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_2.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_2.pb.go
@@ -50,10 +50,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message22853) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message22853.ProtoReflect.Type instead.
 func (*Message22853) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{0}
@@ -147,10 +143,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24345) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message24345.ProtoReflect.Type instead.
 func (*Message24345) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{1}
@@ -361,10 +353,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24403) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message24403.ProtoReflect.Type instead.
 func (*Message24403) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{2}
@@ -437,10 +425,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24391) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message24391.ProtoReflect.Type instead.
 func (*Message24391) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{3}
@@ -649,10 +633,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message27454) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message27454.ProtoReflect.Type instead.
 func (*Message27454) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{4}
@@ -691,10 +671,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message27357) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message27357.ProtoReflect.Type instead.
 func (*Message27357) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{5}
@@ -767,10 +743,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message27360) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message27360.ProtoReflect.Type instead.
 func (*Message27360) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{6}
@@ -837,10 +809,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message34387) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use Message34387.ProtoReflect.Type instead.
 func (*Message34387) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{7}
@@ -927,10 +895,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message34621) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use Message34621.ProtoReflect.Type instead.
 func (*Message34621) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{8}
@@ -1104,10 +1068,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35476) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Message35476.ProtoReflect.Type instead.
 func (*Message35476) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{9}
@@ -1246,10 +1206,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message949) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use Message949.ProtoReflect.Type instead.
 func (*Message949) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{10}
@@ -1334,10 +1290,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36869) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use Message36869.ProtoReflect.Type instead.
 func (*Message36869) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{11}
@@ -1390,10 +1342,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message33968) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use Message33968.ProtoReflect.Type instead.
 func (*Message33968) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{12}
@@ -1478,10 +1426,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6644) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use Message6644.ProtoReflect.Type instead.
 func (*Message6644) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{13}
@@ -1628,10 +1572,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message18831) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use Message18831.ProtoReflect.Type instead.
 func (*Message18831) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{14}
@@ -1674,10 +1614,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13090) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use Message13090.ProtoReflect.Type instead.
 func (*Message13090) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{15}
@@ -1730,10 +1666,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11874) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use Message11874.ProtoReflect.Type instead.
 func (*Message11874) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{16}
@@ -1807,10 +1739,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message4144) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use Message4144.ProtoReflect.Type instead.
 func (*Message4144) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{17}
@@ -1862,10 +1790,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35573) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use Message35573.ProtoReflect.Type instead.
 func (*Message35573) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{18}
@@ -1988,10 +1912,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36858) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use Message36858.ProtoReflect.Type instead.
 func (*Message36858) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{19}
@@ -2130,10 +2050,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13174) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use Message13174.ProtoReflect.Type instead.
 func (*Message13174) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{20}
@@ -2419,10 +2335,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message18283) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[21].Methods()
-}
-
 // Deprecated: Use Message18283.ProtoReflect.Type instead.
 func (*Message18283) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{21}
@@ -3199,10 +3111,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13169) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use Message13169.ProtoReflect.Type instead.
 func (*Message13169) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{22}
@@ -3258,10 +3166,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message19255) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use Message19255.ProtoReflect.Type instead.
 func (*Message19255) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{23}
@@ -3305,10 +3209,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35542) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use Message35542.ProtoReflect.Type instead.
 func (*Message35542) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{24}
@@ -3375,10 +3275,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3901) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use Message3901.ProtoReflect.Type instead.
 func (*Message3901) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{25}
@@ -3496,10 +3392,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message33968_Message33969) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[26].Methods()
-}
-
 // Deprecated: Use Message33968_Message33969.ProtoReflect.Type instead.
 func (*Message33968_Message33969) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{12, 0}
@@ -3540,10 +3432,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message18831_Message18832) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[27].Methods()
-}
-
 // Deprecated: Use Message18831_Message18832.ProtoReflect.Type instead.
 func (*Message18831_Message18832) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{14, 0}
@@ -3631,10 +3519,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message18831_Message18832_Message18833) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[28].Methods()
-}
-
 // Deprecated: Use Message18831_Message18832_Message18833.ProtoReflect.Type instead.
 func (*Message18831_Message18832_Message18833) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{14, 0, 0}
@@ -3709,10 +3593,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message4144_Message4145) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[29].Methods()
-}
-
 // Deprecated: Use Message4144_Message4145.ProtoReflect.Type instead.
 func (*Message4144_Message4145) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{17, 0}
@@ -3788,10 +3668,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35573_Message35574) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[30].Methods()
-}
-
 // Deprecated: Use Message35573_Message35574.ProtoReflect.Type instead.
 func (*Message35573_Message35574) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{18, 0}
@@ -3863,10 +3739,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35573_Message35575) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[31].Methods()
-}
-
 // Deprecated: Use Message35573_Message35575.ProtoReflect.Type instead.
 func (*Message35573_Message35575) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{18, 1}
@@ -4191,10 +4063,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35573_Message35575_Message35576) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[32].Methods()
-}
-
 // Deprecated: Use Message35573_Message35575_Message35576.ProtoReflect.Type instead.
 func (*Message35573_Message35575_Message35576) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{18, 1, 0}
@@ -4405,10 +4273,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message36858_Message36859) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_2_proto_msgTypes[33].Methods()
-}
-
 // Deprecated: Use Message36858_Message36859.ProtoReflect.Type instead.
 func (*Message36858_Message36859) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_2_proto_rawDescGZIP(), []int{19, 0}
diff --git a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_3.pb.go b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_3.pb.go
index 8c0f847..5f8bb62 100644
--- a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_3.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_3.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -57,10 +56,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35546) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message35546.ProtoReflect.Type instead.
 func (*Message35546) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{0}
@@ -209,10 +204,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2356) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message2356.ProtoReflect.Type instead.
 func (*Message2356) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{1}
@@ -505,10 +496,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7029) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message7029.ProtoReflect.Type instead.
 func (*Message7029) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{2}
@@ -837,10 +824,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35538) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message35538.ProtoReflect.Type instead.
 func (*Message35538) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{3}
@@ -893,10 +876,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message18921) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message18921.ProtoReflect.Type instead.
 func (*Message18921) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{4}
@@ -1015,10 +994,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35540) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message35540.ProtoReflect.Type instead.
 func (*Message35540) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{5}
@@ -1060,10 +1035,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3886) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message3886.ProtoReflect.Type instead.
 func (*Message3886) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{6}
@@ -1112,10 +1083,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6743) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use Message6743.ProtoReflect.Type instead.
 func (*Message6743) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{7}
@@ -1215,10 +1182,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6773) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use Message6773.ProtoReflect.Type instead.
 func (*Message6773) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{8}
@@ -1349,10 +1312,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8224) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Message8224.ProtoReflect.Type instead.
 func (*Message8224) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{9}
@@ -1584,10 +1543,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8392) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use Message8392.ProtoReflect.Type instead.
 func (*Message8392) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{10}
@@ -1708,10 +1663,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8130) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use Message8130.ProtoReflect.Type instead.
 func (*Message8130) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{11}
@@ -1921,10 +1872,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8478) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use Message8478.ProtoReflect.Type instead.
 func (*Message8478) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{12}
@@ -2023,10 +1970,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8479) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use Message8479.ProtoReflect.Type instead.
 func (*Message8479) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{13}
@@ -2130,10 +2073,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10319) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use Message10319.ProtoReflect.Type instead.
 func (*Message10319) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{14}
@@ -2220,10 +2159,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message4016) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use Message4016.ProtoReflect.Type instead.
 func (*Message4016) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{15}
@@ -2289,10 +2224,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12669) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use Message12669.ProtoReflect.Type instead.
 func (*Message12669) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{16}
@@ -2360,10 +2291,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12819) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use Message12819.ProtoReflect.Type instead.
 func (*Message12819) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{17}
@@ -2447,10 +2374,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12820) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use Message12820.ProtoReflect.Type instead.
 func (*Message12820) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{18}
@@ -2545,10 +2468,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12821) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use Message12821.ProtoReflect.Type instead.
 func (*Message12821) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{19}
@@ -2622,10 +2541,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12818) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use Message12818.ProtoReflect.Type instead.
 func (*Message12818) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{20}
@@ -2700,10 +2615,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16479) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[21].Methods()
-}
-
 // Deprecated: Use Message16479.ProtoReflect.Type instead.
 func (*Message16479) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{21}
@@ -2784,10 +2695,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16722) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use Message16722.ProtoReflect.Type instead.
 func (*Message16722) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{22}
@@ -2869,10 +2776,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16724) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use Message16724.ProtoReflect.Type instead.
 func (*Message16724) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{23}
@@ -2997,10 +2900,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message17728) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use Message17728.ProtoReflect.Type instead.
 func (*Message17728) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{24}
@@ -3049,10 +2948,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24356) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use Message24356.ProtoReflect.Type instead.
 func (*Message24356) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{25}
@@ -3205,10 +3100,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24376) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[26].Methods()
-}
-
 // Deprecated: Use Message24376.ProtoReflect.Type instead.
 func (*Message24376) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{26}
@@ -3355,10 +3246,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24366) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[27].Methods()
-}
-
 // Deprecated: Use Message24366.ProtoReflect.Type instead.
 func (*Message24366) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{27}
@@ -3499,10 +3386,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35546_Message35547) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[28].Methods()
-}
-
 // Deprecated: Use Message35546_Message35547.ProtoReflect.Type instead.
 func (*Message35546_Message35547) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{0, 0}
@@ -3552,10 +3435,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35546_Message35548) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[29].Methods()
-}
-
 // Deprecated: Use Message35546_Message35548.ProtoReflect.Type instead.
 func (*Message35546_Message35548) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{0, 1}
@@ -3615,10 +3494,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2356_Message2357) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[30].Methods()
-}
-
 // Deprecated: Use Message2356_Message2357.ProtoReflect.Type instead.
 func (*Message2356_Message2357) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{1, 0}
@@ -3736,10 +3611,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2356_Message2358) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[31].Methods()
-}
-
 // Deprecated: Use Message2356_Message2358.ProtoReflect.Type instead.
 func (*Message2356_Message2358) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{1, 1}
@@ -3781,10 +3652,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2356_Message2359) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[32].Methods()
-}
-
 // Deprecated: Use Message2356_Message2359.ProtoReflect.Type instead.
 func (*Message2356_Message2359) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{1, 2}
@@ -3877,10 +3744,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7029_Message7030) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[33].Methods()
-}
-
 // Deprecated: Use Message7029_Message7030.ProtoReflect.Type instead.
 func (*Message7029_Message7030) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{2, 0}
@@ -3941,10 +3804,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7029_Message7031) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[34].Methods()
-}
-
 // Deprecated: Use Message7029_Message7031.ProtoReflect.Type instead.
 func (*Message7029_Message7031) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{2, 1}
@@ -4043,10 +3902,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message18921_Message18922) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[35].Methods()
-}
-
 // Deprecated: Use Message18921_Message18922.ProtoReflect.Type instead.
 func (*Message18921_Message18922) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{4, 0}
@@ -4245,10 +4100,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3886_Message3887) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_3_proto_msgTypes[36].Methods()
-}
-
 // Deprecated: Use Message3886_Message3887.ProtoReflect.Type instead.
 func (*Message3886_Message3887) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_3_proto_rawDescGZIP(), []int{6, 0}
diff --git a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_4.pb.go b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_4.pb.go
index 52cbdfa..aab4648 100644
--- a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_4.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_4.pb.go
@@ -45,10 +45,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24346) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message24346.ProtoReflect.Type instead.
 func (*Message24346) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{0}
@@ -83,10 +79,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24401) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message24401.ProtoReflect.Type instead.
 func (*Message24401) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{1}
@@ -128,10 +120,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24402) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message24402.ProtoReflect.Type instead.
 func (*Message24402) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{2}
@@ -190,10 +178,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24379) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message24379.ProtoReflect.Type instead.
 func (*Message24379) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{3}
@@ -355,10 +339,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message27358) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message27358.ProtoReflect.Type instead.
 func (*Message27358) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{4}
@@ -416,10 +396,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message34381) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message34381.ProtoReflect.Type instead.
 func (*Message34381) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{5}
@@ -530,10 +506,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message34619) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message34619.ProtoReflect.Type instead.
 func (*Message34619) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{6}
@@ -650,10 +622,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message730) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use Message730.ProtoReflect.Type instead.
 func (*Message730) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{7}
@@ -934,10 +902,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message33958) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use Message33958.ProtoReflect.Type instead.
 func (*Message33958) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{8}
@@ -1004,10 +968,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6637) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Message6637.ProtoReflect.Type instead.
 func (*Message6637) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{9}
@@ -1094,10 +1054,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6643) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use Message6643.ProtoReflect.Type instead.
 func (*Message6643) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{10}
@@ -1276,10 +1232,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6126) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use Message6126.ProtoReflect.Type instead.
 func (*Message6126) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{11}
@@ -1456,10 +1408,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13083) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use Message13083.ProtoReflect.Type instead.
 func (*Message13083) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{12}
@@ -1566,10 +1514,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13088) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use Message13088.ProtoReflect.Type instead.
 func (*Message13088) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{13}
@@ -1633,10 +1577,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10391) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use Message10391.ProtoReflect.Type instead.
 func (*Message10391) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{14}
@@ -1746,10 +1686,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11873) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use Message11873.ProtoReflect.Type instead.
 func (*Message11873) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{15}
@@ -1881,10 +1817,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message35506) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use Message35506.ProtoReflect.Type instead.
 func (*Message35506) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{16}
@@ -1947,10 +1879,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13151) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use Message13151.ProtoReflect.Type instead.
 func (*Message13151) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{17}
@@ -1992,10 +1920,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message18253) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use Message18253.ProtoReflect.Type instead.
 func (*Message18253) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{18}
@@ -2037,10 +1961,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16685) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use Message16685.ProtoReflect.Type instead.
 func (*Message16685) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{19}
@@ -2091,10 +2011,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16816) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use Message16816.ProtoReflect.Type instead.
 func (*Message16816) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{20}
@@ -2209,10 +2125,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13168) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[21].Methods()
-}
-
 // Deprecated: Use Message13168.ProtoReflect.Type instead.
 func (*Message13168) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{21}
@@ -2336,10 +2248,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13167) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use Message13167.ProtoReflect.Type instead.
 func (*Message13167) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{22}
@@ -2466,10 +2374,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message1374) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use Message1374.ProtoReflect.Type instead.
 func (*Message1374) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{23}
@@ -2517,10 +2421,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message18943) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use Message18943.ProtoReflect.Type instead.
 func (*Message18943) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{24}
@@ -2554,10 +2454,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message18944) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use Message18944.ProtoReflect.Type instead.
 func (*Message18944) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{25}
@@ -2622,10 +2518,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message18856) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[26].Methods()
-}
-
 // Deprecated: Use Message18856.ProtoReflect.Type instead.
 func (*Message18856) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{26}
@@ -2882,10 +2774,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3850) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[27].Methods()
-}
-
 // Deprecated: Use Message3850.ProtoReflect.Type instead.
 func (*Message3850) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{27}
@@ -2965,10 +2853,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6721) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[28].Methods()
-}
-
 // Deprecated: Use Message6721.ProtoReflect.Type instead.
 func (*Message6721) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{28}
@@ -3031,10 +2915,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6742) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[29].Methods()
-}
-
 // Deprecated: Use Message6742.ProtoReflect.Type instead.
 func (*Message6742) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{29}
@@ -3077,10 +2957,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6726) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[30].Methods()
-}
-
 // Deprecated: Use Message6726.ProtoReflect.Type instead.
 func (*Message6726) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{30}
@@ -3131,10 +3007,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6733) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[31].Methods()
-}
-
 // Deprecated: Use Message6733.ProtoReflect.Type instead.
 func (*Message6733) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{31}
@@ -3191,10 +3063,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6723) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[32].Methods()
-}
-
 // Deprecated: Use Message6723.ProtoReflect.Type instead.
 func (*Message6723) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{32}
@@ -3244,10 +3112,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6725) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[33].Methods()
-}
-
 // Deprecated: Use Message6725.ProtoReflect.Type instead.
 func (*Message6725) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{33}
@@ -3296,10 +3160,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6734) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[34].Methods()
-}
-
 // Deprecated: Use Message6734.ProtoReflect.Type instead.
 func (*Message6734) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{34}
@@ -3343,10 +3203,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8184) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[35].Methods()
-}
-
 // Deprecated: Use Message8184.ProtoReflect.Type instead.
 func (*Message8184) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{35}
@@ -3404,10 +3260,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8477) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[36].Methods()
-}
-
 // Deprecated: Use Message8477.ProtoReflect.Type instead.
 func (*Message8477) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{36}
@@ -3466,10 +3318,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8454) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[37].Methods()
-}
-
 // Deprecated: Use Message8454.ProtoReflect.Type instead.
 func (*Message8454) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{37}
@@ -3534,10 +3382,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8476) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[38].Methods()
-}
-
 // Deprecated: Use Message8476.ProtoReflect.Type instead.
 func (*Message8476) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{38}
@@ -3596,10 +3440,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8455) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[39].Methods()
-}
-
 // Deprecated: Use Message8455.ProtoReflect.Type instead.
 func (*Message8455) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{39}
@@ -3663,10 +3503,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8475) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[40].Methods()
-}
-
 // Deprecated: Use Message8475.ProtoReflect.Type instead.
 func (*Message8475) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{40}
@@ -3714,10 +3550,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12559) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[41].Methods()
-}
-
 // Deprecated: Use Message12559.ProtoReflect.Type instead.
 func (*Message12559) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{41}
@@ -3754,10 +3586,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12817) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[42].Methods()
-}
-
 // Deprecated: Use Message12817.ProtoReflect.Type instead.
 func (*Message12817) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{42}
@@ -3821,10 +3649,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16480) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[43].Methods()
-}
-
 // Deprecated: Use Message16480.ProtoReflect.Type instead.
 func (*Message16480) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{43}
@@ -3950,10 +3774,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24317) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[44].Methods()
-}
-
 // Deprecated: Use Message24317.ProtoReflect.Type instead.
 func (*Message24317) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{44}
@@ -4196,10 +4016,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message33958_Message33959) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[45].Methods()
-}
-
 // Deprecated: Use Message33958_Message33959.ProtoReflect.Type instead.
 func (*Message33958_Message33959) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{8, 0}
@@ -4279,10 +4095,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13083_Message13084) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[46].Methods()
-}
-
 // Deprecated: Use Message13083_Message13084.ProtoReflect.Type instead.
 func (*Message13083_Message13084) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{12, 0}
@@ -4344,10 +4156,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13083_Message13085) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[47].Methods()
-}
-
 // Deprecated: Use Message13083_Message13085.ProtoReflect.Type instead.
 func (*Message13083_Message13085) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{12, 1}
@@ -4381,10 +4189,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13083_Message13086) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[48].Methods()
-}
-
 // Deprecated: Use Message13083_Message13086.ProtoReflect.Type instead.
 func (*Message13083_Message13086) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{12, 2}
@@ -4418,10 +4222,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13083_Message13087) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[49].Methods()
-}
-
 // Deprecated: Use Message13083_Message13087.ProtoReflect.Type instead.
 func (*Message13083_Message13087) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{12, 3}
@@ -4457,10 +4257,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13088_Message13089) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[50].Methods()
-}
-
 // Deprecated: Use Message13088_Message13089.ProtoReflect.Type instead.
 func (*Message13088_Message13089) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{13, 0}
@@ -4510,10 +4306,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message18253_Message18254) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[51].Methods()
-}
-
 // Deprecated: Use Message18253_Message18254.ProtoReflect.Type instead.
 func (*Message18253_Message18254) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{18, 0}
@@ -4561,10 +4353,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16816_Message16817) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[52].Methods()
-}
-
 // Deprecated: Use Message16816_Message16817.ProtoReflect.Type instead.
 func (*Message16816_Message16817) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{20, 0}
@@ -4598,10 +4386,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16816_Message16818) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_4_proto_msgTypes[53].Methods()
-}
-
 // Deprecated: Use Message16816_Message16818.ProtoReflect.Type instead.
 func (*Message16816_Message16818) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_4_proto_rawDescGZIP(), []int{20, 1}
diff --git a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_5.pb.go b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_5.pb.go
index b8391f5..9cf0fa1 100644
--- a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_5.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_5.pb.go
@@ -45,10 +45,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24377) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message24377.ProtoReflect.Type instead.
 func (*Message24377) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{0}
@@ -82,10 +78,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24378) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message24378.ProtoReflect.Type instead.
 func (*Message24378) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{1}
@@ -124,10 +116,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24400) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message24400.ProtoReflect.Type instead.
 func (*Message24400) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{2}
@@ -196,10 +184,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24380) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message24380.ProtoReflect.Type instead.
 func (*Message24380) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{3}
@@ -233,10 +217,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24381) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message24381.ProtoReflect.Type instead.
 func (*Message24381) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{4}
@@ -274,10 +254,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message719) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message719.ProtoReflect.Type instead.
 func (*Message719) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{5}
@@ -349,10 +325,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message728) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message728.ProtoReflect.Type instead.
 func (*Message728) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{6}
@@ -467,10 +439,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message704) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use Message704.ProtoReflect.Type instead.
 func (*Message704) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{7}
@@ -590,10 +558,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message697) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use Message697.ProtoReflect.Type instead.
 func (*Message697) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{8}
@@ -890,10 +854,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message0) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Message0.ProtoReflect.Type instead.
 func (*Message0) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{9}
@@ -938,10 +898,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6578) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use Message6578.ProtoReflect.Type instead.
 func (*Message6578) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{10}
@@ -992,10 +948,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6024) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use Message6024.ProtoReflect.Type instead.
 func (*Message6024) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{11}
@@ -1052,10 +1004,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6052) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use Message6052.ProtoReflect.Type instead.
 func (*Message6052) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{12}
@@ -1105,10 +1053,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6054) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use Message6054.ProtoReflect.Type instead.
 func (*Message6054) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{13}
@@ -1159,10 +1103,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10573) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use Message10573.ProtoReflect.Type instead.
 func (*Message10573) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{14}
@@ -1221,10 +1161,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10824) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use Message10824.ProtoReflect.Type instead.
 func (*Message10824) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{15}
@@ -1278,10 +1214,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10582) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use Message10582.ProtoReflect.Type instead.
 func (*Message10582) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{16}
@@ -1428,10 +1360,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10155) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use Message10155.ProtoReflect.Type instead.
 func (*Message10155) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{17}
@@ -1970,10 +1898,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11866) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use Message11866.ProtoReflect.Type instead.
 func (*Message11866) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{18}
@@ -2051,10 +1975,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10469) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use Message10469.ProtoReflect.Type instead.
 func (*Message10469) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{19}
@@ -2153,10 +2073,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10818) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use Message10818.ProtoReflect.Type instead.
 func (*Message10818) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{20}
@@ -2227,10 +2143,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10773) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[21].Methods()
-}
-
 // Deprecated: Use Message10773.ProtoReflect.Type instead.
 func (*Message10773) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{21}
@@ -2429,10 +2341,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13145) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use Message13145.ProtoReflect.Type instead.
 func (*Message13145) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{22}
@@ -2496,10 +2404,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message16686) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use Message16686.ProtoReflect.Type instead.
 func (*Message16686) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{23}
@@ -2535,10 +2439,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12796) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use Message12796.ProtoReflect.Type instead.
 func (*Message12796) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{24}
@@ -2586,10 +2486,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6722) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use Message6722.ProtoReflect.Type instead.
 func (*Message6722) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{25}
@@ -2623,10 +2519,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6727) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[26].Methods()
-}
-
 // Deprecated: Use Message6727.ProtoReflect.Type instead.
 func (*Message6727) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{26}
@@ -2660,10 +2552,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6724) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[27].Methods()
-}
-
 // Deprecated: Use Message6724.ProtoReflect.Type instead.
 func (*Message6724) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{27}
@@ -2697,10 +2585,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6735) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[28].Methods()
-}
-
 // Deprecated: Use Message6735.ProtoReflect.Type instead.
 func (*Message6735) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{28}
@@ -2736,10 +2620,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8183) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[29].Methods()
-}
-
 // Deprecated: Use Message8183.ProtoReflect.Type instead.
 func (*Message8183) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{29}
@@ -2799,10 +2679,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8301) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[30].Methods()
-}
-
 // Deprecated: Use Message8301.ProtoReflect.Type instead.
 func (*Message8301) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{30}
@@ -2922,10 +2798,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8456) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[31].Methods()
-}
-
 // Deprecated: Use Message8456.ProtoReflect.Type instead.
 func (*Message8456) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{31}
@@ -2981,10 +2853,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8302) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[32].Methods()
-}
-
 // Deprecated: Use Message8302.ProtoReflect.Type instead.
 func (*Message8302) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{32}
@@ -3174,10 +3042,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8457) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[33].Methods()
-}
-
 // Deprecated: Use Message8457.ProtoReflect.Type instead.
 func (*Message8457) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{33}
@@ -3218,10 +3082,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8449) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[34].Methods()
-}
-
 // Deprecated: Use Message8449.ProtoReflect.Type instead.
 func (*Message8449) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{34}
@@ -3307,10 +3167,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13358) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[35].Methods()
-}
-
 // Deprecated: Use Message13358.ProtoReflect.Type instead.
 func (*Message13358) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{35}
@@ -3369,10 +3225,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13912) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[36].Methods()
-}
-
 // Deprecated: Use Message13912.ProtoReflect.Type instead.
 func (*Message13912) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{36}
@@ -3437,10 +3289,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24316) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[37].Methods()
-}
-
 // Deprecated: Use Message24316.ProtoReflect.Type instead.
 func (*Message24316) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{37}
@@ -3501,10 +3349,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24312) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[38].Methods()
-}
-
 // Deprecated: Use Message24312.ProtoReflect.Type instead.
 func (*Message24312) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{38}
@@ -3590,10 +3434,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24313) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[39].Methods()
-}
-
 // Deprecated: Use Message24313.ProtoReflect.Type instead.
 func (*Message24313) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{39}
@@ -3700,10 +3540,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message24315) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[40].Methods()
-}
-
 // Deprecated: Use Message24315.ProtoReflect.Type instead.
 func (*Message24315) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{40}
@@ -3762,10 +3598,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message716) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[41].Methods()
-}
-
 // Deprecated: Use Message716.ProtoReflect.Type instead.
 func (*Message716) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{41}
@@ -3830,10 +3662,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message718) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[42].Methods()
-}
-
 // Deprecated: Use Message718.ProtoReflect.Type instead.
 func (*Message718) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{42}
@@ -3893,10 +3721,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message703) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[43].Methods()
-}
-
 // Deprecated: Use Message703.ProtoReflect.Type instead.
 func (*Message703) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{43}
@@ -3978,10 +3802,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message715) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[44].Methods()
-}
-
 // Deprecated: Use Message715.ProtoReflect.Type instead.
 func (*Message715) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{44}
@@ -4108,10 +3928,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message700) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[45].Methods()
-}
-
 // Deprecated: Use Message700.ProtoReflect.Type instead.
 func (*Message700) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{45}
@@ -4161,10 +3977,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message699) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[46].Methods()
-}
-
 // Deprecated: Use Message699.ProtoReflect.Type instead.
 func (*Message699) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{46}
@@ -4220,10 +4032,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message698) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[47].Methods()
-}
-
 // Deprecated: Use Message698.ProtoReflect.Type instead.
 func (*Message698) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{47}
@@ -4317,10 +4125,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10155_Message10156) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_5_proto_msgTypes[48].Methods()
-}
-
 // Deprecated: Use Message10155_Message10156.ProtoReflect.Type instead.
 func (*Message10155_Message10156) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_5_proto_rawDescGZIP(), []int{17, 0}
diff --git a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_6.pb.go b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_6.pb.go
index 3fd2b21..27aa102 100644
--- a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_6.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_6.pb.go
@@ -45,10 +45,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10576) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message10576.ProtoReflect.Type instead.
 func (*Message10576) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{0}
@@ -84,10 +80,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10154) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message10154.ProtoReflect.Type instead.
 func (*Message10154) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{1}
@@ -197,10 +189,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8944) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message8944.ProtoReflect.Type instead.
 func (*Message8944) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{2}
@@ -695,10 +683,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9182) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message9182.ProtoReflect.Type instead.
 func (*Message9182) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{3}
@@ -929,10 +913,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9160) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message9160.ProtoReflect.Type instead.
 func (*Message9160) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{4}
@@ -981,10 +961,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9242) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message9242.ProtoReflect.Type instead.
 func (*Message9242) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{5}
@@ -1026,10 +1002,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8890) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message8890.ProtoReflect.Type instead.
 func (*Message8890) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{6}
@@ -1071,10 +1043,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9123) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use Message9123.ProtoReflect.Type instead.
 func (*Message9123) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{7}
@@ -1119,10 +1087,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9628) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use Message9628.ProtoReflect.Type instead.
 func (*Message9628) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{8}
@@ -1249,10 +1213,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11014) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Message11014.ProtoReflect.Type instead.
 func (*Message11014) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{9}
@@ -1744,10 +1704,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10801) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use Message10801.ProtoReflect.Type instead.
 func (*Message10801) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{10}
@@ -1803,10 +1759,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10749) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use Message10749.ProtoReflect.Type instead.
 func (*Message10749) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{11}
@@ -1850,10 +1802,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8298) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use Message8298.ProtoReflect.Type instead.
 func (*Message8298) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{12}
@@ -1910,10 +1858,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8300) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use Message8300.ProtoReflect.Type instead.
 func (*Message8300) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{13}
@@ -1966,10 +1910,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8291) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use Message8291.ProtoReflect.Type instead.
 func (*Message8291) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{14}
@@ -2044,10 +1984,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8296) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use Message8296.ProtoReflect.Type instead.
 func (*Message8296) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{15}
@@ -2125,10 +2061,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7965) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use Message7965.ProtoReflect.Type instead.
 func (*Message7965) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{16}
@@ -2178,10 +2110,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8290) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use Message8290.ProtoReflect.Type instead.
 func (*Message8290) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{17}
@@ -2231,10 +2159,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message717) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use Message717.ProtoReflect.Type instead.
 func (*Message717) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{18}
@@ -2284,10 +2208,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message713) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use Message713.ProtoReflect.Type instead.
 func (*Message713) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{19}
@@ -2342,10 +2262,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message705) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use Message705.ProtoReflect.Type instead.
 func (*Message705) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{20}
@@ -2433,10 +2349,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message709) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[21].Methods()
-}
-
 // Deprecated: Use Message709.ProtoReflect.Type instead.
 func (*Message709) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{21}
@@ -2507,10 +2419,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message702) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use Message702.ProtoReflect.Type instead.
 func (*Message702) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{22}
@@ -2563,10 +2471,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message714) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use Message714.ProtoReflect.Type instead.
 func (*Message714) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{23}
@@ -2640,10 +2544,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message710) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use Message710.ProtoReflect.Type instead.
 func (*Message710) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{24}
@@ -2716,10 +2616,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message706) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use Message706.ProtoReflect.Type instead.
 func (*Message706) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{25}
@@ -2786,10 +2682,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message707) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[26].Methods()
-}
-
 // Deprecated: Use Message707.ProtoReflect.Type instead.
 func (*Message707) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{26}
@@ -2862,10 +2754,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message711) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[27].Methods()
-}
-
 // Deprecated: Use Message711.ProtoReflect.Type instead.
 func (*Message711) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{27}
@@ -2936,10 +2824,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message712) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[28].Methods()
-}
-
 // Deprecated: Use Message712.ProtoReflect.Type instead.
 func (*Message712) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{28}
@@ -3058,10 +2942,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8939) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[29].Methods()
-}
-
 // Deprecated: Use Message8939.ProtoReflect.Type instead.
 func (*Message8939) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{29}
@@ -3250,10 +3130,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9181) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[30].Methods()
-}
-
 // Deprecated: Use Message9181.ProtoReflect.Type instead.
 func (*Message9181) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{30}
@@ -3297,10 +3173,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9164) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[31].Methods()
-}
-
 // Deprecated: Use Message9164.ProtoReflect.Type instead.
 func (*Message9164) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{31}
@@ -3357,10 +3229,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9165) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[32].Methods()
-}
-
 // Deprecated: Use Message9165.ProtoReflect.Type instead.
 func (*Message9165) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{32}
@@ -3410,10 +3278,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9166) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[33].Methods()
-}
-
 // Deprecated: Use Message9166.ProtoReflect.Type instead.
 func (*Message9166) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{33}
@@ -3469,10 +3333,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9151) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[34].Methods()
-}
-
 // Deprecated: Use Message9151.ProtoReflect.Type instead.
 func (*Message9151) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{34}
@@ -3566,10 +3426,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8888) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[35].Methods()
-}
-
 // Deprecated: Use Message8888.ProtoReflect.Type instead.
 func (*Message8888) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{35}
@@ -3636,10 +3492,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message9627) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[36].Methods()
-}
-
 // Deprecated: Use Message9627.ProtoReflect.Type instead.
 func (*Message9627) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{36}
@@ -3708,10 +3560,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11020) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[37].Methods()
-}
-
 // Deprecated: Use Message11020.ProtoReflect.Type instead.
 func (*Message11020) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{37}
@@ -3768,10 +3616,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11013) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[38].Methods()
-}
-
 // Deprecated: Use Message11013.ProtoReflect.Type instead.
 func (*Message11013) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{38}
@@ -3966,10 +3810,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8939_Message8940) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[39].Methods()
-}
-
 // Deprecated: Use Message8939_Message8940.ProtoReflect.Type instead.
 func (*Message8939_Message8940) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{29, 0}
@@ -4009,10 +3849,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8939_Message8941) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[40].Methods()
-}
-
 // Deprecated: Use Message8939_Message8941.ProtoReflect.Type instead.
 func (*Message8939_Message8941) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{29, 1}
@@ -4094,10 +3930,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8939_Message8943) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_6_proto_msgTypes[41].Methods()
-}
-
 // Deprecated: Use Message8939_Message8943.ProtoReflect.Type instead.
 func (*Message8939_Message8943) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_6_proto_rawDescGZIP(), []int{29, 2}
diff --git a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_7.pb.go b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_7.pb.go
index 134ac4e..e326424 100644
--- a/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_7.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message3/benchmark_message3_7.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -45,10 +44,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11018) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_7_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message11018.ProtoReflect.Type instead.
 func (*Message11018) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_7_proto_rawDescGZIP(), []int{0}
@@ -86,10 +81,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10800) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_7_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message10800.ProtoReflect.Type instead.
 func (*Message10800) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_7_proto_rawDescGZIP(), []int{1}
@@ -151,10 +142,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10802) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_7_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message10802.ProtoReflect.Type instead.
 func (*Message10802) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_7_proto_rawDescGZIP(), []int{2}
@@ -192,10 +179,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10748) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_7_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message10748.ProtoReflect.Type instead.
 func (*Message10748) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_7_proto_rawDescGZIP(), []int{3}
@@ -259,10 +242,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7966) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_7_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message7966.ProtoReflect.Type instead.
 func (*Message7966) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_7_proto_rawDescGZIP(), []int{4}
@@ -316,10 +295,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message708) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_7_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message708.ProtoReflect.Type instead.
 func (*Message708) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_7_proto_rawDescGZIP(), []int{5}
@@ -395,10 +370,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8942) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_7_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message8942.ProtoReflect.Type instead.
 func (*Message8942) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_7_proto_rawDescGZIP(), []int{6}
@@ -434,10 +405,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11011) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_7_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use Message11011.ProtoReflect.Type instead.
 func (*Message11011) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_7_proto_rawDescGZIP(), []int{7}
@@ -485,10 +452,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *UnusedEmptyMessage) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_7_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use UnusedEmptyMessage.ProtoReflect.Type instead.
 func (*UnusedEmptyMessage) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_7_proto_rawDescGZIP(), []int{8}
@@ -523,10 +486,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message741) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message3_benchmark_message3_7_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Message741.ProtoReflect.Type instead.
 func (*Message741) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message3_benchmark_message3_7_proto_rawDescGZIP(), []int{9}
diff --git a/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4.pb.go b/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4.pb.go
index ba428a8..020d2fd 100644
--- a/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4.pb.go
@@ -61,10 +61,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *GoogleMessage4) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use GoogleMessage4.ProtoReflect.Type instead.
 func (*GoogleMessage4) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{0}
@@ -231,10 +227,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message37489) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message37489.ProtoReflect.Type instead.
 func (*Message37489) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{1}
@@ -417,10 +409,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7319) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message7319.ProtoReflect.Type instead.
 func (*Message7319) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{2}
@@ -477,10 +465,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12717) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message12717.ProtoReflect.Type instead.
 func (*Message12717) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{3}
@@ -581,10 +565,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message37331) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message37331.ProtoReflect.Type instead.
 func (*Message37331) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{4}
@@ -649,10 +629,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8815) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message8815.ProtoReflect.Type instead.
 func (*Message8815) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{5}
@@ -713,10 +689,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7330) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message7330.ProtoReflect.Type instead.
 func (*Message7330) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{6}
@@ -794,10 +766,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12960) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use Message12960.ProtoReflect.Type instead.
 func (*Message12960) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{7}
@@ -904,10 +872,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message176) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use Message176.ProtoReflect.Type instead.
 func (*Message176) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{8}
@@ -1357,10 +1321,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8817) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Message8817.ProtoReflect.Type instead.
 func (*Message8817) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{9}
@@ -1418,10 +1378,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8835) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use Message8835.ProtoReflect.Type instead.
 func (*Message8835) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{10}
@@ -1479,10 +1435,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message37333) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use Message37333.ProtoReflect.Type instead.
 func (*Message37333) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{11}
@@ -1539,10 +1491,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13000) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use Message13000.ProtoReflect.Type instead.
 func (*Message13000) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{12}
@@ -1594,10 +1542,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message37335) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use Message37335.ProtoReflect.Type instead.
 func (*Message37335) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{13}
@@ -1662,10 +1606,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8848) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use Message8848.ProtoReflect.Type instead.
 func (*Message8848) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{14}
@@ -1722,10 +1662,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message13035) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use Message13035.ProtoReflect.Type instead.
 func (*Message13035) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{15}
@@ -1775,10 +1711,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8856) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use Message8856.ProtoReflect.Type instead.
 func (*Message8856) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{16}
@@ -1832,10 +1764,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12908) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use Message12908.ProtoReflect.Type instead.
 func (*Message12908) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{17}
@@ -1914,10 +1842,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12910) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use Message12910.ProtoReflect.Type instead.
 func (*Message12910) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{18}
@@ -1983,10 +1907,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message37327) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use Message37327.ProtoReflect.Type instead.
 func (*Message37327) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{19}
@@ -2102,10 +2022,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message37329) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use Message37329.ProtoReflect.Type instead.
 func (*Message37329) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{20}
@@ -2179,10 +2095,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2517) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[21].Methods()
-}
-
 // Deprecated: Use Message2517.ProtoReflect.Type instead.
 func (*Message2517) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{21}
@@ -2255,10 +2167,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12748) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use Message12748.ProtoReflect.Type instead.
 func (*Message12748) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{22}
@@ -2321,10 +2229,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12687) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use Message12687.ProtoReflect.Type instead.
 func (*Message12687) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{23}
@@ -2368,10 +2272,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11948) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use Message11948.ProtoReflect.Type instead.
 func (*Message11948) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{24}
@@ -2427,10 +2327,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11976) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use Message11976.ProtoReflect.Type instead.
 func (*Message11976) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{25}
@@ -2473,10 +2369,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7320) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[26].Methods()
-}
-
 // Deprecated: Use Message7320.ProtoReflect.Type instead.
 func (*Message7320) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{26}
@@ -2528,10 +2420,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3069) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[27].Methods()
-}
-
 // Deprecated: Use Message3069.ProtoReflect.Type instead.
 func (*Message3069) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{27}
@@ -2596,10 +2484,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12948) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[28].Methods()
-}
-
 // Deprecated: Use Message12948.ProtoReflect.Type instead.
 func (*Message12948) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{28}
@@ -2647,10 +2531,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8768) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[29].Methods()
-}
-
 // Deprecated: Use Message8768.ProtoReflect.Type instead.
 func (*Message8768) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{29}
@@ -2740,10 +2620,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12979) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[30].Methods()
-}
-
 // Deprecated: Use Message12979.ProtoReflect.Type instead.
 func (*Message12979) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{30}
@@ -2851,10 +2727,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message37173) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[31].Methods()
-}
-
 // Deprecated: Use Message37173.ProtoReflect.Type instead.
 func (*Message37173) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{31}
@@ -3071,10 +2943,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12799) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[32].Methods()
-}
-
 // Deprecated: Use Message12799.ProtoReflect.Type instead.
 func (*Message12799) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{32}
@@ -3184,10 +3052,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12870) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[33].Methods()
-}
-
 // Deprecated: Use Message12870.ProtoReflect.Type instead.
 func (*Message12870) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{33}
@@ -3368,10 +3232,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3804) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[34].Methods()
-}
-
 // Deprecated: Use Message3804.ProtoReflect.Type instead.
 func (*Message3804) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{34}
@@ -3457,10 +3317,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12903) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[35].Methods()
-}
-
 // Deprecated: Use Message12903.ProtoReflect.Type instead.
 func (*Message12903) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{35}
@@ -3517,10 +3373,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message37326) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[36].Methods()
-}
-
 // Deprecated: Use Message37326.ProtoReflect.Type instead.
 func (*Message37326) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{36}
@@ -3599,10 +3451,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2356) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[37].Methods()
-}
-
 // Deprecated: Use Message2356.ProtoReflect.Type instead.
 func (*Message2356) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{37}
@@ -3854,10 +3702,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message0) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[38].Methods()
-}
-
 // Deprecated: Use Message0.ProtoReflect.Type instead.
 func (*Message0) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{38}
@@ -3903,10 +3747,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message971) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[39].Methods()
-}
-
 // Deprecated: Use Message971.ProtoReflect.Type instead.
 func (*Message971) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{39}
@@ -3961,10 +3801,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message176_Message178) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[40].Methods()
-}
-
 // Deprecated: Use Message176_Message178.ProtoReflect.Type instead.
 func (*Message176_Message178) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{8, 0}
@@ -4000,10 +3836,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3069_Message3070) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[41].Methods()
-}
-
 // Deprecated: Use Message3069_Message3070.ProtoReflect.Type instead.
 func (*Message3069_Message3070) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{27, 0}
@@ -4063,10 +3895,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2356_Message2357) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[42].Methods()
-}
-
 // Deprecated: Use Message2356_Message2357.ProtoReflect.Type instead.
 func (*Message2356_Message2357) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{37, 0}
@@ -4184,10 +4012,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2356_Message2358) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[43].Methods()
-}
-
 // Deprecated: Use Message2356_Message2358.ProtoReflect.Type instead.
 func (*Message2356_Message2358) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{37, 1}
@@ -4221,10 +4045,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2356_Message2359) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_proto_msgTypes[44].Methods()
-}
-
 // Deprecated: Use Message2356_Message2359.ProtoReflect.Type instead.
 func (*Message2356_Message2359) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_proto_rawDescGZIP(), []int{37, 2}
diff --git a/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4_1.pb.go b/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4_1.pb.go
index 2a68946..a6c3064 100644
--- a/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4_1.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4_1.pb.go
@@ -46,10 +46,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2463) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message2463.ProtoReflect.Type instead.
 func (*Message2463) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{0}
@@ -92,10 +88,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12686) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message12686.ProtoReflect.Type instead.
 func (*Message12686) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{1}
@@ -143,10 +135,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11949) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message11949.ProtoReflect.Type instead.
 func (*Message11949) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{2}
@@ -190,10 +178,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11975) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message11975.ProtoReflect.Type instead.
 func (*Message11975) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{3}
@@ -305,10 +289,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7287) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message7287.ProtoReflect.Type instead.
 func (*Message7287) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{4}
@@ -446,10 +426,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3061) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message3061.ProtoReflect.Type instead.
 func (*Message3061) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{5}
@@ -819,10 +795,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12949) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message12949.ProtoReflect.Type instead.
 func (*Message12949) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{6}
@@ -906,10 +878,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8572) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use Message8572.ProtoReflect.Type instead.
 func (*Message8572) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{7}
@@ -1298,10 +1266,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8774) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use Message8774.ProtoReflect.Type instead.
 func (*Message8774) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{8}
@@ -1381,10 +1345,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12776) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Message12776.ProtoReflect.Type instead.
 func (*Message12776) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{9}
@@ -1506,10 +1466,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12798) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use Message12798.ProtoReflect.Type instead.
 func (*Message12798) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{10}
@@ -1574,10 +1530,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12797) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use Message12797.ProtoReflect.Type instead.
 func (*Message12797) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{11}
@@ -1639,10 +1591,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12825) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use Message12825.ProtoReflect.Type instead.
 func (*Message12825) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{12}
@@ -1725,10 +1673,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8590) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use Message8590.ProtoReflect.Type instead.
 func (*Message8590) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{13}
@@ -1762,10 +1706,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8587) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use Message8587.ProtoReflect.Type instead.
 func (*Message8587) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{14}
@@ -1801,10 +1741,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message1374) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use Message1374.ProtoReflect.Type instead.
 func (*Message1374) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{15}
@@ -1854,10 +1790,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2462) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use Message2462.ProtoReflect.Type instead.
 func (*Message2462) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{16}
@@ -1912,10 +1844,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12685) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use Message12685.ProtoReflect.Type instead.
 func (*Message12685) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{17}
@@ -2005,10 +1933,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10320) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use Message10320.ProtoReflect.Type instead.
 func (*Message10320) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{18}
@@ -2094,10 +2018,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11947) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use Message11947.ProtoReflect.Type instead.
 func (*Message11947) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{19}
@@ -2154,10 +2074,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message11920) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use Message11920.ProtoReflect.Type instead.
 func (*Message11920) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{20}
@@ -2223,10 +2139,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6643) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[21].Methods()
-}
-
 // Deprecated: Use Message6643.ProtoReflect.Type instead.
 func (*Message6643) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{21}
@@ -2406,10 +2318,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6133) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use Message6133.ProtoReflect.Type instead.
 func (*Message6133) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{22}
@@ -2596,10 +2504,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6109) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use Message6109.ProtoReflect.Type instead.
 func (*Message6109) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{23}
@@ -2728,10 +2632,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3046) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use Message3046.ProtoReflect.Type instead.
 func (*Message3046) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{24}
@@ -2782,10 +2682,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3060) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use Message3060.ProtoReflect.Type instead.
 func (*Message3060) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{25}
@@ -2842,10 +2738,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3041) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[26].Methods()
-}
-
 // Deprecated: Use Message3041.ProtoReflect.Type instead.
 func (*Message3041) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{26}
@@ -2898,10 +2790,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3040) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[27].Methods()
-}
-
 // Deprecated: Use Message3040.ProtoReflect.Type instead.
 func (*Message3040) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{27}
@@ -2976,10 +2864,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3050) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[28].Methods()
-}
-
 // Deprecated: Use Message3050.ProtoReflect.Type instead.
 func (*Message3050) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{28}
@@ -3062,10 +2946,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7905) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[29].Methods()
-}
-
 // Deprecated: Use Message7905.ProtoReflect.Type instead.
 func (*Message7905) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{29}
@@ -3149,10 +3029,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3886) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[30].Methods()
-}
-
 // Deprecated: Use Message3886.ProtoReflect.Type instead.
 func (*Message3886) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{30}
@@ -3199,10 +3075,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7864) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[31].Methods()
-}
-
 // Deprecated: Use Message7864.ProtoReflect.Type instead.
 func (*Message7864) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{31}
@@ -3279,10 +3151,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3922) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[32].Methods()
-}
-
 // Deprecated: Use Message3922.ProtoReflect.Type instead.
 func (*Message3922) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{32}
@@ -3332,10 +3200,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3052) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[33].Methods()
-}
-
 // Deprecated: Use Message3052.ProtoReflect.Type instead.
 func (*Message3052) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{33}
@@ -3432,10 +3296,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message8575) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[34].Methods()
-}
-
 // Deprecated: Use Message8575.ProtoReflect.Type instead.
 func (*Message8575) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{34}
@@ -3485,10 +3345,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7843) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[35].Methods()
-}
-
 // Deprecated: Use Message7843.ProtoReflect.Type instead.
 func (*Message7843) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{35}
@@ -3635,10 +3491,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3919) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[36].Methods()
-}
-
 // Deprecated: Use Message3919.ProtoReflect.Type instead.
 func (*Message3919) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{36}
@@ -3699,10 +3551,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7929) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[37].Methods()
-}
-
 // Deprecated: Use Message7929.ProtoReflect.Type instead.
 func (*Message7929) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{37}
@@ -3879,10 +3727,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3061_Message3062) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[38].Methods()
-}
-
 // Deprecated: Use Message3061_Message3062.ProtoReflect.Type instead.
 func (*Message3061_Message3062) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{5, 0}
@@ -3941,10 +3785,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3061_Message3063) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[39].Methods()
-}
-
 // Deprecated: Use Message3061_Message3063.ProtoReflect.Type instead.
 func (*Message3061_Message3063) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{5, 1}
@@ -4025,10 +3865,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3061_Message3064) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[40].Methods()
-}
-
 // Deprecated: Use Message3061_Message3064.ProtoReflect.Type instead.
 func (*Message3061_Message3064) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{5, 2}
@@ -4195,10 +4031,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3061_Message3065) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[41].Methods()
-}
-
 // Deprecated: Use Message3061_Message3065.ProtoReflect.Type instead.
 func (*Message3061_Message3065) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{5, 3}
@@ -4240,10 +4072,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3061_Message3066) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[42].Methods()
-}
-
 // Deprecated: Use Message3061_Message3066.ProtoReflect.Type instead.
 func (*Message3061_Message3066) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{5, 4}
@@ -4337,10 +4165,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3886_Message3887) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_1_proto_msgTypes[43].Methods()
-}
-
 // Deprecated: Use Message3886_Message3887.ProtoReflect.Type instead.
 func (*Message3886_Message3887) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_1_proto_rawDescGZIP(), []int{30, 0}
diff --git a/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4_2.pb.go b/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4_2.pb.go
index b77e245..ba2380f 100644
--- a/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4_2.pb.go
+++ b/internal/testprotos/benchmarks/datasets/google_message4/benchmark_message4_2.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -51,10 +50,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12774) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message12774.ProtoReflect.Type instead.
 func (*Message12774) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{0}
@@ -132,10 +127,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12796) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message12796.ProtoReflect.Type instead.
 func (*Message12796) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{1}
@@ -188,10 +179,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12821) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message12821.ProtoReflect.Type instead.
 func (*Message12821) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{2}
@@ -268,10 +255,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12820) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message12820.ProtoReflect.Type instead.
 func (*Message12820) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{3}
@@ -367,10 +350,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12819) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Message12819.ProtoReflect.Type instead.
 func (*Message12819) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{4}
@@ -451,10 +430,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12818) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use Message12818.ProtoReflect.Type instead.
 func (*Message12818) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{5}
@@ -530,10 +505,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message10319) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use Message10319.ProtoReflect.Type instead.
 func (*Message10319) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{6}
@@ -618,10 +589,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6578) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use Message6578.ProtoReflect.Type instead.
 func (*Message6578) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{7}
@@ -688,10 +655,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6126) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use Message6126.ProtoReflect.Type instead.
 func (*Message6126) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{8}
@@ -864,10 +827,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message5881) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use Message5881.ProtoReflect.Type instead.
 func (*Message5881) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{9}
@@ -943,10 +902,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6110) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use Message6110.ProtoReflect.Type instead.
 func (*Message6110) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{10}
@@ -986,10 +941,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6107) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use Message6107.ProtoReflect.Type instead.
 func (*Message6107) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{11}
@@ -1067,10 +1018,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6129) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use Message6129.ProtoReflect.Type instead.
 func (*Message6129) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{12}
@@ -1168,10 +1115,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message5908) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use Message5908.ProtoReflect.Type instead.
 func (*Message5908) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{13}
@@ -1561,10 +1504,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3850) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use Message3850.ProtoReflect.Type instead.
 func (*Message3850) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{14}
@@ -1640,10 +1579,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7865) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use Message7865.ProtoReflect.Type instead.
 func (*Message7865) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{15}
@@ -1684,10 +1619,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7511) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use Message7511.ProtoReflect.Type instead.
 func (*Message7511) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{16}
@@ -1770,10 +1701,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3920) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use Message3920.ProtoReflect.Type instead.
 func (*Message3920) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{17}
@@ -1809,10 +1736,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7928) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use Message7928.ProtoReflect.Type instead.
 func (*Message7928) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{18}
@@ -1864,10 +1787,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7921) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use Message7921.ProtoReflect.Type instead.
 func (*Message7921) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{19}
@@ -1931,10 +1850,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7920) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use Message7920.ProtoReflect.Type instead.
 func (*Message7920) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{20}
@@ -1985,10 +1900,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message7919) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[21].Methods()
-}
-
 // Deprecated: Use Message7919.ProtoReflect.Type instead.
 func (*Message7919) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{21}
@@ -2046,10 +1957,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message12817) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use Message12817.ProtoReflect.Type instead.
 func (*Message12817) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{22}
@@ -2106,10 +2013,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6054) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use Message6054.ProtoReflect.Type instead.
 func (*Message6054) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{23}
@@ -2157,10 +2060,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6127) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use Message6127.ProtoReflect.Type instead.
 func (*Message6127) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{24}
@@ -2196,10 +2095,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6052) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use Message6052.ProtoReflect.Type instead.
 func (*Message6052) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{25}
@@ -2250,10 +2145,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6024) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[26].Methods()
-}
-
 // Deprecated: Use Message6024.ProtoReflect.Type instead.
 func (*Message6024) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{26}
@@ -2312,10 +2203,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message5861) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[27].Methods()
-}
-
 // Deprecated: Use Message5861.ProtoReflect.Type instead.
 func (*Message5861) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{27}
@@ -2378,10 +2265,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message5880) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[28].Methods()
-}
-
 // Deprecated: Use Message5880.ProtoReflect.Type instead.
 func (*Message5880) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{28}
@@ -2428,10 +2311,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message5867) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[29].Methods()
-}
-
 // Deprecated: Use Message5867.ProtoReflect.Type instead.
 func (*Message5867) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{29}
@@ -2511,10 +2390,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message4016) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[30].Methods()
-}
-
 // Deprecated: Use Message4016.ProtoReflect.Type instead.
 func (*Message4016) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{30}
@@ -2576,10 +2451,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message6108) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[31].Methods()
-}
-
 // Deprecated: Use Message6108.ProtoReflect.Type instead.
 func (*Message6108) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{31}
@@ -2617,10 +2488,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message5907) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[32].Methods()
-}
-
 // Deprecated: Use Message5907.ProtoReflect.Type instead.
 func (*Message5907) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{32}
@@ -2682,10 +2549,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *UnusedEmptyMessage) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[33].Methods()
-}
-
 // Deprecated: Use UnusedEmptyMessage.ProtoReflect.Type instead.
 func (*UnusedEmptyMessage) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{33}
@@ -2721,10 +2584,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message5903) XXX_Methods() *protoiface.Methods {
-	return file_datasets_google_message4_benchmark_message4_2_proto_msgTypes[34].Methods()
-}
-
 // Deprecated: Use Message5903.ProtoReflect.Type instead.
 func (*Message5903) Descriptor() ([]byte, []int) {
 	return file_datasets_google_message4_benchmark_message4_2_proto_rawDescGZIP(), []int{34}
diff --git a/internal/testprotos/conformance/conformance.pb.go b/internal/testprotos/conformance/conformance.pb.go
index 9ca9562..85da0fb 100644
--- a/internal/testprotos/conformance/conformance.pb.go
+++ b/internal/testprotos/conformance/conformance.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -159,10 +158,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FailureSet) XXX_Methods() *protoiface.Methods {
-	return file_conformance_conformance_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use FailureSet.ProtoReflect.Type instead.
 func (*FailureSet) Descriptor() ([]byte, []int) {
 	return file_conformance_conformance_proto_rawDescGZIP(), []int{0}
@@ -235,10 +230,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ConformanceRequest) XXX_Methods() *protoiface.Methods {
-	return file_conformance_conformance_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use ConformanceRequest.ProtoReflect.Type instead.
 func (*ConformanceRequest) Descriptor() ([]byte, []int) {
 	return file_conformance_conformance_proto_rawDescGZIP(), []int{1}
@@ -396,10 +387,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ConformanceResponse) XXX_Methods() *protoiface.Methods {
-	return file_conformance_conformance_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use ConformanceResponse.ProtoReflect.Type instead.
 func (*ConformanceResponse) Descriptor() ([]byte, []int) {
 	return file_conformance_conformance_proto_rawDescGZIP(), []int{2}
@@ -551,10 +538,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *JspbEncodingConfig) XXX_Methods() *protoiface.Methods {
-	return file_conformance_conformance_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use JspbEncodingConfig.ProtoReflect.Type instead.
 func (*JspbEncodingConfig) Descriptor() ([]byte, []int) {
 	return file_conformance_conformance_proto_rawDescGZIP(), []int{3}
diff --git a/internal/testprotos/conformance/test_messages_proto2.pb.go b/internal/testprotos/conformance/test_messages_proto2.pb.go
index f4bf2c8..4cfebae 100644
--- a/internal/testprotos/conformance/test_messages_proto2.pb.go
+++ b/internal/testprotos/conformance/test_messages_proto2.pb.go
@@ -260,10 +260,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypesProto2) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_test_messages_proto2_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use TestAllTypesProto2.ProtoReflect.Type instead.
 func (*TestAllTypesProto2) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_test_messages_proto2_proto_rawDescGZIP(), []int{0}
@@ -1002,10 +998,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ForeignMessageProto2) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_test_messages_proto2_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use ForeignMessageProto2.ProtoReflect.Type instead.
 func (*ForeignMessageProto2) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_test_messages_proto2_proto_rawDescGZIP(), []int{1}
@@ -1048,10 +1040,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypesProto2_NestedMessage) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_test_messages_proto2_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use TestAllTypesProto2_NestedMessage.ProtoReflect.Type instead.
 func (*TestAllTypesProto2_NestedMessage) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_test_messages_proto2_proto_rawDescGZIP(), []int{0, 0}
@@ -1102,10 +1090,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypesProto2_Data) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_test_messages_proto2_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use TestAllTypesProto2_Data.ProtoReflect.Type instead.
 func (*TestAllTypesProto2_Data) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_test_messages_proto2_proto_rawDescGZIP(), []int{0, 20}
@@ -1155,10 +1139,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypesProto2_MessageSetCorrect) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_test_messages_proto2_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use TestAllTypesProto2_MessageSetCorrect.ProtoReflect.Type instead.
 func (*TestAllTypesProto2_MessageSetCorrect) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_test_messages_proto2_proto_rawDescGZIP(), []int{0, 21}
@@ -1202,10 +1182,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypesProto2_MessageSetCorrectExtension1) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_test_messages_proto2_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use TestAllTypesProto2_MessageSetCorrectExtension1.ProtoReflect.Type instead.
 func (*TestAllTypesProto2_MessageSetCorrectExtension1) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_test_messages_proto2_proto_rawDescGZIP(), []int{0, 22}
@@ -1247,10 +1223,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypesProto2_MessageSetCorrectExtension2) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_test_messages_proto2_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use TestAllTypesProto2_MessageSetCorrectExtension2.ProtoReflect.Type instead.
 func (*TestAllTypesProto2_MessageSetCorrectExtension2) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_test_messages_proto2_proto_rawDescGZIP(), []int{0, 23}
diff --git a/internal/testprotos/conformance/test_messages_proto3.pb.go b/internal/testprotos/conformance/test_messages_proto3.pb.go
index 894404c..2462913 100644
--- a/internal/testprotos/conformance/test_messages_proto3.pb.go
+++ b/internal/testprotos/conformance/test_messages_proto3.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	anypb "google.golang.org/protobuf/types/known/anypb"
 	durationpb "google.golang.org/protobuf/types/known/durationpb"
@@ -329,10 +328,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypesProto3) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_test_messages_proto3_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use TestAllTypesProto3.ProtoReflect.Type instead.
 func (*TestAllTypesProto3) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_test_messages_proto3_proto_rawDescGZIP(), []int{0}
@@ -1279,10 +1274,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ForeignMessage) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_test_messages_proto3_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use ForeignMessage.ProtoReflect.Type instead.
 func (*ForeignMessage) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_test_messages_proto3_proto_rawDescGZIP(), []int{1}
@@ -1325,10 +1316,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypesProto3_NestedMessage) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_test_messages_proto3_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use TestAllTypesProto3_NestedMessage.ProtoReflect.Type instead.
 func (*TestAllTypesProto3_NestedMessage) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_test_messages_proto3_proto_rawDescGZIP(), []int{0, 0}
diff --git a/internal/testprotos/irregular/test.pb.go b/internal/testprotos/irregular/test.pb.go
index 6a26b23..efe5728 100644
--- a/internal/testprotos/irregular/test.pb.go
+++ b/internal/testprotos/irregular/test.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -52,10 +51,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message) XXX_Methods() *protoiface.Methods {
-	return file_irregular_test_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message.ProtoReflect.Type instead.
 func (*Message) Descriptor() ([]byte, []int) {
 	return file_irregular_test_proto_rawDescGZIP(), []int{0}
diff --git a/internal/testprotos/legacy/legacy.pb.go b/internal/testprotos/legacy/legacy.pb.go
index ff29662..0cce88d 100644
--- a/internal/testprotos/legacy/legacy.pb.go
+++ b/internal/testprotos/legacy/legacy.pb.go
@@ -17,7 +17,6 @@
 	proto3_v1_2 "google.golang.org/protobuf/internal/testprotos/legacy/proto3.v1.2.0-20180814-aa810b61"
 	proto3_v1_21 "google.golang.org/protobuf/internal/testprotos/legacy/proto3.v1.2.1-20181126-8d0c54c1"
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -69,10 +68,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Legacy) XXX_Methods() *protoiface.Methods {
-	return file_legacy_legacy_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Legacy.ProtoReflect.Type instead.
 func (*Legacy) Descriptor() ([]byte, []int) {
 	return file_legacy_legacy_proto_rawDescGZIP(), []int{0}
diff --git a/internal/testprotos/test/test.pb.go b/internal/testprotos/test/test.pb.go
index da7661f..83d9cdc 100644
--- a/internal/testprotos/test/test.pb.go
+++ b/internal/testprotos/test/test.pb.go
@@ -339,10 +339,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypes) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use TestAllTypes.ProtoReflect.Type instead.
 func (*TestAllTypes) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{0}
@@ -1075,10 +1071,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestDeprecatedMessage) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use TestDeprecatedMessage.ProtoReflect.Type instead.
 func (*TestDeprecatedMessage) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{1}
@@ -1147,10 +1139,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ForeignMessage) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use ForeignMessage.ProtoReflect.Type instead.
 func (*ForeignMessage) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{2}
@@ -1198,10 +1186,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestReservedFields) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use TestReservedFields.ProtoReflect.Type instead.
 func (*TestReservedFields) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{3}
@@ -1236,10 +1220,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllExtensions) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use TestAllExtensions.ProtoReflect.Type instead.
 func (*TestAllExtensions) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{4}
@@ -1283,10 +1263,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *OptionalGroupExtension) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use OptionalGroupExtension.ProtoReflect.Type instead.
 func (*OptionalGroupExtension) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{5}
@@ -1328,10 +1304,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *RepeatedGroupExtension) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use RepeatedGroupExtension.ProtoReflect.Type instead.
 func (*RepeatedGroupExtension) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{6}
@@ -1372,10 +1344,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestNestedExtension) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use TestNestedExtension.ProtoReflect.Type instead.
 func (*TestNestedExtension) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{7}
@@ -1410,10 +1378,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestRequired) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use TestRequired.ProtoReflect.Type instead.
 func (*TestRequired) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{8}
@@ -1460,10 +1424,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestRequiredForeign) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use TestRequiredForeign.ProtoReflect.Type instead.
 func (*TestRequiredForeign) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{9}
@@ -1544,10 +1504,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestRequiredGroupFields) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use TestRequiredGroupFields.ProtoReflect.Type instead.
 func (*TestRequiredGroupFields) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{10}
@@ -1596,10 +1552,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestWeak) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use TestWeak.ProtoReflect.Type instead.
 func (*TestWeak) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{11}
@@ -1654,10 +1606,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestPackedTypes) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use TestPackedTypes.ProtoReflect.Type instead.
 func (*TestPackedTypes) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{12}
@@ -1803,10 +1751,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestUnpackedTypes) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use TestUnpackedTypes.ProtoReflect.Type instead.
 func (*TestUnpackedTypes) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{13}
@@ -1939,10 +1883,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestPackedExtensions) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use TestPackedExtensions.ProtoReflect.Type instead.
 func (*TestPackedExtensions) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{14}
@@ -1986,10 +1926,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestUnpackedExtensions) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use TestUnpackedExtensions.ProtoReflect.Type instead.
 func (*TestUnpackedExtensions) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{15}
@@ -2033,10 +1969,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FooRequest) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use FooRequest.ProtoReflect.Type instead.
 func (*FooRequest) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{16}
@@ -2070,10 +2002,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FooResponse) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use FooResponse.ProtoReflect.Type instead.
 func (*FooResponse) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{17}
@@ -2109,10 +2037,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypes_NestedMessage) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use TestAllTypes_NestedMessage.ProtoReflect.Type instead.
 func (*TestAllTypes_NestedMessage) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{0, 0}
@@ -2161,10 +2085,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypes_OptionalGroup) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use TestAllTypes_OptionalGroup.ProtoReflect.Type instead.
 func (*TestAllTypes_OptionalGroup) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{0, 1}
@@ -2206,10 +2126,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypes_RepeatedGroup) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use TestAllTypes_RepeatedGroup.ProtoReflect.Type instead.
 func (*TestAllTypes_RepeatedGroup) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{0, 2}
@@ -2251,10 +2167,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestRequiredGroupFields_OptionalGroup) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[39].Methods()
-}
-
 // Deprecated: Use TestRequiredGroupFields_OptionalGroup.ProtoReflect.Type instead.
 func (*TestRequiredGroupFields_OptionalGroup) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{10, 0}
@@ -2296,10 +2208,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestRequiredGroupFields_RepeatedGroup) XXX_Methods() *protoiface.Methods {
-	return file_test_test_proto_msgTypes[40].Methods()
-}
-
 // Deprecated: Use TestRequiredGroupFields_RepeatedGroup.ProtoReflect.Type instead.
 func (*TestRequiredGroupFields_RepeatedGroup) Descriptor() ([]byte, []int) {
 	return file_test_test_proto_rawDescGZIP(), []int{10, 1}
diff --git a/internal/testprotos/test/test_import.pb.go b/internal/testprotos/test/test_import.pb.go
index 948ba78..28c6dcc 100644
--- a/internal/testprotos/test/test_import.pb.go
+++ b/internal/testprotos/test/test_import.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -93,10 +92,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ImportMessage) XXX_Methods() *protoiface.Methods {
-	return file_test_test_import_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use ImportMessage.ProtoReflect.Type instead.
 func (*ImportMessage) Descriptor() ([]byte, []int) {
 	return file_test_test_import_proto_rawDescGZIP(), []int{0}
diff --git a/internal/testprotos/test/test_public.pb.go b/internal/testprotos/test/test_public.pb.go
index edef5f9..a6b2aa1 100644
--- a/internal/testprotos/test/test_public.pb.go
+++ b/internal/testprotos/test/test_public.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -45,10 +44,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *PublicImportMessage) XXX_Methods() *protoiface.Methods {
-	return file_test_test_public_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use PublicImportMessage.ProtoReflect.Type instead.
 func (*PublicImportMessage) Descriptor() ([]byte, []int) {
 	return file_test_test_public_proto_rawDescGZIP(), []int{0}
diff --git a/internal/testprotos/test/weak/test_weak.pb.go b/internal/testprotos/test/weak/test_weak.pb.go
index 365e22b..862b017 100644
--- a/internal/testprotos/test/weak/test_weak.pb.go
+++ b/internal/testprotos/test/weak/test_weak.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -46,10 +45,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *WeakImportMessage) XXX_Methods() *protoiface.Methods {
-	return file_test_weak_test_weak_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use WeakImportMessage.ProtoReflect.Type instead.
 func (*WeakImportMessage) Descriptor() ([]byte, []int) {
 	return file_test_weak_test_weak_proto_rawDescGZIP(), []int{0}
diff --git a/internal/testprotos/test3/test.pb.go b/internal/testprotos/test3/test.pb.go
index 11b752b..32d9131 100644
--- a/internal/testprotos/test3/test.pb.go
+++ b/internal/testprotos/test3/test.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -208,10 +207,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypes) XXX_Methods() *protoiface.Methods {
-	return file_test3_test_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use TestAllTypes.ProtoReflect.Type instead.
 func (*TestAllTypes) Descriptor() ([]byte, []int) {
 	return file_test3_test_proto_rawDescGZIP(), []int{0}
@@ -788,10 +783,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ForeignMessage) XXX_Methods() *protoiface.Methods {
-	return file_test3_test_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use ForeignMessage.ProtoReflect.Type instead.
 func (*ForeignMessage) Descriptor() ([]byte, []int) {
 	return file_test3_test_proto_rawDescGZIP(), []int{1}
@@ -841,10 +832,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *TestAllTypes_NestedMessage) XXX_Methods() *protoiface.Methods {
-	return file_test3_test_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use TestAllTypes_NestedMessage.ProtoReflect.Type instead.
 func (*TestAllTypes_NestedMessage) Descriptor() ([]byte, []int) {
 	return file_test3_test_proto_rawDescGZIP(), []int{0, 0}
diff --git a/internal/testprotos/test3/test_import.pb.go b/internal/testprotos/test3/test_import.pb.go
index 619d959..4393958 100644
--- a/internal/testprotos/test3/test_import.pb.go
+++ b/internal/testprotos/test3/test_import.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -83,10 +82,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ImportMessage) XXX_Methods() *protoiface.Methods {
-	return file_test3_test_import_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use ImportMessage.ProtoReflect.Type instead.
 func (*ImportMessage) Descriptor() ([]byte, []int) {
 	return file_test3_test_import_proto_rawDescGZIP(), []int{0}
diff --git a/proto/decode.go b/proto/decode.go
index beba80b..6c2b9b7 100644
--- a/proto/decode.go
+++ b/proto/decode.go
@@ -49,10 +49,7 @@
 	}
 
 	// TODO: Reset m?
-	err := o.unmarshalMessageFast(b, m)
-	if err == errInternalNoFast {
-		err = o.unmarshalMessage(b, m.ProtoReflect())
-	}
+	err := o.unmarshalMessage(b, m.ProtoReflect())
 	if err != nil {
 		return err
 	}
@@ -62,15 +59,14 @@
 	return IsInitialized(m)
 }
 
-func (o UnmarshalOptions) unmarshalMessageFast(b []byte, m Message) error {
-	methods := protoMethods(m)
-	if methods == nil || methods.Unmarshal == nil {
-		return errInternalNoFast
+func (o UnmarshalOptions) unmarshalMessage(b []byte, m protoreflect.Message) error {
+	if methods := protoMethods(m); methods != nil && methods.Unmarshal != nil {
+		return methods.Unmarshal(b, m, protoiface.UnmarshalOptions(o))
 	}
-	return methods.Unmarshal(b, m, protoiface.UnmarshalOptions(o))
+	return o.unmarshalMessageSlow(b, m)
 }
 
-func (o UnmarshalOptions) unmarshalMessage(b []byte, m protoreflect.Message) error {
+func (o UnmarshalOptions) unmarshalMessageSlow(b []byte, m protoreflect.Message) error {
 	messageDesc := m.Descriptor()
 	fieldDescs := messageDesc.Fields()
 	for len(b) > 0 {
diff --git a/proto/decode_test.go b/proto/decode_test.go
index c9003e4..5fa3a0f 100644
--- a/proto/decode_test.go
+++ b/proto/decode_test.go
@@ -874,7 +874,7 @@
 		decodeTo: []proto.Message{
 			&testpb.TestAllTypes{OneofField: &testpb.TestAllTypes_OneofNestedMessage{
 				&testpb.TestAllTypes_NestedMessage{
-					A: scalar.Int32(1),
+					A: proto.Int32(1),
 					Corecursive: &testpb.TestAllTypes{
 						OptionalInt32: proto.Int32(43),
 					},
diff --git a/proto/encode.go b/proto/encode.go
index 5139cce..f9a753b 100644
--- a/proto/encode.go
+++ b/proto/encode.go
@@ -87,10 +87,7 @@
 	// effort with the single initialization check below.
 	allowPartial := o.AllowPartial
 	o.AllowPartial = true
-	out, err := o.marshalMessageFast(b, m)
-	if err == errInternalNoFast {
-		out, err = o.marshalMessage(b, m.ProtoReflect())
-	}
+	out, err := o.marshalMessage(b, m.ProtoReflect())
 	if err != nil {
 		return nil, err
 	}
@@ -100,26 +97,24 @@
 	return out, IsInitialized(m)
 }
 
-func (o MarshalOptions) marshalMessageFast(b []byte, m Message) ([]byte, error) {
-	methods := protoMethods(m)
-	if methods == nil ||
-		methods.MarshalAppend == nil ||
-		(o.Deterministic && methods.Flags&protoiface.MethodFlagDeterministicMarshal == 0) {
-		return nil, errInternalNoFast
-	}
-	if methods.Size != nil {
-		sz := methods.Size(m)
-		if cap(b) < len(b)+sz {
-			x := make([]byte, len(b), len(b)+sz)
-			copy(x, b)
-			b = x
+func (o MarshalOptions) marshalMessage(b []byte, m protoreflect.Message) ([]byte, error) {
+	if methods := protoMethods(m); methods != nil && methods.MarshalAppend != nil &&
+		!(o.Deterministic && methods.Flags&protoiface.MethodFlagDeterministicMarshal == 0) {
+		if methods.Size != nil {
+			sz := methods.Size(m)
+			if cap(b) < len(b)+sz {
+				x := make([]byte, len(b), len(b)+sz)
+				copy(x, b)
+				b = x
+			}
+			o.UseCachedSize = true
 		}
-		o.UseCachedSize = true
+		return methods.MarshalAppend(b, m, protoiface.MarshalOptions(o))
 	}
-	return methods.MarshalAppend(b, m, protoiface.MarshalOptions(o))
+	return o.marshalMessageSlow(b, m)
 }
 
-func (o MarshalOptions) marshalMessage(b []byte, m protoreflect.Message) ([]byte, error) {
+func (o MarshalOptions) marshalMessageSlow(b []byte, m protoreflect.Message) ([]byte, error) {
 	// There are many choices for what order we visit fields in. The default one here
 	// is chosen for reasonable efficiency and simplicity given the protoreflect API.
 	// It is not deterministic, since Message.Range does not return fields in any
diff --git a/proto/isinit.go b/proto/isinit.go
index e0fd947..df7cb2c 100644
--- a/proto/isinit.go
+++ b/proto/isinit.go
@@ -6,19 +6,23 @@
 
 import (
 	"google.golang.org/protobuf/internal/errors"
-	pref "google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoreflect"
 )
 
 // IsInitialized returns an error if any required fields in m are not set.
 func IsInitialized(m Message) error {
-	if methods := protoMethods(m); methods != nil && methods.IsInitialized != nil {
-		return methods.IsInitialized(m)
-	}
 	return isInitialized(m.ProtoReflect())
 }
 
 // IsInitialized returns an error if any required fields in m are not set.
-func isInitialized(m pref.Message) error {
+func isInitialized(m protoreflect.Message) error {
+	if methods := protoMethods(m); methods != nil && methods.IsInitialized != nil {
+		return methods.IsInitialized(m)
+	}
+	return isInitializedSlow(m)
+}
+
+func isInitializedSlow(m protoreflect.Message) error {
 	md := m.Descriptor()
 	fds := md.Fields()
 	for i, nums := 0, md.RequiredNumbers(); i < nums.Len(); i++ {
@@ -28,28 +32,28 @@
 		}
 	}
 	var err error
-	m.Range(func(fd pref.FieldDescriptor, v pref.Value) bool {
+	m.Range(func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
 		switch {
 		case fd.IsList():
 			if fd.Message() == nil {
 				return true
 			}
 			for i, list := 0, v.List(); i < list.Len() && err == nil; i++ {
-				err = IsInitialized(list.Get(i).Message().Interface())
+				err = isInitialized(list.Get(i).Message())
 			}
 		case fd.IsMap():
 			if fd.MapValue().Message() == nil {
 				return true
 			}
-			v.Map().Range(func(key pref.MapKey, v pref.Value) bool {
-				err = IsInitialized(v.Message().Interface())
+			v.Map().Range(func(key protoreflect.MapKey, v protoreflect.Value) bool {
+				err = isInitialized(v.Message())
 				return err == nil
 			})
 		default:
 			if fd.Message() == nil {
 				return true
 			}
-			err = IsInitialized(v.Message().Interface())
+			err = isInitialized(v.Message())
 		}
 		return err == nil
 	})
diff --git a/proto/proto_methods.go b/proto/proto_methods.go
index 61349f4..50abbd6 100644
--- a/proto/proto_methods.go
+++ b/proto/proto_methods.go
@@ -7,11 +7,14 @@
 
 package proto
 
-import "google.golang.org/protobuf/runtime/protoiface"
+import (
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
+)
 
-func protoMethods(m Message) *protoiface.Methods {
+func protoMethods(m protoreflect.Message) *protoiface.Methods {
 	if x, ok := m.(protoiface.Methoder); ok {
-		return x.XXX_Methods()
+		return x.ProtoMethods()
 	}
 	return nil
 }
diff --git a/proto/proto_reflect.go b/proto/proto_reflect.go
index 829b334..79ec456 100644
--- a/proto/proto_reflect.go
+++ b/proto/proto_reflect.go
@@ -7,8 +7,11 @@
 
 package proto
 
-import "google.golang.org/protobuf/runtime/protoiface"
+import (
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
+)
 
-func protoMethods(m Message) *protoiface.Methods {
+func protoMethods(m protoreflect.Message) *protoiface.Methods {
 	return nil
 }
diff --git a/proto/size.go b/proto/size.go
index 24f1116..ab00a20 100644
--- a/proto/size.go
+++ b/proto/size.go
@@ -16,22 +16,17 @@
 
 // Size returns the size in bytes of the wire-format encoding of m.
 func (o MarshalOptions) Size(m Message) int {
-	if size, err := sizeMessageFast(m); err == nil {
-		return size
-	}
 	return sizeMessage(m.ProtoReflect())
 }
 
-func sizeMessageFast(m Message) (int, error) {
-	// TODO: Pass MarshalOptions to size to permit disabling fast path?
-	methods := protoMethods(m)
-	if methods == nil || methods.Size == nil {
-		return 0, errInternalNoFast
+func sizeMessage(m protoreflect.Message) (size int) {
+	if methods := protoMethods(m); methods != nil && methods.Size != nil {
+		return methods.Size(m)
 	}
-	return methods.Size(m), nil
+	return sizeMessageSlow(m)
 }
 
-func sizeMessage(m protoreflect.Message) (size int) {
+func sizeMessageSlow(m protoreflect.Message) (size int) {
 	m.Range(func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
 		size += sizeField(fd, v)
 		return true
diff --git a/reflect/protoregistry/testprotos/test.pb.go b/reflect/protoregistry/testprotos/test.pb.go
index c6ea2fd..d5c7439 100644
--- a/reflect/protoregistry/testprotos/test.pb.go
+++ b/reflect/protoregistry/testprotos/test.pb.go
@@ -188,10 +188,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message1) XXX_Methods() *protoiface.Methods {
-	return file_test_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Message1.ProtoReflect.Type instead.
 func (*Message1) Descriptor() ([]byte, []int) {
 	return file_test_proto_rawDescGZIP(), []int{0}
@@ -234,10 +230,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message2) XXX_Methods() *protoiface.Methods {
-	return file_test_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Message2.ProtoReflect.Type instead.
 func (*Message2) Descriptor() ([]byte, []int) {
 	return file_test_proto_rawDescGZIP(), []int{1}
@@ -271,10 +263,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message3) XXX_Methods() *protoiface.Methods {
-	return file_test_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Message3.ProtoReflect.Type instead.
 func (*Message3) Descriptor() ([]byte, []int) {
 	return file_test_proto_rawDescGZIP(), []int{2}
@@ -309,10 +297,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Message4) XXX_Methods() *protoiface.Methods {
-	return file_test_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use Message4.ProtoReflect.Type instead.
 func (*Message4) Descriptor() ([]byte, []int) {
 	return file_test_proto_rawDescGZIP(), []int{3}
diff --git a/runtime/protoiface/methods.go b/runtime/protoiface/methods.go
index e4a5157..eb6c5f3 100644
--- a/runtime/protoiface/methods.go
+++ b/runtime/protoiface/methods.go
@@ -15,10 +15,10 @@
 	"google.golang.org/protobuf/reflect/protoregistry"
 )
 
-// Methoder is an optional interface implemented by generated messages to
+// Methoder is an optional interface implemented by protoreflect.Message to
 // provide fast-path implementations of various operations.
 type Methoder interface {
-	XXX_Methods() *Methods // may return nil
+	ProtoMethods() *Methods // may return nil
 }
 
 // Methods is a set of optional fast-path implementations of various operations.
@@ -28,17 +28,17 @@
 
 	// MarshalAppend appends the wire-format encoding of m to b, returning the result.
 	// It does not perform required field checks.
-	MarshalAppend func(b []byte, m protoreflect.ProtoMessage, opts MarshalOptions) ([]byte, error)
+	MarshalAppend func(b []byte, m protoreflect.Message, opts MarshalOptions) ([]byte, error)
 
 	// Size returns the size in bytes of the wire-format encoding of m.
-	Size func(m protoreflect.ProtoMessage) int
+	Size func(m protoreflect.Message) int
 
 	// Unmarshal parses the wire-format message in b and places the result in m.
 	// It does not reset m or perform required field checks.
-	Unmarshal func(b []byte, m protoreflect.ProtoMessage, opts UnmarshalOptions) error
+	Unmarshal func(b []byte, m protoreflect.Message, opts UnmarshalOptions) error
 
 	// IsInitialized returns an error if any required fields in m are not set.
-	IsInitialized func(m protoreflect.ProtoMessage) error
+	IsInitialized func(m protoreflect.Message) error
 
 	pragma.NoUnkeyedLiterals
 }
diff --git a/types/descriptorpb/descriptor.pb.go b/types/descriptorpb/descriptor.pb.go
index abdc776..baf3784 100644
--- a/types/descriptorpb/descriptor.pb.go
+++ b/types/descriptorpb/descriptor.pb.go
@@ -433,10 +433,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FileDescriptorSet) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use FileDescriptorSet.ProtoReflect.Type instead.
 func (*FileDescriptorSet) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{0}
@@ -501,10 +497,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FileDescriptorProto) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use FileDescriptorProto.ProtoReflect.Type instead.
 func (*FileDescriptorProto) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{1}
@@ -635,10 +627,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *DescriptorProto) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use DescriptorProto.ProtoReflect.Type instead.
 func (*DescriptorProto) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{2}
@@ -745,10 +733,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ExtensionRangeOptions) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use ExtensionRangeOptions.ProtoReflect.Type instead.
 func (*ExtensionRangeOptions) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{3}
@@ -829,10 +813,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FieldDescriptorProto) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use FieldDescriptorProto.ProtoReflect.Type instead.
 func (*FieldDescriptorProto) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{4}
@@ -939,10 +919,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *OneofDescriptorProto) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use OneofDescriptorProto.ProtoReflect.Type instead.
 func (*OneofDescriptorProto) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{5}
@@ -1001,10 +977,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *EnumDescriptorProto) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use EnumDescriptorProto.ProtoReflect.Type instead.
 func (*EnumDescriptorProto) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{6}
@@ -1077,10 +1049,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *EnumValueDescriptorProto) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use EnumValueDescriptorProto.ProtoReflect.Type instead.
 func (*EnumValueDescriptorProto) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{7}
@@ -1139,10 +1107,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ServiceDescriptorProto) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use ServiceDescriptorProto.ProtoReflect.Type instead.
 func (*ServiceDescriptorProto) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{8}
@@ -1208,10 +1172,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *MethodDescriptorProto) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[9].Methods()
-}
-
 // Deprecated: Use MethodDescriptorProto.ProtoReflect.Type instead.
 func (*MethodDescriptorProto) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{9}
@@ -1375,10 +1335,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FileOptions) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[10].Methods()
-}
-
 // Deprecated: Use FileOptions.ProtoReflect.Type instead.
 func (*FileOptions) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{10}
@@ -1632,10 +1588,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *MessageOptions) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[11].Methods()
-}
-
 // Deprecated: Use MessageOptions.ProtoReflect.Type instead.
 func (*MessageOptions) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{11}
@@ -1779,10 +1731,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FieldOptions) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[12].Methods()
-}
-
 // Deprecated: Use FieldOptions.ProtoReflect.Type instead.
 func (*FieldOptions) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{12}
@@ -1883,10 +1831,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *OneofOptions) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[13].Methods()
-}
-
 // Deprecated: Use OneofOptions.ProtoReflect.Type instead.
 func (*OneofOptions) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{13}
@@ -1947,10 +1891,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *EnumOptions) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[14].Methods()
-}
-
 // Deprecated: Use EnumOptions.ProtoReflect.Type instead.
 func (*EnumOptions) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{14}
@@ -2024,10 +1964,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *EnumValueOptions) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[15].Methods()
-}
-
 // Deprecated: Use EnumValueOptions.ProtoReflect.Type instead.
 func (*EnumValueOptions) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{15}
@@ -2094,10 +2030,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ServiceOptions) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[16].Methods()
-}
-
 // Deprecated: Use ServiceOptions.ProtoReflect.Type instead.
 func (*ServiceOptions) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{16}
@@ -2165,10 +2097,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *MethodOptions) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[17].Methods()
-}
-
 // Deprecated: Use MethodOptions.ProtoReflect.Type instead.
 func (*MethodOptions) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{17}
@@ -2250,10 +2178,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *UninterpretedOption) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[18].Methods()
-}
-
 // Deprecated: Use UninterpretedOption.ProtoReflect.Type instead.
 func (*UninterpretedOption) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{18}
@@ -2382,10 +2306,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *SourceCodeInfo) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[19].Methods()
-}
-
 // Deprecated: Use SourceCodeInfo.ProtoReflect.Type instead.
 func (*SourceCodeInfo) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{19}
@@ -2432,10 +2352,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *GeneratedCodeInfo) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[20].Methods()
-}
-
 // Deprecated: Use GeneratedCodeInfo.ProtoReflect.Type instead.
 func (*GeneratedCodeInfo) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{20}
@@ -2479,10 +2395,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *DescriptorProto_ExtensionRange) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[21].Methods()
-}
-
 // Deprecated: Use DescriptorProto_ExtensionRange.ProtoReflect.Type instead.
 func (*DescriptorProto_ExtensionRange) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{2, 0}
@@ -2542,10 +2454,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *DescriptorProto_ReservedRange) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[22].Methods()
-}
-
 // Deprecated: Use DescriptorProto_ReservedRange.ProtoReflect.Type instead.
 func (*DescriptorProto_ReservedRange) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{2, 1}
@@ -2601,10 +2509,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *EnumDescriptorProto_EnumReservedRange) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[23].Methods()
-}
-
 // Deprecated: Use EnumDescriptorProto_EnumReservedRange.ProtoReflect.Type instead.
 func (*EnumDescriptorProto_EnumReservedRange) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{6, 0}
@@ -2659,10 +2563,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *UninterpretedOption_NamePart) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[24].Methods()
-}
-
 // Deprecated: Use UninterpretedOption_NamePart.ProtoReflect.Type instead.
 func (*UninterpretedOption_NamePart) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{18, 0}
@@ -2790,10 +2690,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *SourceCodeInfo_Location) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[25].Methods()
-}
-
 // Deprecated: Use SourceCodeInfo_Location.ProtoReflect.Type instead.
 func (*SourceCodeInfo_Location) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{19, 0}
@@ -2874,10 +2770,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *GeneratedCodeInfo_Annotation) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_descriptor_proto_msgTypes[26].Methods()
-}
-
 // Deprecated: Use GeneratedCodeInfo_Annotation.ProtoReflect.Type instead.
 func (*GeneratedCodeInfo_Annotation) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{20, 0}
diff --git a/types/known/anypb/any.pb.go b/types/known/anypb/any.pb.go
index 595b70f..feb1473 100644
--- a/types/known/anypb/any.pb.go
+++ b/types/known/anypb/any.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -156,10 +155,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Any) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_any_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Any.ProtoReflect.Type instead.
 func (*Any) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_any_proto_rawDescGZIP(), []int{0}
diff --git a/types/known/apipb/api.pb.go b/types/known/apipb/api.pb.go
index 9bc70e1..1e038ee 100644
--- a/types/known/apipb/api.pb.go
+++ b/types/known/apipb/api.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sourcecontextpb "google.golang.org/protobuf/types/known/sourcecontextpb"
 	typepb "google.golang.org/protobuf/types/known/typepb"
@@ -92,10 +91,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Api) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_api_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Api.ProtoReflect.Type instead.
 func (*Api) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_api_proto_rawDescGZIP(), []int{0}
@@ -193,10 +188,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Method) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_api_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Method.ProtoReflect.Type instead.
 func (*Method) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_api_proto_rawDescGZIP(), []int{1}
@@ -362,10 +353,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Mixin) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_api_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Mixin.ProtoReflect.Type instead.
 func (*Mixin) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_api_proto_rawDescGZIP(), []int{2}
diff --git a/types/known/durationpb/duration.pb.go b/types/known/durationpb/duration.pb.go
index de6d461..ed73ce2 100644
--- a/types/known/durationpb/duration.pb.go
+++ b/types/known/durationpb/duration.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -116,10 +115,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Duration) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_duration_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Duration.ProtoReflect.Type instead.
 func (*Duration) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_duration_proto_rawDescGZIP(), []int{0}
diff --git a/types/known/emptypb/empty.pb.go b/types/known/emptypb/empty.pb.go
index 4558682..aad4113 100644
--- a/types/known/emptypb/empty.pb.go
+++ b/types/known/emptypb/empty.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -54,10 +53,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Empty) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_empty_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Empty.ProtoReflect.Type instead.
 func (*Empty) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_empty_proto_rawDescGZIP(), []int{0}
diff --git a/types/known/fieldmaskpb/field_mask.pb.go b/types/known/fieldmaskpb/field_mask.pb.go
index cb7b45e..02a3a62 100644
--- a/types/known/fieldmaskpb/field_mask.pb.go
+++ b/types/known/fieldmaskpb/field_mask.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -246,10 +245,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FieldMask) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_field_mask_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use FieldMask.ProtoReflect.Type instead.
 func (*FieldMask) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_field_mask_proto_rawDescGZIP(), []int{0}
diff --git a/types/known/sourcecontextpb/source_context.pb.go b/types/known/sourcecontextpb/source_context.pb.go
index e482879..a486c87 100644
--- a/types/known/sourcecontextpb/source_context.pb.go
+++ b/types/known/sourcecontextpb/source_context.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -50,10 +49,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *SourceContext) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_source_context_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use SourceContext.ProtoReflect.Type instead.
 func (*SourceContext) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_source_context_proto_rawDescGZIP(), []int{0}
diff --git a/types/known/structpb/struct.pb.go b/types/known/structpb/struct.pb.go
index cc19871..c1ea147 100644
--- a/types/known/structpb/struct.pb.go
+++ b/types/known/structpb/struct.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -98,10 +97,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Struct) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_struct_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Struct.ProtoReflect.Type instead.
 func (*Struct) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_struct_proto_rawDescGZIP(), []int{0}
@@ -164,10 +159,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Value) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_struct_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Value.ProtoReflect.Type instead.
 func (*Value) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_struct_proto_rawDescGZIP(), []int{1}
@@ -295,10 +286,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *ListValue) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_struct_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use ListValue.ProtoReflect.Type instead.
 func (*ListValue) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_struct_proto_rawDescGZIP(), []int{2}
diff --git a/types/known/timestamppb/timestamp.pb.go b/types/known/timestamppb/timestamp.pb.go
index 3ade4ba..7c292ca 100644
--- a/types/known/timestamppb/timestamp.pb.go
+++ b/types/known/timestamppb/timestamp.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -136,10 +135,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Timestamp) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_timestamp_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Timestamp.ProtoReflect.Type instead.
 func (*Timestamp) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_timestamp_proto_rawDescGZIP(), []int{0}
diff --git a/types/known/typepb/type.pb.go b/types/known/typepb/type.pb.go
index 4a37caf..4153fb2 100644
--- a/types/known/typepb/type.pb.go
+++ b/types/known/typepb/type.pb.go
@@ -6,7 +6,6 @@
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	prototype "google.golang.org/protobuf/reflect/prototype"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	anypb "google.golang.org/protobuf/types/known/anypb"
 	sourcecontextpb "google.golang.org/protobuf/types/known/sourcecontextpb"
@@ -266,10 +265,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Type) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_type_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Type.ProtoReflect.Type instead.
 func (*Type) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_type_proto_rawDescGZIP(), []int{0}
@@ -368,10 +363,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Field) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_type_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use Field.ProtoReflect.Type instead.
 func (*Field) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_type_proto_rawDescGZIP(), []int{1}
@@ -486,10 +477,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Enum) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_type_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Enum.ProtoReflect.Type instead.
 func (*Enum) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_type_proto_rawDescGZIP(), []int{2}
@@ -565,10 +552,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *EnumValue) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_type_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use EnumValue.ProtoReflect.Type instead.
 func (*EnumValue) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_type_proto_rawDescGZIP(), []int{3}
@@ -635,10 +618,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Option) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_type_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Option.ProtoReflect.Type instead.
 func (*Option) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_type_proto_rawDescGZIP(), []int{4}
diff --git a/types/known/wrapperspb/wrappers.pb.go b/types/known/wrapperspb/wrappers.pb.go
index 846cd59..3aa77f1 100644
--- a/types/known/wrapperspb/wrappers.pb.go
+++ b/types/known/wrapperspb/wrappers.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	sync "sync"
 )
@@ -50,10 +49,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *DoubleValue) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_wrappers_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use DoubleValue.ProtoReflect.Type instead.
 func (*DoubleValue) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_wrappers_proto_rawDescGZIP(), []int{0}
@@ -99,10 +94,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *FloatValue) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_wrappers_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use FloatValue.ProtoReflect.Type instead.
 func (*FloatValue) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_wrappers_proto_rawDescGZIP(), []int{1}
@@ -148,10 +139,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Int64Value) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_wrappers_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use Int64Value.ProtoReflect.Type instead.
 func (*Int64Value) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_wrappers_proto_rawDescGZIP(), []int{2}
@@ -197,10 +184,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *UInt64Value) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_wrappers_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use UInt64Value.ProtoReflect.Type instead.
 func (*UInt64Value) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_wrappers_proto_rawDescGZIP(), []int{3}
@@ -246,10 +229,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Int32Value) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_wrappers_proto_msgTypes[4].Methods()
-}
-
 // Deprecated: Use Int32Value.ProtoReflect.Type instead.
 func (*Int32Value) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_wrappers_proto_rawDescGZIP(), []int{4}
@@ -295,10 +274,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *UInt32Value) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_wrappers_proto_msgTypes[5].Methods()
-}
-
 // Deprecated: Use UInt32Value.ProtoReflect.Type instead.
 func (*UInt32Value) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_wrappers_proto_rawDescGZIP(), []int{5}
@@ -344,10 +319,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *BoolValue) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_wrappers_proto_msgTypes[6].Methods()
-}
-
 // Deprecated: Use BoolValue.ProtoReflect.Type instead.
 func (*BoolValue) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_wrappers_proto_rawDescGZIP(), []int{6}
@@ -393,10 +364,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *StringValue) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_wrappers_proto_msgTypes[7].Methods()
-}
-
 // Deprecated: Use StringValue.ProtoReflect.Type instead.
 func (*StringValue) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_wrappers_proto_rawDescGZIP(), []int{7}
@@ -442,10 +409,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *BytesValue) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_wrappers_proto_msgTypes[8].Methods()
-}
-
 // Deprecated: Use BytesValue.ProtoReflect.Type instead.
 func (*BytesValue) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_wrappers_proto_rawDescGZIP(), []int{8}
diff --git a/types/pluginpb/plugin.pb.go b/types/pluginpb/plugin.pb.go
index 258574e..a4f242e 100644
--- a/types/pluginpb/plugin.pb.go
+++ b/types/pluginpb/plugin.pb.go
@@ -5,7 +5,6 @@
 
 import (
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoiface "google.golang.org/protobuf/runtime/protoiface"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	descriptorpb "google.golang.org/protobuf/types/descriptorpb"
 	sync "sync"
@@ -53,10 +52,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *Version) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_compiler_plugin_proto_msgTypes[0].Methods()
-}
-
 // Deprecated: Use Version.ProtoReflect.Type instead.
 func (*Version) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_compiler_plugin_proto_rawDescGZIP(), []int{0}
@@ -142,10 +137,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *CodeGeneratorRequest) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_compiler_plugin_proto_msgTypes[1].Methods()
-}
-
 // Deprecated: Use CodeGeneratorRequest.ProtoReflect.Type instead.
 func (*CodeGeneratorRequest) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_compiler_plugin_proto_rawDescGZIP(), []int{1}
@@ -218,10 +209,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *CodeGeneratorResponse) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_compiler_plugin_proto_msgTypes[2].Methods()
-}
-
 // Deprecated: Use CodeGeneratorResponse.ProtoReflect.Type instead.
 func (*CodeGeneratorResponse) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_compiler_plugin_proto_rawDescGZIP(), []int{2}
@@ -322,10 +309,6 @@
 	return mi.MessageOf(x)
 }
 
-func (x *CodeGeneratorResponse_File) XXX_Methods() *protoiface.Methods {
-	return file_google_protobuf_compiler_plugin_proto_msgTypes[3].Methods()
-}
-
 // Deprecated: Use CodeGeneratorResponse_File.ProtoReflect.Type instead.
 func (*CodeGeneratorResponse_File) Descriptor() ([]byte, []int) {
 	return file_google_protobuf_compiler_plugin_proto_rawDescGZIP(), []int{2, 0}