// Copyright 2018 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

// Test Protobuf definitions with proto3 syntax.

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.28.1
// 	protoc        v5.26.1
// source: idl/example3.proto

package example3

import (
	context "context"
	base "github.com/cloudwego/dynamicgo/testdata/kitex_gen/pb/base"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type FOO int32

const (
	FOO_FOO_A FOO = 0
)

// Enum value maps for FOO.
var (
	FOO_name = map[int32]string{
		0: "FOO_A",
	}
	FOO_value = map[string]int32{
		"FOO_A": 0,
	}
)

func (x FOO) Enum() *FOO {
	p := new(FOO)
	*p = x
	return p
}

func (x FOO) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (FOO) Descriptor() protoreflect.EnumDescriptor {
	return file_idl_example3_proto_enumTypes[0].Descriptor()
}

func (FOO) Type() protoreflect.EnumType {
	return &file_idl_example3_proto_enumTypes[0]
}

func (x FOO) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use FOO.Descriptor instead.
func (FOO) EnumDescriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{0}
}

type InnerBase2 struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bool             bool                  `protobuf:"varint,1,opt,name=Bool,proto3" json:"Bool,omitempty"`
	Uint32           uint32                `protobuf:"varint,2,opt,name=Uint32,proto3" json:"Uint32,omitempty"`
	Uint64           uint64                `protobuf:"varint,3,opt,name=Uint64,proto3" json:"Uint64,omitempty"`
	Int32            int32                 `protobuf:"varint,4,opt,name=Int32,proto3" json:"Int32,omitempty"`
	Int64            int64                 `protobuf:"varint,5,opt,name=Int64,proto3" json:"Int64,omitempty"`
	Double           float64               `protobuf:"fixed64,6,opt,name=Double,proto3" json:"Double,omitempty"`
	String_          string                `protobuf:"bytes,7,opt,name=String,proto3" json:"String,omitempty"`
	ListInt32        []int32               `protobuf:"varint,8,rep,packed,name=ListInt32,proto3" json:"ListInt32,omitempty"`
	MapStringString  map[string]string     `protobuf:"bytes,9,rep,name=MapStringString,proto3" json:"MapStringString,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	SetInt32         []int32               `protobuf:"varint,10,rep,packed,name=SetInt32,proto3" json:"SetInt32,omitempty"`
	Foo              FOO                   `protobuf:"varint,11,opt,name=Foo,proto3,enum=pb3.FOO" json:"Foo,omitempty"`
	MapInt32String   map[int32]string      `protobuf:"bytes,12,rep,name=MapInt32String,proto3" json:"MapInt32String,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Binary           []byte                `protobuf:"bytes,13,opt,name=Binary,proto3" json:"Binary,omitempty"`
	MapUint32String  map[uint32]string     `protobuf:"bytes,14,rep,name=MapUint32String,proto3" json:"MapUint32String,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	MapUint64String  map[uint64]string     `protobuf:"bytes,15,rep,name=MapUint64String,proto3" json:"MapUint64String,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	MapInt64String   map[int64]string      `protobuf:"bytes,16,rep,name=MapInt64String,proto3" json:"MapInt64String,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	MapInt64Base     map[int64]*base.Base  `protobuf:"bytes,17,rep,name=MapInt64Base,proto3" json:"MapInt64Base,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	MapStringBase    map[string]*base.Base `protobuf:"bytes,20,rep,name=MapStringBase,proto3" json:"MapStringBase,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	ListBase         []*base.Base          `protobuf:"bytes,19,rep,name=ListBase,proto3" json:"ListBase,omitempty"`
	ListInnerBase    []*InnerBase2         `protobuf:"bytes,18,rep,name=ListInnerBase,proto3" json:"ListInnerBase,omitempty"`
	ListString       []string              `protobuf:"bytes,21,rep,name=ListString,proto3" json:"ListString,omitempty"`
	Sfixed32         int32                 `protobuf:"fixed32,22,opt,name=Sfixed32,proto3" json:"Sfixed32,omitempty"`
	Fixed64          uint64                `protobuf:"fixed64,23,opt,name=Fixed64,proto3" json:"Fixed64,omitempty"`
	Sint32           int32                 `protobuf:"zigzag32,24,opt,name=Sint32,proto3" json:"Sint32,omitempty"`
	Sint64           int64                 `protobuf:"zigzag64,25,opt,name=Sint64,proto3" json:"Sint64,omitempty"`
	ListSInt64       []int64               `protobuf:"zigzag64,26,rep,packed,name=ListSInt64,proto3" json:"ListSInt64,omitempty"`
	ListSInt32       []int32               `protobuf:"zigzag32,27,rep,packed,name=ListSInt32,proto3" json:"ListSInt32,omitempty"`
	ListSfixed32     []int32               `protobuf:"fixed32,28,rep,packed,name=ListSfixed32,proto3" json:"ListSfixed32,omitempty"`
	ListFixed64      []uint64              `protobuf:"fixed64,29,rep,packed,name=ListFixed64,proto3" json:"ListFixed64,omitempty"`
	MapInt64Sfixed64 map[int64]int64       `protobuf:"bytes,30,rep,name=MapInt64Sfixed64,proto3" json:"MapInt64Sfixed64,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"fixed64,2,opt,name=value,proto3"`
	MapStringFixed32 map[string]uint32     `protobuf:"bytes,31,rep,name=MapStringFixed32,proto3" json:"MapStringFixed32,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed32,2,opt,name=value,proto3"`
	Base             *base.Base            `protobuf:"bytes,255,opt,name=Base,proto3" json:"Base,omitempty"`
}

func (x *InnerBase2) Reset() {
	*x = InnerBase2{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *InnerBase2) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InnerBase2) ProtoMessage() {}

func (x *InnerBase2) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InnerBase2.ProtoReflect.Descriptor instead.
func (*InnerBase2) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{0}
}

func (x *InnerBase2) GetBool() bool {
	if x != nil {
		return x.Bool
	}
	return false
}

func (x *InnerBase2) GetUint32() uint32 {
	if x != nil {
		return x.Uint32
	}
	return 0
}

func (x *InnerBase2) GetUint64() uint64 {
	if x != nil {
		return x.Uint64
	}
	return 0
}

func (x *InnerBase2) GetInt32() int32 {
	if x != nil {
		return x.Int32
	}
	return 0
}

func (x *InnerBase2) GetInt64() int64 {
	if x != nil {
		return x.Int64
	}
	return 0
}

func (x *InnerBase2) GetDouble() float64 {
	if x != nil {
		return x.Double
	}
	return 0
}

func (x *InnerBase2) GetString_() string {
	if x != nil {
		return x.String_
	}
	return ""
}

func (x *InnerBase2) GetListInt32() []int32 {
	if x != nil {
		return x.ListInt32
	}
	return nil
}

func (x *InnerBase2) GetMapStringString() map[string]string {
	if x != nil {
		return x.MapStringString
	}
	return nil
}

func (x *InnerBase2) GetSetInt32() []int32 {
	if x != nil {
		return x.SetInt32
	}
	return nil
}

func (x *InnerBase2) GetFoo() FOO {
	if x != nil {
		return x.Foo
	}
	return FOO_FOO_A
}

func (x *InnerBase2) GetMapInt32String() map[int32]string {
	if x != nil {
		return x.MapInt32String
	}
	return nil
}

func (x *InnerBase2) GetBinary() []byte {
	if x != nil {
		return x.Binary
	}
	return nil
}

func (x *InnerBase2) GetMapUint32String() map[uint32]string {
	if x != nil {
		return x.MapUint32String
	}
	return nil
}

func (x *InnerBase2) GetMapUint64String() map[uint64]string {
	if x != nil {
		return x.MapUint64String
	}
	return nil
}

func (x *InnerBase2) GetMapInt64String() map[int64]string {
	if x != nil {
		return x.MapInt64String
	}
	return nil
}

func (x *InnerBase2) GetMapInt64Base() map[int64]*base.Base {
	if x != nil {
		return x.MapInt64Base
	}
	return nil
}

func (x *InnerBase2) GetMapStringBase() map[string]*base.Base {
	if x != nil {
		return x.MapStringBase
	}
	return nil
}

func (x *InnerBase2) GetListBase() []*base.Base {
	if x != nil {
		return x.ListBase
	}
	return nil
}

func (x *InnerBase2) GetListInnerBase() []*InnerBase2 {
	if x != nil {
		return x.ListInnerBase
	}
	return nil
}

func (x *InnerBase2) GetListString() []string {
	if x != nil {
		return x.ListString
	}
	return nil
}

func (x *InnerBase2) GetSfixed32() int32 {
	if x != nil {
		return x.Sfixed32
	}
	return 0
}

func (x *InnerBase2) GetFixed64() uint64 {
	if x != nil {
		return x.Fixed64
	}
	return 0
}

func (x *InnerBase2) GetSint32() int32 {
	if x != nil {
		return x.Sint32
	}
	return 0
}

func (x *InnerBase2) GetSint64() int64 {
	if x != nil {
		return x.Sint64
	}
	return 0
}

func (x *InnerBase2) GetListSInt64() []int64 {
	if x != nil {
		return x.ListSInt64
	}
	return nil
}

func (x *InnerBase2) GetListSInt32() []int32 {
	if x != nil {
		return x.ListSInt32
	}
	return nil
}

func (x *InnerBase2) GetListSfixed32() []int32 {
	if x != nil {
		return x.ListSfixed32
	}
	return nil
}

func (x *InnerBase2) GetListFixed64() []uint64 {
	if x != nil {
		return x.ListFixed64
	}
	return nil
}

func (x *InnerBase2) GetMapInt64Sfixed64() map[int64]int64 {
	if x != nil {
		return x.MapInt64Sfixed64
	}
	return nil
}

func (x *InnerBase2) GetMapStringFixed32() map[string]uint32 {
	if x != nil {
		return x.MapStringFixed32
	}
	return nil
}

func (x *InnerBase2) GetBase() *base.Base {
	if x != nil {
		return x.Base
	}
	return nil
}

type InnerBasePartial struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bool             bool                    `protobuf:"varint,1,opt,name=Bool,proto3" json:"Bool,omitempty"`
	ListInt32        []int32                 `protobuf:"varint,8,rep,packed,name=ListInt32,proto3" json:"ListInt32,omitempty"`
	MapStringString  map[string]string       `protobuf:"bytes,9,rep,name=MapStringString,proto3" json:"MapStringString,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	MapStringBase    map[string]*BasePartial `protobuf:"bytes,20,rep,name=MapStringBase,proto3" json:"MapStringBase,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	ListInnerBase    []*InnerBasePartial     `protobuf:"bytes,18,rep,name=ListInnerBase,proto3" json:"ListInnerBase,omitempty"`
	ListBase         []*BasePartial          `protobuf:"bytes,19,rep,name=ListBase,proto3" json:"ListBase,omitempty"`
	MapStringString2 map[string]string       `protobuf:"bytes,127,rep,name=MapStringString2,proto3" json:"MapStringString2,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}

func (x *InnerBasePartial) Reset() {
	*x = InnerBasePartial{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *InnerBasePartial) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InnerBasePartial) ProtoMessage() {}

func (x *InnerBasePartial) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InnerBasePartial.ProtoReflect.Descriptor instead.
func (*InnerBasePartial) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{1}
}

func (x *InnerBasePartial) GetBool() bool {
	if x != nil {
		return x.Bool
	}
	return false
}

func (x *InnerBasePartial) GetListInt32() []int32 {
	if x != nil {
		return x.ListInt32
	}
	return nil
}

func (x *InnerBasePartial) GetMapStringString() map[string]string {
	if x != nil {
		return x.MapStringString
	}
	return nil
}

func (x *InnerBasePartial) GetMapStringBase() map[string]*BasePartial {
	if x != nil {
		return x.MapStringBase
	}
	return nil
}

func (x *InnerBasePartial) GetListInnerBase() []*InnerBasePartial {
	if x != nil {
		return x.ListInnerBase
	}
	return nil
}

func (x *InnerBasePartial) GetListBase() []*BasePartial {
	if x != nil {
		return x.ListBase
	}
	return nil
}

func (x *InnerBasePartial) GetMapStringString2() map[string]string {
	if x != nil {
		return x.MapStringString2
	}
	return nil
}

type BasePartial struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	TrafficEnv *base.TrafficEnv `protobuf:"bytes,5,opt,name=TrafficEnv,proto3" json:"TrafficEnv,omitempty"`
}

func (x *BasePartial) Reset() {
	*x = BasePartial{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BasePartial) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BasePartial) ProtoMessage() {}

func (x *BasePartial) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BasePartial.ProtoReflect.Descriptor instead.
func (*BasePartial) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{2}
}

func (x *BasePartial) GetTrafficEnv() *base.TrafficEnv {
	if x != nil {
		return x.TrafficEnv
	}
	return nil
}

type ExampleReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Msg        string      `protobuf:"bytes,1,opt,name=Msg,proto3" json:"Msg,omitempty"`
	A          int32       `protobuf:"varint,2,opt,name=A,proto3" json:"A,omitempty"`
	InnerBase2 *InnerBase2 `protobuf:"bytes,3,opt,name=InnerBase2,proto3" json:"InnerBase2,omitempty"`
	Base       *base.Base  `protobuf:"bytes,255,opt,name=Base,proto3" json:"Base,omitempty"`
	Subfix     float64     `protobuf:"fixed64,32767,opt,name=Subfix,proto3" json:"Subfix,omitempty"`
}

func (x *ExampleReq) Reset() {
	*x = ExampleReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExampleReq) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExampleReq) ProtoMessage() {}

func (x *ExampleReq) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExampleReq.ProtoReflect.Descriptor instead.
func (*ExampleReq) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{3}
}

func (x *ExampleReq) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *ExampleReq) GetA() int32 {
	if x != nil {
		return x.A
	}
	return 0
}

func (x *ExampleReq) GetInnerBase2() *InnerBase2 {
	if x != nil {
		return x.InnerBase2
	}
	return nil
}

func (x *ExampleReq) GetBase() *base.Base {
	if x != nil {
		return x.Base
	}
	return nil
}

func (x *ExampleReq) GetSubfix() float64 {
	if x != nil {
		return x.Subfix
	}
	return 0
}

type ExampleSuper struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Msg        string      `protobuf:"bytes,1,opt,name=Msg,proto3" json:"Msg,omitempty"`
	A          int32       `protobuf:"varint,2,opt,name=A,proto3" json:"A,omitempty"`
	InnerBase2 *InnerBase2 `protobuf:"bytes,3,opt,name=InnerBase2,proto3" json:"InnerBase2,omitempty"`
	Ex1        string      `protobuf:"bytes,4,opt,name=Ex1,proto3" json:"Ex1,omitempty"`
	Ex2        string      `protobuf:"bytes,5,opt,name=Ex2,proto3" json:"Ex2,omitempty"`
	Ex3        string      `protobuf:"bytes,6,opt,name=Ex3,proto3" json:"Ex3,omitempty"`
	Ex4        string      `protobuf:"bytes,7,opt,name=Ex4,proto3" json:"Ex4,omitempty"`
	SelfRef    *SelfRef    `protobuf:"bytes,9,opt,name=SelfRef,proto3" json:"SelfRef,omitempty"`
	Base       *base.Base  `protobuf:"bytes,255,opt,name=Base,proto3" json:"Base,omitempty"`
	Subfix     float64     `protobuf:"fixed64,32767,opt,name=Subfix,proto3" json:"Subfix,omitempty"`
}

func (x *ExampleSuper) Reset() {
	*x = ExampleSuper{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExampleSuper) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExampleSuper) ProtoMessage() {}

func (x *ExampleSuper) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExampleSuper.ProtoReflect.Descriptor instead.
func (*ExampleSuper) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{4}
}

func (x *ExampleSuper) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *ExampleSuper) GetA() int32 {
	if x != nil {
		return x.A
	}
	return 0
}

func (x *ExampleSuper) GetInnerBase2() *InnerBase2 {
	if x != nil {
		return x.InnerBase2
	}
	return nil
}

func (x *ExampleSuper) GetEx1() string {
	if x != nil {
		return x.Ex1
	}
	return ""
}

func (x *ExampleSuper) GetEx2() string {
	if x != nil {
		return x.Ex2
	}
	return ""
}

func (x *ExampleSuper) GetEx3() string {
	if x != nil {
		return x.Ex3
	}
	return ""
}

func (x *ExampleSuper) GetEx4() string {
	if x != nil {
		return x.Ex4
	}
	return ""
}

func (x *ExampleSuper) GetSelfRef() *SelfRef {
	if x != nil {
		return x.SelfRef
	}
	return nil
}

func (x *ExampleSuper) GetBase() *base.Base {
	if x != nil {
		return x.Base
	}
	return nil
}

func (x *ExampleSuper) GetSubfix() float64 {
	if x != nil {
		return x.Subfix
	}
	return 0
}

type SelfRef struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Self *SelfRef `protobuf:"bytes,1,opt,name=self,proto3" json:"self,omitempty"`
}

func (x *SelfRef) Reset() {
	*x = SelfRef{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SelfRef) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SelfRef) ProtoMessage() {}

func (x *SelfRef) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[5]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SelfRef.ProtoReflect.Descriptor instead.
func (*SelfRef) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{5}
}

func (x *SelfRef) GetSelf() *SelfRef {
	if x != nil {
		return x.Self
	}
	return nil
}

type ExampleReqPartial struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Msg        string            `protobuf:"bytes,1,opt,name=Msg,proto3" json:"Msg,omitempty"`
	InnerBase2 *InnerBasePartial `protobuf:"bytes,3,opt,name=InnerBase2,proto3" json:"InnerBase2,omitempty"`
	Base       *BasePartial      `protobuf:"bytes,255,opt,name=Base,proto3" json:"Base,omitempty"`
}

func (x *ExampleReqPartial) Reset() {
	*x = ExampleReqPartial{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExampleReqPartial) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExampleReqPartial) ProtoMessage() {}

func (x *ExampleReqPartial) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[6]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExampleReqPartial.ProtoReflect.Descriptor instead.
func (*ExampleReqPartial) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{6}
}

func (x *ExampleReqPartial) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *ExampleReqPartial) GetInnerBase2() *InnerBasePartial {
	if x != nil {
		return x.InnerBase2
	}
	return nil
}

func (x *ExampleReqPartial) GetBase() *BasePartial {
	if x != nil {
		return x.Base
	}
	return nil
}

type ExampleResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Msg           string         `protobuf:"bytes,1,opt,name=Msg,proto3" json:"Msg,omitempty"`
	RequiredField string         `protobuf:"bytes,2,opt,name=required_field,json=requiredField,proto3" json:"required_field,omitempty"`
	BaseResp      *base.BaseResp `protobuf:"bytes,255,opt,name=BaseResp,proto3" json:"BaseResp,omitempty"`
}

func (x *ExampleResp) Reset() {
	*x = ExampleResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExampleResp) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExampleResp) ProtoMessage() {}

func (x *ExampleResp) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[7]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExampleResp.ProtoReflect.Descriptor instead.
func (*ExampleResp) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{7}
}

func (x *ExampleResp) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *ExampleResp) GetRequiredField() string {
	if x != nil {
		return x.RequiredField
	}
	return ""
}

func (x *ExampleResp) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

type ExampleRespPartial struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	RequiredField string         `protobuf:"bytes,2,opt,name=required_field,json=requiredField,proto3" json:"required_field,omitempty"`
	BaseResp      *base.BaseResp `protobuf:"bytes,255,opt,name=BaseResp,proto3" json:"BaseResp,omitempty"`
}

func (x *ExampleRespPartial) Reset() {
	*x = ExampleRespPartial{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExampleRespPartial) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExampleRespPartial) ProtoMessage() {}

func (x *ExampleRespPartial) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[8]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExampleRespPartial.ProtoReflect.Descriptor instead.
func (*ExampleRespPartial) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{8}
}

func (x *ExampleRespPartial) GetRequiredField() string {
	if x != nil {
		return x.RequiredField
	}
	return ""
}

func (x *ExampleRespPartial) GetBaseResp() *base.BaseResp {
	if x != nil {
		return x.BaseResp
	}
	return nil
}

type Exception struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Code int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
	Msg  string `protobuf:"bytes,255,opt,name=msg,proto3" json:"msg,omitempty"`
}

func (x *Exception) Reset() {
	*x = Exception{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Exception) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Exception) ProtoMessage() {}

func (x *Exception) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[9]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Exception.ProtoReflect.Descriptor instead.
func (*Exception) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{9}
}

func (x *Exception) GetCode() int32 {
	if x != nil {
		return x.Code
	}
	return 0
}

func (x *Exception) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

type A struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Self *A `protobuf:"bytes,1,opt,name=self,proto3" json:"self,omitempty"`
}

func (x *A) Reset() {
	*x = A{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[10]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *A) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*A) ProtoMessage() {}

func (x *A) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[10]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use A.ProtoReflect.Descriptor instead.
func (*A) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{10}
}

func (x *A) GetSelf() *A {
	if x != nil {
		return x.Self
	}
	return nil
}

type PingResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
}

func (x *PingResponse) Reset() {
	*x = PingResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[11]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PingResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PingResponse) ProtoMessage() {}

func (x *PingResponse) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[11]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PingResponse.ProtoReflect.Descriptor instead.
func (*PingResponse) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{11}
}

func (x *PingResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

type OnewayRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`
}

func (x *OnewayRequest) Reset() {
	*x = OnewayRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[12]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OnewayRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OnewayRequest) ProtoMessage() {}

func (x *OnewayRequest) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[12]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OnewayRequest.ProtoReflect.Descriptor instead.
func (*OnewayRequest) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{12}
}

func (x *OnewayRequest) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

type VoidRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`
}

func (x *VoidRequest) Reset() {
	*x = VoidRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[13]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *VoidRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*VoidRequest) ProtoMessage() {}

func (x *VoidRequest) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[13]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use VoidRequest.ProtoReflect.Descriptor instead.
func (*VoidRequest) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{13}
}

func (x *VoidRequest) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

type VoidResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *VoidResponse) Reset() {
	*x = VoidResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[14]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *VoidResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*VoidResponse) ProtoMessage() {}

func (x *VoidResponse) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[14]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use VoidResponse.ProtoReflect.Descriptor instead.
func (*VoidResponse) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{14}
}

type ExampleInt2Float struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Int32   int32   `protobuf:"varint,1,opt,name=Int32,proto3" json:"Int32,omitempty"`
	Float64 float64 `protobuf:"fixed64,2,opt,name=Float64,proto3" json:"Float64,omitempty"`
	String_ string  `protobuf:"bytes,3,opt,name=String,proto3" json:"String,omitempty"`
	Int64   int64   `protobuf:"varint,4,opt,name=Int64,proto3" json:"Int64,omitempty"`
	Subfix  float64 `protobuf:"fixed64,32767,opt,name=Subfix,proto3" json:"Subfix,omitempty"`
}

func (x *ExampleInt2Float) Reset() {
	*x = ExampleInt2Float{}
	if protoimpl.UnsafeEnabled {
		mi := &file_idl_example3_proto_msgTypes[15]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExampleInt2Float) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExampleInt2Float) ProtoMessage() {}

func (x *ExampleInt2Float) ProtoReflect() protoreflect.Message {
	mi := &file_idl_example3_proto_msgTypes[15]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExampleInt2Float.ProtoReflect.Descriptor instead.
func (*ExampleInt2Float) Descriptor() ([]byte, []int) {
	return file_idl_example3_proto_rawDescGZIP(), []int{15}
}

func (x *ExampleInt2Float) GetInt32() int32 {
	if x != nil {
		return x.Int32
	}
	return 0
}

func (x *ExampleInt2Float) GetFloat64() float64 {
	if x != nil {
		return x.Float64
	}
	return 0
}

func (x *ExampleInt2Float) GetString_() string {
	if x != nil {
		return x.String_
	}
	return ""
}

func (x *ExampleInt2Float) GetInt64() int64 {
	if x != nil {
		return x.Int64
	}
	return 0
}

func (x *ExampleInt2Float) GetSubfix() float64 {
	if x != nil {
		return x.Subfix
	}
	return 0
}

var File_idl_example3_proto protoreflect.FileDescriptor

var file_idl_example3_proto_rawDesc = []byte{
	0x0a, 0x12, 0x69, 0x64, 0x6c, 0x2f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x33, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x12, 0x03, 0x70, 0x62, 0x33, 0x1a, 0x0e, 0x69, 0x64, 0x6c, 0x2f, 0x62,
	0x61, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xda, 0x0f, 0x0a, 0x0a, 0x49, 0x6e,
	0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x42, 0x6f, 0x6f, 0x6c,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06,
	0x55, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x55, 0x69,
	0x6e, 0x74, 0x33, 0x32, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x12, 0x14, 0x0a, 0x05,
	0x49, 0x6e, 0x74, 0x33, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x49, 0x6e, 0x74,
	0x33, 0x32, 0x12, 0x14, 0x0a, 0x05, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x05, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x12, 0x16, 0x0a, 0x06, 0x44, 0x6f, 0x75, 0x62,
	0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x52, 0x06, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65,
	0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74,
	0x49, 0x6e, 0x74, 0x33, 0x32, 0x18, 0x08, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x4c, 0x69, 0x73,
	0x74, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x4e, 0x0a, 0x0f, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72,
	0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x24, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32,
	0x2e, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
	0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0f, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
	0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x74,
	0x33, 0x32, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x74,
	0x33, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x46, 0x6f, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x08, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x46, 0x4f, 0x4f, 0x52, 0x03, 0x46, 0x6f, 0x6f, 0x12, 0x4b,
	0x0a, 0x0e, 0x4d, 0x61, 0x70, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
	0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49, 0x6e, 0x6e,
	0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x2e, 0x4d, 0x61, 0x70, 0x49, 0x6e, 0x74, 0x33, 0x32,
	0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e, 0x4d, 0x61, 0x70,
	0x49, 0x6e, 0x74, 0x33, 0x32, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x42,
	0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x42, 0x69, 0x6e,
	0x61, 0x72, 0x79, 0x12, 0x4e, 0x0a, 0x0f, 0x4d, 0x61, 0x70, 0x55, 0x69, 0x6e, 0x74, 0x33, 0x32,
	0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70,
	0x62, 0x33, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x2e, 0x4d, 0x61,
	0x70, 0x55, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74,
	0x72, 0x79, 0x52, 0x0f, 0x4d, 0x61, 0x70, 0x55, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x53, 0x74, 0x72,
	0x69, 0x6e, 0x67, 0x12, 0x4e, 0x0a, 0x0f, 0x4d, 0x61, 0x70, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34,
	0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70,
	0x62, 0x33, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x2e, 0x4d, 0x61,
	0x70, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74,
	0x72, 0x79, 0x52, 0x0f, 0x4d, 0x61, 0x70, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x53, 0x74, 0x72,
	0x69, 0x6e, 0x67, 0x12, 0x4b, 0x0a, 0x0e, 0x4d, 0x61, 0x70, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x53,
	0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70, 0x62,
	0x33, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x2e, 0x4d, 0x61, 0x70,
	0x49, 0x6e, 0x74, 0x36, 0x34, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79,
	0x52, 0x0e, 0x4d, 0x61, 0x70, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
	0x12, 0x45, 0x0a, 0x0c, 0x4d, 0x61, 0x70, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x42, 0x61, 0x73, 0x65,
	0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49, 0x6e, 0x6e,
	0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x2e, 0x4d, 0x61, 0x70, 0x49, 0x6e, 0x74, 0x36, 0x34,
	0x42, 0x61, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x4d, 0x61, 0x70, 0x49, 0x6e,
	0x74, 0x36, 0x34, 0x42, 0x61, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x0d, 0x4d, 0x61, 0x70, 0x53, 0x74,
	0x72, 0x69, 0x6e, 0x67, 0x42, 0x61, 0x73, 0x65, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22,
	0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x2e,
	0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x61, 0x73, 0x65, 0x45, 0x6e, 0x74,
	0x72, 0x79, 0x52, 0x0d, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x61, 0x73,
	0x65, 0x12, 0x25, 0x0a, 0x08, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x73, 0x65, 0x18, 0x13, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x08,
	0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74,
	0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x0f, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32,
	0x52, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x12,
	0x1e, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x15, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12,
	0x1a, 0x0a, 0x08, 0x53, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x18, 0x16, 0x20, 0x01, 0x28,
	0x0f, 0x52, 0x08, 0x53, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x12, 0x18, 0x0a, 0x07, 0x46,
	0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x18, 0x17, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x46, 0x69,
	0x78, 0x65, 0x64, 0x36, 0x34, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x18,
	0x18, 0x20, 0x01, 0x28, 0x11, 0x52, 0x06, 0x53, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x16, 0x0a,
	0x06, 0x53, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x19, 0x20, 0x01, 0x28, 0x12, 0x52, 0x06, 0x53,
	0x69, 0x6e, 0x74, 0x36, 0x34, 0x12, 0x1e, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x6e,
	0x74, 0x36, 0x34, 0x18, 0x1a, 0x20, 0x03, 0x28, 0x12, 0x52, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x53,
	0x49, 0x6e, 0x74, 0x36, 0x34, 0x12, 0x1e, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x6e,
	0x74, 0x33, 0x32, 0x18, 0x1b, 0x20, 0x03, 0x28, 0x11, 0x52, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x53,
	0x49, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x22, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x66, 0x69,
	0x78, 0x65, 0x64, 0x33, 0x32, 0x18, 0x1c, 0x20, 0x03, 0x28, 0x0f, 0x52, 0x0c, 0x4c, 0x69, 0x73,
	0x74, 0x53, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x12, 0x20, 0x0a, 0x0b, 0x4c, 0x69, 0x73,
	0x74, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0b,
	0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x12, 0x51, 0x0a, 0x10, 0x4d,
	0x61, 0x70, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x53, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x18,
	0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49, 0x6e, 0x6e, 0x65,
	0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x2e, 0x4d, 0x61, 0x70, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x53,
	0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x4d, 0x61,
	0x70, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x53, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x12, 0x51,
	0x0a, 0x10, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x46, 0x69, 0x78, 0x65, 0x64,
	0x33, 0x32, 0x18, 0x1f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49,
	0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x2e, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72,
	0x69, 0x6e, 0x67, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
	0x10, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33,
	0x32, 0x12, 0x1e, 0x0a, 0x04, 0x42, 0x61, 0x73, 0x65, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x09, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04, 0x42, 0x61, 0x73,
	0x65, 0x1a, 0x42, 0x0a, 0x14, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x74,
	0x72, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x41, 0x0a, 0x13, 0x4d, 0x61, 0x70, 0x49, 0x6e, 0x74, 0x33,
	0x32, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14,
	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x42, 0x0a, 0x14, 0x4d, 0x61, 0x70, 0x55,
	0x69, 0x6e, 0x74, 0x33, 0x32, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79,
	0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b,
	0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x42, 0x0a, 0x14,
	0x4d, 0x61, 0x70, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x45,
	0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x04, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
	0x1a, 0x41, 0x0a, 0x13, 0x4d, 0x61, 0x70, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x53, 0x74, 0x72, 0x69,
	0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
	0x02, 0x38, 0x01, 0x1a, 0x4a, 0x0a, 0x11, 0x4d, 0x61, 0x70, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x42,
	0x61, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x05, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x70, 0x62, 0x33, 0x2e,
	0x42, 0x61, 0x73, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a,
	0x4b, 0x0a, 0x12, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x61, 0x73, 0x65,
	0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x42, 0x61, 0x73,
	0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x43, 0x0a, 0x15,
	0x4d, 0x61, 0x70, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x53, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34,
	0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x10, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
	0x01, 0x1a, 0x43, 0x0a, 0x15, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x46, 0x69,
	0x78, 0x65, 0x64, 0x33, 0x32, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x05, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x8b, 0x05, 0x0a, 0x10, 0x49, 0x6e, 0x6e, 0x65, 0x72,
	0x42, 0x61, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x42,
	0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x42, 0x6f, 0x6f, 0x6c, 0x12,
	0x1c, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x18, 0x08, 0x20, 0x03,
	0x28, 0x05, 0x52, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x54, 0x0a,
	0x0f, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
	0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49, 0x6e, 0x6e,
	0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x2e, 0x4d, 0x61,
	0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74,
	0x72, 0x79, 0x52, 0x0f, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72,
	0x69, 0x6e, 0x67, 0x12, 0x4e, 0x0a, 0x0d, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
	0x42, 0x61, 0x73, 0x65, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x62, 0x33,
	0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61,
	0x6c, 0x2e, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x61, 0x73, 0x65, 0x45,
	0x6e, 0x74, 0x72, 0x79, 0x52, 0x0d, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42,
	0x61, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x6e, 0x65, 0x72,
	0x42, 0x61, 0x73, 0x65, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x62, 0x33,
	0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61,
	0x6c, 0x52, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65,
	0x12, 0x2c, 0x0a, 0x08, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x73, 0x65, 0x18, 0x13, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x50, 0x61, 0x72,
	0x74, 0x69, 0x61, 0x6c, 0x52, 0x08, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x73, 0x65, 0x12, 0x57,
	0x0a, 0x10, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69, 0x6e,
	0x67, 0x32, 0x18, 0x7f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49,
	0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x2e,
	0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x32,
	0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
	0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x32, 0x1a, 0x42, 0x0a, 0x14, 0x4d, 0x61, 0x70, 0x53, 0x74,
	0x72, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
	0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
	0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x52, 0x0a, 0x12, 0x4d,
	0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x61, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72,
	0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
	0x6b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x50, 0x61, 0x72,
	0x74, 0x69, 0x61, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a,
	0x43, 0x0a, 0x15, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69,
	0x6e, 0x67, 0x32, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x3a, 0x02, 0x38, 0x01, 0x22, 0x3e, 0x0a, 0x0b, 0x42, 0x61, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74,
	0x69, 0x61, 0x6c, 0x12, 0x2f, 0x0a, 0x0a, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x45, 0x6e,
	0x76, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x54, 0x72,
	0x61, 0x66, 0x66, 0x69, 0x63, 0x45, 0x6e, 0x76, 0x52, 0x0a, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69,
	0x63, 0x45, 0x6e, 0x76, 0x22, 0x97, 0x01, 0x0a, 0x0a, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65,
	0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x0c, 0x0a, 0x01, 0x41, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x01, 0x41, 0x12, 0x2f, 0x0a, 0x0a, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65,
	0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49, 0x6e,
	0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x52, 0x0a, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42,
	0x61, 0x73, 0x65, 0x32, 0x12, 0x1e, 0x0a, 0x04, 0x42, 0x61, 0x73, 0x65, 0x18, 0xff, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04,
	0x42, 0x61, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x06, 0x53, 0x75, 0x62, 0x66, 0x69, 0x78, 0x18, 0xff,
	0xff, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x06, 0x53, 0x75, 0x62, 0x66, 0x69, 0x78, 0x22, 0x89,
	0x02, 0x0a, 0x0c, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x53, 0x75, 0x70, 0x65, 0x72, 0x12,
	0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73,
	0x67, 0x12, 0x0c, 0x0a, 0x01, 0x41, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x41, 0x12,
	0x2f, 0x0a, 0x0a, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42,
	0x61, 0x73, 0x65, 0x32, 0x52, 0x0a, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32,
	0x12, 0x10, 0x0a, 0x03, 0x45, 0x78, 0x31, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x45,
	0x78, 0x31, 0x12, 0x10, 0x0a, 0x03, 0x45, 0x78, 0x32, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x45, 0x78, 0x32, 0x12, 0x10, 0x0a, 0x03, 0x45, 0x78, 0x33, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x45, 0x78, 0x33, 0x12, 0x10, 0x0a, 0x03, 0x45, 0x78, 0x34, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x45, 0x78, 0x34, 0x12, 0x26, 0x0a, 0x07, 0x53, 0x65, 0x6c, 0x66,
	0x52, 0x65, 0x66, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x62, 0x33, 0x2e,
	0x53, 0x65, 0x6c, 0x66, 0x52, 0x65, 0x66, 0x52, 0x07, 0x53, 0x65, 0x6c, 0x66, 0x52, 0x65, 0x66,
	0x12, 0x1e, 0x0a, 0x04, 0x42, 0x61, 0x73, 0x65, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x09, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04, 0x42, 0x61, 0x73, 0x65,
	0x12, 0x18, 0x0a, 0x06, 0x53, 0x75, 0x62, 0x66, 0x69, 0x78, 0x18, 0xff, 0xff, 0x01, 0x20, 0x01,
	0x28, 0x01, 0x52, 0x06, 0x53, 0x75, 0x62, 0x66, 0x69, 0x78, 0x22, 0x2b, 0x0a, 0x07, 0x53, 0x65,
	0x6c, 0x66, 0x52, 0x65, 0x66, 0x12, 0x20, 0x0a, 0x04, 0x73, 0x65, 0x6c, 0x66, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x53, 0x65, 0x6c, 0x66, 0x52, 0x65,
	0x66, 0x52, 0x04, 0x73, 0x65, 0x6c, 0x66, 0x22, 0x83, 0x01, 0x0a, 0x11, 0x45, 0x78, 0x61, 0x6d,
	0x70, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x10, 0x0a,
	0x03, 0x4d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x12,
	0x35, 0x0a, 0x0a, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x42,
	0x61, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x0a, 0x49, 0x6e, 0x6e, 0x65,
	0x72, 0x42, 0x61, 0x73, 0x65, 0x32, 0x12, 0x25, 0x0a, 0x04, 0x42, 0x61, 0x73, 0x65, 0x18, 0xff,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x42, 0x61, 0x73, 0x65,
	0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x04, 0x42, 0x61, 0x73, 0x65, 0x22, 0x72, 0x0a,
	0x0b, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03,
	0x4d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x25,
	0x0a, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64,
	0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x42,
	0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x52, 0x08, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x22, 0x67, 0x0a, 0x12, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x69,
	0x72, 0x65, 0x64, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x2a,
	0x0a, 0x08, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x52, 0x08, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x32, 0x0a, 0x09, 0x45, 0x78,
	0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x11, 0x0a, 0x03, 0x6d,
	0x73, 0x67, 0x18, 0xff, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x1f,
	0x0a, 0x01, 0x41, 0x12, 0x1a, 0x0a, 0x04, 0x73, 0x65, 0x6c, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x06, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x41, 0x52, 0x04, 0x73, 0x65, 0x6c, 0x66, 0x22,
	0x28, 0x0a, 0x0c, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x21, 0x0a, 0x0d, 0x4f, 0x6e, 0x65,
	0x77, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73,
	0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x1f, 0x0a, 0x0b,
	0x56, 0x6f, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d,
	0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x0e, 0x0a,
	0x0c, 0x56, 0x6f, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8a, 0x01,
	0x0a, 0x10, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x32, 0x46, 0x6c, 0x6f,
	0x61, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x05, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x18, 0x0a, 0x07, 0x46, 0x6c, 0x6f, 0x61,
	0x74, 0x36, 0x34, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x46, 0x6c, 0x6f, 0x61, 0x74,
	0x36, 0x34, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x49, 0x6e,
	0x74, 0x36, 0x34, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x49, 0x6e, 0x74, 0x36, 0x34,
	0x12, 0x18, 0x0a, 0x06, 0x53, 0x75, 0x62, 0x66, 0x69, 0x78, 0x18, 0xff, 0xff, 0x01, 0x20, 0x01,
	0x28, 0x01, 0x52, 0x06, 0x53, 0x75, 0x62, 0x66, 0x69, 0x78, 0x2a, 0x10, 0x0a, 0x03, 0x46, 0x4f,
	0x4f, 0x12, 0x09, 0x0a, 0x05, 0x46, 0x4f, 0x4f, 0x5f, 0x41, 0x10, 0x00, 0x32, 0xce, 0x03, 0x0a,
	0x0c, 0x54, 0x65, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x32, 0x12, 0x32, 0x0a,
	0x0d, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x0f,
	0x2e, 0x70, 0x62, 0x33, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x1a,
	0x10, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x36, 0x0a, 0x14, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x74,
	0x69, 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x33, 0x2e,
	0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61,
	0x6c, 0x1a, 0x06, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x41, 0x12, 0x48, 0x0a, 0x15, 0x45, 0x78, 0x61,
	0x6d, 0x70, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x68, 0x6f,
	0x64, 0x32, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65,
	0x52, 0x65, 0x71, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x33,
	0x2e, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x50, 0x61, 0x72, 0x74,
	0x69, 0x61, 0x6c, 0x12, 0x2f, 0x0a, 0x12, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x53, 0x75,
	0x70, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x11, 0x2e, 0x70, 0x62, 0x33, 0x2e,
	0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x53, 0x75, 0x70, 0x65, 0x72, 0x1a, 0x06, 0x2e, 0x70,
	0x62, 0x33, 0x2e, 0x41, 0x12, 0x3f, 0x0a, 0x0f, 0x49, 0x6e, 0x74, 0x32, 0x46, 0x6c, 0x6f, 0x61,
	0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x45, 0x78,
	0x61, 0x6d, 0x70, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x32, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x1a, 0x15,
	0x2e, 0x70, 0x62, 0x33, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x32,
	0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x15, 0x0a, 0x03, 0x46, 0x6f, 0x6f, 0x12, 0x06, 0x2e, 0x70,
	0x62, 0x33, 0x2e, 0x41, 0x1a, 0x06, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x41, 0x12, 0x21, 0x0a, 0x04,
	0x50, 0x69, 0x6e, 0x67, 0x12, 0x06, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x41, 0x1a, 0x11, 0x2e, 0x70,
	0x62, 0x33, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x2f, 0x0a, 0x06, 0x4f, 0x6e, 0x65, 0x77, 0x61, 0x79, 0x12, 0x12, 0x2e, 0x70, 0x62, 0x33, 0x2e,
	0x4f, 0x6e, 0x65, 0x77, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e,
	0x70, 0x62, 0x33, 0x2e, 0x56, 0x6f, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x2b, 0x0a, 0x04, 0x56, 0x6f, 0x69, 0x64, 0x12, 0x10, 0x2e, 0x70, 0x62, 0x33, 0x2e, 0x56,
	0x6f, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x70, 0x62, 0x33,
	0x2e, 0x56, 0x6f, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x3f, 0x5a,
	0x3d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6c, 0x6f, 0x75,
	0x64, 0x77, 0x65, 0x67, 0x6f, 0x2f, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x67, 0x6f, 0x2f,
	0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x6b, 0x69, 0x74, 0x65, 0x78, 0x5f, 0x67,
	0x65, 0x6e, 0x2f, 0x70, 0x62, 0x2f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x33, 0x62, 0x06,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_idl_example3_proto_rawDescOnce sync.Once
	file_idl_example3_proto_rawDescData = file_idl_example3_proto_rawDesc
)

func file_idl_example3_proto_rawDescGZIP() []byte {
	file_idl_example3_proto_rawDescOnce.Do(func() {
		file_idl_example3_proto_rawDescData = protoimpl.X.CompressGZIP(file_idl_example3_proto_rawDescData)
	})
	return file_idl_example3_proto_rawDescData
}

var file_idl_example3_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_idl_example3_proto_msgTypes = make([]protoimpl.MessageInfo, 28)
var file_idl_example3_proto_goTypes = []interface{}{
	(FOO)(0),                   // 0: pb3.FOO
	(*InnerBase2)(nil),         // 1: pb3.InnerBase2
	(*InnerBasePartial)(nil),   // 2: pb3.InnerBasePartial
	(*BasePartial)(nil),        // 3: pb3.BasePartial
	(*ExampleReq)(nil),         // 4: pb3.ExampleReq
	(*ExampleSuper)(nil),       // 5: pb3.ExampleSuper
	(*SelfRef)(nil),            // 6: pb3.SelfRef
	(*ExampleReqPartial)(nil),  // 7: pb3.ExampleReqPartial
	(*ExampleResp)(nil),        // 8: pb3.ExampleResp
	(*ExampleRespPartial)(nil), // 9: pb3.ExampleRespPartial
	(*Exception)(nil),          // 10: pb3.Exception
	(*A)(nil),                  // 11: pb3.A
	(*PingResponse)(nil),       // 12: pb3.PingResponse
	(*OnewayRequest)(nil),      // 13: pb3.OnewayRequest
	(*VoidRequest)(nil),        // 14: pb3.VoidRequest
	(*VoidResponse)(nil),       // 15: pb3.VoidResponse
	(*ExampleInt2Float)(nil),   // 16: pb3.ExampleInt2Float
	nil,                        // 17: pb3.InnerBase2.MapStringStringEntry
	nil,                        // 18: pb3.InnerBase2.MapInt32StringEntry
	nil,                        // 19: pb3.InnerBase2.MapUint32StringEntry
	nil,                        // 20: pb3.InnerBase2.MapUint64StringEntry
	nil,                        // 21: pb3.InnerBase2.MapInt64StringEntry
	nil,                        // 22: pb3.InnerBase2.MapInt64BaseEntry
	nil,                        // 23: pb3.InnerBase2.MapStringBaseEntry
	nil,                        // 24: pb3.InnerBase2.MapInt64Sfixed64Entry
	nil,                        // 25: pb3.InnerBase2.MapStringFixed32Entry
	nil,                        // 26: pb3.InnerBasePartial.MapStringStringEntry
	nil,                        // 27: pb3.InnerBasePartial.MapStringBaseEntry
	nil,                        // 28: pb3.InnerBasePartial.MapStringString2Entry
	(*base.Base)(nil),          // 29: pb3.Base
	(*base.TrafficEnv)(nil),    // 30: pb3.TrafficEnv
	(*base.BaseResp)(nil),      // 31: pb3.BaseResp
}
var file_idl_example3_proto_depIdxs = []int32{
	17, // 0: pb3.InnerBase2.MapStringString:type_name -> pb3.InnerBase2.MapStringStringEntry
	0,  // 1: pb3.InnerBase2.Foo:type_name -> pb3.FOO
	18, // 2: pb3.InnerBase2.MapInt32String:type_name -> pb3.InnerBase2.MapInt32StringEntry
	19, // 3: pb3.InnerBase2.MapUint32String:type_name -> pb3.InnerBase2.MapUint32StringEntry
	20, // 4: pb3.InnerBase2.MapUint64String:type_name -> pb3.InnerBase2.MapUint64StringEntry
	21, // 5: pb3.InnerBase2.MapInt64String:type_name -> pb3.InnerBase2.MapInt64StringEntry
	22, // 6: pb3.InnerBase2.MapInt64Base:type_name -> pb3.InnerBase2.MapInt64BaseEntry
	23, // 7: pb3.InnerBase2.MapStringBase:type_name -> pb3.InnerBase2.MapStringBaseEntry
	29, // 8: pb3.InnerBase2.ListBase:type_name -> pb3.Base
	1,  // 9: pb3.InnerBase2.ListInnerBase:type_name -> pb3.InnerBase2
	24, // 10: pb3.InnerBase2.MapInt64Sfixed64:type_name -> pb3.InnerBase2.MapInt64Sfixed64Entry
	25, // 11: pb3.InnerBase2.MapStringFixed32:type_name -> pb3.InnerBase2.MapStringFixed32Entry
	29, // 12: pb3.InnerBase2.Base:type_name -> pb3.Base
	26, // 13: pb3.InnerBasePartial.MapStringString:type_name -> pb3.InnerBasePartial.MapStringStringEntry
	27, // 14: pb3.InnerBasePartial.MapStringBase:type_name -> pb3.InnerBasePartial.MapStringBaseEntry
	2,  // 15: pb3.InnerBasePartial.ListInnerBase:type_name -> pb3.InnerBasePartial
	3,  // 16: pb3.InnerBasePartial.ListBase:type_name -> pb3.BasePartial
	28, // 17: pb3.InnerBasePartial.MapStringString2:type_name -> pb3.InnerBasePartial.MapStringString2Entry
	30, // 18: pb3.BasePartial.TrafficEnv:type_name -> pb3.TrafficEnv
	1,  // 19: pb3.ExampleReq.InnerBase2:type_name -> pb3.InnerBase2
	29, // 20: pb3.ExampleReq.Base:type_name -> pb3.Base
	1,  // 21: pb3.ExampleSuper.InnerBase2:type_name -> pb3.InnerBase2
	6,  // 22: pb3.ExampleSuper.SelfRef:type_name -> pb3.SelfRef
	29, // 23: pb3.ExampleSuper.Base:type_name -> pb3.Base
	6,  // 24: pb3.SelfRef.self:type_name -> pb3.SelfRef
	2,  // 25: pb3.ExampleReqPartial.InnerBase2:type_name -> pb3.InnerBasePartial
	3,  // 26: pb3.ExampleReqPartial.Base:type_name -> pb3.BasePartial
	31, // 27: pb3.ExampleResp.BaseResp:type_name -> pb3.BaseResp
	31, // 28: pb3.ExampleRespPartial.BaseResp:type_name -> pb3.BaseResp
	11, // 29: pb3.A.self:type_name -> pb3.A
	29, // 30: pb3.InnerBase2.MapInt64BaseEntry.value:type_name -> pb3.Base
	29, // 31: pb3.InnerBase2.MapStringBaseEntry.value:type_name -> pb3.Base
	3,  // 32: pb3.InnerBasePartial.MapStringBaseEntry.value:type_name -> pb3.BasePartial
	4,  // 33: pb3.TestService2.ExampleMethod:input_type -> pb3.ExampleReq
	7,  // 34: pb3.TestService2.ExamplePartialMethod:input_type -> pb3.ExampleReqPartial
	7,  // 35: pb3.TestService2.ExamplePartialMethod2:input_type -> pb3.ExampleReqPartial
	5,  // 36: pb3.TestService2.ExampleSuperMethod:input_type -> pb3.ExampleSuper
	16, // 37: pb3.TestService2.Int2FloatMethod:input_type -> pb3.ExampleInt2Float
	11, // 38: pb3.TestService2.Foo:input_type -> pb3.A
	11, // 39: pb3.TestService2.Ping:input_type -> pb3.A
	13, // 40: pb3.TestService2.Oneway:input_type -> pb3.OnewayRequest
	14, // 41: pb3.TestService2.Void:input_type -> pb3.VoidRequest
	8,  // 42: pb3.TestService2.ExampleMethod:output_type -> pb3.ExampleResp
	11, // 43: pb3.TestService2.ExamplePartialMethod:output_type -> pb3.A
	9,  // 44: pb3.TestService2.ExamplePartialMethod2:output_type -> pb3.ExampleRespPartial
	11, // 45: pb3.TestService2.ExampleSuperMethod:output_type -> pb3.A
	16, // 46: pb3.TestService2.Int2FloatMethod:output_type -> pb3.ExampleInt2Float
	11, // 47: pb3.TestService2.Foo:output_type -> pb3.A
	12, // 48: pb3.TestService2.Ping:output_type -> pb3.PingResponse
	15, // 49: pb3.TestService2.Oneway:output_type -> pb3.VoidResponse
	15, // 50: pb3.TestService2.Void:output_type -> pb3.VoidResponse
	42, // [42:51] is the sub-list for method output_type
	33, // [33:42] is the sub-list for method input_type
	33, // [33:33] is the sub-list for extension type_name
	33, // [33:33] is the sub-list for extension extendee
	0,  // [0:33] is the sub-list for field type_name
}

func init() { file_idl_example3_proto_init() }
func file_idl_example3_proto_init() {
	if File_idl_example3_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_idl_example3_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InnerBase2); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InnerBasePartial); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BasePartial); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExampleReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExampleSuper); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SelfRef); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExampleReqPartial); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExampleResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExampleRespPartial); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Exception); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*A); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PingResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OnewayRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VoidRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VoidResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_idl_example3_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExampleInt2Float); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_idl_example3_proto_rawDesc,
			NumEnums:      1,
			NumMessages:   28,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_idl_example3_proto_goTypes,
		DependencyIndexes: file_idl_example3_proto_depIdxs,
		EnumInfos:         file_idl_example3_proto_enumTypes,
		MessageInfos:      file_idl_example3_proto_msgTypes,
	}.Build()
	File_idl_example3_proto = out.File
	file_idl_example3_proto_rawDesc = nil
	file_idl_example3_proto_goTypes = nil
	file_idl_example3_proto_depIdxs = nil
}

var _ context.Context

// Code generated by Kitex v0.9.1. DO NOT EDIT.

type TestService2 interface {
	ExampleMethod(ctx context.Context, req *ExampleReq) (res *ExampleResp, err error)
	ExamplePartialMethod(ctx context.Context, req *ExampleReqPartial) (res *A, err error)
	ExamplePartialMethod2(ctx context.Context, req *ExampleReqPartial) (res *ExampleRespPartial, err error)
	ExampleSuperMethod(ctx context.Context, req *ExampleSuper) (res *A, err error)
	Int2FloatMethod(ctx context.Context, req *ExampleInt2Float) (res *ExampleInt2Float, err error)
	Foo(ctx context.Context, req *A) (res *A, err error)
	Ping(ctx context.Context, req *A) (res *PingResponse, err error)
	Oneway(ctx context.Context, req *OnewayRequest) (res *VoidResponse, err error)
	Void(ctx context.Context, req *VoidRequest) (res *VoidResponse, err error)
}
