// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.31.0
// 	protoc        v3.19.4
// source: pcm-openstack.proto

package openstack

import (
	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)
)

// *****************Overview Start************************
type GetComputeLimitsReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform,omitempty"`
}

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

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

func (*GetComputeLimitsReq) ProtoMessage() {}

func (x *GetComputeLimitsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 GetComputeLimitsReq.ProtoReflect.Descriptor instead.
func (*GetComputeLimitsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{0}
}

func (x *GetComputeLimitsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Limits   *GetComputeLimitsResp_Limits `protobuf:"bytes,1,opt,name=limits,proto3" json:"limits,omitempty"`
	Code     int32                        `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                       `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                       `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

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

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

func (*GetComputeLimitsResp) ProtoMessage() {}

func (x *GetComputeLimitsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 GetComputeLimitsResp.ProtoReflect.Descriptor instead.
func (*GetComputeLimitsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{1}
}

func (x *GetComputeLimitsResp) GetLimits() *GetComputeLimitsResp_Limits {
	if x != nil {
		return x.Limits
	}
	return nil
}

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

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

func (x *GetComputeLimitsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform,omitempty"`
}

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

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

func (*GetVolumeLimitsReq) ProtoMessage() {}

func (x *GetVolumeLimitsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 GetVolumeLimitsReq.ProtoReflect.Descriptor instead.
func (*GetVolumeLimitsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{2}
}

func (x *GetVolumeLimitsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Limits   *GetVolumeLimitsResp_Limits `protobuf:"bytes,1,opt,name=limits,proto3" json:"limits,omitempty"`
	Code     int32                       `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                      `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                      `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

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

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

func (*GetVolumeLimitsResp) ProtoMessage() {}

func (x *GetVolumeLimitsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 GetVolumeLimitsResp.ProtoReflect.Descriptor instead.
func (*GetVolumeLimitsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{3}
}

func (x *GetVolumeLimitsResp) GetLimits() *GetVolumeLimitsResp_Limits {
	if x != nil {
		return x.Limits
	}
	return nil
}

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

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

func (x *GetVolumeLimitsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// *****************List servers Start************************
type ListServersReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Limit    int32  `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"`   // @gotags: copier:"Limit"
	Offset   int32  `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"` // @gotags: copier:"Offset"
	Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

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

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

func (*ListServersReq) ProtoMessage() {}

func (x *ListServersReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 ListServersReq.ProtoReflect.Descriptor instead.
func (*ListServersReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{4}
}

func (x *ListServersReq) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListServersReq) GetOffset() int32 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListServersReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Servers      []*ListServersResp_Servers      `protobuf:"bytes,1,rep,name=servers,proto3" json:"servers,omitempty"`                               //对象列表。server
	ServersLinks []*ListServersResp_ServersLinks `protobuf:"bytes,2,rep,name=servers_links,json=serversLinks,proto3" json:"servers_links,omitempty"` //链接到下一个服务器
	Code         int32                           `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                                    // @gotags: copier:"Code"
	Msg          string                          `protobuf:"bytes,4,opt,name=msg,proto3" json:"msg,omitempty"`                                       // @gotags: copier:"Msg"
	ErrorMsg     string                          `protobuf:"bytes,5,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`             // @gotags: copier:"ErrorMsg"
}

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

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

func (*ListServersResp) ProtoMessage() {}

func (x *ListServersResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 ListServersResp.ProtoReflect.Descriptor instead.
func (*ListServersResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{5}
}

func (x *ListServersResp) GetServers() []*ListServersResp_Servers {
	if x != nil {
		return x.Servers
	}
	return nil
}

func (x *ListServersResp) GetServersLinks() []*ListServersResp_ServersLinks {
	if x != nil {
		return x.ServersLinks
	}
	return nil
}

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

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

func (x *ListServersResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform,omitempty"`
}

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

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

func (*ListServersDetailedReq) ProtoMessage() {}

func (x *ListServersDetailedReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 ListServersDetailedReq.ProtoReflect.Descriptor instead.
func (*ListServersDetailedReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{6}
}

func (x *ListServersDetailedReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Servers  []*ListServersDetailedResp_ServersDetailed `protobuf:"bytes,1,rep,name=servers,proto3" json:"servers,omitempty"`                   // @gotags: copier:"ServersDetailed"
	Code     int32                                      `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                                     `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                                     `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

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

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

func (*ListServersDetailedResp) ProtoMessage() {}

func (x *ListServersDetailedResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 ListServersDetailedResp.ProtoReflect.Descriptor instead.
func (*ListServersDetailedResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{7}
}

func (x *ListServersDetailedResp) GetServers() []*ListServersDetailedResp_ServersDetailed {
	if x != nil {
		return x.Servers
	}
	return nil
}

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

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

func (x *ListServersDetailedResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// req
type CreateServerReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Platform string                    `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform,omitempty"`
	CrServer *CreateServerReq_CrServer `protobuf:"bytes,2,opt,name=crServer,proto3" json:"crServer,omitempty"`
}

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

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

func (*CreateServerReq) ProtoMessage() {}

func (x *CreateServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 CreateServerReq.ProtoReflect.Descriptor instead.
func (*CreateServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{8}
}

func (x *CreateServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

func (x *CreateServerReq) GetCrServer() *CreateServerReq_CrServer {
	if x != nil {
		return x.CrServer
	}
	return nil
}

// resp
type CreateServerResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Server   *CreateServerResp_Server `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"`                     // @gotags: copier:"Server"
	Code     int32                    `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                   `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                   `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

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

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

func (*CreateServerResp) ProtoMessage() {}

func (x *CreateServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 CreateServerResp.ProtoReflect.Descriptor instead.
func (*CreateServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{9}
}

func (x *CreateServerResp) GetServer() *CreateServerResp_Server {
	if x != nil {
		return x.Server
	}
	return nil
}

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

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

func (x *CreateServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// Req
type DeleteServerReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ServerId string `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"` // @gotags: copier:"ServerId"
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

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

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

func (*DeleteServerReq) ProtoMessage() {}

func (x *DeleteServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 DeleteServerReq.ProtoReflect.Descriptor instead.
func (*DeleteServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{10}
}

func (x *DeleteServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *DeleteServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

// Resp
type DeleteServerResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

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

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

func (*DeleteServerResp) ProtoMessage() {}

func (x *DeleteServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 DeleteServerResp.ProtoReflect.Descriptor instead.
func (*DeleteServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{11}
}

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

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

func (x *DeleteServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// Req
type GetServersDetailedByIdReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ServerId string `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"` // @gotags: copier:"ServerId"
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

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

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

func (*GetServersDetailedByIdReq) ProtoMessage() {}

func (x *GetServersDetailedByIdReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 GetServersDetailedByIdReq.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{12}
}

func (x *GetServersDetailedByIdReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *GetServersDetailedByIdReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

// Resp
type GetServersDetailedByIdResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Server   *GetServersDetailedByIdResp_Servers `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"`
	Code     int32                               `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                              `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                              `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

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

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

func (*GetServersDetailedByIdResp) ProtoMessage() {}

func (x *GetServersDetailedByIdResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 GetServersDetailedByIdResp.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13}
}

func (x *GetServersDetailedByIdResp) GetServer() *GetServersDetailedByIdResp_Servers {
	if x != nil {
		return x.Server
	}
	return nil
}

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

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

func (x *GetServersDetailedByIdResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// *****************update server Start************************
type UpdateServerReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ServerId     string        `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	ServerUpdate *ServerUpdate `protobuf:"bytes,2,opt,name=server_update,json=serverUpdate,proto3" json:"server_update,omitempty"`
	Platform     string        `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

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

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

func (*UpdateServerReq) ProtoMessage() {}

func (x *UpdateServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 UpdateServerReq.ProtoReflect.Descriptor instead.
func (*UpdateServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{14}
}

func (x *UpdateServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *UpdateServerReq) GetServerUpdate() *ServerUpdate {
	if x != nil {
		return x.ServerUpdate
	}
	return nil
}

func (x *UpdateServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Server *Server `protobuf:"bytes,2,opt,name=server,proto3" json:"server,omitempty"`
}

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

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

func (*ServerUpdate) ProtoMessage() {}

func (x *ServerUpdate) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_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 ServerUpdate.ProtoReflect.Descriptor instead.
func (*ServerUpdate) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{15}
}

func (x *ServerUpdate) GetServer() *Server {
	if x != nil {
		return x.Server
	}
	return nil
}

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

	AccessIPv4       string `protobuf:"bytes,1,opt,name=accessIPv4,proto3" json:"accessIPv4,omitempty"`
	AccessIPv6       string `protobuf:"bytes,2,opt,name=accessIPv6,proto3" json:"accessIPv6,omitempty"`
	OS_DCFDiskConfig string `protobuf:"bytes,3,opt,name=OS_DCF_diskConfig,json=OS-DCF:diskConfig,proto3" json:"OS_DCF_diskConfig,omitempty"`
	Name             string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"`
	Description      string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
}

func (x *Server) Reset() {
	*x = Server{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[16]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Server) ProtoMessage() {}

func (x *Server) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[16]
	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 Server.ProtoReflect.Descriptor instead.
func (*Server) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{16}
}

func (x *Server) GetAccessIPv4() string {
	if x != nil {
		return x.AccessIPv4
	}
	return ""
}

func (x *Server) GetAccessIPv6() string {
	if x != nil {
		return x.AccessIPv6
	}
	return ""
}

func (x *Server) GetOS_DCFDiskConfig() string {
	if x != nil {
		return x.OS_DCFDiskConfig
	}
	return ""
}

func (x *Server) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *Server) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

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

	Server   *UpdateServerResp_Server `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"`
	Msg      string                   `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                    `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string                   `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UpdateServerResp) Reset() {
	*x = UpdateServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[17]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateServerResp) ProtoMessage() {}

func (x *UpdateServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[17]
	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 UpdateServerResp.ProtoReflect.Descriptor instead.
func (*UpdateServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{17}
}

func (x *UpdateServerResp) GetServer() *UpdateServerResp_Server {
	if x != nil {
		return x.Server
	}
	return nil
}

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

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

func (x *UpdateServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId    string            `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Action      map[string]string `protobuf:"bytes,2,rep,name=action,proto3" json:"action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	StartAction string            `protobuf:"bytes,3,opt,name=start_action,json=startAction,proto3" json:"start_action,omitempty"`
	Platform    string            `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *StartServerReq) Reset() {
	*x = StartServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[18]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StartServerReq) ProtoMessage() {}

func (x *StartServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[18]
	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 StartServerReq.ProtoReflect.Descriptor instead.
func (*StartServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{18}
}

func (x *StartServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *StartServerReq) GetAction() map[string]string {
	if x != nil {
		return x.Action
	}
	return nil
}

func (x *StartServerReq) GetStartAction() string {
	if x != nil {
		return x.StartAction
	}
	return ""
}

func (x *StartServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *StartServerResp) Reset() {
	*x = StartServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[19]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StartServerResp) ProtoMessage() {}

func (x *StartServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[19]
	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 StartServerResp.ProtoReflect.Descriptor instead.
func (*StartServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{19}
}

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

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

func (x *StartServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId   string            `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Action     map[string]string `protobuf:"bytes,2,rep,name=action,proto3" json:"action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	StopAction string            `protobuf:"bytes,3,opt,name=stop_action,json=stopAction,proto3" json:"stop_action,omitempty"`
	Platform   string            `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *StopServerReq) Reset() {
	*x = StopServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[20]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StopServerReq) ProtoMessage() {}

func (x *StopServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[20]
	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 StopServerReq.ProtoReflect.Descriptor instead.
func (*StopServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{20}
}

func (x *StopServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *StopServerReq) GetAction() map[string]string {
	if x != nil {
		return x.Action
	}
	return nil
}

func (x *StopServerReq) GetStopAction() string {
	if x != nil {
		return x.StopAction
	}
	return ""
}

func (x *StopServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *StopServerResp) Reset() {
	*x = StopServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[21]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StopServerResp) ProtoMessage() {}

func (x *StopServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[21]
	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 StopServerResp.ProtoReflect.Descriptor instead.
func (*StopServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{21}
}

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

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

func (x *StopServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId string                  `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Reboot   *RebootServerReq_Reboot `protobuf:"bytes,2,opt,name=reboot,proto3" json:"reboot,omitempty"`
	Platform string                  `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *RebootServerReq) Reset() {
	*x = RebootServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[22]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebootServerReq) ProtoMessage() {}

func (x *RebootServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[22]
	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 RebootServerReq.ProtoReflect.Descriptor instead.
func (*RebootServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{22}
}

func (x *RebootServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *RebootServerReq) GetReboot() *RebootServerReq_Reboot {
	if x != nil {
		return x.Reboot
	}
	return nil
}

func (x *RebootServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *RebootServerResp) Reset() {
	*x = RebootServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[23]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebootServerResp) ProtoMessage() {}

func (x *RebootServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[23]
	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 RebootServerResp.ProtoReflect.Descriptor instead.
func (*RebootServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{23}
}

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

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

func (x *RebootServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId    string            `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Action      map[string]string `protobuf:"bytes,2,rep,name=action,proto3" json:"action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	PauseAction string            `protobuf:"bytes,3,opt,name=pause_action,json=pauseAction,proto3" json:"pause_action,omitempty"`
	Platform    string            `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *PauseServerReq) Reset() {
	*x = PauseServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[24]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PauseServerReq) ProtoMessage() {}

func (x *PauseServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[24]
	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 PauseServerReq.ProtoReflect.Descriptor instead.
func (*PauseServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{24}
}

func (x *PauseServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *PauseServerReq) GetAction() map[string]string {
	if x != nil {
		return x.Action
	}
	return nil
}

func (x *PauseServerReq) GetPauseAction() string {
	if x != nil {
		return x.PauseAction
	}
	return ""
}

func (x *PauseServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *PauseServerResp) Reset() {
	*x = PauseServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[25]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PauseServerResp) ProtoMessage() {}

func (x *PauseServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[25]
	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 PauseServerResp.ProtoReflect.Descriptor instead.
func (*PauseServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{25}
}

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

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

func (x *PauseServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId string                    `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Rebuild  *RebuildServerReq_Rebuild `protobuf:"bytes,2,opt,name=rebuild,proto3" json:"rebuild,omitempty"`
	Platform string                    `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *RebuildServerReq) Reset() {
	*x = RebuildServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[26]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerReq) ProtoMessage() {}

func (x *RebuildServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[26]
	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 RebuildServerReq.ProtoReflect.Descriptor instead.
func (*RebuildServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{26}
}

func (x *RebuildServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *RebuildServerReq) GetRebuild() *RebuildServerReq_Rebuild {
	if x != nil {
		return x.Rebuild
	}
	return nil
}

func (x *RebuildServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Server   *RebuildServerResp_Servers `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"`
	Code     int32                      `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                     `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                     `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *RebuildServerResp) Reset() {
	*x = RebuildServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[27]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp) ProtoMessage() {}

func (x *RebuildServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[27]
	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 RebuildServerResp.ProtoReflect.Descriptor instead.
func (*RebuildServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27}
}

func (x *RebuildServerResp) GetServer() *RebuildServerResp_Servers {
	if x != nil {
		return x.Server
	}
	return nil
}

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

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

func (x *RebuildServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId string                  `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Resize   *ResizeServerReq_Resize `protobuf:"bytes,2,opt,name=resize,proto3" json:"resize,omitempty"`
	Platform string                  `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ResizeServerReq) Reset() {
	*x = ResizeServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[28]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ResizeServerReq) ProtoMessage() {}

func (x *ResizeServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[28]
	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 ResizeServerReq.ProtoReflect.Descriptor instead.
func (*ResizeServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{28}
}

func (x *ResizeServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *ResizeServerReq) GetResize() *ResizeServerReq_Resize {
	if x != nil {
		return x.Resize
	}
	return nil
}

func (x *ResizeServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ResizeServerResp) Reset() {
	*x = ResizeServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[29]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ResizeServerResp) ProtoMessage() {}

func (x *ResizeServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[29]
	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 ResizeServerResp.ProtoReflect.Descriptor instead.
func (*ResizeServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{29}
}

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

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

func (x *ResizeServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId      string                    `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Action        map[string]string         `protobuf:"bytes,2,rep,name=action,proto3" json:"action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	MigrateAction string                    `protobuf:"bytes,3,opt,name=migrate_action,json=migrateAction,proto3" json:"migrate_action,omitempty"`
	Migrate       *MigrateServerReq_Migrate `protobuf:"bytes,4,opt,name=migrate,proto3" json:"migrate,omitempty"`
	Platform      string                    `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *MigrateServerReq) Reset() {
	*x = MigrateServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[30]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MigrateServerReq) ProtoMessage() {}

func (x *MigrateServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[30]
	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 MigrateServerReq.ProtoReflect.Descriptor instead.
func (*MigrateServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{30}
}

func (x *MigrateServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *MigrateServerReq) GetAction() map[string]string {
	if x != nil {
		return x.Action
	}
	return nil
}

func (x *MigrateServerReq) GetMigrateAction() string {
	if x != nil {
		return x.MigrateAction
	}
	return ""
}

func (x *MigrateServerReq) GetMigrate() *MigrateServerReq_Migrate {
	if x != nil {
		return x.Migrate
	}
	return nil
}

func (x *MigrateServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *MigrateServerResp) Reset() {
	*x = MigrateServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[31]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MigrateServerResp) ProtoMessage() {}

func (x *MigrateServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[31]
	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 MigrateServerResp.ProtoReflect.Descriptor instead.
func (*MigrateServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{31}
}

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

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

func (x *MigrateServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId       string                                          `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	ChangePassword *ChangeAdministrativePasswordReq_Changepassword `protobuf:"bytes,2,opt,name=changePassword,proto3" json:"changePassword,omitempty"`
	Platform       string                                          `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ChangeAdministrativePasswordReq) Reset() {
	*x = ChangeAdministrativePasswordReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[32]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChangeAdministrativePasswordReq) ProtoMessage() {}

func (x *ChangeAdministrativePasswordReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[32]
	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 ChangeAdministrativePasswordReq.ProtoReflect.Descriptor instead.
func (*ChangeAdministrativePasswordReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{32}
}

func (x *ChangeAdministrativePasswordReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *ChangeAdministrativePasswordReq) GetChangePassword() *ChangeAdministrativePasswordReq_Changepassword {
	if x != nil {
		return x.ChangePassword
	}
	return nil
}

func (x *ChangeAdministrativePasswordReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ChangeAdministrativePasswordResp) Reset() {
	*x = ChangeAdministrativePasswordResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[33]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChangeAdministrativePasswordResp) ProtoMessage() {}

func (x *ChangeAdministrativePasswordResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[33]
	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 ChangeAdministrativePasswordResp.ProtoReflect.Descriptor instead.
func (*ChangeAdministrativePasswordResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{33}
}

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

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

func (x *ChangeAdministrativePasswordResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId string                  `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Rescue   *RescueServerReq_Rescue `protobuf:"bytes,2,opt,name=rescue,proto3" json:"rescue,omitempty"`
	Platform string                  `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *RescueServerReq) Reset() {
	*x = RescueServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[34]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RescueServerReq) ProtoMessage() {}

func (x *RescueServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[34]
	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 RescueServerReq.ProtoReflect.Descriptor instead.
func (*RescueServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{34}
}

func (x *RescueServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *RescueServerReq) GetRescue() *RescueServerReq_Rescue {
	if x != nil {
		return x.Rescue
	}
	return nil
}

func (x *RescueServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	AdminPass string `protobuf:"bytes,1,opt,name=adminPass,proto3" json:"adminPass,omitempty"`
	Code      int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg       string `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg  string `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *RescueServerResp) Reset() {
	*x = RescueServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[35]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RescueServerResp) ProtoMessage() {}

func (x *RescueServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[35]
	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 RescueServerResp.ProtoReflect.Descriptor instead.
func (*RescueServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{35}
}

func (x *RescueServerResp) GetAdminPass() string {
	if x != nil {
		return x.AdminPass
	}
	return ""
}

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

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

func (x *RescueServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId       string            `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Action         map[string]string `protobuf:"bytes,2,rep,name=action,proto3" json:"action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	UnRescueAction string            `protobuf:"bytes,3,opt,name=UnRescue_action,json=UnRescueAction,proto3" json:"UnRescue_action,omitempty"`
	Platform       string            `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *UnRescueServerReq) Reset() {
	*x = UnRescueServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[36]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UnRescueServerReq) ProtoMessage() {}

func (x *UnRescueServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[36]
	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 UnRescueServerReq.ProtoReflect.Descriptor instead.
func (*UnRescueServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{36}
}

func (x *UnRescueServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *UnRescueServerReq) GetAction() map[string]string {
	if x != nil {
		return x.Action
	}
	return nil
}

func (x *UnRescueServerReq) GetUnRescueAction() string {
	if x != nil {
		return x.UnRescueAction
	}
	return ""
}

func (x *UnRescueServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UnRescueServerResp) Reset() {
	*x = UnRescueServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[37]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UnRescueServerResp) ProtoMessage() {}

func (x *UnRescueServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[37]
	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 UnRescueServerResp.ProtoReflect.Descriptor instead.
func (*UnRescueServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{37}
}

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

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

func (x *UnRescueServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId      string            `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Action        map[string]string `protobuf:"bytes,2,rep,name=action,proto3" json:"action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	UnpauseAction string            `protobuf:"bytes,3,opt,name=unpause_action,json=unpauseAction,proto3" json:"unpause_action,omitempty"`
	Platform      string            `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *UnpauseServerReq) Reset() {
	*x = UnpauseServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[38]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UnpauseServerReq) ProtoMessage() {}

func (x *UnpauseServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[38]
	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 UnpauseServerReq.ProtoReflect.Descriptor instead.
func (*UnpauseServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{38}
}

func (x *UnpauseServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *UnpauseServerReq) GetAction() map[string]string {
	if x != nil {
		return x.Action
	}
	return nil
}

func (x *UnpauseServerReq) GetUnpauseAction() string {
	if x != nil {
		return x.UnpauseAction
	}
	return ""
}

func (x *UnpauseServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UnpauseServerResp) Reset() {
	*x = UnpauseServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[39]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UnpauseServerResp) ProtoMessage() {}

func (x *UnpauseServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[39]
	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 UnpauseServerResp.ProtoReflect.Descriptor instead.
func (*UnpauseServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{39}
}

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

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

func (x *UnpauseServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId     string            `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Action       map[string]string `protobuf:"bytes,2,rep,name=action,proto3" json:"action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	ShelveAction string            `protobuf:"bytes,3,opt,name=shelve_action,json=shelveAction,proto3" json:"shelve_action,omitempty"`
	Platform     string            `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ShelveServerReq) Reset() {
	*x = ShelveServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[40]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShelveServerReq) ProtoMessage() {}

func (x *ShelveServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[40]
	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 ShelveServerReq.ProtoReflect.Descriptor instead.
func (*ShelveServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{40}
}

func (x *ShelveServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *ShelveServerReq) GetAction() map[string]string {
	if x != nil {
		return x.Action
	}
	return nil
}

func (x *ShelveServerReq) GetShelveAction() string {
	if x != nil {
		return x.ShelveAction
	}
	return ""
}

func (x *ShelveServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ShelveServerResp) Reset() {
	*x = ShelveServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[41]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShelveServerResp) ProtoMessage() {}

func (x *ShelveServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[41]
	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 ShelveServerResp.ProtoReflect.Descriptor instead.
func (*ShelveServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{41}
}

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

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

func (x *ShelveServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId       string            `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Action         map[string]string `protobuf:"bytes,2,rep,name=action,proto3" json:"action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	UnshelveAction string            `protobuf:"bytes,3,opt,name=unshelve_action,json=unshelveAction,proto3" json:"unshelve_action,omitempty"`
	Platform       string            `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *UnshelveServerReq) Reset() {
	*x = UnshelveServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[42]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UnshelveServerReq) ProtoMessage() {}

func (x *UnshelveServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[42]
	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 UnshelveServerReq.ProtoReflect.Descriptor instead.
func (*UnshelveServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{42}
}

func (x *UnshelveServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *UnshelveServerReq) GetAction() map[string]string {
	if x != nil {
		return x.Action
	}
	return nil
}

func (x *UnshelveServerReq) GetUnshelveAction() string {
	if x != nil {
		return x.UnshelveAction
	}
	return ""
}

func (x *UnshelveServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UnshelveServerResp) Reset() {
	*x = UnshelveServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[43]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UnshelveServerResp) ProtoMessage() {}

func (x *UnshelveServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[43]
	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 UnshelveServerResp.ProtoReflect.Descriptor instead.
func (*UnshelveServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{43}
}

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

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

func (x *UnshelveServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId      string            `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	Action        map[string]string `protobuf:"bytes,2,rep,name=action,proto3" json:"action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	SuspendAction string            `protobuf:"bytes,3,opt,name=suspend_action,json=suspendAction,proto3" json:"suspend_action,omitempty"`
	Platform      string            `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *SuspendServerReq) Reset() {
	*x = SuspendServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[44]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SuspendServerReq) ProtoMessage() {}

func (x *SuspendServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[44]
	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 SuspendServerReq.ProtoReflect.Descriptor instead.
func (*SuspendServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{44}
}

func (x *SuspendServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *SuspendServerReq) GetAction() map[string]string {
	if x != nil {
		return x.Action
	}
	return nil
}

func (x *SuspendServerReq) GetSuspendAction() string {
	if x != nil {
		return x.SuspendAction
	}
	return ""
}

func (x *SuspendServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *SuspendServerResp) Reset() {
	*x = SuspendServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[45]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SuspendServerResp) ProtoMessage() {}

func (x *SuspendServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[45]
	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 SuspendServerResp.ProtoReflect.Descriptor instead.
func (*SuspendServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{45}
}

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

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

func (x *SuspendServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId         string                                        `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	AddSecurityGroup *AddSecurityGroupToServerReq_AddSecurityGroup `protobuf:"bytes,2,opt,name=addSecurityGroup,proto3" json:"addSecurityGroup,omitempty"`
	Platform         string                                        `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *AddSecurityGroupToServerReq) Reset() {
	*x = AddSecurityGroupToServerReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[46]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AddSecurityGroupToServerReq) ProtoMessage() {}

func (x *AddSecurityGroupToServerReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[46]
	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 AddSecurityGroupToServerReq.ProtoReflect.Descriptor instead.
func (*AddSecurityGroupToServerReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{46}
}

func (x *AddSecurityGroupToServerReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *AddSecurityGroupToServerReq) GetAddSecurityGroup() *AddSecurityGroupToServerReq_AddSecurityGroup {
	if x != nil {
		return x.AddSecurityGroup
	}
	return nil
}

func (x *AddSecurityGroupToServerReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *AddSecurityGroupToServerResp) Reset() {
	*x = AddSecurityGroupToServerResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[47]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AddSecurityGroupToServerResp) ProtoMessage() {}

func (x *AddSecurityGroupToServerResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[47]
	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 AddSecurityGroupToServerResp.ProtoReflect.Descriptor instead.
func (*AddSecurityGroupToServerResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{47}
}

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

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

func (x *AddSecurityGroupToServerResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId            string                                      `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	RemoveSecurityGroup *RemoveSecurityGroupReq_RemoveSecurityGroup `protobuf:"bytes,2,opt,name=removeSecurityGroup,proto3" json:"removeSecurityGroup,omitempty"`
	Platform            string                                      `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *RemoveSecurityGroupReq) Reset() {
	*x = RemoveSecurityGroupReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[48]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RemoveSecurityGroupReq) ProtoMessage() {}

func (x *RemoveSecurityGroupReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[48]
	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 RemoveSecurityGroupReq.ProtoReflect.Descriptor instead.
func (*RemoveSecurityGroupReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{48}
}

func (x *RemoveSecurityGroupReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *RemoveSecurityGroupReq) GetRemoveSecurityGroup() *RemoveSecurityGroupReq_RemoveSecurityGroup {
	if x != nil {
		return x.RemoveSecurityGroup
	}
	return nil
}

func (x *RemoveSecurityGroupReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *RemoveSecurityGroupResp) Reset() {
	*x = RemoveSecurityGroupResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[49]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RemoveSecurityGroupResp) ProtoMessage() {}

func (x *RemoveSecurityGroupResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[49]
	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 RemoveSecurityGroupResp.ProtoReflect.Descriptor instead.
func (*RemoveSecurityGroupResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{49}
}

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

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

func (x *RemoveSecurityGroupResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	SortKey  string `protobuf:"bytes,1,opt,name=sort_key,json=sortKey,proto3" json:"sort_key,omitempty"`
	SortDir  string `protobuf:"bytes,2,opt,name=sort_dir,json=sortDir,proto3" json:"sort_dir,omitempty"`
	Limit    int32  `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`
	Marker   string `protobuf:"bytes,4,opt,name=marker,proto3" json:"marker,omitempty"`
	MinDisk  int32  `protobuf:"varint,5,opt,name=minDisk,proto3" json:"minDisk,omitempty"`
	MinRam   int32  `protobuf:"varint,6,opt,name=minRam,proto3" json:"minRam,omitempty"`
	IsPublic string `protobuf:"bytes,7,opt,name=is_public,json=isPublic,proto3" json:"is_public,omitempty"`
	Platform string `protobuf:"bytes,8,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListFlavorsDetailReq) Reset() {
	*x = ListFlavorsDetailReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[50]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFlavorsDetailReq) ProtoMessage() {}

func (x *ListFlavorsDetailReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[50]
	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 ListFlavorsDetailReq.ProtoReflect.Descriptor instead.
func (*ListFlavorsDetailReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{50}
}

func (x *ListFlavorsDetailReq) GetSortKey() string {
	if x != nil {
		return x.SortKey
	}
	return ""
}

func (x *ListFlavorsDetailReq) GetSortDir() string {
	if x != nil {
		return x.SortDir
	}
	return ""
}

func (x *ListFlavorsDetailReq) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListFlavorsDetailReq) GetMarker() string {
	if x != nil {
		return x.Marker
	}
	return ""
}

func (x *ListFlavorsDetailReq) GetMinDisk() int32 {
	if x != nil {
		return x.MinDisk
	}
	return 0
}

func (x *ListFlavorsDetailReq) GetMinRam() int32 {
	if x != nil {
		return x.MinRam
	}
	return 0
}

func (x *ListFlavorsDetailReq) GetIsPublic() string {
	if x != nil {
		return x.IsPublic
	}
	return ""
}

func (x *ListFlavorsDetailReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Flavors  []*ListFlavorsDetailResp_Flavor `protobuf:"bytes,1,rep,name=flavors,proto3" json:"flavors,omitempty"`                   // @gotags: copier:"Flavor"
	Msg      string                          `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                           `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string                          `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListFlavorsDetailResp) Reset() {
	*x = ListFlavorsDetailResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[51]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFlavorsDetailResp) ProtoMessage() {}

func (x *ListFlavorsDetailResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[51]
	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 ListFlavorsDetailResp.ProtoReflect.Descriptor instead.
func (*ListFlavorsDetailResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{51}
}

func (x *ListFlavorsDetailResp) GetFlavors() []*ListFlavorsDetailResp_Flavor {
	if x != nil {
		return x.Flavors
	}
	return nil
}

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

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

func (x *ListFlavorsDetailResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Flavor   *CreateFlavorReq_Flavor `protobuf:"bytes,1,opt,name=flavor,proto3" json:"flavor,omitempty"`
	Platform string                  `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateFlavorReq) Reset() {
	*x = CreateFlavorReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[52]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFlavorReq) ProtoMessage() {}

func (x *CreateFlavorReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[52]
	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 CreateFlavorReq.ProtoReflect.Descriptor instead.
func (*CreateFlavorReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{52}
}

func (x *CreateFlavorReq) GetFlavor() *CreateFlavorReq_Flavor {
	if x != nil {
		return x.Flavor
	}
	return nil
}

func (x *CreateFlavorReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Flavor   *CreateFlavorResp_Flavor `protobuf:"bytes,1,opt,name=flavor,proto3" json:"flavor,omitempty"`
	Code     int32                    `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                   `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                   `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateFlavorResp) Reset() {
	*x = CreateFlavorResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[53]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFlavorResp) ProtoMessage() {}

func (x *CreateFlavorResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[53]
	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 CreateFlavorResp.ProtoReflect.Descriptor instead.
func (*CreateFlavorResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{53}
}

func (x *CreateFlavorResp) GetFlavor() *CreateFlavorResp_Flavor {
	if x != nil {
		return x.Flavor
	}
	return nil
}

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

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

func (x *CreateFlavorResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ServerId string `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	FlavorId string `protobuf:"bytes,2,opt,name=flavor_id,json=flavorId,proto3" json:"flavor_id,omitempty"`
	Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteFlavorReq) Reset() {
	*x = DeleteFlavorReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[54]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteFlavorReq) ProtoMessage() {}

func (x *DeleteFlavorReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[54]
	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 DeleteFlavorReq.ProtoReflect.Descriptor instead.
func (*DeleteFlavorReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{54}
}

func (x *DeleteFlavorReq) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *DeleteFlavorReq) GetFlavorId() string {
	if x != nil {
		return x.FlavorId
	}
	return ""
}

func (x *DeleteFlavorReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteFlavorResp) Reset() {
	*x = DeleteFlavorResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[55]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteFlavorResp) ProtoMessage() {}

func (x *DeleteFlavorResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[55]
	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 DeleteFlavorResp.ProtoReflect.Descriptor instead.
func (*DeleteFlavorResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{55}
}

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

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

func (x *DeleteFlavorResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// *****************Show network details Start************************
type ShowNetworkDetailsReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	NetworkId string `protobuf:"bytes,1,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"` //网络ID // @gotags: copier:"NetworkId"
	Platform  string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ShowNetworkDetailsReq) Reset() {
	*x = ShowNetworkDetailsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[56]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowNetworkDetailsReq) ProtoMessage() {}

func (x *ShowNetworkDetailsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[56]
	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 ShowNetworkDetailsReq.ProtoReflect.Descriptor instead.
func (*ShowNetworkDetailsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{56}
}

func (x *ShowNetworkDetailsReq) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *ShowNetworkDetailsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	AdminStateUp          bool     `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`                           // @gotags: copier:"AdminStateUp"
	AvailabilityZoneHints []string `protobuf:"bytes,2,rep,name=availability_zone_hints,json=availabilityZoneHints,proto3" json:"availability_zone_hints,omitempty"` // @gotags: copier:"AvailabilityZoneHints"
	AvailabilityZones     []string `protobuf:"bytes,3,rep,name=availability_zones,json=availabilityZones,proto3" json:"availability_zones,omitempty"`               // @gotags: copier:"AvailabilityZones"
	CreatedAt             string   `protobuf:"bytes,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`                                       // @gotags: copier:"CreatedAt"
	DnsDomain             string   `protobuf:"bytes,5,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`                                       // @gotags: copier:"DnsDomain"
	Id                    string   `protobuf:"bytes,6,opt,name=id,proto3" json:"id,omitempty"`                                                                      // @gotags: copier:"Id"
	Ipv4AddressScope      string   `protobuf:"bytes,7,opt,name=ipv4_address_scope,json=ipv4AddressScope,proto3" json:"ipv4_address_scope,omitempty"`                // @gotags: copier:"Ipv4AddressScope"
	Ipv6AddressScope      string   `protobuf:"bytes,8,opt,name=ipv6_address_scope,json=ipv6AddressScope,proto3" json:"ipv6_address_scope,omitempty"`                // @gotags: copier:"Ipv6AddressScope"
	L2Adjacency           bool     `protobuf:"varint,9,opt,name=l2_adjacency,json=l2Adjacency,proto3" json:"l2_adjacency,omitempty"`                                // @gotags: copier:"L2Adjacency"
	Mtu                   int64    `protobuf:"varint,10,opt,name=mtu,proto3" json:"mtu,omitempty"`                                                                  // @gotags: copier:"Mtu"
	Name                  string   `protobuf:"bytes,11,opt,name=name,proto3" json:"name,omitempty"`                                                                 // @gotags: copier:"Name"
	PortSecurityEnabled   bool     `protobuf:"varint,12,opt,name=port_security_enabled,json=portSecurityEnabled,proto3" json:"port_security_enabled,omitempty"`     // @gotags: copier:"PortSecurityEnabled"
	ProjectId             string   `protobuf:"bytes,13,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`                                      // @gotags: copier:"ProjectId"
	QosPolicyId           string   `protobuf:"bytes,14,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`                              // @gotags: copier:"QosPolicyId"
	RevisionNumber        int64    `protobuf:"varint,15,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`                      // @gotags: copier:"RevisionNumber"
	// Segment segment =26; // @gotags: copier:"Segment"
	RouterExternal  bool     `protobuf:"varint,16,opt,name=router_external,json=router:external,proto3" json:"router_external,omitempty"`   // @gotags: copier:"RouterExternal"
	Shared          bool     `protobuf:"varint,17,opt,name=shared,proto3" json:"shared,omitempty"`                                          // @gotags: copier:"Shared"
	Status          string   `protobuf:"bytes,18,opt,name=status,proto3" json:"status,omitempty"`                                           // @gotags: copier:"Status"
	Subnets         []string `protobuf:"bytes,19,rep,name=subnets,proto3" json:"subnets,omitempty"`                                         // @gotags: copier:"Subnets"
	Tags            []string `protobuf:"bytes,20,rep,name=tags,proto3" json:"tags,omitempty"`                                               // @gotags: copier:"Tags"
	TenantId        string   `protobuf:"bytes,21,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`                       // @gotags: copier:"TenantId"
	UpdatedAt       string   `protobuf:"bytes,22,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`                    // @gotags: copier:"UpdatedAt"
	VlanTransparent bool     `protobuf:"varint,23,opt,name=vlan_transparent,json=vlanTransparent,proto3" json:"vlan_transparent,omitempty"` // @gotags: copier:"VlanTransparent"
	Description     string   `protobuf:"bytes,24,opt,name=description,proto3" json:"description,omitempty"`                                 // @gotags: copier:"Description"
	IsDefault       bool     `protobuf:"varint,25,opt,name=is_default,json=isDefault,proto3" json:"is_default,omitempty"`                   // @gotags: copier:"IsDefault"
}

func (x *Network) Reset() {
	*x = Network{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[57]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Network) ProtoMessage() {}

func (x *Network) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[57]
	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 Network.ProtoReflect.Descriptor instead.
func (*Network) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{57}
}

func (x *Network) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *Network) GetAvailabilityZoneHints() []string {
	if x != nil {
		return x.AvailabilityZoneHints
	}
	return nil
}

func (x *Network) GetAvailabilityZones() []string {
	if x != nil {
		return x.AvailabilityZones
	}
	return nil
}

func (x *Network) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *Network) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *Network) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *Network) GetIpv4AddressScope() string {
	if x != nil {
		return x.Ipv4AddressScope
	}
	return ""
}

func (x *Network) GetIpv6AddressScope() string {
	if x != nil {
		return x.Ipv6AddressScope
	}
	return ""
}

func (x *Network) GetL2Adjacency() bool {
	if x != nil {
		return x.L2Adjacency
	}
	return false
}

func (x *Network) GetMtu() int64 {
	if x != nil {
		return x.Mtu
	}
	return 0
}

func (x *Network) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *Network) GetPortSecurityEnabled() bool {
	if x != nil {
		return x.PortSecurityEnabled
	}
	return false
}

func (x *Network) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *Network) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

func (x *Network) GetRevisionNumber() int64 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *Network) GetRouterExternal() bool {
	if x != nil {
		return x.RouterExternal
	}
	return false
}

func (x *Network) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *Network) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *Network) GetSubnets() []string {
	if x != nil {
		return x.Subnets
	}
	return nil
}

func (x *Network) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *Network) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *Network) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *Network) GetVlanTransparent() bool {
	if x != nil {
		return x.VlanTransparent
	}
	return false
}

func (x *Network) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *Network) GetIsDefault() bool {
	if x != nil {
		return x.IsDefault
	}
	return false
}

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

	Network *Network `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"` // @gotags: copier:"Network" //一个网络对象
	// bool admin_state_up = 2; //网络的管理状态，是向上（true）还是向下（false）
	// repeated string availability_zone_hints = 3; //网络的可用性区域候选者
	// repeated string availability_zones = 4; //网络的可用性区域
	// string created_at = 5; //创建资源的时间
	// string dns_domain = 6; //有效的DNS域
	// string id = 7; //网络ID
	// string ipv4_address_scope = 8; //与网络关联的IPv4地址作用域的ID
	// string ipv6_address_scope = 9; //与网络关联的IPv6地址作用域的ID
	// bool l2_adjacency = 10; //指示L2连接是否在整个网络中可用
	// int64 mtu = 11; //要寻址分段的最大传输单元（MTU）值，IPv4最小值为68，IPv6最小值为1280
	// string name = 12; //人类可读的网络名称
	// bool port_security_enabled = 13; //网络的端口安全状态。有效值为启用（true）和禁用（false）
	// string project_id = 14; //项目ID
	// string provider_network_type = 15 [json_name = "provider:network_type"]; //此网络映射到的物理网络的类型，例如flat、vlan、vxlan或gre。有效值取决于网络后端
	// string provider_physical_network = 16 [json_name = "provider:physical_network"]; //实现该网络/分段的物理网络
	// int64 provider_segmentation_id = 17 [json_name = "provider:segmentation_id"]; //物理网络上隔离段的ID，network_type属性定义分段模型
	// string qos_policy_id = 18; //与网络关联的QoS策略的ID
	// int64 revision_number = 19; //资源的修订号
	// bool router_external = 20 [json_name = "router:external"]; //定义网络是否可用于创建浮动IP，只有具有此标志的网络才能作为路由器的外部网关
	// repeated Segment segments = 21; //提供程序段对象的列表
	// bool shared = 22; //指示是否在所有租户之间共享此网络，默认情况下，只有管理用户才能更改此值
	// string status = 23; //网络状态，值为ACTIVE、DOWN、BUILD或ERROR
	// repeated string subnets = 24; //关联的子网
	// string tenant_id = 25; //项目的ID
	// string updated_at = 26; //资源更新的时间
	// bool vlan_transparent = 27; //指示网络的VLAN透明模式，为VLAN透明（true）或非VLAN透明（false）
	// string description = 28; //人类可读的资源描述
	// bool is_default = 29; //网络是否为默认池
	// repeated string tags = 30; //资源上的标记列表
	Msg      string `protobuf:"bytes,31,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,32,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,33,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ShowNetworkDetailsResp) Reset() {
	*x = ShowNetworkDetailsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[58]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowNetworkDetailsResp) ProtoMessage() {}

func (x *ShowNetworkDetailsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[58]
	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 ShowNetworkDetailsResp.ProtoReflect.Descriptor instead.
func (*ShowNetworkDetailsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{58}
}

func (x *ShowNetworkDetailsResp) GetNetwork() *Network {
	if x != nil {
		return x.Network
	}
	return nil
}

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

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

func (x *ShowNetworkDetailsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// *****************Update network Start************************
type UpdateNetworkReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	NetworkId string   `protobuf:"bytes,1,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	Network   *Network `protobuf:"bytes,2,opt,name=network,proto3" json:"network,omitempty"`
	Platform  string   `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *UpdateNetworkReq) Reset() {
	*x = UpdateNetworkReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[59]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateNetworkReq) ProtoMessage() {}

func (x *UpdateNetworkReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[59]
	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 UpdateNetworkReq.ProtoReflect.Descriptor instead.
func (*UpdateNetworkReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{59}
}

func (x *UpdateNetworkReq) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *UpdateNetworkReq) GetNetwork() *Network {
	if x != nil {
		return x.Network
	}
	return nil
}

func (x *UpdateNetworkReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Network  *Network `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"`
	Msg      string   `protobuf:"bytes,30,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32    `protobuf:"varint,31,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string   `protobuf:"bytes,32,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UpdateNetworkResp) Reset() {
	*x = UpdateNetworkResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[60]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateNetworkResp) ProtoMessage() {}

func (x *UpdateNetworkResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[60]
	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 UpdateNetworkResp.ProtoReflect.Descriptor instead.
func (*UpdateNetworkResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{60}
}

func (x *UpdateNetworkResp) GetNetwork() *Network {
	if x != nil {
		return x.Network
	}
	return nil
}

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

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

func (x *UpdateNetworkResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// *****************Delete network Start************************
type DeleteNetworkReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	NetworkId string `protobuf:"bytes,1,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"` // @gotags: copier:"NetworkId"
	Platform  string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteNetworkReq) Reset() {
	*x = DeleteNetworkReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[61]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteNetworkReq) ProtoMessage() {}

func (x *DeleteNetworkReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[61]
	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 DeleteNetworkReq.ProtoReflect.Descriptor instead.
func (*DeleteNetworkReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{61}
}

func (x *DeleteNetworkReq) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *DeleteNetworkReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteNetworkResp) Reset() {
	*x = DeleteNetworkResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[62]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteNetworkResp) ProtoMessage() {}

func (x *DeleteNetworkResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[62]
	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 DeleteNetworkResp.ProtoReflect.Descriptor instead.
func (*DeleteNetworkResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{62}
}

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

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

func (x *DeleteNetworkResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// *****************List networks Start************************
type ListNetworksReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListNetworksReq) Reset() {
	*x = ListNetworksReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[63]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListNetworksReq) ProtoMessage() {}

func (x *ListNetworksReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[63]
	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 ListNetworksReq.ProtoReflect.Descriptor instead.
func (*ListNetworksReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{63}
}

func (x *ListNetworksReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Networks []*Network `protobuf:"bytes,1,rep,name=networks,proto3" json:"networks,omitempty"` // @gotags: copier:"Networks"
	//	bool admin_state_up = 2;
	//
	// repeated string availability_zone_hints = 3;
	// repeated string availability_zones = 4;
	// string created_at = 5;
	// string dns_domain = 6;
	// string id = 7;
	// string ipv4_address_scope = 8;
	// string ipv6_address_scope = 9;
	// bool l2_adjacency = 10;
	// int64 mtu = 11;
	// string name = 12;
	// bool port_security_enabled = 13;
	// string project_id = 14;
	// string provider_network_type = 15 [json_name = "provider:network_type"];
	// string provider_physical_network = 16 [json_name = "provider:physical_network"];
	// int64 provider_segmentation_id = 17 [json_name = "provider:segmentation_id"];
	// string qos_policy_id = 18;
	// int64 revision_number = 19;
	// bool router_external = 20 [json_name = "router:external"];
	// repeated Segment segments = 21;
	// bool shared = 22;
	// string status = 23;
	// repeated string subnets = 24;
	// string tenant_id = 25;
	// string updated_at = 26;
	// bool vlan_transparent = 27;
	// string description = 28;
	// bool is_default = 29;
	// repeated string tags = 30;
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListNetworksResp) Reset() {
	*x = ListNetworksResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[64]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListNetworksResp) ProtoMessage() {}

func (x *ListNetworksResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[64]
	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 ListNetworksResp.ProtoReflect.Descriptor instead.
func (*ListNetworksResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{64}
}

func (x *ListNetworksResp) GetNetworks() []*Network {
	if x != nil {
		return x.Networks
	}
	return nil
}

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

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

func (x *ListNetworksResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// *****************Create network Start************************
type CreateNetworkReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Network  *Network `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"` // @gotags: copier:"Network"
	Platform string   `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateNetworkReq) Reset() {
	*x = CreateNetworkReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[65]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateNetworkReq) ProtoMessage() {}

func (x *CreateNetworkReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[65]
	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 CreateNetworkReq.ProtoReflect.Descriptor instead.
func (*CreateNetworkReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{65}
}

func (x *CreateNetworkReq) GetNetwork() *Network {
	if x != nil {
		return x.Network
	}
	return nil
}

func (x *CreateNetworkReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Network  *Network `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"`                    // @gotags: copier:"Network"
	Code     int32    `protobuf:"varint,30,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string   `protobuf:"bytes,31,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string   `protobuf:"bytes,32,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateNetworkResp) Reset() {
	*x = CreateNetworkResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[66]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateNetworkResp) ProtoMessage() {}

func (x *CreateNetworkResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[66]
	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 CreateNetworkResp.ProtoReflect.Descriptor instead.
func (*CreateNetworkResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{66}
}

func (x *CreateNetworkResp) GetNetwork() *Network {
	if x != nil {
		return x.Network
	}
	return nil
}

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

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

func (x *CreateNetworkResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// *****************Create network End************************
type CreateSubnetReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Subnet   *Subnet `protobuf:"bytes,1,opt,name=subnet,proto3" json:"subnet,omitempty"` // @gotags: copier:"Subnet"
	Platform string  `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateSubnetReq) Reset() {
	*x = CreateSubnetReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[67]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateSubnetReq) ProtoMessage() {}

func (x *CreateSubnetReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[67]
	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 CreateSubnetReq.ProtoReflect.Descriptor instead.
func (*CreateSubnetReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{67}
}

func (x *CreateSubnetReq) GetSubnet() *Subnet {
	if x != nil {
		return x.Subnet
	}
	return nil
}

func (x *CreateSubnetReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Subnet   *SubnetResp `protobuf:"bytes,1,opt,name=subnet,proto3" json:"subnet,omitempty"`                     // @gotags: copier:"SubnetResp"
	Code     int32       `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string      `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string      `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateSubnetResp) Reset() {
	*x = CreateSubnetResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[68]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateSubnetResp) ProtoMessage() {}

func (x *CreateSubnetResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[68]
	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 CreateSubnetResp.ProtoReflect.Descriptor instead.
func (*CreateSubnetResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{68}
}

func (x *CreateSubnetResp) GetSubnet() *SubnetResp {
	if x != nil {
		return x.Subnet
	}
	return nil
}

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

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

func (x *CreateSubnetResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	NetworkId       string             `protobuf:"bytes,1,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`                   //@gotags: copier:"NetworkId"
	Name            string             `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`                                              //@gotags: copier:"Name"
	Cidr            string             `protobuf:"bytes,3,opt,name=cidr,proto3" json:"cidr,omitempty"`                                              //@gotags: copier:"Cidr"
	IpVersion       int32              `protobuf:"varint,4,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`                  //@gotags: copier:"IpVersion"
	GatewayIp       string             `protobuf:"bytes,5,opt,name=gateway_ip,json=gatewayIp,proto3" json:"gateway_ip,omitempty"`                   //@gotags: copier:"GatewayIp"
	EnableDhcp      bool               `protobuf:"varint,6,opt,name=enable_dhcp,json=enableDhcp,proto3" json:"enable_dhcp,omitempty"`               //@gotags: copier:"EnableDhcp"
	AllocationPools []*AllocationPools `protobuf:"bytes,7,rep,name=allocation_pools,json=allocationPools,proto3" json:"allocation_pools,omitempty"` //@gotags: copier:"AllocationPools"
	DnsNameservers  []string           `protobuf:"bytes,8,rep,name=dns_nameservers,json=dnsNameservers,proto3" json:"dns_nameservers,omitempty"`    //@gotags: copier:"DnsNameservers"
	HostRoutes      []string           `protobuf:"bytes,9,rep,name=host_routes,json=hostRoutes,proto3" json:"host_routes,omitempty"`                //@gotags: copier:"HostRoutes"
}

func (x *Subnet) Reset() {
	*x = Subnet{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[69]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Subnet) ProtoMessage() {}

func (x *Subnet) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[69]
	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 Subnet.ProtoReflect.Descriptor instead.
func (*Subnet) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{69}
}

func (x *Subnet) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *Subnet) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *Subnet) GetCidr() string {
	if x != nil {
		return x.Cidr
	}
	return ""
}

func (x *Subnet) GetIpVersion() int32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *Subnet) GetGatewayIp() string {
	if x != nil {
		return x.GatewayIp
	}
	return ""
}

func (x *Subnet) GetEnableDhcp() bool {
	if x != nil {
		return x.EnableDhcp
	}
	return false
}

func (x *Subnet) GetAllocationPools() []*AllocationPools {
	if x != nil {
		return x.AllocationPools
	}
	return nil
}

func (x *Subnet) GetDnsNameservers() []string {
	if x != nil {
		return x.DnsNameservers
	}
	return nil
}

func (x *Subnet) GetHostRoutes() []string {
	if x != nil {
		return x.HostRoutes
	}
	return nil
}

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

	Name              string             `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Cidr              string             `protobuf:"bytes,2,opt,name=cidr,proto3" json:"cidr,omitempty"`
	IpVersion         int32              `protobuf:"varint,3,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`
	GatewayIp         string             `protobuf:"bytes,4,opt,name=gateway_ip,json=gatewayIp,proto3" json:"gateway_ip,omitempty"`
	EnableDhcp        bool               `protobuf:"varint,5,opt,name=enable_dhcp,json=enableDhcp,proto3" json:"enable_dhcp,omitempty"`
	AllocationPools   []*AllocationPools `protobuf:"bytes,6,rep,name=allocation_pools,json=allocationPools,proto3" json:"allocation_pools,omitempty"` //@gotags: copier:"Allocation_pools"
	DnsNameservers    []string           `protobuf:"bytes,7,rep,name=dns_nameservers,json=dnsNameservers,proto3" json:"dns_nameservers,omitempty"`
	HostRoutes        []string           `protobuf:"bytes,8,rep,name=host_routes,json=hostRoutes,proto3" json:"host_routes,omitempty"`
	NetworkId         string             `protobuf:"bytes,9,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	SegmentId         string             `protobuf:"bytes,10,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"`
	ProjectId         string             `protobuf:"bytes,11,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId          string             `protobuf:"bytes,12,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	DnsPublishFixedIp string             `protobuf:"bytes,13,opt,name=dns_publish_fixed_ip,json=dnsPublishFixedIp,proto3" json:"dns_publish_fixed_ip,omitempty"`
	Id                string             `protobuf:"bytes,14,opt,name=id,proto3" json:"id,omitempty"`
	CreatedAt         string             `protobuf:"bytes,15,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Description       string             `protobuf:"bytes,16,opt,name=description,proto3" json:"description,omitempty"`
	Ipv6AddressMode   string             `protobuf:"bytes,17,opt,name=ipv6_address_mode,json=ipv6AddressMode,proto3" json:"ipv6_address_mode,omitempty"`
	Ipv6RaMode        string             `protobuf:"bytes,18,opt,name=ipv6_ra_mode,json=ipv6RaMode,proto3" json:"ipv6_ra_mode,omitempty"`
	RevisionNumber    string             `protobuf:"bytes,19,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	ServiceTypes      []string           `protobuf:"bytes,20,rep,name=service_types,json=serviceTypes,proto3" json:"service_types,omitempty"`
	SubnetpoolId      string             `protobuf:"bytes,21,opt,name=subnetpool_id,json=subnetpoolId,proto3" json:"subnetpool_id,omitempty"`
	Tags              []string           `protobuf:"bytes,22,rep,name=tags,proto3" json:"tags,omitempty"`
	UpdatedAt         string             `protobuf:"bytes,23,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
}

func (x *SubnetResp) Reset() {
	*x = SubnetResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[70]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SubnetResp) ProtoMessage() {}

func (x *SubnetResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[70]
	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 SubnetResp.ProtoReflect.Descriptor instead.
func (*SubnetResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{70}
}

func (x *SubnetResp) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *SubnetResp) GetCidr() string {
	if x != nil {
		return x.Cidr
	}
	return ""
}

func (x *SubnetResp) GetIpVersion() int32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *SubnetResp) GetGatewayIp() string {
	if x != nil {
		return x.GatewayIp
	}
	return ""
}

func (x *SubnetResp) GetEnableDhcp() bool {
	if x != nil {
		return x.EnableDhcp
	}
	return false
}

func (x *SubnetResp) GetAllocationPools() []*AllocationPools {
	if x != nil {
		return x.AllocationPools
	}
	return nil
}

func (x *SubnetResp) GetDnsNameservers() []string {
	if x != nil {
		return x.DnsNameservers
	}
	return nil
}

func (x *SubnetResp) GetHostRoutes() []string {
	if x != nil {
		return x.HostRoutes
	}
	return nil
}

func (x *SubnetResp) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *SubnetResp) GetSegmentId() string {
	if x != nil {
		return x.SegmentId
	}
	return ""
}

func (x *SubnetResp) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *SubnetResp) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *SubnetResp) GetDnsPublishFixedIp() string {
	if x != nil {
		return x.DnsPublishFixedIp
	}
	return ""
}

func (x *SubnetResp) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *SubnetResp) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *SubnetResp) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *SubnetResp) GetIpv6AddressMode() string {
	if x != nil {
		return x.Ipv6AddressMode
	}
	return ""
}

func (x *SubnetResp) GetIpv6RaMode() string {
	if x != nil {
		return x.Ipv6RaMode
	}
	return ""
}

func (x *SubnetResp) GetRevisionNumber() string {
	if x != nil {
		return x.RevisionNumber
	}
	return ""
}

func (x *SubnetResp) GetServiceTypes() []string {
	if x != nil {
		return x.ServiceTypes
	}
	return nil
}

func (x *SubnetResp) GetSubnetpoolId() string {
	if x != nil {
		return x.SubnetpoolId
	}
	return ""
}

func (x *SubnetResp) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *SubnetResp) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

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

	Start string `protobuf:"bytes,1,opt,name=start,proto3" json:"start,omitempty"` // @gotags: copier:"Start"
	End   string `protobuf:"bytes,2,opt,name=end,proto3" json:"end,omitempty"`     // @gotags: copier:"End"
}

func (x *AllocationPools) Reset() {
	*x = AllocationPools{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[71]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AllocationPools) ProtoMessage() {}

func (x *AllocationPools) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[71]
	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 AllocationPools.ProtoReflect.Descriptor instead.
func (*AllocationPools) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{71}
}

func (x *AllocationPools) GetStart() string {
	if x != nil {
		return x.Start
	}
	return ""
}

func (x *AllocationPools) GetEnd() string {
	if x != nil {
		return x.End
	}
	return ""
}

// *****************Bulk create networks Start************************
type BulkCreateNetworksReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Networks []*Network `protobuf:"bytes,1,rep,name=networks,proto3" json:"networks,omitempty"`
	Platform string     `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *BulkCreateNetworksReq) Reset() {
	*x = BulkCreateNetworksReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[72]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*BulkCreateNetworksReq) ProtoMessage() {}

func (x *BulkCreateNetworksReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[72]
	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 BulkCreateNetworksReq.ProtoReflect.Descriptor instead.
func (*BulkCreateNetworksReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{72}
}

func (x *BulkCreateNetworksReq) GetNetworks() []*Network {
	if x != nil {
		return x.Networks
	}
	return nil
}

func (x *BulkCreateNetworksReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Networks                []*Network `protobuf:"bytes,1,rep,name=networks,proto3" json:"networks,omitempty"`
	AdminStateUp            bool       `protobuf:"varint,2,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	AvailabilityZoneHints   []string   `protobuf:"bytes,3,rep,name=availability_zone_hints,json=availabilityZoneHints,proto3" json:"availability_zone_hints,omitempty"`
	AvailabilityZones       []string   `protobuf:"bytes,4,rep,name=availability_zones,json=availabilityZones,proto3" json:"availability_zones,omitempty"`
	CreatedAt               string     `protobuf:"bytes,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	DnsDomain               string     `protobuf:"bytes,6,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	Id                      string     `protobuf:"bytes,7,opt,name=id,proto3" json:"id,omitempty"`
	Ipv4AddressScope        string     `protobuf:"bytes,8,opt,name=ipv4_address_scope,json=ipv4AddressScope,proto3" json:"ipv4_address_scope,omitempty"`
	Ipv6AddressScope        string     `protobuf:"bytes,9,opt,name=ipv6_address_scope,json=ipv6AddressScope,proto3" json:"ipv6_address_scope,omitempty"`
	L2Adjacency             bool       `protobuf:"varint,10,opt,name=l2_adjacency,json=l2Adjacency,proto3" json:"l2_adjacency,omitempty"`
	Mtu                     int64      `protobuf:"varint,11,opt,name=mtu,proto3" json:"mtu,omitempty"`
	Name                    string     `protobuf:"bytes,12,opt,name=name,proto3" json:"name,omitempty"`
	PortSecurityEnabled     bool       `protobuf:"varint,13,opt,name=port_security_enabled,json=portSecurityEnabled,proto3" json:"port_security_enabled,omitempty"`
	ProjectId               string     `protobuf:"bytes,14,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ProviderNetworkType     string     `protobuf:"bytes,15,opt,name=provider_network_type,json=provider:network_type,proto3" json:"provider_network_type,omitempty"`
	ProviderPhysicalNetwork string     `protobuf:"bytes,16,opt,name=provider_physical_network,json=provider:physical_network,proto3" json:"provider_physical_network,omitempty"`
	ProviderSegmentationId  int64      `protobuf:"varint,17,opt,name=provider_segmentation_id,json=provider:segmentation_id,proto3" json:"provider_segmentation_id,omitempty"`
	QosPolicyId             string     `protobuf:"bytes,18,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
	RevisionNumber          int64      `protobuf:"varint,19,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	RouterExternal          bool       `protobuf:"varint,20,opt,name=router_external,json=router:external,proto3" json:"router_external,omitempty"`
	// repeated Segment segments = 21;
	Shared          bool     `protobuf:"varint,22,opt,name=shared,proto3" json:"shared,omitempty"`
	Status          string   `protobuf:"bytes,23,opt,name=status,proto3" json:"status,omitempty"`
	Subnets         []string `protobuf:"bytes,24,rep,name=subnets,proto3" json:"subnets,omitempty"`
	TenantId        string   `protobuf:"bytes,25,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	UpdatedAt       string   `protobuf:"bytes,26,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	VlanTransparent bool     `protobuf:"varint,27,opt,name=vlan_transparent,json=vlanTransparent,proto3" json:"vlan_transparent,omitempty"`
	Description     string   `protobuf:"bytes,28,opt,name=description,proto3" json:"description,omitempty"`
	IsDefault       bool     `protobuf:"varint,29,opt,name=is_default,json=isDefault,proto3" json:"is_default,omitempty"`
	Tags            []string `protobuf:"bytes,30,rep,name=tags,proto3" json:"tags,omitempty"`
	Code            int32    `protobuf:"varint,31,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg             string   `protobuf:"bytes,32,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg        string   `protobuf:"bytes,33,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *BulkCreateNetworksResp) Reset() {
	*x = BulkCreateNetworksResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[73]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*BulkCreateNetworksResp) ProtoMessage() {}

func (x *BulkCreateNetworksResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[73]
	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 BulkCreateNetworksResp.ProtoReflect.Descriptor instead.
func (*BulkCreateNetworksResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{73}
}

func (x *BulkCreateNetworksResp) GetNetworks() []*Network {
	if x != nil {
		return x.Networks
	}
	return nil
}

func (x *BulkCreateNetworksResp) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *BulkCreateNetworksResp) GetAvailabilityZoneHints() []string {
	if x != nil {
		return x.AvailabilityZoneHints
	}
	return nil
}

func (x *BulkCreateNetworksResp) GetAvailabilityZones() []string {
	if x != nil {
		return x.AvailabilityZones
	}
	return nil
}

func (x *BulkCreateNetworksResp) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetIpv4AddressScope() string {
	if x != nil {
		return x.Ipv4AddressScope
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetIpv6AddressScope() string {
	if x != nil {
		return x.Ipv6AddressScope
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetL2Adjacency() bool {
	if x != nil {
		return x.L2Adjacency
	}
	return false
}

func (x *BulkCreateNetworksResp) GetMtu() int64 {
	if x != nil {
		return x.Mtu
	}
	return 0
}

func (x *BulkCreateNetworksResp) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetPortSecurityEnabled() bool {
	if x != nil {
		return x.PortSecurityEnabled
	}
	return false
}

func (x *BulkCreateNetworksResp) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetProviderNetworkType() string {
	if x != nil {
		return x.ProviderNetworkType
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetProviderPhysicalNetwork() string {
	if x != nil {
		return x.ProviderPhysicalNetwork
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetProviderSegmentationId() int64 {
	if x != nil {
		return x.ProviderSegmentationId
	}
	return 0
}

func (x *BulkCreateNetworksResp) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetRevisionNumber() int64 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *BulkCreateNetworksResp) GetRouterExternal() bool {
	if x != nil {
		return x.RouterExternal
	}
	return false
}

func (x *BulkCreateNetworksResp) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *BulkCreateNetworksResp) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetSubnets() []string {
	if x != nil {
		return x.Subnets
	}
	return nil
}

func (x *BulkCreateNetworksResp) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetVlanTransparent() bool {
	if x != nil {
		return x.VlanTransparent
	}
	return false
}

func (x *BulkCreateNetworksResp) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *BulkCreateNetworksResp) GetIsDefault() bool {
	if x != nil {
		return x.IsDefault
	}
	return false
}

func (x *BulkCreateNetworksResp) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

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

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

func (x *BulkCreateNetworksResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Limit    int32  `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"`   // @gotags: copier:"Limit"
	Offset   int32  `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"` // @gotags: copier:"Offset"
	Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListSubnetsReq) Reset() {
	*x = ListSubnetsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[74]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListSubnetsReq) ProtoMessage() {}

func (x *ListSubnetsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[74]
	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 ListSubnetsReq.ProtoReflect.Descriptor instead.
func (*ListSubnetsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{74}
}

func (x *ListSubnetsReq) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListSubnetsReq) GetOffset() int32 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListSubnetsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Subnets  []*ListSubnetsResp_Subnets `protobuf:"bytes,1,rep,name=subnets,proto3" json:"subnets,omitempty"`
	Msg      string                     `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                      `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string                     `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListSubnetsResp) Reset() {
	*x = ListSubnetsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[75]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListSubnetsResp) ProtoMessage() {}

func (x *ListSubnetsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[75]
	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 ListSubnetsResp.ProtoReflect.Descriptor instead.
func (*ListSubnetsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{75}
}

func (x *ListSubnetsResp) GetSubnets() []*ListSubnetsResp_Subnets {
	if x != nil {
		return x.Subnets
	}
	return nil
}

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

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

func (x *ListSubnetsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	SubnetId string `protobuf:"bytes,1,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"` // @gotags: copier:"subnet_id"
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteSubnetReq) Reset() {
	*x = DeleteSubnetReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[76]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteSubnetReq) ProtoMessage() {}

func (x *DeleteSubnetReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[76]
	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 DeleteSubnetReq.ProtoReflect.Descriptor instead.
func (*DeleteSubnetReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{76}
}

func (x *DeleteSubnetReq) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

func (x *DeleteSubnetReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteSubnetResp) Reset() {
	*x = DeleteSubnetResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[77]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteSubnetResp) ProtoMessage() {}

func (x *DeleteSubnetResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[77]
	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 DeleteSubnetResp.ProtoReflect.Descriptor instead.
func (*DeleteSubnetResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{77}
}

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

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

func (x *DeleteSubnetResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	SubnetId string `protobuf:"bytes,1,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"` // @gotags: copier:"subnet_id"
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *UpdateSubnetReq) Reset() {
	*x = UpdateSubnetReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[78]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateSubnetReq) ProtoMessage() {}

func (x *UpdateSubnetReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[78]
	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 UpdateSubnetReq.ProtoReflect.Descriptor instead.
func (*UpdateSubnetReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{78}
}

func (x *UpdateSubnetReq) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

func (x *UpdateSubnetReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Subnet   *UpdateSubnetResp_Subnet `protobuf:"bytes,1,opt,name=subnet,proto3" json:"subnet,omitempty"`
	Msg      string                   `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                    `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string                   `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UpdateSubnetResp) Reset() {
	*x = UpdateSubnetResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[79]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateSubnetResp) ProtoMessage() {}

func (x *UpdateSubnetResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[79]
	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 UpdateSubnetResp.ProtoReflect.Descriptor instead.
func (*UpdateSubnetResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{79}
}

func (x *UpdateSubnetResp) GetSubnet() *UpdateSubnetResp_Subnet {
	if x != nil {
		return x.Subnet
	}
	return nil
}

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

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

func (x *UpdateSubnetResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	NetworkSegmentRange *CreateNetworkSegmentRangeReq_NetworkSegmentRange `protobuf:"bytes,1,opt,name=network_segment_range,json=networkSegmentRange,proto3" json:"network_segment_range,omitempty"`
	Platform            string                                            `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateNetworkSegmentRangeReq) Reset() {
	*x = CreateNetworkSegmentRangeReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[80]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateNetworkSegmentRangeReq) ProtoMessage() {}

func (x *CreateNetworkSegmentRangeReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[80]
	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 CreateNetworkSegmentRangeReq.ProtoReflect.Descriptor instead.
func (*CreateNetworkSegmentRangeReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{80}
}

func (x *CreateNetworkSegmentRangeReq) GetNetworkSegmentRange() *CreateNetworkSegmentRangeReq_NetworkSegmentRange {
	if x != nil {
		return x.NetworkSegmentRange
	}
	return nil
}

func (x *CreateNetworkSegmentRangeReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	NetworkSegmentRange *CreateNetworkSegmentRangeResp_NetworkSegmentRange `protobuf:"bytes,1,opt,name=network_segment_range,json=networkSegmentRange,proto3" json:"network_segment_range,omitempty"`
	Msg                 string                                             `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code                int32                                              `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg            string                                             `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateNetworkSegmentRangeResp) Reset() {
	*x = CreateNetworkSegmentRangeResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[81]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateNetworkSegmentRangeResp) ProtoMessage() {}

func (x *CreateNetworkSegmentRangeResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[81]
	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 CreateNetworkSegmentRangeResp.ProtoReflect.Descriptor instead.
func (*CreateNetworkSegmentRangeResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{81}
}

func (x *CreateNetworkSegmentRangeResp) GetNetworkSegmentRange() *CreateNetworkSegmentRangeResp_NetworkSegmentRange {
	if x != nil {
		return x.NetworkSegmentRange
	}
	return nil
}

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

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

func (x *CreateNetworkSegmentRangeResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Limit    int32  `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"`   // @gotags: copier:"Limit"
	Offset   int32  `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"` // @gotags: copier:"Offset"
	Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListNetworkSegmentRangesReq) Reset() {
	*x = ListNetworkSegmentRangesReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[82]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListNetworkSegmentRangesReq) ProtoMessage() {}

func (x *ListNetworkSegmentRangesReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[82]
	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 ListNetworkSegmentRangesReq.ProtoReflect.Descriptor instead.
func (*ListNetworkSegmentRangesReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{82}
}

func (x *ListNetworkSegmentRangesReq) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListNetworkSegmentRangesReq) GetOffset() int32 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListNetworkSegmentRangesReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	NetworkSegmentRanges []*ListNetworkSegmentRangesResp_NetworkSegmentRanges `protobuf:"bytes,1,rep,name=network_segment_ranges,json=networkSegmentRanges,proto3" json:"network_segment_ranges,omitempty"`
	Msg                  string                                               `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code                 int32                                                `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg             string                                               `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListNetworkSegmentRangesResp) Reset() {
	*x = ListNetworkSegmentRangesResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[83]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListNetworkSegmentRangesResp) ProtoMessage() {}

func (x *ListNetworkSegmentRangesResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[83]
	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 ListNetworkSegmentRangesResp.ProtoReflect.Descriptor instead.
func (*ListNetworkSegmentRangesResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{83}
}

func (x *ListNetworkSegmentRangesResp) GetNetworkSegmentRanges() []*ListNetworkSegmentRangesResp_NetworkSegmentRanges {
	if x != nil {
		return x.NetworkSegmentRanges
	}
	return nil
}

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

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

func (x *ListNetworkSegmentRangesResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	NetworkSegmentRangeId string `protobuf:"bytes,1,opt,name=network_segment_range_id,json=networkSegmentRangeId,proto3" json:"network_segment_range_id,omitempty"` // @gotags: copier:"subnet_id"
	Platform              string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteNetworkSegmentRangesReq) Reset() {
	*x = DeleteNetworkSegmentRangesReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[84]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteNetworkSegmentRangesReq) ProtoMessage() {}

func (x *DeleteNetworkSegmentRangesReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[84]
	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 DeleteNetworkSegmentRangesReq.ProtoReflect.Descriptor instead.
func (*DeleteNetworkSegmentRangesReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{84}
}

func (x *DeleteNetworkSegmentRangesReq) GetNetworkSegmentRangeId() string {
	if x != nil {
		return x.NetworkSegmentRangeId
	}
	return ""
}

func (x *DeleteNetworkSegmentRangesReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteNetworkSegmentRangesResp) Reset() {
	*x = DeleteNetworkSegmentRangesResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[85]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteNetworkSegmentRangesResp) ProtoMessage() {}

func (x *DeleteNetworkSegmentRangesResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[85]
	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 DeleteNetworkSegmentRangesResp.ProtoReflect.Descriptor instead.
func (*DeleteNetworkSegmentRangesResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{85}
}

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

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

func (x *DeleteNetworkSegmentRangesResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	NetworkSegmentRangeId string                                              `protobuf:"bytes,1,opt,name=network_segment_range_id,json=networkSegmentRangeId,proto3" json:"network_segment_range_id,omitempty"` // @gotags: copier:"subnet_id"
	NetworkSegmentRanges  *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges `protobuf:"bytes,2,opt,name=network_segment_ranges,json=networkSegmentRanges,proto3" json:"network_segment_ranges,omitempty"`
	Platform              string                                              `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *UpdateNetworkSegmentRangesReq) Reset() {
	*x = UpdateNetworkSegmentRangesReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[86]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateNetworkSegmentRangesReq) ProtoMessage() {}

func (x *UpdateNetworkSegmentRangesReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[86]
	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 UpdateNetworkSegmentRangesReq.ProtoReflect.Descriptor instead.
func (*UpdateNetworkSegmentRangesReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{86}
}

func (x *UpdateNetworkSegmentRangesReq) GetNetworkSegmentRangeId() string {
	if x != nil {
		return x.NetworkSegmentRangeId
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesReq) GetNetworkSegmentRanges() *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges {
	if x != nil {
		return x.NetworkSegmentRanges
	}
	return nil
}

func (x *UpdateNetworkSegmentRangesReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	NetworkSegmentRange *UpdateNetworkSegmentRangesResp_NetworkSegmentRange `protobuf:"bytes,1,opt,name=network_segment_range,json=networkSegmentRange,proto3" json:"network_segment_range,omitempty"`
	Msg                 string                                              `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code                int32                                               `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg            string                                              `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UpdateNetworkSegmentRangesResp) Reset() {
	*x = UpdateNetworkSegmentRangesResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[87]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateNetworkSegmentRangesResp) ProtoMessage() {}

func (x *UpdateNetworkSegmentRangesResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[87]
	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 UpdateNetworkSegmentRangesResp.ProtoReflect.Descriptor instead.
func (*UpdateNetworkSegmentRangesResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{87}
}

func (x *UpdateNetworkSegmentRangesResp) GetNetworkSegmentRange() *UpdateNetworkSegmentRangesResp_NetworkSegmentRange {
	if x != nil {
		return x.NetworkSegmentRange
	}
	return nil
}

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

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

func (x *UpdateNetworkSegmentRangesResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	NetworkSegmentRangeId string `protobuf:"bytes,1,opt,name=network_segment_range_id,json=networkSegmentRangeId,proto3" json:"network_segment_range_id,omitempty"`
	Platform              string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ShowNetworkSegmentRangeDetailsReq) Reset() {
	*x = ShowNetworkSegmentRangeDetailsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[88]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowNetworkSegmentRangeDetailsReq) ProtoMessage() {}

func (x *ShowNetworkSegmentRangeDetailsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[88]
	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 ShowNetworkSegmentRangeDetailsReq.ProtoReflect.Descriptor instead.
func (*ShowNetworkSegmentRangeDetailsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{88}
}

func (x *ShowNetworkSegmentRangeDetailsReq) GetNetworkSegmentRangeId() string {
	if x != nil {
		return x.NetworkSegmentRangeId
	}
	return ""
}

func (x *ShowNetworkSegmentRangeDetailsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	NetworkSegmentRange *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange `protobuf:"bytes,1,opt,name=network_segment_range,json=networkSegmentRange,proto3" json:"network_segment_range,omitempty"`
	Msg                 string                                                  `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code                int32                                                   `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg            string                                                  `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ShowNetworkSegmentRangeDetailsResp) Reset() {
	*x = ShowNetworkSegmentRangeDetailsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[89]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowNetworkSegmentRangeDetailsResp) ProtoMessage() {}

func (x *ShowNetworkSegmentRangeDetailsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[89]
	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 ShowNetworkSegmentRangeDetailsResp.ProtoReflect.Descriptor instead.
func (*ShowNetworkSegmentRangeDetailsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{89}
}

func (x *ShowNetworkSegmentRangeDetailsResp) GetNetworkSegmentRange() *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange {
	if x != nil {
		return x.NetworkSegmentRange
	}
	return nil
}

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

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

func (x *ShowNetworkSegmentRangeDetailsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// port
type CreatePortReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Port     *CreatePortReq_Port `protobuf:"bytes,1,opt,name=port,proto3" json:"port,omitempty"`
	Platform string              `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreatePortReq) Reset() {
	*x = CreatePortReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[90]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreatePortReq) ProtoMessage() {}

func (x *CreatePortReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[90]
	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 CreatePortReq.ProtoReflect.Descriptor instead.
func (*CreatePortReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{90}
}

func (x *CreatePortReq) GetPort() *CreatePortReq_Port {
	if x != nil {
		return x.Port
	}
	return nil
}

func (x *CreatePortReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Port     *CreatePortResp_Port `protobuf:"bytes,1,opt,name=port,proto3" json:"port,omitempty"`
	Msg      string               `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string               `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreatePortResp) Reset() {
	*x = CreatePortResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[91]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreatePortResp) ProtoMessage() {}

func (x *CreatePortResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[91]
	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 CreatePortResp.ProtoReflect.Descriptor instead.
func (*CreatePortResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{91}
}

func (x *CreatePortResp) GetPort() *CreatePortResp_Port {
	if x != nil {
		return x.Port
	}
	return nil
}

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

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

func (x *CreatePortResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Limit    int32  `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"`   // @gotags: copier:"Limit"
	Offset   int32  `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"` // @gotags: copier:"Offset"
	Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListPortsReq) Reset() {
	*x = ListPortsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[92]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListPortsReq) ProtoMessage() {}

func (x *ListPortsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[92]
	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 ListPortsReq.ProtoReflect.Descriptor instead.
func (*ListPortsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{92}
}

func (x *ListPortsReq) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListPortsReq) GetOffset() int32 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListPortsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Ports    []*ListPortsResp_Ports `protobuf:"bytes,1,rep,name=ports,proto3" json:"ports,omitempty"`
	Msg      string                 `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                  `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string                 `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListPortsResp) Reset() {
	*x = ListPortsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[93]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListPortsResp) ProtoMessage() {}

func (x *ListPortsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[93]
	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 ListPortsResp.ProtoReflect.Descriptor instead.
func (*ListPortsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{93}
}

func (x *ListPortsResp) GetPorts() []*ListPortsResp_Ports {
	if x != nil {
		return x.Ports
	}
	return nil
}

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

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

func (x *ListPortsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	PortId   string `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeletePortReq) Reset() {
	*x = DeletePortReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[94]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeletePortReq) ProtoMessage() {}

func (x *DeletePortReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[94]
	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 DeletePortReq.ProtoReflect.Descriptor instead.
func (*DeletePortReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{94}
}

func (x *DeletePortReq) GetPortId() string {
	if x != nil {
		return x.PortId
	}
	return ""
}

func (x *DeletePortReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeletePortResp) Reset() {
	*x = DeletePortResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[95]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeletePortResp) ProtoMessage() {}

func (x *DeletePortResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[95]
	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 DeletePortResp.ProtoReflect.Descriptor instead.
func (*DeletePortResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{95}
}

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

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

func (x *DeletePortResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	PortId   string              `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	Port     *UpdatePortReq_Port `protobuf:"bytes,2,opt,name=port,proto3" json:"port,omitempty"`
	Platform string              `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *UpdatePortReq) Reset() {
	*x = UpdatePortReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[96]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdatePortReq) ProtoMessage() {}

func (x *UpdatePortReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[96]
	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 UpdatePortReq.ProtoReflect.Descriptor instead.
func (*UpdatePortReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{96}
}

func (x *UpdatePortReq) GetPortId() string {
	if x != nil {
		return x.PortId
	}
	return ""
}

func (x *UpdatePortReq) GetPort() *UpdatePortReq_Port {
	if x != nil {
		return x.Port
	}
	return nil
}

func (x *UpdatePortReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Port     *UpdatePortResp_Port `protobuf:"bytes,1,opt,name=port,proto3" json:"port,omitempty"`
	Msg      string               `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string               `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UpdatePortResp) Reset() {
	*x = UpdatePortResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[97]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdatePortResp) ProtoMessage() {}

func (x *UpdatePortResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[97]
	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 UpdatePortResp.ProtoReflect.Descriptor instead.
func (*UpdatePortResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{97}
}

func (x *UpdatePortResp) GetPort() *UpdatePortResp_Port {
	if x != nil {
		return x.Port
	}
	return nil
}

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

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

func (x *UpdatePortResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	PortId   string `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	Fields   string `protobuf:"bytes,2,opt,name=fields,proto3" json:"fields,omitempty"`
	Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ShowPortDetailsReq) Reset() {
	*x = ShowPortDetailsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[98]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowPortDetailsReq) ProtoMessage() {}

func (x *ShowPortDetailsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[98]
	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 ShowPortDetailsReq.ProtoReflect.Descriptor instead.
func (*ShowPortDetailsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{98}
}

func (x *ShowPortDetailsReq) GetPortId() string {
	if x != nil {
		return x.PortId
	}
	return ""
}

func (x *ShowPortDetailsReq) GetFields() string {
	if x != nil {
		return x.Fields
	}
	return ""
}

func (x *ShowPortDetailsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Port     *ShowPortDetailsResp_Port `protobuf:"bytes,1,opt,name=port,proto3" json:"port,omitempty"`
	Msg      string                    `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                     `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string                    `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ShowPortDetailsResp) Reset() {
	*x = ShowPortDetailsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[99]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowPortDetailsResp) ProtoMessage() {}

func (x *ShowPortDetailsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[99]
	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 ShowPortDetailsResp.ProtoReflect.Descriptor instead.
func (*ShowPortDetailsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{99}
}

func (x *ShowPortDetailsResp) GetPort() *ShowPortDetailsResp_Port {
	if x != nil {
		return x.Port
	}
	return nil
}

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

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

func (x *ShowPortDetailsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// Router
type ListRoutersReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Limit    int32  `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"`   // @gotags: copier:"Limit"
	Offset   int32  `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"` // @gotags: copier:"Offset"
	Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListRoutersReq) Reset() {
	*x = ListRoutersReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[100]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListRoutersReq) ProtoMessage() {}

func (x *ListRoutersReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[100]
	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 ListRoutersReq.ProtoReflect.Descriptor instead.
func (*ListRoutersReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{100}
}

func (x *ListRoutersReq) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListRoutersReq) GetOffset() int32 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListRoutersReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Routers  []*ListRoutersResp_Routers `protobuf:"bytes,1,rep,name=routers,proto3" json:"routers,omitempty"`
	Msg      string                     `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                      `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string                     `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListRoutersResp) Reset() {
	*x = ListRoutersResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[101]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListRoutersResp) ProtoMessage() {}

func (x *ListRoutersResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[101]
	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 ListRoutersResp.ProtoReflect.Descriptor instead.
func (*ListRoutersResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{101}
}

func (x *ListRoutersResp) GetRouters() []*ListRoutersResp_Routers {
	if x != nil {
		return x.Routers
	}
	return nil
}

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

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

func (x *ListRoutersResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Router   *CreateRouterReq_Router `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
	Platform string                  `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateRouterReq) Reset() {
	*x = CreateRouterReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[102]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateRouterReq) ProtoMessage() {}

func (x *CreateRouterReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[102]
	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 CreateRouterReq.ProtoReflect.Descriptor instead.
func (*CreateRouterReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{102}
}

func (x *CreateRouterReq) GetRouter() *CreateRouterReq_Router {
	if x != nil {
		return x.Router
	}
	return nil
}

func (x *CreateRouterReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Router   *CreateRouterResp_Router `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
	Msg      string                   `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                    `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string                   `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateRouterResp) Reset() {
	*x = CreateRouterResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[103]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateRouterResp) ProtoMessage() {}

func (x *CreateRouterResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[103]
	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 CreateRouterResp.ProtoReflect.Descriptor instead.
func (*CreateRouterResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{103}
}

func (x *CreateRouterResp) GetRouter() *CreateRouterResp_Router {
	if x != nil {
		return x.Router
	}
	return nil
}

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

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

func (x *CreateRouterResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Platform string                  `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
	Router   *UpdateRouterReq_Router `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
	RouterId string                  `protobuf:"bytes,3,opt,name=router_id,json=routerId,proto3" json:"router_id,omitempty"`
}

func (x *UpdateRouterReq) Reset() {
	*x = UpdateRouterReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[104]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateRouterReq) ProtoMessage() {}

func (x *UpdateRouterReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[104]
	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 UpdateRouterReq.ProtoReflect.Descriptor instead.
func (*UpdateRouterReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{104}
}

func (x *UpdateRouterReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

func (x *UpdateRouterReq) GetRouter() *UpdateRouterReq_Router {
	if x != nil {
		return x.Router
	}
	return nil
}

func (x *UpdateRouterReq) GetRouterId() string {
	if x != nil {
		return x.RouterId
	}
	return ""
}

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

	Router   *UpdateRouterResp_Router `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
	Msg      string                   `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                    `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string                   `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UpdateRouterResp) Reset() {
	*x = UpdateRouterResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[105]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateRouterResp) ProtoMessage() {}

func (x *UpdateRouterResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[105]
	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 UpdateRouterResp.ProtoReflect.Descriptor instead.
func (*UpdateRouterResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{105}
}

func (x *UpdateRouterResp) GetRouter() *UpdateRouterResp_Router {
	if x != nil {
		return x.Router
	}
	return nil
}

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

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

func (x *UpdateRouterResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Platform string                       `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
	Router   *ShowRouterDetailsReq_Router `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
	RouterId string                       `protobuf:"bytes,3,opt,name=router_id,json=routerId,proto3" json:"router_id,omitempty"`
}

func (x *ShowRouterDetailsReq) Reset() {
	*x = ShowRouterDetailsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[106]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowRouterDetailsReq) ProtoMessage() {}

func (x *ShowRouterDetailsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[106]
	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 ShowRouterDetailsReq.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{106}
}

func (x *ShowRouterDetailsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

func (x *ShowRouterDetailsReq) GetRouter() *ShowRouterDetailsReq_Router {
	if x != nil {
		return x.Router
	}
	return nil
}

func (x *ShowRouterDetailsReq) GetRouterId() string {
	if x != nil {
		return x.RouterId
	}
	return ""
}

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

	Router   *ShowRouterDetailsResp_Router `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
	Msg      string                        `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32                         `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string                        `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ShowRouterDetailsResp) Reset() {
	*x = ShowRouterDetailsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[107]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowRouterDetailsResp) ProtoMessage() {}

func (x *ShowRouterDetailsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[107]
	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 ShowRouterDetailsResp.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{107}
}

func (x *ShowRouterDetailsResp) GetRouter() *ShowRouterDetailsResp_Router {
	if x != nil {
		return x.Router
	}
	return nil
}

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

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

func (x *ShowRouterDetailsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	RouterId string `protobuf:"bytes,1,opt,name=router_id,json=routerId,proto3" json:"router_id,omitempty"`
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteRouterReq) Reset() {
	*x = DeleteRouterReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[108]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteRouterReq) ProtoMessage() {}

func (x *DeleteRouterReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[108]
	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 DeleteRouterReq.ProtoReflect.Descriptor instead.
func (*DeleteRouterReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{108}
}

func (x *DeleteRouterReq) GetRouterId() string {
	if x != nil {
		return x.RouterId
	}
	return ""
}

func (x *DeleteRouterReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteRouterResp) Reset() {
	*x = DeleteRouterResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[109]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteRouterResp) ProtoMessage() {}

func (x *DeleteRouterResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[109]
	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 DeleteRouterResp.ProtoReflect.Descriptor instead.
func (*DeleteRouterResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{109}
}

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

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

func (x *DeleteRouterResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// 浮动IPs
type ListFloatingIPsReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Limit    int32  `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"`   // @gotags: copier:"Limit"
	Offset   int32  `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"` // @gotags: copier:"Offset"
	Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListFloatingIPsReq) Reset() {
	*x = ListFloatingIPsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[110]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFloatingIPsReq) ProtoMessage() {}

func (x *ListFloatingIPsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[110]
	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 ListFloatingIPsReq.ProtoReflect.Descriptor instead.
func (*ListFloatingIPsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{110}
}

func (x *ListFloatingIPsReq) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListFloatingIPsReq) GetOffset() int32 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListFloatingIPsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Floatingips []*ListFloatingIPsResp_Floatingips `protobuf:"bytes,1,rep,name=floatingips,proto3" json:"floatingips,omitempty"`
	Msg         string                             `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code        int32                              `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg    string                             `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListFloatingIPsResp) Reset() {
	*x = ListFloatingIPsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[111]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFloatingIPsResp) ProtoMessage() {}

func (x *ListFloatingIPsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[111]
	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 ListFloatingIPsResp.ProtoReflect.Descriptor instead.
func (*ListFloatingIPsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{111}
}

func (x *ListFloatingIPsResp) GetFloatingips() []*ListFloatingIPsResp_Floatingips {
	if x != nil {
		return x.Floatingips
	}
	return nil
}

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

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

func (x *ListFloatingIPsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Floatingip *CreateFloatingIPReq_Floatingip `protobuf:"bytes,1,opt,name=floatingip,proto3" json:"floatingip,omitempty"`
	Platform   string                          `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateFloatingIPReq) Reset() {
	*x = CreateFloatingIPReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[112]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFloatingIPReq) ProtoMessage() {}

func (x *CreateFloatingIPReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[112]
	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 CreateFloatingIPReq.ProtoReflect.Descriptor instead.
func (*CreateFloatingIPReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{112}
}

func (x *CreateFloatingIPReq) GetFloatingip() *CreateFloatingIPReq_Floatingip {
	if x != nil {
		return x.Floatingip
	}
	return nil
}

func (x *CreateFloatingIPReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Floatingip *CreateFloatingIPResp_Floatingip `protobuf:"bytes,1,opt,name=floatingip,proto3" json:"floatingip,omitempty"`
	Msg        string                           `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code       int32                            `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg   string                           `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateFloatingIPResp) Reset() {
	*x = CreateFloatingIPResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[113]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFloatingIPResp) ProtoMessage() {}

func (x *CreateFloatingIPResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[113]
	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 CreateFloatingIPResp.ProtoReflect.Descriptor instead.
func (*CreateFloatingIPResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{113}
}

func (x *CreateFloatingIPResp) GetFloatingip() *CreateFloatingIPResp_Floatingip {
	if x != nil {
		return x.Floatingip
	}
	return nil
}

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

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

func (x *CreateFloatingIPResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Floatingip   *UpdateFloatingIPReq_Floatingip `protobuf:"bytes,1,opt,name=floatingip,proto3" json:"floatingip,omitempty"`
	Platform     string                          `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
	FloatingipId string                          `protobuf:"bytes,3,opt,name=floatingip_id,json=floatingipId,proto3" json:"floatingip_id,omitempty"`
}

func (x *UpdateFloatingIPReq) Reset() {
	*x = UpdateFloatingIPReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[114]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateFloatingIPReq) ProtoMessage() {}

func (x *UpdateFloatingIPReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[114]
	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 UpdateFloatingIPReq.ProtoReflect.Descriptor instead.
func (*UpdateFloatingIPReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{114}
}

func (x *UpdateFloatingIPReq) GetFloatingip() *UpdateFloatingIPReq_Floatingip {
	if x != nil {
		return x.Floatingip
	}
	return nil
}

func (x *UpdateFloatingIPReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

func (x *UpdateFloatingIPReq) GetFloatingipId() string {
	if x != nil {
		return x.FloatingipId
	}
	return ""
}

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

	Floatingip *UpdateFloatingIPResp_Floatingip `protobuf:"bytes,1,opt,name=floatingip,proto3" json:"floatingip,omitempty"`
	Msg        string                           `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code       int32                            `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg   string                           `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UpdateFloatingIPResp) Reset() {
	*x = UpdateFloatingIPResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[115]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateFloatingIPResp) ProtoMessage() {}

func (x *UpdateFloatingIPResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[115]
	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 UpdateFloatingIPResp.ProtoReflect.Descriptor instead.
func (*UpdateFloatingIPResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{115}
}

func (x *UpdateFloatingIPResp) GetFloatingip() *UpdateFloatingIPResp_Floatingip {
	if x != nil {
		return x.Floatingip
	}
	return nil
}

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

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

func (x *UpdateFloatingIPResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	FloatingipId string `protobuf:"bytes,1,opt,name=floatingip_id,json=floatingipId,proto3" json:"floatingip_id,omitempty"`
	Platform     string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteFloatingIPReq) Reset() {
	*x = DeleteFloatingIPReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[116]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteFloatingIPReq) ProtoMessage() {}

func (x *DeleteFloatingIPReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[116]
	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 DeleteFloatingIPReq.ProtoReflect.Descriptor instead.
func (*DeleteFloatingIPReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{116}
}

func (x *DeleteFloatingIPReq) GetFloatingipId() string {
	if x != nil {
		return x.FloatingipId
	}
	return ""
}

func (x *DeleteFloatingIPReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteFloatingIPResp) Reset() {
	*x = DeleteFloatingIPResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[117]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteFloatingIPResp) ProtoMessage() {}

func (x *DeleteFloatingIPResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[117]
	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 DeleteFloatingIPResp.ProtoReflect.Descriptor instead.
func (*DeleteFloatingIPResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{117}
}

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

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

func (x *DeleteFloatingIPResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	FloatingipId string `protobuf:"bytes,1,opt,name=floatingip_id,json=floatingipId,proto3" json:"floatingip_id,omitempty"`
	Platform     string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ShowFloatingIPDetailsReq) Reset() {
	*x = ShowFloatingIPDetailsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[118]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowFloatingIPDetailsReq) ProtoMessage() {}

func (x *ShowFloatingIPDetailsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[118]
	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 ShowFloatingIPDetailsReq.ProtoReflect.Descriptor instead.
func (*ShowFloatingIPDetailsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{118}
}

func (x *ShowFloatingIPDetailsReq) GetFloatingipId() string {
	if x != nil {
		return x.FloatingipId
	}
	return ""
}

func (x *ShowFloatingIPDetailsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Floatingip *ShowFloatingIPDetailsResp_Floatingip `protobuf:"bytes,1,opt,name=floatingip,proto3" json:"floatingip,omitempty"`
	Msg        string                                `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code       int32                                 `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg   string                                `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ShowFloatingIPDetailsResp) Reset() {
	*x = ShowFloatingIPDetailsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[119]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowFloatingIPDetailsResp) ProtoMessage() {}

func (x *ShowFloatingIPDetailsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[119]
	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 ShowFloatingIPDetailsResp.ProtoReflect.Descriptor instead.
func (*ShowFloatingIPDetailsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{119}
}

func (x *ShowFloatingIPDetailsResp) GetFloatingip() *ShowFloatingIPDetailsResp_Floatingip {
	if x != nil {
		return x.Floatingip
	}
	return nil
}

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

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

func (x *ShowFloatingIPDetailsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// 防火墙
type ListFirewallGroupsReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Fields   string `protobuf:"bytes,1,opt,name=fields,proto3" json:"fields,omitempty"`
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListFirewallGroupsReq) Reset() {
	*x = ListFirewallGroupsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[120]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFirewallGroupsReq) ProtoMessage() {}

func (x *ListFirewallGroupsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[120]
	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 ListFirewallGroupsReq.ProtoReflect.Descriptor instead.
func (*ListFirewallGroupsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{120}
}

func (x *ListFirewallGroupsReq) GetFields() string {
	if x != nil {
		return x.Fields
	}
	return ""
}

func (x *ListFirewallGroupsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	FirewallGroups []*ListFirewallGroupsResp_FirewallGroups `protobuf:"bytes,1,rep,name=firewall_groups,json=firewallGroups,proto3" json:"firewall_groups,omitempty"`
	Msg            string                                   `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code           int32                                    `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg       string                                   `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListFirewallGroupsResp) Reset() {
	*x = ListFirewallGroupsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[121]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFirewallGroupsResp) ProtoMessage() {}

func (x *ListFirewallGroupsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[121]
	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 ListFirewallGroupsResp.ProtoReflect.Descriptor instead.
func (*ListFirewallGroupsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{121}
}

func (x *ListFirewallGroupsResp) GetFirewallGroups() []*ListFirewallGroupsResp_FirewallGroups {
	if x != nil {
		return x.FirewallGroups
	}
	return nil
}

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

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

func (x *ListFirewallGroupsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	FirewallGroupId string `protobuf:"bytes,1,opt,name=firewall_group_id,json=firewallGroupId,proto3" json:"firewall_group_id,omitempty"`
	Platform        string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteFirewallGroupReq) Reset() {
	*x = DeleteFirewallGroupReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[122]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteFirewallGroupReq) ProtoMessage() {}

func (x *DeleteFirewallGroupReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[122]
	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 DeleteFirewallGroupReq.ProtoReflect.Descriptor instead.
func (*DeleteFirewallGroupReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{122}
}

func (x *DeleteFirewallGroupReq) GetFirewallGroupId() string {
	if x != nil {
		return x.FirewallGroupId
	}
	return ""
}

func (x *DeleteFirewallGroupReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteFirewallGroupResp) Reset() {
	*x = DeleteFirewallGroupResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[123]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteFirewallGroupResp) ProtoMessage() {}

func (x *DeleteFirewallGroupResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[123]
	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 DeleteFirewallGroupResp.ProtoReflect.Descriptor instead.
func (*DeleteFirewallGroupResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{123}
}

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

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

func (x *DeleteFirewallGroupResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	FirewallGroup *CreateFirewallGroupReq_FirewallGroup `protobuf:"bytes,1,opt,name=firewall_group,json=firewallGroup,proto3" json:"firewall_group,omitempty"`
	Platform      string                                `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateFirewallGroupReq) Reset() {
	*x = CreateFirewallGroupReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[124]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFirewallGroupReq) ProtoMessage() {}

func (x *CreateFirewallGroupReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[124]
	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 CreateFirewallGroupReq.ProtoReflect.Descriptor instead.
func (*CreateFirewallGroupReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{124}
}

func (x *CreateFirewallGroupReq) GetFirewallGroup() *CreateFirewallGroupReq_FirewallGroup {
	if x != nil {
		return x.FirewallGroup
	}
	return nil
}

func (x *CreateFirewallGroupReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	FirewallGroup *CreateFirewallGroupResp_FirewallGroup `protobuf:"bytes,1,opt,name=firewall_group,json=firewallGroup,proto3" json:"firewall_group,omitempty"`
	Msg           string                                 `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code          int32                                  `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg      string                                 `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateFirewallGroupResp) Reset() {
	*x = CreateFirewallGroupResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[125]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFirewallGroupResp) ProtoMessage() {}

func (x *CreateFirewallGroupResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[125]
	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 CreateFirewallGroupResp.ProtoReflect.Descriptor instead.
func (*CreateFirewallGroupResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{125}
}

func (x *CreateFirewallGroupResp) GetFirewallGroup() *CreateFirewallGroupResp_FirewallGroup {
	if x != nil {
		return x.FirewallGroup
	}
	return nil
}

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

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

func (x *CreateFirewallGroupResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	FirewallGroup   *UpdateFirewallGroupReq_FirewallGroup `protobuf:"bytes,1,opt,name=firewall_group,json=firewallGroup,proto3" json:"firewall_group,omitempty"`
	Platform        string                                `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
	FirewallGroupId string                                `protobuf:"bytes,3,opt,name=firewall_group_id,json=firewallGroupId,proto3" json:"firewall_group_id,omitempty"`
}

func (x *UpdateFirewallGroupReq) Reset() {
	*x = UpdateFirewallGroupReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[126]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateFirewallGroupReq) ProtoMessage() {}

func (x *UpdateFirewallGroupReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[126]
	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 UpdateFirewallGroupReq.ProtoReflect.Descriptor instead.
func (*UpdateFirewallGroupReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{126}
}

func (x *UpdateFirewallGroupReq) GetFirewallGroup() *UpdateFirewallGroupReq_FirewallGroup {
	if x != nil {
		return x.FirewallGroup
	}
	return nil
}

func (x *UpdateFirewallGroupReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

func (x *UpdateFirewallGroupReq) GetFirewallGroupId() string {
	if x != nil {
		return x.FirewallGroupId
	}
	return ""
}

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

	FirewallGroup *UpdateFirewallGroupResp_FirewallGroup `protobuf:"bytes,1,opt,name=firewall_group,json=firewallGroup,proto3" json:"firewall_group,omitempty"`
	Msg           string                                 `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code          int32                                  `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg      string                                 `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UpdateFirewallGroupResp) Reset() {
	*x = UpdateFirewallGroupResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[127]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateFirewallGroupResp) ProtoMessage() {}

func (x *UpdateFirewallGroupResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[127]
	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 UpdateFirewallGroupResp.ProtoReflect.Descriptor instead.
func (*UpdateFirewallGroupResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{127}
}

func (x *UpdateFirewallGroupResp) GetFirewallGroup() *UpdateFirewallGroupResp_FirewallGroup {
	if x != nil {
		return x.FirewallGroup
	}
	return nil
}

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

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

func (x *UpdateFirewallGroupResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	FirewallGroupId string `protobuf:"bytes,1,opt,name=firewall_group_id,json=firewallGroupId,proto3" json:"firewall_group_id,omitempty"`
	Platform        string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ShowFirewallGroupDetailsReq) Reset() {
	*x = ShowFirewallGroupDetailsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[128]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowFirewallGroupDetailsReq) ProtoMessage() {}

func (x *ShowFirewallGroupDetailsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[128]
	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 ShowFirewallGroupDetailsReq.ProtoReflect.Descriptor instead.
func (*ShowFirewallGroupDetailsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{128}
}

func (x *ShowFirewallGroupDetailsReq) GetFirewallGroupId() string {
	if x != nil {
		return x.FirewallGroupId
	}
	return ""
}

func (x *ShowFirewallGroupDetailsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	FirewallGroup *ShowFirewallGroupDetailsResp_FirewallGroup `protobuf:"bytes,1,opt,name=firewall_group,json=firewallGroup,proto3" json:"firewall_group,omitempty"`
	Msg           string                                      `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code          int32                                       `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg      string                                      `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ShowFirewallGroupDetailsResp) Reset() {
	*x = ShowFirewallGroupDetailsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[129]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowFirewallGroupDetailsResp) ProtoMessage() {}

func (x *ShowFirewallGroupDetailsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[129]
	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 ShowFirewallGroupDetailsResp.ProtoReflect.Descriptor instead.
func (*ShowFirewallGroupDetailsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{129}
}

func (x *ShowFirewallGroupDetailsResp) GetFirewallGroup() *ShowFirewallGroupDetailsResp_FirewallGroup {
	if x != nil {
		return x.FirewallGroup
	}
	return nil
}

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

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

func (x *ShowFirewallGroupDetailsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// 安全组策略
type CreateFirewallPolicyReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FirewallPolicy *CreateFirewallPolicyReq_FirewallPolicy `protobuf:"bytes,1,opt,name=firewall_policy,json=firewallPolicy,proto3" json:"firewall_policy,omitempty"`
	Platform       string                                  `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateFirewallPolicyReq) Reset() {
	*x = CreateFirewallPolicyReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[130]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFirewallPolicyReq) ProtoMessage() {}

func (x *CreateFirewallPolicyReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[130]
	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 CreateFirewallPolicyReq.ProtoReflect.Descriptor instead.
func (*CreateFirewallPolicyReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{130}
}

func (x *CreateFirewallPolicyReq) GetFirewallPolicy() *CreateFirewallPolicyReq_FirewallPolicy {
	if x != nil {
		return x.FirewallPolicy
	}
	return nil
}

func (x *CreateFirewallPolicyReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	FirewallPolicy *CreateFirewallPolicyResp_FirewallPolicy `protobuf:"bytes,1,opt,name=firewall_policy,json=firewallPolicy,proto3" json:"firewall_policy,omitempty"`
	Msg            string                                   `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code           int32                                    `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg       string                                   `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateFirewallPolicyResp) Reset() {
	*x = CreateFirewallPolicyResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[131]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFirewallPolicyResp) ProtoMessage() {}

func (x *CreateFirewallPolicyResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[131]
	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 CreateFirewallPolicyResp.ProtoReflect.Descriptor instead.
func (*CreateFirewallPolicyResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{131}
}

func (x *CreateFirewallPolicyResp) GetFirewallPolicy() *CreateFirewallPolicyResp_FirewallPolicy {
	if x != nil {
		return x.FirewallPolicy
	}
	return nil
}

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

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

func (x *CreateFirewallPolicyResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	FirewallPolicyId string `protobuf:"bytes,1,opt,name=firewall_policy_id,json=firewallPolicyId,proto3" json:"firewall_policy_id,omitempty"`
	Platform         string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteFirewallPolicyReq) Reset() {
	*x = DeleteFirewallPolicyReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[132]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteFirewallPolicyReq) ProtoMessage() {}

func (x *DeleteFirewallPolicyReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[132]
	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 DeleteFirewallPolicyReq.ProtoReflect.Descriptor instead.
func (*DeleteFirewallPolicyReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{132}
}

func (x *DeleteFirewallPolicyReq) GetFirewallPolicyId() string {
	if x != nil {
		return x.FirewallPolicyId
	}
	return ""
}

func (x *DeleteFirewallPolicyReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteFirewallPolicyResp) Reset() {
	*x = DeleteFirewallPolicyResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[133]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteFirewallPolicyResp) ProtoMessage() {}

func (x *DeleteFirewallPolicyResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[133]
	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 DeleteFirewallPolicyResp.ProtoReflect.Descriptor instead.
func (*DeleteFirewallPolicyResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{133}
}

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

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

func (x *DeleteFirewallPolicyResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Fields   string `protobuf:"bytes,1,opt,name=fields,proto3" json:"fields,omitempty"`
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListFirewallPoliciesReq) Reset() {
	*x = ListFirewallPoliciesReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[134]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFirewallPoliciesReq) ProtoMessage() {}

func (x *ListFirewallPoliciesReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[134]
	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 ListFirewallPoliciesReq.ProtoReflect.Descriptor instead.
func (*ListFirewallPoliciesReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{134}
}

func (x *ListFirewallPoliciesReq) GetFields() string {
	if x != nil {
		return x.Fields
	}
	return ""
}

func (x *ListFirewallPoliciesReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg              string                                       `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code             int32                                        `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg         string                                       `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
	FirewallPolicies []*ListFirewallPoliciesResp_FirewallPolicies `protobuf:"bytes,4,rep,name=firewall_policies,json=firewallPolicies,proto3" json:"firewall_policies,omitempty"`
}

func (x *ListFirewallPoliciesResp) Reset() {
	*x = ListFirewallPoliciesResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[135]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFirewallPoliciesResp) ProtoMessage() {}

func (x *ListFirewallPoliciesResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[135]
	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 ListFirewallPoliciesResp.ProtoReflect.Descriptor instead.
func (*ListFirewallPoliciesResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{135}
}

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

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

func (x *ListFirewallPoliciesResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

func (x *ListFirewallPoliciesResp) GetFirewallPolicies() []*ListFirewallPoliciesResp_FirewallPolicies {
	if x != nil {
		return x.FirewallPolicies
	}
	return nil
}

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

	FirewallPolicyId string `protobuf:"bytes,1,opt,name=firewall_policy_id,json=firewallPolicyId,proto3" json:"firewall_policy_id,omitempty"`
	Platform         string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ShowFirewallPolicyDetailsReq) Reset() {
	*x = ShowFirewallPolicyDetailsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[136]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowFirewallPolicyDetailsReq) ProtoMessage() {}

func (x *ShowFirewallPolicyDetailsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[136]
	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 ShowFirewallPolicyDetailsReq.ProtoReflect.Descriptor instead.
func (*ShowFirewallPolicyDetailsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{136}
}

func (x *ShowFirewallPolicyDetailsReq) GetFirewallPolicyId() string {
	if x != nil {
		return x.FirewallPolicyId
	}
	return ""
}

func (x *ShowFirewallPolicyDetailsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg            string                                        `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code           int32                                         `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg       string                                        `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
	FirewallPolicy *ShowFirewallPolicyDetailsResp_FirewallPolicy `protobuf:"bytes,4,opt,name=firewall_policy,json=firewallPolicy,proto3" json:"firewall_policy,omitempty"`
}

func (x *ShowFirewallPolicyDetailsResp) Reset() {
	*x = ShowFirewallPolicyDetailsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[137]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowFirewallPolicyDetailsResp) ProtoMessage() {}

func (x *ShowFirewallPolicyDetailsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[137]
	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 ShowFirewallPolicyDetailsResp.ProtoReflect.Descriptor instead.
func (*ShowFirewallPolicyDetailsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{137}
}

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

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

func (x *ShowFirewallPolicyDetailsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

func (x *ShowFirewallPolicyDetailsResp) GetFirewallPolicy() *ShowFirewallPolicyDetailsResp_FirewallPolicy {
	if x != nil {
		return x.FirewallPolicy
	}
	return nil
}

// 安全组
type CreateFirewallRuleReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Platform     string                              `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
	FirewallRule *CreateFirewallRuleReq_FirewallRule `protobuf:"bytes,1,opt,name=firewall_rule,json=firewallRule,proto3" json:"firewall_rule,omitempty"`
}

func (x *CreateFirewallRuleReq) Reset() {
	*x = CreateFirewallRuleReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[138]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFirewallRuleReq) ProtoMessage() {}

func (x *CreateFirewallRuleReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[138]
	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 CreateFirewallRuleReq.ProtoReflect.Descriptor instead.
func (*CreateFirewallRuleReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{138}
}

func (x *CreateFirewallRuleReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

func (x *CreateFirewallRuleReq) GetFirewallRule() *CreateFirewallRuleReq_FirewallRule {
	if x != nil {
		return x.FirewallRule
	}
	return nil
}

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

	Msg          string                               `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code         int32                                `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg     string                               `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
	FirewallRule *CreateFirewallRuleResp_FirewallRule `protobuf:"bytes,4,opt,name=firewall_rule,json=firewallRule,proto3" json:"firewall_rule,omitempty"`
}

func (x *CreateFirewallRuleResp) Reset() {
	*x = CreateFirewallRuleResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[139]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFirewallRuleResp) ProtoMessage() {}

func (x *CreateFirewallRuleResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[139]
	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 CreateFirewallRuleResp.ProtoReflect.Descriptor instead.
func (*CreateFirewallRuleResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{139}
}

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

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

func (x *CreateFirewallRuleResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

func (x *CreateFirewallRuleResp) GetFirewallRule() *CreateFirewallRuleResp_FirewallRule {
	if x != nil {
		return x.FirewallRule
	}
	return nil
}

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

	FirewallRuleId string `protobuf:"bytes,1,opt,name=firewall_rule_id,json=firewallRuleId,proto3" json:"firewall_rule_id,omitempty"`
	Platform       string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteFirewallRuleReq) Reset() {
	*x = DeleteFirewallRuleReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[140]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteFirewallRuleReq) ProtoMessage() {}

func (x *DeleteFirewallRuleReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[140]
	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 DeleteFirewallRuleReq.ProtoReflect.Descriptor instead.
func (*DeleteFirewallRuleReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{140}
}

func (x *DeleteFirewallRuleReq) GetFirewallRuleId() string {
	if x != nil {
		return x.FirewallRuleId
	}
	return ""
}

func (x *DeleteFirewallRuleReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteFirewallRuleResp) Reset() {
	*x = DeleteFirewallRuleResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[141]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteFirewallRuleResp) ProtoMessage() {}

func (x *DeleteFirewallRuleResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[141]
	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 DeleteFirewallRuleResp.ProtoReflect.Descriptor instead.
func (*DeleteFirewallRuleResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{141}
}

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

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

func (x *DeleteFirewallRuleResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Fields   string `protobuf:"bytes,1,opt,name=fields,proto3" json:"fields,omitempty"`
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListFirewallRulesReq) Reset() {
	*x = ListFirewallRulesReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[142]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFirewallRulesReq) ProtoMessage() {}

func (x *ListFirewallRulesReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[142]
	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 ListFirewallRulesReq.ProtoReflect.Descriptor instead.
func (*ListFirewallRulesReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{142}
}

func (x *ListFirewallRulesReq) GetFields() string {
	if x != nil {
		return x.Fields
	}
	return ""
}

func (x *ListFirewallRulesReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	FirewallRules []*ListFirewallRulesResp_FirewallRules `protobuf:"bytes,1,rep,name=firewall_rules,json=firewallRules,proto3" json:"firewall_rules,omitempty"`
	Msg           string                                 `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code          int32                                  `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg      string                                 `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListFirewallRulesResp) Reset() {
	*x = ListFirewallRulesResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[143]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFirewallRulesResp) ProtoMessage() {}

func (x *ListFirewallRulesResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[143]
	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 ListFirewallRulesResp.ProtoReflect.Descriptor instead.
func (*ListFirewallRulesResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{143}
}

func (x *ListFirewallRulesResp) GetFirewallRules() []*ListFirewallRulesResp_FirewallRules {
	if x != nil {
		return x.FirewallRules
	}
	return nil
}

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

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

func (x *ListFirewallRulesResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	FirewallRuleId string `protobuf:"bytes,1,opt,name=firewall_rule_id,json=firewallRuleId,proto3" json:"firewall_rule_id,omitempty"`
	Platform       string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ShowFirewallRuleDetailsReq) Reset() {
	*x = ShowFirewallRuleDetailsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[144]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowFirewallRuleDetailsReq) ProtoMessage() {}

func (x *ShowFirewallRuleDetailsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[144]
	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 ShowFirewallRuleDetailsReq.ProtoReflect.Descriptor instead.
func (*ShowFirewallRuleDetailsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{144}
}

func (x *ShowFirewallRuleDetailsReq) GetFirewallRuleId() string {
	if x != nil {
		return x.FirewallRuleId
	}
	return ""
}

func (x *ShowFirewallRuleDetailsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg          string                                    `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code         int32                                     `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg     string                                    `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
	FirewallRule *ShowFirewallRuleDetailsResp_FirewallRule `protobuf:"bytes,4,opt,name=firewall_rule,json=firewallRule,proto3" json:"firewall_rule,omitempty"`
}

func (x *ShowFirewallRuleDetailsResp) Reset() {
	*x = ShowFirewallRuleDetailsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[145]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowFirewallRuleDetailsResp) ProtoMessage() {}

func (x *ShowFirewallRuleDetailsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[145]
	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 ShowFirewallRuleDetailsResp.ProtoReflect.Descriptor instead.
func (*ShowFirewallRuleDetailsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{145}
}

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

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

func (x *ShowFirewallRuleDetailsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp) GetFirewallRule() *ShowFirewallRuleDetailsResp_FirewallRule {
	if x != nil {
		return x.FirewallRule
	}
	return nil
}

// 安全组
type ListSecurityGroupsReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Fields   string `protobuf:"bytes,1,opt,name=fields,proto3" json:"fields,omitempty"`
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListSecurityGroupsReq) Reset() {
	*x = ListSecurityGroupsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[146]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListSecurityGroupsReq) ProtoMessage() {}

func (x *ListSecurityGroupsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[146]
	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 ListSecurityGroupsReq.ProtoReflect.Descriptor instead.
func (*ListSecurityGroupsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{146}
}

func (x *ListSecurityGroupsReq) GetFields() string {
	if x != nil {
		return x.Fields
	}
	return ""
}

func (x *ListSecurityGroupsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg            string                                   `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code           int32                                    `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg       string                                   `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
	SecurityGroups []*ListSecurityGroupsResp_SecurityGroups `protobuf:"bytes,4,rep,name=security_groups,json=securityGroups,proto3" json:"security_groups,omitempty"`
}

func (x *ListSecurityGroupsResp) Reset() {
	*x = ListSecurityGroupsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[147]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListSecurityGroupsResp) ProtoMessage() {}

func (x *ListSecurityGroupsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[147]
	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 ListSecurityGroupsResp.ProtoReflect.Descriptor instead.
func (*ListSecurityGroupsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{147}
}

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

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

func (x *ListSecurityGroupsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

func (x *ListSecurityGroupsResp) GetSecurityGroups() []*ListSecurityGroupsResp_SecurityGroups {
	if x != nil {
		return x.SecurityGroups
	}
	return nil
}

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

	SecurityGroup *CreateSecurityGroupReq_SecurityGroup `protobuf:"bytes,1,opt,name=security_group,json=securityGroup,proto3" json:"security_group,omitempty"`
	Platform      string                                `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateSecurityGroupReq) Reset() {
	*x = CreateSecurityGroupReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[148]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateSecurityGroupReq) ProtoMessage() {}

func (x *CreateSecurityGroupReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[148]
	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 CreateSecurityGroupReq.ProtoReflect.Descriptor instead.
func (*CreateSecurityGroupReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{148}
}

func (x *CreateSecurityGroupReq) GetSecurityGroup() *CreateSecurityGroupReq_SecurityGroup {
	if x != nil {
		return x.SecurityGroup
	}
	return nil
}

func (x *CreateSecurityGroupReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg           string                                 `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code          int32                                  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg      string                                 `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
	SecurityGroup *CreateSecurityGroupResp_SecurityGroup `protobuf:"bytes,4,opt,name=security_group,json=securityGroup,proto3" json:"security_group,omitempty"`
}

func (x *CreateSecurityGroupResp) Reset() {
	*x = CreateSecurityGroupResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[149]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateSecurityGroupResp) ProtoMessage() {}

func (x *CreateSecurityGroupResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[149]
	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 CreateSecurityGroupResp.ProtoReflect.Descriptor instead.
func (*CreateSecurityGroupResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{149}
}

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

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

func (x *CreateSecurityGroupResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

func (x *CreateSecurityGroupResp) GetSecurityGroup() *CreateSecurityGroupResp_SecurityGroup {
	if x != nil {
		return x.SecurityGroup
	}
	return nil
}

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

	SecurityGroupId string `protobuf:"bytes,1,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	Platform        string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteSecurityGroupReq) Reset() {
	*x = DeleteSecurityGroupReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[150]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteSecurityGroupReq) ProtoMessage() {}

func (x *DeleteSecurityGroupReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[150]
	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 DeleteSecurityGroupReq.ProtoReflect.Descriptor instead.
func (*DeleteSecurityGroupReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{150}
}

func (x *DeleteSecurityGroupReq) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *DeleteSecurityGroupReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg      string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code     int32  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteSecurityGroupResp) Reset() {
	*x = DeleteSecurityGroupResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[151]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteSecurityGroupResp) ProtoMessage() {}

func (x *DeleteSecurityGroupResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[151]
	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 DeleteSecurityGroupResp.ProtoReflect.Descriptor instead.
func (*DeleteSecurityGroupResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{151}
}

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

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

func (x *DeleteSecurityGroupResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	SecurityGroupId string `protobuf:"bytes,1,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	Platform        string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *UpdateSecurityGroupReq) Reset() {
	*x = UpdateSecurityGroupReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[152]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateSecurityGroupReq) ProtoMessage() {}

func (x *UpdateSecurityGroupReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[152]
	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 UpdateSecurityGroupReq.ProtoReflect.Descriptor instead.
func (*UpdateSecurityGroupReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{152}
}

func (x *UpdateSecurityGroupReq) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *UpdateSecurityGroupReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg           string                                 `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code          int32                                  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg      string                                 `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
	SecurityGroup *UpdateSecurityGroupResp_SecurityGroup `protobuf:"bytes,4,opt,name=security_group,json=securityGroup,proto3" json:"security_group,omitempty"`
}

func (x *UpdateSecurityGroupResp) Reset() {
	*x = UpdateSecurityGroupResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[153]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateSecurityGroupResp) ProtoMessage() {}

func (x *UpdateSecurityGroupResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[153]
	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 UpdateSecurityGroupResp.ProtoReflect.Descriptor instead.
func (*UpdateSecurityGroupResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{153}
}

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

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

func (x *UpdateSecurityGroupResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

func (x *UpdateSecurityGroupResp) GetSecurityGroup() *UpdateSecurityGroupResp_SecurityGroup {
	if x != nil {
		return x.SecurityGroup
	}
	return nil
}

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

	SecurityGroupId string `protobuf:"bytes,1,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	Verbose         bool   `protobuf:"varint,2,opt,name=verbose,proto3" json:"verbose,omitempty"`
	Fields          string `protobuf:"bytes,3,opt,name=fields,proto3" json:"fields,omitempty"`
	Platform        string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ShowSecurityGroupReq) Reset() {
	*x = ShowSecurityGroupReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[154]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowSecurityGroupReq) ProtoMessage() {}

func (x *ShowSecurityGroupReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[154]
	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 ShowSecurityGroupReq.ProtoReflect.Descriptor instead.
func (*ShowSecurityGroupReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{154}
}

func (x *ShowSecurityGroupReq) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *ShowSecurityGroupReq) GetVerbose() bool {
	if x != nil {
		return x.Verbose
	}
	return false
}

func (x *ShowSecurityGroupReq) GetFields() string {
	if x != nil {
		return x.Fields
	}
	return ""
}

func (x *ShowSecurityGroupReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg           string                               `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code          int32                                `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg      string                               `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
	SecurityGroup *ShowSecurityGroupResp_SecurityGroup `protobuf:"bytes,4,opt,name=security_group,json=securityGroup,proto3" json:"security_group,omitempty"`
}

func (x *ShowSecurityGroupResp) Reset() {
	*x = ShowSecurityGroupResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[155]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowSecurityGroupResp) ProtoMessage() {}

func (x *ShowSecurityGroupResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[155]
	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 ShowSecurityGroupResp.ProtoReflect.Descriptor instead.
func (*ShowSecurityGroupResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{155}
}

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

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

func (x *ShowSecurityGroupResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

func (x *ShowSecurityGroupResp) GetSecurityGroup() *ShowSecurityGroupResp_SecurityGroup {
	if x != nil {
		return x.SecurityGroup
	}
	return nil
}

// 安全组规则
type ListSecurityGroupRulesReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListSecurityGroupRulesReq) Reset() {
	*x = ListSecurityGroupRulesReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[156]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListSecurityGroupRulesReq) ProtoMessage() {}

func (x *ListSecurityGroupRulesReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[156]
	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 ListSecurityGroupRulesReq.ProtoReflect.Descriptor instead.
func (*ListSecurityGroupRulesReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{156}
}

func (x *ListSecurityGroupRulesReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg                string                                           `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code               int32                                            `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg           string                                           `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
	SecurityGroupRules []*ListSecurityGroupRulesResp_SecurityGroupRules `protobuf:"bytes,4,rep,name=security_group_rules,json=securityGroupRules,proto3" json:"security_group_rules,omitempty"`
}

func (x *ListSecurityGroupRulesResp) Reset() {
	*x = ListSecurityGroupRulesResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[157]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListSecurityGroupRulesResp) ProtoMessage() {}

func (x *ListSecurityGroupRulesResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[157]
	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 ListSecurityGroupRulesResp.ProtoReflect.Descriptor instead.
func (*ListSecurityGroupRulesResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{157}
}

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

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

func (x *ListSecurityGroupRulesResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

func (x *ListSecurityGroupRulesResp) GetSecurityGroupRules() []*ListSecurityGroupRulesResp_SecurityGroupRules {
	if x != nil {
		return x.SecurityGroupRules
	}
	return nil
}

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

	SecurityGroupRule *CreateSecurityGroupRuleReq_SecurityGroupRule `protobuf:"bytes,1,opt,name=security_group_rule,json=securityGroupRule,proto3" json:"security_group_rule,omitempty"`
	Platform          string                                        `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateSecurityGroupRuleReq) Reset() {
	*x = CreateSecurityGroupRuleReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[158]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateSecurityGroupRuleReq) ProtoMessage() {}

func (x *CreateSecurityGroupRuleReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[158]
	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 CreateSecurityGroupRuleReq.ProtoReflect.Descriptor instead.
func (*CreateSecurityGroupRuleReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{158}
}

func (x *CreateSecurityGroupRuleReq) GetSecurityGroupRule() *CreateSecurityGroupRuleReq_SecurityGroupRule {
	if x != nil {
		return x.SecurityGroupRule
	}
	return nil
}

func (x *CreateSecurityGroupRuleReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	SecurityGroupRule *CreateSecurityGroupRuleResp_SecurityGroupRule `protobuf:"bytes,1,opt,name=security_group_rule,json=securityGroupRule,proto3" json:"security_group_rule,omitempty"`
	Msg               string                                         `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code              int32                                          `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg          string                                         `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateSecurityGroupRuleResp) Reset() {
	*x = CreateSecurityGroupRuleResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[159]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateSecurityGroupRuleResp) ProtoMessage() {}

func (x *CreateSecurityGroupRuleResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[159]
	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 CreateSecurityGroupRuleResp.ProtoReflect.Descriptor instead.
func (*CreateSecurityGroupRuleResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{159}
}

func (x *CreateSecurityGroupRuleResp) GetSecurityGroupRule() *CreateSecurityGroupRuleResp_SecurityGroupRule {
	if x != nil {
		return x.SecurityGroupRule
	}
	return nil
}

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

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

func (x *CreateSecurityGroupRuleResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	SecurityGroupRuleId string `protobuf:"bytes,1,opt,name=security_group_rule_id,json=securityGroupRuleId,proto3" json:"security_group_rule_id,omitempty"`
	Platform            string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ShowSecurityGroupRuleReq) Reset() {
	*x = ShowSecurityGroupRuleReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[160]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowSecurityGroupRuleReq) ProtoMessage() {}

func (x *ShowSecurityGroupRuleReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[160]
	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 ShowSecurityGroupRuleReq.ProtoReflect.Descriptor instead.
func (*ShowSecurityGroupRuleReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{160}
}

func (x *ShowSecurityGroupRuleReq) GetSecurityGroupRuleId() string {
	if x != nil {
		return x.SecurityGroupRuleId
	}
	return ""
}

func (x *ShowSecurityGroupRuleReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg               string                                       `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code              int32                                        `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg          string                                       `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
	SecurityGroupRule *ShowSecurityGroupRuleResp_SecurityGroupRule `protobuf:"bytes,4,opt,name=security_group_rule,json=securityGroupRule,proto3" json:"security_group_rule,omitempty"`
}

func (x *ShowSecurityGroupRuleResp) Reset() {
	*x = ShowSecurityGroupRuleResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[161]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowSecurityGroupRuleResp) ProtoMessage() {}

func (x *ShowSecurityGroupRuleResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[161]
	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 ShowSecurityGroupRuleResp.ProtoReflect.Descriptor instead.
func (*ShowSecurityGroupRuleResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{161}
}

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

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

func (x *ShowSecurityGroupRuleResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

func (x *ShowSecurityGroupRuleResp) GetSecurityGroupRule() *ShowSecurityGroupRuleResp_SecurityGroupRule {
	if x != nil {
		return x.SecurityGroupRule
	}
	return nil
}

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

	SecurityGroupRuleId string `protobuf:"bytes,1,opt,name=security_group_rule_id,json=securityGroupRuleId,proto3" json:"security_group_rule_id,omitempty"`
	Platform            string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteSecurityGroupRuleReq) Reset() {
	*x = DeleteSecurityGroupRuleReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[162]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteSecurityGroupRuleReq) ProtoMessage() {}

func (x *DeleteSecurityGroupRuleReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[162]
	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 DeleteSecurityGroupRuleReq.ProtoReflect.Descriptor instead.
func (*DeleteSecurityGroupRuleReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{162}
}

func (x *DeleteSecurityGroupRuleReq) GetSecurityGroupRuleId() string {
	if x != nil {
		return x.SecurityGroupRuleId
	}
	return ""
}

func (x *DeleteSecurityGroupRuleReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Msg               string                                         `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	Code              int32                                          `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	ErrorMsg          string                                         `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
	SecurityGroupRule *DeleteSecurityGroupRuleResp_SecurityGroupRule `protobuf:"bytes,4,opt,name=security_group_rule,json=securityGroupRule,proto3" json:"security_group_rule,omitempty"`
}

func (x *DeleteSecurityGroupRuleResp) Reset() {
	*x = DeleteSecurityGroupRuleResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[163]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteSecurityGroupRuleResp) ProtoMessage() {}

func (x *DeleteSecurityGroupRuleResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[163]
	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 DeleteSecurityGroupRuleResp.ProtoReflect.Descriptor instead.
func (*DeleteSecurityGroupRuleResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{163}
}

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

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

func (x *DeleteSecurityGroupRuleResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

func (x *DeleteSecurityGroupRuleResp) GetSecurityGroupRule() *DeleteSecurityGroupRuleResp_SecurityGroupRule {
	if x != nil {
		return x.SecurityGroupRule
	}
	return nil
}

// ***************** Bare Metal ListNodes Start************************
type ListNodesReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	InstanceUuid    string   `protobuf:"bytes,1,opt,name=instance_uuid,json=instanceUuid,proto3" json:"instance_uuid,omitempty"`
	Maintenance     bool     `protobuf:"varint,2,opt,name=maintenance,proto3" json:"maintenance,omitempty"`
	Associated      bool     `protobuf:"varint,3,opt,name=associated,proto3" json:"associated,omitempty"`
	ProvisionState  string   `protobuf:"bytes,4,opt,name=provision_state,json=provisionState,proto3" json:"provision_state,omitempty"`
	Sharded         bool     `protobuf:"varint,5,opt,name=sharded,proto3" json:"sharded,omitempty"`
	Driver          string   `protobuf:"bytes,6,opt,name=driver,proto3" json:"driver,omitempty"`
	ResourceClass   string   `protobuf:"bytes,7,opt,name=resource_class,json=resourceClass,proto3" json:"resource_class,omitempty"`
	ConductorGroup  string   `protobuf:"bytes,8,opt,name=conductor_group,json=conductorGroup,proto3" json:"conductor_group,omitempty"`
	Conductor       string   `protobuf:"bytes,9,opt,name=conductor,proto3" json:"conductor,omitempty"`
	Fault           string   `protobuf:"bytes,10,opt,name=fault,proto3" json:"fault,omitempty"`
	Owner           string   `protobuf:"bytes,11,opt,name=owner,proto3" json:"owner,omitempty"`
	Lessee          string   `protobuf:"bytes,12,opt,name=lessee,proto3" json:"lessee,omitempty"`
	Shard           []string `protobuf:"bytes,13,rep,name=shard,proto3" json:"shard,omitempty"`
	Limit           int64    `protobuf:"varint,14,opt,name=limit,proto3" json:"limit,omitempty"`
	Marker          string   `protobuf:"bytes,15,opt,name=marker,proto3" json:"marker,omitempty"`
	SortDir         string   `protobuf:"bytes,16,opt,name=sort_dir,json=sortDir,proto3" json:"sort_dir,omitempty"`
	SortKey         string   `protobuf:"bytes,17,opt,name=sort_key,json=sortKey,proto3" json:"sort_key,omitempty"`
	Detail          bool     `protobuf:"varint,18,opt,name=detail,proto3" json:"detail,omitempty"`
	ParentNode      string   `protobuf:"bytes,19,opt,name=parent_node,json=parentNode,proto3" json:"parent_node,omitempty"`
	IncludeChildren string   `protobuf:"bytes,20,opt,name=include_children,json=includeChildren,proto3" json:"include_children,omitempty"`
	Platform        string   `protobuf:"bytes,21,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListNodesReq) Reset() {
	*x = ListNodesReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[164]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListNodesReq) ProtoMessage() {}

func (x *ListNodesReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[164]
	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 ListNodesReq.ProtoReflect.Descriptor instead.
func (*ListNodesReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{164}
}

func (x *ListNodesReq) GetInstanceUuid() string {
	if x != nil {
		return x.InstanceUuid
	}
	return ""
}

func (x *ListNodesReq) GetMaintenance() bool {
	if x != nil {
		return x.Maintenance
	}
	return false
}

func (x *ListNodesReq) GetAssociated() bool {
	if x != nil {
		return x.Associated
	}
	return false
}

func (x *ListNodesReq) GetProvisionState() string {
	if x != nil {
		return x.ProvisionState
	}
	return ""
}

func (x *ListNodesReq) GetSharded() bool {
	if x != nil {
		return x.Sharded
	}
	return false
}

func (x *ListNodesReq) GetDriver() string {
	if x != nil {
		return x.Driver
	}
	return ""
}

func (x *ListNodesReq) GetResourceClass() string {
	if x != nil {
		return x.ResourceClass
	}
	return ""
}

func (x *ListNodesReq) GetConductorGroup() string {
	if x != nil {
		return x.ConductorGroup
	}
	return ""
}

func (x *ListNodesReq) GetConductor() string {
	if x != nil {
		return x.Conductor
	}
	return ""
}

func (x *ListNodesReq) GetFault() string {
	if x != nil {
		return x.Fault
	}
	return ""
}

func (x *ListNodesReq) GetOwner() string {
	if x != nil {
		return x.Owner
	}
	return ""
}

func (x *ListNodesReq) GetLessee() string {
	if x != nil {
		return x.Lessee
	}
	return ""
}

func (x *ListNodesReq) GetShard() []string {
	if x != nil {
		return x.Shard
	}
	return nil
}

func (x *ListNodesReq) GetLimit() int64 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListNodesReq) GetMarker() string {
	if x != nil {
		return x.Marker
	}
	return ""
}

func (x *ListNodesReq) GetSortDir() string {
	if x != nil {
		return x.SortDir
	}
	return ""
}

func (x *ListNodesReq) GetSortKey() string {
	if x != nil {
		return x.SortKey
	}
	return ""
}

func (x *ListNodesReq) GetDetail() bool {
	if x != nil {
		return x.Detail
	}
	return false
}

func (x *ListNodesReq) GetParentNode() string {
	if x != nil {
		return x.ParentNode
	}
	return ""
}

func (x *ListNodesReq) GetIncludeChildren() string {
	if x != nil {
		return x.IncludeChildren
	}
	return ""
}

func (x *ListNodesReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Nodes    []*ListNodesResp_Nodes `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"`
	Code     int32                  `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                 `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                 `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListNodesResp) Reset() {
	*x = ListNodesResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[165]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListNodesResp) ProtoMessage() {}

func (x *ListNodesResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[165]
	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 ListNodesResp.ProtoReflect.Descriptor instead.
func (*ListNodesResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{165}
}

func (x *ListNodesResp) GetNodes() []*ListNodesResp_Nodes {
	if x != nil {
		return x.Nodes
	}
	return nil
}

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

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

func (x *ListNodesResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// ***************** Bare Metal createNode Start************************
type CreateNodeReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name                string                      `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Driver              string                      `protobuf:"bytes,2,opt,name=driver,proto3" json:"driver,omitempty"`
	DriverInfo          *CreateNodeReq_DriverInfo   `protobuf:"bytes,3,opt,name=driver_info,json=driverInfo,proto3" json:"driver_info,omitempty"`
	PowerInterface      string                      `protobuf:"bytes,4,opt,name=power_interface,json=powerInterface,proto3" json:"power_interface,omitempty"`
	ResourceClass       string                      `protobuf:"bytes,5,opt,name=resource_class,json=resourceClass,proto3" json:"resource_class,omitempty"`
	BootInterface       string                      `protobuf:"bytes,6,opt,name=boot_interface,json=bootInterface,proto3" json:"boot_interface,omitempty"`
	ConductorGroup      string                      `protobuf:"bytes,7,opt,name=conductor_group,json=conductorGroup,proto3" json:"conductor_group,omitempty"`
	ConsoleInterface    string                      `protobuf:"bytes,8,opt,name=console_interface,json=consoleInterface,proto3" json:"console_interface,omitempty"`
	DeployInterface     string                      `protobuf:"bytes,9,opt,name=deploy_interface,json=deployInterface,proto3" json:"deploy_interface,omitempty"`
	InspectInterface    string                      `protobuf:"bytes,10,opt,name=inspect_interface,json=inspectInterface,proto3" json:"inspect_interface,omitempty"`
	ManagementInterface string                      `protobuf:"bytes,11,opt,name=management_interface,json=managementInterface,proto3" json:"management_interface,omitempty"`
	NetworkInterface    string                      `protobuf:"bytes,12,opt,name=network_interface,json=networkInterface,proto3" json:"network_interface,omitempty"`
	RescueInterface     string                      `protobuf:"bytes,13,opt,name=rescue_interface,json=rescueInterface,proto3" json:"rescue_interface,omitempty"`
	StorageInterface    string                      `protobuf:"bytes,14,opt,name=storage_interface,json=storageInterface,proto3" json:"storage_interface,omitempty"`
	Uuid                string                      `protobuf:"bytes,15,opt,name=uuid,proto3" json:"uuid,omitempty"`
	VendorInterface     string                      `protobuf:"bytes,16,opt,name=vendor_interface,json=vendorInterface,proto3" json:"vendor_interface,omitempty"`
	Owner               string                      `protobuf:"bytes,17,opt,name=owner,proto3" json:"owner,omitempty"`
	Description         string                      `protobuf:"bytes,18,opt,name=description,proto3" json:"description,omitempty"`
	Lessee              string                      `protobuf:"bytes,19,opt,name=lessee,proto3" json:"lessee,omitempty"`
	Shard               string                      `protobuf:"bytes,20,opt,name=shard,proto3" json:"shard,omitempty"`
	Properties          *CreateNodeReq_Properties   `protobuf:"bytes,21,opt,name=properties,proto3" json:"properties,omitempty"`
	AutomatedClean      bool                        `protobuf:"varint,22,opt,name=automated_clean,json=automatedClean,proto3" json:"automated_clean,omitempty"`
	BiosInterface       string                      `protobuf:"bytes,23,opt,name=bios_interface,json=biosInterface,proto3" json:"bios_interface,omitempty"`
	ChassisUuid         string                      `protobuf:"bytes,24,opt,name=chassis_uuid,json=chassisUuid,proto3" json:"chassis_uuid,omitempty"`
	InstanceInfo        *CreateNodeReq_InstanceInfo `protobuf:"bytes,25,opt,name=instance_info,json=instanceInfo,proto3" json:"instance_info,omitempty"`
	InstanceUuid        string                      `protobuf:"bytes,26,opt,name=instance_uuid,json=instanceUuid,proto3" json:"instance_uuid,omitempty"`
	Maintenance         bool                        `protobuf:"varint,27,opt,name=maintenance,proto3" json:"maintenance,omitempty"`
	MaintenanceReason   bool                        `protobuf:"varint,28,opt,name=maintenance_reason,json=maintenanceReason,proto3" json:"maintenance_reason,omitempty"`
	NetworkData         *CreateNodeReq_NetworkData  `protobuf:"bytes,29,opt,name=network_data,json=networkData,proto3" json:"network_data,omitempty"`
	ParentNode          string                      `protobuf:"bytes,30,opt,name=parent_node,json=parentNode,proto3" json:"parent_node,omitempty"`
	Protected           bool                        `protobuf:"varint,31,opt,name=protected,proto3" json:"protected,omitempty"`
	ProtectedReason     string                      `protobuf:"bytes,32,opt,name=protected_reason,json=protectedReason,proto3" json:"protected_reason,omitempty"`
	Retired             bool                        `protobuf:"varint,33,opt,name=retired,proto3" json:"retired,omitempty"`
	RetiredReason       string                      `protobuf:"bytes,34,opt,name=retired_reason,json=retiredReason,proto3" json:"retired_reason,omitempty"`
	Platform            string                      `protobuf:"bytes,35,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateNodeReq) Reset() {
	*x = CreateNodeReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[166]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateNodeReq) ProtoMessage() {}

func (x *CreateNodeReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[166]
	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 CreateNodeReq.ProtoReflect.Descriptor instead.
func (*CreateNodeReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{166}
}

func (x *CreateNodeReq) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateNodeReq) GetDriver() string {
	if x != nil {
		return x.Driver
	}
	return ""
}

func (x *CreateNodeReq) GetDriverInfo() *CreateNodeReq_DriverInfo {
	if x != nil {
		return x.DriverInfo
	}
	return nil
}

func (x *CreateNodeReq) GetPowerInterface() string {
	if x != nil {
		return x.PowerInterface
	}
	return ""
}

func (x *CreateNodeReq) GetResourceClass() string {
	if x != nil {
		return x.ResourceClass
	}
	return ""
}

func (x *CreateNodeReq) GetBootInterface() string {
	if x != nil {
		return x.BootInterface
	}
	return ""
}

func (x *CreateNodeReq) GetConductorGroup() string {
	if x != nil {
		return x.ConductorGroup
	}
	return ""
}

func (x *CreateNodeReq) GetConsoleInterface() string {
	if x != nil {
		return x.ConsoleInterface
	}
	return ""
}

func (x *CreateNodeReq) GetDeployInterface() string {
	if x != nil {
		return x.DeployInterface
	}
	return ""
}

func (x *CreateNodeReq) GetInspectInterface() string {
	if x != nil {
		return x.InspectInterface
	}
	return ""
}

func (x *CreateNodeReq) GetManagementInterface() string {
	if x != nil {
		return x.ManagementInterface
	}
	return ""
}

func (x *CreateNodeReq) GetNetworkInterface() string {
	if x != nil {
		return x.NetworkInterface
	}
	return ""
}

func (x *CreateNodeReq) GetRescueInterface() string {
	if x != nil {
		return x.RescueInterface
	}
	return ""
}

func (x *CreateNodeReq) GetStorageInterface() string {
	if x != nil {
		return x.StorageInterface
	}
	return ""
}

func (x *CreateNodeReq) GetUuid() string {
	if x != nil {
		return x.Uuid
	}
	return ""
}

func (x *CreateNodeReq) GetVendorInterface() string {
	if x != nil {
		return x.VendorInterface
	}
	return ""
}

func (x *CreateNodeReq) GetOwner() string {
	if x != nil {
		return x.Owner
	}
	return ""
}

func (x *CreateNodeReq) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateNodeReq) GetLessee() string {
	if x != nil {
		return x.Lessee
	}
	return ""
}

func (x *CreateNodeReq) GetShard() string {
	if x != nil {
		return x.Shard
	}
	return ""
}

func (x *CreateNodeReq) GetProperties() *CreateNodeReq_Properties {
	if x != nil {
		return x.Properties
	}
	return nil
}

func (x *CreateNodeReq) GetAutomatedClean() bool {
	if x != nil {
		return x.AutomatedClean
	}
	return false
}

func (x *CreateNodeReq) GetBiosInterface() string {
	if x != nil {
		return x.BiosInterface
	}
	return ""
}

func (x *CreateNodeReq) GetChassisUuid() string {
	if x != nil {
		return x.ChassisUuid
	}
	return ""
}

func (x *CreateNodeReq) GetInstanceInfo() *CreateNodeReq_InstanceInfo {
	if x != nil {
		return x.InstanceInfo
	}
	return nil
}

func (x *CreateNodeReq) GetInstanceUuid() string {
	if x != nil {
		return x.InstanceUuid
	}
	return ""
}

func (x *CreateNodeReq) GetMaintenance() bool {
	if x != nil {
		return x.Maintenance
	}
	return false
}

func (x *CreateNodeReq) GetMaintenanceReason() bool {
	if x != nil {
		return x.MaintenanceReason
	}
	return false
}

func (x *CreateNodeReq) GetNetworkData() *CreateNodeReq_NetworkData {
	if x != nil {
		return x.NetworkData
	}
	return nil
}

func (x *CreateNodeReq) GetParentNode() string {
	if x != nil {
		return x.ParentNode
	}
	return ""
}

func (x *CreateNodeReq) GetProtected() bool {
	if x != nil {
		return x.Protected
	}
	return false
}

func (x *CreateNodeReq) GetProtectedReason() string {
	if x != nil {
		return x.ProtectedReason
	}
	return ""
}

func (x *CreateNodeReq) GetRetired() bool {
	if x != nil {
		return x.Retired
	}
	return false
}

func (x *CreateNodeReq) GetRetiredReason() string {
	if x != nil {
		return x.RetiredReason
	}
	return ""
}

func (x *CreateNodeReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	AllocationUuid       string                             `protobuf:"bytes,1,opt,name=allocation_uuid,json=allocationUuid,proto3" json:"allocation_uuid,omitempty"`
	Name                 string                             `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	PowerState           string                             `protobuf:"bytes,3,opt,name=power_state,json=powerState,proto3" json:"power_state,omitempty"`
	TargetPowerState     string                             `protobuf:"bytes,4,opt,name=target_power_state,json=targetPowerState,proto3" json:"target_power_state,omitempty"`
	ProvisionState       string                             `protobuf:"bytes,5,opt,name=provision_state,json=provisionState,proto3" json:"provision_state,omitempty"`
	TargetProvisionState string                             `protobuf:"bytes,6,opt,name=target_provision_state,json=targetProvisionState,proto3" json:"target_provision_state,omitempty"`
	Maintenance          bool                               `protobuf:"varint,7,opt,name=maintenance,proto3" json:"maintenance,omitempty"`
	MaintenanceReason    string                             `protobuf:"bytes,8,opt,name=maintenance_reason,json=maintenanceReason,proto3" json:"maintenance_reason,omitempty"`
	Fault                string                             `protobuf:"bytes,9,opt,name=fault,proto3" json:"fault,omitempty"`
	LastError            string                             `protobuf:"bytes,10,opt,name=last_error,json=lastError,proto3" json:"last_error,omitempty"`
	Reservation          string                             `protobuf:"bytes,11,opt,name=reservation,proto3" json:"reservation,omitempty"`
	Driver               string                             `protobuf:"bytes,12,opt,name=driver,proto3" json:"driver,omitempty"`
	DriverInfo           *CreateNodeResp_DriverInfo         `protobuf:"bytes,13,opt,name=driver_info,json=driverInfo,proto3" json:"driver_info,omitempty"`
	DriverInternalInfo   *CreateNodeResp_DriverInternalInfo `protobuf:"bytes,14,opt,name=driver_internal_info,json=driverInternalInfo,proto3" json:"driver_internal_info,omitempty"`
	Properties           *CreateNodeResp_Properties         `protobuf:"bytes,15,opt,name=properties,proto3" json:"properties,omitempty"`
	InstanceInfo         *CreateNodeResp_InstanceInfo       `protobuf:"bytes,16,opt,name=instance_info,json=instanceInfo,proto3" json:"instance_info,omitempty"`
	InstanceUuid         string                             `protobuf:"bytes,17,opt,name=instance_uuid,json=instanceUuid,proto3" json:"instance_uuid,omitempty"`
	ChassisUuid          string                             `protobuf:"bytes,18,opt,name=chassis_uuid,json=chassisUuid,proto3" json:"chassis_uuid,omitempty"`
	Extra                *CreateNodeResp_Extra              `protobuf:"bytes,19,opt,name=extra,proto3" json:"extra,omitempty"`
	ConsoleEnabled       bool                               `protobuf:"varint,20,opt,name=console_enabled,json=consoleEnabled,proto3" json:"console_enabled,omitempty"`
	RaidConfig           *CreateNodeResp_RaidConfig         `protobuf:"bytes,21,opt,name=raid_config,json=raidConfig,proto3" json:"raid_config,omitempty"`
	TargetRaidConfig     *CreateNodeResp_TargetRaidConfig   `protobuf:"bytes,22,opt,name=target_raid_config,json=targetRaidConfig,proto3" json:"target_raid_config,omitempty"`
	CleanStep            *CreateNodeResp_CleanStep          `protobuf:"bytes,23,opt,name=clean_step,json=cleanStep,proto3" json:"clean_step,omitempty"`
	DeployStep           *CreateNodeResp_DeployStep         `protobuf:"bytes,24,opt,name=deploy_step,json=deployStep,proto3" json:"deploy_step,omitempty"`
	Links                []*CreateNodeResp_Links            `protobuf:"bytes,25,rep,name=links,proto3" json:"links,omitempty"`
	Ports                []*CreateNodeResp_Ports            `protobuf:"bytes,26,rep,name=ports,proto3" json:"ports,omitempty"`
	Portgroups           []*CreateNodeResp_Portgroups       `protobuf:"bytes,27,rep,name=portgroups,proto3" json:"portgroups,omitempty"`
	States               []*CreateNodeResp_States           `protobuf:"bytes,28,rep,name=states,proto3" json:"states,omitempty"`
	ResourceClass        string                             `protobuf:"bytes,29,opt,name=resource_class,json=resourceClass,proto3" json:"resource_class,omitempty"`
	BootInterface        string                             `protobuf:"bytes,30,opt,name=boot_interface,json=bootInterface,proto3" json:"boot_interface,omitempty"`
	ConsoleInterface     string                             `protobuf:"bytes,31,opt,name=console_interface,json=consoleInterface,proto3" json:"console_interface,omitempty"`
	DeployInterface      string                             `protobuf:"bytes,32,opt,name=deploy_interface,json=deployInterface,proto3" json:"deploy_interface,omitempty"`
	ConductorGroup       string                             `protobuf:"bytes,33,opt,name=conductor_group,json=conductorGroup,proto3" json:"conductor_group,omitempty"`
	InspectInterface     string                             `protobuf:"bytes,34,opt,name=inspect_interface,json=inspectInterface,proto3" json:"inspect_interface,omitempty"`
	ManagementInterface  string                             `protobuf:"bytes,35,opt,name=management_interface,json=managementInterface,proto3" json:"management_interface,omitempty"`
	NetworkInterface     string                             `protobuf:"bytes,36,opt,name=network_interface,json=networkInterface,proto3" json:"network_interface,omitempty"`
	PowerInterface       string                             `protobuf:"bytes,37,opt,name=power_interface,json=powerInterface,proto3" json:"power_interface,omitempty"`
	RaidInterface        string                             `protobuf:"bytes,38,opt,name=raid_interface,json=raidInterface,proto3" json:"raid_interface,omitempty"`
	RescueInterface      string                             `protobuf:"bytes,39,opt,name=rescue_interface,json=rescueInterface,proto3" json:"rescue_interface,omitempty"`
	StorageInterface     string                             `protobuf:"bytes,40,opt,name=storage_interface,json=storageInterface,proto3" json:"storage_interface,omitempty"`
	Traits               []string                           `protobuf:"bytes,41,rep,name=traits,proto3" json:"traits,omitempty"`
	VendorInterface      string                             `protobuf:"bytes,42,opt,name=vendor_interface,json=vendorInterface,proto3" json:"vendor_interface,omitempty"`
	Volume               []*CreateNodeResp_Volume           `protobuf:"bytes,43,rep,name=volume,proto3" json:"volume,omitempty"`
	Protected            bool                               `protobuf:"varint,44,opt,name=protected,proto3" json:"protected,omitempty"`
	ProtectedReason      string                             `protobuf:"bytes,45,opt,name=protected_reason,json=protectedReason,proto3" json:"protected_reason,omitempty"`
	Conductor            string                             `protobuf:"bytes,46,opt,name=conductor,proto3" json:"conductor,omitempty"`
	Owner                string                             `protobuf:"bytes,47,opt,name=owner,proto3" json:"owner,omitempty"`
	Lessee               string                             `protobuf:"bytes,48,opt,name=lessee,proto3" json:"lessee,omitempty"`
	Shard                string                             `protobuf:"bytes,49,opt,name=shard,proto3" json:"shard,omitempty"`
	Description          string                             `protobuf:"bytes,50,opt,name=description,proto3" json:"description,omitempty"`
	AutomatedClean       string                             `protobuf:"bytes,51,opt,name=automated_clean,json=automatedClean,proto3" json:"automated_clean,omitempty"`
	BiosInterface        string                             `protobuf:"bytes,52,opt,name=bios_interface,json=biosInterface,proto3" json:"bios_interface,omitempty"`
	NetworkData          *CreateNodeResp_NetworkData        `protobuf:"bytes,53,opt,name=network_data,json=networkData,proto3" json:"network_data,omitempty"`
	Retired              bool                               `protobuf:"varint,54,opt,name=retired,proto3" json:"retired,omitempty"`
	RetiredReason        string                             `protobuf:"bytes,55,opt,name=retired_reason,json=retiredReason,proto3" json:"retired_reason,omitempty"`
	CreatedAt            string                             `protobuf:"bytes,56,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	InspectionFinishedAt string                             `protobuf:"bytes,57,opt,name=inspection_finished_at,json=inspectionFinishedAt,proto3" json:"inspection_finished_at,omitempty"`
	InspectionStartedAt  string                             `protobuf:"bytes,58,opt,name=inspection_started_at,json=inspectionStartedAt,proto3" json:"inspection_started_at,omitempty"`
	UpdatedAt            string                             `protobuf:"bytes,59,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Uuid                 string                             `protobuf:"bytes,60,opt,name=uuid,proto3" json:"uuid,omitempty"`
	ProvisionUpdatedAt   string                             `protobuf:"bytes,61,opt,name=provision_updated_at,json=provisionUpdatedAt,proto3" json:"provision_updated_at,omitempty"`
	Code                 int32                              `protobuf:"varint,62,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg                  string                             `protobuf:"bytes,63,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg             string                             `protobuf:"bytes,65,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateNodeResp) Reset() {
	*x = CreateNodeResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[167]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateNodeResp) ProtoMessage() {}

func (x *CreateNodeResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[167]
	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 CreateNodeResp.ProtoReflect.Descriptor instead.
func (*CreateNodeResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167}
}

func (x *CreateNodeResp) GetAllocationUuid() string {
	if x != nil {
		return x.AllocationUuid
	}
	return ""
}

func (x *CreateNodeResp) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateNodeResp) GetPowerState() string {
	if x != nil {
		return x.PowerState
	}
	return ""
}

func (x *CreateNodeResp) GetTargetPowerState() string {
	if x != nil {
		return x.TargetPowerState
	}
	return ""
}

func (x *CreateNodeResp) GetProvisionState() string {
	if x != nil {
		return x.ProvisionState
	}
	return ""
}

func (x *CreateNodeResp) GetTargetProvisionState() string {
	if x != nil {
		return x.TargetProvisionState
	}
	return ""
}

func (x *CreateNodeResp) GetMaintenance() bool {
	if x != nil {
		return x.Maintenance
	}
	return false
}

func (x *CreateNodeResp) GetMaintenanceReason() string {
	if x != nil {
		return x.MaintenanceReason
	}
	return ""
}

func (x *CreateNodeResp) GetFault() string {
	if x != nil {
		return x.Fault
	}
	return ""
}

func (x *CreateNodeResp) GetLastError() string {
	if x != nil {
		return x.LastError
	}
	return ""
}

func (x *CreateNodeResp) GetReservation() string {
	if x != nil {
		return x.Reservation
	}
	return ""
}

func (x *CreateNodeResp) GetDriver() string {
	if x != nil {
		return x.Driver
	}
	return ""
}

func (x *CreateNodeResp) GetDriverInfo() *CreateNodeResp_DriverInfo {
	if x != nil {
		return x.DriverInfo
	}
	return nil
}

func (x *CreateNodeResp) GetDriverInternalInfo() *CreateNodeResp_DriverInternalInfo {
	if x != nil {
		return x.DriverInternalInfo
	}
	return nil
}

func (x *CreateNodeResp) GetProperties() *CreateNodeResp_Properties {
	if x != nil {
		return x.Properties
	}
	return nil
}

func (x *CreateNodeResp) GetInstanceInfo() *CreateNodeResp_InstanceInfo {
	if x != nil {
		return x.InstanceInfo
	}
	return nil
}

func (x *CreateNodeResp) GetInstanceUuid() string {
	if x != nil {
		return x.InstanceUuid
	}
	return ""
}

func (x *CreateNodeResp) GetChassisUuid() string {
	if x != nil {
		return x.ChassisUuid
	}
	return ""
}

func (x *CreateNodeResp) GetExtra() *CreateNodeResp_Extra {
	if x != nil {
		return x.Extra
	}
	return nil
}

func (x *CreateNodeResp) GetConsoleEnabled() bool {
	if x != nil {
		return x.ConsoleEnabled
	}
	return false
}

func (x *CreateNodeResp) GetRaidConfig() *CreateNodeResp_RaidConfig {
	if x != nil {
		return x.RaidConfig
	}
	return nil
}

func (x *CreateNodeResp) GetTargetRaidConfig() *CreateNodeResp_TargetRaidConfig {
	if x != nil {
		return x.TargetRaidConfig
	}
	return nil
}

func (x *CreateNodeResp) GetCleanStep() *CreateNodeResp_CleanStep {
	if x != nil {
		return x.CleanStep
	}
	return nil
}

func (x *CreateNodeResp) GetDeployStep() *CreateNodeResp_DeployStep {
	if x != nil {
		return x.DeployStep
	}
	return nil
}

func (x *CreateNodeResp) GetLinks() []*CreateNodeResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *CreateNodeResp) GetPorts() []*CreateNodeResp_Ports {
	if x != nil {
		return x.Ports
	}
	return nil
}

func (x *CreateNodeResp) GetPortgroups() []*CreateNodeResp_Portgroups {
	if x != nil {
		return x.Portgroups
	}
	return nil
}

func (x *CreateNodeResp) GetStates() []*CreateNodeResp_States {
	if x != nil {
		return x.States
	}
	return nil
}

func (x *CreateNodeResp) GetResourceClass() string {
	if x != nil {
		return x.ResourceClass
	}
	return ""
}

func (x *CreateNodeResp) GetBootInterface() string {
	if x != nil {
		return x.BootInterface
	}
	return ""
}

func (x *CreateNodeResp) GetConsoleInterface() string {
	if x != nil {
		return x.ConsoleInterface
	}
	return ""
}

func (x *CreateNodeResp) GetDeployInterface() string {
	if x != nil {
		return x.DeployInterface
	}
	return ""
}

func (x *CreateNodeResp) GetConductorGroup() string {
	if x != nil {
		return x.ConductorGroup
	}
	return ""
}

func (x *CreateNodeResp) GetInspectInterface() string {
	if x != nil {
		return x.InspectInterface
	}
	return ""
}

func (x *CreateNodeResp) GetManagementInterface() string {
	if x != nil {
		return x.ManagementInterface
	}
	return ""
}

func (x *CreateNodeResp) GetNetworkInterface() string {
	if x != nil {
		return x.NetworkInterface
	}
	return ""
}

func (x *CreateNodeResp) GetPowerInterface() string {
	if x != nil {
		return x.PowerInterface
	}
	return ""
}

func (x *CreateNodeResp) GetRaidInterface() string {
	if x != nil {
		return x.RaidInterface
	}
	return ""
}

func (x *CreateNodeResp) GetRescueInterface() string {
	if x != nil {
		return x.RescueInterface
	}
	return ""
}

func (x *CreateNodeResp) GetStorageInterface() string {
	if x != nil {
		return x.StorageInterface
	}
	return ""
}

func (x *CreateNodeResp) GetTraits() []string {
	if x != nil {
		return x.Traits
	}
	return nil
}

func (x *CreateNodeResp) GetVendorInterface() string {
	if x != nil {
		return x.VendorInterface
	}
	return ""
}

func (x *CreateNodeResp) GetVolume() []*CreateNodeResp_Volume {
	if x != nil {
		return x.Volume
	}
	return nil
}

func (x *CreateNodeResp) GetProtected() bool {
	if x != nil {
		return x.Protected
	}
	return false
}

func (x *CreateNodeResp) GetProtectedReason() string {
	if x != nil {
		return x.ProtectedReason
	}
	return ""
}

func (x *CreateNodeResp) GetConductor() string {
	if x != nil {
		return x.Conductor
	}
	return ""
}

func (x *CreateNodeResp) GetOwner() string {
	if x != nil {
		return x.Owner
	}
	return ""
}

func (x *CreateNodeResp) GetLessee() string {
	if x != nil {
		return x.Lessee
	}
	return ""
}

func (x *CreateNodeResp) GetShard() string {
	if x != nil {
		return x.Shard
	}
	return ""
}

func (x *CreateNodeResp) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateNodeResp) GetAutomatedClean() string {
	if x != nil {
		return x.AutomatedClean
	}
	return ""
}

func (x *CreateNodeResp) GetBiosInterface() string {
	if x != nil {
		return x.BiosInterface
	}
	return ""
}

func (x *CreateNodeResp) GetNetworkData() *CreateNodeResp_NetworkData {
	if x != nil {
		return x.NetworkData
	}
	return nil
}

func (x *CreateNodeResp) GetRetired() bool {
	if x != nil {
		return x.Retired
	}
	return false
}

func (x *CreateNodeResp) GetRetiredReason() string {
	if x != nil {
		return x.RetiredReason
	}
	return ""
}

func (x *CreateNodeResp) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *CreateNodeResp) GetInspectionFinishedAt() string {
	if x != nil {
		return x.InspectionFinishedAt
	}
	return ""
}

func (x *CreateNodeResp) GetInspectionStartedAt() string {
	if x != nil {
		return x.InspectionStartedAt
	}
	return ""
}

func (x *CreateNodeResp) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *CreateNodeResp) GetUuid() string {
	if x != nil {
		return x.Uuid
	}
	return ""
}

func (x *CreateNodeResp) GetProvisionUpdatedAt() string {
	if x != nil {
		return x.ProvisionUpdatedAt
	}
	return ""
}

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

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

func (x *CreateNodeResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// ***************** Bare Metal DeleteNode Start************************
type DeleteNodeReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	NodeIdent string `protobuf:"bytes,1,opt,name=node_ident,json=nodeIdent,proto3" json:"node_ident,omitempty"`
	Platform  string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteNodeReq) Reset() {
	*x = DeleteNodeReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[168]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteNodeReq) ProtoMessage() {}

func (x *DeleteNodeReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[168]
	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 DeleteNodeReq.ProtoReflect.Descriptor instead.
func (*DeleteNodeReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{168}
}

func (x *DeleteNodeReq) GetNodeIdent() string {
	if x != nil {
		return x.NodeIdent
	}
	return ""
}

func (x *DeleteNodeReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteNodeResp) Reset() {
	*x = DeleteNodeResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[169]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteNodeResp) ProtoMessage() {}

func (x *DeleteNodeResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[169]
	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 DeleteNodeResp.ProtoReflect.Descriptor instead.
func (*DeleteNodeResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{169}
}

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

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

func (x *DeleteNodeResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// ***************** Bare Metal ShowNodeDetailsReq Start*****************
type ShowNodeDetailsReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	NodeIdent string                       `protobuf:"bytes,1,opt,name=node_ident,json=nodeIdent,proto3" json:"node_ident,omitempty"`
	Fields    []*ShowNodeDetailsReq_Fields `protobuf:"bytes,2,rep,name=fields,proto3" json:"fields,omitempty"`
	Platform  string                       `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ShowNodeDetailsReq) Reset() {
	*x = ShowNodeDetailsReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[170]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowNodeDetailsReq) ProtoMessage() {}

func (x *ShowNodeDetailsReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[170]
	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 ShowNodeDetailsReq.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{170}
}

func (x *ShowNodeDetailsReq) GetNodeIdent() string {
	if x != nil {
		return x.NodeIdent
	}
	return ""
}

func (x *ShowNodeDetailsReq) GetFields() []*ShowNodeDetailsReq_Fields {
	if x != nil {
		return x.Fields
	}
	return nil
}

func (x *ShowNodeDetailsReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Uuid                 string                                  `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	Name                 string                                  `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	PowerState           string                                  `protobuf:"bytes,3,opt,name=power_state,json=powerState,proto3" json:"power_state,omitempty"`
	TargetPowerState     string                                  `protobuf:"bytes,4,opt,name=target_power_state,json=targetPowerState,proto3" json:"target_power_state,omitempty"`
	ProvisionState       string                                  `protobuf:"bytes,5,opt,name=provision_state,json=provisionState,proto3" json:"provision_state,omitempty"`
	TargetProvisionState string                                  `protobuf:"bytes,6,opt,name=target_provision_state,json=targetProvisionState,proto3" json:"target_provision_state,omitempty"`
	Maintenance          bool                                    `protobuf:"varint,7,opt,name=maintenance,proto3" json:"maintenance,omitempty"`
	MaintenanceReason    string                                  `protobuf:"bytes,8,opt,name=maintenance_reason,json=maintenanceReason,proto3" json:"maintenance_reason,omitempty"`
	Fault                string                                  `protobuf:"bytes,9,opt,name=fault,proto3" json:"fault,omitempty"`
	LastError            string                                  `protobuf:"bytes,10,opt,name=last_error,json=lastError,proto3" json:"last_error,omitempty"`
	Reservation          string                                  `protobuf:"bytes,11,opt,name=reservation,proto3" json:"reservation,omitempty"`
	Driver               string                                  `protobuf:"bytes,12,opt,name=driver,proto3" json:"driver,omitempty"`
	DriverInfo           *ShowNodeDetailsResp_DriverInfo         `protobuf:"bytes,13,opt,name=driver_info,json=driverInfo,proto3" json:"driver_info,omitempty"`
	DriverInternalInfo   *ShowNodeDetailsResp_DriverInternalInfo `protobuf:"bytes,14,opt,name=driver_internal_info,json=driverInternalInfo,proto3" json:"driver_internal_info,omitempty"`
	Properties           *ShowNodeDetailsResp_Properties         `protobuf:"bytes,15,opt,name=properties,proto3" json:"properties,omitempty"`
	InstanceInfo         *ShowNodeDetailsResp_InstanceInfo       `protobuf:"bytes,16,opt,name=instance_info,json=instanceInfo,proto3" json:"instance_info,omitempty"`
	InstanceUuid         string                                  `protobuf:"bytes,17,opt,name=instance_uuid,json=instanceUuid,proto3" json:"instance_uuid,omitempty"`
	ChassisUuid          string                                  `protobuf:"bytes,18,opt,name=chassis_uuid,json=chassisUuid,proto3" json:"chassis_uuid,omitempty"`
	Extra                *ShowNodeDetailsResp_Extra              `protobuf:"bytes,19,opt,name=extra,proto3" json:"extra,omitempty"`
	ConsoleEnabled       bool                                    `protobuf:"varint,20,opt,name=console_enabled,json=consoleEnabled,proto3" json:"console_enabled,omitempty"`
	RaidConfig           *ShowNodeDetailsResp_RaidConfig         `protobuf:"bytes,21,opt,name=raid_config,json=raidConfig,proto3" json:"raid_config,omitempty"`
	TargetRaidConfig     *ShowNodeDetailsResp_TargetRaidConfig   `protobuf:"bytes,22,opt,name=target_raid_config,json=targetRaidConfig,proto3" json:"target_raid_config,omitempty"`
	CleanStep            *ShowNodeDetailsResp_CleanStep          `protobuf:"bytes,23,opt,name=clean_step,json=cleanStep,proto3" json:"clean_step,omitempty"`
	DeployStep           *ShowNodeDetailsResp_DeployStep         `protobuf:"bytes,24,opt,name=deploy_step,json=deployStep,proto3" json:"deploy_step,omitempty"`
	Links                []*ShowNodeDetailsResp_Links            `protobuf:"bytes,25,rep,name=links,proto3" json:"links,omitempty"`
	Ports                []*ShowNodeDetailsResp_Ports            `protobuf:"bytes,26,rep,name=ports,proto3" json:"ports,omitempty"`
	Portgroups           []*ShowNodeDetailsResp_Portgroups       `protobuf:"bytes,27,rep,name=portgroups,proto3" json:"portgroups,omitempty"`
	States               []*ShowNodeDetailsResp_States           `protobuf:"bytes,28,rep,name=states,proto3" json:"states,omitempty"`
	ResourceClass        string                                  `protobuf:"bytes,29,opt,name=resource_class,json=resourceClass,proto3" json:"resource_class,omitempty"`
	BiosInterface        string                                  `protobuf:"bytes,30,opt,name=bios_interface,json=biosInterface,proto3" json:"bios_interface,omitempty"`
	BootInterface        string                                  `protobuf:"bytes,31,opt,name=boot_interface,json=bootInterface,proto3" json:"boot_interface,omitempty"`
	ConsoleInterface     string                                  `protobuf:"bytes,32,opt,name=console_interface,json=consoleInterface,proto3" json:"console_interface,omitempty"`
	DeployInterface      string                                  `protobuf:"bytes,33,opt,name=deploy_interface,json=deployInterface,proto3" json:"deploy_interface,omitempty"`
	InspectInterface     string                                  `protobuf:"bytes,34,opt,name=inspect_interface,json=inspectInterface,proto3" json:"inspect_interface,omitempty"`
	ManagementInterface  string                                  `protobuf:"bytes,35,opt,name=management_interface,json=managementInterface,proto3" json:"management_interface,omitempty"`
	NetworkInterface     string                                  `protobuf:"bytes,36,opt,name=network_interface,json=networkInterface,proto3" json:"network_interface,omitempty"`
	PowerInterface       string                                  `protobuf:"bytes,37,opt,name=power_interface,json=powerInterface,proto3" json:"power_interface,omitempty"`
	RaidInterface        string                                  `protobuf:"bytes,38,opt,name=raid_interface,json=raidInterface,proto3" json:"raid_interface,omitempty"`
	RescueInterface      string                                  `protobuf:"bytes,39,opt,name=rescue_interface,json=rescueInterface,proto3" json:"rescue_interface,omitempty"`
	StorageInterface     string                                  `protobuf:"bytes,40,opt,name=storage_interface,json=storageInterface,proto3" json:"storage_interface,omitempty"`
	Traits               []*ShowNodeDetailsResp_Traits           `protobuf:"bytes,41,rep,name=traits,proto3" json:"traits,omitempty"`
	VendorInterface      string                                  `protobuf:"bytes,42,opt,name=vendor_interface,json=vendorInterface,proto3" json:"vendor_interface,omitempty"`
	Volume               []*ShowNodeDetailsResp_Volume           `protobuf:"bytes,43,rep,name=volume,proto3" json:"volume,omitempty"`
	ConductorGroup       string                                  `protobuf:"bytes,44,opt,name=conductor_group,json=conductorGroup,proto3" json:"conductor_group,omitempty"`
	Protected            bool                                    `protobuf:"varint,45,opt,name=protected,proto3" json:"protected,omitempty"`
	ProtectedReason      string                                  `protobuf:"bytes,46,opt,name=protected_reason,json=protectedReason,proto3" json:"protected_reason,omitempty"`
	Owner                string                                  `protobuf:"bytes,47,opt,name=owner,proto3" json:"owner,omitempty"`
	Lessee               string                                  `protobuf:"bytes,48,opt,name=lessee,proto3" json:"lessee,omitempty"`
	Shard                string                                  `protobuf:"bytes,49,opt,name=shard,proto3" json:"shard,omitempty"`
	Description          string                                  `protobuf:"bytes,50,opt,name=description,proto3" json:"description,omitempty"`
	Conductor            string                                  `protobuf:"bytes,51,opt,name=conductor,proto3" json:"conductor,omitempty"`
	AllocationUuid       string                                  `protobuf:"bytes,52,opt,name=allocation_uuid,json=allocationUuid,proto3" json:"allocation_uuid,omitempty"`
	CreatedAt            string                                  `protobuf:"bytes,53,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	InspectionFinishedAt string                                  `protobuf:"bytes,54,opt,name=inspection_finished_at,json=inspectionFinishedAt,proto3" json:"inspection_finished_at,omitempty"`
	InspectionStartedAt  string                                  `protobuf:"bytes,55,opt,name=inspection_started_at,json=inspectionStartedAt,proto3" json:"inspection_started_at,omitempty"`
	NetworkData          *ShowNodeDetailsResp_NetworkData        `protobuf:"bytes,57,opt,name=network_data,json=networkData,proto3" json:"network_data,omitempty"`
	ProvisionUpdatedAt   string                                  `protobuf:"bytes,58,opt,name=provision_updated_at,json=provisionUpdatedAt,proto3" json:"provision_updated_at,omitempty"`
	Retired              bool                                    `protobuf:"varint,59,opt,name=retired,proto3" json:"retired,omitempty"`
	RetiredReason        string                                  `protobuf:"bytes,60,opt,name=retired_reason,json=retiredReason,proto3" json:"retired_reason,omitempty"`
	UpdatedAt            string                                  `protobuf:"bytes,61,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Code                 int32                                   `protobuf:"varint,62,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg                  string                                  `protobuf:"bytes,63,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg             string                                  `protobuf:"bytes,64,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ShowNodeDetailsResp) Reset() {
	*x = ShowNodeDetailsResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[171]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowNodeDetailsResp) ProtoMessage() {}

func (x *ShowNodeDetailsResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[171]
	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 ShowNodeDetailsResp.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171}
}

func (x *ShowNodeDetailsResp) GetUuid() string {
	if x != nil {
		return x.Uuid
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetPowerState() string {
	if x != nil {
		return x.PowerState
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetTargetPowerState() string {
	if x != nil {
		return x.TargetPowerState
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetProvisionState() string {
	if x != nil {
		return x.ProvisionState
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetTargetProvisionState() string {
	if x != nil {
		return x.TargetProvisionState
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetMaintenance() bool {
	if x != nil {
		return x.Maintenance
	}
	return false
}

func (x *ShowNodeDetailsResp) GetMaintenanceReason() string {
	if x != nil {
		return x.MaintenanceReason
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetFault() string {
	if x != nil {
		return x.Fault
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetLastError() string {
	if x != nil {
		return x.LastError
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetReservation() string {
	if x != nil {
		return x.Reservation
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetDriver() string {
	if x != nil {
		return x.Driver
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetDriverInfo() *ShowNodeDetailsResp_DriverInfo {
	if x != nil {
		return x.DriverInfo
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetDriverInternalInfo() *ShowNodeDetailsResp_DriverInternalInfo {
	if x != nil {
		return x.DriverInternalInfo
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetProperties() *ShowNodeDetailsResp_Properties {
	if x != nil {
		return x.Properties
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetInstanceInfo() *ShowNodeDetailsResp_InstanceInfo {
	if x != nil {
		return x.InstanceInfo
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetInstanceUuid() string {
	if x != nil {
		return x.InstanceUuid
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetChassisUuid() string {
	if x != nil {
		return x.ChassisUuid
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetExtra() *ShowNodeDetailsResp_Extra {
	if x != nil {
		return x.Extra
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetConsoleEnabled() bool {
	if x != nil {
		return x.ConsoleEnabled
	}
	return false
}

func (x *ShowNodeDetailsResp) GetRaidConfig() *ShowNodeDetailsResp_RaidConfig {
	if x != nil {
		return x.RaidConfig
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetTargetRaidConfig() *ShowNodeDetailsResp_TargetRaidConfig {
	if x != nil {
		return x.TargetRaidConfig
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetCleanStep() *ShowNodeDetailsResp_CleanStep {
	if x != nil {
		return x.CleanStep
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetDeployStep() *ShowNodeDetailsResp_DeployStep {
	if x != nil {
		return x.DeployStep
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetLinks() []*ShowNodeDetailsResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetPorts() []*ShowNodeDetailsResp_Ports {
	if x != nil {
		return x.Ports
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetPortgroups() []*ShowNodeDetailsResp_Portgroups {
	if x != nil {
		return x.Portgroups
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetStates() []*ShowNodeDetailsResp_States {
	if x != nil {
		return x.States
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetResourceClass() string {
	if x != nil {
		return x.ResourceClass
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetBiosInterface() string {
	if x != nil {
		return x.BiosInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetBootInterface() string {
	if x != nil {
		return x.BootInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetConsoleInterface() string {
	if x != nil {
		return x.ConsoleInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetDeployInterface() string {
	if x != nil {
		return x.DeployInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetInspectInterface() string {
	if x != nil {
		return x.InspectInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetManagementInterface() string {
	if x != nil {
		return x.ManagementInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetNetworkInterface() string {
	if x != nil {
		return x.NetworkInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetPowerInterface() string {
	if x != nil {
		return x.PowerInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetRaidInterface() string {
	if x != nil {
		return x.RaidInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetRescueInterface() string {
	if x != nil {
		return x.RescueInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetStorageInterface() string {
	if x != nil {
		return x.StorageInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetTraits() []*ShowNodeDetailsResp_Traits {
	if x != nil {
		return x.Traits
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetVendorInterface() string {
	if x != nil {
		return x.VendorInterface
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetVolume() []*ShowNodeDetailsResp_Volume {
	if x != nil {
		return x.Volume
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetConductorGroup() string {
	if x != nil {
		return x.ConductorGroup
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetProtected() bool {
	if x != nil {
		return x.Protected
	}
	return false
}

func (x *ShowNodeDetailsResp) GetProtectedReason() string {
	if x != nil {
		return x.ProtectedReason
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetOwner() string {
	if x != nil {
		return x.Owner
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetLessee() string {
	if x != nil {
		return x.Lessee
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetShard() string {
	if x != nil {
		return x.Shard
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetConductor() string {
	if x != nil {
		return x.Conductor
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetAllocationUuid() string {
	if x != nil {
		return x.AllocationUuid
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetInspectionFinishedAt() string {
	if x != nil {
		return x.InspectionFinishedAt
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetInspectionStartedAt() string {
	if x != nil {
		return x.InspectionStartedAt
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetNetworkData() *ShowNodeDetailsResp_NetworkData {
	if x != nil {
		return x.NetworkData
	}
	return nil
}

func (x *ShowNodeDetailsResp) GetProvisionUpdatedAt() string {
	if x != nil {
		return x.ProvisionUpdatedAt
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetRetired() bool {
	if x != nil {
		return x.Retired
	}
	return false
}

func (x *ShowNodeDetailsResp) GetRetiredReason() string {
	if x != nil {
		return x.RetiredReason
	}
	return ""
}

func (x *ShowNodeDetailsResp) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

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

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

func (x *ShowNodeDetailsResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// *****************WangQi Images API start************************
type CreateImageReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ContainerFormat string  `protobuf:"bytes,1,opt,name=container_format,json=containerFormat,proto3" json:"container_format,omitempty"`
	DiskFormat      string  `protobuf:"bytes,2,opt,name=disk_format,json=diskFormat,proto3" json:"disk_format,omitempty"`
	Id              string  `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	MinDisk         int64   `protobuf:"varint,4,opt,name=min_disk,json=minDisk,proto3" json:"min_disk,omitempty"`
	MinRam          int64   `protobuf:"varint,5,opt,name=min_ram,json=minRam,proto3" json:"min_ram,omitempty"`
	Name            string  `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"`
	Protected       bool    `protobuf:"varint,7,opt,name=protected,proto3" json:"protected,omitempty"`
	Tags            []*Tags `protobuf:"bytes,43,rep,name=tags,proto3" json:"tags,omitempty"`
	Visibility      string  `protobuf:"bytes,44,opt,name=visibility,proto3" json:"visibility,omitempty"`
	Platform        string  `protobuf:"bytes,8,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateImageReq) Reset() {
	*x = CreateImageReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[172]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateImageReq) ProtoMessage() {}

func (x *CreateImageReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[172]
	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 CreateImageReq.ProtoReflect.Descriptor instead.
func (*CreateImageReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{172}
}

func (x *CreateImageReq) GetContainerFormat() string {
	if x != nil {
		return x.ContainerFormat
	}
	return ""
}

func (x *CreateImageReq) GetDiskFormat() string {
	if x != nil {
		return x.DiskFormat
	}
	return ""
}

func (x *CreateImageReq) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateImageReq) GetMinDisk() int64 {
	if x != nil {
		return x.MinDisk
	}
	return 0
}

func (x *CreateImageReq) GetMinRam() int64 {
	if x != nil {
		return x.MinRam
	}
	return 0
}

func (x *CreateImageReq) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateImageReq) GetProtected() bool {
	if x != nil {
		return x.Protected
	}
	return false
}

func (x *CreateImageReq) GetTags() []*Tags {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *CreateImageReq) GetVisibility() string {
	if x != nil {
		return x.Visibility
	}
	return ""
}

func (x *CreateImageReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

func (x *Tags) Reset() {
	*x = Tags{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[173]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Tags) ProtoMessage() {}

func (x *Tags) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[173]
	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 Tags.ProtoReflect.Descriptor instead.
func (*Tags) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{173}
}

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

	Location                    string                       `protobuf:"bytes,1,opt,name=Location,proto3" json:"Location,omitempty"`
	OpenStackImageImportMethods string                       `protobuf:"bytes,2,opt,name=OpenStack_image_import_methods,json=OpenStack-image-import-methods,proto3" json:"OpenStack_image_import_methods,omitempty"`
	OpenStackImageStoreIds      string                       `protobuf:"bytes,3,opt,name=OpenStack_image_store_ids,json=OpenStack-image-store-ids,proto3" json:"OpenStack_image_store_ids,omitempty"`
	Checksum                    string                       `protobuf:"bytes,4,opt,name=checksum,proto3" json:"checksum,omitempty"`
	ContainerFormat             string                       `protobuf:"bytes,5,opt,name=container_format,json=containerFormat,proto3" json:"container_format,omitempty"`
	CreatedAt                   string                       `protobuf:"bytes,6,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	DiskFormat                  string                       `protobuf:"bytes,7,opt,name=disk_format,json=diskFormat,proto3" json:"disk_format,omitempty"`
	File                        string                       `protobuf:"bytes,8,opt,name=file,proto3" json:"file,omitempty"`
	Id                          string                       `protobuf:"bytes,9,opt,name=id,proto3" json:"id,omitempty"`
	MinDisk                     uint32                       `protobuf:"varint,10,opt,name=min_disk,json=minDisk,proto3" json:"min_disk,omitempty"`
	MinRam                      uint32                       `protobuf:"varint,11,opt,name=min_ram,json=minRam,proto3" json:"min_ram,omitempty"`
	Name                        string                       `protobuf:"bytes,12,opt,name=name,proto3" json:"name,omitempty"`
	OsHashAlgo                  string                       `protobuf:"bytes,13,opt,name=os_hash_algo,json=osHashAlgo,proto3" json:"os_hash_algo,omitempty"`
	OsHashValue                 string                       `protobuf:"bytes,14,opt,name=os_hash_value,json=osHashValue,proto3" json:"os_hash_value,omitempty"`
	OsHidden                    bool                         `protobuf:"varint,15,opt,name=os_hidden,json=osHidden,proto3" json:"os_hidden,omitempty"`
	Protected                   bool                         `protobuf:"varint,16,opt,name=protected,proto3" json:"protected,omitempty"`
	Owner                       string                       `protobuf:"bytes,17,opt,name=owner,proto3" json:"owner,omitempty"`
	Schema                      string                       `protobuf:"bytes,18,opt,name=schema,proto3" json:"schema,omitempty"`
	Self                        string                       `protobuf:"bytes,19,opt,name=self,proto3" json:"self,omitempty"`
	Size                        int64                        `protobuf:"varint,20,opt,name=size,proto3" json:"size,omitempty"`
	Status                      string                       `protobuf:"bytes,21,opt,name=status,proto3" json:"status,omitempty"`
	UpdatedAt                   string                       `protobuf:"bytes,22,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Visibility                  string                       `protobuf:"bytes,23,opt,name=visibility,proto3" json:"visibility,omitempty"`
	VirtualSize                 int64                        `protobuf:"varint,24,opt,name=virtual_size,json=virtualSize,proto3" json:"virtual_size,omitempty"`
	DirectUrl                   string                       `protobuf:"bytes,25,opt,name=direct_url,json=directUrl,proto3" json:"direct_url,omitempty"`
	Tags                        []*CreateImageResp_Tags      `protobuf:"bytes,26,rep,name=tags,proto3" json:"tags,omitempty"`
	Locations                   []*CreateImageResp_Locations `protobuf:"bytes,27,rep,name=locations,proto3" json:"locations,omitempty"`
	Code                        int32                        `protobuf:"varint,28,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg                         string                       `protobuf:"bytes,29,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg                    string                       `protobuf:"bytes,30,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateImageResp) Reset() {
	*x = CreateImageResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[174]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateImageResp) ProtoMessage() {}

func (x *CreateImageResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[174]
	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 CreateImageResp.ProtoReflect.Descriptor instead.
func (*CreateImageResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{174}
}

func (x *CreateImageResp) GetLocation() string {
	if x != nil {
		return x.Location
	}
	return ""
}

func (x *CreateImageResp) GetOpenStackImageImportMethods() string {
	if x != nil {
		return x.OpenStackImageImportMethods
	}
	return ""
}

func (x *CreateImageResp) GetOpenStackImageStoreIds() string {
	if x != nil {
		return x.OpenStackImageStoreIds
	}
	return ""
}

func (x *CreateImageResp) GetChecksum() string {
	if x != nil {
		return x.Checksum
	}
	return ""
}

func (x *CreateImageResp) GetContainerFormat() string {
	if x != nil {
		return x.ContainerFormat
	}
	return ""
}

func (x *CreateImageResp) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *CreateImageResp) GetDiskFormat() string {
	if x != nil {
		return x.DiskFormat
	}
	return ""
}

func (x *CreateImageResp) GetFile() string {
	if x != nil {
		return x.File
	}
	return ""
}

func (x *CreateImageResp) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateImageResp) GetMinDisk() uint32 {
	if x != nil {
		return x.MinDisk
	}
	return 0
}

func (x *CreateImageResp) GetMinRam() uint32 {
	if x != nil {
		return x.MinRam
	}
	return 0
}

func (x *CreateImageResp) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateImageResp) GetOsHashAlgo() string {
	if x != nil {
		return x.OsHashAlgo
	}
	return ""
}

func (x *CreateImageResp) GetOsHashValue() string {
	if x != nil {
		return x.OsHashValue
	}
	return ""
}

func (x *CreateImageResp) GetOsHidden() bool {
	if x != nil {
		return x.OsHidden
	}
	return false
}

func (x *CreateImageResp) GetProtected() bool {
	if x != nil {
		return x.Protected
	}
	return false
}

func (x *CreateImageResp) GetOwner() string {
	if x != nil {
		return x.Owner
	}
	return ""
}

func (x *CreateImageResp) GetSchema() string {
	if x != nil {
		return x.Schema
	}
	return ""
}

func (x *CreateImageResp) GetSelf() string {
	if x != nil {
		return x.Self
	}
	return ""
}

func (x *CreateImageResp) GetSize() int64 {
	if x != nil {
		return x.Size
	}
	return 0
}

func (x *CreateImageResp) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *CreateImageResp) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *CreateImageResp) GetVisibility() string {
	if x != nil {
		return x.Visibility
	}
	return ""
}

func (x *CreateImageResp) GetVirtualSize() int64 {
	if x != nil {
		return x.VirtualSize
	}
	return 0
}

func (x *CreateImageResp) GetDirectUrl() string {
	if x != nil {
		return x.DirectUrl
	}
	return ""
}

func (x *CreateImageResp) GetTags() []*CreateImageResp_Tags {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *CreateImageResp) GetLocations() []*CreateImageResp_Locations {
	if x != nil {
		return x.Locations
	}
	return nil
}

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

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

func (x *CreateImageResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	Limit    int32  `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"` // @gotags: copier:"Limit"
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListImagesReq) Reset() {
	*x = ListImagesReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[175]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListImagesReq) ProtoMessage() {}

func (x *ListImagesReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[175]
	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 ListImagesReq.ProtoReflect.Descriptor instead.
func (*ListImagesReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{175}
}

func (x *ListImagesReq) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListImagesReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	First    string                   `protobuf:"bytes,1,opt,name=first,proto3" json:"first,omitempty"`
	Next     string                   `protobuf:"bytes,2,opt,name=next,proto3" json:"next,omitempty"`
	Schema   string                   `protobuf:"bytes,3,opt,name=schema,proto3" json:"schema,omitempty"`
	Images   []*ListImagesResp_Images `protobuf:"bytes,4,rep,name=images,proto3" json:"images,omitempty"`
	Code     int32                    `protobuf:"varint,5,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                   `protobuf:"bytes,6,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                   `protobuf:"bytes,7,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListImagesResp) Reset() {
	*x = ListImagesResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[176]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListImagesResp) ProtoMessage() {}

func (x *ListImagesResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[176]
	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 ListImagesResp.ProtoReflect.Descriptor instead.
func (*ListImagesResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{176}
}

func (x *ListImagesResp) GetFirst() string {
	if x != nil {
		return x.First
	}
	return ""
}

func (x *ListImagesResp) GetNext() string {
	if x != nil {
		return x.Next
	}
	return ""
}

func (x *ListImagesResp) GetSchema() string {
	if x != nil {
		return x.Schema
	}
	return ""
}

func (x *ListImagesResp) GetImages() []*ListImagesResp_Images {
	if x != nil {
		return x.Images
	}
	return nil
}

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

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

func (x *ListImagesResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ImageId  string `protobuf:"bytes,1,opt,name=image_id,json=imageId,proto3" json:"image_id,omitempty"` // @gotags: copier:"imageId"
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteImageReq) Reset() {
	*x = DeleteImageReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[177]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteImageReq) ProtoMessage() {}

func (x *DeleteImageReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[177]
	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 DeleteImageReq.ProtoReflect.Descriptor instead.
func (*DeleteImageReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{177}
}

func (x *DeleteImageReq) GetImageId() string {
	if x != nil {
		return x.ImageId
	}
	return ""
}

func (x *DeleteImageReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteImageResp) Reset() {
	*x = DeleteImageResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[178]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteImageResp) ProtoMessage() {}

func (x *DeleteImageResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[178]
	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 DeleteImageResp.ProtoReflect.Descriptor instead.
func (*DeleteImageResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{178}
}

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

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

func (x *DeleteImageResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ImageId  string `protobuf:"bytes,1,opt,name=image_id,json=imageId,proto3" json:"image_id,omitempty"` // @gotags: copier:"ImageId"
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *UploadOsImageReq) Reset() {
	*x = UploadOsImageReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[179]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UploadOsImageReq) ProtoMessage() {}

func (x *UploadOsImageReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[179]
	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 UploadOsImageReq.ProtoReflect.Descriptor instead.
func (*UploadOsImageReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{179}
}

func (x *UploadOsImageReq) GetImageId() string {
	if x != nil {
		return x.ImageId
	}
	return ""
}

func (x *UploadOsImageReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UploadOsImageResp) Reset() {
	*x = UploadOsImageResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[180]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UploadOsImageResp) ProtoMessage() {}

func (x *UploadOsImageResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[180]
	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 UploadOsImageResp.ProtoReflect.Descriptor instead.
func (*UploadOsImageResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{180}
}

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

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

func (x *UploadOsImageResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

// *****************WangQi volumes API start************************
type ListVolumesReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ProjectId     string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` // @gotags: copier:"ProjectId"
	AllTenants    string `protobuf:"bytes,2,opt,name=all_tenants,json=allTenants,proto3" json:"all_tenants,omitempty"`
	Sort          string `protobuf:"bytes,3,opt,name=sort,proto3" json:"sort,omitempty"`
	Limit         int32  `protobuf:"varint,4,opt,name=limit,proto3" json:"limit,omitempty"`
	Offset        int32  `protobuf:"varint,5,opt,name=offset,proto3" json:"offset,omitempty"`
	Marker        string `protobuf:"bytes,6,opt,name=marker,proto3" json:"marker,omitempty"`
	WithCount     bool   `protobuf:"varint,7,opt,name=with_count,json=withCount,proto3" json:"with_count,omitempty"`
	CreatedAt     string `protobuf:"bytes,8,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	ConsumesQuota bool   `protobuf:"varint,9,opt,name=consumes_quota,json=consumesQuota,proto3" json:"consumes_quota,omitempty"`
	UpdatedAt     string `protobuf:"bytes,10,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Platform      string `protobuf:"bytes,11,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListVolumesReq) Reset() {
	*x = ListVolumesReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[181]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListVolumesReq) ProtoMessage() {}

func (x *ListVolumesReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[181]
	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 ListVolumesReq.ProtoReflect.Descriptor instead.
func (*ListVolumesReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{181}
}

func (x *ListVolumesReq) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListVolumesReq) GetAllTenants() string {
	if x != nil {
		return x.AllTenants
	}
	return ""
}

func (x *ListVolumesReq) GetSort() string {
	if x != nil {
		return x.Sort
	}
	return ""
}

func (x *ListVolumesReq) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListVolumesReq) GetOffset() int32 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListVolumesReq) GetMarker() string {
	if x != nil {
		return x.Marker
	}
	return ""
}

func (x *ListVolumesReq) GetWithCount() bool {
	if x != nil {
		return x.WithCount
	}
	return false
}

func (x *ListVolumesReq) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *ListVolumesReq) GetConsumesQuota() bool {
	if x != nil {
		return x.ConsumesQuota
	}
	return false
}

func (x *ListVolumesReq) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *ListVolumesReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Volumes  []*ListVolumesResp_Volumes `protobuf:"bytes,1,rep,name=volumes,proto3" json:"volumes,omitempty"`
	Code     int32                      `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                     `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                     `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListVolumesResp) Reset() {
	*x = ListVolumesResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[182]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListVolumesResp) ProtoMessage() {}

func (x *ListVolumesResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[182]
	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 ListVolumesResp.ProtoReflect.Descriptor instead.
func (*ListVolumesResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{182}
}

func (x *ListVolumesResp) GetVolumes() []*ListVolumesResp_Volumes {
	if x != nil {
		return x.Volumes
	}
	return nil
}

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

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

func (x *ListVolumesResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	AllTenants    string `protobuf:"bytes,2,opt,name=all_tenants,json=allTenants,proto3" json:"all_tenants,omitempty"`
	Sort          string `protobuf:"bytes,3,opt,name=sort,proto3" json:"sort,omitempty"`
	Limit         int32  `protobuf:"varint,4,opt,name=limit,proto3" json:"limit,omitempty"`
	Offset        int32  `protobuf:"varint,5,opt,name=offset,proto3" json:"offset,omitempty"`
	Marker        string `protobuf:"bytes,6,opt,name=marker,proto3" json:"marker,omitempty"`
	WithCount     bool   `protobuf:"varint,7,opt,name=with_count,json=withCount,proto3" json:"with_count,omitempty"`
	CreatedAt     string `protobuf:"bytes,8,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	ConsumesQuota bool   `protobuf:"varint,9,opt,name=consumes_quota,json=consumesQuota,proto3" json:"consumes_quota,omitempty"`
	UpdatedAt     string `protobuf:"bytes,10,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Platform      string `protobuf:"bytes,11,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListVolumesDetailReq) Reset() {
	*x = ListVolumesDetailReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[183]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListVolumesDetailReq) ProtoMessage() {}

func (x *ListVolumesDetailReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[183]
	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 ListVolumesDetailReq.ProtoReflect.Descriptor instead.
func (*ListVolumesDetailReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{183}
}

func (x *ListVolumesDetailReq) GetAllTenants() string {
	if x != nil {
		return x.AllTenants
	}
	return ""
}

func (x *ListVolumesDetailReq) GetSort() string {
	if x != nil {
		return x.Sort
	}
	return ""
}

func (x *ListVolumesDetailReq) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListVolumesDetailReq) GetOffset() int32 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListVolumesDetailReq) GetMarker() string {
	if x != nil {
		return x.Marker
	}
	return ""
}

func (x *ListVolumesDetailReq) GetWithCount() bool {
	if x != nil {
		return x.WithCount
	}
	return false
}

func (x *ListVolumesDetailReq) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *ListVolumesDetailReq) GetConsumesQuota() bool {
	if x != nil {
		return x.ConsumesQuota
	}
	return false
}

func (x *ListVolumesDetailReq) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *ListVolumesDetailReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Volumes  []*ListVolumesDetailResp_VolumeDetail `protobuf:"bytes,1,rep,name=volumes,proto3" json:"volumes,omitempty"`
	Code     int32                                 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                                `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                                `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *ListVolumesDetailResp) Reset() {
	*x = ListVolumesDetailResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[184]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListVolumesDetailResp) ProtoMessage() {}

func (x *ListVolumesDetailResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[184]
	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 ListVolumesDetailResp.ProtoReflect.Descriptor instead.
func (*ListVolumesDetailResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{184}
}

func (x *ListVolumesDetailResp) GetVolumes() []*ListVolumesDetailResp_VolumeDetail {
	if x != nil {
		return x.Volumes
	}
	return nil
}

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

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

func (x *ListVolumesDetailResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ProjectId string                  `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` // @gotags: copier:"ProjectId"
	Volume    *CreateVolumeReq_Volume `protobuf:"bytes,2,opt,name=volume,proto3" json:"volume,omitempty"`
	Platform  string                  `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateVolumeReq) Reset() {
	*x = CreateVolumeReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[185]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateVolumeReq) ProtoMessage() {}

func (x *CreateVolumeReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[185]
	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 CreateVolumeReq.ProtoReflect.Descriptor instead.
func (*CreateVolumeReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{185}
}

func (x *CreateVolumeReq) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateVolumeReq) GetVolume() *CreateVolumeReq_Volume {
	if x != nil {
		return x.Volume
	}
	return nil
}

func (x *CreateVolumeReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Volume   *CreateVolumeResp_Volume `protobuf:"bytes,1,opt,name=volume,proto3" json:"volume,omitempty"`                     // @gotags: copier:"Volume"
	Code     int32                    `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                   `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                   `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *CreateVolumeResp) Reset() {
	*x = CreateVolumeResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[186]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateVolumeResp) ProtoMessage() {}

func (x *CreateVolumeResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[186]
	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 CreateVolumeResp.ProtoReflect.Descriptor instead.
func (*CreateVolumeResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{186}
}

func (x *CreateVolumeResp) GetVolume() *CreateVolumeResp_Volume {
	if x != nil {
		return x.Volume
	}
	return nil
}

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

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

func (x *CreateVolumeResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	// string project_id =1;
	VolumeId string `protobuf:"bytes,2,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	Cascade  bool   `protobuf:"varint,3,opt,name=cascade,proto3" json:"cascade,omitempty"`
	Force    bool   `protobuf:"varint,4,opt,name=force,proto3" json:"force,omitempty"`
	Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteVolumeReq) Reset() {
	*x = DeleteVolumeReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[187]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteVolumeReq) ProtoMessage() {}

func (x *DeleteVolumeReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[187]
	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 DeleteVolumeReq.ProtoReflect.Descriptor instead.
func (*DeleteVolumeReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{187}
}

func (x *DeleteVolumeReq) GetVolumeId() string {
	if x != nil {
		return x.VolumeId
	}
	return ""
}

func (x *DeleteVolumeReq) GetCascade() bool {
	if x != nil {
		return x.Cascade
	}
	return false
}

func (x *DeleteVolumeReq) GetForce() bool {
	if x != nil {
		return x.Force
	}
	return false
}

func (x *DeleteVolumeReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteVolumeResp) Reset() {
	*x = DeleteVolumeResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[188]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteVolumeResp) ProtoMessage() {}

func (x *DeleteVolumeResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[188]
	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 DeleteVolumeResp.ProtoReflect.Descriptor instead.
func (*DeleteVolumeResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{188}
}

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

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

func (x *DeleteVolumeResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	VolumeId string                  `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	Volume   *UpdateVolumeReq_Volume `protobuf:"bytes,3,opt,name=volume,proto3" json:"volume,omitempty"`
	Platform string                  `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *UpdateVolumeReq) Reset() {
	*x = UpdateVolumeReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[189]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateVolumeReq) ProtoMessage() {}

func (x *UpdateVolumeReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[189]
	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 UpdateVolumeReq.ProtoReflect.Descriptor instead.
func (*UpdateVolumeReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{189}
}

func (x *UpdateVolumeReq) GetVolumeId() string {
	if x != nil {
		return x.VolumeId
	}
	return ""
}

func (x *UpdateVolumeReq) GetVolume() *UpdateVolumeReq_Volume {
	if x != nil {
		return x.Volume
	}
	return nil
}

func (x *UpdateVolumeReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Volume   *UpdateVolumeResp_Volume `protobuf:"bytes,1,opt,name=volume,proto3" json:"volume,omitempty"`
	Code     int32                    `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                   `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                   `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *UpdateVolumeResp) Reset() {
	*x = UpdateVolumeResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[190]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateVolumeResp) ProtoMessage() {}

func (x *UpdateVolumeResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[190]
	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 UpdateVolumeResp.ProtoReflect.Descriptor instead.
func (*UpdateVolumeResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{190}
}

func (x *UpdateVolumeResp) GetVolume() *UpdateVolumeResp_Volume {
	if x != nil {
		return x.Volume
	}
	return nil
}

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

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

func (x *UpdateVolumeResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *GetVolumeDetailedByIdReq) Reset() {
	*x = GetVolumeDetailedByIdReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[191]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetVolumeDetailedByIdReq) ProtoMessage() {}

func (x *GetVolumeDetailedByIdReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[191]
	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 GetVolumeDetailedByIdReq.ProtoReflect.Descriptor instead.
func (*GetVolumeDetailedByIdReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{191}
}

func (x *GetVolumeDetailedByIdReq) GetVolumeId() string {
	if x != nil {
		return x.VolumeId
	}
	return ""
}

func (x *GetVolumeDetailedByIdReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Volume   *GetVolumeDetailedByIdResp_Volume `protobuf:"bytes,1,opt,name=volume,proto3" json:"volume,omitempty"`
	VolumeId string                            `protobuf:"bytes,2,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	Code     int32                             `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string                            `protobuf:"bytes,4,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string                            `protobuf:"bytes,5,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *GetVolumeDetailedByIdResp) Reset() {
	*x = GetVolumeDetailedByIdResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[192]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetVolumeDetailedByIdResp) ProtoMessage() {}

func (x *GetVolumeDetailedByIdResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[192]
	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 GetVolumeDetailedByIdResp.ProtoReflect.Descriptor instead.
func (*GetVolumeDetailedByIdResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{192}
}

func (x *GetVolumeDetailedByIdResp) GetVolume() *GetVolumeDetailedByIdResp_Volume {
	if x != nil {
		return x.Volume
	}
	return nil
}

func (x *GetVolumeDetailedByIdResp) GetVolumeId() string {
	if x != nil {
		return x.VolumeId
	}
	return ""
}

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

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

func (x *GetVolumeDetailedByIdResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Sort      string `protobuf:"bytes,2,opt,name=sort,proto3" json:"sort,omitempty"`
	IsPublic  bool   `protobuf:"varint,3,opt,name=is_public,json=isPublic,proto3" json:"is_public,omitempty"`
	Limit     int32  `protobuf:"varint,4,opt,name=limit,proto3" json:"limit,omitempty"`
	Offset    int32  `protobuf:"varint,5,opt,name=offset,proto3" json:"offset,omitempty"`
	Marker    string `protobuf:"bytes,6,opt,name=marker,proto3" json:"marker,omitempty"`
	Platform  string `protobuf:"bytes,7,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *ListVolumeTypesReq) Reset() {
	*x = ListVolumeTypesReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[193]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListVolumeTypesReq) ProtoMessage() {}

func (x *ListVolumeTypesReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[193]
	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 ListVolumeTypesReq.ProtoReflect.Descriptor instead.
func (*ListVolumeTypesReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{193}
}

func (x *ListVolumeTypesReq) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListVolumeTypesReq) GetSort() string {
	if x != nil {
		return x.Sort
	}
	return ""
}

func (x *ListVolumeTypesReq) GetIsPublic() bool {
	if x != nil {
		return x.IsPublic
	}
	return false
}

func (x *ListVolumeTypesReq) GetLimit() int32 {
	if x != nil {
		return x.Limit
	}
	return 0
}

func (x *ListVolumeTypesReq) GetOffset() int32 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListVolumeTypesReq) GetMarker() string {
	if x != nil {
		return x.Marker
	}
	return ""
}

func (x *ListVolumeTypesReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	VolumeTypes []*ListVolumeTypesResp_VolumeTypes `protobuf:"bytes,1,rep,name=volume_types,json=volumeTypes,proto3" json:"volume_types,omitempty"` // @gotags: copier:"VolumeTypes"
	Code        int32                              `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                                 // @gotags: copier:"Code"
	Msg         string                             `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                                    // @gotags: copier:"Msg"
	ErrorMsg    string                             `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`          // @gotags: copier:"ErrorMsg"
}

func (x *ListVolumeTypesResp) Reset() {
	*x = ListVolumeTypesResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[194]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListVolumeTypesResp) ProtoMessage() {}

func (x *ListVolumeTypesResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[194]
	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 ListVolumeTypesResp.ProtoReflect.Descriptor instead.
func (*ListVolumeTypesResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{194}
}

func (x *ListVolumeTypesResp) GetVolumeTypes() []*ListVolumeTypesResp_VolumeTypes {
	if x != nil {
		return x.VolumeTypes
	}
	return nil
}

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

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

func (x *ListVolumeTypesResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	// string project_id=1;
	VolumeType *CreateVolumeTypeReq_VolumeType `protobuf:"bytes,2,opt,name=volume_type,json=volumeType,proto3" json:"volume_type,omitempty"`
	Platform   string                          `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *CreateVolumeTypeReq) Reset() {
	*x = CreateVolumeTypeReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[195]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateVolumeTypeReq) ProtoMessage() {}

func (x *CreateVolumeTypeReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[195]
	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 CreateVolumeTypeReq.ProtoReflect.Descriptor instead.
func (*CreateVolumeTypeReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{195}
}

func (x *CreateVolumeTypeReq) GetVolumeType() *CreateVolumeTypeReq_VolumeType {
	if x != nil {
		return x.VolumeType
	}
	return nil
}

func (x *CreateVolumeTypeReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	VolumeType *CreateVolumeTypeResp_VolumeType `protobuf:"bytes,1,opt,name=volume_type,json=volumeType,proto3" json:"volume_type,omitempty"` // @gotags: copier:"VolumeTypes"
	Code       int32                            `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"`                              // @gotags: copier:"Code"
	Msg        string                           `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg,omitempty"`                                 // @gotags: copier:"Msg"
	ErrorMsg   string                           `protobuf:"bytes,4,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`       // @gotags: copier:"ErrorMsg"
}

func (x *CreateVolumeTypeResp) Reset() {
	*x = CreateVolumeTypeResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[196]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateVolumeTypeResp) ProtoMessage() {}

func (x *CreateVolumeTypeResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[196]
	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 CreateVolumeTypeResp.ProtoReflect.Descriptor instead.
func (*CreateVolumeTypeResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{196}
}

func (x *CreateVolumeTypeResp) GetVolumeType() *CreateVolumeTypeResp_VolumeType {
	if x != nil {
		return x.VolumeType
	}
	return nil
}

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

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

func (x *CreateVolumeTypeResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

	VolumeTypeId string `protobuf:"bytes,1,opt,name=volume_type_id,json=volumeTypeId,proto3" json:"volume_type_id,omitempty"`
	Platform     string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
}

func (x *DeleteVolumeTypeReq) Reset() {
	*x = DeleteVolumeTypeReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[197]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteVolumeTypeReq) ProtoMessage() {}

func (x *DeleteVolumeTypeReq) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[197]
	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 DeleteVolumeTypeReq.ProtoReflect.Descriptor instead.
func (*DeleteVolumeTypeReq) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{197}
}

func (x *DeleteVolumeTypeReq) GetVolumeTypeId() string {
	if x != nil {
		return x.VolumeTypeId
	}
	return ""
}

func (x *DeleteVolumeTypeReq) GetPlatform() string {
	if x != nil {
		return x.Platform
	}
	return ""
}

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

	Code     int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`                        // @gotags: copier:"Code"
	Msg      string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`                           // @gotags: copier:"Msg"
	ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // @gotags: copier:"ErrorMsg"
}

func (x *DeleteVolumeTypeResp) Reset() {
	*x = DeleteVolumeTypeResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[198]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeleteVolumeTypeResp) ProtoMessage() {}

func (x *DeleteVolumeTypeResp) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[198]
	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 DeleteVolumeTypeResp.ProtoReflect.Descriptor instead.
func (*DeleteVolumeTypeResp) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{198}
}

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

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

func (x *DeleteVolumeTypeResp) GetErrorMsg() string {
	if x != nil {
		return x.ErrorMsg
	}
	return ""
}

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

func (x *GetComputeLimitsResp_Rate) Reset() {
	*x = GetComputeLimitsResp_Rate{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[199]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetComputeLimitsResp_Rate) ProtoMessage() {}

func (x *GetComputeLimitsResp_Rate) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[199]
	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 GetComputeLimitsResp_Rate.ProtoReflect.Descriptor instead.
func (*GetComputeLimitsResp_Rate) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{1, 0}
}

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

	MaxServerMeta           int64 `protobuf:"varint,1,opt,name=maxServerMeta,proto3" json:"maxServerMeta,omitempty"`
	MaxPersonality          int64 `protobuf:"varint,2,opt,name=maxPersonality,proto3" json:"maxPersonality,omitempty"`
	TotalServerGroupsUsed   int64 `protobuf:"varint,3,opt,name=totalServerGroupsUsed,proto3" json:"totalServerGroupsUsed,omitempty"`
	MaxImageMeta            int64 `protobuf:"varint,4,opt,name=maxImageMeta,proto3" json:"maxImageMeta,omitempty"`
	MaxPersonalitySize      int64 `protobuf:"varint,5,opt,name=maxPersonalitySize,proto3" json:"maxPersonalitySize,omitempty"`
	MaxTotalKeypairs        int64 `protobuf:"varint,6,opt,name=maxTotalKeypairs,proto3" json:"maxTotalKeypairs,omitempty"`
	MaxSecurityGroupRules   int64 `protobuf:"varint,7,opt,name=maxSecurityGroupRules,proto3" json:"maxSecurityGroupRules,omitempty"`
	MaxServerGroups         int64 `protobuf:"varint,8,opt,name=maxServerGroups,proto3" json:"maxServerGroups,omitempty"`
	TotalCoresUsed          int64 `protobuf:"varint,9,opt,name=totalCoresUsed,proto3" json:"totalCoresUsed,omitempty"`
	TotalRAMUsed            int64 `protobuf:"varint,10,opt,name=totalRAMUsed,proto3" json:"totalRAMUsed,omitempty"`
	TotalInstancesUsed      int64 `protobuf:"varint,11,opt,name=totalInstancesUsed,proto3" json:"totalInstancesUsed,omitempty"`
	MaxSecurityGroups       int64 `protobuf:"varint,12,opt,name=maxSecurityGroups,proto3" json:"maxSecurityGroups,omitempty"`
	TotalFloatingIpsUsed    int64 `protobuf:"varint,13,opt,name=totalFloatingIpsUsed,proto3" json:"totalFloatingIpsUsed,omitempty"`
	MaxTotalCores           int64 `protobuf:"varint,14,opt,name=maxTotalCores,proto3" json:"maxTotalCores,omitempty"`
	MaxServerGroupMembers   int64 `protobuf:"varint,15,opt,name=maxServerGroupMembers,proto3" json:"maxServerGroupMembers,omitempty"`
	MaxTotalFloatingIps     int64 `protobuf:"varint,16,opt,name=maxTotalFloatingIps,proto3" json:"maxTotalFloatingIps,omitempty"`
	TotalSecurityGroupsUsed int64 `protobuf:"varint,17,opt,name=totalSecurityGroupsUsed,proto3" json:"totalSecurityGroupsUsed,omitempty"`
	MaxTotalInstances       int64 `protobuf:"varint,18,opt,name=maxTotalInstances,proto3" json:"maxTotalInstances,omitempty"`
	MaxTotalRAMSize         int64 `protobuf:"varint,19,opt,name=maxTotalRAMSize,proto3" json:"maxTotalRAMSize,omitempty"`
}

func (x *GetComputeLimitsResp_Absolute) Reset() {
	*x = GetComputeLimitsResp_Absolute{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[200]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetComputeLimitsResp_Absolute) ProtoMessage() {}

func (x *GetComputeLimitsResp_Absolute) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[200]
	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 GetComputeLimitsResp_Absolute.ProtoReflect.Descriptor instead.
func (*GetComputeLimitsResp_Absolute) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{1, 1}
}

func (x *GetComputeLimitsResp_Absolute) GetMaxServerMeta() int64 {
	if x != nil {
		return x.MaxServerMeta
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxPersonality() int64 {
	if x != nil {
		return x.MaxPersonality
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetTotalServerGroupsUsed() int64 {
	if x != nil {
		return x.TotalServerGroupsUsed
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxImageMeta() int64 {
	if x != nil {
		return x.MaxImageMeta
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxPersonalitySize() int64 {
	if x != nil {
		return x.MaxPersonalitySize
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxTotalKeypairs() int64 {
	if x != nil {
		return x.MaxTotalKeypairs
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxSecurityGroupRules() int64 {
	if x != nil {
		return x.MaxSecurityGroupRules
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxServerGroups() int64 {
	if x != nil {
		return x.MaxServerGroups
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetTotalCoresUsed() int64 {
	if x != nil {
		return x.TotalCoresUsed
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetTotalRAMUsed() int64 {
	if x != nil {
		return x.TotalRAMUsed
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetTotalInstancesUsed() int64 {
	if x != nil {
		return x.TotalInstancesUsed
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxSecurityGroups() int64 {
	if x != nil {
		return x.MaxSecurityGroups
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetTotalFloatingIpsUsed() int64 {
	if x != nil {
		return x.TotalFloatingIpsUsed
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxTotalCores() int64 {
	if x != nil {
		return x.MaxTotalCores
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxServerGroupMembers() int64 {
	if x != nil {
		return x.MaxServerGroupMembers
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxTotalFloatingIps() int64 {
	if x != nil {
		return x.MaxTotalFloatingIps
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetTotalSecurityGroupsUsed() int64 {
	if x != nil {
		return x.TotalSecurityGroupsUsed
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxTotalInstances() int64 {
	if x != nil {
		return x.MaxTotalInstances
	}
	return 0
}

func (x *GetComputeLimitsResp_Absolute) GetMaxTotalRAMSize() int64 {
	if x != nil {
		return x.MaxTotalRAMSize
	}
	return 0
}

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

	Rate     []*GetComputeLimitsResp_Rate   `protobuf:"bytes,1,rep,name=rate,proto3" json:"rate,omitempty"`
	Absolute *GetComputeLimitsResp_Absolute `protobuf:"bytes,2,opt,name=absolute,proto3" json:"absolute,omitempty"`
}

func (x *GetComputeLimitsResp_Limits) Reset() {
	*x = GetComputeLimitsResp_Limits{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[201]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetComputeLimitsResp_Limits) ProtoMessage() {}

func (x *GetComputeLimitsResp_Limits) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[201]
	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 GetComputeLimitsResp_Limits.ProtoReflect.Descriptor instead.
func (*GetComputeLimitsResp_Limits) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{1, 2}
}

func (x *GetComputeLimitsResp_Limits) GetRate() []*GetComputeLimitsResp_Rate {
	if x != nil {
		return x.Rate
	}
	return nil
}

func (x *GetComputeLimitsResp_Limits) GetAbsolute() *GetComputeLimitsResp_Absolute {
	if x != nil {
		return x.Absolute
	}
	return nil
}

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

func (x *GetVolumeLimitsResp_Rate) Reset() {
	*x = GetVolumeLimitsResp_Rate{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[202]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetVolumeLimitsResp_Rate) ProtoMessage() {}

func (x *GetVolumeLimitsResp_Rate) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[202]
	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 GetVolumeLimitsResp_Rate.ProtoReflect.Descriptor instead.
func (*GetVolumeLimitsResp_Rate) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{3, 0}
}

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

	TotalSnapshotsUsed       int32 `protobuf:"varint,1,opt,name=totalSnapshotsUsed,proto3" json:"totalSnapshotsUsed,omitempty"`
	MaxTotalBackups          int32 `protobuf:"varint,2,opt,name=maxTotalBackups,proto3" json:"maxTotalBackups,omitempty"`
	MaxTotalVolumeGigabytes  int32 `protobuf:"varint,3,opt,name=maxTotalVolumeGigabytes,proto3" json:"maxTotalVolumeGigabytes,omitempty"`
	MaxTotalSnapshots        int32 `protobuf:"varint,4,opt,name=maxTotalSnapshots,proto3" json:"maxTotalSnapshots,omitempty"`
	MaxTotalBackupGigabytes  int32 `protobuf:"varint,5,opt,name=maxTotalBackupGigabytes,proto3" json:"maxTotalBackupGigabytes,omitempty"`
	TotalBackupGigabytesUsed int32 `protobuf:"varint,6,opt,name=totalBackupGigabytesUsed,proto3" json:"totalBackupGigabytesUsed,omitempty"`
	MaxTotalVolumes          int32 `protobuf:"varint,7,opt,name=maxTotalVolumes,proto3" json:"maxTotalVolumes,omitempty"`
	TotalVolumesUsed         int32 `protobuf:"varint,8,opt,name=totalVolumesUsed,proto3" json:"totalVolumesUsed,omitempty"`
	TotalBackupsUsed         int32 `protobuf:"varint,9,opt,name=totalBackupsUsed,proto3" json:"totalBackupsUsed,omitempty"`
	TotalGigabytesUsed       int32 `protobuf:"varint,10,opt,name=totalGigabytesUsed,proto3" json:"totalGigabytesUsed,omitempty"`
}

func (x *GetVolumeLimitsResp_Absolute) Reset() {
	*x = GetVolumeLimitsResp_Absolute{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[203]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetVolumeLimitsResp_Absolute) ProtoMessage() {}

func (x *GetVolumeLimitsResp_Absolute) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[203]
	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 GetVolumeLimitsResp_Absolute.ProtoReflect.Descriptor instead.
func (*GetVolumeLimitsResp_Absolute) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{3, 1}
}

func (x *GetVolumeLimitsResp_Absolute) GetTotalSnapshotsUsed() int32 {
	if x != nil {
		return x.TotalSnapshotsUsed
	}
	return 0
}

func (x *GetVolumeLimitsResp_Absolute) GetMaxTotalBackups() int32 {
	if x != nil {
		return x.MaxTotalBackups
	}
	return 0
}

func (x *GetVolumeLimitsResp_Absolute) GetMaxTotalVolumeGigabytes() int32 {
	if x != nil {
		return x.MaxTotalVolumeGigabytes
	}
	return 0
}

func (x *GetVolumeLimitsResp_Absolute) GetMaxTotalSnapshots() int32 {
	if x != nil {
		return x.MaxTotalSnapshots
	}
	return 0
}

func (x *GetVolumeLimitsResp_Absolute) GetMaxTotalBackupGigabytes() int32 {
	if x != nil {
		return x.MaxTotalBackupGigabytes
	}
	return 0
}

func (x *GetVolumeLimitsResp_Absolute) GetTotalBackupGigabytesUsed() int32 {
	if x != nil {
		return x.TotalBackupGigabytesUsed
	}
	return 0
}

func (x *GetVolumeLimitsResp_Absolute) GetMaxTotalVolumes() int32 {
	if x != nil {
		return x.MaxTotalVolumes
	}
	return 0
}

func (x *GetVolumeLimitsResp_Absolute) GetTotalVolumesUsed() int32 {
	if x != nil {
		return x.TotalVolumesUsed
	}
	return 0
}

func (x *GetVolumeLimitsResp_Absolute) GetTotalBackupsUsed() int32 {
	if x != nil {
		return x.TotalBackupsUsed
	}
	return 0
}

func (x *GetVolumeLimitsResp_Absolute) GetTotalGigabytesUsed() int32 {
	if x != nil {
		return x.TotalGigabytesUsed
	}
	return 0
}

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

	Rate     []*GetVolumeLimitsResp_Rate   `protobuf:"bytes,1,rep,name=rate,proto3" json:"rate,omitempty"`
	Absolute *GetVolumeLimitsResp_Absolute `protobuf:"bytes,2,opt,name=absolute,proto3" json:"absolute,omitempty"`
}

func (x *GetVolumeLimitsResp_Limits) Reset() {
	*x = GetVolumeLimitsResp_Limits{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[204]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetVolumeLimitsResp_Limits) ProtoMessage() {}

func (x *GetVolumeLimitsResp_Limits) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[204]
	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 GetVolumeLimitsResp_Limits.ProtoReflect.Descriptor instead.
func (*GetVolumeLimitsResp_Limits) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{3, 2}
}

func (x *GetVolumeLimitsResp_Limits) GetRate() []*GetVolumeLimitsResp_Rate {
	if x != nil {
		return x.Rate
	}
	return nil
}

func (x *GetVolumeLimitsResp_Limits) GetAbsolute() *GetVolumeLimitsResp_Absolute {
	if x != nil {
		return x.Absolute
	}
	return nil
}

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

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *ListServersResp_Links) Reset() {
	*x = ListServersResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[205]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListServersResp_Links) ProtoMessage() {}

func (x *ListServersResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[205]
	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 ListServersResp_Links.ProtoReflect.Descriptor instead.
func (*ListServersResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{5, 0}
}

func (x *ListServersResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *ListServersResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

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

	Id    string                   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`       //The UUID of the server
	Links []*ListServersResp_Links `protobuf:"bytes,2,rep,name=links,proto3" json:"links,omitempty"` //有关资源的链接。
	Name  string                   `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`   //The server name
}

func (x *ListServersResp_Servers) Reset() {
	*x = ListServersResp_Servers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[206]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListServersResp_Servers) ProtoMessage() {}

func (x *ListServersResp_Servers) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[206]
	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 ListServersResp_Servers.ProtoReflect.Descriptor instead.
func (*ListServersResp_Servers) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{5, 1}
}

func (x *ListServersResp_Servers) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListServersResp_Servers) GetLinks() []*ListServersResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *ListServersResp_Servers) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

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

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *ListServersResp_ServersLinks) Reset() {
	*x = ListServersResp_ServersLinks{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[207]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListServersResp_ServersLinks) ProtoMessage() {}

func (x *ListServersResp_ServersLinks) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[207]
	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 ListServersResp_ServersLinks.ProtoReflect.Descriptor instead.
func (*ListServersResp_ServersLinks) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{5, 2}
}

func (x *ListServersResp_ServersLinks) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *ListServersResp_ServersLinks) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

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

	OSTaskState                   string `protobuf:"bytes,1,opt,name=OSTaskState,proto3" json:"OSTaskState,omitempty"`
	Status                        string `protobuf:"bytes,2,opt,name=Status,proto3" json:"Status,omitempty"`
	VmState                       string `protobuf:"bytes,3,opt,name=VmState,proto3" json:"VmState,omitempty"`
	OS_EXT_SRV_ATTR_Instance_Name string `protobuf:"bytes,4,opt,name=OS_EXT_SRV_ATTR_Instance_Name,json=OSEXTSRVATTRInstanceName,proto3" json:"OS_EXT_SRV_ATTR_Instance_Name,omitempty"`
	Created                       string `protobuf:"bytes,5,opt,name=Created,proto3" json:"Created,omitempty"`
	HostId                        string `protobuf:"bytes,6,opt,name=HostId,proto3" json:"HostId,omitempty"`
	Ip                            string `protobuf:"bytes,7,opt,name=Ip,proto3" json:"Ip,omitempty"`
	Image                         string `protobuf:"bytes,8,opt,name=Image,proto3" json:"Image,omitempty"`
	Updated                       string `protobuf:"bytes,9,opt,name=Updated,proto3" json:"Updated,omitempty"`
	Flavor                        string `protobuf:"bytes,10,opt,name=Flavor,proto3" json:"Flavor,omitempty"`
	Id                            string `protobuf:"bytes,11,opt,name=Id,proto3" json:"Id,omitempty"`
	Name                          string `protobuf:"bytes,12,opt,name=Name,proto3" json:"Name,omitempty"`
	KeyName                       string `protobuf:"bytes,13,opt,name=Key_name,json=KeyName,proto3" json:"Key_name,omitempty"`
	SurvivalTime                  int32  `protobuf:"varint,14,opt,name=Survival_time,json=SurvivalTime,proto3" json:"Survival_time,omitempty"`
}

func (x *ListServersDetailedResp_ServersDetailed) Reset() {
	*x = ListServersDetailedResp_ServersDetailed{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[208]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListServersDetailedResp_ServersDetailed) ProtoMessage() {}

func (x *ListServersDetailedResp_ServersDetailed) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[208]
	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 ListServersDetailedResp_ServersDetailed.ProtoReflect.Descriptor instead.
func (*ListServersDetailedResp_ServersDetailed) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{7, 0}
}

func (x *ListServersDetailedResp_ServersDetailed) GetOSTaskState() string {
	if x != nil {
		return x.OSTaskState
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetVmState() string {
	if x != nil {
		return x.VmState
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetOS_EXT_SRV_ATTR_Instance_Name() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTR_Instance_Name
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetCreated() string {
	if x != nil {
		return x.Created
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetHostId() string {
	if x != nil {
		return x.HostId
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetIp() string {
	if x != nil {
		return x.Ip
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetImage() string {
	if x != nil {
		return x.Image
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetUpdated() string {
	if x != nil {
		return x.Updated
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetFlavor() string {
	if x != nil {
		return x.Flavor
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetKeyName() string {
	if x != nil {
		return x.KeyName
	}
	return ""
}

func (x *ListServersDetailedResp_ServersDetailed) GetSurvivalTime() int32 {
	if x != nil {
		return x.SurvivalTime
	}
	return 0
}

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

	Server *CreateServerReq_Server `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"` // @gotags: copier:"Server"
}

func (x *CreateServerReq_CrServer) Reset() {
	*x = CreateServerReq_CrServer{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[209]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateServerReq_CrServer) ProtoMessage() {}

func (x *CreateServerReq_CrServer) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[209]
	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 CreateServerReq_CrServer.ProtoReflect.Descriptor instead.
func (*CreateServerReq_CrServer) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{8, 0}
}

func (x *CreateServerReq_CrServer) GetServer() *CreateServerReq_Server {
	if x != nil {
		return x.Server
	}
	return nil
}

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

	Uuid    string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"` // @gotags: copier:"Uuid"
	Port    string `protobuf:"bytes,2,opt,name=port,proto3" json:"port,omitempty"`
	FixedIp string `protobuf:"bytes,3,opt,name=fixed_ip,json=fixedIp,proto3" json:"fixed_ip,omitempty"`
	Tag     string `protobuf:"bytes,4,opt,name=tag,proto3" json:"tag,omitempty"`
}

func (x *CreateServerReq_Networks) Reset() {
	*x = CreateServerReq_Networks{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[210]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateServerReq_Networks) ProtoMessage() {}

func (x *CreateServerReq_Networks) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[210]
	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 CreateServerReq_Networks.ProtoReflect.Descriptor instead.
func (*CreateServerReq_Networks) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{8, 1}
}

func (x *CreateServerReq_Networks) GetUuid() string {
	if x != nil {
		return x.Uuid
	}
	return ""
}

func (x *CreateServerReq_Networks) GetPort() string {
	if x != nil {
		return x.Port
	}
	return ""
}

func (x *CreateServerReq_Networks) GetFixedIp() string {
	if x != nil {
		return x.FixedIp
	}
	return ""
}

func (x *CreateServerReq_Networks) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

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

	BootIndex           string `protobuf:"bytes,1,opt,name=boot_index,json=bootIndex,proto3" json:"boot_index,omitempty"`                                  // @gotags: copier:"BootIndex"
	DeleteOnTermination bool   `protobuf:"varint,2,opt,name=delete_on_termination,json=deleteOnTermination,proto3" json:"delete_on_termination,omitempty"` // @gotags: copier:"DeleteOnTermination"
	DestinationType     string `protobuf:"bytes,3,opt,name=destination_type,json=destinationType,proto3" json:"destination_type,omitempty"`
	DeviceName          string `protobuf:"bytes,4,opt,name=device_name,json=deviceName,proto3" json:"device_name,omitempty"`
	DeviceType          string `protobuf:"bytes,5,opt,name=device_type,json=deviceType,proto3" json:"device_type,omitempty"`
	DiskBus             string `protobuf:"bytes,6,opt,name=disk_bus,json=diskBus,proto3" json:"disk_bus,omitempty"`
	GuestFormat         string `protobuf:"bytes,7,opt,name=guest_format,json=guestFormat,proto3" json:"guest_format,omitempty"`
	NoDevice            bool   `protobuf:"varint,8,opt,name=no_device,json=noDevice,proto3" json:"no_device,omitempty"`
	SourceType          string `protobuf:"bytes,9,opt,name=source_type,json=sourceType,proto3" json:"source_type,omitempty"` // @gotags: copier:"SourceType"
	Uuid                string `protobuf:"bytes,10,opt,name=uuid,proto3" json:"uuid,omitempty"`                              // @gotags: copier:"Uuid"
	VolumeSize          string `protobuf:"bytes,11,opt,name=volume_size,json=volumeSize,proto3" json:"volume_size,omitempty"`
	Tag                 string `protobuf:"bytes,12,opt,name=tag,proto3" json:"tag,omitempty"`
	VolumeType          string `protobuf:"bytes,13,opt,name=volume_type,json=volumeType,proto3" json:"volume_type,omitempty"` // @gotags: copier:"VolumeType"
}

func (x *CreateServerReq_BlockDeviceMappingV2) Reset() {
	*x = CreateServerReq_BlockDeviceMappingV2{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[211]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateServerReq_BlockDeviceMappingV2) ProtoMessage() {}

func (x *CreateServerReq_BlockDeviceMappingV2) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[211]
	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 CreateServerReq_BlockDeviceMappingV2.ProtoReflect.Descriptor instead.
func (*CreateServerReq_BlockDeviceMappingV2) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{8, 2}
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetBootIndex() string {
	if x != nil {
		return x.BootIndex
	}
	return ""
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetDeleteOnTermination() bool {
	if x != nil {
		return x.DeleteOnTermination
	}
	return false
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetDestinationType() string {
	if x != nil {
		return x.DestinationType
	}
	return ""
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetDeviceName() string {
	if x != nil {
		return x.DeviceName
	}
	return ""
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetDeviceType() string {
	if x != nil {
		return x.DeviceType
	}
	return ""
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetDiskBus() string {
	if x != nil {
		return x.DiskBus
	}
	return ""
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetGuestFormat() string {
	if x != nil {
		return x.GuestFormat
	}
	return ""
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetNoDevice() bool {
	if x != nil {
		return x.NoDevice
	}
	return false
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetSourceType() string {
	if x != nil {
		return x.SourceType
	}
	return ""
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetUuid() string {
	if x != nil {
		return x.Uuid
	}
	return ""
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetVolumeSize() string {
	if x != nil {
		return x.VolumeSize
	}
	return ""
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

func (x *CreateServerReq_BlockDeviceMappingV2) GetVolumeType() string {
	if x != nil {
		return x.VolumeType
	}
	return ""
}

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

	My_Server_Name string `protobuf:"bytes,1,opt,name=My_Server_Name,json=My Server Name,proto3" json:"My_Server_Name,omitempty"`
}

func (x *CreateServerReq_Metadata) Reset() {
	*x = CreateServerReq_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[212]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateServerReq_Metadata) ProtoMessage() {}

func (x *CreateServerReq_Metadata) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[212]
	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 CreateServerReq_Metadata.ProtoReflect.Descriptor instead.
func (*CreateServerReq_Metadata) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{8, 3}
}

func (x *CreateServerReq_Metadata) GetMy_Server_Name() string {
	if x != nil {
		return x.My_Server_Name
	}
	return ""
}

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

	Path     string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	Contents string `protobuf:"bytes,2,opt,name=contents,proto3" json:"contents,omitempty"`
}

func (x *CreateServerReq_Personality) Reset() {
	*x = CreateServerReq_Personality{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[213]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateServerReq_Personality) ProtoMessage() {}

func (x *CreateServerReq_Personality) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[213]
	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 CreateServerReq_Personality.ProtoReflect.Descriptor instead.
func (*CreateServerReq_Personality) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{8, 4}
}

func (x *CreateServerReq_Personality) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

func (x *CreateServerReq_Personality) GetContents() string {
	if x != nil {
		return x.Contents
	}
	return ""
}

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

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

func (x *CreateServerReq_SecurityGroups) Reset() {
	*x = CreateServerReq_SecurityGroups{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[214]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateServerReq_SecurityGroups) ProtoMessage() {}

func (x *CreateServerReq_SecurityGroups) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[214]
	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 CreateServerReq_SecurityGroups.ProtoReflect.Descriptor instead.
func (*CreateServerReq_SecurityGroups) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{8, 5}
}

func (x *CreateServerReq_SecurityGroups) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

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

	FlavorRef                string                                  `protobuf:"bytes,1,opt,name=flavorRef,proto3" json:"flavorRef,omitempty"` // @gotags: copier:"FlavorRef"
	Name                     string                                  `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`           // @gotags: copier:"Name"
	Networks                 []*CreateServerReq_Networks             `protobuf:"bytes,3,rep,name=networks,proto3" json:"networks,omitempty"`   // @gotags: copier:"Networks"
	ImageRef                 string                                  `protobuf:"bytes,10,opt,name=imageRef,proto3" json:"imageRef,omitempty"`  // @gotags: copier:"ImageRef"
	AccessIPv4               string                                  `protobuf:"bytes,4,opt,name=accessIPv4,proto3" json:"accessIPv4,omitempty"`
	AccessIPv6               string                                  `protobuf:"bytes,5,opt,name=accessIPv6,proto3" json:"accessIPv6,omitempty"`
	AdminPass                string                                  `protobuf:"bytes,6,opt,name=adminPass,proto3" json:"adminPass,omitempty"`
	AvailabilityZone         string                                  `protobuf:"bytes,7,opt,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"`                 // @gotags: copier:"AvailabilityZone"
	BlockDeviceMappingV2     []*CreateServerReq_BlockDeviceMappingV2 `protobuf:"bytes,8,rep,name=block_device_mapping_v2,json=blockDeviceMappingV2,proto3" json:"block_device_mapping_v2,omitempty"` // @gotags: copier:"BlockDeviceMappingV2"
	ConfigDrive              bool                                    `protobuf:"varint,9,opt,name=config_drive,json=configDrive,proto3" json:"config_drive,omitempty"`
	KeyName                  string                                  `protobuf:"bytes,11,opt,name=key_name,json=keyName,proto3" json:"key_name,omitempty"`
	Metadata                 *CreateServerReq_Metadata               `protobuf:"bytes,12,opt,name=metadata,proto3" json:"metadata,omitempty"`
	OS_DCFDiskConfig         string                                  `protobuf:"bytes,13,opt,name=OS_DCF_diskConfig,json=OS-DCF:diskConfig,proto3" json:"OS_DCF_diskConfig,omitempty"` // @gotags: copier:"OSDCFDiskConfig"
	Personality              []*CreateServerReq_Personality          `protobuf:"bytes,14,rep,name=personality,proto3" json:"personality,omitempty"`
	SecurityGroups           []*CreateServerReq_SecurityGroups       `protobuf:"bytes,15,rep,name=security_groups,json=securityGroups,proto3" json:"security_groups,omitempty"`
	UserData                 string                                  `protobuf:"bytes,16,opt,name=user_data,json=userData,proto3" json:"user_data,omitempty"`
	Description              string                                  `protobuf:"bytes,17,opt,name=description,proto3" json:"description,omitempty"` // @gotags: copier:"Description"
	Hostname                 string                                  `protobuf:"bytes,18,opt,name=hostname,proto3" json:"hostname,omitempty"`
	Tags                     []string                                `protobuf:"bytes,19,rep,name=tags,proto3" json:"tags,omitempty"`
	TrustedImageCertificates []string                                `protobuf:"bytes,20,rep,name=trusted_image_certificates,json=trustedImageCertificates,proto3" json:"trusted_image_certificates,omitempty"`
	Host                     string                                  `protobuf:"bytes,21,opt,name=host,proto3" json:"host,omitempty"`
	HypervisorHostname       string                                  `protobuf:"bytes,22,opt,name=hypervisor_hostname,json=hypervisorHostname,proto3" json:"hypervisor_hostname,omitempty"`
	MinCount                 int32                                   `protobuf:"varint,23,opt,name=min_count,json=minCount,proto3" json:"min_count,omitempty"`
}

func (x *CreateServerReq_Server) Reset() {
	*x = CreateServerReq_Server{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[215]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateServerReq_Server) ProtoMessage() {}

func (x *CreateServerReq_Server) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[215]
	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 CreateServerReq_Server.ProtoReflect.Descriptor instead.
func (*CreateServerReq_Server) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{8, 6}
}

func (x *CreateServerReq_Server) GetFlavorRef() string {
	if x != nil {
		return x.FlavorRef
	}
	return ""
}

func (x *CreateServerReq_Server) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateServerReq_Server) GetNetworks() []*CreateServerReq_Networks {
	if x != nil {
		return x.Networks
	}
	return nil
}

func (x *CreateServerReq_Server) GetImageRef() string {
	if x != nil {
		return x.ImageRef
	}
	return ""
}

func (x *CreateServerReq_Server) GetAccessIPv4() string {
	if x != nil {
		return x.AccessIPv4
	}
	return ""
}

func (x *CreateServerReq_Server) GetAccessIPv6() string {
	if x != nil {
		return x.AccessIPv6
	}
	return ""
}

func (x *CreateServerReq_Server) GetAdminPass() string {
	if x != nil {
		return x.AdminPass
	}
	return ""
}

func (x *CreateServerReq_Server) GetAvailabilityZone() string {
	if x != nil {
		return x.AvailabilityZone
	}
	return ""
}

func (x *CreateServerReq_Server) GetBlockDeviceMappingV2() []*CreateServerReq_BlockDeviceMappingV2 {
	if x != nil {
		return x.BlockDeviceMappingV2
	}
	return nil
}

func (x *CreateServerReq_Server) GetConfigDrive() bool {
	if x != nil {
		return x.ConfigDrive
	}
	return false
}

func (x *CreateServerReq_Server) GetKeyName() string {
	if x != nil {
		return x.KeyName
	}
	return ""
}

func (x *CreateServerReq_Server) GetMetadata() *CreateServerReq_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *CreateServerReq_Server) GetOS_DCFDiskConfig() string {
	if x != nil {
		return x.OS_DCFDiskConfig
	}
	return ""
}

func (x *CreateServerReq_Server) GetPersonality() []*CreateServerReq_Personality {
	if x != nil {
		return x.Personality
	}
	return nil
}

func (x *CreateServerReq_Server) GetSecurityGroups() []*CreateServerReq_SecurityGroups {
	if x != nil {
		return x.SecurityGroups
	}
	return nil
}

func (x *CreateServerReq_Server) GetUserData() string {
	if x != nil {
		return x.UserData
	}
	return ""
}

func (x *CreateServerReq_Server) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateServerReq_Server) GetHostname() string {
	if x != nil {
		return x.Hostname
	}
	return ""
}

func (x *CreateServerReq_Server) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *CreateServerReq_Server) GetTrustedImageCertificates() []string {
	if x != nil {
		return x.TrustedImageCertificates
	}
	return nil
}

func (x *CreateServerReq_Server) GetHost() string {
	if x != nil {
		return x.Host
	}
	return ""
}

func (x *CreateServerReq_Server) GetHypervisorHostname() string {
	if x != nil {
		return x.HypervisorHostname
	}
	return ""
}

func (x *CreateServerReq_Server) GetMinCount() int32 {
	if x != nil {
		return x.MinCount
	}
	return 0
}

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

	SameHost        []string `protobuf:"bytes,1,rep,name=same_host,json=sameHost,proto3" json:"same_host,omitempty"`
	BuildNearHostIp string   `protobuf:"bytes,2,opt,name=build_near_host_ip,json=buildNearHostIp,proto3" json:"build_near_host_ip,omitempty"`
	Cidr            string   `protobuf:"bytes,3,opt,name=cidr,proto3" json:"cidr,omitempty"`
	DifferentCell   []string `protobuf:"bytes,4,rep,name=different_cell,json=differentCell,proto3" json:"different_cell,omitempty"`
	DifferentHost   []string `protobuf:"bytes,5,rep,name=different_host,json=differentHost,proto3" json:"different_host,omitempty"`
	Group           string   `protobuf:"bytes,6,opt,name=group,proto3" json:"group,omitempty"`
	Query           string   `protobuf:"bytes,7,opt,name=query,proto3" json:"query,omitempty"`
	TargetCell      string   `protobuf:"bytes,8,opt,name=target_cell,json=targetCell,proto3" json:"target_cell,omitempty"`
}

func (x *CreateServerReq_OsSchHntSchedulerHints) Reset() {
	*x = CreateServerReq_OsSchHntSchedulerHints{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[216]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateServerReq_OsSchHntSchedulerHints) ProtoMessage() {}

func (x *CreateServerReq_OsSchHntSchedulerHints) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[216]
	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 CreateServerReq_OsSchHntSchedulerHints.ProtoReflect.Descriptor instead.
func (*CreateServerReq_OsSchHntSchedulerHints) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{8, 7}
}

func (x *CreateServerReq_OsSchHntSchedulerHints) GetSameHost() []string {
	if x != nil {
		return x.SameHost
	}
	return nil
}

func (x *CreateServerReq_OsSchHntSchedulerHints) GetBuildNearHostIp() string {
	if x != nil {
		return x.BuildNearHostIp
	}
	return ""
}

func (x *CreateServerReq_OsSchHntSchedulerHints) GetCidr() string {
	if x != nil {
		return x.Cidr
	}
	return ""
}

func (x *CreateServerReq_OsSchHntSchedulerHints) GetDifferentCell() []string {
	if x != nil {
		return x.DifferentCell
	}
	return nil
}

func (x *CreateServerReq_OsSchHntSchedulerHints) GetDifferentHost() []string {
	if x != nil {
		return x.DifferentHost
	}
	return nil
}

func (x *CreateServerReq_OsSchHntSchedulerHints) GetGroup() string {
	if x != nil {
		return x.Group
	}
	return ""
}

func (x *CreateServerReq_OsSchHntSchedulerHints) GetQuery() string {
	if x != nil {
		return x.Query
	}
	return ""
}

func (x *CreateServerReq_OsSchHntSchedulerHints) GetTargetCell() string {
	if x != nil {
		return x.TargetCell
	}
	return ""
}

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

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *CreateServerResp_Links) Reset() {
	*x = CreateServerResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[217]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateServerResp_Links) ProtoMessage() {}

func (x *CreateServerResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[217]
	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 CreateServerResp_Links.ProtoReflect.Descriptor instead.
func (*CreateServerResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{9, 0}
}

func (x *CreateServerResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *CreateServerResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

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

	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // @gotags: copier:"Name"
}

func (x *CreateServerResp_SecurityGroups) Reset() {
	*x = CreateServerResp_SecurityGroups{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[218]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateServerResp_SecurityGroups) ProtoMessage() {}

func (x *CreateServerResp_SecurityGroups) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[218]
	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 CreateServerResp_SecurityGroups.ProtoReflect.Descriptor instead.
func (*CreateServerResp_SecurityGroups) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{9, 1}
}

func (x *CreateServerResp_SecurityGroups) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

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

	Id               string                             `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`                                                      // @gotags: copier:"Id"
	Links            []*CreateServerResp_Links          `protobuf:"bytes,2,rep,name=links,proto3" json:"links,omitempty"`                                                //
	OS_DCFDiskConfig string                             `protobuf:"bytes,3,opt,name=OS_DCF_diskConfig,json=OS-DCF:diskConfig,proto3" json:"OS_DCF_diskConfig,omitempty"` // @gotags: copier:"OSDCFDiskConfig"
	SecurityGroups   []*CreateServerResp_SecurityGroups `protobuf:"bytes,4,rep,name=security_groups,json=securityGroups,proto3" json:"security_groups,omitempty"`        // @gotags: copier:"SecurityGroups"
	AdminPass        string                             `protobuf:"bytes,5,opt,name=adminPass,proto3" json:"adminPass,omitempty"`                                        // @gotags: copier:"AdminPass"
}

func (x *CreateServerResp_Server) Reset() {
	*x = CreateServerResp_Server{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[219]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateServerResp_Server) ProtoMessage() {}

func (x *CreateServerResp_Server) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[219]
	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 CreateServerResp_Server.ProtoReflect.Descriptor instead.
func (*CreateServerResp_Server) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{9, 2}
}

func (x *CreateServerResp_Server) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateServerResp_Server) GetLinks() []*CreateServerResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *CreateServerResp_Server) GetOS_DCFDiskConfig() string {
	if x != nil {
		return x.OS_DCFDiskConfig
	}
	return ""
}

func (x *CreateServerResp_Server) GetSecurityGroups() []*CreateServerResp_SecurityGroups {
	if x != nil {
		return x.SecurityGroups
	}
	return nil
}

func (x *CreateServerResp_Server) GetAdminPass() string {
	if x != nil {
		return x.AdminPass
	}
	return ""
}

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

	OS_EXT_IPS_MACMacAddr string `protobuf:"bytes,1,opt,name=OS_EXT_IPS_MAC_mac_addr,json=OS-EXT-IPS-MAC:mac_addr,proto3" json:"OS_EXT_IPS_MAC_mac_addr,omitempty"`
	OS_EXT_IPSType        string `protobuf:"bytes,2,opt,name=OS_EXT_IPS_type,json=OS-EXT-IPS:type,proto3" json:"OS_EXT_IPS_type,omitempty"`
	Addr                  string `protobuf:"bytes,3,opt,name=addr,proto3" json:"addr,omitempty"`
	Version               uint32 `protobuf:"varint,4,opt,name=version,proto3" json:"version,omitempty"`
}

func (x *GetServersDetailedByIdResp_Private) Reset() {
	*x = GetServersDetailedByIdResp_Private{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[220]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_Private) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_Private) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[220]
	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 GetServersDetailedByIdResp_Private.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_Private) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 0}
}

func (x *GetServersDetailedByIdResp_Private) GetOS_EXT_IPS_MACMacAddr() string {
	if x != nil {
		return x.OS_EXT_IPS_MACMacAddr
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Private) GetOS_EXT_IPSType() string {
	if x != nil {
		return x.OS_EXT_IPSType
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Private) GetAddr() string {
	if x != nil {
		return x.Addr
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Private) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

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

	Private []*GetServersDetailedByIdResp_Private `protobuf:"bytes,1,rep,name=private,proto3" json:"private,omitempty"`
}

func (x *GetServersDetailedByIdResp_Addresses) Reset() {
	*x = GetServersDetailedByIdResp_Addresses{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[221]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_Addresses) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_Addresses) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[221]
	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 GetServersDetailedByIdResp_Addresses.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_Addresses) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 1}
}

func (x *GetServersDetailedByIdResp_Addresses) GetPrivate() []*GetServersDetailedByIdResp_Private {
	if x != nil {
		return x.Private
	}
	return nil
}

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

func (x *GetServersDetailedByIdResp_ExtraSpecs) Reset() {
	*x = GetServersDetailedByIdResp_ExtraSpecs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[222]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_ExtraSpecs) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_ExtraSpecs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[222]
	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 GetServersDetailedByIdResp_ExtraSpecs.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_ExtraSpecs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 2}
}

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

	Id           string                                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Links        string                                 `protobuf:"bytes,2,opt,name=links,proto3" json:"links,omitempty"`
	Vcpus        uint32                                 `protobuf:"varint,3,opt,name=vcpus,proto3" json:"vcpus,omitempty"`
	Ram          uint32                                 `protobuf:"varint,4,opt,name=ram,proto3" json:"ram,omitempty"`
	Disk         uint32                                 `protobuf:"varint,5,opt,name=disk,proto3" json:"disk,omitempty"`
	Ephemeral    uint32                                 `protobuf:"varint,6,opt,name=ephemeral,proto3" json:"ephemeral,omitempty"`
	Swap         uint32                                 `protobuf:"varint,7,opt,name=swap,proto3" json:"swap,omitempty"`
	OriginalName string                                 `protobuf:"bytes,8,opt,name=original_name,json=originalName,proto3" json:"original_name,omitempty"`
	ExtraSpecs   *GetServersDetailedByIdResp_ExtraSpecs `protobuf:"bytes,9,opt,name=extra_specs,json=extraSpecs,proto3" json:"extra_specs,omitempty"`
}

func (x *GetServersDetailedByIdResp_Flavor) Reset() {
	*x = GetServersDetailedByIdResp_Flavor{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[223]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_Flavor) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_Flavor) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[223]
	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 GetServersDetailedByIdResp_Flavor.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_Flavor) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 3}
}

func (x *GetServersDetailedByIdResp_Flavor) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Flavor) GetLinks() string {
	if x != nil {
		return x.Links
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Flavor) GetVcpus() uint32 {
	if x != nil {
		return x.Vcpus
	}
	return 0
}

func (x *GetServersDetailedByIdResp_Flavor) GetRam() uint32 {
	if x != nil {
		return x.Ram
	}
	return 0
}

func (x *GetServersDetailedByIdResp_Flavor) GetDisk() uint32 {
	if x != nil {
		return x.Disk
	}
	return 0
}

func (x *GetServersDetailedByIdResp_Flavor) GetEphemeral() uint32 {
	if x != nil {
		return x.Ephemeral
	}
	return 0
}

func (x *GetServersDetailedByIdResp_Flavor) GetSwap() uint32 {
	if x != nil {
		return x.Swap
	}
	return 0
}

func (x *GetServersDetailedByIdResp_Flavor) GetOriginalName() string {
	if x != nil {
		return x.OriginalName
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Flavor) GetExtraSpecs() *GetServersDetailedByIdResp_ExtraSpecs {
	if x != nil {
		return x.ExtraSpecs
	}
	return nil
}

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

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *GetServersDetailedByIdResp_Links) Reset() {
	*x = GetServersDetailedByIdResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[224]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_Links) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[224]
	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 GetServersDetailedByIdResp_Links.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 4}
}

func (x *GetServersDetailedByIdResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

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

	Id    string                              `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Links []*GetServersDetailedByIdResp_Links `protobuf:"bytes,2,rep,name=links,proto3" json:"links,omitempty"`
}

func (x *GetServersDetailedByIdResp_Image) Reset() {
	*x = GetServersDetailedByIdResp_Image{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[225]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_Image) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_Image) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[225]
	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 GetServersDetailedByIdResp_Image.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_Image) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 5}
}

func (x *GetServersDetailedByIdResp_Image) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Image) GetLinks() []*GetServersDetailedByIdResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

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

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *GetServersDetailedByIdResp_Links1) Reset() {
	*x = GetServersDetailedByIdResp_Links1{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[226]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_Links1) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_Links1) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[226]
	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 GetServersDetailedByIdResp_Links1.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_Links1) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 6}
}

func (x *GetServersDetailedByIdResp_Links1) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Links1) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

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

func (x *GetServersDetailedByIdResp_Metadata) Reset() {
	*x = GetServersDetailedByIdResp_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[227]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_Metadata) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_Metadata) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[227]
	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 GetServersDetailedByIdResp_Metadata.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_Metadata) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 7}
}

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

	Id                  string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	DeleteOnTermination bool   `protobuf:"varint,2,opt,name=delete_on_termination,json=deleteOnTermination,proto3" json:"delete_on_termination,omitempty"`
}

func (x *GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached) Reset() {
	*x = GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[228]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[228]
	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 GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 8}
}

func (x *GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached) GetDeleteOnTermination() bool {
	if x != nil {
		return x.DeleteOnTermination
	}
	return false
}

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

	Code    uint32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
	Created string `protobuf:"bytes,2,opt,name=created,proto3" json:"created,omitempty"`
	Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
	Details string `protobuf:"bytes,4,opt,name=details,proto3" json:"details,omitempty"`
}

func (x *GetServersDetailedByIdResp_Fault) Reset() {
	*x = GetServersDetailedByIdResp_Fault{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[229]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_Fault) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_Fault) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[229]
	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 GetServersDetailedByIdResp_Fault.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_Fault) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 9}
}

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

func (x *GetServersDetailedByIdResp_Fault) GetCreated() string {
	if x != nil {
		return x.Created
	}
	return ""
}

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

func (x *GetServersDetailedByIdResp_Fault) GetDetails() string {
	if x != nil {
		return x.Details
	}
	return ""
}

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

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

func (x *GetServersDetailedByIdResp_SecurityGroups) Reset() {
	*x = GetServersDetailedByIdResp_SecurityGroups{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[230]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_SecurityGroups) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_SecurityGroups) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[230]
	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 GetServersDetailedByIdResp_SecurityGroups.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_SecurityGroups) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 10}
}

func (x *GetServersDetailedByIdResp_SecurityGroups) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

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

	AccessIPv4                        string                                                         `protobuf:"bytes,1,opt,name=accessIPv4,proto3" json:"accessIPv4,omitempty"`
	AccessIPv6                        string                                                         `protobuf:"bytes,2,opt,name=accessIPv6,proto3" json:"accessIPv6,omitempty"`
	Addresses                         *GetServersDetailedByIdResp_Addresses                          `protobuf:"bytes,3,opt,name=addresses,proto3" json:"addresses,omitempty"`
	ConfigDrive                       string                                                         `protobuf:"bytes,4,opt,name=config_drive,json=configDrive,proto3" json:"config_drive,omitempty"`
	Created                           string                                                         `protobuf:"bytes,5,opt,name=created,proto3" json:"created,omitempty"`
	Flavor                            *GetServersDetailedByIdResp_Flavor                             `protobuf:"bytes,6,opt,name=flavor,proto3" json:"flavor,omitempty"`
	HostId                            string                                                         `protobuf:"bytes,7,opt,name=hostId,proto3" json:"hostId,omitempty"`
	Id                                string                                                         `protobuf:"bytes,8,opt,name=id,proto3" json:"id,omitempty"`
	Image                             *GetServersDetailedByIdResp_Image                              `protobuf:"bytes,9,opt,name=image,proto3" json:"image,omitempty"`
	KeyName                           string                                                         `protobuf:"bytes,10,opt,name=key_name,json=keyName,proto3" json:"key_name,omitempty"`
	Links                             []*GetServersDetailedByIdResp_Links1                           `protobuf:"bytes,11,rep,name=links,proto3" json:"links,omitempty"`
	Metadata                          *GetServersDetailedByIdResp_Metadata                           `protobuf:"bytes,12,opt,name=metadata,proto3" json:"metadata,omitempty"`
	Name                              string                                                         `protobuf:"bytes,13,opt,name=name,proto3" json:"name,omitempty"`
	OS_DCFDiskConfig                  string                                                         `protobuf:"bytes,14,opt,name=OS_DCF_diskConfig,json=OS-DCF:diskConfig,proto3" json:"OS_DCF_diskConfig,omitempty"`
	OS_EXT_AZAvailabilityZone         string                                                         `protobuf:"bytes,15,opt,name=OS_EXT_AZ_availability_zone,json=OS-EXT-AZ:availability_zone,proto3" json:"OS_EXT_AZ_availability_zone,omitempty"`
	OS_EXT_SRV_ATTRHost               string                                                         `protobuf:"bytes,16,opt,name=OS_EXT_SRV_ATTR_host,json=OS-EXT-SRV-ATTR:host,proto3" json:"OS_EXT_SRV_ATTR_host,omitempty"`
	OS_EXT_SRV_ATTRHostname           string                                                         `protobuf:"bytes,17,opt,name=OS_EXT_SRV_ATTR_hostname,json=OS-EXT-SRV-ATTR:hostname,proto3" json:"OS_EXT_SRV_ATTR_hostname,omitempty"`
	OS_EXT_SRV_ATTRHypervisorHostname string                                                         `protobuf:"bytes,18,opt,name=OS_EXT_SRV_ATTR_hypervisor_hostname,json=OS-EXT-SRV-ATTR:hypervisor_hostname,proto3" json:"OS_EXT_SRV_ATTR_hypervisor_hostname,omitempty"`
	OS_EXT_SRV_ATTRInstanceName       string                                                         `protobuf:"bytes,19,opt,name=OS_EXT_SRV_ATTR_instance_name,json=OS-EXT-SRV-ATTR:instance_name,proto3" json:"OS_EXT_SRV_ATTR_instance_name,omitempty"`
	OS_EXT_SRV_ATTRKernelId           string                                                         `protobuf:"bytes,20,opt,name=OS_EXT_SRV_ATTR_kernel_id,json=OS-EXT-SRV-ATTR:kernel_id,proto3" json:"OS_EXT_SRV_ATTR_kernel_id,omitempty"`
	OS_EXT_SRV_ATTRLaunchIndex        uint32                                                         `protobuf:"varint,21,opt,name=OS_EXT_SRV_ATTR_launch_index,json=OS-EXT-SRV-ATTR:launch_index,proto3" json:"OS_EXT_SRV_ATTR_launch_index,omitempty"`
	OS_EXT_SRV_ATTRRamdiskId          string                                                         `protobuf:"bytes,22,opt,name=OS_EXT_SRV_ATTR_ramdisk_id,json=OS-EXT-SRV-ATTR:ramdisk_id,proto3" json:"OS_EXT_SRV_ATTR_ramdisk_id,omitempty"`
	OS_EXT_SRV_ATTRReservationId      string                                                         `protobuf:"bytes,23,opt,name=OS_EXT_SRV_ATTR_reservation_id,json=OS-EXT-SRV-ATTR:reservation_id,proto3" json:"OS_EXT_SRV_ATTR_reservation_id,omitempty"`
	OS_EXT_SRV_ATTRRootDeviceName     string                                                         `protobuf:"bytes,24,opt,name=OS_EXT_SRV_ATTR_root_device_name,json=OS-EXT-SRV-ATTR:root_device_name,proto3" json:"OS_EXT_SRV_ATTR_root_device_name,omitempty"`
	OS_EXT_SRV_ATTRUserData           string                                                         `protobuf:"bytes,25,opt,name=OS_EXT_SRV_ATTR_user_data,json=OS-EXT-SRV-ATTR:user_data,proto3" json:"OS_EXT_SRV_ATTR_user_data,omitempty"`
	OS_EXT_STSPowerState              uint32                                                         `protobuf:"varint,26,opt,name=OS_EXT_STS_power_state,json=OS-EXT-STS:power_state,proto3" json:"OS_EXT_STS_power_state,omitempty"`
	OS_EXT_STSTaskState               string                                                         `protobuf:"bytes,27,opt,name=OS_EXT_STS_task_state,json=OS-EXT-STS:task_state,proto3" json:"OS_EXT_STS_task_state,omitempty"`
	OS_EXT_STSVmState                 string                                                         `protobuf:"bytes,28,opt,name=OS_EXT_STS_vm_state,json=OS-EXT-STS:vm_state,proto3" json:"OS_EXT_STS_vm_state,omitempty"`
	OsExtendedVolumesVolumesAttached  []*GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached `protobuf:"bytes,29,rep,name=os_extended_volumes_volumes_attached,json=os-extended-volumes:volumes_attached,proto3" json:"os_extended_volumes_volumes_attached,omitempty"`
	OS_SRV_USGLaunchedAt              string                                                         `protobuf:"bytes,30,opt,name=OS_SRV_USG_launched_at,json=OS-SRV-USG:launched_at,proto3" json:"OS_SRV_USG_launched_at,omitempty"`
	OS_SRV_USGTerminatedAt            string                                                         `protobuf:"bytes,31,opt,name=OS_SRV_USG_terminated_at,json=OS-SRV-USG:terminated_at,proto3" json:"OS_SRV_USG_terminated_at,omitempty"`
	Status                            string                                                         `protobuf:"bytes,32,opt,name=status,proto3" json:"status,omitempty"`
	TenantId                          string                                                         `protobuf:"bytes,33,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	Updated                           string                                                         `protobuf:"bytes,34,opt,name=updated,proto3" json:"updated,omitempty"`
	UserId                            string                                                         `protobuf:"bytes,35,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	Fault                             *GetServersDetailedByIdResp_Fault                              `protobuf:"bytes,36,opt,name=fault,proto3" json:"fault,omitempty"`
	Progress                          uint32                                                         `protobuf:"varint,37,opt,name=progress,proto3" json:"progress,omitempty"`
	SecurityGroups                    []*GetServersDetailedByIdResp_SecurityGroups                   `protobuf:"bytes,38,rep,name=security_groups,json=securityGroups,proto3" json:"security_groups,omitempty"`
	Locked                            bool                                                           `protobuf:"varint,39,opt,name=locked,proto3" json:"locked,omitempty"`
	HostStatus                        string                                                         `protobuf:"bytes,40,opt,name=host_status,json=hostStatus,proto3" json:"host_status,omitempty"`
	Description                       string                                                         `protobuf:"bytes,41,opt,name=description,proto3" json:"description,omitempty"`
	Tags                              []string                                                       `protobuf:"bytes,42,rep,name=tags,proto3" json:"tags,omitempty"`
	TrustedImageCertificates          string                                                         `protobuf:"bytes,43,opt,name=trusted_image_certificates,json=trustedImageCertificates,proto3" json:"trusted_image_certificates,omitempty"`
	ServerGroups                      []string                                                       `protobuf:"bytes,44,rep,name=server_groups,json=serverGroups,proto3" json:"server_groups,omitempty"`
	LockedReason                      string                                                         `protobuf:"bytes,45,opt,name=locked_reason,json=lockedReason,proto3" json:"locked_reason,omitempty"`
}

func (x *GetServersDetailedByIdResp_Servers) Reset() {
	*x = GetServersDetailedByIdResp_Servers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[231]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetServersDetailedByIdResp_Servers) ProtoMessage() {}

func (x *GetServersDetailedByIdResp_Servers) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[231]
	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 GetServersDetailedByIdResp_Servers.ProtoReflect.Descriptor instead.
func (*GetServersDetailedByIdResp_Servers) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{13, 11}
}

func (x *GetServersDetailedByIdResp_Servers) GetAccessIPv4() string {
	if x != nil {
		return x.AccessIPv4
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetAccessIPv6() string {
	if x != nil {
		return x.AccessIPv6
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetAddresses() *GetServersDetailedByIdResp_Addresses {
	if x != nil {
		return x.Addresses
	}
	return nil
}

func (x *GetServersDetailedByIdResp_Servers) GetConfigDrive() string {
	if x != nil {
		return x.ConfigDrive
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetCreated() string {
	if x != nil {
		return x.Created
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetFlavor() *GetServersDetailedByIdResp_Flavor {
	if x != nil {
		return x.Flavor
	}
	return nil
}

func (x *GetServersDetailedByIdResp_Servers) GetHostId() string {
	if x != nil {
		return x.HostId
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetImage() *GetServersDetailedByIdResp_Image {
	if x != nil {
		return x.Image
	}
	return nil
}

func (x *GetServersDetailedByIdResp_Servers) GetKeyName() string {
	if x != nil {
		return x.KeyName
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetLinks() []*GetServersDetailedByIdResp_Links1 {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *GetServersDetailedByIdResp_Servers) GetMetadata() *GetServersDetailedByIdResp_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *GetServersDetailedByIdResp_Servers) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_DCFDiskConfig() string {
	if x != nil {
		return x.OS_DCFDiskConfig
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_AZAvailabilityZone() string {
	if x != nil {
		return x.OS_EXT_AZAvailabilityZone
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_SRV_ATTRHost() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRHost
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_SRV_ATTRHostname() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRHostname
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_SRV_ATTRHypervisorHostname() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRHypervisorHostname
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_SRV_ATTRInstanceName() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRInstanceName
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_SRV_ATTRKernelId() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRKernelId
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_SRV_ATTRLaunchIndex() uint32 {
	if x != nil {
		return x.OS_EXT_SRV_ATTRLaunchIndex
	}
	return 0
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_SRV_ATTRRamdiskId() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRRamdiskId
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_SRV_ATTRReservationId() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRReservationId
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_SRV_ATTRRootDeviceName() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRRootDeviceName
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_SRV_ATTRUserData() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRUserData
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_STSPowerState() uint32 {
	if x != nil {
		return x.OS_EXT_STSPowerState
	}
	return 0
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_STSTaskState() string {
	if x != nil {
		return x.OS_EXT_STSTaskState
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_EXT_STSVmState() string {
	if x != nil {
		return x.OS_EXT_STSVmState
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOsExtendedVolumesVolumesAttached() []*GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached {
	if x != nil {
		return x.OsExtendedVolumesVolumesAttached
	}
	return nil
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_SRV_USGLaunchedAt() string {
	if x != nil {
		return x.OS_SRV_USGLaunchedAt
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetOS_SRV_USGTerminatedAt() string {
	if x != nil {
		return x.OS_SRV_USGTerminatedAt
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetUpdated() string {
	if x != nil {
		return x.Updated
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetFault() *GetServersDetailedByIdResp_Fault {
	if x != nil {
		return x.Fault
	}
	return nil
}

func (x *GetServersDetailedByIdResp_Servers) GetProgress() uint32 {
	if x != nil {
		return x.Progress
	}
	return 0
}

func (x *GetServersDetailedByIdResp_Servers) GetSecurityGroups() []*GetServersDetailedByIdResp_SecurityGroups {
	if x != nil {
		return x.SecurityGroups
	}
	return nil
}

func (x *GetServersDetailedByIdResp_Servers) GetLocked() bool {
	if x != nil {
		return x.Locked
	}
	return false
}

func (x *GetServersDetailedByIdResp_Servers) GetHostStatus() string {
	if x != nil {
		return x.HostStatus
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *GetServersDetailedByIdResp_Servers) GetTrustedImageCertificates() string {
	if x != nil {
		return x.TrustedImageCertificates
	}
	return ""
}

func (x *GetServersDetailedByIdResp_Servers) GetServerGroups() []string {
	if x != nil {
		return x.ServerGroups
	}
	return nil
}

func (x *GetServersDetailedByIdResp_Servers) GetLockedReason() string {
	if x != nil {
		return x.LockedReason
	}
	return ""
}

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

	OS_EXT_IPS_MACMacAddr string `protobuf:"bytes,1,opt,name=OS_EXT_IPS_MAC_mac_addr,json=OS-EXT-IPS-MAC:mac_addr,proto3" json:"OS_EXT_IPS_MAC_mac_addr,omitempty"`
	OS_EXT_IPSType        string `protobuf:"bytes,2,opt,name=OS_EXT_IPS_type,json=OS-EXT-IPS:type,proto3" json:"OS_EXT_IPS_type,omitempty"`
	Addr                  string `protobuf:"bytes,3,opt,name=addr,proto3" json:"addr,omitempty"`
	Version               uint32 `protobuf:"varint,4,opt,name=version,proto3" json:"version,omitempty"`
}

func (x *UpdateServerResp_Private) Reset() {
	*x = UpdateServerResp_Private{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[232]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateServerResp_Private) ProtoMessage() {}

func (x *UpdateServerResp_Private) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[232]
	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 UpdateServerResp_Private.ProtoReflect.Descriptor instead.
func (*UpdateServerResp_Private) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{17, 0}
}

func (x *UpdateServerResp_Private) GetOS_EXT_IPS_MACMacAddr() string {
	if x != nil {
		return x.OS_EXT_IPS_MACMacAddr
	}
	return ""
}

func (x *UpdateServerResp_Private) GetOS_EXT_IPSType() string {
	if x != nil {
		return x.OS_EXT_IPSType
	}
	return ""
}

func (x *UpdateServerResp_Private) GetAddr() string {
	if x != nil {
		return x.Addr
	}
	return ""
}

func (x *UpdateServerResp_Private) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

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

	Private []*UpdateServerResp_Private `protobuf:"bytes,1,rep,name=private,proto3" json:"private,omitempty"`
}

func (x *UpdateServerResp_Addresses) Reset() {
	*x = UpdateServerResp_Addresses{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[233]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateServerResp_Addresses) ProtoMessage() {}

func (x *UpdateServerResp_Addresses) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[233]
	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 UpdateServerResp_Addresses.ProtoReflect.Descriptor instead.
func (*UpdateServerResp_Addresses) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{17, 1}
}

func (x *UpdateServerResp_Addresses) GetPrivate() []*UpdateServerResp_Private {
	if x != nil {
		return x.Private
	}
	return nil
}

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

func (x *UpdateServerResp_ExtraSpecs) Reset() {
	*x = UpdateServerResp_ExtraSpecs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[234]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateServerResp_ExtraSpecs) ProtoMessage() {}

func (x *UpdateServerResp_ExtraSpecs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[234]
	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 UpdateServerResp_ExtraSpecs.ProtoReflect.Descriptor instead.
func (*UpdateServerResp_ExtraSpecs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{17, 2}
}

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

	Disk         uint32                       `protobuf:"varint,1,opt,name=disk,proto3" json:"disk,omitempty"`
	Ephemeral    uint32                       `protobuf:"varint,2,opt,name=ephemeral,proto3" json:"ephemeral,omitempty"`
	ExtraSpecs   *UpdateServerResp_ExtraSpecs `protobuf:"bytes,3,opt,name=extra_specs,json=extraSpecs,proto3" json:"extra_specs,omitempty"`
	OriginalName string                       `protobuf:"bytes,4,opt,name=original_name,json=originalName,proto3" json:"original_name,omitempty"`
	Ram          uint32                       `protobuf:"varint,5,opt,name=ram,proto3" json:"ram,omitempty"`
	Swap         uint32                       `protobuf:"varint,6,opt,name=swap,proto3" json:"swap,omitempty"`
	Vcpus        uint32                       `protobuf:"varint,7,opt,name=vcpus,proto3" json:"vcpus,omitempty"`
}

func (x *UpdateServerResp_Flavor) Reset() {
	*x = UpdateServerResp_Flavor{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[235]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateServerResp_Flavor) ProtoMessage() {}

func (x *UpdateServerResp_Flavor) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[235]
	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 UpdateServerResp_Flavor.ProtoReflect.Descriptor instead.
func (*UpdateServerResp_Flavor) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{17, 3}
}

func (x *UpdateServerResp_Flavor) GetDisk() uint32 {
	if x != nil {
		return x.Disk
	}
	return 0
}

func (x *UpdateServerResp_Flavor) GetEphemeral() uint32 {
	if x != nil {
		return x.Ephemeral
	}
	return 0
}

func (x *UpdateServerResp_Flavor) GetExtraSpecs() *UpdateServerResp_ExtraSpecs {
	if x != nil {
		return x.ExtraSpecs
	}
	return nil
}

func (x *UpdateServerResp_Flavor) GetOriginalName() string {
	if x != nil {
		return x.OriginalName
	}
	return ""
}

func (x *UpdateServerResp_Flavor) GetRam() uint32 {
	if x != nil {
		return x.Ram
	}
	return 0
}

func (x *UpdateServerResp_Flavor) GetSwap() uint32 {
	if x != nil {
		return x.Swap
	}
	return 0
}

func (x *UpdateServerResp_Flavor) GetVcpus() uint32 {
	if x != nil {
		return x.Vcpus
	}
	return 0
}

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

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *UpdateServerResp_Links) Reset() {
	*x = UpdateServerResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[236]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateServerResp_Links) ProtoMessage() {}

func (x *UpdateServerResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[236]
	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 UpdateServerResp_Links.ProtoReflect.Descriptor instead.
func (*UpdateServerResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{17, 4}
}

func (x *UpdateServerResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *UpdateServerResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

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

	Id    string                    `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Links []*UpdateServerResp_Links `protobuf:"bytes,2,rep,name=links,proto3" json:"links,omitempty"`
}

func (x *UpdateServerResp_Image) Reset() {
	*x = UpdateServerResp_Image{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[237]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateServerResp_Image) ProtoMessage() {}

func (x *UpdateServerResp_Image) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[237]
	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 UpdateServerResp_Image.ProtoReflect.Descriptor instead.
func (*UpdateServerResp_Image) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{17, 5}
}

func (x *UpdateServerResp_Image) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateServerResp_Image) GetLinks() []*UpdateServerResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

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

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *UpdateServerResp_Links1) Reset() {
	*x = UpdateServerResp_Links1{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[238]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateServerResp_Links1) ProtoMessage() {}

func (x *UpdateServerResp_Links1) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[238]
	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 UpdateServerResp_Links1.ProtoReflect.Descriptor instead.
func (*UpdateServerResp_Links1) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{17, 6}
}

func (x *UpdateServerResp_Links1) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *UpdateServerResp_Links1) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

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

	My_Server_Name string `protobuf:"bytes,1,opt,name=My_Server_Name,json=My Server Name,proto3" json:"My_Server_Name,omitempty"`
}

func (x *UpdateServerResp_Metadata) Reset() {
	*x = UpdateServerResp_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[239]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateServerResp_Metadata) ProtoMessage() {}

func (x *UpdateServerResp_Metadata) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[239]
	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 UpdateServerResp_Metadata.ProtoReflect.Descriptor instead.
func (*UpdateServerResp_Metadata) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{17, 7}
}

func (x *UpdateServerResp_Metadata) GetMy_Server_Name() string {
	if x != nil {
		return x.My_Server_Name
	}
	return ""
}

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

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

func (x *UpdateServerResp_SecurityGroups) Reset() {
	*x = UpdateServerResp_SecurityGroups{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[240]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateServerResp_SecurityGroups) ProtoMessage() {}

func (x *UpdateServerResp_SecurityGroups) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[240]
	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 UpdateServerResp_SecurityGroups.ProtoReflect.Descriptor instead.
func (*UpdateServerResp_SecurityGroups) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{17, 8}
}

func (x *UpdateServerResp_SecurityGroups) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

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

	OS_DCFDiskConfig                  string                             `protobuf:"bytes,1,opt,name=OS_DCF_diskConfig,json=OS-DCF:diskConfig,proto3" json:"OS_DCF_diskConfig,omitempty"`
	OS_EXT_AZAvailabilityZone         string                             `protobuf:"bytes,2,opt,name=OS_EXT_AZ_availability_zone,json=OS-EXT-AZ:availability_zone,proto3" json:"OS_EXT_AZ_availability_zone,omitempty"`
	OS_EXT_SRV_ATTRHost               string                             `protobuf:"bytes,3,opt,name=OS_EXT_SRV_ATTR_host,json=OS-EXT-SRV-ATTR:host,proto3" json:"OS_EXT_SRV_ATTR_host,omitempty"`
	OS_EXT_SRV_ATTRHostname           string                             `protobuf:"bytes,4,opt,name=OS_EXT_SRV_ATTR_hostname,json=OS-EXT-SRV-ATTR:hostname,proto3" json:"OS_EXT_SRV_ATTR_hostname,omitempty"`
	OS_EXT_SRV_ATTRHypervisorHostname string                             `protobuf:"bytes,5,opt,name=OS_EXT_SRV_ATTR_hypervisor_hostname,json=OS-EXT-SRV-ATTR:hypervisor_hostname,proto3" json:"OS_EXT_SRV_ATTR_hypervisor_hostname,omitempty"`
	OS_EXT_SRV_ATTRInstanceName       string                             `protobuf:"bytes,6,opt,name=OS_EXT_SRV_ATTR_instance_name,json=OS-EXT-SRV-ATTR:instance_name,proto3" json:"OS_EXT_SRV_ATTR_instance_name,omitempty"`
	OS_EXT_SRV_ATTRKernelId           string                             `protobuf:"bytes,7,opt,name=OS_EXT_SRV_ATTR_kernel_id,json=OS-EXT-SRV-ATTR:kernel_id,proto3" json:"OS_EXT_SRV_ATTR_kernel_id,omitempty"`
	OS_EXT_SRV_ATTRLaunchIndex        uint32                             `protobuf:"varint,8,opt,name=OS_EXT_SRV_ATTR_launch_index,json=OS-EXT-SRV-ATTR:launch_index,proto3" json:"OS_EXT_SRV_ATTR_launch_index,omitempty"`
	OS_EXT_SRV_ATTRRamdiskId          string                             `protobuf:"bytes,9,opt,name=OS_EXT_SRV_ATTR_ramdisk_id,json=OS-EXT-SRV-ATTR:ramdisk_id,proto3" json:"OS_EXT_SRV_ATTR_ramdisk_id,omitempty"`
	OS_EXT_SRV_ATTRReservationId      string                             `protobuf:"bytes,10,opt,name=OS_EXT_SRV_ATTR_reservation_id,json=OS-EXT-SRV-ATTR:reservation_id,proto3" json:"OS_EXT_SRV_ATTR_reservation_id,omitempty"`
	OS_EXT_SRV_ATTRRootDeviceName     string                             `protobuf:"bytes,11,opt,name=OS_EXT_SRV_ATTR_root_device_name,json=OS-EXT-SRV-ATTR:root_device_name,proto3" json:"OS_EXT_SRV_ATTR_root_device_name,omitempty"`
	OS_EXT_SRV_ATTRUserData           string                             `protobuf:"bytes,12,opt,name=OS_EXT_SRV_ATTR_user_data,json=OS-EXT-SRV-ATTR:user_data,proto3" json:"OS_EXT_SRV_ATTR_user_data,omitempty"`
	OS_EXT_STSPowerState              uint32                             `protobuf:"varint,13,opt,name=OS_EXT_STS_power_state,json=OS-EXT-STS:power_state,proto3" json:"OS_EXT_STS_power_state,omitempty"`
	OS_EXT_STSTaskState               string                             `protobuf:"bytes,14,opt,name=OS_EXT_STS_task_state,json=OS-EXT-STS:task_state,proto3" json:"OS_EXT_STS_task_state,omitempty"`
	OS_EXT_STSVmState                 string                             `protobuf:"bytes,15,opt,name=OS_EXT_STS_vm_state,json=OS-EXT-STS:vm_state,proto3" json:"OS_EXT_STS_vm_state,omitempty"`
	OS_SRV_USGLaunchedAt              string                             `protobuf:"bytes,16,opt,name=OS_SRV_USG_launched_at,json=OS-SRV-USG:launched_at,proto3" json:"OS_SRV_USG_launched_at,omitempty"`
	OS_SRV_USGTerminatedAt            string                             `protobuf:"bytes,17,opt,name=OS_SRV_USG_terminated_at,json=OS-SRV-USG:terminated_at,proto3" json:"OS_SRV_USG_terminated_at,omitempty"`
	AccessIPv4                        string                             `protobuf:"bytes,18,opt,name=accessIPv4,proto3" json:"accessIPv4,omitempty"`
	AccessIPv6                        string                             `protobuf:"bytes,19,opt,name=accessIPv6,proto3" json:"accessIPv6,omitempty"`
	Addresses                         *UpdateServerResp_Addresses        `protobuf:"bytes,20,opt,name=addresses,proto3" json:"addresses,omitempty"`
	ConfigDrive                       string                             `protobuf:"bytes,21,opt,name=config_drive,json=configDrive,proto3" json:"config_drive,omitempty"`
	Created                           string                             `protobuf:"bytes,22,opt,name=created,proto3" json:"created,omitempty"`
	Description                       string                             `protobuf:"bytes,23,opt,name=description,proto3" json:"description,omitempty"`
	Flavor                            *UpdateServerResp_Flavor           `protobuf:"bytes,24,opt,name=flavor,proto3" json:"flavor,omitempty"`
	HostId                            string                             `protobuf:"bytes,25,opt,name=hostId,proto3" json:"hostId,omitempty"`
	HostStatus                        string                             `protobuf:"bytes,26,opt,name=host_status,json=hostStatus,proto3" json:"host_status,omitempty"`
	Id                                string                             `protobuf:"bytes,27,opt,name=id,proto3" json:"id,omitempty"`
	Image                             *UpdateServerResp_Image            `protobuf:"bytes,28,opt,name=image,proto3" json:"image,omitempty"`
	KeyName                           string                             `protobuf:"bytes,29,opt,name=key_name,json=keyName,proto3" json:"key_name,omitempty"`
	Links                             []*UpdateServerResp_Links1         `protobuf:"bytes,30,rep,name=links,proto3" json:"links,omitempty"`
	Locked                            bool                               `protobuf:"varint,31,opt,name=locked,proto3" json:"locked,omitempty"`
	LockedReason                      string                             `protobuf:"bytes,32,opt,name=locked_reason,json=lockedReason,proto3" json:"locked_reason,omitempty"`
	Metadata                          *UpdateServerResp_Metadata         `protobuf:"bytes,33,opt,name=metadata,proto3" json:"metadata,omitempty"`
	Name                              string                             `protobuf:"bytes,34,opt,name=name,proto3" json:"name,omitempty"`
	OsExtendedVolumesVolumesAttached  []string                           `protobuf:"bytes,35,rep,name=os_extended_volumes_volumes_attached,json=os-extended-volumes:volumes_attached,proto3" json:"os_extended_volumes_volumes_attached,omitempty"`
	Progress                          uint32                             `protobuf:"varint,36,opt,name=progress,proto3" json:"progress,omitempty"`
	SecurityGroups                    []*UpdateServerResp_SecurityGroups `protobuf:"bytes,37,rep,name=security_groups,json=securityGroups,proto3" json:"security_groups,omitempty"`
	ServerGroups                      []string                           `protobuf:"bytes,38,rep,name=server_groups,json=serverGroups,proto3" json:"server_groups,omitempty"`
	Status                            string                             `protobuf:"bytes,39,opt,name=status,proto3" json:"status,omitempty"`
	Tags                              []string                           `protobuf:"bytes,40,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId                          string                             `protobuf:"bytes,41,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	TrustedImageCertificates          string                             `protobuf:"bytes,42,opt,name=trusted_image_certificates,json=trustedImageCertificates,proto3" json:"trusted_image_certificates,omitempty"`
	Updated                           string                             `protobuf:"bytes,43,opt,name=updated,proto3" json:"updated,omitempty"`
	UserId                            string                             `protobuf:"bytes,44,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
}

func (x *UpdateServerResp_Server) Reset() {
	*x = UpdateServerResp_Server{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[241]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateServerResp_Server) ProtoMessage() {}

func (x *UpdateServerResp_Server) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[241]
	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 UpdateServerResp_Server.ProtoReflect.Descriptor instead.
func (*UpdateServerResp_Server) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{17, 9}
}

func (x *UpdateServerResp_Server) GetOS_DCFDiskConfig() string {
	if x != nil {
		return x.OS_DCFDiskConfig
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_AZAvailabilityZone() string {
	if x != nil {
		return x.OS_EXT_AZAvailabilityZone
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_SRV_ATTRHost() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRHost
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_SRV_ATTRHostname() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRHostname
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_SRV_ATTRHypervisorHostname() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRHypervisorHostname
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_SRV_ATTRInstanceName() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRInstanceName
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_SRV_ATTRKernelId() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRKernelId
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_SRV_ATTRLaunchIndex() uint32 {
	if x != nil {
		return x.OS_EXT_SRV_ATTRLaunchIndex
	}
	return 0
}

func (x *UpdateServerResp_Server) GetOS_EXT_SRV_ATTRRamdiskId() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRRamdiskId
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_SRV_ATTRReservationId() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRReservationId
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_SRV_ATTRRootDeviceName() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRRootDeviceName
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_SRV_ATTRUserData() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRUserData
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_STSPowerState() uint32 {
	if x != nil {
		return x.OS_EXT_STSPowerState
	}
	return 0
}

func (x *UpdateServerResp_Server) GetOS_EXT_STSTaskState() string {
	if x != nil {
		return x.OS_EXT_STSTaskState
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_EXT_STSVmState() string {
	if x != nil {
		return x.OS_EXT_STSVmState
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_SRV_USGLaunchedAt() string {
	if x != nil {
		return x.OS_SRV_USGLaunchedAt
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOS_SRV_USGTerminatedAt() string {
	if x != nil {
		return x.OS_SRV_USGTerminatedAt
	}
	return ""
}

func (x *UpdateServerResp_Server) GetAccessIPv4() string {
	if x != nil {
		return x.AccessIPv4
	}
	return ""
}

func (x *UpdateServerResp_Server) GetAccessIPv6() string {
	if x != nil {
		return x.AccessIPv6
	}
	return ""
}

func (x *UpdateServerResp_Server) GetAddresses() *UpdateServerResp_Addresses {
	if x != nil {
		return x.Addresses
	}
	return nil
}

func (x *UpdateServerResp_Server) GetConfigDrive() string {
	if x != nil {
		return x.ConfigDrive
	}
	return ""
}

func (x *UpdateServerResp_Server) GetCreated() string {
	if x != nil {
		return x.Created
	}
	return ""
}

func (x *UpdateServerResp_Server) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdateServerResp_Server) GetFlavor() *UpdateServerResp_Flavor {
	if x != nil {
		return x.Flavor
	}
	return nil
}

func (x *UpdateServerResp_Server) GetHostId() string {
	if x != nil {
		return x.HostId
	}
	return ""
}

func (x *UpdateServerResp_Server) GetHostStatus() string {
	if x != nil {
		return x.HostStatus
	}
	return ""
}

func (x *UpdateServerResp_Server) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateServerResp_Server) GetImage() *UpdateServerResp_Image {
	if x != nil {
		return x.Image
	}
	return nil
}

func (x *UpdateServerResp_Server) GetKeyName() string {
	if x != nil {
		return x.KeyName
	}
	return ""
}

func (x *UpdateServerResp_Server) GetLinks() []*UpdateServerResp_Links1 {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *UpdateServerResp_Server) GetLocked() bool {
	if x != nil {
		return x.Locked
	}
	return false
}

func (x *UpdateServerResp_Server) GetLockedReason() string {
	if x != nil {
		return x.LockedReason
	}
	return ""
}

func (x *UpdateServerResp_Server) GetMetadata() *UpdateServerResp_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *UpdateServerResp_Server) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateServerResp_Server) GetOsExtendedVolumesVolumesAttached() []string {
	if x != nil {
		return x.OsExtendedVolumesVolumesAttached
	}
	return nil
}

func (x *UpdateServerResp_Server) GetProgress() uint32 {
	if x != nil {
		return x.Progress
	}
	return 0
}

func (x *UpdateServerResp_Server) GetSecurityGroups() []*UpdateServerResp_SecurityGroups {
	if x != nil {
		return x.SecurityGroups
	}
	return nil
}

func (x *UpdateServerResp_Server) GetServerGroups() []string {
	if x != nil {
		return x.ServerGroups
	}
	return nil
}

func (x *UpdateServerResp_Server) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *UpdateServerResp_Server) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *UpdateServerResp_Server) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *UpdateServerResp_Server) GetTrustedImageCertificates() string {
	if x != nil {
		return x.TrustedImageCertificates
	}
	return ""
}

func (x *UpdateServerResp_Server) GetUpdated() string {
	if x != nil {
		return x.Updated
	}
	return ""
}

func (x *UpdateServerResp_Server) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

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

	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
}

func (x *RebootServerReq_Reboot) Reset() {
	*x = RebootServerReq_Reboot{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[244]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebootServerReq_Reboot) ProtoMessage() {}

func (x *RebootServerReq_Reboot) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[244]
	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 RebootServerReq_Reboot.ProtoReflect.Descriptor instead.
func (*RebootServerReq_Reboot) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{22, 0}
}

func (x *RebootServerReq_Reboot) GetType() string {
	if x != nil {
		return x.Type
	}
	return ""
}

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

	ImageRef                 string                                      `protobuf:"bytes,2,opt,name=imageRef,proto3" json:"imageRef,omitempty"`
	AccessIPv4               string                                      `protobuf:"bytes,3,opt,name=accessIPv4,proto3" json:"accessIPv4,omitempty"`
	AccessIPv6               string                                      `protobuf:"bytes,4,opt,name=accessIPv6,proto3" json:"accessIPv6,omitempty"`
	AdminPass                string                                      `protobuf:"bytes,5,opt,name=adminPass,proto3" json:"adminPass,omitempty"`
	Metadata                 *RebuildServerReq_Metadata                  `protobuf:"bytes,6,opt,name=metadata,proto3" json:"metadata,omitempty"`
	Name                     string                                      `protobuf:"bytes,7,opt,name=name,proto3" json:"name,omitempty"`
	OS_DCFDiskConfig         string                                      `protobuf:"bytes,8,opt,name=OS_DCF_diskConfig,json=OS-DCF:diskConfig,proto3" json:"OS_DCF_diskConfig,omitempty"`
	Personality              []*RebuildServerReq_Personality             `protobuf:"bytes,9,rep,name=personality,proto3" json:"personality,omitempty"`
	PreserveEphemeral        bool                                        `protobuf:"varint,10,opt,name=preserve_ephemeral,json=preserveEphemeral,proto3" json:"preserve_ephemeral,omitempty"`
	Description              string                                      `protobuf:"bytes,11,opt,name=description,proto3" json:"description,omitempty"`
	KeyName                  string                                      `protobuf:"bytes,12,opt,name=key_name,json=keyName,proto3" json:"key_name,omitempty"`
	UserData                 string                                      `protobuf:"bytes,13,opt,name=user_data,json=userData,proto3" json:"user_data,omitempty"`
	TrustedImageCertificates []*RebuildServerReqTrustedImageCertificates `protobuf:"bytes,14,rep,name=trusted_image_certificates,json=trustedImageCertificates,proto3" json:"trusted_image_certificates,omitempty"`
	Hostname                 string                                      `protobuf:"bytes,15,opt,name=hostname,proto3" json:"hostname,omitempty"`
}

func (x *RebuildServerReq_Rebuild) Reset() {
	*x = RebuildServerReq_Rebuild{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[246]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerReq_Rebuild) ProtoMessage() {}

func (x *RebuildServerReq_Rebuild) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[246]
	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 RebuildServerReq_Rebuild.ProtoReflect.Descriptor instead.
func (*RebuildServerReq_Rebuild) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{26, 0}
}

func (x *RebuildServerReq_Rebuild) GetImageRef() string {
	if x != nil {
		return x.ImageRef
	}
	return ""
}

func (x *RebuildServerReq_Rebuild) GetAccessIPv4() string {
	if x != nil {
		return x.AccessIPv4
	}
	return ""
}

func (x *RebuildServerReq_Rebuild) GetAccessIPv6() string {
	if x != nil {
		return x.AccessIPv6
	}
	return ""
}

func (x *RebuildServerReq_Rebuild) GetAdminPass() string {
	if x != nil {
		return x.AdminPass
	}
	return ""
}

func (x *RebuildServerReq_Rebuild) GetMetadata() *RebuildServerReq_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *RebuildServerReq_Rebuild) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *RebuildServerReq_Rebuild) GetOS_DCFDiskConfig() string {
	if x != nil {
		return x.OS_DCFDiskConfig
	}
	return ""
}

func (x *RebuildServerReq_Rebuild) GetPersonality() []*RebuildServerReq_Personality {
	if x != nil {
		return x.Personality
	}
	return nil
}

func (x *RebuildServerReq_Rebuild) GetPreserveEphemeral() bool {
	if x != nil {
		return x.PreserveEphemeral
	}
	return false
}

func (x *RebuildServerReq_Rebuild) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *RebuildServerReq_Rebuild) GetKeyName() string {
	if x != nil {
		return x.KeyName
	}
	return ""
}

func (x *RebuildServerReq_Rebuild) GetUserData() string {
	if x != nil {
		return x.UserData
	}
	return ""
}

func (x *RebuildServerReq_Rebuild) GetTrustedImageCertificates() []*RebuildServerReqTrustedImageCertificates {
	if x != nil {
		return x.TrustedImageCertificates
	}
	return nil
}

func (x *RebuildServerReq_Rebuild) GetHostname() string {
	if x != nil {
		return x.Hostname
	}
	return ""
}

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

func (x *RebuildServerReq_Metadata) Reset() {
	*x = RebuildServerReq_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[247]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerReq_Metadata) ProtoMessage() {}

func (x *RebuildServerReq_Metadata) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[247]
	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 RebuildServerReq_Metadata.ProtoReflect.Descriptor instead.
func (*RebuildServerReq_Metadata) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{26, 1}
}

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

	Path     string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	Contents string `protobuf:"bytes,2,opt,name=contents,proto3" json:"contents,omitempty"`
}

func (x *RebuildServerReq_Personality) Reset() {
	*x = RebuildServerReq_Personality{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[248]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerReq_Personality) ProtoMessage() {}

func (x *RebuildServerReq_Personality) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[248]
	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 RebuildServerReq_Personality.ProtoReflect.Descriptor instead.
func (*RebuildServerReq_Personality) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{26, 2}
}

func (x *RebuildServerReq_Personality) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

func (x *RebuildServerReq_Personality) GetContents() string {
	if x != nil {
		return x.Contents
	}
	return ""
}

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

func (x *RebuildServerReqTrustedImageCertificates) Reset() {
	*x = RebuildServerReqTrustedImageCertificates{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[249]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerReqTrustedImageCertificates) ProtoMessage() {}

func (x *RebuildServerReqTrustedImageCertificates) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[249]
	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 RebuildServerReqTrustedImageCertificates.ProtoReflect.Descriptor instead.
func (*RebuildServerReqTrustedImageCertificates) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{26, 3}
}

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

	OS_EXT_IPS_MACMacAddr string `protobuf:"bytes,1,opt,name=OS_EXT_IPS_MAC_mac_addr,json=OS-EXT-IPS-MAC:mac_addr,proto3" json:"OS_EXT_IPS_MAC_mac_addr,omitempty"`
	OS_EXT_IPSType        string `protobuf:"bytes,2,opt,name=OS_EXT_IPS_type,json=OS-EXT-IPS:type,proto3" json:"OS_EXT_IPS_type,omitempty"`
	Addr                  string `protobuf:"bytes,3,opt,name=addr,proto3" json:"addr,omitempty"`
	Version               uint32 `protobuf:"varint,4,opt,name=version,proto3" json:"version,omitempty"`
}

func (x *RebuildServerResp_Private) Reset() {
	*x = RebuildServerResp_Private{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[250]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_Private) ProtoMessage() {}

func (x *RebuildServerResp_Private) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[250]
	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 RebuildServerResp_Private.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_Private) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 0}
}

func (x *RebuildServerResp_Private) GetOS_EXT_IPS_MACMacAddr() string {
	if x != nil {
		return x.OS_EXT_IPS_MACMacAddr
	}
	return ""
}

func (x *RebuildServerResp_Private) GetOS_EXT_IPSType() string {
	if x != nil {
		return x.OS_EXT_IPSType
	}
	return ""
}

func (x *RebuildServerResp_Private) GetAddr() string {
	if x != nil {
		return x.Addr
	}
	return ""
}

func (x *RebuildServerResp_Private) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

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

	Private []*RebuildServerResp_Private `protobuf:"bytes,1,rep,name=private,proto3" json:"private,omitempty"`
}

func (x *RebuildServerResp_Addresses) Reset() {
	*x = RebuildServerResp_Addresses{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[251]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_Addresses) ProtoMessage() {}

func (x *RebuildServerResp_Addresses) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[251]
	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 RebuildServerResp_Addresses.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_Addresses) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 1}
}

func (x *RebuildServerResp_Addresses) GetPrivate() []*RebuildServerResp_Private {
	if x != nil {
		return x.Private
	}
	return nil
}

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

func (x *RebuildServerResp_ExtraSpecs) Reset() {
	*x = RebuildServerResp_ExtraSpecs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[252]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_ExtraSpecs) ProtoMessage() {}

func (x *RebuildServerResp_ExtraSpecs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[252]
	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 RebuildServerResp_ExtraSpecs.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_ExtraSpecs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 2}
}

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

	Id           string                        `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Links        string                        `protobuf:"bytes,2,opt,name=links,proto3" json:"links,omitempty"`
	Vcpus        uint32                        `protobuf:"varint,3,opt,name=vcpus,proto3" json:"vcpus,omitempty"`
	Ram          uint32                        `protobuf:"varint,4,opt,name=ram,proto3" json:"ram,omitempty"`
	Disk         uint32                        `protobuf:"varint,5,opt,name=disk,proto3" json:"disk,omitempty"`
	Ephemeral    uint32                        `protobuf:"varint,6,opt,name=ephemeral,proto3" json:"ephemeral,omitempty"`
	Swap         uint32                        `protobuf:"varint,7,opt,name=swap,proto3" json:"swap,omitempty"`
	OriginalName string                        `protobuf:"bytes,8,opt,name=original_name,json=originalName,proto3" json:"original_name,omitempty"`
	ExtraSpecs   *RebuildServerResp_ExtraSpecs `protobuf:"bytes,9,opt,name=extra_specs,json=extraSpecs,proto3" json:"extra_specs,omitempty"`
}

func (x *RebuildServerResp_Flavor) Reset() {
	*x = RebuildServerResp_Flavor{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[253]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_Flavor) ProtoMessage() {}

func (x *RebuildServerResp_Flavor) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[253]
	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 RebuildServerResp_Flavor.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_Flavor) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 3}
}

func (x *RebuildServerResp_Flavor) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *RebuildServerResp_Flavor) GetLinks() string {
	if x != nil {
		return x.Links
	}
	return ""
}

func (x *RebuildServerResp_Flavor) GetVcpus() uint32 {
	if x != nil {
		return x.Vcpus
	}
	return 0
}

func (x *RebuildServerResp_Flavor) GetRam() uint32 {
	if x != nil {
		return x.Ram
	}
	return 0
}

func (x *RebuildServerResp_Flavor) GetDisk() uint32 {
	if x != nil {
		return x.Disk
	}
	return 0
}

func (x *RebuildServerResp_Flavor) GetEphemeral() uint32 {
	if x != nil {
		return x.Ephemeral
	}
	return 0
}

func (x *RebuildServerResp_Flavor) GetSwap() uint32 {
	if x != nil {
		return x.Swap
	}
	return 0
}

func (x *RebuildServerResp_Flavor) GetOriginalName() string {
	if x != nil {
		return x.OriginalName
	}
	return ""
}

func (x *RebuildServerResp_Flavor) GetExtraSpecs() *RebuildServerResp_ExtraSpecs {
	if x != nil {
		return x.ExtraSpecs
	}
	return nil
}

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

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *RebuildServerResp_Links) Reset() {
	*x = RebuildServerResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[254]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_Links) ProtoMessage() {}

func (x *RebuildServerResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[254]
	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 RebuildServerResp_Links.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 4}
}

func (x *RebuildServerResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *RebuildServerResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

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

	Id    string                     `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Links []*RebuildServerResp_Links `protobuf:"bytes,2,rep,name=links,proto3" json:"links,omitempty"`
}

func (x *RebuildServerResp_Image) Reset() {
	*x = RebuildServerResp_Image{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[255]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_Image) ProtoMessage() {}

func (x *RebuildServerResp_Image) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[255]
	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 RebuildServerResp_Image.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_Image) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 5}
}

func (x *RebuildServerResp_Image) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *RebuildServerResp_Image) GetLinks() []*RebuildServerResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

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

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *RebuildServerResp_Links1) Reset() {
	*x = RebuildServerResp_Links1{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[256]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_Links1) ProtoMessage() {}

func (x *RebuildServerResp_Links1) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[256]
	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 RebuildServerResp_Links1.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_Links1) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 6}
}

func (x *RebuildServerResp_Links1) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *RebuildServerResp_Links1) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

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

func (x *RebuildServerResp_Metadata) Reset() {
	*x = RebuildServerResp_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[257]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_Metadata) ProtoMessage() {}

func (x *RebuildServerResp_Metadata) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[257]
	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 RebuildServerResp_Metadata.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_Metadata) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 7}
}

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

	Id                  string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	DeleteOnTermination bool   `protobuf:"varint,2,opt,name=delete_on_termination,json=deleteOnTermination,proto3" json:"delete_on_termination,omitempty"`
}

func (x *RebuildServerResp_OsExtendedVolumesVolumesAttached) Reset() {
	*x = RebuildServerResp_OsExtendedVolumesVolumesAttached{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[258]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_OsExtendedVolumesVolumesAttached) ProtoMessage() {}

func (x *RebuildServerResp_OsExtendedVolumesVolumesAttached) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[258]
	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 RebuildServerResp_OsExtendedVolumesVolumesAttached.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_OsExtendedVolumesVolumesAttached) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 8}
}

func (x *RebuildServerResp_OsExtendedVolumesVolumesAttached) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *RebuildServerResp_OsExtendedVolumesVolumesAttached) GetDeleteOnTermination() bool {
	if x != nil {
		return x.DeleteOnTermination
	}
	return false
}

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

	Code    uint32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
	Created string `protobuf:"bytes,2,opt,name=created,proto3" json:"created,omitempty"`
	Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
	Details string `protobuf:"bytes,4,opt,name=details,proto3" json:"details,omitempty"`
}

func (x *RebuildServerResp_Fault) Reset() {
	*x = RebuildServerResp_Fault{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[259]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_Fault) ProtoMessage() {}

func (x *RebuildServerResp_Fault) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[259]
	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 RebuildServerResp_Fault.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_Fault) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 9}
}

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

func (x *RebuildServerResp_Fault) GetCreated() string {
	if x != nil {
		return x.Created
	}
	return ""
}

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

func (x *RebuildServerResp_Fault) GetDetails() string {
	if x != nil {
		return x.Details
	}
	return ""
}

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

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

func (x *RebuildServerResp_SecurityGroups) Reset() {
	*x = RebuildServerResp_SecurityGroups{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[260]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_SecurityGroups) ProtoMessage() {}

func (x *RebuildServerResp_SecurityGroups) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[260]
	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 RebuildServerResp_SecurityGroups.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_SecurityGroups) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 10}
}

func (x *RebuildServerResp_SecurityGroups) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

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

	AccessIPv4                        string                                                `protobuf:"bytes,1,opt,name=accessIPv4,proto3" json:"accessIPv4,omitempty"`
	AccessIPv6                        string                                                `protobuf:"bytes,2,opt,name=accessIPv6,proto3" json:"accessIPv6,omitempty"`
	Addresses                         *RebuildServerResp_Addresses                          `protobuf:"bytes,3,opt,name=addresses,proto3" json:"addresses,omitempty"`
	ConfigDrive                       string                                                `protobuf:"bytes,4,opt,name=config_drive,json=configDrive,proto3" json:"config_drive,omitempty"`
	Created                           string                                                `protobuf:"bytes,5,opt,name=created,proto3" json:"created,omitempty"`
	Flavor                            *RebuildServerResp_Flavor                             `protobuf:"bytes,6,opt,name=flavor,proto3" json:"flavor,omitempty"`
	HostId                            string                                                `protobuf:"bytes,7,opt,name=hostId,proto3" json:"hostId,omitempty"`
	Id                                string                                                `protobuf:"bytes,8,opt,name=id,proto3" json:"id,omitempty"`
	Image                             *RebuildServerResp_Image                              `protobuf:"bytes,9,opt,name=image,proto3" json:"image,omitempty"`
	KeyName                           string                                                `protobuf:"bytes,10,opt,name=key_name,json=keyName,proto3" json:"key_name,omitempty"`
	Links                             []*RebuildServerResp_Links1                           `protobuf:"bytes,11,rep,name=links,proto3" json:"links,omitempty"`
	Metadata                          *RebuildServerResp_Metadata                           `protobuf:"bytes,12,opt,name=metadata,proto3" json:"metadata,omitempty"`
	Name                              string                                                `protobuf:"bytes,13,opt,name=name,proto3" json:"name,omitempty"`
	OS_DCFDiskConfig                  string                                                `protobuf:"bytes,14,opt,name=OS_DCF_diskConfig,json=OS-DCF:diskConfig,proto3" json:"OS_DCF_diskConfig,omitempty"`
	OS_EXT_AZAvailabilityZone         string                                                `protobuf:"bytes,15,opt,name=OS_EXT_AZ_availability_zone,json=OS-EXT-AZ:availability_zone,proto3" json:"OS_EXT_AZ_availability_zone,omitempty"`
	OS_EXT_SRV_ATTRHost               string                                                `protobuf:"bytes,16,opt,name=OS_EXT_SRV_ATTR_host,json=OS-EXT-SRV-ATTR:host,proto3" json:"OS_EXT_SRV_ATTR_host,omitempty"`
	OS_EXT_SRV_ATTRHostname           string                                                `protobuf:"bytes,17,opt,name=OS_EXT_SRV_ATTR_hostname,json=OS-EXT-SRV-ATTR:hostname,proto3" json:"OS_EXT_SRV_ATTR_hostname,omitempty"`
	OS_EXT_SRV_ATTRHypervisorHostname string                                                `protobuf:"bytes,18,opt,name=OS_EXT_SRV_ATTR_hypervisor_hostname,json=OS-EXT-SRV-ATTR:hypervisor_hostname,proto3" json:"OS_EXT_SRV_ATTR_hypervisor_hostname,omitempty"`
	OS_EXT_SRV_ATTRInstanceName       string                                                `protobuf:"bytes,19,opt,name=OS_EXT_SRV_ATTR_instance_name,json=OS-EXT-SRV-ATTR:instance_name,proto3" json:"OS_EXT_SRV_ATTR_instance_name,omitempty"`
	OS_EXT_SRV_ATTRKernelId           string                                                `protobuf:"bytes,20,opt,name=OS_EXT_SRV_ATTR_kernel_id,json=OS-EXT-SRV-ATTR:kernel_id,proto3" json:"OS_EXT_SRV_ATTR_kernel_id,omitempty"`
	OS_EXT_SRV_ATTRLaunchIndex        uint32                                                `protobuf:"varint,21,opt,name=OS_EXT_SRV_ATTR_launch_index,json=OS-EXT-SRV-ATTR:launch_index,proto3" json:"OS_EXT_SRV_ATTR_launch_index,omitempty"`
	OS_EXT_SRV_ATTRRamdiskId          string                                                `protobuf:"bytes,22,opt,name=OS_EXT_SRV_ATTR_ramdisk_id,json=OS-EXT-SRV-ATTR:ramdisk_id,proto3" json:"OS_EXT_SRV_ATTR_ramdisk_id,omitempty"`
	OS_EXT_SRV_ATTRReservationId      string                                                `protobuf:"bytes,23,opt,name=OS_EXT_SRV_ATTR_reservation_id,json=OS-EXT-SRV-ATTR:reservation_id,proto3" json:"OS_EXT_SRV_ATTR_reservation_id,omitempty"`
	OS_EXT_SRV_ATTRRootDeviceName     string                                                `protobuf:"bytes,24,opt,name=OS_EXT_SRV_ATTR_root_device_name,json=OS-EXT-SRV-ATTR:root_device_name,proto3" json:"OS_EXT_SRV_ATTR_root_device_name,omitempty"`
	OS_EXT_SRV_ATTRUserData           string                                                `protobuf:"bytes,25,opt,name=OS_EXT_SRV_ATTR_user_data,json=OS-EXT-SRV-ATTR:user_data,proto3" json:"OS_EXT_SRV_ATTR_user_data,omitempty"`
	OS_EXT_STSPowerState              uint32                                                `protobuf:"varint,26,opt,name=OS_EXT_STS_power_state,json=OS-EXT-STS:power_state,proto3" json:"OS_EXT_STS_power_state,omitempty"`
	OS_EXT_STSTaskState               string                                                `protobuf:"bytes,27,opt,name=OS_EXT_STS_task_state,json=OS-EXT-STS:task_state,proto3" json:"OS_EXT_STS_task_state,omitempty"`
	OS_EXT_STSVmState                 string                                                `protobuf:"bytes,28,opt,name=OS_EXT_STS_vm_state,json=OS-EXT-STS:vm_state,proto3" json:"OS_EXT_STS_vm_state,omitempty"`
	OsExtendedVolumesVolumesAttached  []*RebuildServerResp_OsExtendedVolumesVolumesAttached `protobuf:"bytes,29,rep,name=os_extended_volumes_volumes_attached,json=os-extended-volumes:volumes_attached,proto3" json:"os_extended_volumes_volumes_attached,omitempty"`
	OS_SRV_USGLaunchedAt              string                                                `protobuf:"bytes,30,opt,name=OS_SRV_USG_launched_at,json=OS-SRV-USG:launched_at,proto3" json:"OS_SRV_USG_launched_at,omitempty"`
	OS_SRV_USGTerminatedAt            string                                                `protobuf:"bytes,31,opt,name=OS_SRV_USG_terminated_at,json=OS-SRV-USG:terminated_at,proto3" json:"OS_SRV_USG_terminated_at,omitempty"`
	Status                            string                                                `protobuf:"bytes,32,opt,name=status,proto3" json:"status,omitempty"`
	TenantId                          string                                                `protobuf:"bytes,33,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	Updated                           string                                                `protobuf:"bytes,34,opt,name=updated,proto3" json:"updated,omitempty"`
	UserId                            string                                                `protobuf:"bytes,35,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	Fault                             *RebuildServerResp_Fault                              `protobuf:"bytes,36,opt,name=fault,proto3" json:"fault,omitempty"`
	Progress                          uint32                                                `protobuf:"varint,37,opt,name=progress,proto3" json:"progress,omitempty"`
	SecurityGroups                    []*RebuildServerResp_SecurityGroups                   `protobuf:"bytes,38,rep,name=security_groups,json=securityGroups,proto3" json:"security_groups,omitempty"`
	Locked                            bool                                                  `protobuf:"varint,39,opt,name=locked,proto3" json:"locked,omitempty"`
	HostStatus                        string                                                `protobuf:"bytes,40,opt,name=host_status,json=hostStatus,proto3" json:"host_status,omitempty"`
	Description                       string                                                `protobuf:"bytes,41,opt,name=description,proto3" json:"description,omitempty"`
	Tags                              []string                                              `protobuf:"bytes,42,rep,name=tags,proto3" json:"tags,omitempty"`
	TrustedImageCertificates          string                                                `protobuf:"bytes,43,opt,name=trusted_image_certificates,json=trustedImageCertificates,proto3" json:"trusted_image_certificates,omitempty"`
	ServerGroups                      []string                                              `protobuf:"bytes,44,rep,name=server_groups,json=serverGroups,proto3" json:"server_groups,omitempty"`
	LockedReason                      string                                                `protobuf:"bytes,45,opt,name=locked_reason,json=lockedReason,proto3" json:"locked_reason,omitempty"`
}

func (x *RebuildServerResp_Servers) Reset() {
	*x = RebuildServerResp_Servers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[261]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RebuildServerResp_Servers) ProtoMessage() {}

func (x *RebuildServerResp_Servers) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[261]
	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 RebuildServerResp_Servers.ProtoReflect.Descriptor instead.
func (*RebuildServerResp_Servers) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{27, 11}
}

func (x *RebuildServerResp_Servers) GetAccessIPv4() string {
	if x != nil {
		return x.AccessIPv4
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetAccessIPv6() string {
	if x != nil {
		return x.AccessIPv6
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetAddresses() *RebuildServerResp_Addresses {
	if x != nil {
		return x.Addresses
	}
	return nil
}

func (x *RebuildServerResp_Servers) GetConfigDrive() string {
	if x != nil {
		return x.ConfigDrive
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetCreated() string {
	if x != nil {
		return x.Created
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetFlavor() *RebuildServerResp_Flavor {
	if x != nil {
		return x.Flavor
	}
	return nil
}

func (x *RebuildServerResp_Servers) GetHostId() string {
	if x != nil {
		return x.HostId
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetImage() *RebuildServerResp_Image {
	if x != nil {
		return x.Image
	}
	return nil
}

func (x *RebuildServerResp_Servers) GetKeyName() string {
	if x != nil {
		return x.KeyName
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetLinks() []*RebuildServerResp_Links1 {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *RebuildServerResp_Servers) GetMetadata() *RebuildServerResp_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *RebuildServerResp_Servers) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_DCFDiskConfig() string {
	if x != nil {
		return x.OS_DCFDiskConfig
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_AZAvailabilityZone() string {
	if x != nil {
		return x.OS_EXT_AZAvailabilityZone
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_SRV_ATTRHost() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRHost
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_SRV_ATTRHostname() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRHostname
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_SRV_ATTRHypervisorHostname() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRHypervisorHostname
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_SRV_ATTRInstanceName() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRInstanceName
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_SRV_ATTRKernelId() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRKernelId
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_SRV_ATTRLaunchIndex() uint32 {
	if x != nil {
		return x.OS_EXT_SRV_ATTRLaunchIndex
	}
	return 0
}

func (x *RebuildServerResp_Servers) GetOS_EXT_SRV_ATTRRamdiskId() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRRamdiskId
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_SRV_ATTRReservationId() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRReservationId
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_SRV_ATTRRootDeviceName() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRRootDeviceName
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_SRV_ATTRUserData() string {
	if x != nil {
		return x.OS_EXT_SRV_ATTRUserData
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_STSPowerState() uint32 {
	if x != nil {
		return x.OS_EXT_STSPowerState
	}
	return 0
}

func (x *RebuildServerResp_Servers) GetOS_EXT_STSTaskState() string {
	if x != nil {
		return x.OS_EXT_STSTaskState
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_EXT_STSVmState() string {
	if x != nil {
		return x.OS_EXT_STSVmState
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOsExtendedVolumesVolumesAttached() []*RebuildServerResp_OsExtendedVolumesVolumesAttached {
	if x != nil {
		return x.OsExtendedVolumesVolumesAttached
	}
	return nil
}

func (x *RebuildServerResp_Servers) GetOS_SRV_USGLaunchedAt() string {
	if x != nil {
		return x.OS_SRV_USGLaunchedAt
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetOS_SRV_USGTerminatedAt() string {
	if x != nil {
		return x.OS_SRV_USGTerminatedAt
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetUpdated() string {
	if x != nil {
		return x.Updated
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetFault() *RebuildServerResp_Fault {
	if x != nil {
		return x.Fault
	}
	return nil
}

func (x *RebuildServerResp_Servers) GetProgress() uint32 {
	if x != nil {
		return x.Progress
	}
	return 0
}

func (x *RebuildServerResp_Servers) GetSecurityGroups() []*RebuildServerResp_SecurityGroups {
	if x != nil {
		return x.SecurityGroups
	}
	return nil
}

func (x *RebuildServerResp_Servers) GetLocked() bool {
	if x != nil {
		return x.Locked
	}
	return false
}

func (x *RebuildServerResp_Servers) GetHostStatus() string {
	if x != nil {
		return x.HostStatus
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *RebuildServerResp_Servers) GetTrustedImageCertificates() string {
	if x != nil {
		return x.TrustedImageCertificates
	}
	return ""
}

func (x *RebuildServerResp_Servers) GetServerGroups() []string {
	if x != nil {
		return x.ServerGroups
	}
	return nil
}

func (x *RebuildServerResp_Servers) GetLockedReason() string {
	if x != nil {
		return x.LockedReason
	}
	return ""
}

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

	FlavorRef        string `protobuf:"bytes,1,opt,name=flavorRef,proto3" json:"flavorRef,omitempty"`
	OS_DCFDiskConfig string `protobuf:"bytes,2,opt,name=OS_DCF_diskConfig,json=OS-DCF:diskConfig,proto3" json:"OS_DCF_diskConfig,omitempty"`
}

func (x *ResizeServerReq_Resize) Reset() {
	*x = ResizeServerReq_Resize{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[262]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ResizeServerReq_Resize) ProtoMessage() {}

func (x *ResizeServerReq_Resize) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[262]
	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 ResizeServerReq_Resize.ProtoReflect.Descriptor instead.
func (*ResizeServerReq_Resize) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{28, 0}
}

func (x *ResizeServerReq_Resize) GetFlavorRef() string {
	if x != nil {
		return x.FlavorRef
	}
	return ""
}

func (x *ResizeServerReq_Resize) GetOS_DCFDiskConfig() string {
	if x != nil {
		return x.OS_DCFDiskConfig
	}
	return ""
}

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

	Host map[string]string `protobuf:"bytes,2,rep,name=host,proto3" json:"host,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}

func (x *MigrateServerReq_Migrate) Reset() {
	*x = MigrateServerReq_Migrate{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[264]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MigrateServerReq_Migrate) ProtoMessage() {}

func (x *MigrateServerReq_Migrate) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[264]
	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 MigrateServerReq_Migrate.ProtoReflect.Descriptor instead.
func (*MigrateServerReq_Migrate) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{30, 1}
}

func (x *MigrateServerReq_Migrate) GetHost() map[string]string {
	if x != nil {
		return x.Host
	}
	return nil
}

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

	AdminPass string `protobuf:"bytes,1,opt,name=adminPass,proto3" json:"adminPass,omitempty"`
}

func (x *ChangeAdministrativePasswordReq_Changepassword) Reset() {
	*x = ChangeAdministrativePasswordReq_Changepassword{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[266]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ChangeAdministrativePasswordReq_Changepassword) ProtoMessage() {}

func (x *ChangeAdministrativePasswordReq_Changepassword) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[266]
	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 ChangeAdministrativePasswordReq_Changepassword.ProtoReflect.Descriptor instead.
func (*ChangeAdministrativePasswordReq_Changepassword) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{32, 0}
}

func (x *ChangeAdministrativePasswordReq_Changepassword) GetAdminPass() string {
	if x != nil {
		return x.AdminPass
	}
	return ""
}

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

	AdminPass      string `protobuf:"bytes,2,opt,name=adminPass,proto3" json:"adminPass,omitempty"`
	RescueImageRef string `protobuf:"bytes,3,opt,name=rescue_image_ref,json=rescueImageRef,proto3" json:"rescue_image_ref,omitempty"`
}

func (x *RescueServerReq_Rescue) Reset() {
	*x = RescueServerReq_Rescue{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[267]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RescueServerReq_Rescue) ProtoMessage() {}

func (x *RescueServerReq_Rescue) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[267]
	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 RescueServerReq_Rescue.ProtoReflect.Descriptor instead.
func (*RescueServerReq_Rescue) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{34, 0}
}

func (x *RescueServerReq_Rescue) GetAdminPass() string {
	if x != nil {
		return x.AdminPass
	}
	return ""
}

func (x *RescueServerReq_Rescue) GetRescueImageRef() string {
	if x != nil {
		return x.RescueImageRef
	}
	return ""
}

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

	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
}

func (x *AddSecurityGroupToServerReq_AddSecurityGroup) Reset() {
	*x = AddSecurityGroupToServerReq_AddSecurityGroup{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[273]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AddSecurityGroupToServerReq_AddSecurityGroup) ProtoMessage() {}

func (x *AddSecurityGroupToServerReq_AddSecurityGroup) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[273]
	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 AddSecurityGroupToServerReq_AddSecurityGroup.ProtoReflect.Descriptor instead.
func (*AddSecurityGroupToServerReq_AddSecurityGroup) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{46, 0}
}

func (x *AddSecurityGroupToServerReq_AddSecurityGroup) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

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

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

func (x *RemoveSecurityGroupReq_RemoveSecurityGroup) Reset() {
	*x = RemoveSecurityGroupReq_RemoveSecurityGroup{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[274]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RemoveSecurityGroupReq_RemoveSecurityGroup) ProtoMessage() {}

func (x *RemoveSecurityGroupReq_RemoveSecurityGroup) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[274]
	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 RemoveSecurityGroupReq_RemoveSecurityGroup.ProtoReflect.Descriptor instead.
func (*RemoveSecurityGroupReq_RemoveSecurityGroup) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{48, 0}
}

func (x *RemoveSecurityGroupReq_RemoveSecurityGroup) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

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

	Name                     string                            `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Description              string                            `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	Id                       string                            `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	Disk                     int32                             `protobuf:"varint,4,opt,name=disk,proto3" json:"disk,omitempty"`
	Ephemeral                uint32                            `protobuf:"varint,5,opt,name=ephemeral,proto3" json:"ephemeral,omitempty"`
	ExtraSpecs               *ListFlavorsDetailResp_ExtraSpecs `protobuf:"bytes,6,opt,name=extra_specs,json=extraSpecs,proto3" json:"extra_specs,omitempty"`
	OriginalName             string                            `protobuf:"bytes,7,opt,name=original_name,json=originalName,proto3" json:"original_name,omitempty"`
	Ram                      int32                             `protobuf:"varint,8,opt,name=ram,proto3" json:"ram,omitempty"`
	Swap                     int32                             `protobuf:"varint,9,opt,name=swap,proto3" json:"swap,omitempty"`
	Vcpus                    int32                             `protobuf:"varint,10,opt,name=vcpus,proto3" json:"vcpus,omitempty"`
	Links                    []*ListFlavorsDetailResp_Links    `protobuf:"bytes,11,rep,name=links,proto3" json:"links,omitempty"`
	OS_FLV_EXT_DATAEphemeral string                            `protobuf:"bytes,12,opt,name=OS_FLV_EXT_DATA_ephemeral,json=OS-FLV-EXT-DATA:ephemeral,proto3" json:"OS_FLV_EXT_DATA_ephemeral,omitempty"`
	OS_FLV_DISABLEDDisabled  string                            `protobuf:"bytes,13,opt,name=OS_FLV_DISABLED_disabled,json=OS-FLV-DISABLED:disabled,proto3" json:"OS_FLV_DISABLED_disabled,omitempty"`
	RxtxFactor               float32                           `protobuf:"fixed32,15,opt,name=rxtx_factor,json=rxtxFactor,proto3" json:"rxtx_factor,omitempty"`
	OsFlavorAccessIsPublic   bool                              `protobuf:"varint,16,opt,name=os_flavor_access_is_public,json=os-flavor-access:is_public,proto3" json:"os_flavor_access_is_public,omitempty"`
}

func (x *ListFlavorsDetailResp_Flavor) Reset() {
	*x = ListFlavorsDetailResp_Flavor{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[275]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFlavorsDetailResp_Flavor) ProtoMessage() {}

func (x *ListFlavorsDetailResp_Flavor) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[275]
	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 ListFlavorsDetailResp_Flavor.ProtoReflect.Descriptor instead.
func (*ListFlavorsDetailResp_Flavor) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{51, 0}
}

func (x *ListFlavorsDetailResp_Flavor) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListFlavorsDetailResp_Flavor) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListFlavorsDetailResp_Flavor) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListFlavorsDetailResp_Flavor) GetDisk() int32 {
	if x != nil {
		return x.Disk
	}
	return 0
}

func (x *ListFlavorsDetailResp_Flavor) GetEphemeral() uint32 {
	if x != nil {
		return x.Ephemeral
	}
	return 0
}

func (x *ListFlavorsDetailResp_Flavor) GetExtraSpecs() *ListFlavorsDetailResp_ExtraSpecs {
	if x != nil {
		return x.ExtraSpecs
	}
	return nil
}

func (x *ListFlavorsDetailResp_Flavor) GetOriginalName() string {
	if x != nil {
		return x.OriginalName
	}
	return ""
}

func (x *ListFlavorsDetailResp_Flavor) GetRam() int32 {
	if x != nil {
		return x.Ram
	}
	return 0
}

func (x *ListFlavorsDetailResp_Flavor) GetSwap() int32 {
	if x != nil {
		return x.Swap
	}
	return 0
}

func (x *ListFlavorsDetailResp_Flavor) GetVcpus() int32 {
	if x != nil {
		return x.Vcpus
	}
	return 0
}

func (x *ListFlavorsDetailResp_Flavor) GetLinks() []*ListFlavorsDetailResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *ListFlavorsDetailResp_Flavor) GetOS_FLV_EXT_DATAEphemeral() string {
	if x != nil {
		return x.OS_FLV_EXT_DATAEphemeral
	}
	return ""
}

func (x *ListFlavorsDetailResp_Flavor) GetOS_FLV_DISABLEDDisabled() string {
	if x != nil {
		return x.OS_FLV_DISABLEDDisabled
	}
	return ""
}

func (x *ListFlavorsDetailResp_Flavor) GetRxtxFactor() float32 {
	if x != nil {
		return x.RxtxFactor
	}
	return 0
}

func (x *ListFlavorsDetailResp_Flavor) GetOsFlavorAccessIsPublic() bool {
	if x != nil {
		return x.OsFlavorAccessIsPublic
	}
	return false
}

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

func (x *ListFlavorsDetailResp_ExtraSpecs) Reset() {
	*x = ListFlavorsDetailResp_ExtraSpecs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[276]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFlavorsDetailResp_ExtraSpecs) ProtoMessage() {}

func (x *ListFlavorsDetailResp_ExtraSpecs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[276]
	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 ListFlavorsDetailResp_ExtraSpecs.ProtoReflect.Descriptor instead.
func (*ListFlavorsDetailResp_ExtraSpecs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{51, 1}
}

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

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *ListFlavorsDetailResp_Links) Reset() {
	*x = ListFlavorsDetailResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[277]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListFlavorsDetailResp_Links) ProtoMessage() {}

func (x *ListFlavorsDetailResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[277]
	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 ListFlavorsDetailResp_Links.ProtoReflect.Descriptor instead.
func (*ListFlavorsDetailResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{51, 2}
}

func (x *ListFlavorsDetailResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *ListFlavorsDetailResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

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

	Name        string  `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Ram         uint32  `protobuf:"varint,2,opt,name=ram,proto3" json:"ram,omitempty"`
	Vcpus       uint32  `protobuf:"varint,3,opt,name=vcpus,proto3" json:"vcpus,omitempty"`
	Disk        uint32  `protobuf:"varint,4,opt,name=disk,proto3" json:"disk,omitempty"`
	Id          string  `protobuf:"bytes,5,opt,name=id,proto3" json:"id,omitempty"`
	RxtxFactor  float64 `protobuf:"fixed64,6,opt,name=rxtx_factor,json=rxtxFactor,proto3" json:"rxtx_factor,omitempty"`
	Description string  `protobuf:"bytes,7,opt,name=description,proto3" json:"description,omitempty"`
}

func (x *CreateFlavorReq_Flavor) Reset() {
	*x = CreateFlavorReq_Flavor{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[278]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFlavorReq_Flavor) ProtoMessage() {}

func (x *CreateFlavorReq_Flavor) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[278]
	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 CreateFlavorReq_Flavor.ProtoReflect.Descriptor instead.
func (*CreateFlavorReq_Flavor) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{52, 0}
}

func (x *CreateFlavorReq_Flavor) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateFlavorReq_Flavor) GetRam() uint32 {
	if x != nil {
		return x.Ram
	}
	return 0
}

func (x *CreateFlavorReq_Flavor) GetVcpus() uint32 {
	if x != nil {
		return x.Vcpus
	}
	return 0
}

func (x *CreateFlavorReq_Flavor) GetDisk() uint32 {
	if x != nil {
		return x.Disk
	}
	return 0
}

func (x *CreateFlavorReq_Flavor) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateFlavorReq_Flavor) GetRxtxFactor() float64 {
	if x != nil {
		return x.RxtxFactor
	}
	return 0
}

func (x *CreateFlavorReq_Flavor) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

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

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *CreateFlavorResp_Links) Reset() {
	*x = CreateFlavorResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[279]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFlavorResp_Links) ProtoMessage() {}

func (x *CreateFlavorResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[279]
	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 CreateFlavorResp_Links.ProtoReflect.Descriptor instead.
func (*CreateFlavorResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{53, 0}
}

func (x *CreateFlavorResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *CreateFlavorResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

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

func (x *CreateFlavorResp_ExtraSpecs) Reset() {
	*x = CreateFlavorResp_ExtraSpecs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[280]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFlavorResp_ExtraSpecs) ProtoMessage() {}

func (x *CreateFlavorResp_ExtraSpecs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[280]
	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 CreateFlavorResp_ExtraSpecs.ProtoReflect.Descriptor instead.
func (*CreateFlavorResp_ExtraSpecs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{53, 1}
}

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

	OS_FLV_DISABLEDDisabled  bool                         `protobuf:"varint,1,opt,name=OS_FLV_DISABLED_disabled,json=OS-FLV-DISABLED:disabled,proto3" json:"OS_FLV_DISABLED_disabled,omitempty"`
	Disk                     uint32                       `protobuf:"varint,2,opt,name=disk,proto3" json:"disk,omitempty"`
	OS_FLV_EXT_DATAEphemeral uint32                       `protobuf:"varint,3,opt,name=OS_FLV_EXT_DATA_ephemeral,json=OS-FLV-EXT-DATA:ephemeral,proto3" json:"OS_FLV_EXT_DATA_ephemeral,omitempty"`
	OsFlavorAccessIsPublic   bool                         `protobuf:"varint,4,opt,name=os_flavor_access_is_public,json=os-flavor-access:is_public,proto3" json:"os_flavor_access_is_public,omitempty"`
	Id                       string                       `protobuf:"bytes,5,opt,name=id,proto3" json:"id,omitempty"`
	Links                    []*CreateFlavorResp_Links    `protobuf:"bytes,6,rep,name=links,proto3" json:"links,omitempty"`
	Name                     string                       `protobuf:"bytes,7,opt,name=name,proto3" json:"name,omitempty"`
	Ram                      uint32                       `protobuf:"varint,8,opt,name=ram,proto3" json:"ram,omitempty"`
	Swap                     uint32                       `protobuf:"varint,9,opt,name=swap,proto3" json:"swap,omitempty"`
	RxtxFactor               float64                      `protobuf:"fixed64,10,opt,name=rxtx_factor,json=rxtxFactor,proto3" json:"rxtx_factor,omitempty"`
	Vcpus                    uint32                       `protobuf:"varint,11,opt,name=vcpus,proto3" json:"vcpus,omitempty"`
	Description              string                       `protobuf:"bytes,12,opt,name=description,proto3" json:"description,omitempty"`
	ExtraSpecs               *CreateFlavorResp_ExtraSpecs `protobuf:"bytes,13,opt,name=extra_specs,json=extraSpecs,proto3" json:"extra_specs,omitempty"`
}

func (x *CreateFlavorResp_Flavor) Reset() {
	*x = CreateFlavorResp_Flavor{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[281]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateFlavorResp_Flavor) ProtoMessage() {}

func (x *CreateFlavorResp_Flavor) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[281]
	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 CreateFlavorResp_Flavor.ProtoReflect.Descriptor instead.
func (*CreateFlavorResp_Flavor) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{53, 2}
}

func (x *CreateFlavorResp_Flavor) GetOS_FLV_DISABLEDDisabled() bool {
	if x != nil {
		return x.OS_FLV_DISABLEDDisabled
	}
	return false
}

func (x *CreateFlavorResp_Flavor) GetDisk() uint32 {
	if x != nil {
		return x.Disk
	}
	return 0
}

func (x *CreateFlavorResp_Flavor) GetOS_FLV_EXT_DATAEphemeral() uint32 {
	if x != nil {
		return x.OS_FLV_EXT_DATAEphemeral
	}
	return 0
}

func (x *CreateFlavorResp_Flavor) GetOsFlavorAccessIsPublic() bool {
	if x != nil {
		return x.OsFlavorAccessIsPublic
	}
	return false
}

func (x *CreateFlavorResp_Flavor) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateFlavorResp_Flavor) GetLinks() []*CreateFlavorResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *CreateFlavorResp_Flavor) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateFlavorResp_Flavor) GetRam() uint32 {
	if x != nil {
		return x.Ram
	}
	return 0
}

func (x *CreateFlavorResp_Flavor) GetSwap() uint32 {
	if x != nil {
		return x.Swap
	}
	return 0
}

func (x *CreateFlavorResp_Flavor) GetRxtxFactor() float64 {
	if x != nil {
		return x.RxtxFactor
	}
	return 0
}

func (x *CreateFlavorResp_Flavor) GetVcpus() uint32 {
	if x != nil {
		return x.Vcpus
	}
	return 0
}

func (x *CreateFlavorResp_Flavor) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateFlavorResp_Flavor) GetExtraSpecs() *CreateFlavorResp_ExtraSpecs {
	if x != nil {
		return x.ExtraSpecs
	}
	return nil
}

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

	Start string `protobuf:"bytes,1,opt,name=start,proto3" json:"start,omitempty"`
	End   string `protobuf:"bytes,2,opt,name=end,proto3" json:"end,omitempty"`
}

func (x *ListSubnetsResp_AllocationPools) Reset() {
	*x = ListSubnetsResp_AllocationPools{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[282]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListSubnetsResp_AllocationPools) ProtoMessage() {}

func (x *ListSubnetsResp_AllocationPools) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[282]
	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 ListSubnetsResp_AllocationPools.ProtoReflect.Descriptor instead.
func (*ListSubnetsResp_AllocationPools) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{75, 0}
}

func (x *ListSubnetsResp_AllocationPools) GetStart() string {
	if x != nil {
		return x.Start
	}
	return ""
}

func (x *ListSubnetsResp_AllocationPools) GetEnd() string {
	if x != nil {
		return x.End
	}
	return ""
}

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

	Name              string                             `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	EnableDhcp        bool                               `protobuf:"varint,2,opt,name=enable_dhcp,json=enableDhcp,proto3" json:"enable_dhcp,omitempty"`
	NetworkId         string                             `protobuf:"bytes,3,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	SegmentId         string                             `protobuf:"bytes,4,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"`
	ProjectId         string                             `protobuf:"bytes,5,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId          string                             `protobuf:"bytes,6,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	DnsNameservers    []string                           `protobuf:"bytes,7,rep,name=dns_nameservers,json=dnsNameservers,proto3" json:"dns_nameservers,omitempty"`
	DnsPublishFixedIp bool                               `protobuf:"varint,8,opt,name=dns_publish_fixed_ip,json=dnsPublishFixedIp,proto3" json:"dns_publish_fixed_ip,omitempty"`
	AllocationPools   []*ListSubnetsResp_AllocationPools `protobuf:"bytes,9,rep,name=allocation_pools,json=allocationPools,proto3" json:"allocation_pools,omitempty"`
	HostRoutes        []string                           `protobuf:"bytes,10,rep,name=host_routes,json=hostRoutes,proto3" json:"host_routes,omitempty"`
	IpVersion         uint32                             `protobuf:"varint,11,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`
	GatewayIp         string                             `protobuf:"bytes,12,opt,name=gateway_ip,json=gatewayIp,proto3" json:"gateway_ip,omitempty"`
	Cidr              string                             `protobuf:"bytes,13,opt,name=cidr,proto3" json:"cidr,omitempty"`
	Id                string                             `protobuf:"bytes,14,opt,name=id,proto3" json:"id,omitempty"`
	CreatedAt         int64                              `protobuf:"varint,15,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Description       string                             `protobuf:"bytes,16,opt,name=description,proto3" json:"description,omitempty"`
	Ipv6AddressMode   string                             `protobuf:"bytes,17,opt,name=ipv6_address_mode,json=ipv6AddressMode,proto3" json:"ipv6_address_mode,omitempty"`
	Ipv6RaMode        string                             `protobuf:"bytes,18,opt,name=ipv6_ra_mode,json=ipv6RaMode,proto3" json:"ipv6_ra_mode,omitempty"`
	RevisionNumber    uint32                             `protobuf:"varint,19,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	ServiceTypes      []string                           `protobuf:"bytes,20,rep,name=service_types,json=serviceTypes,proto3" json:"service_types,omitempty"`
	SubnetpoolId      string                             `protobuf:"bytes,21,opt,name=subnetpool_id,json=subnetpoolId,proto3" json:"subnetpool_id,omitempty"`
	Tags              []string                           `protobuf:"bytes,22,rep,name=tags,proto3" json:"tags,omitempty"`
	UpdatedAt         int64                              `protobuf:"varint,23,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
}

func (x *ListSubnetsResp_Subnets) Reset() {
	*x = ListSubnetsResp_Subnets{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[283]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListSubnetsResp_Subnets) ProtoMessage() {}

func (x *ListSubnetsResp_Subnets) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[283]
	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 ListSubnetsResp_Subnets.ProtoReflect.Descriptor instead.
func (*ListSubnetsResp_Subnets) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{75, 1}
}

func (x *ListSubnetsResp_Subnets) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetEnableDhcp() bool {
	if x != nil {
		return x.EnableDhcp
	}
	return false
}

func (x *ListSubnetsResp_Subnets) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetSegmentId() string {
	if x != nil {
		return x.SegmentId
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetDnsNameservers() []string {
	if x != nil {
		return x.DnsNameservers
	}
	return nil
}

func (x *ListSubnetsResp_Subnets) GetDnsPublishFixedIp() bool {
	if x != nil {
		return x.DnsPublishFixedIp
	}
	return false
}

func (x *ListSubnetsResp_Subnets) GetAllocationPools() []*ListSubnetsResp_AllocationPools {
	if x != nil {
		return x.AllocationPools
	}
	return nil
}

func (x *ListSubnetsResp_Subnets) GetHostRoutes() []string {
	if x != nil {
		return x.HostRoutes
	}
	return nil
}

func (x *ListSubnetsResp_Subnets) GetIpVersion() uint32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *ListSubnetsResp_Subnets) GetGatewayIp() string {
	if x != nil {
		return x.GatewayIp
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetCidr() string {
	if x != nil {
		return x.Cidr
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ListSubnetsResp_Subnets) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetIpv6AddressMode() string {
	if x != nil {
		return x.Ipv6AddressMode
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetIpv6RaMode() string {
	if x != nil {
		return x.Ipv6RaMode
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ListSubnetsResp_Subnets) GetServiceTypes() []string {
	if x != nil {
		return x.ServiceTypes
	}
	return nil
}

func (x *ListSubnetsResp_Subnets) GetSubnetpoolId() string {
	if x != nil {
		return x.SubnetpoolId
	}
	return ""
}

func (x *ListSubnetsResp_Subnets) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ListSubnetsResp_Subnets) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

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

	Start string `protobuf:"bytes,1,opt,name=start,proto3" json:"start,omitempty"`
	End   string `protobuf:"bytes,2,opt,name=end,proto3" json:"end,omitempty"`
}

func (x *UpdateSubnetResp_AllocationPools) Reset() {
	*x = UpdateSubnetResp_AllocationPools{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[284]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateSubnetResp_AllocationPools) ProtoMessage() {}

func (x *UpdateSubnetResp_AllocationPools) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[284]
	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 UpdateSubnetResp_AllocationPools.ProtoReflect.Descriptor instead.
func (*UpdateSubnetResp_AllocationPools) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{79, 0}
}

func (x *UpdateSubnetResp_AllocationPools) GetStart() string {
	if x != nil {
		return x.Start
	}
	return ""
}

func (x *UpdateSubnetResp_AllocationPools) GetEnd() string {
	if x != nil {
		return x.End
	}
	return ""
}

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

	Name              string                              `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	EnableDhcp        bool                                `protobuf:"varint,2,opt,name=enable_dhcp,json=enableDhcp,proto3" json:"enable_dhcp,omitempty"`
	NetworkId         string                              `protobuf:"bytes,3,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	RevisionNumber    uint32                              `protobuf:"varint,4,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	SegmentId         string                              `protobuf:"bytes,5,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"`
	ProjectId         string                              `protobuf:"bytes,6,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId          string                              `protobuf:"bytes,7,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	CreatedAt         string                              `protobuf:"bytes,8,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	DnsNameservers    []string                            `protobuf:"bytes,9,rep,name=dns_nameservers,json=dnsNameservers,proto3" json:"dns_nameservers,omitempty"`
	DnsPublishFixedIp bool                                `protobuf:"varint,10,opt,name=dns_publish_fixed_ip,json=dnsPublishFixedIp,proto3" json:"dns_publish_fixed_ip,omitempty"`
	ServiceTypes      []string                            `protobuf:"bytes,11,rep,name=service_types,json=serviceTypes,proto3" json:"service_types,omitempty"`
	AllocationPools   []*UpdateSubnetResp_AllocationPools `protobuf:"bytes,12,rep,name=allocation_pools,json=allocationPools,proto3" json:"allocation_pools,omitempty"`
	HostRoutes        []string                            `protobuf:"bytes,13,rep,name=host_routes,json=hostRoutes,proto3" json:"host_routes,omitempty"`
	IpVersion         uint32                              `protobuf:"varint,14,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`
	GatewayIp         string                              `protobuf:"bytes,15,opt,name=gateway_ip,json=gatewayIp,proto3" json:"gateway_ip,omitempty"`
	Cidr              string                              `protobuf:"bytes,16,opt,name=cidr,proto3" json:"cidr,omitempty"`
	UpdatedAt         string                              `protobuf:"bytes,17,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Id                string                              `protobuf:"bytes,18,opt,name=id,proto3" json:"id,omitempty"`
	Description       string                              `protobuf:"bytes,19,opt,name=description,proto3" json:"description,omitempty"`
	Tags              []string                            `protobuf:"bytes,20,rep,name=tags,proto3" json:"tags,omitempty"`
}

func (x *UpdateSubnetResp_Subnet) Reset() {
	*x = UpdateSubnetResp_Subnet{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[285]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateSubnetResp_Subnet) ProtoMessage() {}

func (x *UpdateSubnetResp_Subnet) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[285]
	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 UpdateSubnetResp_Subnet.ProtoReflect.Descriptor instead.
func (*UpdateSubnetResp_Subnet) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{79, 1}
}

func (x *UpdateSubnetResp_Subnet) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateSubnetResp_Subnet) GetEnableDhcp() bool {
	if x != nil {
		return x.EnableDhcp
	}
	return false
}

func (x *UpdateSubnetResp_Subnet) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *UpdateSubnetResp_Subnet) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *UpdateSubnetResp_Subnet) GetSegmentId() string {
	if x != nil {
		return x.SegmentId
	}
	return ""
}

func (x *UpdateSubnetResp_Subnet) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *UpdateSubnetResp_Subnet) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *UpdateSubnetResp_Subnet) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *UpdateSubnetResp_Subnet) GetDnsNameservers() []string {
	if x != nil {
		return x.DnsNameservers
	}
	return nil
}

func (x *UpdateSubnetResp_Subnet) GetDnsPublishFixedIp() bool {
	if x != nil {
		return x.DnsPublishFixedIp
	}
	return false
}

func (x *UpdateSubnetResp_Subnet) GetServiceTypes() []string {
	if x != nil {
		return x.ServiceTypes
	}
	return nil
}

func (x *UpdateSubnetResp_Subnet) GetAllocationPools() []*UpdateSubnetResp_AllocationPools {
	if x != nil {
		return x.AllocationPools
	}
	return nil
}

func (x *UpdateSubnetResp_Subnet) GetHostRoutes() []string {
	if x != nil {
		return x.HostRoutes
	}
	return nil
}

func (x *UpdateSubnetResp_Subnet) GetIpVersion() uint32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *UpdateSubnetResp_Subnet) GetGatewayIp() string {
	if x != nil {
		return x.GatewayIp
	}
	return ""
}

func (x *UpdateSubnetResp_Subnet) GetCidr() string {
	if x != nil {
		return x.Cidr
	}
	return ""
}

func (x *UpdateSubnetResp_Subnet) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *UpdateSubnetResp_Subnet) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateSubnetResp_Subnet) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdateSubnetResp_Subnet) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

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

	Name            string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Description     string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	Shared          bool   `protobuf:"varint,3,opt,name=shared,proto3" json:"shared,omitempty"`
	ProjectId       string `protobuf:"bytes,4,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	NetworkType     string `protobuf:"bytes,5,opt,name=network_type,json=networkType,proto3" json:"network_type,omitempty"`
	PhysicalNetwork string `protobuf:"bytes,6,opt,name=physical_network,json=physicalNetwork,proto3" json:"physical_network,omitempty"`
	Minimum         uint32 `protobuf:"varint,7,opt,name=minimum,proto3" json:"minimum,omitempty"`
	Maximum         uint32 `protobuf:"varint,8,opt,name=maximum,proto3" json:"maximum,omitempty"`
}

func (x *CreateNetworkSegmentRangeReq_NetworkSegmentRange) Reset() {
	*x = CreateNetworkSegmentRangeReq_NetworkSegmentRange{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[286]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateNetworkSegmentRangeReq_NetworkSegmentRange) ProtoMessage() {}

func (x *CreateNetworkSegmentRangeReq_NetworkSegmentRange) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[286]
	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 CreateNetworkSegmentRangeReq_NetworkSegmentRange.ProtoReflect.Descriptor instead.
func (*CreateNetworkSegmentRangeReq_NetworkSegmentRange) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{80, 0}
}

func (x *CreateNetworkSegmentRangeReq_NetworkSegmentRange) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateNetworkSegmentRangeReq_NetworkSegmentRange) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateNetworkSegmentRangeReq_NetworkSegmentRange) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *CreateNetworkSegmentRangeReq_NetworkSegmentRange) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateNetworkSegmentRangeReq_NetworkSegmentRange) GetNetworkType() string {
	if x != nil {
		return x.NetworkType
	}
	return ""
}

func (x *CreateNetworkSegmentRangeReq_NetworkSegmentRange) GetPhysicalNetwork() string {
	if x != nil {
		return x.PhysicalNetwork
	}
	return ""
}

func (x *CreateNetworkSegmentRangeReq_NetworkSegmentRange) GetMinimum() uint32 {
	if x != nil {
		return x.Minimum
	}
	return 0
}

func (x *CreateNetworkSegmentRangeReq_NetworkSegmentRange) GetMaximum() uint32 {
	if x != nil {
		return x.Maximum
	}
	return 0
}

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

func (x *CreateNetworkSegmentRangeResp_Used) Reset() {
	*x = CreateNetworkSegmentRangeResp_Used{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[287]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateNetworkSegmentRangeResp_Used) ProtoMessage() {}

func (x *CreateNetworkSegmentRangeResp_Used) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[287]
	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 CreateNetworkSegmentRangeResp_Used.ProtoReflect.Descriptor instead.
func (*CreateNetworkSegmentRangeResp_Used) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{81, 0}
}

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

	Id              string                              `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name            string                              `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Description     string                              `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	Default         bool                                `protobuf:"varint,4,opt,name=default,proto3" json:"default,omitempty"`
	Shared          bool                                `protobuf:"varint,5,opt,name=shared,proto3" json:"shared,omitempty"`
	TenantId        string                              `protobuf:"bytes,6,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ProjectId       string                              `protobuf:"bytes,7,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	NetworkType     string                              `protobuf:"bytes,8,opt,name=network_type,json=networkType,proto3" json:"network_type,omitempty"`
	PhysicalNetwork string                              `protobuf:"bytes,9,opt,name=physical_network,json=physicalNetwork,proto3" json:"physical_network,omitempty"`
	Minimum         uint32                              `protobuf:"varint,10,opt,name=minimum,proto3" json:"minimum,omitempty"`
	Maximum         uint32                              `protobuf:"varint,11,opt,name=maximum,proto3" json:"maximum,omitempty"`
	Available       []uint32                            `protobuf:"varint,12,rep,packed,name=available,proto3" json:"available,omitempty"`
	Used            *CreateNetworkSegmentRangeResp_Used `protobuf:"bytes,13,opt,name=used,proto3" json:"used,omitempty"`
	CreatedAt       int64                               `protobuf:"varint,14,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt       int64                               `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RevisionNumber  uint32                              `protobuf:"varint,16,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Tags            []string                            `protobuf:"bytes,17,rep,name=tags,proto3" json:"tags,omitempty"`
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) Reset() {
	*x = CreateNetworkSegmentRangeResp_NetworkSegmentRange{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[288]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateNetworkSegmentRangeResp_NetworkSegmentRange) ProtoMessage() {}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[288]
	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 CreateNetworkSegmentRangeResp_NetworkSegmentRange.ProtoReflect.Descriptor instead.
func (*CreateNetworkSegmentRangeResp_NetworkSegmentRange) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{81, 1}
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetDefault() bool {
	if x != nil {
		return x.Default
	}
	return false
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetNetworkType() string {
	if x != nil {
		return x.NetworkType
	}
	return ""
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetPhysicalNetwork() string {
	if x != nil {
		return x.PhysicalNetwork
	}
	return ""
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetMinimum() uint32 {
	if x != nil {
		return x.Minimum
	}
	return 0
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetMaximum() uint32 {
	if x != nil {
		return x.Maximum
	}
	return 0
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetAvailable() []uint32 {
	if x != nil {
		return x.Available
	}
	return nil
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetUsed() *CreateNetworkSegmentRangeResp_Used {
	if x != nil {
		return x.Used
	}
	return nil
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *CreateNetworkSegmentRangeResp_NetworkSegmentRange) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

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

func (x *ListNetworkSegmentRangesResp_Used) Reset() {
	*x = ListNetworkSegmentRangesResp_Used{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[289]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListNetworkSegmentRangesResp_Used) ProtoMessage() {}

func (x *ListNetworkSegmentRangesResp_Used) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[289]
	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 ListNetworkSegmentRangesResp_Used.ProtoReflect.Descriptor instead.
func (*ListNetworkSegmentRangesResp_Used) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{83, 0}
}

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

	Id              string                             `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name            string                             `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Description     string                             `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	Default         bool                               `protobuf:"varint,4,opt,name=default,proto3" json:"default,omitempty"`
	Shared          bool                               `protobuf:"varint,5,opt,name=shared,proto3" json:"shared,omitempty"`
	TenantId        string                             `protobuf:"bytes,6,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ProjectId       string                             `protobuf:"bytes,7,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	NetworkType     string                             `protobuf:"bytes,8,opt,name=network_type,json=networkType,proto3" json:"network_type,omitempty"`
	PhysicalNetwork string                             `protobuf:"bytes,9,opt,name=physical_network,json=physicalNetwork,proto3" json:"physical_network,omitempty"`
	Minimum         uint32                             `protobuf:"varint,10,opt,name=minimum,proto3" json:"minimum,omitempty"`
	Maximum         uint32                             `protobuf:"varint,11,opt,name=maximum,proto3" json:"maximum,omitempty"`
	Available       []uint32                           `protobuf:"varint,12,rep,packed,name=available,proto3" json:"available,omitempty"`
	Used            *ListNetworkSegmentRangesResp_Used `protobuf:"bytes,13,opt,name=used,proto3" json:"used,omitempty"`
	CreatedAt       int64                              `protobuf:"varint,14,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt       int64                              `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RevisionNumber  uint32                             `protobuf:"varint,16,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Tags            []string                           `protobuf:"bytes,17,rep,name=tags,proto3" json:"tags,omitempty"`
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) Reset() {
	*x = ListNetworkSegmentRangesResp_NetworkSegmentRanges{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[290]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListNetworkSegmentRangesResp_NetworkSegmentRanges) ProtoMessage() {}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[290]
	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 ListNetworkSegmentRangesResp_NetworkSegmentRanges.ProtoReflect.Descriptor instead.
func (*ListNetworkSegmentRangesResp_NetworkSegmentRanges) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{83, 1}
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetDefault() bool {
	if x != nil {
		return x.Default
	}
	return false
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetNetworkType() string {
	if x != nil {
		return x.NetworkType
	}
	return ""
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetPhysicalNetwork() string {
	if x != nil {
		return x.PhysicalNetwork
	}
	return ""
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetMinimum() uint32 {
	if x != nil {
		return x.Minimum
	}
	return 0
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetMaximum() uint32 {
	if x != nil {
		return x.Maximum
	}
	return 0
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetAvailable() []uint32 {
	if x != nil {
		return x.Available
	}
	return nil
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetUsed() *ListNetworkSegmentRangesResp_Used {
	if x != nil {
		return x.Used
	}
	return nil
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ListNetworkSegmentRangesResp_NetworkSegmentRanges) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

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

	Id              string                              `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name            string                              `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Description     string                              `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	Default         bool                                `protobuf:"varint,4,opt,name=default,proto3" json:"default,omitempty"`
	Shared          bool                                `protobuf:"varint,5,opt,name=shared,proto3" json:"shared,omitempty"`
	TenantId        string                              `protobuf:"bytes,6,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ProjectId       string                              `protobuf:"bytes,7,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	NetworkType     string                              `protobuf:"bytes,8,opt,name=network_type,json=networkType,proto3" json:"network_type,omitempty"`
	PhysicalNetwork string                              `protobuf:"bytes,9,opt,name=physical_network,json=physicalNetwork,proto3" json:"physical_network,omitempty"`
	Minimum         uint32                              `protobuf:"varint,10,opt,name=minimum,proto3" json:"minimum,omitempty"`
	Maximum         uint32                              `protobuf:"varint,11,opt,name=maximum,proto3" json:"maximum,omitempty"`
	Available       []uint32                            `protobuf:"varint,12,rep,packed,name=available,proto3" json:"available,omitempty"`
	Used            *UpdateNetworkSegmentRangesReq_Used `protobuf:"bytes,13,opt,name=used,proto3" json:"used,omitempty"`
	CreatedAt       int64                               `protobuf:"varint,14,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt       int64                               `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RevisionNumber  uint32                              `protobuf:"varint,16,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Tags            []string                            `protobuf:"bytes,17,rep,name=tags,proto3" json:"tags,omitempty"`
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) Reset() {
	*x = UpdateNetworkSegmentRangesReq_NetworkSegmentRanges{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[291]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) ProtoMessage() {}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[291]
	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 UpdateNetworkSegmentRangesReq_NetworkSegmentRanges.ProtoReflect.Descriptor instead.
func (*UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{86, 0}
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetDefault() bool {
	if x != nil {
		return x.Default
	}
	return false
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetNetworkType() string {
	if x != nil {
		return x.NetworkType
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetPhysicalNetwork() string {
	if x != nil {
		return x.PhysicalNetwork
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetMinimum() uint32 {
	if x != nil {
		return x.Minimum
	}
	return 0
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetMaximum() uint32 {
	if x != nil {
		return x.Maximum
	}
	return 0
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetAvailable() []uint32 {
	if x != nil {
		return x.Available
	}
	return nil
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetUsed() *UpdateNetworkSegmentRangesReq_Used {
	if x != nil {
		return x.Used
	}
	return nil
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *UpdateNetworkSegmentRangesReq_NetworkSegmentRanges) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

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

func (x *UpdateNetworkSegmentRangesReq_Used) Reset() {
	*x = UpdateNetworkSegmentRangesReq_Used{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[292]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateNetworkSegmentRangesReq_Used) ProtoMessage() {}

func (x *UpdateNetworkSegmentRangesReq_Used) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[292]
	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 UpdateNetworkSegmentRangesReq_Used.ProtoReflect.Descriptor instead.
func (*UpdateNetworkSegmentRangesReq_Used) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{86, 1}
}

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

func (x *UpdateNetworkSegmentRangesResp_Used) Reset() {
	*x = UpdateNetworkSegmentRangesResp_Used{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[293]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateNetworkSegmentRangesResp_Used) ProtoMessage() {}

func (x *UpdateNetworkSegmentRangesResp_Used) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[293]
	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 UpdateNetworkSegmentRangesResp_Used.ProtoReflect.Descriptor instead.
func (*UpdateNetworkSegmentRangesResp_Used) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{87, 0}
}

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

	Id              string                               `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name            string                               `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Description     string                               `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	Default         bool                                 `protobuf:"varint,4,opt,name=default,proto3" json:"default,omitempty"`
	Shared          bool                                 `protobuf:"varint,5,opt,name=shared,proto3" json:"shared,omitempty"`
	TenantId        string                               `protobuf:"bytes,6,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ProjectId       string                               `protobuf:"bytes,7,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	NetworkType     string                               `protobuf:"bytes,8,opt,name=network_type,json=networkType,proto3" json:"network_type,omitempty"`
	PhysicalNetwork string                               `protobuf:"bytes,9,opt,name=physical_network,json=physicalNetwork,proto3" json:"physical_network,omitempty"`
	Minimum         uint32                               `protobuf:"varint,10,opt,name=minimum,proto3" json:"minimum,omitempty"`
	Maximum         uint32                               `protobuf:"varint,11,opt,name=maximum,proto3" json:"maximum,omitempty"`
	Available       []uint32                             `protobuf:"varint,12,rep,packed,name=available,proto3" json:"available,omitempty"`
	Used            *UpdateNetworkSegmentRangesResp_Used `protobuf:"bytes,13,opt,name=used,proto3" json:"used,omitempty"`
	CreatedAt       int64                                `protobuf:"varint,14,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt       int64                                `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RevisionNumber  uint32                               `protobuf:"varint,16,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Tags            []string                             `protobuf:"bytes,17,rep,name=tags,proto3" json:"tags,omitempty"`
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) Reset() {
	*x = UpdateNetworkSegmentRangesResp_NetworkSegmentRange{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[294]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateNetworkSegmentRangesResp_NetworkSegmentRange) ProtoMessage() {}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[294]
	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 UpdateNetworkSegmentRangesResp_NetworkSegmentRange.ProtoReflect.Descriptor instead.
func (*UpdateNetworkSegmentRangesResp_NetworkSegmentRange) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{87, 1}
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetDefault() bool {
	if x != nil {
		return x.Default
	}
	return false
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetNetworkType() string {
	if x != nil {
		return x.NetworkType
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetPhysicalNetwork() string {
	if x != nil {
		return x.PhysicalNetwork
	}
	return ""
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetMinimum() uint32 {
	if x != nil {
		return x.Minimum
	}
	return 0
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetMaximum() uint32 {
	if x != nil {
		return x.Maximum
	}
	return 0
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetAvailable() []uint32 {
	if x != nil {
		return x.Available
	}
	return nil
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetUsed() *UpdateNetworkSegmentRangesResp_Used {
	if x != nil {
		return x.Used
	}
	return nil
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *UpdateNetworkSegmentRangesResp_NetworkSegmentRange) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

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

func (x *ShowNetworkSegmentRangeDetailsResp_Used) Reset() {
	*x = ShowNetworkSegmentRangeDetailsResp_Used{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[295]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowNetworkSegmentRangeDetailsResp_Used) ProtoMessage() {}

func (x *ShowNetworkSegmentRangeDetailsResp_Used) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[295]
	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 ShowNetworkSegmentRangeDetailsResp_Used.ProtoReflect.Descriptor instead.
func (*ShowNetworkSegmentRangeDetailsResp_Used) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{89, 0}
}

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

	Id              string                                   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name            string                                   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Description     string                                   `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	Default         bool                                     `protobuf:"varint,4,opt,name=default,proto3" json:"default,omitempty"`
	Shared          bool                                     `protobuf:"varint,5,opt,name=shared,proto3" json:"shared,omitempty"`
	TenantId        string                                   `protobuf:"bytes,6,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ProjectId       string                                   `protobuf:"bytes,7,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	NetworkType     string                                   `protobuf:"bytes,8,opt,name=network_type,json=networkType,proto3" json:"network_type,omitempty"`
	PhysicalNetwork string                                   `protobuf:"bytes,9,opt,name=physical_network,json=physicalNetwork,proto3" json:"physical_network,omitempty"`
	Minimum         uint32                                   `protobuf:"varint,10,opt,name=minimum,proto3" json:"minimum,omitempty"`
	Maximum         uint32                                   `protobuf:"varint,11,opt,name=maximum,proto3" json:"maximum,omitempty"`
	Available       []uint32                                 `protobuf:"varint,12,rep,packed,name=available,proto3" json:"available,omitempty"`
	Used            *ShowNetworkSegmentRangeDetailsResp_Used `protobuf:"bytes,13,opt,name=used,proto3" json:"used,omitempty"`
	CreatedAt       int64                                    `protobuf:"varint,14,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt       int64                                    `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RevisionNumber  uint32                                   `protobuf:"varint,16,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Tags            []string                                 `protobuf:"bytes,17,rep,name=tags,proto3" json:"tags,omitempty"`
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) Reset() {
	*x = ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[296]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) ProtoMessage() {}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[296]
	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 ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange.ProtoReflect.Descriptor instead.
func (*ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{89, 1}
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetDefault() bool {
	if x != nil {
		return x.Default
	}
	return false
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetNetworkType() string {
	if x != nil {
		return x.NetworkType
	}
	return ""
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetPhysicalNetwork() string {
	if x != nil {
		return x.PhysicalNetwork
	}
	return ""
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetMinimum() uint32 {
	if x != nil {
		return x.Minimum
	}
	return 0
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetMaximum() uint32 {
	if x != nil {
		return x.Maximum
	}
	return 0
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetAvailable() []uint32 {
	if x != nil {
		return x.Available
	}
	return nil
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetUsed() *ShowNetworkSegmentRangeDetailsResp_Used {
	if x != nil {
		return x.Used
	}
	return nil
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

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

	IpAddress  string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	MacAddress string `protobuf:"bytes,2,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
}

func (x *CreatePortReq_AllowedAddressPairs) Reset() {
	*x = CreatePortReq_AllowedAddressPairs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[297]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreatePortReq_AllowedAddressPairs) ProtoMessage() {}

func (x *CreatePortReq_AllowedAddressPairs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[297]
	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 CreatePortReq_AllowedAddressPairs.ProtoReflect.Descriptor instead.
func (*CreatePortReq_AllowedAddressPairs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{90, 0}
}

func (x *CreatePortReq_AllowedAddressPairs) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *CreatePortReq_AllowedAddressPairs) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

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

	AdminStateUp          bool                                 `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	DnsDomain             string                               `protobuf:"bytes,2,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	DnsName               string                               `protobuf:"bytes,3,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	Name                  string                               `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"`
	NetworkId             string                               `protobuf:"bytes,5,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	QosPolicyId           string                               `protobuf:"bytes,6,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
	PortSecurityEnabled   bool                                 `protobuf:"varint,7,opt,name=port_security_enabled,json=portSecurityEnabled,proto3" json:"port_security_enabled,omitempty"`
	AllowedAddressPairs   []*CreatePortReq_AllowedAddressPairs `protobuf:"bytes,8,rep,name=allowed_address_pairs,json=allowedAddressPairs,proto3" json:"allowed_address_pairs,omitempty"`
	PropagateUplinkStatus bool                                 `protobuf:"varint,9,opt,name=propagate_uplink_status,json=propagateUplinkStatus,proto3" json:"propagate_uplink_status,omitempty"`
	HardwareOffloadType   string                               `protobuf:"bytes,10,opt,name=hardware_offload_type,json=hardwareOffloadType,proto3" json:"hardware_offload_type,omitempty"`
}

func (x *CreatePortReq_Port) Reset() {
	*x = CreatePortReq_Port{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[298]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreatePortReq_Port) ProtoMessage() {}

func (x *CreatePortReq_Port) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[298]
	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 CreatePortReq_Port.ProtoReflect.Descriptor instead.
func (*CreatePortReq_Port) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{90, 1}
}

func (x *CreatePortReq_Port) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *CreatePortReq_Port) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *CreatePortReq_Port) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

func (x *CreatePortReq_Port) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreatePortReq_Port) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *CreatePortReq_Port) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

func (x *CreatePortReq_Port) GetPortSecurityEnabled() bool {
	if x != nil {
		return x.PortSecurityEnabled
	}
	return false
}

func (x *CreatePortReq_Port) GetAllowedAddressPairs() []*CreatePortReq_AllowedAddressPairs {
	if x != nil {
		return x.AllowedAddressPairs
	}
	return nil
}

func (x *CreatePortReq_Port) GetPropagateUplinkStatus() bool {
	if x != nil {
		return x.PropagateUplinkStatus
	}
	return false
}

func (x *CreatePortReq_Port) GetHardwareOffloadType() string {
	if x != nil {
		return x.HardwareOffloadType
	}
	return ""
}

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

	IpAddress  string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	MacAddress string `protobuf:"bytes,2,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
}

func (x *CreatePortResp_AllowedAddressPairs) Reset() {
	*x = CreatePortResp_AllowedAddressPairs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[299]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreatePortResp_AllowedAddressPairs) ProtoMessage() {}

func (x *CreatePortResp_AllowedAddressPairs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[299]
	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 CreatePortResp_AllowedAddressPairs.ProtoReflect.Descriptor instead.
func (*CreatePortResp_AllowedAddressPairs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{91, 0}
}

func (x *CreatePortResp_AllowedAddressPairs) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *CreatePortResp_AllowedAddressPairs) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

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

	Hostname  string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"`
	IpAddress string `protobuf:"bytes,2,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	Fqdn      string `protobuf:"bytes,3,opt,name=fqdn,proto3" json:"fqdn,omitempty"`
}

func (x *CreatePortResp_DnsAssignment) Reset() {
	*x = CreatePortResp_DnsAssignment{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[300]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreatePortResp_DnsAssignment) ProtoMessage() {}

func (x *CreatePortResp_DnsAssignment) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[300]
	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 CreatePortResp_DnsAssignment.ProtoReflect.Descriptor instead.
func (*CreatePortResp_DnsAssignment) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{91, 1}
}

func (x *CreatePortResp_DnsAssignment) GetHostname() string {
	if x != nil {
		return x.Hostname
	}
	return ""
}

func (x *CreatePortResp_DnsAssignment) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *CreatePortResp_DnsAssignment) GetFqdn() string {
	if x != nil {
		return x.Fqdn
	}
	return ""
}

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

	OptValue  string `protobuf:"bytes,1,opt,name=opt_value,json=optValue,proto3" json:"opt_value,omitempty"`
	IpVersion uint32 `protobuf:"varint,2,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`
	OptName   string `protobuf:"bytes,3,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"`
}

func (x *CreatePortResp_ExtraDhcpOpts) Reset() {
	*x = CreatePortResp_ExtraDhcpOpts{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[301]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreatePortResp_ExtraDhcpOpts) ProtoMessage() {}

func (x *CreatePortResp_ExtraDhcpOpts) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[301]
	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 CreatePortResp_ExtraDhcpOpts.ProtoReflect.Descriptor instead.
func (*CreatePortResp_ExtraDhcpOpts) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{91, 2}
}

func (x *CreatePortResp_ExtraDhcpOpts) GetOptValue() string {
	if x != nil {
		return x.OptValue
	}
	return ""
}

func (x *CreatePortResp_ExtraDhcpOpts) GetIpVersion() uint32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *CreatePortResp_ExtraDhcpOpts) GetOptName() string {
	if x != nil {
		return x.OptName
	}
	return ""
}

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

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *CreatePortResp_FixedIps) Reset() {
	*x = CreatePortResp_FixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[302]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreatePortResp_FixedIps) ProtoMessage() {}

func (x *CreatePortResp_FixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[302]
	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 CreatePortResp_FixedIps.ProtoReflect.Descriptor instead.
func (*CreatePortResp_FixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{91, 3}
}

func (x *CreatePortResp_FixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *CreatePortResp_FixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

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

	AdminStateUp          bool                                  `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	AllowedAddressPairs   []*CreatePortResp_AllowedAddressPairs `protobuf:"bytes,2,rep,name=allowed_address_pairs,json=allowedAddressPairs,proto3" json:"allowed_address_pairs,omitempty"`
	CreatedAt             string                                `protobuf:"bytes,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	DataPlaneStatus       string                                `protobuf:"bytes,4,opt,name=data_plane_status,json=dataPlaneStatus,proto3" json:"data_plane_status,omitempty"`
	Description           string                                `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	DeviceId              string                                `protobuf:"bytes,6,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
	DeviceOwner           string                                `protobuf:"bytes,7,opt,name=device_owner,json=deviceOwner,proto3" json:"device_owner,omitempty"`
	DnsAssignment         []*CreatePortResp_DnsAssignment       `protobuf:"bytes,8,rep,name=dns_assignment,json=dnsAssignment,proto3" json:"dns_assignment,omitempty"`
	DnsDomain             string                                `protobuf:"bytes,9,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	DnsName               string                                `protobuf:"bytes,10,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	ExtraDhcpOpts         []*CreatePortResp_ExtraDhcpOpts       `protobuf:"bytes,11,rep,name=extra_dhcp_opts,json=extraDhcpOpts,proto3" json:"extra_dhcp_opts,omitempty"`
	FixedIps              []*CreatePortResp_FixedIps            `protobuf:"bytes,12,rep,name=fixed_ips,json=fixedIps,proto3" json:"fixed_ips,omitempty"`
	Id                    string                                `protobuf:"bytes,13,opt,name=id,proto3" json:"id,omitempty"`
	IpAllocation          string                                `protobuf:"bytes,14,opt,name=ip_allocation,json=ipAllocation,proto3" json:"ip_allocation,omitempty"`
	MacAddress            string                                `protobuf:"bytes,15,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
	Name                  string                                `protobuf:"bytes,16,opt,name=name,proto3" json:"name,omitempty"`
	NetworkId             string                                `protobuf:"bytes,17,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	PortSecurityEnabled   bool                                  `protobuf:"varint,18,opt,name=port_security_enabled,json=portSecurityEnabled,proto3" json:"port_security_enabled,omitempty"`
	ProjectId             string                                `protobuf:"bytes,19,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber        uint32                                `protobuf:"varint,20,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	SecurityGroups        []string                              `protobuf:"bytes,21,rep,name=security_groups,json=securityGroups,proto3" json:"security_groups,omitempty"`
	Status                string                                `protobuf:"bytes,22,opt,name=status,proto3" json:"status,omitempty"`
	Tags                  []string                              `protobuf:"bytes,23,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId              string                                `protobuf:"bytes,24,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	UpdatedAt             string                                `protobuf:"bytes,25,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	QosNetworkPolicyId    string                                `protobuf:"bytes,26,opt,name=qos_network_policy_id,json=qosNetworkPolicyId,proto3" json:"qos_network_policy_id,omitempty"`
	QosPolicyId           string                                `protobuf:"bytes,27,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
	PropagateUplinkStatus bool                                  `protobuf:"varint,28,opt,name=propagate_uplink_status,json=propagateUplinkStatus,proto3" json:"propagate_uplink_status,omitempty"`
	HardwareOffloadType   string                                `protobuf:"bytes,29,opt,name=hardware_offload_type,json=hardwareOffloadType,proto3" json:"hardware_offload_type,omitempty"`
}

func (x *CreatePortResp_Port) Reset() {
	*x = CreatePortResp_Port{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[303]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreatePortResp_Port) ProtoMessage() {}

func (x *CreatePortResp_Port) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[303]
	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 CreatePortResp_Port.ProtoReflect.Descriptor instead.
func (*CreatePortResp_Port) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{91, 4}
}

func (x *CreatePortResp_Port) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *CreatePortResp_Port) GetAllowedAddressPairs() []*CreatePortResp_AllowedAddressPairs {
	if x != nil {
		return x.AllowedAddressPairs
	}
	return nil
}

func (x *CreatePortResp_Port) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *CreatePortResp_Port) GetDataPlaneStatus() string {
	if x != nil {
		return x.DataPlaneStatus
	}
	return ""
}

func (x *CreatePortResp_Port) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreatePortResp_Port) GetDeviceId() string {
	if x != nil {
		return x.DeviceId
	}
	return ""
}

func (x *CreatePortResp_Port) GetDeviceOwner() string {
	if x != nil {
		return x.DeviceOwner
	}
	return ""
}

func (x *CreatePortResp_Port) GetDnsAssignment() []*CreatePortResp_DnsAssignment {
	if x != nil {
		return x.DnsAssignment
	}
	return nil
}

func (x *CreatePortResp_Port) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *CreatePortResp_Port) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

func (x *CreatePortResp_Port) GetExtraDhcpOpts() []*CreatePortResp_ExtraDhcpOpts {
	if x != nil {
		return x.ExtraDhcpOpts
	}
	return nil
}

func (x *CreatePortResp_Port) GetFixedIps() []*CreatePortResp_FixedIps {
	if x != nil {
		return x.FixedIps
	}
	return nil
}

func (x *CreatePortResp_Port) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreatePortResp_Port) GetIpAllocation() string {
	if x != nil {
		return x.IpAllocation
	}
	return ""
}

func (x *CreatePortResp_Port) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

func (x *CreatePortResp_Port) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreatePortResp_Port) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *CreatePortResp_Port) GetPortSecurityEnabled() bool {
	if x != nil {
		return x.PortSecurityEnabled
	}
	return false
}

func (x *CreatePortResp_Port) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreatePortResp_Port) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *CreatePortResp_Port) GetSecurityGroups() []string {
	if x != nil {
		return x.SecurityGroups
	}
	return nil
}

func (x *CreatePortResp_Port) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *CreatePortResp_Port) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *CreatePortResp_Port) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *CreatePortResp_Port) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *CreatePortResp_Port) GetQosNetworkPolicyId() string {
	if x != nil {
		return x.QosNetworkPolicyId
	}
	return ""
}

func (x *CreatePortResp_Port) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

func (x *CreatePortResp_Port) GetPropagateUplinkStatus() bool {
	if x != nil {
		return x.PropagateUplinkStatus
	}
	return false
}

func (x *CreatePortResp_Port) GetHardwareOffloadType() string {
	if x != nil {
		return x.HardwareOffloadType
	}
	return ""
}

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

	Hostname  string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"`
	IpAddress string `protobuf:"bytes,2,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	Fqdn      string `protobuf:"bytes,3,opt,name=fqdn,proto3" json:"fqdn,omitempty"`
}

func (x *ListPortsResp_DnsAssignment) Reset() {
	*x = ListPortsResp_DnsAssignment{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[304]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListPortsResp_DnsAssignment) ProtoMessage() {}

func (x *ListPortsResp_DnsAssignment) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[304]
	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 ListPortsResp_DnsAssignment.ProtoReflect.Descriptor instead.
func (*ListPortsResp_DnsAssignment) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{93, 0}
}

func (x *ListPortsResp_DnsAssignment) GetHostname() string {
	if x != nil {
		return x.Hostname
	}
	return ""
}

func (x *ListPortsResp_DnsAssignment) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *ListPortsResp_DnsAssignment) GetFqdn() string {
	if x != nil {
		return x.Fqdn
	}
	return ""
}

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

	OptValue  string `protobuf:"bytes,1,opt,name=opt_value,json=optValue,proto3" json:"opt_value,omitempty"`
	IpVersion uint32 `protobuf:"varint,2,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`
	OptName   string `protobuf:"bytes,3,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"`
}

func (x *ListPortsResp_ExtraDhcpOpts) Reset() {
	*x = ListPortsResp_ExtraDhcpOpts{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[305]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListPortsResp_ExtraDhcpOpts) ProtoMessage() {}

func (x *ListPortsResp_ExtraDhcpOpts) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[305]
	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 ListPortsResp_ExtraDhcpOpts.ProtoReflect.Descriptor instead.
func (*ListPortsResp_ExtraDhcpOpts) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{93, 1}
}

func (x *ListPortsResp_ExtraDhcpOpts) GetOptValue() string {
	if x != nil {
		return x.OptValue
	}
	return ""
}

func (x *ListPortsResp_ExtraDhcpOpts) GetIpVersion() uint32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *ListPortsResp_ExtraDhcpOpts) GetOptName() string {
	if x != nil {
		return x.OptName
	}
	return ""
}

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

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *ListPortsResp_FixedIps) Reset() {
	*x = ListPortsResp_FixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[306]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListPortsResp_FixedIps) ProtoMessage() {}

func (x *ListPortsResp_FixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[306]
	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 ListPortsResp_FixedIps.ProtoReflect.Descriptor instead.
func (*ListPortsResp_FixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{93, 2}
}

func (x *ListPortsResp_FixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *ListPortsResp_FixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

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

func (x *ListPortsResp_AllowedAddressPairs) Reset() {
	*x = ListPortsResp_AllowedAddressPairs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[307]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListPortsResp_AllowedAddressPairs) ProtoMessage() {}

func (x *ListPortsResp_AllowedAddressPairs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[307]
	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 ListPortsResp_AllowedAddressPairs.ProtoReflect.Descriptor instead.
func (*ListPortsResp_AllowedAddressPairs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{93, 3}
}

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

func (x *ListPortsResp_SecurityGroups) Reset() {
	*x = ListPortsResp_SecurityGroups{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[308]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListPortsResp_SecurityGroups) ProtoMessage() {}

func (x *ListPortsResp_SecurityGroups) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[308]
	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 ListPortsResp_SecurityGroups.ProtoReflect.Descriptor instead.
func (*ListPortsResp_SecurityGroups) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{93, 4}
}

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

	AdminStateUp          bool                                 `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	AllowedAddressPairs   []*ListPortsResp_AllowedAddressPairs `protobuf:"bytes,2,rep,name=allowed_address_pairs,json=allowedAddressPairs,proto3" json:"allowed_address_pairs,omitempty"`
	CreatedAt             string                               `protobuf:"bytes,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	DataPlaneStatus       string                               `protobuf:"bytes,4,opt,name=data_plane_status,json=dataPlaneStatus,proto3" json:"data_plane_status,omitempty"`
	Description           string                               `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	DeviceId              string                               `protobuf:"bytes,6,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
	DeviceOwner           string                               `protobuf:"bytes,7,opt,name=device_owner,json=deviceOwner,proto3" json:"device_owner,omitempty"`
	DnsAssignment         []*ListPortsResp_DnsAssignment       `protobuf:"bytes,8,rep,name=dns_assignment,json=dnsAssignment,proto3" json:"dns_assignment,omitempty"`
	DnsDomain             string                               `protobuf:"bytes,9,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	DnsName               string                               `protobuf:"bytes,10,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	ExtraDhcpOpts         []*ListPortsResp_ExtraDhcpOpts       `protobuf:"bytes,11,rep,name=extra_dhcp_opts,json=extraDhcpOpts,proto3" json:"extra_dhcp_opts,omitempty"`
	FixedIps              []*ListPortsResp_FixedIps            `protobuf:"bytes,12,rep,name=fixed_ips,json=fixedIps,proto3" json:"fixed_ips,omitempty"`
	Id                    string                               `protobuf:"bytes,13,opt,name=id,proto3" json:"id,omitempty"`
	IpAllocation          string                               `protobuf:"bytes,14,opt,name=ip_allocation,json=ipAllocation,proto3" json:"ip_allocation,omitempty"`
	MacAddress            string                               `protobuf:"bytes,15,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
	Name                  string                               `protobuf:"bytes,16,opt,name=name,proto3" json:"name,omitempty"`
	NetworkId             string                               `protobuf:"bytes,17,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	ProjectId             string                               `protobuf:"bytes,18,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber        uint32                               `protobuf:"varint,19,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	SecurityGroups        []*ListPortsResp_SecurityGroups      `protobuf:"bytes,20,rep,name=security_groups,json=securityGroups,proto3" json:"security_groups,omitempty"`
	Status                string                               `protobuf:"bytes,21,opt,name=status,proto3" json:"status,omitempty"`
	Tags                  []string                             `protobuf:"bytes,22,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId              string                               `protobuf:"bytes,23,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	UpdatedAt             string                               `protobuf:"bytes,24,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	QosNetworkPolicyId    string                               `protobuf:"bytes,25,opt,name=qos_network_policy_id,json=qosNetworkPolicyId,proto3" json:"qos_network_policy_id,omitempty"`
	QosPolicyId           string                               `protobuf:"bytes,26,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
	PortSecurityEnabled   bool                                 `protobuf:"varint,27,opt,name=port_security_enabled,json=portSecurityEnabled,proto3" json:"port_security_enabled,omitempty"`
	PropagateUplinkStatus bool                                 `protobuf:"varint,28,opt,name=propagate_uplink_status,json=propagateUplinkStatus,proto3" json:"propagate_uplink_status,omitempty"`
}

func (x *ListPortsResp_Ports) Reset() {
	*x = ListPortsResp_Ports{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[309]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListPortsResp_Ports) ProtoMessage() {}

func (x *ListPortsResp_Ports) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[309]
	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 ListPortsResp_Ports.ProtoReflect.Descriptor instead.
func (*ListPortsResp_Ports) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{93, 5}
}

func (x *ListPortsResp_Ports) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *ListPortsResp_Ports) GetAllowedAddressPairs() []*ListPortsResp_AllowedAddressPairs {
	if x != nil {
		return x.AllowedAddressPairs
	}
	return nil
}

func (x *ListPortsResp_Ports) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *ListPortsResp_Ports) GetDataPlaneStatus() string {
	if x != nil {
		return x.DataPlaneStatus
	}
	return ""
}

func (x *ListPortsResp_Ports) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListPortsResp_Ports) GetDeviceId() string {
	if x != nil {
		return x.DeviceId
	}
	return ""
}

func (x *ListPortsResp_Ports) GetDeviceOwner() string {
	if x != nil {
		return x.DeviceOwner
	}
	return ""
}

func (x *ListPortsResp_Ports) GetDnsAssignment() []*ListPortsResp_DnsAssignment {
	if x != nil {
		return x.DnsAssignment
	}
	return nil
}

func (x *ListPortsResp_Ports) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *ListPortsResp_Ports) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

func (x *ListPortsResp_Ports) GetExtraDhcpOpts() []*ListPortsResp_ExtraDhcpOpts {
	if x != nil {
		return x.ExtraDhcpOpts
	}
	return nil
}

func (x *ListPortsResp_Ports) GetFixedIps() []*ListPortsResp_FixedIps {
	if x != nil {
		return x.FixedIps
	}
	return nil
}

func (x *ListPortsResp_Ports) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListPortsResp_Ports) GetIpAllocation() string {
	if x != nil {
		return x.IpAllocation
	}
	return ""
}

func (x *ListPortsResp_Ports) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

func (x *ListPortsResp_Ports) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListPortsResp_Ports) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *ListPortsResp_Ports) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListPortsResp_Ports) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ListPortsResp_Ports) GetSecurityGroups() []*ListPortsResp_SecurityGroups {
	if x != nil {
		return x.SecurityGroups
	}
	return nil
}

func (x *ListPortsResp_Ports) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ListPortsResp_Ports) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ListPortsResp_Ports) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ListPortsResp_Ports) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *ListPortsResp_Ports) GetQosNetworkPolicyId() string {
	if x != nil {
		return x.QosNetworkPolicyId
	}
	return ""
}

func (x *ListPortsResp_Ports) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

func (x *ListPortsResp_Ports) GetPortSecurityEnabled() bool {
	if x != nil {
		return x.PortSecurityEnabled
	}
	return false
}

func (x *ListPortsResp_Ports) GetPropagateUplinkStatus() bool {
	if x != nil {
		return x.PropagateUplinkStatus
	}
	return false
}

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

	IpAddress  string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	MacAddress string `protobuf:"bytes,2,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
}

func (x *UpdatePortReq_AllowedAddressPairs) Reset() {
	*x = UpdatePortReq_AllowedAddressPairs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[310]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdatePortReq_AllowedAddressPairs) ProtoMessage() {}

func (x *UpdatePortReq_AllowedAddressPairs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[310]
	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 UpdatePortReq_AllowedAddressPairs.ProtoReflect.Descriptor instead.
func (*UpdatePortReq_AllowedAddressPairs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{96, 0}
}

func (x *UpdatePortReq_AllowedAddressPairs) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *UpdatePortReq_AllowedAddressPairs) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

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

	Hostname  string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"`
	IpAddress string `protobuf:"bytes,2,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	Fqdn      string `protobuf:"bytes,3,opt,name=fqdn,proto3" json:"fqdn,omitempty"`
}

func (x *UpdatePortReq_DnsAssignment) Reset() {
	*x = UpdatePortReq_DnsAssignment{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[311]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdatePortReq_DnsAssignment) ProtoMessage() {}

func (x *UpdatePortReq_DnsAssignment) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[311]
	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 UpdatePortReq_DnsAssignment.ProtoReflect.Descriptor instead.
func (*UpdatePortReq_DnsAssignment) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{96, 1}
}

func (x *UpdatePortReq_DnsAssignment) GetHostname() string {
	if x != nil {
		return x.Hostname
	}
	return ""
}

func (x *UpdatePortReq_DnsAssignment) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *UpdatePortReq_DnsAssignment) GetFqdn() string {
	if x != nil {
		return x.Fqdn
	}
	return ""
}

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

	OptValue  string `protobuf:"bytes,1,opt,name=opt_value,json=optValue,proto3" json:"opt_value,omitempty"`
	IpVersion uint32 `protobuf:"varint,2,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`
	OptName   string `protobuf:"bytes,3,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"`
}

func (x *UpdatePortReq_ExtraDhcpOpts) Reset() {
	*x = UpdatePortReq_ExtraDhcpOpts{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[312]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdatePortReq_ExtraDhcpOpts) ProtoMessage() {}

func (x *UpdatePortReq_ExtraDhcpOpts) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[312]
	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 UpdatePortReq_ExtraDhcpOpts.ProtoReflect.Descriptor instead.
func (*UpdatePortReq_ExtraDhcpOpts) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{96, 2}
}

func (x *UpdatePortReq_ExtraDhcpOpts) GetOptValue() string {
	if x != nil {
		return x.OptValue
	}
	return ""
}

func (x *UpdatePortReq_ExtraDhcpOpts) GetIpVersion() uint32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *UpdatePortReq_ExtraDhcpOpts) GetOptName() string {
	if x != nil {
		return x.OptName
	}
	return ""
}

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

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *UpdatePortReq_FixedIps) Reset() {
	*x = UpdatePortReq_FixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[313]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdatePortReq_FixedIps) ProtoMessage() {}

func (x *UpdatePortReq_FixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[313]
	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 UpdatePortReq_FixedIps.ProtoReflect.Descriptor instead.
func (*UpdatePortReq_FixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{96, 3}
}

func (x *UpdatePortReq_FixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *UpdatePortReq_FixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

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

	AdminStateUp          bool                                 `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	AllowedAddressPairs   []*UpdatePortReq_AllowedAddressPairs `protobuf:"bytes,2,rep,name=allowed_address_pairs,json=allowedAddressPairs,proto3" json:"allowed_address_pairs,omitempty"`
	CreatedAt             string                               `protobuf:"bytes,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	DataPlaneStatus       string                               `protobuf:"bytes,4,opt,name=data_plane_status,json=dataPlaneStatus,proto3" json:"data_plane_status,omitempty"`
	Description           string                               `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	DeviceId              string                               `protobuf:"bytes,6,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
	DeviceOwner           string                               `protobuf:"bytes,7,opt,name=device_owner,json=deviceOwner,proto3" json:"device_owner,omitempty"`
	DnsAssignment         []*UpdatePortReq_DnsAssignment       `protobuf:"bytes,8,rep,name=dns_assignment,json=dnsAssignment,proto3" json:"dns_assignment,omitempty"`
	DnsDomain             string                               `protobuf:"bytes,9,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	DnsName               string                               `protobuf:"bytes,10,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	ExtraDhcpOpts         []*UpdatePortReq_ExtraDhcpOpts       `protobuf:"bytes,11,rep,name=extra_dhcp_opts,json=extraDhcpOpts,proto3" json:"extra_dhcp_opts,omitempty"`
	FixedIps              []*UpdatePortReq_FixedIps            `protobuf:"bytes,12,rep,name=fixed_ips,json=fixedIps,proto3" json:"fixed_ips,omitempty"`
	Id                    string                               `protobuf:"bytes,13,opt,name=id,proto3" json:"id,omitempty"`
	IpAllocation          string                               `protobuf:"bytes,14,opt,name=ip_allocation,json=ipAllocation,proto3" json:"ip_allocation,omitempty"`
	MacAddress            string                               `protobuf:"bytes,15,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
	Name                  string                               `protobuf:"bytes,16,opt,name=name,proto3" json:"name,omitempty"`
	NetworkId             string                               `protobuf:"bytes,17,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	PortSecurityEnabled   bool                                 `protobuf:"varint,18,opt,name=port_security_enabled,json=portSecurityEnabled,proto3" json:"port_security_enabled,omitempty"`
	ProjectId             string                               `protobuf:"bytes,19,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber        uint32                               `protobuf:"varint,20,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	SecurityGroups        []string                             `protobuf:"bytes,21,rep,name=security_groups,json=securityGroups,proto3" json:"security_groups,omitempty"`
	Status                string                               `protobuf:"bytes,22,opt,name=status,proto3" json:"status,omitempty"`
	Tags                  []string                             `protobuf:"bytes,23,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId              string                               `protobuf:"bytes,24,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	UpdatedAt             string                               `protobuf:"bytes,25,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	QosNetworkPolicyId    string                               `protobuf:"bytes,26,opt,name=qos_network_policy_id,json=qosNetworkPolicyId,proto3" json:"qos_network_policy_id,omitempty"`
	QosPolicyId           string                               `protobuf:"bytes,27,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
	PropagateUplinkStatus bool                                 `protobuf:"varint,28,opt,name=propagate_uplink_status,json=propagateUplinkStatus,proto3" json:"propagate_uplink_status,omitempty"`
	HardwareOffloadType   string                               `protobuf:"bytes,29,opt,name=hardware_offload_type,json=hardwareOffloadType,proto3" json:"hardware_offload_type,omitempty"`
}

func (x *UpdatePortReq_Port) Reset() {
	*x = UpdatePortReq_Port{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[314]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdatePortReq_Port) ProtoMessage() {}

func (x *UpdatePortReq_Port) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[314]
	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 UpdatePortReq_Port.ProtoReflect.Descriptor instead.
func (*UpdatePortReq_Port) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{96, 4}
}

func (x *UpdatePortReq_Port) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *UpdatePortReq_Port) GetAllowedAddressPairs() []*UpdatePortReq_AllowedAddressPairs {
	if x != nil {
		return x.AllowedAddressPairs
	}
	return nil
}

func (x *UpdatePortReq_Port) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *UpdatePortReq_Port) GetDataPlaneStatus() string {
	if x != nil {
		return x.DataPlaneStatus
	}
	return ""
}

func (x *UpdatePortReq_Port) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdatePortReq_Port) GetDeviceId() string {
	if x != nil {
		return x.DeviceId
	}
	return ""
}

func (x *UpdatePortReq_Port) GetDeviceOwner() string {
	if x != nil {
		return x.DeviceOwner
	}
	return ""
}

func (x *UpdatePortReq_Port) GetDnsAssignment() []*UpdatePortReq_DnsAssignment {
	if x != nil {
		return x.DnsAssignment
	}
	return nil
}

func (x *UpdatePortReq_Port) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *UpdatePortReq_Port) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

func (x *UpdatePortReq_Port) GetExtraDhcpOpts() []*UpdatePortReq_ExtraDhcpOpts {
	if x != nil {
		return x.ExtraDhcpOpts
	}
	return nil
}

func (x *UpdatePortReq_Port) GetFixedIps() []*UpdatePortReq_FixedIps {
	if x != nil {
		return x.FixedIps
	}
	return nil
}

func (x *UpdatePortReq_Port) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdatePortReq_Port) GetIpAllocation() string {
	if x != nil {
		return x.IpAllocation
	}
	return ""
}

func (x *UpdatePortReq_Port) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

func (x *UpdatePortReq_Port) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdatePortReq_Port) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *UpdatePortReq_Port) GetPortSecurityEnabled() bool {
	if x != nil {
		return x.PortSecurityEnabled
	}
	return false
}

func (x *UpdatePortReq_Port) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *UpdatePortReq_Port) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *UpdatePortReq_Port) GetSecurityGroups() []string {
	if x != nil {
		return x.SecurityGroups
	}
	return nil
}

func (x *UpdatePortReq_Port) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *UpdatePortReq_Port) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *UpdatePortReq_Port) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *UpdatePortReq_Port) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *UpdatePortReq_Port) GetQosNetworkPolicyId() string {
	if x != nil {
		return x.QosNetworkPolicyId
	}
	return ""
}

func (x *UpdatePortReq_Port) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

func (x *UpdatePortReq_Port) GetPropagateUplinkStatus() bool {
	if x != nil {
		return x.PropagateUplinkStatus
	}
	return false
}

func (x *UpdatePortReq_Port) GetHardwareOffloadType() string {
	if x != nil {
		return x.HardwareOffloadType
	}
	return ""
}

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

func (x *UpdatePortResp_BindingProfile) Reset() {
	*x = UpdatePortResp_BindingProfile{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[315]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdatePortResp_BindingProfile) ProtoMessage() {}

func (x *UpdatePortResp_BindingProfile) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[315]
	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 UpdatePortResp_BindingProfile.ProtoReflect.Descriptor instead.
func (*UpdatePortResp_BindingProfile) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{97, 0}
}

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

func (x *UpdatePortResp_BindingVifDetails) Reset() {
	*x = UpdatePortResp_BindingVifDetails{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[316]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdatePortResp_BindingVifDetails) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdatePortResp_BindingVifDetails) ProtoMessage() {}

func (x *UpdatePortResp_BindingVifDetails) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[316]
	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 UpdatePortResp_BindingVifDetails.ProtoReflect.Descriptor instead.
func (*UpdatePortResp_BindingVifDetails) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{97, 1}
}

type UpdatePortResp_DnsAssignment struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Hostname  string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"`
	IpAddress string `protobuf:"bytes,2,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	Fqdn      string `protobuf:"bytes,3,opt,name=fqdn,proto3" json:"fqdn,omitempty"`
}

func (x *UpdatePortResp_DnsAssignment) Reset() {
	*x = UpdatePortResp_DnsAssignment{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[317]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdatePortResp_DnsAssignment) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdatePortResp_DnsAssignment) ProtoMessage() {}

func (x *UpdatePortResp_DnsAssignment) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[317]
	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 UpdatePortResp_DnsAssignment.ProtoReflect.Descriptor instead.
func (*UpdatePortResp_DnsAssignment) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{97, 2}
}

func (x *UpdatePortResp_DnsAssignment) GetHostname() string {
	if x != nil {
		return x.Hostname
	}
	return ""
}

func (x *UpdatePortResp_DnsAssignment) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *UpdatePortResp_DnsAssignment) GetFqdn() string {
	if x != nil {
		return x.Fqdn
	}
	return ""
}

type UpdatePortResp_ExtraDhcpOpts struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OptValue  string `protobuf:"bytes,1,opt,name=opt_value,json=optValue,proto3" json:"opt_value,omitempty"`
	IpVersion uint32 `protobuf:"varint,2,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`
	OptName   string `protobuf:"bytes,3,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"`
}

func (x *UpdatePortResp_ExtraDhcpOpts) Reset() {
	*x = UpdatePortResp_ExtraDhcpOpts{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[318]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdatePortResp_ExtraDhcpOpts) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdatePortResp_ExtraDhcpOpts) ProtoMessage() {}

func (x *UpdatePortResp_ExtraDhcpOpts) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[318]
	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 UpdatePortResp_ExtraDhcpOpts.ProtoReflect.Descriptor instead.
func (*UpdatePortResp_ExtraDhcpOpts) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{97, 3}
}

func (x *UpdatePortResp_ExtraDhcpOpts) GetOptValue() string {
	if x != nil {
		return x.OptValue
	}
	return ""
}

func (x *UpdatePortResp_ExtraDhcpOpts) GetIpVersion() uint32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *UpdatePortResp_ExtraDhcpOpts) GetOptName() string {
	if x != nil {
		return x.OptName
	}
	return ""
}

type UpdatePortResp_FixedIps struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *UpdatePortResp_FixedIps) Reset() {
	*x = UpdatePortResp_FixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[319]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdatePortResp_FixedIps) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdatePortResp_FixedIps) ProtoMessage() {}

func (x *UpdatePortResp_FixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[319]
	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 UpdatePortResp_FixedIps.ProtoReflect.Descriptor instead.
func (*UpdatePortResp_FixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{97, 4}
}

func (x *UpdatePortResp_FixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *UpdatePortResp_FixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

type UpdatePortResp_AllowedAddressPairs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *UpdatePortResp_AllowedAddressPairs) Reset() {
	*x = UpdatePortResp_AllowedAddressPairs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[320]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdatePortResp_AllowedAddressPairs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdatePortResp_AllowedAddressPairs) ProtoMessage() {}

func (x *UpdatePortResp_AllowedAddressPairs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[320]
	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 UpdatePortResp_AllowedAddressPairs.ProtoReflect.Descriptor instead.
func (*UpdatePortResp_AllowedAddressPairs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{97, 5}
}

type UpdatePortResp_Port struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp          bool                                  `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	AllowedAddressPairs   []*UpdatePortResp_AllowedAddressPairs `protobuf:"bytes,2,rep,name=allowed_address_pairs,json=allowedAddressPairs,proto3" json:"allowed_address_pairs,omitempty"`
	BindingHostId         string                                `protobuf:"bytes,3,opt,name=binding_host_id,json=binding:host_id,proto3" json:"binding_host_id,omitempty"`
	BindingProfile        *UpdatePortResp_BindingProfile        `protobuf:"bytes,4,opt,name=Binding_profile,json=Binding:profile,proto3" json:"Binding_profile,omitempty"`
	BindingVifDetails     *UpdatePortResp_BindingVifDetails     `protobuf:"bytes,5,opt,name=binding_vif_details,json=Binding:vif_details,proto3" json:"binding_vif_details,omitempty"`
	BindingVifType        string                                `protobuf:"bytes,6,opt,name=binding_vif_type,json=binding:vif_type,proto3" json:"binding_vif_type,omitempty"`
	BindingVnicType       string                                `protobuf:"bytes,7,opt,name=binding_vnic_type,json=binding:vnic_type,proto3" json:"binding_vnic_type,omitempty"`
	CreatedAt             string                                `protobuf:"bytes,8,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	DataPlaneStatus       string                                `protobuf:"bytes,9,opt,name=data_plane_status,json=dataPlaneStatus,proto3" json:"data_plane_status,omitempty"`
	Description           string                                `protobuf:"bytes,10,opt,name=description,proto3" json:"description,omitempty"`
	DeviceId              string                                `protobuf:"bytes,11,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
	DeviceOwner           string                                `protobuf:"bytes,12,opt,name=device_owner,json=deviceOwner,proto3" json:"device_owner,omitempty"`
	DnsAssignment         []*UpdatePortResp_DnsAssignment       `protobuf:"bytes,13,rep,name=dns_assignment,json=dnsAssignment,proto3" json:"dns_assignment,omitempty"`
	DnsDomain             string                                `protobuf:"bytes,14,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	DnsName               string                                `protobuf:"bytes,15,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	ExtraDhcpOpts         []*UpdatePortResp_ExtraDhcpOpts       `protobuf:"bytes,16,rep,name=extra_dhcp_opts,json=extraDhcpOpts,proto3" json:"extra_dhcp_opts,omitempty"`
	FixedIps              []*UpdatePortResp_FixedIps            `protobuf:"bytes,17,rep,name=fixed_ips,json=fixedIps,proto3" json:"fixed_ips,omitempty"`
	Id                    string                                `protobuf:"bytes,18,opt,name=id,proto3" json:"id,omitempty"`
	IpAllocation          string                                `protobuf:"bytes,19,opt,name=ip_allocation,json=ipAllocation,proto3" json:"ip_allocation,omitempty"`
	MacAddress            string                                `protobuf:"bytes,20,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
	Name                  string                                `protobuf:"bytes,21,opt,name=name,proto3" json:"name,omitempty"`
	NetworkId             string                                `protobuf:"bytes,22,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	ProjectId             string                                `protobuf:"bytes,23,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber        uint32                                `protobuf:"varint,24,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	SecurityGroups        []string                              `protobuf:"bytes,25,rep,name=security_groups,json=securityGroups,proto3" json:"security_groups,omitempty"`
	Status                string                                `protobuf:"bytes,26,opt,name=status,proto3" json:"status,omitempty"`
	Tags                  []string                              `protobuf:"bytes,27,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId              string                                `protobuf:"bytes,28,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	UpdatedAt             string                                `protobuf:"bytes,29,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	QosNetworkPolicyId    string                                `protobuf:"bytes,30,opt,name=qos_network_policy_id,json=qosNetworkPolicyId,proto3" json:"qos_network_policy_id,omitempty"`
	QosPolicyId           string                                `protobuf:"bytes,31,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
	PortSecurityEnabled   bool                                  `protobuf:"varint,32,opt,name=port_security_enabled,json=portSecurityEnabled,proto3" json:"port_security_enabled,omitempty"`
	PropagateUplinkStatus bool                                  `protobuf:"varint,33,opt,name=propagate_uplink_status,json=propagateUplinkStatus,proto3" json:"propagate_uplink_status,omitempty"`
	HardwareOffloadType   string                                `protobuf:"bytes,34,opt,name=hardware_offload_type,json=hardwareOffloadType,proto3" json:"hardware_offload_type,omitempty"`
}

func (x *UpdatePortResp_Port) Reset() {
	*x = UpdatePortResp_Port{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[321]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdatePortResp_Port) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdatePortResp_Port) ProtoMessage() {}

func (x *UpdatePortResp_Port) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[321]
	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 UpdatePortResp_Port.ProtoReflect.Descriptor instead.
func (*UpdatePortResp_Port) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{97, 6}
}

func (x *UpdatePortResp_Port) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *UpdatePortResp_Port) GetAllowedAddressPairs() []*UpdatePortResp_AllowedAddressPairs {
	if x != nil {
		return x.AllowedAddressPairs
	}
	return nil
}

func (x *UpdatePortResp_Port) GetBindingHostId() string {
	if x != nil {
		return x.BindingHostId
	}
	return ""
}

func (x *UpdatePortResp_Port) GetBindingProfile() *UpdatePortResp_BindingProfile {
	if x != nil {
		return x.BindingProfile
	}
	return nil
}

func (x *UpdatePortResp_Port) GetBindingVifDetails() *UpdatePortResp_BindingVifDetails {
	if x != nil {
		return x.BindingVifDetails
	}
	return nil
}

func (x *UpdatePortResp_Port) GetBindingVifType() string {
	if x != nil {
		return x.BindingVifType
	}
	return ""
}

func (x *UpdatePortResp_Port) GetBindingVnicType() string {
	if x != nil {
		return x.BindingVnicType
	}
	return ""
}

func (x *UpdatePortResp_Port) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *UpdatePortResp_Port) GetDataPlaneStatus() string {
	if x != nil {
		return x.DataPlaneStatus
	}
	return ""
}

func (x *UpdatePortResp_Port) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdatePortResp_Port) GetDeviceId() string {
	if x != nil {
		return x.DeviceId
	}
	return ""
}

func (x *UpdatePortResp_Port) GetDeviceOwner() string {
	if x != nil {
		return x.DeviceOwner
	}
	return ""
}

func (x *UpdatePortResp_Port) GetDnsAssignment() []*UpdatePortResp_DnsAssignment {
	if x != nil {
		return x.DnsAssignment
	}
	return nil
}

func (x *UpdatePortResp_Port) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *UpdatePortResp_Port) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

func (x *UpdatePortResp_Port) GetExtraDhcpOpts() []*UpdatePortResp_ExtraDhcpOpts {
	if x != nil {
		return x.ExtraDhcpOpts
	}
	return nil
}

func (x *UpdatePortResp_Port) GetFixedIps() []*UpdatePortResp_FixedIps {
	if x != nil {
		return x.FixedIps
	}
	return nil
}

func (x *UpdatePortResp_Port) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdatePortResp_Port) GetIpAllocation() string {
	if x != nil {
		return x.IpAllocation
	}
	return ""
}

func (x *UpdatePortResp_Port) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

func (x *UpdatePortResp_Port) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdatePortResp_Port) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *UpdatePortResp_Port) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *UpdatePortResp_Port) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *UpdatePortResp_Port) GetSecurityGroups() []string {
	if x != nil {
		return x.SecurityGroups
	}
	return nil
}

func (x *UpdatePortResp_Port) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *UpdatePortResp_Port) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *UpdatePortResp_Port) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *UpdatePortResp_Port) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *UpdatePortResp_Port) GetQosNetworkPolicyId() string {
	if x != nil {
		return x.QosNetworkPolicyId
	}
	return ""
}

func (x *UpdatePortResp_Port) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

func (x *UpdatePortResp_Port) GetPortSecurityEnabled() bool {
	if x != nil {
		return x.PortSecurityEnabled
	}
	return false
}

func (x *UpdatePortResp_Port) GetPropagateUplinkStatus() bool {
	if x != nil {
		return x.PropagateUplinkStatus
	}
	return false
}

func (x *UpdatePortResp_Port) GetHardwareOffloadType() string {
	if x != nil {
		return x.HardwareOffloadType
	}
	return ""
}

type ShowPortDetailsResp_DnsAssignment struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Hostname  string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"`
	IpAddress string `protobuf:"bytes,2,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	Fqdn      string `protobuf:"bytes,3,opt,name=fqdn,proto3" json:"fqdn,omitempty"`
}

func (x *ShowPortDetailsResp_DnsAssignment) Reset() {
	*x = ShowPortDetailsResp_DnsAssignment{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[322]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowPortDetailsResp_DnsAssignment) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowPortDetailsResp_DnsAssignment) ProtoMessage() {}

func (x *ShowPortDetailsResp_DnsAssignment) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[322]
	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 ShowPortDetailsResp_DnsAssignment.ProtoReflect.Descriptor instead.
func (*ShowPortDetailsResp_DnsAssignment) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{99, 0}
}

func (x *ShowPortDetailsResp_DnsAssignment) GetHostname() string {
	if x != nil {
		return x.Hostname
	}
	return ""
}

func (x *ShowPortDetailsResp_DnsAssignment) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *ShowPortDetailsResp_DnsAssignment) GetFqdn() string {
	if x != nil {
		return x.Fqdn
	}
	return ""
}

type ShowPortDetailsResp_ExtraDhcpOpts struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OptValue  string `protobuf:"bytes,1,opt,name=opt_value,json=optValue,proto3" json:"opt_value,omitempty"`
	IpVersion uint32 `protobuf:"varint,2,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`
	OptName   string `protobuf:"bytes,3,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"`
}

func (x *ShowPortDetailsResp_ExtraDhcpOpts) Reset() {
	*x = ShowPortDetailsResp_ExtraDhcpOpts{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[323]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowPortDetailsResp_ExtraDhcpOpts) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowPortDetailsResp_ExtraDhcpOpts) ProtoMessage() {}

func (x *ShowPortDetailsResp_ExtraDhcpOpts) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[323]
	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 ShowPortDetailsResp_ExtraDhcpOpts.ProtoReflect.Descriptor instead.
func (*ShowPortDetailsResp_ExtraDhcpOpts) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{99, 1}
}

func (x *ShowPortDetailsResp_ExtraDhcpOpts) GetOptValue() string {
	if x != nil {
		return x.OptValue
	}
	return ""
}

func (x *ShowPortDetailsResp_ExtraDhcpOpts) GetIpVersion() uint32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *ShowPortDetailsResp_ExtraDhcpOpts) GetOptName() string {
	if x != nil {
		return x.OptName
	}
	return ""
}

type ShowPortDetailsResp_FixedIps struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *ShowPortDetailsResp_FixedIps) Reset() {
	*x = ShowPortDetailsResp_FixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[324]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowPortDetailsResp_FixedIps) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowPortDetailsResp_FixedIps) ProtoMessage() {}

func (x *ShowPortDetailsResp_FixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[324]
	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 ShowPortDetailsResp_FixedIps.ProtoReflect.Descriptor instead.
func (*ShowPortDetailsResp_FixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{99, 2}
}

func (x *ShowPortDetailsResp_FixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *ShowPortDetailsResp_FixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

type ShowPortDetailsResp_AllowedAddressPairs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowPortDetailsResp_AllowedAddressPairs) Reset() {
	*x = ShowPortDetailsResp_AllowedAddressPairs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[325]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowPortDetailsResp_AllowedAddressPairs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowPortDetailsResp_AllowedAddressPairs) ProtoMessage() {}

func (x *ShowPortDetailsResp_AllowedAddressPairs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[325]
	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 ShowPortDetailsResp_AllowedAddressPairs.ProtoReflect.Descriptor instead.
func (*ShowPortDetailsResp_AllowedAddressPairs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{99, 3}
}

type ShowPortDetailsResp_SecurityGroups struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowPortDetailsResp_SecurityGroups) Reset() {
	*x = ShowPortDetailsResp_SecurityGroups{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[326]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowPortDetailsResp_SecurityGroups) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowPortDetailsResp_SecurityGroups) ProtoMessage() {}

func (x *ShowPortDetailsResp_SecurityGroups) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[326]
	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 ShowPortDetailsResp_SecurityGroups.ProtoReflect.Descriptor instead.
func (*ShowPortDetailsResp_SecurityGroups) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{99, 4}
}

type ShowPortDetailsResp_Port struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp          bool                                       `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	AllowedAddressPairs   []*ShowPortDetailsResp_AllowedAddressPairs `protobuf:"bytes,2,rep,name=allowed_address_pairs,json=allowedAddressPairs,proto3" json:"allowed_address_pairs,omitempty"`
	CreatedAt             string                                     `protobuf:"bytes,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	DataPlaneStatus       string                                     `protobuf:"bytes,4,opt,name=data_plane_status,json=dataPlaneStatus,proto3" json:"data_plane_status,omitempty"`
	Description           string                                     `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	DeviceId              string                                     `protobuf:"bytes,6,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
	DeviceOwner           string                                     `protobuf:"bytes,7,opt,name=device_owner,json=deviceOwner,proto3" json:"device_owner,omitempty"`
	DnsAssignment         []*ShowPortDetailsResp_DnsAssignment       `protobuf:"bytes,8,rep,name=dns_assignment,json=dnsAssignment,proto3" json:"dns_assignment,omitempty"`
	DnsDomain             string                                     `protobuf:"bytes,9,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	DnsName               string                                     `protobuf:"bytes,10,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	ExtraDhcpOpts         []*ShowPortDetailsResp_ExtraDhcpOpts       `protobuf:"bytes,11,rep,name=extra_dhcp_opts,json=extraDhcpOpts,proto3" json:"extra_dhcp_opts,omitempty"`
	FixedIps              []*ShowPortDetailsResp_FixedIps            `protobuf:"bytes,12,rep,name=fixed_ips,json=fixedIps,proto3" json:"fixed_ips,omitempty"`
	Id                    string                                     `protobuf:"bytes,13,opt,name=id,proto3" json:"id,omitempty"`
	IpAllocation          string                                     `protobuf:"bytes,14,opt,name=ip_allocation,json=ipAllocation,proto3" json:"ip_allocation,omitempty"`
	MacAddress            string                                     `protobuf:"bytes,15,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
	Name                  string                                     `protobuf:"bytes,16,opt,name=name,proto3" json:"name,omitempty"`
	NetworkId             string                                     `protobuf:"bytes,17,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	PortSecurityEnabled   bool                                       `protobuf:"varint,18,opt,name=port_security_enabled,json=portSecurityEnabled,proto3" json:"port_security_enabled,omitempty"`
	ProjectId             string                                     `protobuf:"bytes,19,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber        uint32                                     `protobuf:"varint,20,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	SecurityGroups        []*ShowPortDetailsResp_SecurityGroups      `protobuf:"bytes,21,rep,name=security_groups,json=securityGroups,proto3" json:"security_groups,omitempty"`
	Status                string                                     `protobuf:"bytes,22,opt,name=status,proto3" json:"status,omitempty"`
	Tags                  []string                                   `protobuf:"bytes,23,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId              string                                     `protobuf:"bytes,24,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	UpdatedAt             string                                     `protobuf:"bytes,25,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	QosNetworkPolicyId    string                                     `protobuf:"bytes,26,opt,name=qos_network_policy_id,json=qosNetworkPolicyId,proto3" json:"qos_network_policy_id,omitempty"`
	QosPolicyId           string                                     `protobuf:"bytes,27,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
	PropagateUplinkStatus bool                                       `protobuf:"varint,28,opt,name=propagate_uplink_status,json=propagateUplinkStatus,proto3" json:"propagate_uplink_status,omitempty"`
	HardwareOffloadType   string                                     `protobuf:"bytes,29,opt,name=hardware_offload_type,json=hardwareOffloadType,proto3" json:"hardware_offload_type,omitempty"`
}

func (x *ShowPortDetailsResp_Port) Reset() {
	*x = ShowPortDetailsResp_Port{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[327]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowPortDetailsResp_Port) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowPortDetailsResp_Port) ProtoMessage() {}

func (x *ShowPortDetailsResp_Port) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[327]
	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 ShowPortDetailsResp_Port.ProtoReflect.Descriptor instead.
func (*ShowPortDetailsResp_Port) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{99, 5}
}

func (x *ShowPortDetailsResp_Port) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *ShowPortDetailsResp_Port) GetAllowedAddressPairs() []*ShowPortDetailsResp_AllowedAddressPairs {
	if x != nil {
		return x.AllowedAddressPairs
	}
	return nil
}

func (x *ShowPortDetailsResp_Port) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetDataPlaneStatus() string {
	if x != nil {
		return x.DataPlaneStatus
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetDeviceId() string {
	if x != nil {
		return x.DeviceId
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetDeviceOwner() string {
	if x != nil {
		return x.DeviceOwner
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetDnsAssignment() []*ShowPortDetailsResp_DnsAssignment {
	if x != nil {
		return x.DnsAssignment
	}
	return nil
}

func (x *ShowPortDetailsResp_Port) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetExtraDhcpOpts() []*ShowPortDetailsResp_ExtraDhcpOpts {
	if x != nil {
		return x.ExtraDhcpOpts
	}
	return nil
}

func (x *ShowPortDetailsResp_Port) GetFixedIps() []*ShowPortDetailsResp_FixedIps {
	if x != nil {
		return x.FixedIps
	}
	return nil
}

func (x *ShowPortDetailsResp_Port) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetIpAllocation() string {
	if x != nil {
		return x.IpAllocation
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetPortSecurityEnabled() bool {
	if x != nil {
		return x.PortSecurityEnabled
	}
	return false
}

func (x *ShowPortDetailsResp_Port) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ShowPortDetailsResp_Port) GetSecurityGroups() []*ShowPortDetailsResp_SecurityGroups {
	if x != nil {
		return x.SecurityGroups
	}
	return nil
}

func (x *ShowPortDetailsResp_Port) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ShowPortDetailsResp_Port) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetQosNetworkPolicyId() string {
	if x != nil {
		return x.QosNetworkPolicyId
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

func (x *ShowPortDetailsResp_Port) GetPropagateUplinkStatus() bool {
	if x != nil {
		return x.PropagateUplinkStatus
	}
	return false
}

func (x *ShowPortDetailsResp_Port) GetHardwareOffloadType() string {
	if x != nil {
		return x.HardwareOffloadType
	}
	return ""
}

type ListRoutersResp_ExternalFixedIps struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *ListRoutersResp_ExternalFixedIps) Reset() {
	*x = ListRoutersResp_ExternalFixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[328]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListRoutersResp_ExternalFixedIps) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListRoutersResp_ExternalFixedIps) ProtoMessage() {}

func (x *ListRoutersResp_ExternalFixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[328]
	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 ListRoutersResp_ExternalFixedIps.ProtoReflect.Descriptor instead.
func (*ListRoutersResp_ExternalFixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{101, 0}
}

func (x *ListRoutersResp_ExternalFixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *ListRoutersResp_ExternalFixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

type ListRoutersResp_ExternalGatewayInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	EnableSnat       bool                                `protobuf:"varint,1,opt,name=enable_snat,json=enableSnat,proto3" json:"enable_snat,omitempty"`
	ExternalFixedIps []*ListRoutersResp_ExternalFixedIps `protobuf:"bytes,2,rep,name=external_fixed_ips,json=externalFixedIps,proto3" json:"external_fixed_ips,omitempty"`
	NetworkId        string                              `protobuf:"bytes,3,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
}

func (x *ListRoutersResp_ExternalGatewayInfo) Reset() {
	*x = ListRoutersResp_ExternalGatewayInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[329]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListRoutersResp_ExternalGatewayInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListRoutersResp_ExternalGatewayInfo) ProtoMessage() {}

func (x *ListRoutersResp_ExternalGatewayInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[329]
	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 ListRoutersResp_ExternalGatewayInfo.ProtoReflect.Descriptor instead.
func (*ListRoutersResp_ExternalGatewayInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{101, 1}
}

func (x *ListRoutersResp_ExternalGatewayInfo) GetEnableSnat() bool {
	if x != nil {
		return x.EnableSnat
	}
	return false
}

func (x *ListRoutersResp_ExternalGatewayInfo) GetExternalFixedIps() []*ListRoutersResp_ExternalFixedIps {
	if x != nil {
		return x.ExternalFixedIps
	}
	return nil
}

func (x *ListRoutersResp_ExternalGatewayInfo) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

type ListRoutersResp_Routes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Destination string `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
	Nexthop     string `protobuf:"bytes,2,opt,name=nexthop,proto3" json:"nexthop,omitempty"`
}

func (x *ListRoutersResp_Routes) Reset() {
	*x = ListRoutersResp_Routes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[330]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListRoutersResp_Routes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListRoutersResp_Routes) ProtoMessage() {}

func (x *ListRoutersResp_Routes) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[330]
	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 ListRoutersResp_Routes.ProtoReflect.Descriptor instead.
func (*ListRoutersResp_Routes) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{101, 2}
}

func (x *ListRoutersResp_Routes) GetDestination() string {
	if x != nil {
		return x.Destination
	}
	return ""
}

func (x *ListRoutersResp_Routes) GetNexthop() string {
	if x != nil {
		return x.Nexthop
	}
	return ""
}

type ListRoutersResp_ConntrackHelpers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Protocol string `protobuf:"bytes,1,opt,name=protocol,proto3" json:"protocol,omitempty"`
	Helper   string `protobuf:"bytes,2,opt,name=helper,proto3" json:"helper,omitempty"`
	Port     uint32 `protobuf:"varint,3,opt,name=port,proto3" json:"port,omitempty"`
}

func (x *ListRoutersResp_ConntrackHelpers) Reset() {
	*x = ListRoutersResp_ConntrackHelpers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[331]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListRoutersResp_ConntrackHelpers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListRoutersResp_ConntrackHelpers) ProtoMessage() {}

func (x *ListRoutersResp_ConntrackHelpers) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[331]
	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 ListRoutersResp_ConntrackHelpers.ProtoReflect.Descriptor instead.
func (*ListRoutersResp_ConntrackHelpers) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{101, 3}
}

func (x *ListRoutersResp_ConntrackHelpers) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *ListRoutersResp_ConntrackHelpers) GetHelper() string {
	if x != nil {
		return x.Helper
	}
	return ""
}

func (x *ListRoutersResp_ConntrackHelpers) GetPort() uint32 {
	if x != nil {
		return x.Port
	}
	return 0
}

type ListRoutersResp_AvailabilityZoneHints struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ListRoutersResp_AvailabilityZoneHints) Reset() {
	*x = ListRoutersResp_AvailabilityZoneHints{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[332]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListRoutersResp_AvailabilityZoneHints) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListRoutersResp_AvailabilityZoneHints) ProtoMessage() {}

func (x *ListRoutersResp_AvailabilityZoneHints) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[332]
	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 ListRoutersResp_AvailabilityZoneHints.ProtoReflect.Descriptor instead.
func (*ListRoutersResp_AvailabilityZoneHints) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{101, 4}
}

type ListRoutersResp_Routers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp          bool                                     `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	AvailabilityZoneHints []*ListRoutersResp_AvailabilityZoneHints `protobuf:"bytes,2,rep,name=availability_zone_hints,json=availabilityZoneHints,proto3" json:"availability_zone_hints,omitempty"`
	AvailabilityZones     []string                                 `protobuf:"bytes,3,rep,name=availability_zones,json=availabilityZones,proto3" json:"availability_zones,omitempty"`
	CreatedAt             int64                                    `protobuf:"varint,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Description           string                                   `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	Distributed           bool                                     `protobuf:"varint,6,opt,name=distributed,proto3" json:"distributed,omitempty"`
	ExternalGatewayInfo   *ListRoutersResp_ExternalGatewayInfo     `protobuf:"bytes,7,opt,name=external_gateway_info,json=externalGatewayInfo,proto3" json:"external_gateway_info,omitempty"`
	FlavorId              string                                   `protobuf:"bytes,8,opt,name=flavor_id,json=flavorId,proto3" json:"flavor_id,omitempty"`
	Ha                    bool                                     `protobuf:"varint,9,opt,name=ha,proto3" json:"ha,omitempty"`
	Id                    string                                   `protobuf:"bytes,10,opt,name=id,proto3" json:"id,omitempty"`
	Name                  string                                   `protobuf:"bytes,11,opt,name=name,proto3" json:"name,omitempty"`
	RevisionNumber        uint32                                   `protobuf:"varint,12,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Routes                []*ListRoutersResp_Routes                `protobuf:"bytes,13,rep,name=routes,proto3" json:"routes,omitempty"`
	Status                string                                   `protobuf:"bytes,14,opt,name=status,proto3" json:"status,omitempty"`
	UpdatedAt             int64                                    `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	ProjectId             string                                   `protobuf:"bytes,16,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId              string                                   `protobuf:"bytes,17,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ServiceTypeId         string                                   `protobuf:"bytes,18,opt,name=service_type_id,json=serviceTypeId,proto3" json:"service_type_id,omitempty"`
	Tags                  []string                                 `protobuf:"bytes,19,rep,name=tags,proto3" json:"tags,omitempty"`
	ConntrackHelpers      []*ListRoutersResp_ConntrackHelpers      `protobuf:"bytes,20,rep,name=conntrack_helpers,json=conntrackHelpers,proto3" json:"conntrack_helpers,omitempty"`
}

func (x *ListRoutersResp_Routers) Reset() {
	*x = ListRoutersResp_Routers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[333]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListRoutersResp_Routers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListRoutersResp_Routers) ProtoMessage() {}

func (x *ListRoutersResp_Routers) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[333]
	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 ListRoutersResp_Routers.ProtoReflect.Descriptor instead.
func (*ListRoutersResp_Routers) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{101, 5}
}

func (x *ListRoutersResp_Routers) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *ListRoutersResp_Routers) GetAvailabilityZoneHints() []*ListRoutersResp_AvailabilityZoneHints {
	if x != nil {
		return x.AvailabilityZoneHints
	}
	return nil
}

func (x *ListRoutersResp_Routers) GetAvailabilityZones() []string {
	if x != nil {
		return x.AvailabilityZones
	}
	return nil
}

func (x *ListRoutersResp_Routers) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ListRoutersResp_Routers) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListRoutersResp_Routers) GetDistributed() bool {
	if x != nil {
		return x.Distributed
	}
	return false
}

func (x *ListRoutersResp_Routers) GetExternalGatewayInfo() *ListRoutersResp_ExternalGatewayInfo {
	if x != nil {
		return x.ExternalGatewayInfo
	}
	return nil
}

func (x *ListRoutersResp_Routers) GetFlavorId() string {
	if x != nil {
		return x.FlavorId
	}
	return ""
}

func (x *ListRoutersResp_Routers) GetHa() bool {
	if x != nil {
		return x.Ha
	}
	return false
}

func (x *ListRoutersResp_Routers) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListRoutersResp_Routers) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListRoutersResp_Routers) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ListRoutersResp_Routers) GetRoutes() []*ListRoutersResp_Routes {
	if x != nil {
		return x.Routes
	}
	return nil
}

func (x *ListRoutersResp_Routers) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ListRoutersResp_Routers) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ListRoutersResp_Routers) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListRoutersResp_Routers) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ListRoutersResp_Routers) GetServiceTypeId() string {
	if x != nil {
		return x.ServiceTypeId
	}
	return ""
}

func (x *ListRoutersResp_Routers) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ListRoutersResp_Routers) GetConntrackHelpers() []*ListRoutersResp_ConntrackHelpers {
	if x != nil {
		return x.ConntrackHelpers
	}
	return nil
}

type CreateRouterReq_ExternalFixedIps struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *CreateRouterReq_ExternalFixedIps) Reset() {
	*x = CreateRouterReq_ExternalFixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[334]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateRouterReq_ExternalFixedIps) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateRouterReq_ExternalFixedIps) ProtoMessage() {}

func (x *CreateRouterReq_ExternalFixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[334]
	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 CreateRouterReq_ExternalFixedIps.ProtoReflect.Descriptor instead.
func (*CreateRouterReq_ExternalFixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{102, 0}
}

func (x *CreateRouterReq_ExternalFixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *CreateRouterReq_ExternalFixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

type CreateRouterReq_ExternalGatewayInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	NetworkId        string                              `protobuf:"bytes,1,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	EnableSnat       bool                                `protobuf:"varint,2,opt,name=enable_snat,json=enableSnat,proto3" json:"enable_snat,omitempty"`
	ExternalFixedIps []*CreateRouterReq_ExternalFixedIps `protobuf:"bytes,3,rep,name=external_fixed_ips,json=externalFixedIps,proto3" json:"external_fixed_ips,omitempty"`
}

func (x *CreateRouterReq_ExternalGatewayInfo) Reset() {
	*x = CreateRouterReq_ExternalGatewayInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[335]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateRouterReq_ExternalGatewayInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateRouterReq_ExternalGatewayInfo) ProtoMessage() {}

func (x *CreateRouterReq_ExternalGatewayInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[335]
	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 CreateRouterReq_ExternalGatewayInfo.ProtoReflect.Descriptor instead.
func (*CreateRouterReq_ExternalGatewayInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{102, 1}
}

func (x *CreateRouterReq_ExternalGatewayInfo) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *CreateRouterReq_ExternalGatewayInfo) GetEnableSnat() bool {
	if x != nil {
		return x.EnableSnat
	}
	return false
}

func (x *CreateRouterReq_ExternalGatewayInfo) GetExternalFixedIps() []*CreateRouterReq_ExternalFixedIps {
	if x != nil {
		return x.ExternalFixedIps
	}
	return nil
}

type CreateRouterReq_Router struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name                string                               `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	ExternalGatewayInfo *CreateRouterReq_ExternalGatewayInfo `protobuf:"bytes,2,opt,name=external_gateway_info,json=externalGatewayInfo,proto3" json:"external_gateway_info,omitempty"`
	AdminStateUp        bool                                 `protobuf:"varint,3,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
}

func (x *CreateRouterReq_Router) Reset() {
	*x = CreateRouterReq_Router{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[336]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateRouterReq_Router) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateRouterReq_Router) ProtoMessage() {}

func (x *CreateRouterReq_Router) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[336]
	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 CreateRouterReq_Router.ProtoReflect.Descriptor instead.
func (*CreateRouterReq_Router) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{102, 2}
}

func (x *CreateRouterReq_Router) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateRouterReq_Router) GetExternalGatewayInfo() *CreateRouterReq_ExternalGatewayInfo {
	if x != nil {
		return x.ExternalGatewayInfo
	}
	return nil
}

func (x *CreateRouterReq_Router) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

type CreateRouterResp_ExternalFixedIps struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *CreateRouterResp_ExternalFixedIps) Reset() {
	*x = CreateRouterResp_ExternalFixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[337]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateRouterResp_ExternalFixedIps) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateRouterResp_ExternalFixedIps) ProtoMessage() {}

func (x *CreateRouterResp_ExternalFixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[337]
	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 CreateRouterResp_ExternalFixedIps.ProtoReflect.Descriptor instead.
func (*CreateRouterResp_ExternalFixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{103, 0}
}

func (x *CreateRouterResp_ExternalFixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *CreateRouterResp_ExternalFixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

type CreateRouterResp_ExternalGatewayInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	EnableSnat       bool                                 `protobuf:"varint,1,opt,name=enable_snat,json=enableSnat,proto3" json:"enable_snat,omitempty"`
	ExternalFixedIps []*CreateRouterResp_ExternalFixedIps `protobuf:"bytes,2,rep,name=external_fixed_ips,json=externalFixedIps,proto3" json:"external_fixed_ips,omitempty"`
	NetworkId        string                               `protobuf:"bytes,3,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
}

func (x *CreateRouterResp_ExternalGatewayInfo) Reset() {
	*x = CreateRouterResp_ExternalGatewayInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[338]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateRouterResp_ExternalGatewayInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateRouterResp_ExternalGatewayInfo) ProtoMessage() {}

func (x *CreateRouterResp_ExternalGatewayInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[338]
	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 CreateRouterResp_ExternalGatewayInfo.ProtoReflect.Descriptor instead.
func (*CreateRouterResp_ExternalGatewayInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{103, 1}
}

func (x *CreateRouterResp_ExternalGatewayInfo) GetEnableSnat() bool {
	if x != nil {
		return x.EnableSnat
	}
	return false
}

func (x *CreateRouterResp_ExternalGatewayInfo) GetExternalFixedIps() []*CreateRouterResp_ExternalFixedIps {
	if x != nil {
		return x.ExternalFixedIps
	}
	return nil
}

func (x *CreateRouterResp_ExternalGatewayInfo) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

type CreateRouterResp_Routers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp        bool                                  `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	AvailabilityZones   []string                              `protobuf:"bytes,3,rep,name=availability_zones,json=availabilityZones,proto3" json:"availability_zones,omitempty"`
	CreatedAt           int64                                 `protobuf:"varint,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Description         string                                `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	Distributed         bool                                  `protobuf:"varint,6,opt,name=distributed,proto3" json:"distributed,omitempty"`
	ExternalGatewayInfo *CreateRouterResp_ExternalGatewayInfo `protobuf:"bytes,7,opt,name=external_gateway_info,json=externalGatewayInfo,proto3" json:"external_gateway_info,omitempty"`
	FlavorId            string                                `protobuf:"bytes,8,opt,name=flavor_id,json=flavorId,proto3" json:"flavor_id,omitempty"`
	Ha                  bool                                  `protobuf:"varint,9,opt,name=ha,proto3" json:"ha,omitempty"`
	Id                  string                                `protobuf:"bytes,10,opt,name=id,proto3" json:"id,omitempty"`
	Name                string                                `protobuf:"bytes,11,opt,name=name,proto3" json:"name,omitempty"`
	RevisionNumber      uint32                                `protobuf:"varint,12,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Status              string                                `protobuf:"bytes,14,opt,name=status,proto3" json:"status,omitempty"`
	UpdatedAt           int64                                 `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	ProjectId           string                                `protobuf:"bytes,16,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId            string                                `protobuf:"bytes,17,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ServiceTypeId       string                                `protobuf:"bytes,18,opt,name=service_type_id,json=serviceTypeId,proto3" json:"service_type_id,omitempty"`
	Tags                []string                              `protobuf:"bytes,19,rep,name=tags,proto3" json:"tags,omitempty"`
}

func (x *CreateRouterResp_Routers) Reset() {
	*x = CreateRouterResp_Routers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[339]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateRouterResp_Routers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateRouterResp_Routers) ProtoMessage() {}

func (x *CreateRouterResp_Routers) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[339]
	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 CreateRouterResp_Routers.ProtoReflect.Descriptor instead.
func (*CreateRouterResp_Routers) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{103, 2}
}

func (x *CreateRouterResp_Routers) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *CreateRouterResp_Routers) GetAvailabilityZones() []string {
	if x != nil {
		return x.AvailabilityZones
	}
	return nil
}

func (x *CreateRouterResp_Routers) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *CreateRouterResp_Routers) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateRouterResp_Routers) GetDistributed() bool {
	if x != nil {
		return x.Distributed
	}
	return false
}

func (x *CreateRouterResp_Routers) GetExternalGatewayInfo() *CreateRouterResp_ExternalGatewayInfo {
	if x != nil {
		return x.ExternalGatewayInfo
	}
	return nil
}

func (x *CreateRouterResp_Routers) GetFlavorId() string {
	if x != nil {
		return x.FlavorId
	}
	return ""
}

func (x *CreateRouterResp_Routers) GetHa() bool {
	if x != nil {
		return x.Ha
	}
	return false
}

func (x *CreateRouterResp_Routers) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateRouterResp_Routers) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateRouterResp_Routers) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *CreateRouterResp_Routers) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *CreateRouterResp_Routers) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *CreateRouterResp_Routers) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateRouterResp_Routers) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *CreateRouterResp_Routers) GetServiceTypeId() string {
	if x != nil {
		return x.ServiceTypeId
	}
	return ""
}

func (x *CreateRouterResp_Routers) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

type CreateRouterResp_AvailabilityZoneHints struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateRouterResp_AvailabilityZoneHints) Reset() {
	*x = CreateRouterResp_AvailabilityZoneHints{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[340]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateRouterResp_AvailabilityZoneHints) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateRouterResp_AvailabilityZoneHints) ProtoMessage() {}

func (x *CreateRouterResp_AvailabilityZoneHints) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[340]
	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 CreateRouterResp_AvailabilityZoneHints.ProtoReflect.Descriptor instead.
func (*CreateRouterResp_AvailabilityZoneHints) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{103, 3}
}

type CreateRouterResp_ConntrackHelpers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateRouterResp_ConntrackHelpers) Reset() {
	*x = CreateRouterResp_ConntrackHelpers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[341]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateRouterResp_ConntrackHelpers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateRouterResp_ConntrackHelpers) ProtoMessage() {}

func (x *CreateRouterResp_ConntrackHelpers) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[341]
	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 CreateRouterResp_ConntrackHelpers.ProtoReflect.Descriptor instead.
func (*CreateRouterResp_ConntrackHelpers) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{103, 4}
}

type CreateRouterResp_Router struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp          bool                                      `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	AvailabilityZoneHints []*CreateRouterResp_AvailabilityZoneHints `protobuf:"bytes,2,rep,name=availability_zone_hints,json=availabilityZoneHints,proto3" json:"availability_zone_hints,omitempty"`
	AvailabilityZones     []string                                  `protobuf:"bytes,3,rep,name=availability_zones,json=availabilityZones,proto3" json:"availability_zones,omitempty"`
	CreatedAt             int64                                     `protobuf:"varint,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Description           string                                    `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	Distributed           bool                                      `protobuf:"varint,6,opt,name=distributed,proto3" json:"distributed,omitempty"`
	ExternalGatewayInfo   *CreateRouterResp_ExternalGatewayInfo     `protobuf:"bytes,7,opt,name=external_gateway_info,json=externalGatewayInfo,proto3" json:"external_gateway_info,omitempty"`
	FlavorId              string                                    `protobuf:"bytes,8,opt,name=flavor_id,json=flavorId,proto3" json:"flavor_id,omitempty"`
	Ha                    bool                                      `protobuf:"varint,9,opt,name=ha,proto3" json:"ha,omitempty"`
	Id                    string                                    `protobuf:"bytes,10,opt,name=id,proto3" json:"id,omitempty"`
	Name                  string                                    `protobuf:"bytes,11,opt,name=name,proto3" json:"name,omitempty"`
	Routers               []*CreateRouterResp_Routers               `protobuf:"bytes,12,rep,name=routers,proto3" json:"routers,omitempty"`
	RevisionNumber        uint32                                    `protobuf:"varint,13,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Status                string                                    `protobuf:"bytes,14,opt,name=status,proto3" json:"status,omitempty"`
	UpdatedAt             int64                                     `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	ProjectId             string                                    `protobuf:"bytes,16,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId              string                                    `protobuf:"bytes,17,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ServiceTypeId         string                                    `protobuf:"bytes,18,opt,name=service_type_id,json=serviceTypeId,proto3" json:"service_type_id,omitempty"`
	Tags                  []string                                  `protobuf:"bytes,19,rep,name=tags,proto3" json:"tags,omitempty"`
	ConntrackHelpers      []*CreateRouterResp_ConntrackHelpers      `protobuf:"bytes,20,rep,name=conntrack_helpers,json=conntrackHelpers,proto3" json:"conntrack_helpers,omitempty"`
}

func (x *CreateRouterResp_Router) Reset() {
	*x = CreateRouterResp_Router{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[342]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateRouterResp_Router) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateRouterResp_Router) ProtoMessage() {}

func (x *CreateRouterResp_Router) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[342]
	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 CreateRouterResp_Router.ProtoReflect.Descriptor instead.
func (*CreateRouterResp_Router) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{103, 5}
}

func (x *CreateRouterResp_Router) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *CreateRouterResp_Router) GetAvailabilityZoneHints() []*CreateRouterResp_AvailabilityZoneHints {
	if x != nil {
		return x.AvailabilityZoneHints
	}
	return nil
}

func (x *CreateRouterResp_Router) GetAvailabilityZones() []string {
	if x != nil {
		return x.AvailabilityZones
	}
	return nil
}

func (x *CreateRouterResp_Router) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *CreateRouterResp_Router) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateRouterResp_Router) GetDistributed() bool {
	if x != nil {
		return x.Distributed
	}
	return false
}

func (x *CreateRouterResp_Router) GetExternalGatewayInfo() *CreateRouterResp_ExternalGatewayInfo {
	if x != nil {
		return x.ExternalGatewayInfo
	}
	return nil
}

func (x *CreateRouterResp_Router) GetFlavorId() string {
	if x != nil {
		return x.FlavorId
	}
	return ""
}

func (x *CreateRouterResp_Router) GetHa() bool {
	if x != nil {
		return x.Ha
	}
	return false
}

func (x *CreateRouterResp_Router) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateRouterResp_Router) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateRouterResp_Router) GetRouters() []*CreateRouterResp_Routers {
	if x != nil {
		return x.Routers
	}
	return nil
}

func (x *CreateRouterResp_Router) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *CreateRouterResp_Router) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *CreateRouterResp_Router) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *CreateRouterResp_Router) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateRouterResp_Router) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *CreateRouterResp_Router) GetServiceTypeId() string {
	if x != nil {
		return x.ServiceTypeId
	}
	return ""
}

func (x *CreateRouterResp_Router) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *CreateRouterResp_Router) GetConntrackHelpers() []*CreateRouterResp_ConntrackHelpers {
	if x != nil {
		return x.ConntrackHelpers
	}
	return nil
}

type UpdateRouterReq_ExternalFixedIps struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *UpdateRouterReq_ExternalFixedIps) Reset() {
	*x = UpdateRouterReq_ExternalFixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[343]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateRouterReq_ExternalFixedIps) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateRouterReq_ExternalFixedIps) ProtoMessage() {}

func (x *UpdateRouterReq_ExternalFixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[343]
	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 UpdateRouterReq_ExternalFixedIps.ProtoReflect.Descriptor instead.
func (*UpdateRouterReq_ExternalFixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{104, 0}
}

func (x *UpdateRouterReq_ExternalFixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *UpdateRouterReq_ExternalFixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

type UpdateRouterReq_Routes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Destination string `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
	Nexthop     string `protobuf:"bytes,2,opt,name=nexthop,proto3" json:"nexthop,omitempty"`
}

func (x *UpdateRouterReq_Routes) Reset() {
	*x = UpdateRouterReq_Routes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[344]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateRouterReq_Routes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateRouterReq_Routes) ProtoMessage() {}

func (x *UpdateRouterReq_Routes) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[344]
	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 UpdateRouterReq_Routes.ProtoReflect.Descriptor instead.
func (*UpdateRouterReq_Routes) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{104, 1}
}

func (x *UpdateRouterReq_Routes) GetDestination() string {
	if x != nil {
		return x.Destination
	}
	return ""
}

func (x *UpdateRouterReq_Routes) GetNexthop() string {
	if x != nil {
		return x.Nexthop
	}
	return ""
}

type UpdateRouterReq_ExternalGatewayInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	NetworkId        string                              `protobuf:"bytes,1,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	EnableSnat       bool                                `protobuf:"varint,2,opt,name=enable_snat,json=enableSnat,proto3" json:"enable_snat,omitempty"`
	ExternalFixedIps []*UpdateRouterReq_ExternalFixedIps `protobuf:"bytes,3,rep,name=external_fixed_ips,json=externalFixedIps,proto3" json:"external_fixed_ips,omitempty"`
	Routes           []*UpdateRouterReq_Routes           `protobuf:"bytes,4,rep,name=routes,proto3" json:"routes,omitempty"`
}

func (x *UpdateRouterReq_ExternalGatewayInfo) Reset() {
	*x = UpdateRouterReq_ExternalGatewayInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[345]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateRouterReq_ExternalGatewayInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateRouterReq_ExternalGatewayInfo) ProtoMessage() {}

func (x *UpdateRouterReq_ExternalGatewayInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[345]
	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 UpdateRouterReq_ExternalGatewayInfo.ProtoReflect.Descriptor instead.
func (*UpdateRouterReq_ExternalGatewayInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{104, 2}
}

func (x *UpdateRouterReq_ExternalGatewayInfo) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *UpdateRouterReq_ExternalGatewayInfo) GetEnableSnat() bool {
	if x != nil {
		return x.EnableSnat
	}
	return false
}

func (x *UpdateRouterReq_ExternalGatewayInfo) GetExternalFixedIps() []*UpdateRouterReq_ExternalFixedIps {
	if x != nil {
		return x.ExternalFixedIps
	}
	return nil
}

func (x *UpdateRouterReq_ExternalGatewayInfo) GetRoutes() []*UpdateRouterReq_Routes {
	if x != nil {
		return x.Routes
	}
	return nil
}

type UpdateRouterReq_Router struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Distributed         bool                                 `protobuf:"varint,1,opt,name=distributed,proto3" json:"distributed,omitempty"`
	ExternalGatewayInfo *UpdateRouterReq_ExternalGatewayInfo `protobuf:"bytes,2,opt,name=external_gateway_info,json=externalGatewayInfo,proto3" json:"external_gateway_info,omitempty"`
}

func (x *UpdateRouterReq_Router) Reset() {
	*x = UpdateRouterReq_Router{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[346]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateRouterReq_Router) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateRouterReq_Router) ProtoMessage() {}

func (x *UpdateRouterReq_Router) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[346]
	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 UpdateRouterReq_Router.ProtoReflect.Descriptor instead.
func (*UpdateRouterReq_Router) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{104, 3}
}

func (x *UpdateRouterReq_Router) GetDistributed() bool {
	if x != nil {
		return x.Distributed
	}
	return false
}

func (x *UpdateRouterReq_Router) GetExternalGatewayInfo() *UpdateRouterReq_ExternalGatewayInfo {
	if x != nil {
		return x.ExternalGatewayInfo
	}
	return nil
}

type UpdateRouterResp_ExternalFixedIps struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *UpdateRouterResp_ExternalFixedIps) Reset() {
	*x = UpdateRouterResp_ExternalFixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[347]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateRouterResp_ExternalFixedIps) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateRouterResp_ExternalFixedIps) ProtoMessage() {}

func (x *UpdateRouterResp_ExternalFixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[347]
	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 UpdateRouterResp_ExternalFixedIps.ProtoReflect.Descriptor instead.
func (*UpdateRouterResp_ExternalFixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{105, 0}
}

func (x *UpdateRouterResp_ExternalFixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *UpdateRouterResp_ExternalFixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

type UpdateRouterResp_ExternalGatewayInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	EnableSnat       bool                                 `protobuf:"varint,1,opt,name=enable_snat,json=enableSnat,proto3" json:"enable_snat,omitempty"`
	ExternalFixedIps []*UpdateRouterResp_ExternalFixedIps `protobuf:"bytes,2,rep,name=external_fixed_ips,json=externalFixedIps,proto3" json:"external_fixed_ips,omitempty"`
	NetworkId        string                               `protobuf:"bytes,3,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
}

func (x *UpdateRouterResp_ExternalGatewayInfo) Reset() {
	*x = UpdateRouterResp_ExternalGatewayInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[348]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateRouterResp_ExternalGatewayInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateRouterResp_ExternalGatewayInfo) ProtoMessage() {}

func (x *UpdateRouterResp_ExternalGatewayInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[348]
	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 UpdateRouterResp_ExternalGatewayInfo.ProtoReflect.Descriptor instead.
func (*UpdateRouterResp_ExternalGatewayInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{105, 1}
}

func (x *UpdateRouterResp_ExternalGatewayInfo) GetEnableSnat() bool {
	if x != nil {
		return x.EnableSnat
	}
	return false
}

func (x *UpdateRouterResp_ExternalGatewayInfo) GetExternalFixedIps() []*UpdateRouterResp_ExternalFixedIps {
	if x != nil {
		return x.ExternalFixedIps
	}
	return nil
}

func (x *UpdateRouterResp_ExternalGatewayInfo) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

type UpdateRouterResp_Routes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Destination string `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
	Nexthop     string `protobuf:"bytes,2,opt,name=nexthop,proto3" json:"nexthop,omitempty"`
}

func (x *UpdateRouterResp_Routes) Reset() {
	*x = UpdateRouterResp_Routes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[349]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateRouterResp_Routes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateRouterResp_Routes) ProtoMessage() {}

func (x *UpdateRouterResp_Routes) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[349]
	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 UpdateRouterResp_Routes.ProtoReflect.Descriptor instead.
func (*UpdateRouterResp_Routes) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{105, 2}
}

func (x *UpdateRouterResp_Routes) GetDestination() string {
	if x != nil {
		return x.Destination
	}
	return ""
}

func (x *UpdateRouterResp_Routes) GetNexthop() string {
	if x != nil {
		return x.Nexthop
	}
	return ""
}

type UpdateRouterResp_AvailabilityZoneHints struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *UpdateRouterResp_AvailabilityZoneHints) Reset() {
	*x = UpdateRouterResp_AvailabilityZoneHints{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[350]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateRouterResp_AvailabilityZoneHints) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateRouterResp_AvailabilityZoneHints) ProtoMessage() {}

func (x *UpdateRouterResp_AvailabilityZoneHints) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[350]
	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 UpdateRouterResp_AvailabilityZoneHints.ProtoReflect.Descriptor instead.
func (*UpdateRouterResp_AvailabilityZoneHints) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{105, 3}
}

type UpdateRouterResp_ConntrackHelpers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *UpdateRouterResp_ConntrackHelpers) Reset() {
	*x = UpdateRouterResp_ConntrackHelpers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[351]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateRouterResp_ConntrackHelpers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateRouterResp_ConntrackHelpers) ProtoMessage() {}

func (x *UpdateRouterResp_ConntrackHelpers) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[351]
	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 UpdateRouterResp_ConntrackHelpers.ProtoReflect.Descriptor instead.
func (*UpdateRouterResp_ConntrackHelpers) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{105, 4}
}

type UpdateRouterResp_Router struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp          bool                                      `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	AvailabilityZoneHints []*UpdateRouterResp_AvailabilityZoneHints `protobuf:"bytes,2,rep,name=availability_zone_hints,json=availabilityZoneHints,proto3" json:"availability_zone_hints,omitempty"`
	AvailabilityZones     []string                                  `protobuf:"bytes,3,rep,name=availability_zones,json=availabilityZones,proto3" json:"availability_zones,omitempty"`
	CreatedAt             int64                                     `protobuf:"varint,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Description           string                                    `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	Distributed           bool                                      `protobuf:"varint,6,opt,name=distributed,proto3" json:"distributed,omitempty"`
	ExternalGatewayInfo   *UpdateRouterResp_ExternalGatewayInfo     `protobuf:"bytes,7,opt,name=external_gateway_info,json=externalGatewayInfo,proto3" json:"external_gateway_info,omitempty"`
	FlavorId              string                                    `protobuf:"bytes,8,opt,name=flavor_id,json=flavorId,proto3" json:"flavor_id,omitempty"`
	Ha                    bool                                      `protobuf:"varint,9,opt,name=ha,proto3" json:"ha,omitempty"`
	Id                    string                                    `protobuf:"bytes,10,opt,name=id,proto3" json:"id,omitempty"`
	Name                  string                                    `protobuf:"bytes,11,opt,name=name,proto3" json:"name,omitempty"`
	RevisionNumber        uint32                                    `protobuf:"varint,12,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Routes                []*UpdateRouterResp_Routes                `protobuf:"bytes,13,rep,name=routes,proto3" json:"routes,omitempty"`
	Status                string                                    `protobuf:"bytes,14,opt,name=status,proto3" json:"status,omitempty"`
	UpdatedAt             int64                                     `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	ProjectId             string                                    `protobuf:"bytes,16,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId              string                                    `protobuf:"bytes,17,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ServiceTypeId         string                                    `protobuf:"bytes,18,opt,name=service_type_id,json=serviceTypeId,proto3" json:"service_type_id,omitempty"`
	Tags                  []string                                  `protobuf:"bytes,19,rep,name=tags,proto3" json:"tags,omitempty"`
	ConntrackHelpers      []*UpdateRouterResp_ConntrackHelpers      `protobuf:"bytes,20,rep,name=conntrack_helpers,json=conntrackHelpers,proto3" json:"conntrack_helpers,omitempty"`
}

func (x *UpdateRouterResp_Router) Reset() {
	*x = UpdateRouterResp_Router{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[352]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateRouterResp_Router) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateRouterResp_Router) ProtoMessage() {}

func (x *UpdateRouterResp_Router) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[352]
	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 UpdateRouterResp_Router.ProtoReflect.Descriptor instead.
func (*UpdateRouterResp_Router) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{105, 5}
}

func (x *UpdateRouterResp_Router) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *UpdateRouterResp_Router) GetAvailabilityZoneHints() []*UpdateRouterResp_AvailabilityZoneHints {
	if x != nil {
		return x.AvailabilityZoneHints
	}
	return nil
}

func (x *UpdateRouterResp_Router) GetAvailabilityZones() []string {
	if x != nil {
		return x.AvailabilityZones
	}
	return nil
}

func (x *UpdateRouterResp_Router) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *UpdateRouterResp_Router) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdateRouterResp_Router) GetDistributed() bool {
	if x != nil {
		return x.Distributed
	}
	return false
}

func (x *UpdateRouterResp_Router) GetExternalGatewayInfo() *UpdateRouterResp_ExternalGatewayInfo {
	if x != nil {
		return x.ExternalGatewayInfo
	}
	return nil
}

func (x *UpdateRouterResp_Router) GetFlavorId() string {
	if x != nil {
		return x.FlavorId
	}
	return ""
}

func (x *UpdateRouterResp_Router) GetHa() bool {
	if x != nil {
		return x.Ha
	}
	return false
}

func (x *UpdateRouterResp_Router) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateRouterResp_Router) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateRouterResp_Router) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *UpdateRouterResp_Router) GetRoutes() []*UpdateRouterResp_Routes {
	if x != nil {
		return x.Routes
	}
	return nil
}

func (x *UpdateRouterResp_Router) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *UpdateRouterResp_Router) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *UpdateRouterResp_Router) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *UpdateRouterResp_Router) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *UpdateRouterResp_Router) GetServiceTypeId() string {
	if x != nil {
		return x.ServiceTypeId
	}
	return ""
}

func (x *UpdateRouterResp_Router) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *UpdateRouterResp_Router) GetConntrackHelpers() []*UpdateRouterResp_ConntrackHelpers {
	if x != nil {
		return x.ConntrackHelpers
	}
	return nil
}

type ShowRouterDetailsReq_ExternalFixedIps struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *ShowRouterDetailsReq_ExternalFixedIps) Reset() {
	*x = ShowRouterDetailsReq_ExternalFixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[353]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowRouterDetailsReq_ExternalFixedIps) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowRouterDetailsReq_ExternalFixedIps) ProtoMessage() {}

func (x *ShowRouterDetailsReq_ExternalFixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[353]
	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 ShowRouterDetailsReq_ExternalFixedIps.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsReq_ExternalFixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{106, 0}
}

func (x *ShowRouterDetailsReq_ExternalFixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *ShowRouterDetailsReq_ExternalFixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

type ShowRouterDetailsReq_Routes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Destination string `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
	Nexthop     string `protobuf:"bytes,2,opt,name=nexthop,proto3" json:"nexthop,omitempty"`
}

func (x *ShowRouterDetailsReq_Routes) Reset() {
	*x = ShowRouterDetailsReq_Routes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[354]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowRouterDetailsReq_Routes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowRouterDetailsReq_Routes) ProtoMessage() {}

func (x *ShowRouterDetailsReq_Routes) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[354]
	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 ShowRouterDetailsReq_Routes.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsReq_Routes) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{106, 1}
}

func (x *ShowRouterDetailsReq_Routes) GetDestination() string {
	if x != nil {
		return x.Destination
	}
	return ""
}

func (x *ShowRouterDetailsReq_Routes) GetNexthop() string {
	if x != nil {
		return x.Nexthop
	}
	return ""
}

type ShowRouterDetailsReq_ExternalGatewayInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	NetworkId        string                                   `protobuf:"bytes,1,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	EnableSnat       bool                                     `protobuf:"varint,2,opt,name=enable_snat,json=enableSnat,proto3" json:"enable_snat,omitempty"`
	ExternalFixedIps []*ShowRouterDetailsReq_ExternalFixedIps `protobuf:"bytes,3,rep,name=external_fixed_ips,json=externalFixedIps,proto3" json:"external_fixed_ips,omitempty"`
	Routes           []*ShowRouterDetailsReq_Routes           `protobuf:"bytes,4,rep,name=routes,proto3" json:"routes,omitempty"`
}

func (x *ShowRouterDetailsReq_ExternalGatewayInfo) Reset() {
	*x = ShowRouterDetailsReq_ExternalGatewayInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[355]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowRouterDetailsReq_ExternalGatewayInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowRouterDetailsReq_ExternalGatewayInfo) ProtoMessage() {}

func (x *ShowRouterDetailsReq_ExternalGatewayInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[355]
	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 ShowRouterDetailsReq_ExternalGatewayInfo.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsReq_ExternalGatewayInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{106, 2}
}

func (x *ShowRouterDetailsReq_ExternalGatewayInfo) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *ShowRouterDetailsReq_ExternalGatewayInfo) GetEnableSnat() bool {
	if x != nil {
		return x.EnableSnat
	}
	return false
}

func (x *ShowRouterDetailsReq_ExternalGatewayInfo) GetExternalFixedIps() []*ShowRouterDetailsReq_ExternalFixedIps {
	if x != nil {
		return x.ExternalFixedIps
	}
	return nil
}

func (x *ShowRouterDetailsReq_ExternalGatewayInfo) GetRoutes() []*ShowRouterDetailsReq_Routes {
	if x != nil {
		return x.Routes
	}
	return nil
}

type ShowRouterDetailsReq_Router struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Distributed         bool                                      `protobuf:"varint,1,opt,name=distributed,proto3" json:"distributed,omitempty"`
	ExternalGatewayInfo *ShowRouterDetailsReq_ExternalGatewayInfo `protobuf:"bytes,2,opt,name=external_gateway_info,json=externalGatewayInfo,proto3" json:"external_gateway_info,omitempty"`
}

func (x *ShowRouterDetailsReq_Router) Reset() {
	*x = ShowRouterDetailsReq_Router{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[356]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowRouterDetailsReq_Router) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowRouterDetailsReq_Router) ProtoMessage() {}

func (x *ShowRouterDetailsReq_Router) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[356]
	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 ShowRouterDetailsReq_Router.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsReq_Router) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{106, 3}
}

func (x *ShowRouterDetailsReq_Router) GetDistributed() bool {
	if x != nil {
		return x.Distributed
	}
	return false
}

func (x *ShowRouterDetailsReq_Router) GetExternalGatewayInfo() *ShowRouterDetailsReq_ExternalGatewayInfo {
	if x != nil {
		return x.ExternalGatewayInfo
	}
	return nil
}

type ShowRouterDetailsResp_ExternalFixedIps struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	SubnetId  string `protobuf:"bytes,2,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
}

func (x *ShowRouterDetailsResp_ExternalFixedIps) Reset() {
	*x = ShowRouterDetailsResp_ExternalFixedIps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[357]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowRouterDetailsResp_ExternalFixedIps) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowRouterDetailsResp_ExternalFixedIps) ProtoMessage() {}

func (x *ShowRouterDetailsResp_ExternalFixedIps) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[357]
	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 ShowRouterDetailsResp_ExternalFixedIps.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsResp_ExternalFixedIps) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{107, 0}
}

func (x *ShowRouterDetailsResp_ExternalFixedIps) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *ShowRouterDetailsResp_ExternalFixedIps) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

type ShowRouterDetailsResp_ExternalGatewayInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	EnableSnat       bool                                      `protobuf:"varint,1,opt,name=enable_snat,json=enableSnat,proto3" json:"enable_snat,omitempty"`
	ExternalFixedIps []*ShowRouterDetailsResp_ExternalFixedIps `protobuf:"bytes,2,rep,name=external_fixed_ips,json=externalFixedIps,proto3" json:"external_fixed_ips,omitempty"`
	NetworkId        string                                    `protobuf:"bytes,3,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
}

func (x *ShowRouterDetailsResp_ExternalGatewayInfo) Reset() {
	*x = ShowRouterDetailsResp_ExternalGatewayInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[358]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowRouterDetailsResp_ExternalGatewayInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowRouterDetailsResp_ExternalGatewayInfo) ProtoMessage() {}

func (x *ShowRouterDetailsResp_ExternalGatewayInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[358]
	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 ShowRouterDetailsResp_ExternalGatewayInfo.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsResp_ExternalGatewayInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{107, 1}
}

func (x *ShowRouterDetailsResp_ExternalGatewayInfo) GetEnableSnat() bool {
	if x != nil {
		return x.EnableSnat
	}
	return false
}

func (x *ShowRouterDetailsResp_ExternalGatewayInfo) GetExternalFixedIps() []*ShowRouterDetailsResp_ExternalFixedIps {
	if x != nil {
		return x.ExternalFixedIps
	}
	return nil
}

func (x *ShowRouterDetailsResp_ExternalGatewayInfo) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

type ShowRouterDetailsResp_Routes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Destination string `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
	Nexthop     string `protobuf:"bytes,2,opt,name=nexthop,proto3" json:"nexthop,omitempty"`
}

func (x *ShowRouterDetailsResp_Routes) Reset() {
	*x = ShowRouterDetailsResp_Routes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[359]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowRouterDetailsResp_Routes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowRouterDetailsResp_Routes) ProtoMessage() {}

func (x *ShowRouterDetailsResp_Routes) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[359]
	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 ShowRouterDetailsResp_Routes.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsResp_Routes) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{107, 2}
}

func (x *ShowRouterDetailsResp_Routes) GetDestination() string {
	if x != nil {
		return x.Destination
	}
	return ""
}

func (x *ShowRouterDetailsResp_Routes) GetNexthop() string {
	if x != nil {
		return x.Nexthop
	}
	return ""
}

type ShowRouterDetailsResp_AvailabilityZoneHints struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowRouterDetailsResp_AvailabilityZoneHints) Reset() {
	*x = ShowRouterDetailsResp_AvailabilityZoneHints{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[360]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowRouterDetailsResp_AvailabilityZoneHints) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowRouterDetailsResp_AvailabilityZoneHints) ProtoMessage() {}

func (x *ShowRouterDetailsResp_AvailabilityZoneHints) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[360]
	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 ShowRouterDetailsResp_AvailabilityZoneHints.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsResp_AvailabilityZoneHints) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{107, 3}
}

type ShowRouterDetailsResp_ConntrackHelpers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowRouterDetailsResp_ConntrackHelpers) Reset() {
	*x = ShowRouterDetailsResp_ConntrackHelpers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[361]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowRouterDetailsResp_ConntrackHelpers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowRouterDetailsResp_ConntrackHelpers) ProtoMessage() {}

func (x *ShowRouterDetailsResp_ConntrackHelpers) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[361]
	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 ShowRouterDetailsResp_ConntrackHelpers.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsResp_ConntrackHelpers) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{107, 4}
}

type ShowRouterDetailsResp_Router struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp          bool                                           `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	AvailabilityZoneHints []*ShowRouterDetailsResp_AvailabilityZoneHints `protobuf:"bytes,2,rep,name=availability_zone_hints,json=availabilityZoneHints,proto3" json:"availability_zone_hints,omitempty"`
	AvailabilityZones     []string                                       `protobuf:"bytes,3,rep,name=availability_zones,json=availabilityZones,proto3" json:"availability_zones,omitempty"`
	CreatedAt             int64                                          `protobuf:"varint,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Description           string                                         `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	Distributed           bool                                           `protobuf:"varint,6,opt,name=distributed,proto3" json:"distributed,omitempty"`
	ExternalGatewayInfo   *ShowRouterDetailsResp_ExternalGatewayInfo     `protobuf:"bytes,7,opt,name=external_gateway_info,json=externalGatewayInfo,proto3" json:"external_gateway_info,omitempty"`
	FlavorId              string                                         `protobuf:"bytes,8,opt,name=flavor_id,json=flavorId,proto3" json:"flavor_id,omitempty"`
	Ha                    bool                                           `protobuf:"varint,9,opt,name=ha,proto3" json:"ha,omitempty"`
	Id                    string                                         `protobuf:"bytes,10,opt,name=id,proto3" json:"id,omitempty"`
	Name                  string                                         `protobuf:"bytes,11,opt,name=name,proto3" json:"name,omitempty"`
	RevisionNumber        uint32                                         `protobuf:"varint,12,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Routes                []*ShowRouterDetailsResp_Routes                `protobuf:"bytes,13,rep,name=routes,proto3" json:"routes,omitempty"`
	Status                string                                         `protobuf:"bytes,14,opt,name=status,proto3" json:"status,omitempty"`
	UpdatedAt             int64                                          `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	ProjectId             string                                         `protobuf:"bytes,16,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId              string                                         `protobuf:"bytes,17,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	ServiceTypeId         string                                         `protobuf:"bytes,18,opt,name=service_type_id,json=serviceTypeId,proto3" json:"service_type_id,omitempty"`
	Tags                  []string                                       `protobuf:"bytes,19,rep,name=tags,proto3" json:"tags,omitempty"`
	ConntrackHelpers      []*ShowRouterDetailsResp_ConntrackHelpers      `protobuf:"bytes,20,rep,name=conntrack_helpers,json=conntrackHelpers,proto3" json:"conntrack_helpers,omitempty"`
}

func (x *ShowRouterDetailsResp_Router) Reset() {
	*x = ShowRouterDetailsResp_Router{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[362]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowRouterDetailsResp_Router) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowRouterDetailsResp_Router) ProtoMessage() {}

func (x *ShowRouterDetailsResp_Router) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[362]
	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 ShowRouterDetailsResp_Router.ProtoReflect.Descriptor instead.
func (*ShowRouterDetailsResp_Router) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{107, 5}
}

func (x *ShowRouterDetailsResp_Router) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *ShowRouterDetailsResp_Router) GetAvailabilityZoneHints() []*ShowRouterDetailsResp_AvailabilityZoneHints {
	if x != nil {
		return x.AvailabilityZoneHints
	}
	return nil
}

func (x *ShowRouterDetailsResp_Router) GetAvailabilityZones() []string {
	if x != nil {
		return x.AvailabilityZones
	}
	return nil
}

func (x *ShowRouterDetailsResp_Router) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ShowRouterDetailsResp_Router) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ShowRouterDetailsResp_Router) GetDistributed() bool {
	if x != nil {
		return x.Distributed
	}
	return false
}

func (x *ShowRouterDetailsResp_Router) GetExternalGatewayInfo() *ShowRouterDetailsResp_ExternalGatewayInfo {
	if x != nil {
		return x.ExternalGatewayInfo
	}
	return nil
}

func (x *ShowRouterDetailsResp_Router) GetFlavorId() string {
	if x != nil {
		return x.FlavorId
	}
	return ""
}

func (x *ShowRouterDetailsResp_Router) GetHa() bool {
	if x != nil {
		return x.Ha
	}
	return false
}

func (x *ShowRouterDetailsResp_Router) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ShowRouterDetailsResp_Router) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ShowRouterDetailsResp_Router) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ShowRouterDetailsResp_Router) GetRoutes() []*ShowRouterDetailsResp_Routes {
	if x != nil {
		return x.Routes
	}
	return nil
}

func (x *ShowRouterDetailsResp_Router) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ShowRouterDetailsResp_Router) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ShowRouterDetailsResp_Router) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ShowRouterDetailsResp_Router) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ShowRouterDetailsResp_Router) GetServiceTypeId() string {
	if x != nil {
		return x.ServiceTypeId
	}
	return ""
}

func (x *ShowRouterDetailsResp_Router) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ShowRouterDetailsResp_Router) GetConntrackHelpers() []*ShowRouterDetailsResp_ConntrackHelpers {
	if x != nil {
		return x.ConntrackHelpers
	}
	return nil
}

type ListFloatingIPsResp_PortDetails struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Status       string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	Name         string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	AdminStateUp bool   `protobuf:"varint,3,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	NetworkId    string `protobuf:"bytes,4,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	DeviceOwner  string `protobuf:"bytes,5,opt,name=device_owner,json=deviceOwner,proto3" json:"device_owner,omitempty"`
	MacAddress   string `protobuf:"bytes,6,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
	DeviceId     string `protobuf:"bytes,7,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
}

func (x *ListFloatingIPsResp_PortDetails) Reset() {
	*x = ListFloatingIPsResp_PortDetails{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[363]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFloatingIPsResp_PortDetails) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFloatingIPsResp_PortDetails) ProtoMessage() {}

func (x *ListFloatingIPsResp_PortDetails) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[363]
	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 ListFloatingIPsResp_PortDetails.ProtoReflect.Descriptor instead.
func (*ListFloatingIPsResp_PortDetails) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{111, 0}
}

func (x *ListFloatingIPsResp_PortDetails) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ListFloatingIPsResp_PortDetails) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListFloatingIPsResp_PortDetails) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *ListFloatingIPsResp_PortDetails) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *ListFloatingIPsResp_PortDetails) GetDeviceOwner() string {
	if x != nil {
		return x.DeviceOwner
	}
	return ""
}

func (x *ListFloatingIPsResp_PortDetails) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

func (x *ListFloatingIPsResp_PortDetails) GetDeviceId() string {
	if x != nil {
		return x.DeviceId
	}
	return ""
}

type ListFloatingIPsResp_PortForwardings struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Protocol          string `protobuf:"bytes,1,opt,name=protocol,proto3" json:"protocol,omitempty"`
	InternalIpAddress string `protobuf:"bytes,2,opt,name=internal_ip_address,json=internalIpAddress,proto3" json:"internal_ip_address,omitempty"`
	InternalPort      uint32 `protobuf:"varint,3,opt,name=internal_port,json=internalPort,proto3" json:"internal_port,omitempty"`
	InternalPortId    string `protobuf:"bytes,4,opt,name=internal_port_id,json=internalPortId,proto3" json:"internal_port_id,omitempty"`
	Id                string `protobuf:"bytes,6,opt,name=id,proto3" json:"id,omitempty"`
}

func (x *ListFloatingIPsResp_PortForwardings) Reset() {
	*x = ListFloatingIPsResp_PortForwardings{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[364]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFloatingIPsResp_PortForwardings) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFloatingIPsResp_PortForwardings) ProtoMessage() {}

func (x *ListFloatingIPsResp_PortForwardings) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[364]
	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 ListFloatingIPsResp_PortForwardings.ProtoReflect.Descriptor instead.
func (*ListFloatingIPsResp_PortForwardings) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{111, 1}
}

func (x *ListFloatingIPsResp_PortForwardings) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *ListFloatingIPsResp_PortForwardings) GetInternalIpAddress() string {
	if x != nil {
		return x.InternalIpAddress
	}
	return ""
}

func (x *ListFloatingIPsResp_PortForwardings) GetInternalPort() uint32 {
	if x != nil {
		return x.InternalPort
	}
	return 0
}

func (x *ListFloatingIPsResp_PortForwardings) GetInternalPortId() string {
	if x != nil {
		return x.InternalPortId
	}
	return ""
}

func (x *ListFloatingIPsResp_PortForwardings) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type ListFloatingIPsResp_Floatingips struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	RouterId           string                                 `protobuf:"bytes,1,opt,name=router_id,json=routerId,proto3" json:"router_id,omitempty"`
	Description        string                                 `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	DnsDomain          string                                 `protobuf:"bytes,3,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	DnsName            string                                 `protobuf:"bytes,4,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	CreatedAt          int64                                  `protobuf:"varint,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64                                  `protobuf:"varint,6,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RevisionNumber     uint32                                 `protobuf:"varint,7,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	ProjectId          string                                 `protobuf:"bytes,8,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId           string                                 `protobuf:"bytes,9,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	FloatingNetworkId  string                                 `protobuf:"bytes,10,opt,name=floating_network_id,json=floatingNetworkId,proto3" json:"floating_network_id,omitempty"`
	FixedIpAddress     string                                 `protobuf:"bytes,11,opt,name=fixed_ip_address,json=fixedIpAddress,proto3" json:"fixed_ip_address,omitempty"`
	FloatingIpAddress  string                                 `protobuf:"bytes,12,opt,name=floating_ip_address,json=floatingIpAddress,proto3" json:"floating_ip_address,omitempty"`
	PortId             string                                 `protobuf:"bytes,13,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	Id                 string                                 `protobuf:"bytes,14,opt,name=id,proto3" json:"id,omitempty"`
	Status             string                                 `protobuf:"bytes,15,opt,name=status,proto3" json:"status,omitempty"`
	PortDetails        *ListFloatingIPsResp_PortDetails       `protobuf:"bytes,16,opt,name=port_details,json=portDetails,proto3" json:"port_details,omitempty"`
	Tags               []string                               `protobuf:"bytes,17,rep,name=tags,proto3" json:"tags,omitempty"`
	PortForwardings    []*ListFloatingIPsResp_PortForwardings `protobuf:"bytes,18,rep,name=port_forwardings,json=portForwardings,proto3" json:"port_forwardings,omitempty"`
	QosNetworkPolicyId string                                 `protobuf:"bytes,19,opt,name=qos_network_policy_id,json=qosNetworkPolicyId,proto3" json:"qos_network_policy_id,omitempty"`
	QosPolicyId        string                                 `protobuf:"bytes,20,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
}

func (x *ListFloatingIPsResp_Floatingips) Reset() {
	*x = ListFloatingIPsResp_Floatingips{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[365]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFloatingIPsResp_Floatingips) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFloatingIPsResp_Floatingips) ProtoMessage() {}

func (x *ListFloatingIPsResp_Floatingips) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[365]
	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 ListFloatingIPsResp_Floatingips.ProtoReflect.Descriptor instead.
func (*ListFloatingIPsResp_Floatingips) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{111, 2}
}

func (x *ListFloatingIPsResp_Floatingips) GetRouterId() string {
	if x != nil {
		return x.RouterId
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ListFloatingIPsResp_Floatingips) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ListFloatingIPsResp_Floatingips) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ListFloatingIPsResp_Floatingips) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetFloatingNetworkId() string {
	if x != nil {
		return x.FloatingNetworkId
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetFixedIpAddress() string {
	if x != nil {
		return x.FixedIpAddress
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetFloatingIpAddress() string {
	if x != nil {
		return x.FloatingIpAddress
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetPortId() string {
	if x != nil {
		return x.PortId
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetPortDetails() *ListFloatingIPsResp_PortDetails {
	if x != nil {
		return x.PortDetails
	}
	return nil
}

func (x *ListFloatingIPsResp_Floatingips) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ListFloatingIPsResp_Floatingips) GetPortForwardings() []*ListFloatingIPsResp_PortForwardings {
	if x != nil {
		return x.PortForwardings
	}
	return nil
}

func (x *ListFloatingIPsResp_Floatingips) GetQosNetworkPolicyId() string {
	if x != nil {
		return x.QosNetworkPolicyId
	}
	return ""
}

func (x *ListFloatingIPsResp_Floatingips) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

type CreateFloatingIPReq_Floatingip struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FloatingNetworkId string `protobuf:"bytes,1,opt,name=floating_network_id,json=floatingNetworkId,proto3" json:"floating_network_id,omitempty"`
	PortId            string `protobuf:"bytes,2,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	SubnetId          string `protobuf:"bytes,3,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
	FixedIpAddress    string `protobuf:"bytes,4,opt,name=fixed_ip_address,json=fixedIpAddress,proto3" json:"fixed_ip_address,omitempty"`
	FloatingIpAddress string `protobuf:"bytes,5,opt,name=floating_ip_address,json=floatingIpAddress,proto3" json:"floating_ip_address,omitempty"`
	Description       string `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`
	DnsDomain         string `protobuf:"bytes,7,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	DnsName           string `protobuf:"bytes,8,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	QosPolicyId       string `protobuf:"bytes,9,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
}

func (x *CreateFloatingIPReq_Floatingip) Reset() {
	*x = CreateFloatingIPReq_Floatingip{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[366]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFloatingIPReq_Floatingip) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFloatingIPReq_Floatingip) ProtoMessage() {}

func (x *CreateFloatingIPReq_Floatingip) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[366]
	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 CreateFloatingIPReq_Floatingip.ProtoReflect.Descriptor instead.
func (*CreateFloatingIPReq_Floatingip) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{112, 0}
}

func (x *CreateFloatingIPReq_Floatingip) GetFloatingNetworkId() string {
	if x != nil {
		return x.FloatingNetworkId
	}
	return ""
}

func (x *CreateFloatingIPReq_Floatingip) GetPortId() string {
	if x != nil {
		return x.PortId
	}
	return ""
}

func (x *CreateFloatingIPReq_Floatingip) GetSubnetId() string {
	if x != nil {
		return x.SubnetId
	}
	return ""
}

func (x *CreateFloatingIPReq_Floatingip) GetFixedIpAddress() string {
	if x != nil {
		return x.FixedIpAddress
	}
	return ""
}

func (x *CreateFloatingIPReq_Floatingip) GetFloatingIpAddress() string {
	if x != nil {
		return x.FloatingIpAddress
	}
	return ""
}

func (x *CreateFloatingIPReq_Floatingip) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateFloatingIPReq_Floatingip) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *CreateFloatingIPReq_Floatingip) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

func (x *CreateFloatingIPReq_Floatingip) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

type CreateFloatingIPResp_PortDetails struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Status       string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	Name         string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	AdminStateUp bool   `protobuf:"varint,3,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	NetworkId    string `protobuf:"bytes,4,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	DeviceOwner  string `protobuf:"bytes,5,opt,name=device_owner,json=deviceOwner,proto3" json:"device_owner,omitempty"`
	MacAddress   string `protobuf:"bytes,6,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
	DeviceId     string `protobuf:"bytes,7,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
}

func (x *CreateFloatingIPResp_PortDetails) Reset() {
	*x = CreateFloatingIPResp_PortDetails{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[367]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFloatingIPResp_PortDetails) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFloatingIPResp_PortDetails) ProtoMessage() {}

func (x *CreateFloatingIPResp_PortDetails) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[367]
	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 CreateFloatingIPResp_PortDetails.ProtoReflect.Descriptor instead.
func (*CreateFloatingIPResp_PortDetails) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{113, 0}
}

func (x *CreateFloatingIPResp_PortDetails) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *CreateFloatingIPResp_PortDetails) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateFloatingIPResp_PortDetails) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *CreateFloatingIPResp_PortDetails) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *CreateFloatingIPResp_PortDetails) GetDeviceOwner() string {
	if x != nil {
		return x.DeviceOwner
	}
	return ""
}

func (x *CreateFloatingIPResp_PortDetails) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

func (x *CreateFloatingIPResp_PortDetails) GetDeviceId() string {
	if x != nil {
		return x.DeviceId
	}
	return ""
}

type CreateFloatingIPResp_PortForwardings struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Protocol          string `protobuf:"bytes,1,opt,name=protocol,proto3" json:"protocol,omitempty"`
	InternalIpAddress string `protobuf:"bytes,2,opt,name=internal_ip_address,json=internalIpAddress,proto3" json:"internal_ip_address,omitempty"`
	InternalPort      uint32 `protobuf:"varint,3,opt,name=internal_port,json=internalPort,proto3" json:"internal_port,omitempty"`
	InternalPortId    string `protobuf:"bytes,4,opt,name=internal_port_id,json=internalPortId,proto3" json:"internal_port_id,omitempty"`
	ExternalPort      uint32 `protobuf:"varint,5,opt,name=external_port,json=externalPort,proto3" json:"external_port,omitempty"`
	Id                string `protobuf:"bytes,6,opt,name=id,proto3" json:"id,omitempty"`
}

func (x *CreateFloatingIPResp_PortForwardings) Reset() {
	*x = CreateFloatingIPResp_PortForwardings{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[368]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFloatingIPResp_PortForwardings) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFloatingIPResp_PortForwardings) ProtoMessage() {}

func (x *CreateFloatingIPResp_PortForwardings) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[368]
	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 CreateFloatingIPResp_PortForwardings.ProtoReflect.Descriptor instead.
func (*CreateFloatingIPResp_PortForwardings) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{113, 1}
}

func (x *CreateFloatingIPResp_PortForwardings) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *CreateFloatingIPResp_PortForwardings) GetInternalIpAddress() string {
	if x != nil {
		return x.InternalIpAddress
	}
	return ""
}

func (x *CreateFloatingIPResp_PortForwardings) GetInternalPort() uint32 {
	if x != nil {
		return x.InternalPort
	}
	return 0
}

func (x *CreateFloatingIPResp_PortForwardings) GetInternalPortId() string {
	if x != nil {
		return x.InternalPortId
	}
	return ""
}

func (x *CreateFloatingIPResp_PortForwardings) GetExternalPort() uint32 {
	if x != nil {
		return x.ExternalPort
	}
	return 0
}

func (x *CreateFloatingIPResp_PortForwardings) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type CreateFloatingIPResp_Floatingip struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FixedIpAddress    string                                  `protobuf:"bytes,1,opt,name=fixed_ip_address,json=fixedIpAddress,proto3" json:"fixed_ip_address,omitempty"`
	FloatingIpAddress string                                  `protobuf:"bytes,2,opt,name=floating_ip_address,json=floatingIpAddress,proto3" json:"floating_ip_address,omitempty"`
	FloatingNetworkId string                                  `protobuf:"bytes,3,opt,name=floating_network_id,json=floatingNetworkId,proto3" json:"floating_network_id,omitempty"`
	Id                string                                  `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"`
	PortId            string                                  `protobuf:"bytes,5,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	RouterId          string                                  `protobuf:"bytes,6,opt,name=router_id,json=routerId,proto3" json:"router_id,omitempty"`
	Status            string                                  `protobuf:"bytes,7,opt,name=status,proto3" json:"status,omitempty"`
	ProjectId         string                                  `protobuf:"bytes,8,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId          string                                  `protobuf:"bytes,9,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	Description       string                                  `protobuf:"bytes,10,opt,name=description,proto3" json:"description,omitempty"`
	DnsDomain         string                                  `protobuf:"bytes,11,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	DnsName           string                                  `protobuf:"bytes,12,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	CreatedAt         int64                                   `protobuf:"varint,13,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt         int64                                   `protobuf:"varint,14,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RevisionNumber    uint32                                  `protobuf:"varint,15,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	PortDetails       *CreateFloatingIPResp_PortDetails       `protobuf:"bytes,16,opt,name=port_details,json=portDetails,proto3" json:"port_details,omitempty"`
	Tags              []string                                `protobuf:"bytes,17,rep,name=tags,proto3" json:"tags,omitempty"`
	PortForwardings   []*CreateFloatingIPResp_PortForwardings `protobuf:"bytes,18,rep,name=port_forwardings,json=portForwardings,proto3" json:"port_forwardings,omitempty"`
	QosPolicyId       string                                  `protobuf:"bytes,19,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
}

func (x *CreateFloatingIPResp_Floatingip) Reset() {
	*x = CreateFloatingIPResp_Floatingip{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[369]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFloatingIPResp_Floatingip) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFloatingIPResp_Floatingip) ProtoMessage() {}

func (x *CreateFloatingIPResp_Floatingip) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[369]
	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 CreateFloatingIPResp_Floatingip.ProtoReflect.Descriptor instead.
func (*CreateFloatingIPResp_Floatingip) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{113, 2}
}

func (x *CreateFloatingIPResp_Floatingip) GetFixedIpAddress() string {
	if x != nil {
		return x.FixedIpAddress
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetFloatingIpAddress() string {
	if x != nil {
		return x.FloatingIpAddress
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetFloatingNetworkId() string {
	if x != nil {
		return x.FloatingNetworkId
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetPortId() string {
	if x != nil {
		return x.PortId
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetRouterId() string {
	if x != nil {
		return x.RouterId
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

func (x *CreateFloatingIPResp_Floatingip) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *CreateFloatingIPResp_Floatingip) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *CreateFloatingIPResp_Floatingip) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *CreateFloatingIPResp_Floatingip) GetPortDetails() *CreateFloatingIPResp_PortDetails {
	if x != nil {
		return x.PortDetails
	}
	return nil
}

func (x *CreateFloatingIPResp_Floatingip) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *CreateFloatingIPResp_Floatingip) GetPortForwardings() []*CreateFloatingIPResp_PortForwardings {
	if x != nil {
		return x.PortForwardings
	}
	return nil
}

func (x *CreateFloatingIPResp_Floatingip) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

type UpdateFloatingIPReq_Floatingip struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PortId string `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
}

func (x *UpdateFloatingIPReq_Floatingip) Reset() {
	*x = UpdateFloatingIPReq_Floatingip{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[370]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateFloatingIPReq_Floatingip) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateFloatingIPReq_Floatingip) ProtoMessage() {}

func (x *UpdateFloatingIPReq_Floatingip) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[370]
	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 UpdateFloatingIPReq_Floatingip.ProtoReflect.Descriptor instead.
func (*UpdateFloatingIPReq_Floatingip) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{114, 0}
}

func (x *UpdateFloatingIPReq_Floatingip) GetPortId() string {
	if x != nil {
		return x.PortId
	}
	return ""
}

type UpdateFloatingIPResp_PortDetails struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Status       string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	Name         string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	AdminStateUp bool   `protobuf:"varint,3,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	NetworkId    string `protobuf:"bytes,4,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	DeviceOwner  string `protobuf:"bytes,5,opt,name=device_owner,json=deviceOwner,proto3" json:"device_owner,omitempty"`
	MacAddress   string `protobuf:"bytes,6,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
	DeviceId     string `protobuf:"bytes,7,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
}

func (x *UpdateFloatingIPResp_PortDetails) Reset() {
	*x = UpdateFloatingIPResp_PortDetails{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[371]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateFloatingIPResp_PortDetails) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateFloatingIPResp_PortDetails) ProtoMessage() {}

func (x *UpdateFloatingIPResp_PortDetails) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[371]
	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 UpdateFloatingIPResp_PortDetails.ProtoReflect.Descriptor instead.
func (*UpdateFloatingIPResp_PortDetails) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{115, 0}
}

func (x *UpdateFloatingIPResp_PortDetails) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *UpdateFloatingIPResp_PortDetails) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateFloatingIPResp_PortDetails) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *UpdateFloatingIPResp_PortDetails) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *UpdateFloatingIPResp_PortDetails) GetDeviceOwner() string {
	if x != nil {
		return x.DeviceOwner
	}
	return ""
}

func (x *UpdateFloatingIPResp_PortDetails) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

func (x *UpdateFloatingIPResp_PortDetails) GetDeviceId() string {
	if x != nil {
		return x.DeviceId
	}
	return ""
}

type UpdateFloatingIPResp_PortForwardings struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Protocol          string `protobuf:"bytes,1,opt,name=protocol,proto3" json:"protocol,omitempty"`
	InternalIpAddress string `protobuf:"bytes,2,opt,name=internal_ip_address,json=internalIpAddress,proto3" json:"internal_ip_address,omitempty"`
	InternalPort      uint32 `protobuf:"varint,3,opt,name=internal_port,json=internalPort,proto3" json:"internal_port,omitempty"`
	InternalPortId    string `protobuf:"bytes,4,opt,name=internal_port_id,json=internalPortId,proto3" json:"internal_port_id,omitempty"`
	ExternalPort      uint32 `protobuf:"varint,5,opt,name=external_port,json=externalPort,proto3" json:"external_port,omitempty"`
	Id                string `protobuf:"bytes,6,opt,name=id,proto3" json:"id,omitempty"`
}

func (x *UpdateFloatingIPResp_PortForwardings) Reset() {
	*x = UpdateFloatingIPResp_PortForwardings{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[372]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateFloatingIPResp_PortForwardings) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateFloatingIPResp_PortForwardings) ProtoMessage() {}

func (x *UpdateFloatingIPResp_PortForwardings) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[372]
	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 UpdateFloatingIPResp_PortForwardings.ProtoReflect.Descriptor instead.
func (*UpdateFloatingIPResp_PortForwardings) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{115, 1}
}

func (x *UpdateFloatingIPResp_PortForwardings) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *UpdateFloatingIPResp_PortForwardings) GetInternalIpAddress() string {
	if x != nil {
		return x.InternalIpAddress
	}
	return ""
}

func (x *UpdateFloatingIPResp_PortForwardings) GetInternalPort() uint32 {
	if x != nil {
		return x.InternalPort
	}
	return 0
}

func (x *UpdateFloatingIPResp_PortForwardings) GetInternalPortId() string {
	if x != nil {
		return x.InternalPortId
	}
	return ""
}

func (x *UpdateFloatingIPResp_PortForwardings) GetExternalPort() uint32 {
	if x != nil {
		return x.ExternalPort
	}
	return 0
}

func (x *UpdateFloatingIPResp_PortForwardings) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type UpdateFloatingIPResp_Floatingip struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CreatedAt          int64                                   `protobuf:"varint,1,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Description        string                                  `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	DnsDomain          string                                  `protobuf:"bytes,3,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	DnsName            string                                  `protobuf:"bytes,4,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	FixedIpAddress     string                                  `protobuf:"bytes,5,opt,name=fixed_ip_address,json=fixedIpAddress,proto3" json:"fixed_ip_address,omitempty"`
	FloatingIpAddress  string                                  `protobuf:"bytes,6,opt,name=floating_ip_address,json=floatingIpAddress,proto3" json:"floating_ip_address,omitempty"`
	FloatingNetworkId  string                                  `protobuf:"bytes,7,opt,name=floating_network_id,json=floatingNetworkId,proto3" json:"floating_network_id,omitempty"`
	Id                 string                                  `protobuf:"bytes,8,opt,name=id,proto3" json:"id,omitempty"`
	PortId             string                                  `protobuf:"bytes,9,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	ProjectId          string                                  `protobuf:"bytes,10,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber     uint32                                  `protobuf:"varint,11,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	RouterId           string                                  `protobuf:"bytes,12,opt,name=router_id,json=routerId,proto3" json:"router_id,omitempty"`
	Status             string                                  `protobuf:"bytes,13,opt,name=status,proto3" json:"status,omitempty"`
	Tags               []string                                `protobuf:"bytes,14,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId           string                                  `protobuf:"bytes,15,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	UpdatedAt          int64                                   `protobuf:"varint,16,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	PortDetails        *UpdateFloatingIPResp_PortDetails       `protobuf:"bytes,17,opt,name=port_details,json=portDetails,proto3" json:"port_details,omitempty"`
	PortForwardings    []*UpdateFloatingIPResp_PortForwardings `protobuf:"bytes,18,rep,name=port_forwardings,json=portForwardings,proto3" json:"port_forwardings,omitempty"`
	QosNetworkPolicyId string                                  `protobuf:"bytes,19,opt,name=qos_network_policy_id,json=qosNetworkPolicyId,proto3" json:"qos_network_policy_id,omitempty"`
	QosPolicyId        string                                  `protobuf:"bytes,20,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
}

func (x *UpdateFloatingIPResp_Floatingip) Reset() {
	*x = UpdateFloatingIPResp_Floatingip{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[373]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateFloatingIPResp_Floatingip) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateFloatingIPResp_Floatingip) ProtoMessage() {}

func (x *UpdateFloatingIPResp_Floatingip) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[373]
	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 UpdateFloatingIPResp_Floatingip.ProtoReflect.Descriptor instead.
func (*UpdateFloatingIPResp_Floatingip) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{115, 2}
}

func (x *UpdateFloatingIPResp_Floatingip) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *UpdateFloatingIPResp_Floatingip) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetFixedIpAddress() string {
	if x != nil {
		return x.FixedIpAddress
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetFloatingIpAddress() string {
	if x != nil {
		return x.FloatingIpAddress
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetFloatingNetworkId() string {
	if x != nil {
		return x.FloatingNetworkId
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetPortId() string {
	if x != nil {
		return x.PortId
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *UpdateFloatingIPResp_Floatingip) GetRouterId() string {
	if x != nil {
		return x.RouterId
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *UpdateFloatingIPResp_Floatingip) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *UpdateFloatingIPResp_Floatingip) GetPortDetails() *UpdateFloatingIPResp_PortDetails {
	if x != nil {
		return x.PortDetails
	}
	return nil
}

func (x *UpdateFloatingIPResp_Floatingip) GetPortForwardings() []*UpdateFloatingIPResp_PortForwardings {
	if x != nil {
		return x.PortForwardings
	}
	return nil
}

func (x *UpdateFloatingIPResp_Floatingip) GetQosNetworkPolicyId() string {
	if x != nil {
		return x.QosNetworkPolicyId
	}
	return ""
}

func (x *UpdateFloatingIPResp_Floatingip) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

type ShowFloatingIPDetailsResp_PortDetails struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Status       string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	Name         string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	AdminStateUp bool   `protobuf:"varint,3,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	NetworkId    string `protobuf:"bytes,4,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
	DeviceOwner  string `protobuf:"bytes,5,opt,name=device_owner,json=deviceOwner,proto3" json:"device_owner,omitempty"`
	MacAddress   string `protobuf:"bytes,6,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
	DeviceId     string `protobuf:"bytes,7,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
}

func (x *ShowFloatingIPDetailsResp_PortDetails) Reset() {
	*x = ShowFloatingIPDetailsResp_PortDetails{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[374]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowFloatingIPDetailsResp_PortDetails) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowFloatingIPDetailsResp_PortDetails) ProtoMessage() {}

func (x *ShowFloatingIPDetailsResp_PortDetails) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[374]
	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 ShowFloatingIPDetailsResp_PortDetails.ProtoReflect.Descriptor instead.
func (*ShowFloatingIPDetailsResp_PortDetails) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{119, 0}
}

func (x *ShowFloatingIPDetailsResp_PortDetails) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_PortDetails) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_PortDetails) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *ShowFloatingIPDetailsResp_PortDetails) GetNetworkId() string {
	if x != nil {
		return x.NetworkId
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_PortDetails) GetDeviceOwner() string {
	if x != nil {
		return x.DeviceOwner
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_PortDetails) GetMacAddress() string {
	if x != nil {
		return x.MacAddress
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_PortDetails) GetDeviceId() string {
	if x != nil {
		return x.DeviceId
	}
	return ""
}

type ShowFloatingIPDetailsResp_PortForwardings struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Protocol          string `protobuf:"bytes,1,opt,name=protocol,proto3" json:"protocol,omitempty"`
	InternalIpAddress string `protobuf:"bytes,2,opt,name=internal_ip_address,json=internalIpAddress,proto3" json:"internal_ip_address,omitempty"`
	InternalPort      uint32 `protobuf:"varint,3,opt,name=internal_port,json=internalPort,proto3" json:"internal_port,omitempty"`
	InternalPortId    string `protobuf:"bytes,4,opt,name=internal_port_id,json=internalPortId,proto3" json:"internal_port_id,omitempty"`
	ExternalPort      uint32 `protobuf:"varint,5,opt,name=external_port,json=externalPort,proto3" json:"external_port,omitempty"`
	Id                string `protobuf:"bytes,6,opt,name=id,proto3" json:"id,omitempty"`
}

func (x *ShowFloatingIPDetailsResp_PortForwardings) Reset() {
	*x = ShowFloatingIPDetailsResp_PortForwardings{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[375]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowFloatingIPDetailsResp_PortForwardings) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowFloatingIPDetailsResp_PortForwardings) ProtoMessage() {}

func (x *ShowFloatingIPDetailsResp_PortForwardings) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[375]
	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 ShowFloatingIPDetailsResp_PortForwardings.ProtoReflect.Descriptor instead.
func (*ShowFloatingIPDetailsResp_PortForwardings) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{119, 1}
}

func (x *ShowFloatingIPDetailsResp_PortForwardings) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_PortForwardings) GetInternalIpAddress() string {
	if x != nil {
		return x.InternalIpAddress
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_PortForwardings) GetInternalPort() uint32 {
	if x != nil {
		return x.InternalPort
	}
	return 0
}

func (x *ShowFloatingIPDetailsResp_PortForwardings) GetInternalPortId() string {
	if x != nil {
		return x.InternalPortId
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_PortForwardings) GetExternalPort() uint32 {
	if x != nil {
		return x.ExternalPort
	}
	return 0
}

func (x *ShowFloatingIPDetailsResp_PortForwardings) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type ShowFloatingIPDetailsResp_Floatingip struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FloatingNetworkId  string                                       `protobuf:"bytes,1,opt,name=floating_network_id,json=floatingNetworkId,proto3" json:"floating_network_id,omitempty"`
	RouterId           string                                       `protobuf:"bytes,2,opt,name=router_id,json=routerId,proto3" json:"router_id,omitempty"`
	FixedIpAddress     string                                       `protobuf:"bytes,3,opt,name=fixed_ip_address,json=fixedIpAddress,proto3" json:"fixed_ip_address,omitempty"`
	FloatingIpAddress  string                                       `protobuf:"bytes,4,opt,name=floating_ip_address,json=floatingIpAddress,proto3" json:"floating_ip_address,omitempty"`
	ProjectId          string                                       `protobuf:"bytes,5,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId           string                                       `protobuf:"bytes,6,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	Status             string                                       `protobuf:"bytes,7,opt,name=status,proto3" json:"status,omitempty"`
	PortId             string                                       `protobuf:"bytes,8,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	Id                 string                                       `protobuf:"bytes,9,opt,name=id,proto3" json:"id,omitempty"`
	Description        string                                       `protobuf:"bytes,10,opt,name=description,proto3" json:"description,omitempty"`
	DnsDomain          string                                       `protobuf:"bytes,11,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
	DnsName            string                                       `protobuf:"bytes,12,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	CreatedAt          int64                                        `protobuf:"varint,13,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64                                        `protobuf:"varint,14,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RevisionNumber     uint32                                       `protobuf:"varint,15,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	PortDetails        *ShowFloatingIPDetailsResp_PortDetails       `protobuf:"bytes,16,opt,name=port_details,json=portDetails,proto3" json:"port_details,omitempty"`
	Tags               []string                                     `protobuf:"bytes,17,rep,name=tags,proto3" json:"tags,omitempty"`
	PortForwardings    []*ShowFloatingIPDetailsResp_PortForwardings `protobuf:"bytes,18,rep,name=port_forwardings,json=portForwardings,proto3" json:"port_forwardings,omitempty"`
	QosNetworkPolicyId string                                       `protobuf:"bytes,19,opt,name=qos_network_policy_id,json=qosNetworkPolicyId,proto3" json:"qos_network_policy_id,omitempty"`
	QosPolicyId        string                                       `protobuf:"bytes,20,opt,name=qos_policy_id,json=qosPolicyId,proto3" json:"qos_policy_id,omitempty"`
}

func (x *ShowFloatingIPDetailsResp_Floatingip) Reset() {
	*x = ShowFloatingIPDetailsResp_Floatingip{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[376]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowFloatingIPDetailsResp_Floatingip) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowFloatingIPDetailsResp_Floatingip) ProtoMessage() {}

func (x *ShowFloatingIPDetailsResp_Floatingip) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[376]
	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 ShowFloatingIPDetailsResp_Floatingip.ProtoReflect.Descriptor instead.
func (*ShowFloatingIPDetailsResp_Floatingip) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{119, 2}
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetFloatingNetworkId() string {
	if x != nil {
		return x.FloatingNetworkId
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetRouterId() string {
	if x != nil {
		return x.RouterId
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetFixedIpAddress() string {
	if x != nil {
		return x.FixedIpAddress
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetFloatingIpAddress() string {
	if x != nil {
		return x.FloatingIpAddress
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetPortId() string {
	if x != nil {
		return x.PortId
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetDnsDomain() string {
	if x != nil {
		return x.DnsDomain
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetPortDetails() *ShowFloatingIPDetailsResp_PortDetails {
	if x != nil {
		return x.PortDetails
	}
	return nil
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetPortForwardings() []*ShowFloatingIPDetailsResp_PortForwardings {
	if x != nil {
		return x.PortForwardings
	}
	return nil
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetQosNetworkPolicyId() string {
	if x != nil {
		return x.QosNetworkPolicyId
	}
	return ""
}

func (x *ShowFloatingIPDetailsResp_Floatingip) GetQosPolicyId() string {
	if x != nil {
		return x.QosPolicyId
	}
	return ""
}

type ListFirewallGroupsResp_FirewallGroups struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp            bool     `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	Description             string   `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	EgressFirewallPolicyId  string   `protobuf:"bytes,3,opt,name=egress_firewall_policy_id,json=egressFirewallPolicyId,proto3" json:"egress_firewall_policy_id,omitempty"`
	Id                      string   `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"`
	IngressFirewallPolicyId string   `protobuf:"bytes,5,opt,name=ingress_firewall_policy_id,json=ingressFirewallPolicyId,proto3" json:"ingress_firewall_policy_id,omitempty"`
	Name                    string   `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"`
	Ports                   []string `protobuf:"bytes,7,rep,name=ports,proto3" json:"ports,omitempty"`
	Shared                  bool     `protobuf:"varint,8,opt,name=shared,proto3" json:"shared,omitempty"`
	ProjectId               string   `protobuf:"bytes,9,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Status                  string   `protobuf:"bytes,10,opt,name=status,proto3" json:"status,omitempty"`
	TenantId                string   `protobuf:"bytes,11,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
}

func (x *ListFirewallGroupsResp_FirewallGroups) Reset() {
	*x = ListFirewallGroupsResp_FirewallGroups{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[377]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFirewallGroupsResp_FirewallGroups) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFirewallGroupsResp_FirewallGroups) ProtoMessage() {}

func (x *ListFirewallGroupsResp_FirewallGroups) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[377]
	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 ListFirewallGroupsResp_FirewallGroups.ProtoReflect.Descriptor instead.
func (*ListFirewallGroupsResp_FirewallGroups) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{121, 0}
}

func (x *ListFirewallGroupsResp_FirewallGroups) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *ListFirewallGroupsResp_FirewallGroups) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListFirewallGroupsResp_FirewallGroups) GetEgressFirewallPolicyId() string {
	if x != nil {
		return x.EgressFirewallPolicyId
	}
	return ""
}

func (x *ListFirewallGroupsResp_FirewallGroups) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListFirewallGroupsResp_FirewallGroups) GetIngressFirewallPolicyId() string {
	if x != nil {
		return x.IngressFirewallPolicyId
	}
	return ""
}

func (x *ListFirewallGroupsResp_FirewallGroups) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListFirewallGroupsResp_FirewallGroups) GetPorts() []string {
	if x != nil {
		return x.Ports
	}
	return nil
}

func (x *ListFirewallGroupsResp_FirewallGroups) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *ListFirewallGroupsResp_FirewallGroups) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListFirewallGroupsResp_FirewallGroups) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ListFirewallGroupsResp_FirewallGroups) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

type CreateFirewallGroupReq_FirewallGroup struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp            bool   `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	EgressFirewallPolicyId  string `protobuf:"bytes,2,opt,name=egress_firewall_policy_id,json=egressFirewallPolicyId,proto3" json:"egress_firewall_policy_id,omitempty"`
	IngressFirewallPolicyId string `protobuf:"bytes,3,opt,name=ingress_firewall_policy_id,json=ingressFirewallPolicyId,proto3" json:"ingress_firewall_policy_id,omitempty"`
}

func (x *CreateFirewallGroupReq_FirewallGroup) Reset() {
	*x = CreateFirewallGroupReq_FirewallGroup{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[378]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFirewallGroupReq_FirewallGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFirewallGroupReq_FirewallGroup) ProtoMessage() {}

func (x *CreateFirewallGroupReq_FirewallGroup) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[378]
	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 CreateFirewallGroupReq_FirewallGroup.ProtoReflect.Descriptor instead.
func (*CreateFirewallGroupReq_FirewallGroup) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{124, 0}
}

func (x *CreateFirewallGroupReq_FirewallGroup) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *CreateFirewallGroupReq_FirewallGroup) GetEgressFirewallPolicyId() string {
	if x != nil {
		return x.EgressFirewallPolicyId
	}
	return ""
}

func (x *CreateFirewallGroupReq_FirewallGroup) GetIngressFirewallPolicyId() string {
	if x != nil {
		return x.IngressFirewallPolicyId
	}
	return ""
}

type CreateFirewallGroupResp_FirewallGroup struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp            bool     `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	Description             string   `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	EgressFirewallPolicyId  string   `protobuf:"bytes,3,opt,name=egress_firewall_policy_id,json=egressFirewallPolicyId,proto3" json:"egress_firewall_policy_id,omitempty"`
	IngressFirewallPolicyId string   `protobuf:"bytes,4,opt,name=ingress_firewall_policy_id,json=ingressFirewallPolicyId,proto3" json:"ingress_firewall_policy_id,omitempty"`
	Id                      string   `protobuf:"bytes,5,opt,name=id,proto3" json:"id,omitempty"`
	Name                    string   `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"`
	Ports                   []string `protobuf:"bytes,7,rep,name=ports,proto3" json:"ports,omitempty"`
	ProjectId               string   `protobuf:"bytes,8,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Shared                  bool     `protobuf:"varint,9,opt,name=shared,proto3" json:"shared,omitempty"`
	Status                  string   `protobuf:"bytes,10,opt,name=status,proto3" json:"status,omitempty"`
	TenantId                string   `protobuf:"bytes,11,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
}

func (x *CreateFirewallGroupResp_FirewallGroup) Reset() {
	*x = CreateFirewallGroupResp_FirewallGroup{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[379]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFirewallGroupResp_FirewallGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFirewallGroupResp_FirewallGroup) ProtoMessage() {}

func (x *CreateFirewallGroupResp_FirewallGroup) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[379]
	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 CreateFirewallGroupResp_FirewallGroup.ProtoReflect.Descriptor instead.
func (*CreateFirewallGroupResp_FirewallGroup) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{125, 0}
}

func (x *CreateFirewallGroupResp_FirewallGroup) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *CreateFirewallGroupResp_FirewallGroup) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateFirewallGroupResp_FirewallGroup) GetEgressFirewallPolicyId() string {
	if x != nil {
		return x.EgressFirewallPolicyId
	}
	return ""
}

func (x *CreateFirewallGroupResp_FirewallGroup) GetIngressFirewallPolicyId() string {
	if x != nil {
		return x.IngressFirewallPolicyId
	}
	return ""
}

func (x *CreateFirewallGroupResp_FirewallGroup) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateFirewallGroupResp_FirewallGroup) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateFirewallGroupResp_FirewallGroup) GetPorts() []string {
	if x != nil {
		return x.Ports
	}
	return nil
}

func (x *CreateFirewallGroupResp_FirewallGroup) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateFirewallGroupResp_FirewallGroup) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *CreateFirewallGroupResp_FirewallGroup) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *CreateFirewallGroupResp_FirewallGroup) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

type UpdateFirewallGroupReq_FirewallGroup struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp string `protobuf:"bytes,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
}

func (x *UpdateFirewallGroupReq_FirewallGroup) Reset() {
	*x = UpdateFirewallGroupReq_FirewallGroup{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[380]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateFirewallGroupReq_FirewallGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateFirewallGroupReq_FirewallGroup) ProtoMessage() {}

func (x *UpdateFirewallGroupReq_FirewallGroup) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[380]
	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 UpdateFirewallGroupReq_FirewallGroup.ProtoReflect.Descriptor instead.
func (*UpdateFirewallGroupReq_FirewallGroup) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{126, 0}
}

func (x *UpdateFirewallGroupReq_FirewallGroup) GetAdminStateUp() string {
	if x != nil {
		return x.AdminStateUp
	}
	return ""
}

type UpdateFirewallGroupResp_FirewallGroup struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp            bool     `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	Description             string   `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	EgressFirewallPolicyId  string   `protobuf:"bytes,3,opt,name=egress_firewall_policy_id,json=egressFirewallPolicyId,proto3" json:"egress_firewall_policy_id,omitempty"`
	IngressFirewallPolicyId string   `protobuf:"bytes,4,opt,name=ingress_firewall_policy_id,json=ingressFirewallPolicyId,proto3" json:"ingress_firewall_policy_id,omitempty"`
	Id                      string   `protobuf:"bytes,5,opt,name=id,proto3" json:"id,omitempty"`
	Name                    string   `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"`
	Ports                   []string `protobuf:"bytes,7,rep,name=ports,proto3" json:"ports,omitempty"`
	Shared                  bool     `protobuf:"varint,8,opt,name=shared,proto3" json:"shared,omitempty"`
	ProjectId               string   `protobuf:"bytes,9,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Status                  string   `protobuf:"bytes,10,opt,name=status,proto3" json:"status,omitempty"`
	TenantId                string   `protobuf:"bytes,11,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
}

func (x *UpdateFirewallGroupResp_FirewallGroup) Reset() {
	*x = UpdateFirewallGroupResp_FirewallGroup{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[381]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateFirewallGroupResp_FirewallGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateFirewallGroupResp_FirewallGroup) ProtoMessage() {}

func (x *UpdateFirewallGroupResp_FirewallGroup) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[381]
	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 UpdateFirewallGroupResp_FirewallGroup.ProtoReflect.Descriptor instead.
func (*UpdateFirewallGroupResp_FirewallGroup) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{127, 0}
}

func (x *UpdateFirewallGroupResp_FirewallGroup) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *UpdateFirewallGroupResp_FirewallGroup) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdateFirewallGroupResp_FirewallGroup) GetEgressFirewallPolicyId() string {
	if x != nil {
		return x.EgressFirewallPolicyId
	}
	return ""
}

func (x *UpdateFirewallGroupResp_FirewallGroup) GetIngressFirewallPolicyId() string {
	if x != nil {
		return x.IngressFirewallPolicyId
	}
	return ""
}

func (x *UpdateFirewallGroupResp_FirewallGroup) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateFirewallGroupResp_FirewallGroup) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateFirewallGroupResp_FirewallGroup) GetPorts() []string {
	if x != nil {
		return x.Ports
	}
	return nil
}

func (x *UpdateFirewallGroupResp_FirewallGroup) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *UpdateFirewallGroupResp_FirewallGroup) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *UpdateFirewallGroupResp_FirewallGroup) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *UpdateFirewallGroupResp_FirewallGroup) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

type ShowFirewallGroupDetailsResp_FirewallGroup struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AdminStateUp            bool   `protobuf:"varint,1,opt,name=admin_state_up,json=adminStateUp,proto3" json:"admin_state_up,omitempty"`
	Description             string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	EgressFirewallPolicyId  string `protobuf:"bytes,3,opt,name=egress_firewall_policy_id,json=egressFirewallPolicyId,proto3" json:"egress_firewall_policy_id,omitempty"`
	Id                      string `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"`
	IngressFirewallPolicyId string `protobuf:"bytes,5,opt,name=ingress_firewall_policy_id,json=ingressFirewallPolicyId,proto3" json:"ingress_firewall_policy_id,omitempty"`
	Name                    string `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"`
	ProjectId               string `protobuf:"bytes,7,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Shared                  bool   `protobuf:"varint,8,opt,name=shared,proto3" json:"shared,omitempty"`
	Status                  string `protobuf:"bytes,9,opt,name=status,proto3" json:"status,omitempty"`
	TenantId                string `protobuf:"bytes,10,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) Reset() {
	*x = ShowFirewallGroupDetailsResp_FirewallGroup{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[382]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowFirewallGroupDetailsResp_FirewallGroup) ProtoMessage() {}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[382]
	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 ShowFirewallGroupDetailsResp_FirewallGroup.ProtoReflect.Descriptor instead.
func (*ShowFirewallGroupDetailsResp_FirewallGroup) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{129, 0}
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) GetAdminStateUp() bool {
	if x != nil {
		return x.AdminStateUp
	}
	return false
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) GetEgressFirewallPolicyId() string {
	if x != nil {
		return x.EgressFirewallPolicyId
	}
	return ""
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) GetIngressFirewallPolicyId() string {
	if x != nil {
		return x.IngressFirewallPolicyId
	}
	return ""
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ShowFirewallGroupDetailsResp_FirewallGroup) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

type CreateFirewallPolicyReq_FirewallPolicy struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name          string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	FirewallRules []string `protobuf:"bytes,2,rep,name=firewall_rules,json=firewallRules,proto3" json:"firewall_rules,omitempty"`
}

func (x *CreateFirewallPolicyReq_FirewallPolicy) Reset() {
	*x = CreateFirewallPolicyReq_FirewallPolicy{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[383]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFirewallPolicyReq_FirewallPolicy) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFirewallPolicyReq_FirewallPolicy) ProtoMessage() {}

func (x *CreateFirewallPolicyReq_FirewallPolicy) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[383]
	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 CreateFirewallPolicyReq_FirewallPolicy.ProtoReflect.Descriptor instead.
func (*CreateFirewallPolicyReq_FirewallPolicy) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{130, 0}
}

func (x *CreateFirewallPolicyReq_FirewallPolicy) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateFirewallPolicyReq_FirewallPolicy) GetFirewallRules() []string {
	if x != nil {
		return x.FirewallRules
	}
	return nil
}

type CreateFirewallPolicyResp_FirewallPolicy struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Audited       bool     `protobuf:"varint,1,opt,name=audited,proto3" json:"audited,omitempty"`
	Description   string   `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	FirewallRules []string `protobuf:"bytes,3,rep,name=firewall_rules,json=firewallRules,proto3" json:"firewall_rules,omitempty"`
	Id            string   `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"`
	Name          string   `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"`
	ProjectId     string   `protobuf:"bytes,6,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Shared        bool     `protobuf:"varint,7,opt,name=shared,proto3" json:"shared,omitempty"`
	TenantId      string   `protobuf:"bytes,8,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
}

func (x *CreateFirewallPolicyResp_FirewallPolicy) Reset() {
	*x = CreateFirewallPolicyResp_FirewallPolicy{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[384]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFirewallPolicyResp_FirewallPolicy) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFirewallPolicyResp_FirewallPolicy) ProtoMessage() {}

func (x *CreateFirewallPolicyResp_FirewallPolicy) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[384]
	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 CreateFirewallPolicyResp_FirewallPolicy.ProtoReflect.Descriptor instead.
func (*CreateFirewallPolicyResp_FirewallPolicy) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{131, 0}
}

func (x *CreateFirewallPolicyResp_FirewallPolicy) GetAudited() bool {
	if x != nil {
		return x.Audited
	}
	return false
}

func (x *CreateFirewallPolicyResp_FirewallPolicy) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateFirewallPolicyResp_FirewallPolicy) GetFirewallRules() []string {
	if x != nil {
		return x.FirewallRules
	}
	return nil
}

func (x *CreateFirewallPolicyResp_FirewallPolicy) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateFirewallPolicyResp_FirewallPolicy) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateFirewallPolicyResp_FirewallPolicy) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateFirewallPolicyResp_FirewallPolicy) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *CreateFirewallPolicyResp_FirewallPolicy) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

type ListFirewallPoliciesResp_FirewallPolicies struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Audited       bool     `protobuf:"varint,1,opt,name=audited,proto3" json:"audited,omitempty"`
	Description   string   `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	FirewallRules []string `protobuf:"bytes,3,rep,name=firewall_rules,json=firewallRules,proto3" json:"firewall_rules,omitempty"`
	Id            string   `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"`
	Name          string   `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"`
	ProjectId     string   `protobuf:"bytes,6,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Shared        bool     `protobuf:"varint,7,opt,name=shared,proto3" json:"shared,omitempty"`
	TenantId      string   `protobuf:"bytes,8,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
}

func (x *ListFirewallPoliciesResp_FirewallPolicies) Reset() {
	*x = ListFirewallPoliciesResp_FirewallPolicies{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[385]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFirewallPoliciesResp_FirewallPolicies) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFirewallPoliciesResp_FirewallPolicies) ProtoMessage() {}

func (x *ListFirewallPoliciesResp_FirewallPolicies) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[385]
	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 ListFirewallPoliciesResp_FirewallPolicies.ProtoReflect.Descriptor instead.
func (*ListFirewallPoliciesResp_FirewallPolicies) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{135, 0}
}

func (x *ListFirewallPoliciesResp_FirewallPolicies) GetAudited() bool {
	if x != nil {
		return x.Audited
	}
	return false
}

func (x *ListFirewallPoliciesResp_FirewallPolicies) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListFirewallPoliciesResp_FirewallPolicies) GetFirewallRules() []string {
	if x != nil {
		return x.FirewallRules
	}
	return nil
}

func (x *ListFirewallPoliciesResp_FirewallPolicies) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListFirewallPoliciesResp_FirewallPolicies) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListFirewallPoliciesResp_FirewallPolicies) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListFirewallPoliciesResp_FirewallPolicies) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *ListFirewallPoliciesResp_FirewallPolicies) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

type ShowFirewallPolicyDetailsResp_FirewallPolicy struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Audited       bool     `protobuf:"varint,1,opt,name=audited,proto3" json:"audited,omitempty"`
	Description   string   `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	FirewallRules []string `protobuf:"bytes,3,rep,name=firewall_rules,json=firewallRules,proto3" json:"firewall_rules,omitempty"`
	Id            string   `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"`
	Name          string   `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"`
	ProjectId     string   `protobuf:"bytes,6,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Shared        bool     `protobuf:"varint,7,opt,name=shared,proto3" json:"shared,omitempty"`
	TenantId      string   `protobuf:"bytes,8,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
}

func (x *ShowFirewallPolicyDetailsResp_FirewallPolicy) Reset() {
	*x = ShowFirewallPolicyDetailsResp_FirewallPolicy{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[386]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowFirewallPolicyDetailsResp_FirewallPolicy) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowFirewallPolicyDetailsResp_FirewallPolicy) ProtoMessage() {}

func (x *ShowFirewallPolicyDetailsResp_FirewallPolicy) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[386]
	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 ShowFirewallPolicyDetailsResp_FirewallPolicy.ProtoReflect.Descriptor instead.
func (*ShowFirewallPolicyDetailsResp_FirewallPolicy) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{137, 0}
}

func (x *ShowFirewallPolicyDetailsResp_FirewallPolicy) GetAudited() bool {
	if x != nil {
		return x.Audited
	}
	return false
}

func (x *ShowFirewallPolicyDetailsResp_FirewallPolicy) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ShowFirewallPolicyDetailsResp_FirewallPolicy) GetFirewallRules() []string {
	if x != nil {
		return x.FirewallRules
	}
	return nil
}

func (x *ShowFirewallPolicyDetailsResp_FirewallPolicy) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ShowFirewallPolicyDetailsResp_FirewallPolicy) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ShowFirewallPolicyDetailsResp_FirewallPolicy) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ShowFirewallPolicyDetailsResp_FirewallPolicy) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *ShowFirewallPolicyDetailsResp_FirewallPolicy) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

type CreateFirewallRuleReq_FirewallRule struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Action          string `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty"`
	DestinationPort string `protobuf:"bytes,2,opt,name=destination_port,json=destinationPort,proto3" json:"destination_port,omitempty"`
	Enabled         bool   `protobuf:"varint,3,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Name            string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"`
	Protocol        string `protobuf:"bytes,5,opt,name=protocol,proto3" json:"protocol,omitempty"`
}

func (x *CreateFirewallRuleReq_FirewallRule) Reset() {
	*x = CreateFirewallRuleReq_FirewallRule{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[387]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFirewallRuleReq_FirewallRule) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFirewallRuleReq_FirewallRule) ProtoMessage() {}

func (x *CreateFirewallRuleReq_FirewallRule) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[387]
	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 CreateFirewallRuleReq_FirewallRule.ProtoReflect.Descriptor instead.
func (*CreateFirewallRuleReq_FirewallRule) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{138, 0}
}

func (x *CreateFirewallRuleReq_FirewallRule) GetAction() string {
	if x != nil {
		return x.Action
	}
	return ""
}

func (x *CreateFirewallRuleReq_FirewallRule) GetDestinationPort() string {
	if x != nil {
		return x.DestinationPort
	}
	return ""
}

func (x *CreateFirewallRuleReq_FirewallRule) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *CreateFirewallRuleReq_FirewallRule) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateFirewallRuleReq_FirewallRule) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

type CreateFirewallRuleResp_FirewallRule struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Action                     string `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty"`
	Description                string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	DestinationFirewallGroupId string `protobuf:"bytes,3,opt,name=destination_firewall_group_id,json=destinationFirewallGroupId,proto3" json:"destination_firewall_group_id,omitempty"`
	DestinationIpAddress       string `protobuf:"bytes,4,opt,name=destination_ip_address,json=destinationIpAddress,proto3" json:"destination_ip_address,omitempty"`
	DestinationPort            string `protobuf:"bytes,5,opt,name=destination_port,json=destinationPort,proto3" json:"destination_port,omitempty"`
	Enabled                    bool   `protobuf:"varint,6,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Id                         string `protobuf:"bytes,7,opt,name=id,proto3" json:"id,omitempty"`
	IpVersion                  uint32 `protobuf:"varint,8,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`
	Name                       string `protobuf:"bytes,9,opt,name=name,proto3" json:"name,omitempty"`
	ProjectId                  string `protobuf:"bytes,10,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Protocol                   string `protobuf:"bytes,11,opt,name=protocol,proto3" json:"protocol,omitempty"`
	Shared                     bool   `protobuf:"varint,12,opt,name=shared,proto3" json:"shared,omitempty"`
	SourceFirewallGroupId      string `protobuf:"bytes,13,opt,name=source_firewall_group_id,json=sourceFirewallGroupId,proto3" json:"source_firewall_group_id,omitempty"`
	SourceIpAddress            string `protobuf:"bytes,14,opt,name=source_ip_address,json=sourceIpAddress,proto3" json:"source_ip_address,omitempty"`
	SourcePort                 string `protobuf:"bytes,15,opt,name=source_port,json=sourcePort,proto3" json:"source_port,omitempty"`
	TenantId                   string `protobuf:"bytes,16,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
}

func (x *CreateFirewallRuleResp_FirewallRule) Reset() {
	*x = CreateFirewallRuleResp_FirewallRule{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[388]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFirewallRuleResp_FirewallRule) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFirewallRuleResp_FirewallRule) ProtoMessage() {}

func (x *CreateFirewallRuleResp_FirewallRule) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[388]
	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 CreateFirewallRuleResp_FirewallRule.ProtoReflect.Descriptor instead.
func (*CreateFirewallRuleResp_FirewallRule) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{139, 0}
}

func (x *CreateFirewallRuleResp_FirewallRule) GetAction() string {
	if x != nil {
		return x.Action
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetDestinationFirewallGroupId() string {
	if x != nil {
		return x.DestinationFirewallGroupId
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetDestinationIpAddress() string {
	if x != nil {
		return x.DestinationIpAddress
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetDestinationPort() string {
	if x != nil {
		return x.DestinationPort
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *CreateFirewallRuleResp_FirewallRule) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetIpVersion() uint32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *CreateFirewallRuleResp_FirewallRule) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *CreateFirewallRuleResp_FirewallRule) GetSourceFirewallGroupId() string {
	if x != nil {
		return x.SourceFirewallGroupId
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetSourceIpAddress() string {
	if x != nil {
		return x.SourceIpAddress
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetSourcePort() string {
	if x != nil {
		return x.SourcePort
	}
	return ""
}

func (x *CreateFirewallRuleResp_FirewallRule) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

type ListFirewallRulesResp_FirewallRules struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Action                     string `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty"`
	Description                string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	DestinationFirewallGroupId string `protobuf:"bytes,3,opt,name=destination_firewall_group_id,json=destinationFirewallGroupId,proto3" json:"destination_firewall_group_id,omitempty"`
	DestinationIpAddress       string `protobuf:"bytes,4,opt,name=destination_ip_address,json=destinationIpAddress,proto3" json:"destination_ip_address,omitempty"`
	DestinationPort            string `protobuf:"bytes,5,opt,name=destination_port,json=destinationPort,proto3" json:"destination_port,omitempty"`
	Enabled                    bool   `protobuf:"varint,6,opt,name=enabled,proto3" json:"enabled,omitempty"`
	FirewallPolicyId           string `protobuf:"bytes,7,opt,name=firewall_policy_id,json=firewallPolicyId,proto3" json:"firewall_policy_id,omitempty"`
	Id                         string `protobuf:"bytes,8,opt,name=id,proto3" json:"id,omitempty"`
	IpVersion                  uint32 `protobuf:"varint,9,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`
	Name                       string `protobuf:"bytes,10,opt,name=name,proto3" json:"name,omitempty"`
	Position                   uint32 `protobuf:"varint,11,opt,name=position,proto3" json:"position,omitempty"`
	ProjectId                  string `protobuf:"bytes,12,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Protocol                   string `protobuf:"bytes,13,opt,name=protocol,proto3" json:"protocol,omitempty"`
	Shared                     bool   `protobuf:"varint,14,opt,name=shared,proto3" json:"shared,omitempty"`
	SourceFirewallGroupId      string `protobuf:"bytes,15,opt,name=source_firewall_group_id,json=sourceFirewallGroupId,proto3" json:"source_firewall_group_id,omitempty"`
	SourceIpAddress            string `protobuf:"bytes,16,opt,name=source_ip_address,json=sourceIpAddress,proto3" json:"source_ip_address,omitempty"`
	SourcePort                 string `protobuf:"bytes,17,opt,name=source_port,json=sourcePort,proto3" json:"source_port,omitempty"`
	TenantId                   string `protobuf:"bytes,18,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
}

func (x *ListFirewallRulesResp_FirewallRules) Reset() {
	*x = ListFirewallRulesResp_FirewallRules{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[389]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFirewallRulesResp_FirewallRules) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFirewallRulesResp_FirewallRules) ProtoMessage() {}

func (x *ListFirewallRulesResp_FirewallRules) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[389]
	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 ListFirewallRulesResp_FirewallRules.ProtoReflect.Descriptor instead.
func (*ListFirewallRulesResp_FirewallRules) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{143, 0}
}

func (x *ListFirewallRulesResp_FirewallRules) GetAction() string {
	if x != nil {
		return x.Action
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetDestinationFirewallGroupId() string {
	if x != nil {
		return x.DestinationFirewallGroupId
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetDestinationIpAddress() string {
	if x != nil {
		return x.DestinationIpAddress
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetDestinationPort() string {
	if x != nil {
		return x.DestinationPort
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *ListFirewallRulesResp_FirewallRules) GetFirewallPolicyId() string {
	if x != nil {
		return x.FirewallPolicyId
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetIpVersion() uint32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *ListFirewallRulesResp_FirewallRules) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetPosition() uint32 {
	if x != nil {
		return x.Position
	}
	return 0
}

func (x *ListFirewallRulesResp_FirewallRules) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *ListFirewallRulesResp_FirewallRules) GetSourceFirewallGroupId() string {
	if x != nil {
		return x.SourceFirewallGroupId
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetSourceIpAddress() string {
	if x != nil {
		return x.SourceIpAddress
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetSourcePort() string {
	if x != nil {
		return x.SourcePort
	}
	return ""
}

func (x *ListFirewallRulesResp_FirewallRules) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

type ShowFirewallRuleDetailsResp_FirewallRule struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Action                     string `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty"`
	Description                string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	DestinationFirewallGroupId string `protobuf:"bytes,3,opt,name=destination_firewall_group_id,json=destinationFirewallGroupId,proto3" json:"destination_firewall_group_id,omitempty"`
	DestinationIpAddress       string `protobuf:"bytes,4,opt,name=destination_ip_address,json=destinationIpAddress,proto3" json:"destination_ip_address,omitempty"`
	DestinationPort            string `protobuf:"bytes,5,opt,name=destination_port,json=destinationPort,proto3" json:"destination_port,omitempty"`
	Enabled                    bool   `protobuf:"varint,6,opt,name=enabled,proto3" json:"enabled,omitempty"`
	FirewallPolicyId           string `protobuf:"bytes,7,opt,name=firewall_policy_id,json=firewallPolicyId,proto3" json:"firewall_policy_id,omitempty"`
	Id                         string `protobuf:"bytes,8,opt,name=id,proto3" json:"id,omitempty"`
	IpVersion                  uint32 `protobuf:"varint,9,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"`
	Name                       string `protobuf:"bytes,10,opt,name=name,proto3" json:"name,omitempty"`
	Position                   string `protobuf:"bytes,11,opt,name=position,proto3" json:"position,omitempty"`
	ProjectId                  string `protobuf:"bytes,12,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Protocol                   string `protobuf:"bytes,13,opt,name=protocol,proto3" json:"protocol,omitempty"`
	Shared                     bool   `protobuf:"varint,14,opt,name=shared,proto3" json:"shared,omitempty"`
	SourceFirewallGroupId      string `protobuf:"bytes,15,opt,name=source_firewall_group_id,json=sourceFirewallGroupId,proto3" json:"source_firewall_group_id,omitempty"`
	SourceIpAddress            string `protobuf:"bytes,16,opt,name=source_ip_address,json=sourceIpAddress,proto3" json:"source_ip_address,omitempty"`
	SourcePort                 string `protobuf:"bytes,17,opt,name=source_port,json=sourcePort,proto3" json:"source_port,omitempty"`
	TenantId                   string `protobuf:"bytes,18,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) Reset() {
	*x = ShowFirewallRuleDetailsResp_FirewallRule{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[390]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowFirewallRuleDetailsResp_FirewallRule) ProtoMessage() {}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[390]
	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 ShowFirewallRuleDetailsResp_FirewallRule.ProtoReflect.Descriptor instead.
func (*ShowFirewallRuleDetailsResp_FirewallRule) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{145, 0}
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetAction() string {
	if x != nil {
		return x.Action
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetDestinationFirewallGroupId() string {
	if x != nil {
		return x.DestinationFirewallGroupId
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetDestinationIpAddress() string {
	if x != nil {
		return x.DestinationIpAddress
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetDestinationPort() string {
	if x != nil {
		return x.DestinationPort
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetFirewallPolicyId() string {
	if x != nil {
		return x.FirewallPolicyId
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetIpVersion() uint32 {
	if x != nil {
		return x.IpVersion
	}
	return 0
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetPosition() string {
	if x != nil {
		return x.Position
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetSourceFirewallGroupId() string {
	if x != nil {
		return x.SourceFirewallGroupId
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetSourceIpAddress() string {
	if x != nil {
		return x.SourceIpAddress
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetSourcePort() string {
	if x != nil {
		return x.SourcePort
	}
	return ""
}

func (x *ShowFirewallRuleDetailsResp_FirewallRule) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

type ListSecurityGroupsResp_SecurityGroupRules struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Direction          string   `protobuf:"bytes,1,opt,name=direction,proto3" json:"direction,omitempty"`
	Ethertype          string   `protobuf:"bytes,2,opt,name=ethertype,proto3" json:"ethertype,omitempty"`
	Id                 string   `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	PortRangeMax       int64    `protobuf:"varint,4,opt,name=port_range_max,json=portRangeMax,proto3" json:"port_range_max,omitempty"`
	PortRangeMin       int64    `protobuf:"varint,5,opt,name=port_range_min,json=portRangeMin,proto3" json:"port_range_min,omitempty"`
	Protocol           string   `protobuf:"bytes,6,opt,name=protocol,proto3" json:"protocol,omitempty"`
	RemoteGroupId      string   `protobuf:"bytes,7,opt,name=remote_group_id,json=remoteGroupId,proto3" json:"remote_group_id,omitempty"`
	RemoteIpPrefix     string   `protobuf:"bytes,8,opt,name=remote_ip_prefix,json=remoteIpPrefix,proto3" json:"remote_ip_prefix,omitempty"`
	SecurityGroupId    string   `protobuf:"bytes,9,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	ProjectId          string   `protobuf:"bytes,10,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber     uint32   `protobuf:"varint,11,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Tags               []string `protobuf:"bytes,12,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId           string   `protobuf:"bytes,13,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	CreatedAt          int64    `protobuf:"varint,14,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64    `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Description        string   `protobuf:"bytes,16,opt,name=description,proto3" json:"description,omitempty"`
	BelongsToDefaultSg bool     `protobuf:"varint,17,opt,name=belongs_to_default_sg,json=belongsToDefaultSg,proto3" json:"belongs_to_default_sg,omitempty"`
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) Reset() {
	*x = ListSecurityGroupsResp_SecurityGroupRules{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[391]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListSecurityGroupsResp_SecurityGroupRules) ProtoMessage() {}

func (x *ListSecurityGroupsResp_SecurityGroupRules) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[391]
	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 ListSecurityGroupsResp_SecurityGroupRules.ProtoReflect.Descriptor instead.
func (*ListSecurityGroupsResp_SecurityGroupRules) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{147, 0}
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetDirection() string {
	if x != nil {
		return x.Direction
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetEthertype() string {
	if x != nil {
		return x.Ethertype
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetPortRangeMax() int64 {
	if x != nil {
		return x.PortRangeMax
	}
	return 0
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetPortRangeMin() int64 {
	if x != nil {
		return x.PortRangeMin
	}
	return 0
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetRemoteGroupId() string {
	if x != nil {
		return x.RemoteGroupId
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetRemoteIpPrefix() string {
	if x != nil {
		return x.RemoteIpPrefix
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroupRules) GetBelongsToDefaultSg() bool {
	if x != nil {
		return x.BelongsToDefaultSg
	}
	return false
}

type ListSecurityGroupsResp_SecurityGroups struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Description        string                                       `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
	Id                 string                                       `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	Name               string                                       `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	SecurityGroupRules []*ListSecurityGroupsResp_SecurityGroupRules `protobuf:"bytes,4,rep,name=security_group_rules,json=securityGroupRules,proto3" json:"security_group_rules,omitempty"`
	ProjectId          string                                       `protobuf:"bytes,5,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber     uint32                                       `protobuf:"varint,6,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	CreatedAt          int64                                        `protobuf:"varint,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64                                        `protobuf:"varint,8,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Tags               []string                                     `protobuf:"bytes,9,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId           string                                       `protobuf:"bytes,10,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	Stateful           bool                                         `protobuf:"varint,11,opt,name=stateful,proto3" json:"stateful,omitempty"`
	Shared             bool                                         `protobuf:"varint,12,opt,name=shared,proto3" json:"shared,omitempty"`
}

func (x *ListSecurityGroupsResp_SecurityGroups) Reset() {
	*x = ListSecurityGroupsResp_SecurityGroups{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[392]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListSecurityGroupsResp_SecurityGroups) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListSecurityGroupsResp_SecurityGroups) ProtoMessage() {}

func (x *ListSecurityGroupsResp_SecurityGroups) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[392]
	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 ListSecurityGroupsResp_SecurityGroups.ProtoReflect.Descriptor instead.
func (*ListSecurityGroupsResp_SecurityGroups) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{147, 1}
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetSecurityGroupRules() []*ListSecurityGroupsResp_SecurityGroupRules {
	if x != nil {
		return x.SecurityGroupRules
	}
	return nil
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetStateful() bool {
	if x != nil {
		return x.Stateful
	}
	return false
}

func (x *ListSecurityGroupsResp_SecurityGroups) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

type CreateSecurityGroupReq_SecurityGroup struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name        string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	Stateful    bool   `protobuf:"varint,3,opt,name=stateful,proto3" json:"stateful,omitempty"`
}

func (x *CreateSecurityGroupReq_SecurityGroup) Reset() {
	*x = CreateSecurityGroupReq_SecurityGroup{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[393]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateSecurityGroupReq_SecurityGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateSecurityGroupReq_SecurityGroup) ProtoMessage() {}

func (x *CreateSecurityGroupReq_SecurityGroup) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[393]
	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 CreateSecurityGroupReq_SecurityGroup.ProtoReflect.Descriptor instead.
func (*CreateSecurityGroupReq_SecurityGroup) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{148, 0}
}

func (x *CreateSecurityGroupReq_SecurityGroup) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateSecurityGroupReq_SecurityGroup) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateSecurityGroupReq_SecurityGroup) GetStateful() bool {
	if x != nil {
		return x.Stateful
	}
	return false
}

type CreateSecurityGroupResp_SecurityGroupRules struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Direction          string   `protobuf:"bytes,1,opt,name=direction,proto3" json:"direction,omitempty"`
	Ethertype          string   `protobuf:"bytes,2,opt,name=ethertype,proto3" json:"ethertype,omitempty"`
	Id                 string   `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	PortRangeMax       int64    `protobuf:"varint,4,opt,name=port_range_max,json=portRangeMax,proto3" json:"port_range_max,omitempty"`
	PortRangeMin       int64    `protobuf:"varint,5,opt,name=port_range_min,json=portRangeMin,proto3" json:"port_range_min,omitempty"`
	Protocol           string   `protobuf:"bytes,6,opt,name=protocol,proto3" json:"protocol,omitempty"`
	RemoteGroupId      string   `protobuf:"bytes,7,opt,name=remote_group_id,json=remoteGroupId,proto3" json:"remote_group_id,omitempty"`
	RemoteIpPrefix     string   `protobuf:"bytes,8,opt,name=remote_ip_prefix,json=remoteIpPrefix,proto3" json:"remote_ip_prefix,omitempty"`
	SecurityGroupId    string   `protobuf:"bytes,9,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	ProjectId          string   `protobuf:"bytes,10,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	CreatedAt          int64    `protobuf:"varint,11,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64    `protobuf:"varint,12,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RevisionNumber     uint32   `protobuf:"varint,13,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Tags               []string `protobuf:"bytes,15,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId           string   `protobuf:"bytes,16,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	Description        string   `protobuf:"bytes,17,opt,name=description,proto3" json:"description,omitempty"`
	BelongsToDefaultSg bool     `protobuf:"varint,18,opt,name=belongs_to_default_sg,json=belongsToDefaultSg,proto3" json:"belongs_to_default_sg,omitempty"`
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) Reset() {
	*x = CreateSecurityGroupResp_SecurityGroupRules{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[394]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateSecurityGroupResp_SecurityGroupRules) ProtoMessage() {}

func (x *CreateSecurityGroupResp_SecurityGroupRules) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[394]
	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 CreateSecurityGroupResp_SecurityGroupRules.ProtoReflect.Descriptor instead.
func (*CreateSecurityGroupResp_SecurityGroupRules) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{149, 0}
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetDirection() string {
	if x != nil {
		return x.Direction
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetEthertype() string {
	if x != nil {
		return x.Ethertype
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetPortRangeMax() int64 {
	if x != nil {
		return x.PortRangeMax
	}
	return 0
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetPortRangeMin() int64 {
	if x != nil {
		return x.PortRangeMin
	}
	return 0
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetRemoteGroupId() string {
	if x != nil {
		return x.RemoteGroupId
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetRemoteIpPrefix() string {
	if x != nil {
		return x.RemoteIpPrefix
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroupRules) GetBelongsToDefaultSg() bool {
	if x != nil {
		return x.BelongsToDefaultSg
	}
	return false
}

type CreateSecurityGroupResp_SecurityGroup struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Description        string                                        `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
	Id                 string                                        `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	Name               string                                        `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	SecurityGroupRules []*CreateSecurityGroupResp_SecurityGroupRules `protobuf:"bytes,4,rep,name=security_group_rules,json=securityGroupRules,proto3" json:"security_group_rules,omitempty"`
	ProjectId          string                                        `protobuf:"bytes,5,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	CreatedAt          int64                                         `protobuf:"varint,6,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64                                         `protobuf:"varint,7,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RevisionNumber     uint32                                        `protobuf:"varint,8,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Tags               []string                                      `protobuf:"bytes,9,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId           string                                        `protobuf:"bytes,10,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	Stateful           bool                                          `protobuf:"varint,11,opt,name=stateful,proto3" json:"stateful,omitempty"`
	Shared             bool                                          `protobuf:"varint,12,opt,name=shared,proto3" json:"shared,omitempty"`
}

func (x *CreateSecurityGroupResp_SecurityGroup) Reset() {
	*x = CreateSecurityGroupResp_SecurityGroup{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[395]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateSecurityGroupResp_SecurityGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateSecurityGroupResp_SecurityGroup) ProtoMessage() {}

func (x *CreateSecurityGroupResp_SecurityGroup) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[395]
	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 CreateSecurityGroupResp_SecurityGroup.ProtoReflect.Descriptor instead.
func (*CreateSecurityGroupResp_SecurityGroup) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{149, 1}
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetSecurityGroupRules() []*CreateSecurityGroupResp_SecurityGroupRules {
	if x != nil {
		return x.SecurityGroupRules
	}
	return nil
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetStateful() bool {
	if x != nil {
		return x.Stateful
	}
	return false
}

func (x *CreateSecurityGroupResp_SecurityGroup) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

type UpdateSecurityGroupResp_SecurityGroupRules struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Direction          string   `protobuf:"bytes,1,opt,name=direction,proto3" json:"direction,omitempty"`
	Ethertype          string   `protobuf:"bytes,2,opt,name=ethertype,proto3" json:"ethertype,omitempty"`
	Id                 string   `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	PortRangeMax       int64    `protobuf:"varint,4,opt,name=port_range_max,json=portRangeMax,proto3" json:"port_range_max,omitempty"`
	PortRangeMin       int64    `protobuf:"varint,5,opt,name=port_range_min,json=portRangeMin,proto3" json:"port_range_min,omitempty"`
	Protocol           string   `protobuf:"bytes,6,opt,name=protocol,proto3" json:"protocol,omitempty"`
	RemoteGroupId      string   `protobuf:"bytes,7,opt,name=remote_group_id,json=remoteGroupId,proto3" json:"remote_group_id,omitempty"`
	RemoteIpPrefix     string   `protobuf:"bytes,8,opt,name=remote_ip_prefix,json=remoteIpPrefix,proto3" json:"remote_ip_prefix,omitempty"`
	SecurityGroupId    string   `protobuf:"bytes,9,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	ProjectId          string   `protobuf:"bytes,10,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber     uint32   `protobuf:"varint,11,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Tags               []string `protobuf:"bytes,12,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId           string   `protobuf:"bytes,13,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	CreatedAt          int64    `protobuf:"varint,14,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64    `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Description        string   `protobuf:"bytes,16,opt,name=description,proto3" json:"description,omitempty"`
	BelongsToDefaultSg bool     `protobuf:"varint,17,opt,name=belongs_to_default_sg,json=belongsToDefaultSg,proto3" json:"belongs_to_default_sg,omitempty"`
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) Reset() {
	*x = UpdateSecurityGroupResp_SecurityGroupRules{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[396]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateSecurityGroupResp_SecurityGroupRules) ProtoMessage() {}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[396]
	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 UpdateSecurityGroupResp_SecurityGroupRules.ProtoReflect.Descriptor instead.
func (*UpdateSecurityGroupResp_SecurityGroupRules) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{153, 0}
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetDirection() string {
	if x != nil {
		return x.Direction
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetEthertype() string {
	if x != nil {
		return x.Ethertype
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetPortRangeMax() int64 {
	if x != nil {
		return x.PortRangeMax
	}
	return 0
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetPortRangeMin() int64 {
	if x != nil {
		return x.PortRangeMin
	}
	return 0
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetRemoteGroupId() string {
	if x != nil {
		return x.RemoteGroupId
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetRemoteIpPrefix() string {
	if x != nil {
		return x.RemoteIpPrefix
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroupRules) GetBelongsToDefaultSg() bool {
	if x != nil {
		return x.BelongsToDefaultSg
	}
	return false
}

type UpdateSecurityGroupResp_SecurityGroup struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	SecurityGroupRules []*UpdateSecurityGroupResp_SecurityGroupRules `protobuf:"bytes,1,rep,name=security_group_rules,json=securityGroupRules,proto3" json:"security_group_rules,omitempty"`
	ProjectId          string                                        `protobuf:"bytes,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber     uint32                                        `protobuf:"varint,3,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	TenantId           string                                        `protobuf:"bytes,4,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	CreatedAt          int64                                         `protobuf:"varint,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64                                         `protobuf:"varint,6,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Id                 string                                        `protobuf:"bytes,7,opt,name=id,proto3" json:"id,omitempty"`
	Name               string                                        `protobuf:"bytes,8,opt,name=name,proto3" json:"name,omitempty"`
	Description        string                                        `protobuf:"bytes,9,opt,name=description,proto3" json:"description,omitempty"`
	Tags               []string                                      `protobuf:"bytes,10,rep,name=tags,proto3" json:"tags,omitempty"`
	Stateful           bool                                          `protobuf:"varint,11,opt,name=stateful,proto3" json:"stateful,omitempty"`
	Shared             bool                                          `protobuf:"varint,12,opt,name=shared,proto3" json:"shared,omitempty"`
	BelongsToDefaultSg bool                                          `protobuf:"varint,13,opt,name=belongs_to_default_sg,json=belongsToDefaultSg,proto3" json:"belongs_to_default_sg,omitempty"`
}

func (x *UpdateSecurityGroupResp_SecurityGroup) Reset() {
	*x = UpdateSecurityGroupResp_SecurityGroup{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[397]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateSecurityGroupResp_SecurityGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateSecurityGroupResp_SecurityGroup) ProtoMessage() {}

func (x *UpdateSecurityGroupResp_SecurityGroup) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[397]
	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 UpdateSecurityGroupResp_SecurityGroup.ProtoReflect.Descriptor instead.
func (*UpdateSecurityGroupResp_SecurityGroup) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{153, 1}
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetSecurityGroupRules() []*UpdateSecurityGroupResp_SecurityGroupRules {
	if x != nil {
		return x.SecurityGroupRules
	}
	return nil
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetStateful() bool {
	if x != nil {
		return x.Stateful
	}
	return false
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

func (x *UpdateSecurityGroupResp_SecurityGroup) GetBelongsToDefaultSg() bool {
	if x != nil {
		return x.BelongsToDefaultSg
	}
	return false
}

type ShowSecurityGroupResp_SecurityGroupRules struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Direction          string   `protobuf:"bytes,1,opt,name=direction,proto3" json:"direction,omitempty"`
	Ethertype          string   `protobuf:"bytes,2,opt,name=ethertype,proto3" json:"ethertype,omitempty"`
	Id                 string   `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	PortRangeMax       int64    `protobuf:"varint,4,opt,name=port_range_max,json=portRangeMax,proto3" json:"port_range_max,omitempty"`
	PortRangeMin       int64    `protobuf:"varint,5,opt,name=port_range_min,json=portRangeMin,proto3" json:"port_range_min,omitempty"`
	Protocol           string   `protobuf:"bytes,6,opt,name=protocol,proto3" json:"protocol,omitempty"`
	RemoteGroupId      string   `protobuf:"bytes,7,opt,name=remote_group_id,json=remoteGroupId,proto3" json:"remote_group_id,omitempty"`
	RemoteIpPrefix     string   `protobuf:"bytes,8,opt,name=remote_ip_prefix,json=remoteIpPrefix,proto3" json:"remote_ip_prefix,omitempty"`
	SecurityGroupId    string   `protobuf:"bytes,9,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	ProjectId          string   `protobuf:"bytes,10,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber     uint32   `protobuf:"varint,11,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Tags               []string `protobuf:"bytes,12,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId           string   `protobuf:"bytes,13,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	CreatedAt          int64    `protobuf:"varint,14,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64    `protobuf:"varint,15,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Description        string   `protobuf:"bytes,16,opt,name=description,proto3" json:"description,omitempty"`
	BelongsToDefaultSg bool     `protobuf:"varint,17,opt,name=belongs_to_default_sg,json=belongsToDefaultSg,proto3" json:"belongs_to_default_sg,omitempty"`
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) Reset() {
	*x = ShowSecurityGroupResp_SecurityGroupRules{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[398]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowSecurityGroupResp_SecurityGroupRules) ProtoMessage() {}

func (x *ShowSecurityGroupResp_SecurityGroupRules) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[398]
	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 ShowSecurityGroupResp_SecurityGroupRules.ProtoReflect.Descriptor instead.
func (*ShowSecurityGroupResp_SecurityGroupRules) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{155, 0}
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetDirection() string {
	if x != nil {
		return x.Direction
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetEthertype() string {
	if x != nil {
		return x.Ethertype
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetPortRangeMax() int64 {
	if x != nil {
		return x.PortRangeMax
	}
	return 0
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetPortRangeMin() int64 {
	if x != nil {
		return x.PortRangeMin
	}
	return 0
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetRemoteGroupId() string {
	if x != nil {
		return x.RemoteGroupId
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetRemoteIpPrefix() string {
	if x != nil {
		return x.RemoteIpPrefix
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroupRules) GetBelongsToDefaultSg() bool {
	if x != nil {
		return x.BelongsToDefaultSg
	}
	return false
}

type ShowSecurityGroupResp_SecurityGroup struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Description        string                                      `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
	Id                 string                                      `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	Name               string                                      `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	SecurityGroupRules []*ShowSecurityGroupResp_SecurityGroupRules `protobuf:"bytes,4,rep,name=security_group_rules,json=securityGroupRules,proto3" json:"security_group_rules,omitempty"`
	ProjectId          string                                      `protobuf:"bytes,5,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	CreatedAt          int64                                       `protobuf:"varint,6,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64                                       `protobuf:"varint,7,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RevisionNumber     uint32                                      `protobuf:"varint,8,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	Tags               []string                                    `protobuf:"bytes,9,rep,name=tags,proto3" json:"tags,omitempty"`
	TenantId           string                                      `protobuf:"bytes,10,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	Stateful           bool                                        `protobuf:"varint,11,opt,name=stateful,proto3" json:"stateful,omitempty"`
	Shared             bool                                        `protobuf:"varint,12,opt,name=shared,proto3" json:"shared,omitempty"`
}

func (x *ShowSecurityGroupResp_SecurityGroup) Reset() {
	*x = ShowSecurityGroupResp_SecurityGroup{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[399]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowSecurityGroupResp_SecurityGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowSecurityGroupResp_SecurityGroup) ProtoMessage() {}

func (x *ShowSecurityGroupResp_SecurityGroup) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[399]
	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 ShowSecurityGroupResp_SecurityGroup.ProtoReflect.Descriptor instead.
func (*ShowSecurityGroupResp_SecurityGroup) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{155, 1}
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetSecurityGroupRules() []*ShowSecurityGroupResp_SecurityGroupRules {
	if x != nil {
		return x.SecurityGroupRules
	}
	return nil
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetStateful() bool {
	if x != nil {
		return x.Stateful
	}
	return false
}

func (x *ShowSecurityGroupResp_SecurityGroup) GetShared() bool {
	if x != nil {
		return x.Shared
	}
	return false
}

type ListSecurityGroupRulesResp_SecurityGroupRules struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Direction          string `protobuf:"bytes,1,opt,name=direction,proto3" json:"direction,omitempty"`
	Ethertype          string `protobuf:"bytes,2,opt,name=ethertype,proto3" json:"ethertype,omitempty"`
	Id                 string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	PortRangeMax       int64  `protobuf:"varint,4,opt,name=port_range_max,json=portRangeMax,proto3" json:"port_range_max,omitempty"`
	PortRangeMin       int64  `protobuf:"varint,5,opt,name=port_range_min,json=portRangeMin,proto3" json:"port_range_min,omitempty"`
	Protocol           string `protobuf:"bytes,6,opt,name=protocol,proto3" json:"protocol,omitempty"`
	RemoteGroupId      string `protobuf:"bytes,7,opt,name=remote_group_id,json=remoteGroupId,proto3" json:"remote_group_id,omitempty"`
	RemoteIpPrefix     string `protobuf:"bytes,8,opt,name=remote_ip_prefix,json=remoteIpPrefix,proto3" json:"remote_ip_prefix,omitempty"`
	SecurityGroupId    string `protobuf:"bytes,9,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	ProjectId          string `protobuf:"bytes,10,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber     uint32 `protobuf:"varint,11,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	CreatedAt          int64  `protobuf:"varint,12,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64  `protobuf:"varint,13,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	TenantId           string `protobuf:"bytes,14,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	Description        string `protobuf:"bytes,15,opt,name=description,proto3" json:"description,omitempty"`
	BelongsToDefaultSg bool   `protobuf:"varint,16,opt,name=belongs_to_default_sg,json=belongsToDefaultSg,proto3" json:"belongs_to_default_sg,omitempty"`
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) Reset() {
	*x = ListSecurityGroupRulesResp_SecurityGroupRules{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[400]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListSecurityGroupRulesResp_SecurityGroupRules) ProtoMessage() {}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[400]
	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 ListSecurityGroupRulesResp_SecurityGroupRules.ProtoReflect.Descriptor instead.
func (*ListSecurityGroupRulesResp_SecurityGroupRules) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{157, 0}
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetDirection() string {
	if x != nil {
		return x.Direction
	}
	return ""
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetEthertype() string {
	if x != nil {
		return x.Ethertype
	}
	return ""
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetPortRangeMax() int64 {
	if x != nil {
		return x.PortRangeMax
	}
	return 0
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetPortRangeMin() int64 {
	if x != nil {
		return x.PortRangeMin
	}
	return 0
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetRemoteGroupId() string {
	if x != nil {
		return x.RemoteGroupId
	}
	return ""
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetRemoteIpPrefix() string {
	if x != nil {
		return x.RemoteIpPrefix
	}
	return ""
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListSecurityGroupRulesResp_SecurityGroupRules) GetBelongsToDefaultSg() bool {
	if x != nil {
		return x.BelongsToDefaultSg
	}
	return false
}

type CreateSecurityGroupRuleReq_SecurityGroupRule struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Direction       string `protobuf:"bytes,1,opt,name=direction,proto3" json:"direction,omitempty"`
	PortRangeMin    string `protobuf:"bytes,2,opt,name=port_range_min,json=portRangeMin,proto3" json:"port_range_min,omitempty"`
	Ethertype       string `protobuf:"bytes,3,opt,name=ethertype,proto3" json:"ethertype,omitempty"`
	PortRangeMax    string `protobuf:"bytes,4,opt,name=port_range_max,json=portRangeMax,proto3" json:"port_range_max,omitempty"`
	Protocol        string `protobuf:"bytes,5,opt,name=protocol,proto3" json:"protocol,omitempty"`
	RemoteGroupId   string `protobuf:"bytes,6,opt,name=remote_group_id,json=remoteGroupId,proto3" json:"remote_group_id,omitempty"`
	SecurityGroupId string `protobuf:"bytes,7,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
}

func (x *CreateSecurityGroupRuleReq_SecurityGroupRule) Reset() {
	*x = CreateSecurityGroupRuleReq_SecurityGroupRule{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[401]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateSecurityGroupRuleReq_SecurityGroupRule) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateSecurityGroupRuleReq_SecurityGroupRule) ProtoMessage() {}

func (x *CreateSecurityGroupRuleReq_SecurityGroupRule) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[401]
	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 CreateSecurityGroupRuleReq_SecurityGroupRule.ProtoReflect.Descriptor instead.
func (*CreateSecurityGroupRuleReq_SecurityGroupRule) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{158, 0}
}

func (x *CreateSecurityGroupRuleReq_SecurityGroupRule) GetDirection() string {
	if x != nil {
		return x.Direction
	}
	return ""
}

func (x *CreateSecurityGroupRuleReq_SecurityGroupRule) GetPortRangeMin() string {
	if x != nil {
		return x.PortRangeMin
	}
	return ""
}

func (x *CreateSecurityGroupRuleReq_SecurityGroupRule) GetEthertype() string {
	if x != nil {
		return x.Ethertype
	}
	return ""
}

func (x *CreateSecurityGroupRuleReq_SecurityGroupRule) GetPortRangeMax() string {
	if x != nil {
		return x.PortRangeMax
	}
	return ""
}

func (x *CreateSecurityGroupRuleReq_SecurityGroupRule) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *CreateSecurityGroupRuleReq_SecurityGroupRule) GetRemoteGroupId() string {
	if x != nil {
		return x.RemoteGroupId
	}
	return ""
}

func (x *CreateSecurityGroupRuleReq_SecurityGroupRule) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

type CreateSecurityGroupRuleResp_SecurityGroupRule struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Direction          string `protobuf:"bytes,1,opt,name=direction,proto3" json:"direction,omitempty"`
	Ethertype          string `protobuf:"bytes,2,opt,name=ethertype,proto3" json:"ethertype,omitempty"`
	Id                 string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	PortRangeMax       uint32 `protobuf:"varint,4,opt,name=port_range_max,json=portRangeMax,proto3" json:"port_range_max,omitempty"`
	PortRangeMin       uint32 `protobuf:"varint,5,opt,name=port_range_min,json=portRangeMin,proto3" json:"port_range_min,omitempty"`
	Protocol           string `protobuf:"bytes,6,opt,name=protocol,proto3" json:"protocol,omitempty"`
	RemoteGroupId      string `protobuf:"bytes,7,opt,name=remote_group_id,json=remoteGroupId,proto3" json:"remote_group_id,omitempty"`
	RemoteIpPrefix     string `protobuf:"bytes,8,opt,name=remote_ip_prefix,json=remoteIpPrefix,proto3" json:"remote_ip_prefix,omitempty"`
	SecurityGroupId    string `protobuf:"bytes,9,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	ProjectId          string `protobuf:"bytes,10,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber     uint32 `protobuf:"varint,11,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	TenantId           string `protobuf:"bytes,12,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	CreatedAt          int64  `protobuf:"varint,13,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64  `protobuf:"varint,14,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Description        string `protobuf:"bytes,15,opt,name=description,proto3" json:"description,omitempty"`
	BelongsToDefaultSg bool   `protobuf:"varint,16,opt,name=belongs_to_default_sg,json=belongsToDefaultSg,proto3" json:"belongs_to_default_sg,omitempty"`
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) Reset() {
	*x = CreateSecurityGroupRuleResp_SecurityGroupRule{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[402]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateSecurityGroupRuleResp_SecurityGroupRule) ProtoMessage() {}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[402]
	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 CreateSecurityGroupRuleResp_SecurityGroupRule.ProtoReflect.Descriptor instead.
func (*CreateSecurityGroupRuleResp_SecurityGroupRule) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{159, 0}
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetDirection() string {
	if x != nil {
		return x.Direction
	}
	return ""
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetEthertype() string {
	if x != nil {
		return x.Ethertype
	}
	return ""
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetPortRangeMax() uint32 {
	if x != nil {
		return x.PortRangeMax
	}
	return 0
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetPortRangeMin() uint32 {
	if x != nil {
		return x.PortRangeMin
	}
	return 0
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetRemoteGroupId() string {
	if x != nil {
		return x.RemoteGroupId
	}
	return ""
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetRemoteIpPrefix() string {
	if x != nil {
		return x.RemoteIpPrefix
	}
	return ""
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateSecurityGroupRuleResp_SecurityGroupRule) GetBelongsToDefaultSg() bool {
	if x != nil {
		return x.BelongsToDefaultSg
	}
	return false
}

type ShowSecurityGroupRuleResp_SecurityGroupRule struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Direction          string `protobuf:"bytes,1,opt,name=direction,proto3" json:"direction,omitempty"`
	Ethertype          string `protobuf:"bytes,2,opt,name=ethertype,proto3" json:"ethertype,omitempty"`
	Id                 string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	PortRangeMax       uint32 `protobuf:"varint,4,opt,name=port_range_max,json=portRangeMax,proto3" json:"port_range_max,omitempty"`
	PortRangeMin       uint32 `protobuf:"varint,5,opt,name=port_range_min,json=portRangeMin,proto3" json:"port_range_min,omitempty"`
	Protocol           string `protobuf:"bytes,6,opt,name=protocol,proto3" json:"protocol,omitempty"`
	RemoteGroupId      string `protobuf:"bytes,7,opt,name=remote_group_id,json=remoteGroupId,proto3" json:"remote_group_id,omitempty"`
	RemoteIpPrefix     string `protobuf:"bytes,8,opt,name=remote_ip_prefix,json=remoteIpPrefix,proto3" json:"remote_ip_prefix,omitempty"`
	SecurityGroupId    string `protobuf:"bytes,9,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	ProjectId          string `protobuf:"bytes,10,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	RevisionNumber     uint32 `protobuf:"varint,11,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	TenantId           string `protobuf:"bytes,12,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	CreatedAt          int64  `protobuf:"varint,13,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64  `protobuf:"varint,14,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Description        string `protobuf:"bytes,15,opt,name=description,proto3" json:"description,omitempty"`
	BelongsToDefaultSg bool   `protobuf:"varint,16,opt,name=belongs_to_default_sg,json=belongsToDefaultSg,proto3" json:"belongs_to_default_sg,omitempty"`
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) Reset() {
	*x = ShowSecurityGroupRuleResp_SecurityGroupRule{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[403]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowSecurityGroupRuleResp_SecurityGroupRule) ProtoMessage() {}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[403]
	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 ShowSecurityGroupRuleResp_SecurityGroupRule.ProtoReflect.Descriptor instead.
func (*ShowSecurityGroupRuleResp_SecurityGroupRule) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{161, 0}
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetDirection() string {
	if x != nil {
		return x.Direction
	}
	return ""
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetEthertype() string {
	if x != nil {
		return x.Ethertype
	}
	return ""
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetPortRangeMax() uint32 {
	if x != nil {
		return x.PortRangeMax
	}
	return 0
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetPortRangeMin() uint32 {
	if x != nil {
		return x.PortRangeMin
	}
	return 0
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetRemoteGroupId() string {
	if x != nil {
		return x.RemoteGroupId
	}
	return ""
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetRemoteIpPrefix() string {
	if x != nil {
		return x.RemoteIpPrefix
	}
	return ""
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ShowSecurityGroupRuleResp_SecurityGroupRule) GetBelongsToDefaultSg() bool {
	if x != nil {
		return x.BelongsToDefaultSg
	}
	return false
}

type DeleteSecurityGroupRuleResp_SecurityGroupRule struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Direction          string `protobuf:"bytes,1,opt,name=direction,proto3" json:"direction,omitempty"`
	Ethertype          string `protobuf:"bytes,2,opt,name=ethertype,proto3" json:"ethertype,omitempty"`
	Id                 string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	PortRangeMax       int64  `protobuf:"varint,4,opt,name=port_range_max,json=portRangeMax,proto3" json:"port_range_max,omitempty"`
	PortRangeMin       int64  `protobuf:"varint,5,opt,name=port_range_min,json=portRangeMin,proto3" json:"port_range_min,omitempty"`
	Protocol           string `protobuf:"bytes,6,opt,name=protocol,proto3" json:"protocol,omitempty"`
	RemoteGroupId      string `protobuf:"bytes,7,opt,name=remote_group_id,json=remoteGroupId,proto3" json:"remote_group_id,omitempty"`
	RemoteIpPrefix     string `protobuf:"bytes,8,opt,name=remote_ip_prefix,json=remoteIpPrefix,proto3" json:"remote_ip_prefix,omitempty"`
	RevisionNumber     uint32 `protobuf:"varint,9,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"`
	CreatedAt          int64  `protobuf:"varint,10,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt          int64  `protobuf:"varint,11,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	SecurityGroupId    string `protobuf:"bytes,12,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
	ProjectId          string `protobuf:"bytes,13,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	TenantId           string `protobuf:"bytes,14,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	BelongsToDefaultSg bool   `protobuf:"varint,15,opt,name=belongs_to_default_sg,json=belongsToDefaultSg,proto3" json:"belongs_to_default_sg,omitempty"`
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) Reset() {
	*x = DeleteSecurityGroupRuleResp_SecurityGroupRule{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[404]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteSecurityGroupRuleResp_SecurityGroupRule) ProtoMessage() {}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[404]
	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 DeleteSecurityGroupRuleResp_SecurityGroupRule.ProtoReflect.Descriptor instead.
func (*DeleteSecurityGroupRuleResp_SecurityGroupRule) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{163, 0}
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetDirection() string {
	if x != nil {
		return x.Direction
	}
	return ""
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetEthertype() string {
	if x != nil {
		return x.Ethertype
	}
	return ""
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetPortRangeMax() int64 {
	if x != nil {
		return x.PortRangeMax
	}
	return 0
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetPortRangeMin() int64 {
	if x != nil {
		return x.PortRangeMin
	}
	return 0
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetRemoteGroupId() string {
	if x != nil {
		return x.RemoteGroupId
	}
	return ""
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetRemoteIpPrefix() string {
	if x != nil {
		return x.RemoteIpPrefix
	}
	return ""
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetRevisionNumber() uint32 {
	if x != nil {
		return x.RevisionNumber
	}
	return 0
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetUpdatedAt() int64 {
	if x != nil {
		return x.UpdatedAt
	}
	return 0
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetSecurityGroupId() string {
	if x != nil {
		return x.SecurityGroupId
	}
	return ""
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetTenantId() string {
	if x != nil {
		return x.TenantId
	}
	return ""
}

func (x *DeleteSecurityGroupRuleResp_SecurityGroupRule) GetBelongsToDefaultSg() bool {
	if x != nil {
		return x.BelongsToDefaultSg
	}
	return false
}

type ListNodesResp_Links struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *ListNodesResp_Links) Reset() {
	*x = ListNodesResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[405]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListNodesResp_Links) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListNodesResp_Links) ProtoMessage() {}

func (x *ListNodesResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[405]
	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 ListNodesResp_Links.ProtoReflect.Descriptor instead.
func (*ListNodesResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{165, 0}
}

func (x *ListNodesResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *ListNodesResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type ListNodesResp_Nodes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	InstanceUuid   string                 `protobuf:"bytes,1,opt,name=instance_uuid,json=instanceUuid,proto3" json:"instance_uuid,omitempty"`
	Links          []*ListNodesResp_Links `protobuf:"bytes,2,rep,name=links,proto3" json:"links,omitempty"`
	Maintenance    bool                   `protobuf:"varint,3,opt,name=maintenance,proto3" json:"maintenance,omitempty"`
	Name           string                 `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"`
	PowerState     string                 `protobuf:"bytes,5,opt,name=power_state,json=powerState,proto3" json:"power_state,omitempty"`
	ProvisionState string                 `protobuf:"bytes,6,opt,name=provision_state,json=provisionState,proto3" json:"provision_state,omitempty"`
	Uuid           string                 `protobuf:"bytes,7,opt,name=uuid,proto3" json:"uuid,omitempty"`
}

func (x *ListNodesResp_Nodes) Reset() {
	*x = ListNodesResp_Nodes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[406]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListNodesResp_Nodes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListNodesResp_Nodes) ProtoMessage() {}

func (x *ListNodesResp_Nodes) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[406]
	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 ListNodesResp_Nodes.ProtoReflect.Descriptor instead.
func (*ListNodesResp_Nodes) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{165, 1}
}

func (x *ListNodesResp_Nodes) GetInstanceUuid() string {
	if x != nil {
		return x.InstanceUuid
	}
	return ""
}

func (x *ListNodesResp_Nodes) GetLinks() []*ListNodesResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *ListNodesResp_Nodes) GetMaintenance() bool {
	if x != nil {
		return x.Maintenance
	}
	return false
}

func (x *ListNodesResp_Nodes) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListNodesResp_Nodes) GetPowerState() string {
	if x != nil {
		return x.PowerState
	}
	return ""
}

func (x *ListNodesResp_Nodes) GetProvisionState() string {
	if x != nil {
		return x.ProvisionState
	}
	return ""
}

func (x *ListNodesResp_Nodes) GetUuid() string {
	if x != nil {
		return x.Uuid
	}
	return ""
}

type CreateNodeReq_DriverInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpmiUsername string `protobuf:"bytes,1,opt,name=ipmi_username,json=ipmiUsername,proto3" json:"ipmi_username,omitempty"`
	IpmiPassword string `protobuf:"bytes,2,opt,name=ipmi_password,json=ipmiPassword,proto3" json:"ipmi_password,omitempty"`
}

func (x *CreateNodeReq_DriverInfo) Reset() {
	*x = CreateNodeReq_DriverInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[407]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeReq_DriverInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeReq_DriverInfo) ProtoMessage() {}

func (x *CreateNodeReq_DriverInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[407]
	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 CreateNodeReq_DriverInfo.ProtoReflect.Descriptor instead.
func (*CreateNodeReq_DriverInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{166, 0}
}

func (x *CreateNodeReq_DriverInfo) GetIpmiUsername() string {
	if x != nil {
		return x.IpmiUsername
	}
	return ""
}

func (x *CreateNodeReq_DriverInfo) GetIpmiPassword() string {
	if x != nil {
		return x.IpmiPassword
	}
	return ""
}

type CreateNodeReq_Properties struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeReq_Properties) Reset() {
	*x = CreateNodeReq_Properties{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[408]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeReq_Properties) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeReq_Properties) ProtoMessage() {}

func (x *CreateNodeReq_Properties) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[408]
	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 CreateNodeReq_Properties.ProtoReflect.Descriptor instead.
func (*CreateNodeReq_Properties) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{166, 1}
}

type CreateNodeReq_InstanceInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeReq_InstanceInfo) Reset() {
	*x = CreateNodeReq_InstanceInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[409]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeReq_InstanceInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeReq_InstanceInfo) ProtoMessage() {}

func (x *CreateNodeReq_InstanceInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[409]
	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 CreateNodeReq_InstanceInfo.ProtoReflect.Descriptor instead.
func (*CreateNodeReq_InstanceInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{166, 2}
}

type CreateNodeReq_NetworkData struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeReq_NetworkData) Reset() {
	*x = CreateNodeReq_NetworkData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[410]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeReq_NetworkData) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeReq_NetworkData) ProtoMessage() {}

func (x *CreateNodeReq_NetworkData) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[410]
	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 CreateNodeReq_NetworkData.ProtoReflect.Descriptor instead.
func (*CreateNodeReq_NetworkData) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{166, 3}
}

type CreateNodeResp_CleanStep struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeResp_CleanStep) Reset() {
	*x = CreateNodeResp_CleanStep{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[411]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_CleanStep) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_CleanStep) ProtoMessage() {}

func (x *CreateNodeResp_CleanStep) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[411]
	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 CreateNodeResp_CleanStep.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_CleanStep) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 0}
}

type CreateNodeResp_DeployStep struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeResp_DeployStep) Reset() {
	*x = CreateNodeResp_DeployStep{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[412]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_DeployStep) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_DeployStep) ProtoMessage() {}

func (x *CreateNodeResp_DeployStep) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[412]
	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 CreateNodeResp_DeployStep.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_DeployStep) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 1}
}

type CreateNodeResp_DriverInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpmiPassword string `protobuf:"bytes,1,opt,name=ipmi_password,json=ipmiPassword,proto3" json:"ipmi_password,omitempty"`
	IpmiUsername string `protobuf:"bytes,2,opt,name=ipmi_username,json=ipmiUsername,proto3" json:"ipmi_username,omitempty"`
}

func (x *CreateNodeResp_DriverInfo) Reset() {
	*x = CreateNodeResp_DriverInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[413]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_DriverInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_DriverInfo) ProtoMessage() {}

func (x *CreateNodeResp_DriverInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[413]
	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 CreateNodeResp_DriverInfo.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_DriverInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 2}
}

func (x *CreateNodeResp_DriverInfo) GetIpmiPassword() string {
	if x != nil {
		return x.IpmiPassword
	}
	return ""
}

func (x *CreateNodeResp_DriverInfo) GetIpmiUsername() string {
	if x != nil {
		return x.IpmiUsername
	}
	return ""
}

type CreateNodeResp_DriverInternalInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeResp_DriverInternalInfo) Reset() {
	*x = CreateNodeResp_DriverInternalInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[414]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_DriverInternalInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_DriverInternalInfo) ProtoMessage() {}

func (x *CreateNodeResp_DriverInternalInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[414]
	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 CreateNodeResp_DriverInternalInfo.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_DriverInternalInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 3}
}

type CreateNodeResp_Extra struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeResp_Extra) Reset() {
	*x = CreateNodeResp_Extra{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[415]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_Extra) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_Extra) ProtoMessage() {}

func (x *CreateNodeResp_Extra) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[415]
	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 CreateNodeResp_Extra.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_Extra) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 4}
}

type CreateNodeResp_InstanceInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeResp_InstanceInfo) Reset() {
	*x = CreateNodeResp_InstanceInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[416]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_InstanceInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_InstanceInfo) ProtoMessage() {}

func (x *CreateNodeResp_InstanceInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[416]
	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 CreateNodeResp_InstanceInfo.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_InstanceInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 5}
}

type CreateNodeResp_Links struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *CreateNodeResp_Links) Reset() {
	*x = CreateNodeResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[417]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_Links) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_Links) ProtoMessage() {}

func (x *CreateNodeResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[417]
	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 CreateNodeResp_Links.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 6}
}

func (x *CreateNodeResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *CreateNodeResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type CreateNodeResp_NetworkData struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeResp_NetworkData) Reset() {
	*x = CreateNodeResp_NetworkData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[418]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_NetworkData) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_NetworkData) ProtoMessage() {}

func (x *CreateNodeResp_NetworkData) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[418]
	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 CreateNodeResp_NetworkData.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_NetworkData) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 7}
}

type CreateNodeResp_Portgroups struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *CreateNodeResp_Portgroups) Reset() {
	*x = CreateNodeResp_Portgroups{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[419]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_Portgroups) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_Portgroups) ProtoMessage() {}

func (x *CreateNodeResp_Portgroups) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[419]
	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 CreateNodeResp_Portgroups.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_Portgroups) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 8}
}

func (x *CreateNodeResp_Portgroups) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *CreateNodeResp_Portgroups) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type CreateNodeResp_Ports struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *CreateNodeResp_Ports) Reset() {
	*x = CreateNodeResp_Ports{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[420]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_Ports) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_Ports) ProtoMessage() {}

func (x *CreateNodeResp_Ports) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[420]
	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 CreateNodeResp_Ports.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_Ports) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 9}
}

func (x *CreateNodeResp_Ports) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *CreateNodeResp_Ports) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type CreateNodeResp_Properties struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeResp_Properties) Reset() {
	*x = CreateNodeResp_Properties{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[421]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_Properties) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_Properties) ProtoMessage() {}

func (x *CreateNodeResp_Properties) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[421]
	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 CreateNodeResp_Properties.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_Properties) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 10}
}

type CreateNodeResp_RaidConfig struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeResp_RaidConfig) Reset() {
	*x = CreateNodeResp_RaidConfig{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[422]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_RaidConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_RaidConfig) ProtoMessage() {}

func (x *CreateNodeResp_RaidConfig) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[422]
	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 CreateNodeResp_RaidConfig.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_RaidConfig) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 11}
}

type CreateNodeResp_States struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *CreateNodeResp_States) Reset() {
	*x = CreateNodeResp_States{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[423]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_States) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_States) ProtoMessage() {}

func (x *CreateNodeResp_States) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[423]
	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 CreateNodeResp_States.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_States) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 12}
}

func (x *CreateNodeResp_States) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *CreateNodeResp_States) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type CreateNodeResp_TargetRaidConfig struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateNodeResp_TargetRaidConfig) Reset() {
	*x = CreateNodeResp_TargetRaidConfig{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[424]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_TargetRaidConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_TargetRaidConfig) ProtoMessage() {}

func (x *CreateNodeResp_TargetRaidConfig) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[424]
	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 CreateNodeResp_TargetRaidConfig.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_TargetRaidConfig) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 13}
}

type CreateNodeResp_Volume struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *CreateNodeResp_Volume) Reset() {
	*x = CreateNodeResp_Volume{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[425]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateNodeResp_Volume) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNodeResp_Volume) ProtoMessage() {}

func (x *CreateNodeResp_Volume) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[425]
	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 CreateNodeResp_Volume.ProtoReflect.Descriptor instead.
func (*CreateNodeResp_Volume) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{167, 14}
}

func (x *CreateNodeResp_Volume) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *CreateNodeResp_Volume) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type ShowNodeDetailsReq_Fields struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowNodeDetailsReq_Fields) Reset() {
	*x = ShowNodeDetailsReq_Fields{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[426]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsReq_Fields) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsReq_Fields) ProtoMessage() {}

func (x *ShowNodeDetailsReq_Fields) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[426]
	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 ShowNodeDetailsReq_Fields.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsReq_Fields) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{170, 0}
}

type ShowNodeDetailsResp_CleanStep struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowNodeDetailsResp_CleanStep) Reset() {
	*x = ShowNodeDetailsResp_CleanStep{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[427]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_CleanStep) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_CleanStep) ProtoMessage() {}

func (x *ShowNodeDetailsResp_CleanStep) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[427]
	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 ShowNodeDetailsResp_CleanStep.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_CleanStep) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 0}
}

type ShowNodeDetailsResp_DeployStep struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowNodeDetailsResp_DeployStep) Reset() {
	*x = ShowNodeDetailsResp_DeployStep{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[428]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_DeployStep) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_DeployStep) ProtoMessage() {}

func (x *ShowNodeDetailsResp_DeployStep) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[428]
	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 ShowNodeDetailsResp_DeployStep.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_DeployStep) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 1}
}

type ShowNodeDetailsResp_DriverInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpmiPassword string `protobuf:"bytes,1,opt,name=ipmi_password,json=ipmiPassword,proto3" json:"ipmi_password,omitempty"`
	IpmiUsername string `protobuf:"bytes,2,opt,name=ipmi_username,json=ipmiUsername,proto3" json:"ipmi_username,omitempty"`
}

func (x *ShowNodeDetailsResp_DriverInfo) Reset() {
	*x = ShowNodeDetailsResp_DriverInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[429]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_DriverInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_DriverInfo) ProtoMessage() {}

func (x *ShowNodeDetailsResp_DriverInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[429]
	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 ShowNodeDetailsResp_DriverInfo.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_DriverInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 2}
}

func (x *ShowNodeDetailsResp_DriverInfo) GetIpmiPassword() string {
	if x != nil {
		return x.IpmiPassword
	}
	return ""
}

func (x *ShowNodeDetailsResp_DriverInfo) GetIpmiUsername() string {
	if x != nil {
		return x.IpmiUsername
	}
	return ""
}

type ShowNodeDetailsResp_DriverInternalInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CleanSteps string `protobuf:"bytes,1,opt,name=clean_steps,json=cleanSteps,proto3" json:"clean_steps,omitempty"`
}

func (x *ShowNodeDetailsResp_DriverInternalInfo) Reset() {
	*x = ShowNodeDetailsResp_DriverInternalInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[430]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_DriverInternalInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_DriverInternalInfo) ProtoMessage() {}

func (x *ShowNodeDetailsResp_DriverInternalInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[430]
	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 ShowNodeDetailsResp_DriverInternalInfo.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_DriverInternalInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 3}
}

func (x *ShowNodeDetailsResp_DriverInternalInfo) GetCleanSteps() string {
	if x != nil {
		return x.CleanSteps
	}
	return ""
}

type ShowNodeDetailsResp_Extra struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowNodeDetailsResp_Extra) Reset() {
	*x = ShowNodeDetailsResp_Extra{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[431]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_Extra) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_Extra) ProtoMessage() {}

func (x *ShowNodeDetailsResp_Extra) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[431]
	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 ShowNodeDetailsResp_Extra.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_Extra) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 4}
}

type ShowNodeDetailsResp_InstanceInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowNodeDetailsResp_InstanceInfo) Reset() {
	*x = ShowNodeDetailsResp_InstanceInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[432]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_InstanceInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_InstanceInfo) ProtoMessage() {}

func (x *ShowNodeDetailsResp_InstanceInfo) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[432]
	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 ShowNodeDetailsResp_InstanceInfo.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_InstanceInfo) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 5}
}

type ShowNodeDetailsResp_Links struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *ShowNodeDetailsResp_Links) Reset() {
	*x = ShowNodeDetailsResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[433]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_Links) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_Links) ProtoMessage() {}

func (x *ShowNodeDetailsResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[433]
	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 ShowNodeDetailsResp_Links.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 6}
}

func (x *ShowNodeDetailsResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *ShowNodeDetailsResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type ShowNodeDetailsResp_NetworkData struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowNodeDetailsResp_NetworkData) Reset() {
	*x = ShowNodeDetailsResp_NetworkData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[434]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_NetworkData) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_NetworkData) ProtoMessage() {}

func (x *ShowNodeDetailsResp_NetworkData) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[434]
	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 ShowNodeDetailsResp_NetworkData.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_NetworkData) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 7}
}

type ShowNodeDetailsResp_Portgroups struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *ShowNodeDetailsResp_Portgroups) Reset() {
	*x = ShowNodeDetailsResp_Portgroups{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[435]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_Portgroups) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_Portgroups) ProtoMessage() {}

func (x *ShowNodeDetailsResp_Portgroups) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[435]
	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 ShowNodeDetailsResp_Portgroups.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_Portgroups) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 8}
}

func (x *ShowNodeDetailsResp_Portgroups) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *ShowNodeDetailsResp_Portgroups) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type ShowNodeDetailsResp_Ports struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *ShowNodeDetailsResp_Ports) Reset() {
	*x = ShowNodeDetailsResp_Ports{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[436]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_Ports) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_Ports) ProtoMessage() {}

func (x *ShowNodeDetailsResp_Ports) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[436]
	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 ShowNodeDetailsResp_Ports.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_Ports) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 9}
}

func (x *ShowNodeDetailsResp_Ports) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *ShowNodeDetailsResp_Ports) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type ShowNodeDetailsResp_Properties struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowNodeDetailsResp_Properties) Reset() {
	*x = ShowNodeDetailsResp_Properties{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[437]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_Properties) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_Properties) ProtoMessage() {}

func (x *ShowNodeDetailsResp_Properties) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[437]
	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 ShowNodeDetailsResp_Properties.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_Properties) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 10}
}

type ShowNodeDetailsResp_RaidConfig struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowNodeDetailsResp_RaidConfig) Reset() {
	*x = ShowNodeDetailsResp_RaidConfig{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[438]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_RaidConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_RaidConfig) ProtoMessage() {}

func (x *ShowNodeDetailsResp_RaidConfig) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[438]
	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 ShowNodeDetailsResp_RaidConfig.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_RaidConfig) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 11}
}

type ShowNodeDetailsResp_States struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *ShowNodeDetailsResp_States) Reset() {
	*x = ShowNodeDetailsResp_States{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[439]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_States) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_States) ProtoMessage() {}

func (x *ShowNodeDetailsResp_States) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[439]
	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 ShowNodeDetailsResp_States.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_States) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 12}
}

func (x *ShowNodeDetailsResp_States) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *ShowNodeDetailsResp_States) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type ShowNodeDetailsResp_TargetRaidConfig struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowNodeDetailsResp_TargetRaidConfig) Reset() {
	*x = ShowNodeDetailsResp_TargetRaidConfig{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[440]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_TargetRaidConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_TargetRaidConfig) ProtoMessage() {}

func (x *ShowNodeDetailsResp_TargetRaidConfig) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[440]
	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 ShowNodeDetailsResp_TargetRaidConfig.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_TargetRaidConfig) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 13}
}

type ShowNodeDetailsResp_Volume struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *ShowNodeDetailsResp_Volume) Reset() {
	*x = ShowNodeDetailsResp_Volume{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[441]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_Volume) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_Volume) ProtoMessage() {}

func (x *ShowNodeDetailsResp_Volume) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[441]
	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 ShowNodeDetailsResp_Volume.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_Volume) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 14}
}

func (x *ShowNodeDetailsResp_Volume) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *ShowNodeDetailsResp_Volume) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type ShowNodeDetailsResp_Traits struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShowNodeDetailsResp_Traits) Reset() {
	*x = ShowNodeDetailsResp_Traits{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[442]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowNodeDetailsResp_Traits) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowNodeDetailsResp_Traits) ProtoMessage() {}

func (x *ShowNodeDetailsResp_Traits) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[442]
	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 ShowNodeDetailsResp_Traits.ProtoReflect.Descriptor instead.
func (*ShowNodeDetailsResp_Traits) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{171, 15}
}

type CreateImageResp_Tags struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateImageResp_Tags) Reset() {
	*x = CreateImageResp_Tags{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[443]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateImageResp_Tags) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateImageResp_Tags) ProtoMessage() {}

func (x *CreateImageResp_Tags) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[443]
	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 CreateImageResp_Tags.ProtoReflect.Descriptor instead.
func (*CreateImageResp_Tags) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{174, 0}
}

type CreateImageResp_Locations struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateImageResp_Locations) Reset() {
	*x = CreateImageResp_Locations{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[444]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateImageResp_Locations) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateImageResp_Locations) ProtoMessage() {}

func (x *CreateImageResp_Locations) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[444]
	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 CreateImageResp_Locations.ProtoReflect.Descriptor instead.
func (*CreateImageResp_Locations) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{174, 1}
}

type ListImagesResp_Images struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Status          string                 `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	Name            string                 `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Tags            []*ListImagesResp_Tags `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags,omitempty"`
	ContainerFormat string                 `protobuf:"bytes,4,opt,name=container_format,json=containerFormat,proto3" json:"container_format,omitempty"`
	CreatedAt       string                 `protobuf:"bytes,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	DiskFormat      string                 `protobuf:"bytes,6,opt,name=disk_format,json=diskFormat,proto3" json:"disk_format,omitempty"`
	UpdatedAt       string                 `protobuf:"bytes,7,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Visibility      string                 `protobuf:"bytes,8,opt,name=visibility,proto3" json:"visibility,omitempty"`
	Self            string                 `protobuf:"bytes,9,opt,name=self,proto3" json:"self,omitempty"`
	MinDisk         uint32                 `protobuf:"varint,10,opt,name=min_disk,json=minDisk,proto3" json:"min_disk,omitempty"`
	Protected       bool                   `protobuf:"varint,11,opt,name=protected,proto3" json:"protected,omitempty"`
	Id              string                 `protobuf:"bytes,12,opt,name=id,proto3" json:"id,omitempty"`
	File            string                 `protobuf:"bytes,13,opt,name=file,proto3" json:"file,omitempty"`
	Checksum        string                 `protobuf:"bytes,14,opt,name=checksum,proto3" json:"checksum,omitempty"`
	OsHashAlgo      string                 `protobuf:"bytes,15,opt,name=os_hash_algo,json=osHashAlgo,proto3" json:"os_hash_algo,omitempty"`
	OsHashValue     string                 `protobuf:"bytes,16,opt,name=os_hash_value,json=osHashValue,proto3" json:"os_hash_value,omitempty"`
	OsHidden        bool                   `protobuf:"varint,17,opt,name=os_hidden,json=osHidden,proto3" json:"os_hidden,omitempty"`
	Owner           string                 `protobuf:"bytes,18,opt,name=owner,proto3" json:"owner,omitempty"`
	Size            uint32                 `protobuf:"varint,19,opt,name=size,proto3" json:"size,omitempty"`
	MinRam          uint32                 `protobuf:"varint,20,opt,name=min_ram,json=minRam,proto3" json:"min_ram,omitempty"`
	Schema          string                 `protobuf:"bytes,21,opt,name=schema,proto3" json:"schema,omitempty"`
	VirtualSize     int32                  `protobuf:"varint,22,opt,name=virtual_size,json=virtualSize,proto3" json:"virtual_size,omitempty"`
}

func (x *ListImagesResp_Images) Reset() {
	*x = ListImagesResp_Images{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[445]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListImagesResp_Images) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListImagesResp_Images) ProtoMessage() {}

func (x *ListImagesResp_Images) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[445]
	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 ListImagesResp_Images.ProtoReflect.Descriptor instead.
func (*ListImagesResp_Images) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{176, 0}
}

func (x *ListImagesResp_Images) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ListImagesResp_Images) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListImagesResp_Images) GetTags() []*ListImagesResp_Tags {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ListImagesResp_Images) GetContainerFormat() string {
	if x != nil {
		return x.ContainerFormat
	}
	return ""
}

func (x *ListImagesResp_Images) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *ListImagesResp_Images) GetDiskFormat() string {
	if x != nil {
		return x.DiskFormat
	}
	return ""
}

func (x *ListImagesResp_Images) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *ListImagesResp_Images) GetVisibility() string {
	if x != nil {
		return x.Visibility
	}
	return ""
}

func (x *ListImagesResp_Images) GetSelf() string {
	if x != nil {
		return x.Self
	}
	return ""
}

func (x *ListImagesResp_Images) GetMinDisk() uint32 {
	if x != nil {
		return x.MinDisk
	}
	return 0
}

func (x *ListImagesResp_Images) GetProtected() bool {
	if x != nil {
		return x.Protected
	}
	return false
}

func (x *ListImagesResp_Images) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListImagesResp_Images) GetFile() string {
	if x != nil {
		return x.File
	}
	return ""
}

func (x *ListImagesResp_Images) GetChecksum() string {
	if x != nil {
		return x.Checksum
	}
	return ""
}

func (x *ListImagesResp_Images) GetOsHashAlgo() string {
	if x != nil {
		return x.OsHashAlgo
	}
	return ""
}

func (x *ListImagesResp_Images) GetOsHashValue() string {
	if x != nil {
		return x.OsHashValue
	}
	return ""
}

func (x *ListImagesResp_Images) GetOsHidden() bool {
	if x != nil {
		return x.OsHidden
	}
	return false
}

func (x *ListImagesResp_Images) GetOwner() string {
	if x != nil {
		return x.Owner
	}
	return ""
}

func (x *ListImagesResp_Images) GetSize() uint32 {
	if x != nil {
		return x.Size
	}
	return 0
}

func (x *ListImagesResp_Images) GetMinRam() uint32 {
	if x != nil {
		return x.MinRam
	}
	return 0
}

func (x *ListImagesResp_Images) GetSchema() string {
	if x != nil {
		return x.Schema
	}
	return ""
}

func (x *ListImagesResp_Images) GetVirtualSize() int32 {
	if x != nil {
		return x.VirtualSize
	}
	return 0
}

type ListImagesResp_Tags struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ListImagesResp_Tags) Reset() {
	*x = ListImagesResp_Tags{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[446]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListImagesResp_Tags) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListImagesResp_Tags) ProtoMessage() {}

func (x *ListImagesResp_Tags) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[446]
	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 ListImagesResp_Tags.ProtoReflect.Descriptor instead.
func (*ListImagesResp_Tags) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{176, 1}
}

type ListVolumesResp_Links struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *ListVolumesResp_Links) Reset() {
	*x = ListVolumesResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[447]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListVolumesResp_Links) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListVolumesResp_Links) ProtoMessage() {}

func (x *ListVolumesResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[447]
	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 ListVolumesResp_Links.ProtoReflect.Descriptor instead.
func (*ListVolumesResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{182, 0}
}

func (x *ListVolumesResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *ListVolumesResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type ListVolumesResp_Volumes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id    string                   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Links []*ListVolumesResp_Links `protobuf:"bytes,2,rep,name=links,proto3" json:"links,omitempty"`
	Name  string                   `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
}

func (x *ListVolumesResp_Volumes) Reset() {
	*x = ListVolumesResp_Volumes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[448]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListVolumesResp_Volumes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListVolumesResp_Volumes) ProtoMessage() {}

func (x *ListVolumesResp_Volumes) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[448]
	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 ListVolumesResp_Volumes.ProtoReflect.Descriptor instead.
func (*ListVolumesResp_Volumes) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{182, 1}
}

func (x *ListVolumesResp_Volumes) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListVolumesResp_Volumes) GetLinks() []*ListVolumesResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *ListVolumesResp_Volumes) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

type ListVolumesDetailResp_Links struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *ListVolumesDetailResp_Links) Reset() {
	*x = ListVolumesDetailResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[449]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListVolumesDetailResp_Links) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListVolumesDetailResp_Links) ProtoMessage() {}

func (x *ListVolumesDetailResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[449]
	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 ListVolumesDetailResp_Links.ProtoReflect.Descriptor instead.
func (*ListVolumesDetailResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{184, 0}
}

func (x *ListVolumesDetailResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *ListVolumesDetailResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type ListVolumesDetailResp_Attachments struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ServerId     string `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	AttachmentId string `protobuf:"bytes,2,opt,name=attachment_id,json=attachmentId,proto3" json:"attachment_id,omitempty"`
	AttachedAt   string `protobuf:"bytes,3,opt,name=attached_at,json=attachedAt,proto3" json:"attached_at,omitempty"`
	HostName     string `protobuf:"bytes,4,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"`
	VolumeId     string `protobuf:"bytes,5,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	Device       string `protobuf:"bytes,6,opt,name=device,proto3" json:"device,omitempty"`
	Id           string `protobuf:"bytes,7,opt,name=id,proto3" json:"id,omitempty"`
}

func (x *ListVolumesDetailResp_Attachments) Reset() {
	*x = ListVolumesDetailResp_Attachments{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[450]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListVolumesDetailResp_Attachments) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListVolumesDetailResp_Attachments) ProtoMessage() {}

func (x *ListVolumesDetailResp_Attachments) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[450]
	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 ListVolumesDetailResp_Attachments.ProtoReflect.Descriptor instead.
func (*ListVolumesDetailResp_Attachments) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{184, 1}
}

func (x *ListVolumesDetailResp_Attachments) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *ListVolumesDetailResp_Attachments) GetAttachmentId() string {
	if x != nil {
		return x.AttachmentId
	}
	return ""
}

func (x *ListVolumesDetailResp_Attachments) GetAttachedAt() string {
	if x != nil {
		return x.AttachedAt
	}
	return ""
}

func (x *ListVolumesDetailResp_Attachments) GetHostName() string {
	if x != nil {
		return x.HostName
	}
	return ""
}

func (x *ListVolumesDetailResp_Attachments) GetVolumeId() string {
	if x != nil {
		return x.VolumeId
	}
	return ""
}

func (x *ListVolumesDetailResp_Attachments) GetDevice() string {
	if x != nil {
		return x.Device
	}
	return ""
}

func (x *ListVolumesDetailResp_Attachments) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type ListVolumesDetailResp_Metadata struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ListVolumesDetailResp_Metadata) Reset() {
	*x = ListVolumesDetailResp_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[451]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListVolumesDetailResp_Metadata) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListVolumesDetailResp_Metadata) ProtoMessage() {}

func (x *ListVolumesDetailResp_Metadata) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[451]
	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 ListVolumesDetailResp_Metadata.ProtoReflect.Descriptor instead.
func (*ListVolumesDetailResp_Metadata) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{184, 2}
}

type ListVolumesDetailResp_VolumeDetail struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id                        string                               `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Links                     []*ListVolumesDetailResp_Links       `protobuf:"bytes,2,rep,name=links,proto3" json:"links,omitempty"`
	Name                      string                               `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	MigrationStatus           string                               `protobuf:"bytes,4,opt,name=migration_status,json=migrationStatus,proto3" json:"migration_status,omitempty"`
	Attachments               []*ListVolumesDetailResp_Attachments `protobuf:"bytes,5,rep,name=attachments,proto3" json:"attachments,omitempty"`
	AvailabilityZone          string                               `protobuf:"bytes,6,opt,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"`
	OsVolHostAttrHost         string                               `protobuf:"bytes,7,opt,name=os_vol_host_attr_host,json=os-vol-host-attr:host,proto3" json:"os_vol_host_attr_host,omitempty"`
	Encrypted                 bool                                 `protobuf:"varint,8,opt,name=encrypted,proto3" json:"encrypted,omitempty"`
	EncryptionKeyId           string                               `protobuf:"bytes,9,opt,name=encryption_key_id,json=encryptionKeyId,proto3" json:"encryption_key_id,omitempty"`
	UpdatedAt                 string                               `protobuf:"bytes,10,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	ReplicationStatus         string                               `protobuf:"bytes,11,opt,name=replication_status,json=replicationStatus,proto3" json:"replication_status,omitempty"`
	SnapshotId                string                               `protobuf:"bytes,12,opt,name=snapshot_id,json=snapshotId,proto3" json:"snapshot_id,omitempty"`
	Size                      int32                                `protobuf:"varint,13,opt,name=size,proto3" json:"size,omitempty"`
	UserId                    string                               `protobuf:"bytes,14,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	OsVolTenantAttrTenantId   string                               `protobuf:"bytes,15,opt,name=os_vol_tenant_attr_tenant_id,json=os-vol-tenant-attr:tenant_id,proto3" json:"os_vol_tenant_attr_tenant_id,omitempty"`
	OsVolMigStatusAttrMigstat string                               `protobuf:"bytes,16,opt,name=os_vol_mig_status_attr_migstat,json=os-vol-mig-status-attr:migstat,proto3" json:"os_vol_mig_status_attr_migstat,omitempty"`
	Metadata                  *ListVolumesDetailResp_Metadata      `protobuf:"bytes,17,opt,name=metadata,proto3" json:"metadata,omitempty"`
	Status                    string                               `protobuf:"bytes,18,opt,name=status,proto3" json:"status,omitempty"`
	Description               string                               `protobuf:"bytes,19,opt,name=description,proto3" json:"description,omitempty"`
	Multiattach               bool                                 `protobuf:"varint,20,opt,name=multiattach,proto3" json:"multiattach,omitempty"`
	SourceVolid               string                               `protobuf:"bytes,21,opt,name=source_volid,json=sourceVolid,proto3" json:"source_volid,omitempty"`
	ConsistencygroupId        string                               `protobuf:"bytes,22,opt,name=consistencygroup_id,json=consistencygroupId,proto3" json:"consistencygroup_id,omitempty"`
	OsVolMigStatusAttrNameId  string                               `protobuf:"bytes,23,opt,name=os_vol_mig_status_attr_name_id,json=os-vol-mig-status-attr:name_id,proto3" json:"os_vol_mig_status_attr_name_id,omitempty"`
	Bootable                  string                               `protobuf:"bytes,24,opt,name=bootable,proto3" json:"bootable,omitempty"`
	CreatedAt                 string                               `protobuf:"bytes,25,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	VolumeType                string                               `protobuf:"bytes,26,opt,name=volume_type,json=volumeType,proto3" json:"volume_type,omitempty"`
	VolumeTypeId              string                               `protobuf:"bytes,27,opt,name=volume_type_id,json=volumeTypeId,proto3" json:"volume_type_id,omitempty"`
	GroupId                   string                               `protobuf:"bytes,28,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
	ProviderId                string                               `protobuf:"bytes,29,opt,name=provider_id,json=providerId,proto3" json:"provider_id,omitempty"`
	ServiceUuid               string                               `protobuf:"bytes,30,opt,name=service_uuid,json=serviceUuid,proto3" json:"service_uuid,omitempty"`
	SharedTargets             bool                                 `protobuf:"varint,31,opt,name=shared_targets,json=sharedTargets,proto3" json:"shared_targets,omitempty"`
	ClusterName               string                               `protobuf:"bytes,32,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
	ConsumesQuota             bool                                 `protobuf:"varint,33,opt,name=consumes_quota,json=consumesQuota,proto3" json:"consumes_quota,omitempty"`
	Count                     int32                                `protobuf:"varint,34,opt,name=count,proto3" json:"count,omitempty"`
}

func (x *ListVolumesDetailResp_VolumeDetail) Reset() {
	*x = ListVolumesDetailResp_VolumeDetail{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[452]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListVolumesDetailResp_VolumeDetail) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListVolumesDetailResp_VolumeDetail) ProtoMessage() {}

func (x *ListVolumesDetailResp_VolumeDetail) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[452]
	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 ListVolumesDetailResp_VolumeDetail.ProtoReflect.Descriptor instead.
func (*ListVolumesDetailResp_VolumeDetail) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{184, 3}
}

func (x *ListVolumesDetailResp_VolumeDetail) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetLinks() []*ListVolumesDetailResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *ListVolumesDetailResp_VolumeDetail) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetMigrationStatus() string {
	if x != nil {
		return x.MigrationStatus
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetAttachments() []*ListVolumesDetailResp_Attachments {
	if x != nil {
		return x.Attachments
	}
	return nil
}

func (x *ListVolumesDetailResp_VolumeDetail) GetAvailabilityZone() string {
	if x != nil {
		return x.AvailabilityZone
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetOsVolHostAttrHost() string {
	if x != nil {
		return x.OsVolHostAttrHost
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetEncrypted() bool {
	if x != nil {
		return x.Encrypted
	}
	return false
}

func (x *ListVolumesDetailResp_VolumeDetail) GetEncryptionKeyId() string {
	if x != nil {
		return x.EncryptionKeyId
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetReplicationStatus() string {
	if x != nil {
		return x.ReplicationStatus
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetSnapshotId() string {
	if x != nil {
		return x.SnapshotId
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetSize() int32 {
	if x != nil {
		return x.Size
	}
	return 0
}

func (x *ListVolumesDetailResp_VolumeDetail) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetOsVolTenantAttrTenantId() string {
	if x != nil {
		return x.OsVolTenantAttrTenantId
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetOsVolMigStatusAttrMigstat() string {
	if x != nil {
		return x.OsVolMigStatusAttrMigstat
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetMetadata() *ListVolumesDetailResp_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *ListVolumesDetailResp_VolumeDetail) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetMultiattach() bool {
	if x != nil {
		return x.Multiattach
	}
	return false
}

func (x *ListVolumesDetailResp_VolumeDetail) GetSourceVolid() string {
	if x != nil {
		return x.SourceVolid
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetConsistencygroupId() string {
	if x != nil {
		return x.ConsistencygroupId
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetOsVolMigStatusAttrNameId() string {
	if x != nil {
		return x.OsVolMigStatusAttrNameId
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetBootable() string {
	if x != nil {
		return x.Bootable
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetVolumeType() string {
	if x != nil {
		return x.VolumeType
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetVolumeTypeId() string {
	if x != nil {
		return x.VolumeTypeId
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetGroupId() string {
	if x != nil {
		return x.GroupId
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetProviderId() string {
	if x != nil {
		return x.ProviderId
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetServiceUuid() string {
	if x != nil {
		return x.ServiceUuid
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetSharedTargets() bool {
	if x != nil {
		return x.SharedTargets
	}
	return false
}

func (x *ListVolumesDetailResp_VolumeDetail) GetClusterName() string {
	if x != nil {
		return x.ClusterName
	}
	return ""
}

func (x *ListVolumesDetailResp_VolumeDetail) GetConsumesQuota() bool {
	if x != nil {
		return x.ConsumesQuota
	}
	return false
}

func (x *ListVolumesDetailResp_VolumeDetail) GetCount() int32 {
	if x != nil {
		return x.Count
	}
	return 0
}

// Os_ch_hnt_scheduler_hints OS_SCH_HNT_scheduler_hints = 3 [json_name="Os-sch-hnt:scheduler_hints"];
type CreateVolumeReq_Metadata struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateVolumeReq_Metadata) Reset() {
	*x = CreateVolumeReq_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[453]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVolumeReq_Metadata) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVolumeReq_Metadata) ProtoMessage() {}

func (x *CreateVolumeReq_Metadata) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[453]
	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 CreateVolumeReq_Metadata.ProtoReflect.Descriptor instead.
func (*CreateVolumeReq_Metadata) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{185, 0}
}

type CreateVolumeReq_Volume struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Size             int32                     `protobuf:"varint,1,opt,name=size,proto3" json:"size,omitempty"`                                                // @gotags: copier:"Size"
	AvailabilityZone string                    `protobuf:"bytes,2,opt,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"` // @gotags: copier:"AvailabilityZone"
	Name             string                    `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`                                                 // @gotags: copier:"Name"
	VolumeType       string                    `protobuf:"bytes,4,opt,name=volume_type,json=volumeType,proto3" json:"volume_type,omitempty"`                   // @gotags: copier:"VolumeType"
	Description      string                    `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`                                   // @gotags: copier:"Description"
	Metadata         *CreateVolumeReq_Metadata `protobuf:"bytes,11,opt,name=metadata,proto3" json:"metadata,omitempty"`
}

func (x *CreateVolumeReq_Volume) Reset() {
	*x = CreateVolumeReq_Volume{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[454]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVolumeReq_Volume) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVolumeReq_Volume) ProtoMessage() {}

func (x *CreateVolumeReq_Volume) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[454]
	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 CreateVolumeReq_Volume.ProtoReflect.Descriptor instead.
func (*CreateVolumeReq_Volume) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{185, 1}
}

func (x *CreateVolumeReq_Volume) GetSize() int32 {
	if x != nil {
		return x.Size
	}
	return 0
}

func (x *CreateVolumeReq_Volume) GetAvailabilityZone() string {
	if x != nil {
		return x.AvailabilityZone
	}
	return ""
}

func (x *CreateVolumeReq_Volume) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateVolumeReq_Volume) GetVolumeType() string {
	if x != nil {
		return x.VolumeType
	}
	return ""
}

func (x *CreateVolumeReq_Volume) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateVolumeReq_Volume) GetMetadata() *CreateVolumeReq_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

type CreateVolumeResp_Links struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *CreateVolumeResp_Links) Reset() {
	*x = CreateVolumeResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[455]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVolumeResp_Links) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVolumeResp_Links) ProtoMessage() {}

func (x *CreateVolumeResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[455]
	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 CreateVolumeResp_Links.ProtoReflect.Descriptor instead.
func (*CreateVolumeResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{186, 0}
}

func (x *CreateVolumeResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *CreateVolumeResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type CreateVolumeResp_Metadata struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CreateVolumeResp_Metadata) Reset() {
	*x = CreateVolumeResp_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[456]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVolumeResp_Metadata) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVolumeResp_Metadata) ProtoMessage() {}

func (x *CreateVolumeResp_Metadata) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[456]
	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 CreateVolumeResp_Metadata.ProtoReflect.Descriptor instead.
func (*CreateVolumeResp_Metadata) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{186, 1}
}

type CreateVolumeResp_Volume struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Attachments        []*CreateVolumeResp_Attachments `protobuf:"bytes,1,rep,name=attachments,proto3" json:"attachments,omitempty"`
	AvailabilityZone   string                          `protobuf:"bytes,2,opt,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"`
	Bootable           string                          `protobuf:"bytes,3,opt,name=bootable,proto3" json:"bootable,omitempty"`
	ConsistencygroupId string                          `protobuf:"bytes,4,opt,name=consistencygroup_id,json=consistencygroupId,proto3" json:"consistencygroup_id,omitempty"`
	CreatedAt          string                          `protobuf:"bytes,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Description        string                          `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`
	Encrypted          bool                            `protobuf:"varint,7,opt,name=encrypted,proto3" json:"encrypted,omitempty"`
	Id                 string                          `protobuf:"bytes,8,opt,name=id,proto3" json:"id,omitempty"`
	Links              []*CreateVolumeResp_Links       `protobuf:"bytes,9,rep,name=links,proto3" json:"links,omitempty"`
	Metadata           *CreateVolumeResp_Metadata      `protobuf:"bytes,10,opt,name=metadata,proto3" json:"metadata,omitempty"`
	MigrationStatus    string                          `protobuf:"bytes,11,opt,name=migration_status,json=migrationStatus,proto3" json:"migration_status,omitempty"`
	Multiattach        bool                            `protobuf:"varint,12,opt,name=multiattach,proto3" json:"multiattach,omitempty"`
	Name               string                          `protobuf:"bytes,13,opt,name=name,proto3" json:"name,omitempty"`
	ReplicationStatus  string                          `protobuf:"bytes,14,opt,name=replication_status,json=replicationStatus,proto3" json:"replication_status,omitempty"`
	Size               uint32                          `protobuf:"varint,15,opt,name=size,proto3" json:"size,omitempty"`
	SnapshotId         string                          `protobuf:"bytes,16,opt,name=snapshot_id,json=snapshotId,proto3" json:"snapshot_id,omitempty"`
	SourceVolid        string                          `protobuf:"bytes,17,opt,name=source_volid,json=sourceVolid,proto3" json:"source_volid,omitempty"`
	Status             string                          `protobuf:"bytes,18,opt,name=status,proto3" json:"status,omitempty"`
	UpdatedAt          string                          `protobuf:"bytes,19,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	UserId             string                          `protobuf:"bytes,20,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	VolumeType         string                          `protobuf:"bytes,21,opt,name=volume_type,json=volumeType,proto3" json:"volume_type,omitempty"`
	GroupId            string                          `protobuf:"bytes,22,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
	ProviderId         string                          `protobuf:"bytes,23,opt,name=provider_id,json=providerId,proto3" json:"provider_id,omitempty"`
	ServiceUuid        string                          `protobuf:"bytes,24,opt,name=service_uuid,json=serviceUuid,proto3" json:"service_uuid,omitempty"`
	SharedTargets      bool                            `protobuf:"varint,25,opt,name=shared_targets,json=sharedTargets,proto3" json:"shared_targets,omitempty"`
	ClusterName        string                          `protobuf:"bytes,26,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
	VolumeTypeId       string                          `protobuf:"bytes,27,opt,name=volume_type_id,json=volumeTypeId,proto3" json:"volume_type_id,omitempty"`
	ConsumesQuota      bool                            `protobuf:"varint,28,opt,name=consumes_quota,json=consumesQuota,proto3" json:"consumes_quota,omitempty"`
}

func (x *CreateVolumeResp_Volume) Reset() {
	*x = CreateVolumeResp_Volume{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[457]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVolumeResp_Volume) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVolumeResp_Volume) ProtoMessage() {}

func (x *CreateVolumeResp_Volume) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[457]
	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 CreateVolumeResp_Volume.ProtoReflect.Descriptor instead.
func (*CreateVolumeResp_Volume) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{186, 2}
}

func (x *CreateVolumeResp_Volume) GetAttachments() []*CreateVolumeResp_Attachments {
	if x != nil {
		return x.Attachments
	}
	return nil
}

func (x *CreateVolumeResp_Volume) GetAvailabilityZone() string {
	if x != nil {
		return x.AvailabilityZone
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetBootable() string {
	if x != nil {
		return x.Bootable
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetConsistencygroupId() string {
	if x != nil {
		return x.ConsistencygroupId
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetEncrypted() bool {
	if x != nil {
		return x.Encrypted
	}
	return false
}

func (x *CreateVolumeResp_Volume) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetLinks() []*CreateVolumeResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *CreateVolumeResp_Volume) GetMetadata() *CreateVolumeResp_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *CreateVolumeResp_Volume) GetMigrationStatus() string {
	if x != nil {
		return x.MigrationStatus
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetMultiattach() bool {
	if x != nil {
		return x.Multiattach
	}
	return false
}

func (x *CreateVolumeResp_Volume) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetReplicationStatus() string {
	if x != nil {
		return x.ReplicationStatus
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetSize() uint32 {
	if x != nil {
		return x.Size
	}
	return 0
}

func (x *CreateVolumeResp_Volume) GetSnapshotId() string {
	if x != nil {
		return x.SnapshotId
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetSourceVolid() string {
	if x != nil {
		return x.SourceVolid
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetVolumeType() string {
	if x != nil {
		return x.VolumeType
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetGroupId() string {
	if x != nil {
		return x.GroupId
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetProviderId() string {
	if x != nil {
		return x.ProviderId
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetServiceUuid() string {
	if x != nil {
		return x.ServiceUuid
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetSharedTargets() bool {
	if x != nil {
		return x.SharedTargets
	}
	return false
}

func (x *CreateVolumeResp_Volume) GetClusterName() string {
	if x != nil {
		return x.ClusterName
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetVolumeTypeId() string {
	if x != nil {
		return x.VolumeTypeId
	}
	return ""
}

func (x *CreateVolumeResp_Volume) GetConsumesQuota() bool {
	if x != nil {
		return x.ConsumesQuota
	}
	return false
}

type CreateVolumeResp_Attachments struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ServerId     string `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	AttachmentId string `protobuf:"bytes,2,opt,name=attachment_id,json=attachmentId,proto3" json:"attachment_id,omitempty"`
	AttachedAt   string `protobuf:"bytes,3,opt,name=attached_at,json=attachedAt,proto3" json:"attached_at,omitempty"`
	HostName     string `protobuf:"bytes,4,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"`
	VolumeId     string `protobuf:"bytes,5,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	Device       string `protobuf:"bytes,6,opt,name=device,proto3" json:"device,omitempty"`
	Id           string `protobuf:"bytes,7,opt,name=id,proto3" json:"id,omitempty"`
}

func (x *CreateVolumeResp_Attachments) Reset() {
	*x = CreateVolumeResp_Attachments{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[458]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVolumeResp_Attachments) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVolumeResp_Attachments) ProtoMessage() {}

func (x *CreateVolumeResp_Attachments) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[458]
	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 CreateVolumeResp_Attachments.ProtoReflect.Descriptor instead.
func (*CreateVolumeResp_Attachments) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{186, 3}
}

func (x *CreateVolumeResp_Attachments) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *CreateVolumeResp_Attachments) GetAttachmentId() string {
	if x != nil {
		return x.AttachmentId
	}
	return ""
}

func (x *CreateVolumeResp_Attachments) GetAttachedAt() string {
	if x != nil {
		return x.AttachedAt
	}
	return ""
}

func (x *CreateVolumeResp_Attachments) GetHostName() string {
	if x != nil {
		return x.HostName
	}
	return ""
}

func (x *CreateVolumeResp_Attachments) GetVolumeId() string {
	if x != nil {
		return x.VolumeId
	}
	return ""
}

func (x *CreateVolumeResp_Attachments) GetDevice() string {
	if x != nil {
		return x.Device
	}
	return ""
}

func (x *CreateVolumeResp_Attachments) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type UpdateVolumeReq_Metadata struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}

func (x *UpdateVolumeReq_Metadata) Reset() {
	*x = UpdateVolumeReq_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[459]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateVolumeReq_Metadata) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateVolumeReq_Metadata) ProtoMessage() {}

func (x *UpdateVolumeReq_Metadata) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[459]
	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 UpdateVolumeReq_Metadata.ProtoReflect.Descriptor instead.
func (*UpdateVolumeReq_Metadata) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{189, 0}
}

func (x *UpdateVolumeReq_Metadata) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

type UpdateVolumeReq_Volume struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name        string                    `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Description string                    `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	Metadata    *UpdateVolumeReq_Metadata `protobuf:"bytes,3,opt,name=metadata,proto3" json:"metadata,omitempty"`
}

func (x *UpdateVolumeReq_Volume) Reset() {
	*x = UpdateVolumeReq_Volume{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[460]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateVolumeReq_Volume) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateVolumeReq_Volume) ProtoMessage() {}

func (x *UpdateVolumeReq_Volume) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[460]
	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 UpdateVolumeReq_Volume.ProtoReflect.Descriptor instead.
func (*UpdateVolumeReq_Volume) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{189, 1}
}

func (x *UpdateVolumeReq_Volume) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateVolumeReq_Volume) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdateVolumeReq_Volume) GetMetadata() *UpdateVolumeReq_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

type UpdateVolumeResp_Links struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *UpdateVolumeResp_Links) Reset() {
	*x = UpdateVolumeResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[461]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateVolumeResp_Links) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateVolumeResp_Links) ProtoMessage() {}

func (x *UpdateVolumeResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[461]
	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 UpdateVolumeResp_Links.ProtoReflect.Descriptor instead.
func (*UpdateVolumeResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{190, 0}
}

func (x *UpdateVolumeResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *UpdateVolumeResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type UpdateVolumeResp_Metadata struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}

func (x *UpdateVolumeResp_Metadata) Reset() {
	*x = UpdateVolumeResp_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[462]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateVolumeResp_Metadata) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateVolumeResp_Metadata) ProtoMessage() {}

func (x *UpdateVolumeResp_Metadata) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[462]
	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 UpdateVolumeResp_Metadata.ProtoReflect.Descriptor instead.
func (*UpdateVolumeResp_Metadata) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{190, 1}
}

func (x *UpdateVolumeResp_Metadata) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

type UpdateVolumeResp_Volume struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Attachments        []*UpdateVolumeResp_Attachments `protobuf:"bytes,1,rep,name=attachments,proto3" json:"attachments,omitempty"`
	AvailabilityZone   string                          `protobuf:"bytes,2,opt,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"`
	Bootable           string                          `protobuf:"bytes,3,opt,name=bootable,proto3" json:"bootable,omitempty"`
	ConsistencygroupId string                          `protobuf:"bytes,4,opt,name=consistencygroup_id,json=consistencygroupId,proto3" json:"consistencygroup_id,omitempty"`
	CreatedAt          string                          `protobuf:"bytes,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Description        string                          `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`
	Encrypted          bool                            `protobuf:"varint,7,opt,name=encrypted,proto3" json:"encrypted,omitempty"`
	Id                 string                          `protobuf:"bytes,8,opt,name=id,proto3" json:"id,omitempty"`
	Links              []*UpdateVolumeResp_Links       `protobuf:"bytes,9,rep,name=links,proto3" json:"links,omitempty"`
	Metadata           *UpdateVolumeResp_Metadata      `protobuf:"bytes,10,opt,name=metadata,proto3" json:"metadata,omitempty"`
	MigrationStatus    string                          `protobuf:"bytes,11,opt,name=migration_status,json=migrationStatus,proto3" json:"migration_status,omitempty"`
	Multiattach        bool                            `protobuf:"varint,12,opt,name=multiattach,proto3" json:"multiattach,omitempty"`
	Name               string                          `protobuf:"bytes,13,opt,name=name,proto3" json:"name,omitempty"`
	ReplicationStatus  string                          `protobuf:"bytes,14,opt,name=replication_status,json=replicationStatus,proto3" json:"replication_status,omitempty"`
	Size               uint32                          `protobuf:"varint,15,opt,name=size,proto3" json:"size,omitempty"`
	SnapshotId         string                          `protobuf:"bytes,16,opt,name=snapshot_id,json=snapshotId,proto3" json:"snapshot_id,omitempty"`
	SourceVolid        string                          `protobuf:"bytes,17,opt,name=source_volid,json=sourceVolid,proto3" json:"source_volid,omitempty"`
	Status             string                          `protobuf:"bytes,18,opt,name=status,proto3" json:"status,omitempty"`
	UpdatedAt          string                          `protobuf:"bytes,19,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	UserId             string                          `protobuf:"bytes,20,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	VolumeType         string                          `protobuf:"bytes,21,opt,name=volume_type,json=volumeType,proto3" json:"volume_type,omitempty"`
	GroupId            string                          `protobuf:"bytes,22,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
	ProviderId         string                          `protobuf:"bytes,23,opt,name=provider_id,json=providerId,proto3" json:"provider_id,omitempty"`
	ServiceUuid        string                          `protobuf:"bytes,24,opt,name=service_uuid,json=serviceUuid,proto3" json:"service_uuid,omitempty"`
	SharedTargets      bool                            `protobuf:"varint,25,opt,name=shared_targets,json=sharedTargets,proto3" json:"shared_targets,omitempty"`
	ClusterName        string                          `protobuf:"bytes,26,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
	VolumeTypeId       string                          `protobuf:"bytes,27,opt,name=volume_type_id,json=volumeTypeId,proto3" json:"volume_type_id,omitempty"`
	ConsumesQuota      bool                            `protobuf:"varint,28,opt,name=consumes_quota,json=consumesQuota,proto3" json:"consumes_quota,omitempty"`
}

func (x *UpdateVolumeResp_Volume) Reset() {
	*x = UpdateVolumeResp_Volume{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[463]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateVolumeResp_Volume) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateVolumeResp_Volume) ProtoMessage() {}

func (x *UpdateVolumeResp_Volume) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[463]
	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 UpdateVolumeResp_Volume.ProtoReflect.Descriptor instead.
func (*UpdateVolumeResp_Volume) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{190, 2}
}

func (x *UpdateVolumeResp_Volume) GetAttachments() []*UpdateVolumeResp_Attachments {
	if x != nil {
		return x.Attachments
	}
	return nil
}

func (x *UpdateVolumeResp_Volume) GetAvailabilityZone() string {
	if x != nil {
		return x.AvailabilityZone
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetBootable() string {
	if x != nil {
		return x.Bootable
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetConsistencygroupId() string {
	if x != nil {
		return x.ConsistencygroupId
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetEncrypted() bool {
	if x != nil {
		return x.Encrypted
	}
	return false
}

func (x *UpdateVolumeResp_Volume) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetLinks() []*UpdateVolumeResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *UpdateVolumeResp_Volume) GetMetadata() *UpdateVolumeResp_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *UpdateVolumeResp_Volume) GetMigrationStatus() string {
	if x != nil {
		return x.MigrationStatus
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetMultiattach() bool {
	if x != nil {
		return x.Multiattach
	}
	return false
}

func (x *UpdateVolumeResp_Volume) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetReplicationStatus() string {
	if x != nil {
		return x.ReplicationStatus
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetSize() uint32 {
	if x != nil {
		return x.Size
	}
	return 0
}

func (x *UpdateVolumeResp_Volume) GetSnapshotId() string {
	if x != nil {
		return x.SnapshotId
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetSourceVolid() string {
	if x != nil {
		return x.SourceVolid
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetVolumeType() string {
	if x != nil {
		return x.VolumeType
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetGroupId() string {
	if x != nil {
		return x.GroupId
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetProviderId() string {
	if x != nil {
		return x.ProviderId
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetServiceUuid() string {
	if x != nil {
		return x.ServiceUuid
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetSharedTargets() bool {
	if x != nil {
		return x.SharedTargets
	}
	return false
}

func (x *UpdateVolumeResp_Volume) GetClusterName() string {
	if x != nil {
		return x.ClusterName
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetVolumeTypeId() string {
	if x != nil {
		return x.VolumeTypeId
	}
	return ""
}

func (x *UpdateVolumeResp_Volume) GetConsumesQuota() bool {
	if x != nil {
		return x.ConsumesQuota
	}
	return false
}

type UpdateVolumeResp_Attachments struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ServerId     string `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	AttachmentId string `protobuf:"bytes,2,opt,name=attachment_id,json=attachmentId,proto3" json:"attachment_id,omitempty"`
	AttachedAt   string `protobuf:"bytes,3,opt,name=attached_at,json=attachedAt,proto3" json:"attached_at,omitempty"`
	HostName     string `protobuf:"bytes,4,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"`
	VolumeId     string `protobuf:"bytes,5,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	Device       string `protobuf:"bytes,6,opt,name=device,proto3" json:"device,omitempty"`
	Id           string `protobuf:"bytes,7,opt,name=id,proto3" json:"id,omitempty"`
}

func (x *UpdateVolumeResp_Attachments) Reset() {
	*x = UpdateVolumeResp_Attachments{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[464]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateVolumeResp_Attachments) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateVolumeResp_Attachments) ProtoMessage() {}

func (x *UpdateVolumeResp_Attachments) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[464]
	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 UpdateVolumeResp_Attachments.ProtoReflect.Descriptor instead.
func (*UpdateVolumeResp_Attachments) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{190, 3}
}

func (x *UpdateVolumeResp_Attachments) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *UpdateVolumeResp_Attachments) GetAttachmentId() string {
	if x != nil {
		return x.AttachmentId
	}
	return ""
}

func (x *UpdateVolumeResp_Attachments) GetAttachedAt() string {
	if x != nil {
		return x.AttachedAt
	}
	return ""
}

func (x *UpdateVolumeResp_Attachments) GetHostName() string {
	if x != nil {
		return x.HostName
	}
	return ""
}

func (x *UpdateVolumeResp_Attachments) GetVolumeId() string {
	if x != nil {
		return x.VolumeId
	}
	return ""
}

func (x *UpdateVolumeResp_Attachments) GetDevice() string {
	if x != nil {
		return x.Device
	}
	return ""
}

func (x *UpdateVolumeResp_Attachments) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetVolumeDetailedByIdResp_Links struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Href string `protobuf:"bytes,1,opt,name=href,proto3" json:"href,omitempty"`
	Rel  string `protobuf:"bytes,2,opt,name=rel,proto3" json:"rel,omitempty"`
}

func (x *GetVolumeDetailedByIdResp_Links) Reset() {
	*x = GetVolumeDetailedByIdResp_Links{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[465]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetVolumeDetailedByIdResp_Links) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetVolumeDetailedByIdResp_Links) ProtoMessage() {}

func (x *GetVolumeDetailedByIdResp_Links) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[465]
	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 GetVolumeDetailedByIdResp_Links.ProtoReflect.Descriptor instead.
func (*GetVolumeDetailedByIdResp_Links) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{192, 0}
}

func (x *GetVolumeDetailedByIdResp_Links) GetHref() string {
	if x != nil {
		return x.Href
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Links) GetRel() string {
	if x != nil {
		return x.Rel
	}
	return ""
}

type GetVolumeDetailedByIdResp_Metadata struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *GetVolumeDetailedByIdResp_Metadata) Reset() {
	*x = GetVolumeDetailedByIdResp_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[466]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetVolumeDetailedByIdResp_Metadata) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetVolumeDetailedByIdResp_Metadata) ProtoMessage() {}

func (x *GetVolumeDetailedByIdResp_Metadata) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[466]
	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 GetVolumeDetailedByIdResp_Metadata.ProtoReflect.Descriptor instead.
func (*GetVolumeDetailedByIdResp_Metadata) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{192, 1}
}

type GetVolumeDetailedByIdResp_Attachments struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *GetVolumeDetailedByIdResp_Attachments) Reset() {
	*x = GetVolumeDetailedByIdResp_Attachments{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[467]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetVolumeDetailedByIdResp_Attachments) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetVolumeDetailedByIdResp_Attachments) ProtoMessage() {}

func (x *GetVolumeDetailedByIdResp_Attachments) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[467]
	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 GetVolumeDetailedByIdResp_Attachments.ProtoReflect.Descriptor instead.
func (*GetVolumeDetailedByIdResp_Attachments) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{192, 2}
}

type GetVolumeDetailedByIdResp_Volume struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Attachments        []*GetVolumeDetailedByIdResp_Attachments `protobuf:"bytes,1,rep,name=attachments,proto3" json:"attachments,omitempty"`
	AvailabilityZone   string                                   `protobuf:"bytes,2,opt,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"`
	Bootable           string                                   `protobuf:"bytes,3,opt,name=bootable,proto3" json:"bootable,omitempty"`
	ConsistencygroupId string                                   `protobuf:"bytes,4,opt,name=consistencygroup_id,json=consistencygroupId,proto3" json:"consistencygroup_id,omitempty"`
	CreatedAt          string                                   `protobuf:"bytes,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Description        string                                   `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`
	Encrypted          bool                                     `protobuf:"varint,7,opt,name=encrypted,proto3" json:"encrypted,omitempty"`
	Id                 string                                   `protobuf:"bytes,8,opt,name=id,proto3" json:"id,omitempty"`
	Links              []*GetVolumeDetailedByIdResp_Links       `protobuf:"bytes,9,rep,name=links,proto3" json:"links,omitempty"`
	Metadata           *GetVolumeDetailedByIdResp_Metadata      `protobuf:"bytes,10,opt,name=metadata,proto3" json:"metadata,omitempty"`
	MigrationStatus    string                                   `protobuf:"bytes,11,opt,name=migration_status,json=migrationStatus,proto3" json:"migration_status,omitempty"`
	Multiattach        bool                                     `protobuf:"varint,12,opt,name=multiattach,proto3" json:"multiattach,omitempty"`
	Name               string                                   `protobuf:"bytes,13,opt,name=name,proto3" json:"name,omitempty"`
	ReplicationStatus  string                                   `protobuf:"bytes,18,opt,name=replication_status,json=replicationStatus,proto3" json:"replication_status,omitempty"`
	Size               uint32                                   `protobuf:"varint,19,opt,name=size,proto3" json:"size,omitempty"`
	SnapshotId         string                                   `protobuf:"bytes,20,opt,name=snapshot_id,json=snapshotId,proto3" json:"snapshot_id,omitempty"`
	SourceVolid        string                                   `protobuf:"bytes,21,opt,name=source_volid,json=sourceVolid,proto3" json:"source_volid,omitempty"`
	Status             string                                   `protobuf:"bytes,22,opt,name=status,proto3" json:"status,omitempty"`
	UpdatedAt          string                                   `protobuf:"bytes,23,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	UserId             string                                   `protobuf:"bytes,24,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	VolumeType         string                                   `protobuf:"bytes,25,opt,name=volume_type,json=volumeType,proto3" json:"volume_type,omitempty"`
	ProviderId         string                                   `protobuf:"bytes,26,opt,name=provider_id,json=providerId,proto3" json:"provider_id,omitempty"`
	GroupId            string                                   `protobuf:"bytes,27,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
	ServiceUuid        string                                   `protobuf:"bytes,28,opt,name=service_uuid,json=serviceUuid,proto3" json:"service_uuid,omitempty"`
	SharedTargets      bool                                     `protobuf:"varint,29,opt,name=shared_targets,json=sharedTargets,proto3" json:"shared_targets,omitempty"`
	ClusterName        string                                   `protobuf:"bytes,30,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
	VolumeTypeId       string                                   `protobuf:"bytes,31,opt,name=volume_type_id,json=volumeTypeId,proto3" json:"volume_type_id,omitempty"`
	ConsumesQuota      bool                                     `protobuf:"varint,32,opt,name=consumes_quota,json=consumesQuota,proto3" json:"consumes_quota,omitempty"`
}

func (x *GetVolumeDetailedByIdResp_Volume) Reset() {
	*x = GetVolumeDetailedByIdResp_Volume{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[468]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetVolumeDetailedByIdResp_Volume) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetVolumeDetailedByIdResp_Volume) ProtoMessage() {}

func (x *GetVolumeDetailedByIdResp_Volume) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[468]
	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 GetVolumeDetailedByIdResp_Volume.ProtoReflect.Descriptor instead.
func (*GetVolumeDetailedByIdResp_Volume) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{192, 3}
}

func (x *GetVolumeDetailedByIdResp_Volume) GetAttachments() []*GetVolumeDetailedByIdResp_Attachments {
	if x != nil {
		return x.Attachments
	}
	return nil
}

func (x *GetVolumeDetailedByIdResp_Volume) GetAvailabilityZone() string {
	if x != nil {
		return x.AvailabilityZone
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetBootable() string {
	if x != nil {
		return x.Bootable
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetConsistencygroupId() string {
	if x != nil {
		return x.ConsistencygroupId
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetEncrypted() bool {
	if x != nil {
		return x.Encrypted
	}
	return false
}

func (x *GetVolumeDetailedByIdResp_Volume) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetLinks() []*GetVolumeDetailedByIdResp_Links {
	if x != nil {
		return x.Links
	}
	return nil
}

func (x *GetVolumeDetailedByIdResp_Volume) GetMetadata() *GetVolumeDetailedByIdResp_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *GetVolumeDetailedByIdResp_Volume) GetMigrationStatus() string {
	if x != nil {
		return x.MigrationStatus
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetMultiattach() bool {
	if x != nil {
		return x.Multiattach
	}
	return false
}

func (x *GetVolumeDetailedByIdResp_Volume) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetReplicationStatus() string {
	if x != nil {
		return x.ReplicationStatus
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetSize() uint32 {
	if x != nil {
		return x.Size
	}
	return 0
}

func (x *GetVolumeDetailedByIdResp_Volume) GetSnapshotId() string {
	if x != nil {
		return x.SnapshotId
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetSourceVolid() string {
	if x != nil {
		return x.SourceVolid
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetVolumeType() string {
	if x != nil {
		return x.VolumeType
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetProviderId() string {
	if x != nil {
		return x.ProviderId
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetGroupId() string {
	if x != nil {
		return x.GroupId
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetServiceUuid() string {
	if x != nil {
		return x.ServiceUuid
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetSharedTargets() bool {
	if x != nil {
		return x.SharedTargets
	}
	return false
}

func (x *GetVolumeDetailedByIdResp_Volume) GetClusterName() string {
	if x != nil {
		return x.ClusterName
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetVolumeTypeId() string {
	if x != nil {
		return x.VolumeTypeId
	}
	return ""
}

func (x *GetVolumeDetailedByIdResp_Volume) GetConsumesQuota() bool {
	if x != nil {
		return x.ConsumesQuota
	}
	return false
}

type ListVolumeTypesResp_ExtraSpecs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Capabilities string `protobuf:"bytes,1,opt,name=capabilities,proto3" json:"capabilities,omitempty"`
}

func (x *ListVolumeTypesResp_ExtraSpecs) Reset() {
	*x = ListVolumeTypesResp_ExtraSpecs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[469]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListVolumeTypesResp_ExtraSpecs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListVolumeTypesResp_ExtraSpecs) ProtoMessage() {}

func (x *ListVolumeTypesResp_ExtraSpecs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[469]
	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 ListVolumeTypesResp_ExtraSpecs.ProtoReflect.Descriptor instead.
func (*ListVolumeTypesResp_ExtraSpecs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{194, 0}
}

func (x *ListVolumeTypesResp_ExtraSpecs) GetCapabilities() string {
	if x != nil {
		return x.Capabilities
	}
	return ""
}

type ListVolumeTypesResp_VolumeTypes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Description                string                          `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`                 // @gotags: copier:"Description"
	ExtraSpecs                 *ListVolumeTypesResp_ExtraSpecs `protobuf:"bytes,2,opt,name=extra_specs,json=extraSpecs,proto3" json:"extra_specs,omitempty"` // @gotags: copier:"Extra_specs"
	Id                         string                          `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	IsPublic                   bool                            `protobuf:"varint,4,opt,name=is_public,json=isPublic,proto3" json:"is_public,omitempty"` // @gotags: copier:"IsPublic"
	Name                       string                          `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"`
	OsVolumeTypeAccessIsPublic bool                            `protobuf:"varint,6,opt,name=os_volume_type_access_is_public,json=os-volume-type-access:is_public,proto3" json:"os_volume_type_access_is_public,omitempty"` // @gotags: copier:"OsVolumeTypeAccessIsPublic"
	QosSpecsId                 string                          `protobuf:"bytes,7,opt,name=qos_specs_id,json=qosSpecsId,proto3" json:"qos_specs_id,omitempty"`
}

func (x *ListVolumeTypesResp_VolumeTypes) Reset() {
	*x = ListVolumeTypesResp_VolumeTypes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[470]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListVolumeTypesResp_VolumeTypes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListVolumeTypesResp_VolumeTypes) ProtoMessage() {}

func (x *ListVolumeTypesResp_VolumeTypes) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[470]
	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 ListVolumeTypesResp_VolumeTypes.ProtoReflect.Descriptor instead.
func (*ListVolumeTypesResp_VolumeTypes) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{194, 1}
}

func (x *ListVolumeTypesResp_VolumeTypes) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ListVolumeTypesResp_VolumeTypes) GetExtraSpecs() *ListVolumeTypesResp_ExtraSpecs {
	if x != nil {
		return x.ExtraSpecs
	}
	return nil
}

func (x *ListVolumeTypesResp_VolumeTypes) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ListVolumeTypesResp_VolumeTypes) GetIsPublic() bool {
	if x != nil {
		return x.IsPublic
	}
	return false
}

func (x *ListVolumeTypesResp_VolumeTypes) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ListVolumeTypesResp_VolumeTypes) GetOsVolumeTypeAccessIsPublic() bool {
	if x != nil {
		return x.OsVolumeTypeAccessIsPublic
	}
	return false
}

func (x *ListVolumeTypesResp_VolumeTypes) GetQosSpecsId() string {
	if x != nil {
		return x.QosSpecsId
	}
	return ""
}

type CreateVolumeTypeReq_ExtraSpecs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Capabilities string `protobuf:"bytes,1,opt,name=capabilities,proto3" json:"capabilities,omitempty"`
}

func (x *CreateVolumeTypeReq_ExtraSpecs) Reset() {
	*x = CreateVolumeTypeReq_ExtraSpecs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[471]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVolumeTypeReq_ExtraSpecs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVolumeTypeReq_ExtraSpecs) ProtoMessage() {}

func (x *CreateVolumeTypeReq_ExtraSpecs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[471]
	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 CreateVolumeTypeReq_ExtraSpecs.ProtoReflect.Descriptor instead.
func (*CreateVolumeTypeReq_ExtraSpecs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{195, 0}
}

func (x *CreateVolumeTypeReq_ExtraSpecs) GetCapabilities() string {
	if x != nil {
		return x.Capabilities
	}
	return ""
}

type CreateVolumeTypeReq_VolumeType struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name                       string                          `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Description                string                          `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	OsVolumeTypeAccessIsPublic bool                            `protobuf:"varint,3,opt,name=os_volume_type_access_is_public,json=os-volume-type-access:is_public,proto3" json:"os_volume_type_access_is_public,omitempty"`
	ExtraSpecs                 *CreateVolumeTypeReq_ExtraSpecs `protobuf:"bytes,4,opt,name=extra_specs,json=extraSpecs,proto3" json:"extra_specs,omitempty"`
}

func (x *CreateVolumeTypeReq_VolumeType) Reset() {
	*x = CreateVolumeTypeReq_VolumeType{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[472]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVolumeTypeReq_VolumeType) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVolumeTypeReq_VolumeType) ProtoMessage() {}

func (x *CreateVolumeTypeReq_VolumeType) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[472]
	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 CreateVolumeTypeReq_VolumeType.ProtoReflect.Descriptor instead.
func (*CreateVolumeTypeReq_VolumeType) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{195, 1}
}

func (x *CreateVolumeTypeReq_VolumeType) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateVolumeTypeReq_VolumeType) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateVolumeTypeReq_VolumeType) GetOsVolumeTypeAccessIsPublic() bool {
	if x != nil {
		return x.OsVolumeTypeAccessIsPublic
	}
	return false
}

func (x *CreateVolumeTypeReq_VolumeType) GetExtraSpecs() *CreateVolumeTypeReq_ExtraSpecs {
	if x != nil {
		return x.ExtraSpecs
	}
	return nil
}

type CreateVolumeTypeResp_ExtraSpecs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Capabilities string `protobuf:"bytes,1,opt,name=capabilities,proto3" json:"capabilities,omitempty"` // @gotags: copier:"Capabilities"
}

func (x *CreateVolumeTypeResp_ExtraSpecs) Reset() {
	*x = CreateVolumeTypeResp_ExtraSpecs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[473]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVolumeTypeResp_ExtraSpecs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVolumeTypeResp_ExtraSpecs) ProtoMessage() {}

func (x *CreateVolumeTypeResp_ExtraSpecs) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[473]
	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 CreateVolumeTypeResp_ExtraSpecs.ProtoReflect.Descriptor instead.
func (*CreateVolumeTypeResp_ExtraSpecs) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{196, 0}
}

func (x *CreateVolumeTypeResp_ExtraSpecs) GetCapabilities() string {
	if x != nil {
		return x.Capabilities
	}
	return ""
}

type CreateVolumeTypeResp_VolumeType struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name                       string                           `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`                                                                                             // @gotags: copier:"Name"
	ExtraSpecs                 *CreateVolumeTypeResp_ExtraSpecs `protobuf:"bytes,2,opt,name=extra_specs,json=extraSpecs,proto3" json:"extra_specs,omitempty"`                                                               // @gotags: copier:"ExtraSpecs"
	OsVolumeTypeAccessIsPublic bool                             `protobuf:"varint,3,opt,name=os_volume_type_access_is_public,json=os-volume-type-access:is_public,proto3" json:"os_volume_type_access_is_public,omitempty"` // @gotags: copier:"OsVolumeTypeAccessIsPublic"
	IsPublic                   bool                             `protobuf:"varint,4,opt,name=is_public,json=isPublic,proto3" json:"is_public,omitempty"`                                                                    // @gotags: copier:"IsPublic"
	Id                         string                           `protobuf:"bytes,5,opt,name=id,proto3" json:"id,omitempty"`                                                                                                 // @gotags: copier:"Id"
	Description                string                           `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`                                                                               // @gotags: copier:"Description"
}

func (x *CreateVolumeTypeResp_VolumeType) Reset() {
	*x = CreateVolumeTypeResp_VolumeType{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pcm_openstack_proto_msgTypes[474]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVolumeTypeResp_VolumeType) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVolumeTypeResp_VolumeType) ProtoMessage() {}

func (x *CreateVolumeTypeResp_VolumeType) ProtoReflect() protoreflect.Message {
	mi := &file_pcm_openstack_proto_msgTypes[474]
	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 CreateVolumeTypeResp_VolumeType.ProtoReflect.Descriptor instead.
func (*CreateVolumeTypeResp_VolumeType) Descriptor() ([]byte, []int) {
	return file_pcm_openstack_proto_rawDescGZIP(), []int{196, 1}
}

func (x *CreateVolumeTypeResp_VolumeType) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateVolumeTypeResp_VolumeType) GetExtraSpecs() *CreateVolumeTypeResp_ExtraSpecs {
	if x != nil {
		return x.ExtraSpecs
	}
	return nil
}

func (x *CreateVolumeTypeResp_VolumeType) GetOsVolumeTypeAccessIsPublic() bool {
	if x != nil {
		return x.OsVolumeTypeAccessIsPublic
	}
	return false
}

func (x *CreateVolumeTypeResp_VolumeType) GetIsPublic() bool {
	if x != nil {
		return x.IsPublic
	}
	return false
}

func (x *CreateVolumeTypeResp_VolumeType) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateVolumeTypeResp_VolumeType) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

var File_pcm_openstack_proto protoreflect.FileDescriptor

var file_pcm_openstack_proto_rawDesc = []byte{
	0x0a, 0x13, 0x70, 0x63, 0x6d, 0x2d, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x22, 0x31, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x4c, 0x69,
	0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66,
	0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66,
	0x6f, 0x72, 0x6d, 0x22, 0x9b, 0x09, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75,
	0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3e, 0x0a, 0x06,
	0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70,
	0x75, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69,
	0x6d, 0x69, 0x74, 0x73, 0x52, 0x06, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04,
	0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65,
	0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d,
	0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a,
	0x06, 0x0a, 0x04, 0x52, 0x61, 0x74, 0x65, 0x1a, 0xec, 0x06, 0x0a, 0x08, 0x41, 0x62, 0x73, 0x6f,
	0x6c, 0x75, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x4d, 0x65, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6d, 0x61, 0x78,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x61,
	0x78, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x69,
	0x74, 0x79, 0x12, 0x34, 0x0a, 0x15, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x55, 0x73, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x15, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x72,
	0x6f, 0x75, 0x70, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x49,
	0x6d, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c,
	0x6d, 0x61, 0x78, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x2e, 0x0a, 0x12,
	0x6d, 0x61, 0x78, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x69,
	0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x50, 0x65, 0x72,
	0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x2a, 0x0a, 0x10,
	0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4b, 0x65, 0x79, 0x70, 0x61, 0x69, 0x72, 0x73,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c,
	0x4b, 0x65, 0x79, 0x70, 0x61, 0x69, 0x72, 0x73, 0x12, 0x34, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65,
	0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x28,
	0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x6f, 0x74, 0x61,
	0x6c, 0x43, 0x6f, 0x72, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x72, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64,
	0x12, 0x22, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x52, 0x41, 0x4d, 0x55, 0x73, 0x65, 0x64,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x52, 0x41, 0x4d,
	0x55, 0x73, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x73,
	0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73,
	0x55, 0x73, 0x65, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x11, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x73, 0x12, 0x32, 0x0a, 0x14, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x6c, 0x6f, 0x61, 0x74,
	0x69, 0x6e, 0x67, 0x49, 0x70, 0x73, 0x55, 0x73, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x14, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49,
	0x70, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74,
	0x61, 0x6c, 0x43, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6d,
	0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x15,
	0x6d, 0x61, 0x78, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65,
	0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, 0x6d, 0x61, 0x78,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65,
	0x72, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x6c,
	0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x70, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x13, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e,
	0x67, 0x49, 0x70, 0x73, 0x12, 0x38, 0x0a, 0x17, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x55, 0x73, 0x65, 0x64, 0x18,
	0x11, 0x20, 0x01, 0x28, 0x03, 0x52, 0x17, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x2c,
	0x0a, 0x11, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
	0x63, 0x65, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x54, 0x6f,
	0x74, 0x61, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x0f,
	0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x52, 0x41, 0x4d, 0x53, 0x69, 0x7a, 0x65, 0x18,
	0x13, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x52,
	0x41, 0x4d, 0x53, 0x69, 0x7a, 0x65, 0x1a, 0x88, 0x01, 0x0a, 0x06, 0x4c, 0x69, 0x6d, 0x69, 0x74,
	0x73, 0x12, 0x38, 0x0a, 0x04, 0x72, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x43,
	0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x52, 0x61, 0x74, 0x65, 0x52, 0x04, 0x72, 0x61, 0x74, 0x65, 0x12, 0x44, 0x0a, 0x08, 0x61,
	0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d,
	0x70, 0x75, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41,
	0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x52, 0x08, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74,
	0x65, 0x22, 0x30, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4c, 0x69,
	0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66,
	0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66,
	0x6f, 0x72, 0x6d, 0x22, 0x9f, 0x06, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3d, 0x0a, 0x06, 0x6c,
	0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6d, 0x69,
	0x74, 0x73, 0x52, 0x06, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67,
	0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x06, 0x0a,
	0x04, 0x52, 0x61, 0x74, 0x65, 0x1a, 0xf4, 0x03, 0x0a, 0x08, 0x41, 0x62, 0x73, 0x6f, 0x6c, 0x75,
	0x74, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x6e, 0x61, 0x70, 0x73,
	0x68, 0x6f, 0x74, 0x73, 0x55, 0x73, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12,
	0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x55, 0x73,
	0x65, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x61,
	0x63, 0x6b, 0x75, 0x70, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6d, 0x61, 0x78,
	0x54, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x38, 0x0a, 0x17,
	0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x47, 0x69,
	0x67, 0x61, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x17, 0x6d,
	0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x47, 0x69, 0x67,
	0x61, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74,
	0x61, 0x6c, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x6e, 0x61, 0x70, 0x73,
	0x68, 0x6f, 0x74, 0x73, 0x12, 0x38, 0x0a, 0x17, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c,
	0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x47, 0x69, 0x67, 0x61, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x17, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x42,
	0x61, 0x63, 0x6b, 0x75, 0x70, 0x47, 0x69, 0x67, 0x61, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x3a,
	0x0a, 0x18, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x47, 0x69, 0x67,
	0x61, 0x62, 0x79, 0x74, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x18, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x47, 0x69, 0x67,
	0x61, 0x62, 0x79, 0x74, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61,
	0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x56, 0x6f, 0x6c,
	0x75, 0x6d, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x56, 0x6f, 0x6c,
	0x75, 0x6d, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10,
	0x74, 0x6f, 0x74, 0x61, 0x6c, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64,
	0x12, 0x2a, 0x0a, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73,
	0x55, 0x73, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x74, 0x6f, 0x74, 0x61,
	0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x12,
	0x74, 0x6f, 0x74, 0x61, 0x6c, 0x47, 0x69, 0x67, 0x61, 0x62, 0x79, 0x74, 0x65, 0x73, 0x55, 0x73,
	0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x47,
	0x69, 0x67, 0x61, 0x62, 0x79, 0x74, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x1a, 0x86, 0x01, 0x0a,
	0x06, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x37, 0x0a, 0x04, 0x72, 0x61, 0x74, 0x65, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x52, 0x61, 0x74, 0x65, 0x52, 0x04, 0x72, 0x61, 0x74, 0x65,
	0x12, 0x43, 0x0a, 0x08, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47,
	0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x41, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x52, 0x08, 0x61, 0x62, 0x73,
	0x6f, 0x6c, 0x75, 0x74, 0x65, 0x22, 0x5a, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a,
	0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f,
	0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x22, 0xae, 0x03, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3c, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x73, 0x12, 0x4d, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x5f, 0x6c,
	0x69, 0x6e, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x5f, 0x6c,
	0x69, 0x6e, 0x6b, 0x73, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x4c, 0x69, 0x6e,
	0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12,
	0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72,
	0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x72, 0x65, 0x6c, 0x1a, 0x65, 0x0a, 0x07, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12,
	0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12,
	0x36, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x73,
	0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x35, 0x0a, 0x0d, 0x53,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04,
	0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66,
	0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72,
	0x65, 0x6c, 0x22, 0x34, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xc1, 0x04, 0x0a, 0x17, 0x4c, 0x69, 0x73,
	0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x4c, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x94, 0x03, 0x0a, 0x0f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x53, 0x54,
	0x61, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
	0x4f, 0x53, 0x54, 0x61, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x56, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x56, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3f, 0x0a,
	0x1d, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52,
	0x5f, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x4f, 0x53, 0x45, 0x58, 0x54, 0x53, 0x52, 0x56, 0x41, 0x54,
	0x54, 0x52, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18,
	0x0a, 0x07, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x07, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x48, 0x6f, 0x73, 0x74,
	0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x48, 0x6f, 0x73, 0x74, 0x49, 0x64,
	0x12, 0x0e, 0x0a, 0x02, 0x49, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x70,
	0x12, 0x14, 0x0a, 0x05, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x05, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x12, 0x16, 0x0a, 0x06, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x0b,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65,
	0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08,
	0x4b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
	0x4b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x53, 0x75, 0x72, 0x76, 0x69,
	0x76, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c,
	0x53, 0x75, 0x72, 0x76, 0x69, 0x76, 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xf3, 0x10, 0x0a,
	0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x3f, 0x0a, 0x08,
	0x63, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x43, 0x72, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x52, 0x08, 0x63, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x45, 0x0a,
	0x08, 0x43, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x39, 0x0a, 0x06, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x06, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x1a, 0x5f, 0x0a, 0x08, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73,
	0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x75, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x69, 0x78, 0x65,
	0x64, 0x5f, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x69, 0x78, 0x65,
	0x64, 0x49, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x74, 0x61, 0x67, 0x1a, 0xbd, 0x03, 0x0a, 0x17, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x5f,
	0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x76,
	0x32, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6f, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78,
	0x12, 0x32, 0x0a, 0x15, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x5f, 0x74, 0x65,
	0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x13, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f,
	0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65,
	0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70,
	0x65, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x62, 0x75, 0x73, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x69, 0x73, 0x6b, 0x42, 0x75, 0x73, 0x12, 0x21, 0x0a, 0x0c,
	0x67, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x67, 0x75, 0x65, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12,
	0x1b, 0x0a, 0x09, 0x6e, 0x6f, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x08, 0x6e, 0x6f, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0b,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a,
	0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69,
	0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x69,
	0x7a, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x74, 0x61, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x32, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
	0x61, 0x12, 0x26, 0x0a, 0x0e, 0x4d, 0x79, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x4e,
	0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x4d, 0x79, 0x20, 0x53, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x3d, 0x0a, 0x0b, 0x50, 0x65, 0x72,
	0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x1a, 0x0a, 0x08,
	0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x25, 0x0a, 0x0f, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a,
	0xe8, 0x07, 0x0a, 0x06, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x6c,
	0x61, 0x76, 0x6f, 0x72, 0x52, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x66,
	0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65, 0x66, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x08,
	0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x73, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x1a, 0x0a,
	0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x66, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x66, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x34, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61,
	0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x34, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x36, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61,
	0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x36, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x6d,
	0x69, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64,
	0x6d, 0x69, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c,
	0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x10, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
	0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x69, 0x0a, 0x17, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x64, 0x65,
	0x76, 0x69, 0x63, 0x65, 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x32, 0x18,
	0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x71, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6d,
	0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x32, 0x52, 0x14, 0x62, 0x6c, 0x6f, 0x63, 0x6b,
	0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x56, 0x32, 0x12,
	0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x64, 0x72, 0x69, 0x76, 0x65, 0x18,
	0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x44, 0x72, 0x69,
	0x76, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0b,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3f, 0x0a,
	0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x4d, 0x65, 0x74, 0x61,
	0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2c,
	0x0a, 0x11, 0x4f, 0x53, 0x5f, 0x44, 0x43, 0x46, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x4f, 0x53, 0x2d, 0x44, 0x43,
	0x46, 0x3a, 0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x48, 0x0a, 0x0b,
	0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0e, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x26, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x50, 0x65,
	0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f,
	0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x53, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x2a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x0e, 0x73, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x75,
	0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f,
	0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f,
	0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x13,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x3c, 0x0a, 0x1a, 0x74, 0x72,
	0x75, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x65, 0x72, 0x74,
	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x09, 0x52, 0x18,
	0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x65, 0x72, 0x74,
	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74,
	0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x13,
	0x68, 0x79, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x68, 0x79, 0x70, 0x65, 0x72,
	0x76, 0x69, 0x73, 0x6f, 0x72, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a,
	0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x08, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x95, 0x02, 0x0a, 0x1a, 0x4f,
	0x73, 0x5f, 0x73, 0x63, 0x68, 0x5f, 0x68, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75,
	0x6c, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x61, 0x6d,
	0x65, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x73, 0x61,
	0x6d, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x12, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f,
	0x6e, 0x65, 0x61, 0x72, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4e, 0x65, 0x61, 0x72, 0x48, 0x6f, 0x73,
	0x74, 0x49, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x63, 0x69, 0x64, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x69, 0x66, 0x66, 0x65,
	0x72, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x0d, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x12, 0x25,
	0x0a, 0x0e, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x6f, 0x73, 0x74,
	0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e,
	0x74, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x71,
	0x75, 0x65, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72,
	0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x65, 0x6c, 0x6c,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x65,
	0x6c, 0x6c, 0x22, 0xdd, 0x03, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x06, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12,
	0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68,
	0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x25, 0x0a, 0x0f, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0xf3, 0x01, 0x0a,
	0x06, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x37, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73,
	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73,
	0x12, 0x2c, 0x0a, 0x11, 0x4f, 0x53, 0x5f, 0x44, 0x43, 0x46, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x4f, 0x53, 0x2d,
	0x44, 0x43, 0x46, 0x3a, 0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x54,
	0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x73, 0x52, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72,
	0x6f, 0x75, 0x70, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x50, 0x61, 0x73,
	0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x50, 0x61,
	0x73, 0x73, 0x22, 0x4a, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x55,
	0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x54, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52,
	0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12,
	0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xad, 0x1b, 0x0a, 0x1a,
	0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x45, 0x0a, 0x06, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
	0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x4d, 0x73, 0x67, 0x1a, 0x9b, 0x01, 0x0a, 0x07, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65,
	0x12, 0x38, 0x0a, 0x17, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x49, 0x50, 0x53, 0x5f, 0x4d,
	0x41, 0x43, 0x5f, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x17, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x49, 0x50, 0x53, 0x2d, 0x4d, 0x41,
	0x43, 0x3a, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x12, 0x28, 0x0a, 0x0f, 0x4f, 0x53,
	0x5f, 0x45, 0x58, 0x54, 0x5f, 0x49, 0x50, 0x53, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0f, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x49, 0x50, 0x53, 0x3a,
	0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73,
	0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x1a, 0x54, 0x0a, 0x09, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12,
	0x47, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42,
	0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x52,
	0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x1a, 0x0d, 0x0a, 0x0b, 0x45, 0x78, 0x74, 0x72,
	0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x1a, 0x95, 0x02, 0x0a, 0x06, 0x46, 0x6c, 0x61, 0x76,
	0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
	0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x63, 0x70, 0x75,
	0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x63, 0x70, 0x75, 0x73, 0x12, 0x10,
	0x0a, 0x03, 0x72, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x72, 0x61, 0x6d,
	0x12, 0x12, 0x0a, 0x04, 0x64, 0x69, 0x73, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04,
	0x64, 0x69, 0x73, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61,
	0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x65, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72,
	0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x77, 0x61, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x04, 0x73, 0x77, 0x61, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e,
	0x61, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f,
	0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x52, 0x0a, 0x0b, 0x65,
	0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x31, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42,
	0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70,
	0x65, 0x63, 0x73, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x53, 0x70, 0x65, 0x63, 0x73, 0x1a,
	0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03,
	0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x5a,
	0x0a, 0x05, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x41, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73,
	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69,
	0x6e, 0x6b, 0x73, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x1a, 0x2e, 0x0a, 0x06, 0x4c, 0x69,
	0x6e, 0x6b, 0x73, 0x31, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x0a, 0x0a, 0x08, 0x4d, 0x65,
	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x6a, 0x0a, 0x24, 0x4f, 0x73, 0x5f, 0x65, 0x78, 0x74,
	0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x76, 0x6f,
	0x6c, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x12, 0x0e,
	0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x32,
	0x0a, 0x15, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x5f, 0x74, 0x65, 0x72, 0x6d,
	0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x64,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x1a, 0x69, 0x0a, 0x05, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12,
	0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73,
	0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73,
	0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x1a, 0x25, 0x0a,
	0x0f, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x1a, 0xa4, 0x12, 0x0a, 0x07, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73,
	0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x34, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x34,
	0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x36, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x36,
	0x12, 0x4d, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x65, 0x73, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12,
	0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x64, 0x72, 0x69, 0x76, 0x65, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x44, 0x72, 0x69,
	0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x44, 0x0a, 0x06,
	0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x06, 0x66, 0x6c, 0x61, 0x76,
	0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x41, 0x0a, 0x05, 0x69, 0x6d,
	0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73,
	0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x19, 0x0a,
	0x08, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x07, 0x6b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b,
	0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65,
	0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c,
	0x69, 0x6e, 0x6b, 0x73, 0x31, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x4a, 0x0a, 0x08,
	0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49,
	0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08,
	0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x11,
	0x4f, 0x53, 0x5f, 0x44, 0x43, 0x46, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x4f, 0x53, 0x2d, 0x44, 0x43, 0x46, 0x3a,
	0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x1b, 0x4f, 0x53,
	0x5f, 0x45, 0x58, 0x54, 0x5f, 0x41, 0x5a, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69,
	0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x1b, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x41, 0x5a, 0x3a, 0x61, 0x76, 0x61, 0x69, 0x6c,
	0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x12, 0x32, 0x0a, 0x14,
	0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f,
	0x68, 0x6f, 0x73, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x4f, 0x53, 0x2d, 0x45,
	0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x68, 0x6f, 0x73, 0x74,
	0x12, 0x3a, 0x0a, 0x18, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41,
	0x54, 0x54, 0x52, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x18, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41,
	0x54, 0x54, 0x52, 0x3a, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x50, 0x0a, 0x23,
	0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f,
	0x68, 0x79, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x23, 0x4f, 0x53, 0x2d, 0x45, 0x58,
	0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x68, 0x79, 0x70, 0x65, 0x72,
	0x76, 0x69, 0x73, 0x6f, 0x72, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x44,
	0x0a, 0x1d, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54,
	0x52, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1d, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x52,
	0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x19, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53,
	0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x5f, 0x69,
	0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d,
	0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x5f,
	0x69, 0x64, 0x12, 0x42, 0x0a, 0x1c, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56,
	0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f, 0x69, 0x6e, 0x64,
	0x65, 0x78, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1c, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54,
	0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68,
	0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x3e, 0x0a, 0x1a, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54,
	0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x72, 0x61, 0x6d, 0x64, 0x69, 0x73,
	0x6b, 0x5f, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1a, 0x4f, 0x53, 0x2d, 0x45,
	0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x72, 0x61, 0x6d, 0x64,
	0x69, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x12, 0x46, 0x0a, 0x1e, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54,
	0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1e,
	0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a,
	0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x12, 0x4a,
	0x0a, 0x20, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54,
	0x52, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x20, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54,
	0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x64,
	0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x19, 0x4f, 0x53,
	0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x75, 0x73,
	0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19, 0x4f,
	0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x75,
	0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x12, 0x36, 0x0a, 0x16, 0x4f, 0x53, 0x5f, 0x45,
	0x58, 0x54, 0x5f, 0x53, 0x54, 0x53, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61,
	0x74, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54,
	0x2d, 0x53, 0x54, 0x53, 0x3a, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65,
	0x12, 0x34, 0x0a, 0x15, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x54, 0x53, 0x5f, 0x74,
	0x61, 0x73, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x15, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x54, 0x53, 0x3a, 0x74, 0x61, 0x73, 0x6b,
	0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54,
	0x5f, 0x53, 0x54, 0x53, 0x5f, 0x76, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x1c, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x13, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x54, 0x53, 0x3a,
	0x76, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x9e, 0x01, 0x0a, 0x24, 0x6f, 0x73, 0x5f,
	0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73,
	0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65,
	0x64, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65,
	0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4f,
	0x73, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x73, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63,
	0x68, 0x65, 0x64, 0x52, 0x24, 0x6f, 0x73, 0x2d, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64,
	0x2d, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x3a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73,
	0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x12, 0x36, 0x0a, 0x16, 0x4f, 0x53, 0x5f,
	0x53, 0x52, 0x56, 0x5f, 0x55, 0x53, 0x47, 0x5f, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x65, 0x64,
	0x5f, 0x61, 0x74, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x4f, 0x53, 0x2d, 0x53, 0x52,
	0x56, 0x2d, 0x55, 0x53, 0x47, 0x3a, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x61,
	0x74, 0x12, 0x3a, 0x0a, 0x18, 0x4f, 0x53, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x55, 0x53, 0x47, 0x5f,
	0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x1f, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x18, 0x4f, 0x53, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x55, 0x53, 0x47, 0x3a,
	0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x12, 0x16, 0x0a,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x20, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x21, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x22, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07,
	0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x23, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75,
	0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x24,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69,
	0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x61, 0x75, 0x6c,
	0x74, 0x52, 0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67,
	0x72, 0x65, 0x73, 0x73, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67,
	0x72, 0x65, 0x73, 0x73, 0x12, 0x5e, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
	0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x26, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x73, 0x52, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72,
	0x6f, 0x75, 0x70, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x27,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b,
	0x68, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x28, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x29, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x2a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74,
	0x61, 0x67, 0x73, 0x12, 0x3c, 0x0a, 0x1a, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x69,
	0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65,
	0x73, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64,
	0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65,
	0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x73, 0x18, 0x2c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64,
	0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c,
	0x6f, 0x63, 0x6b, 0x65, 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x88, 0x01, 0x0a, 0x0f,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12,
	0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x0d,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x39, 0x0a, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x29, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x22, 0xac, 0x01, 0x0a, 0x06, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a,
	0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x34, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x34, 0x12, 0x1e, 0x0a, 0x0a,
	0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x36, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x36, 0x12, 0x2c, 0x0a, 0x11,
	0x4f, 0x53, 0x5f, 0x44, 0x43, 0x46, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x4f, 0x53, 0x2d, 0x44, 0x43, 0x46, 0x3a,
	0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20,
	0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x22, 0xd8, 0x17, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
	0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x4d, 0x73, 0x67, 0x1a, 0x9b, 0x01, 0x0a, 0x07, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65,
	0x12, 0x38, 0x0a, 0x17, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x49, 0x50, 0x53, 0x5f, 0x4d,
	0x41, 0x43, 0x5f, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x17, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x49, 0x50, 0x53, 0x2d, 0x4d, 0x41,
	0x43, 0x3a, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x12, 0x28, 0x0a, 0x0f, 0x4f, 0x53,
	0x5f, 0x45, 0x58, 0x54, 0x5f, 0x49, 0x50, 0x53, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0f, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x49, 0x50, 0x53, 0x3a,
	0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73,
	0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x1a, 0x4a, 0x0a, 0x09, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12,
	0x3d, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50, 0x72,
	0x69, 0x76, 0x61, 0x74, 0x65, 0x52, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x1a, 0x0d,
	0x0a, 0x0b, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x1a, 0xe5, 0x01,
	0x0a, 0x06, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x69, 0x73, 0x6b,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x64, 0x69, 0x73, 0x6b, 0x12, 0x1c, 0x0a, 0x09,
	0x65, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x09, 0x65, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x48, 0x0a, 0x0b, 0x65, 0x78,
	0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x74,
	0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x53,
	0x70, 0x65, 0x63, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c,
	0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x72, 0x69,
	0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x61, 0x6d,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x72, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x73,
	0x77, 0x61, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x77, 0x61, 0x70, 0x12,
	0x14, 0x0a, 0x05, 0x76, 0x63, 0x70, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05,
	0x76, 0x63, 0x70, 0x75, 0x73, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12,
	0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72,
	0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x72, 0x65, 0x6c, 0x1a, 0x50, 0x0a, 0x05, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x0e, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x37, 0x0a,
	0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x52,
	0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x1a, 0x2e, 0x0a, 0x06, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x31,
	0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x32, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x12, 0x26, 0x0a, 0x0e, 0x4d, 0x79, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f,
	0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x4d, 0x79, 0x20, 0x53,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x25, 0x0a, 0x0f, 0x53, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x12, 0x0a,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x1a, 0xd7, 0x10, 0x0a, 0x06, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x11,
	0x4f, 0x53, 0x5f, 0x44, 0x43, 0x46, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x4f, 0x53, 0x2d, 0x44, 0x43, 0x46, 0x3a,
	0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x1b, 0x4f, 0x53,
	0x5f, 0x45, 0x58, 0x54, 0x5f, 0x41, 0x5a, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69,
	0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x1b, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x41, 0x5a, 0x3a, 0x61, 0x76, 0x61, 0x69, 0x6c,
	0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x12, 0x32, 0x0a, 0x14,
	0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f,
	0x68, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x4f, 0x53, 0x2d, 0x45,
	0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x68, 0x6f, 0x73, 0x74,
	0x12, 0x3a, 0x0a, 0x18, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41,
	0x54, 0x54, 0x52, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x18, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41,
	0x54, 0x54, 0x52, 0x3a, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x50, 0x0a, 0x23,
	0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f,
	0x68, 0x79, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x23, 0x4f, 0x53, 0x2d, 0x45, 0x58,
	0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x68, 0x79, 0x70, 0x65, 0x72,
	0x76, 0x69, 0x73, 0x6f, 0x72, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x44,
	0x0a, 0x1d, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54,
	0x52, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1d, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x52,
	0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x19, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53,
	0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x5f, 0x69,
	0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d,
	0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x5f,
	0x69, 0x64, 0x12, 0x42, 0x0a, 0x1c, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56,
	0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f, 0x69, 0x6e, 0x64,
	0x65, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1c, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54,
	0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68,
	0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x3e, 0x0a, 0x1a, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54,
	0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x72, 0x61, 0x6d, 0x64, 0x69, 0x73,
	0x6b, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1a, 0x4f, 0x53, 0x2d, 0x45,
	0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x72, 0x61, 0x6d, 0x64,
	0x69, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x12, 0x46, 0x0a, 0x1e, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54,
	0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1e,
	0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a,
	0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x12, 0x4a,
	0x0a, 0x20, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54,
	0x52, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x20, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54,
	0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x64,
	0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x19, 0x4f, 0x53,
	0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x75, 0x73,
	0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19, 0x4f,
	0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x75,
	0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x12, 0x36, 0x0a, 0x16, 0x4f, 0x53, 0x5f, 0x45,
	0x58, 0x54, 0x5f, 0x53, 0x54, 0x53, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61,
	0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54,
	0x2d, 0x53, 0x54, 0x53, 0x3a, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65,
	0x12, 0x34, 0x0a, 0x15, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x54, 0x53, 0x5f, 0x74,
	0x61, 0x73, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x15, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x54, 0x53, 0x3a, 0x74, 0x61, 0x73, 0x6b,
	0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54,
	0x5f, 0x53, 0x54, 0x53, 0x5f, 0x76, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0f, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x13, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x54, 0x53, 0x3a,
	0x76, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x36, 0x0a, 0x16, 0x4f, 0x53, 0x5f, 0x53,
	0x52, 0x56, 0x5f, 0x55, 0x53, 0x47, 0x5f, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x65, 0x64, 0x5f,
	0x61, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x4f, 0x53, 0x2d, 0x53, 0x52, 0x56,
	0x2d, 0x55, 0x53, 0x47, 0x3a, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x12, 0x3a, 0x0a, 0x18, 0x4f, 0x53, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x55, 0x53, 0x47, 0x5f, 0x74,
	0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x11, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x18, 0x4f, 0x53, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x55, 0x53, 0x47, 0x3a, 0x74,
	0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x0a,
	0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x34, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x34, 0x12, 0x1e, 0x0a, 0x0a,
	0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x36, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x36, 0x12, 0x43, 0x0a, 0x09,
	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65,
	0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x64, 0x72, 0x69, 0x76,
	0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x44,
	0x72, 0x69, 0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18,
	0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x20,
	0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x17, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x12, 0x3a, 0x0a, 0x06, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x6c,
	0x61, 0x76, 0x6f, 0x72, 0x52, 0x06, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06,
	0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x6f,
	0x73, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x37, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x1c,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x19,
	0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x07, 0x6b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x05, 0x6c, 0x69, 0x6e,
	0x6b, 0x73, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x31, 0x52, 0x05, 0x6c, 0x69,
	0x6e, 0x6b, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x1f, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x06, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6c,
	0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x20, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e,
	0x12, 0x40, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x21, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x22, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x52, 0x0a, 0x24, 0x6f, 0x73, 0x5f, 0x65, 0x78, 0x74,
	0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x76, 0x6f,
	0x6c, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x18, 0x23,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x24, 0x6f, 0x73, 0x2d, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65,
	0x64, 0x2d, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x3a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72,
	0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72,
	0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x54, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x25, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x2b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x0e, 0x73, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x23, 0x0a, 0x0d,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x26, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x27, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67,
	0x73, 0x18, 0x28, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a,
	0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x29, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x1a, 0x74, 0x72,
	0x75, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x65, 0x72, 0x74,
	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18,
	0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x65, 0x72, 0x74,
	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x64, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x2c, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0xe6, 0x01, 0x0a, 0x0e,
	0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b,
	0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x61,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74,
	0x72, 0x79, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74,
	0x61, 0x72, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x39, 0x0a, 0x0b, 0x41, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 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, 0x54, 0x0a, 0x0f, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a,
	0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xe2, 0x01, 0x0a, 0x0d, 0x53,
	0x74, 0x6f, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x06, 0x61, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x52, 0x65, 0x71, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
	0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x6f, 0x70, 0x5f,
	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74,
	0x6f, 0x70, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74,
	0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74,
	0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x39, 0x0a, 0x0b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 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,
	0x53, 0x0a, 0x0e, 0x53, 0x74, 0x6f, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
	0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x4d, 0x73, 0x67, 0x22, 0xa3, 0x01, 0x0a, 0x0f, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x53,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x06, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x71, 0x2e, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x52, 0x06, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x1c, 0x0a, 0x06,
	0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x55, 0x0a, 0x10, 0x52, 0x65,
	0x62, 0x6f, 0x6f, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67,
	0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
	0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73,
	0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73,
	0x67, 0x22, 0xe6, 0x01, 0x0a, 0x0e, 0x50, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49,
	0x64, 0x12, 0x3d, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x50, 0x61,
	0x75, 0x73, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x41, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x61, 0x75, 0x73, 0x65, 0x41, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a,
	0x39, 0x0a, 0x0b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 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, 0x54, 0x0a, 0x0f, 0x50, 0x61,
	0x75, 0x73, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a,
	0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12,
	0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67,
	0x22, 0xe3, 0x06, 0x0a, 0x10, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x49, 0x64, 0x12, 0x3d, 0x0a, 0x07, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71,
	0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x07, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c,
	0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0xed, 0x04,
	0x0a, 0x07, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6d, 0x61,
	0x67, 0x65, 0x52, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61,
	0x67, 0x65, 0x52, 0x65, 0x66, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49,
	0x50, 0x76, 0x34, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73,
	0x73, 0x49, 0x50, 0x76, 0x34, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49,
	0x50, 0x76, 0x36, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73,
	0x73, 0x49, 0x50, 0x76, 0x36, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x50, 0x61,
	0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x50,
	0x61, 0x73, 0x73, 0x12, 0x40, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52,
	0x65, 0x71, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74,
	0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x4f, 0x53, 0x5f,
	0x44, 0x43, 0x46, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x08,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x4f, 0x53, 0x2d, 0x44, 0x43, 0x46, 0x3a, 0x64, 0x69, 0x73,
	0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x49, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f,
	0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,
	0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x69,
	0x74, 0x79, 0x12, 0x2d, 0x0a, 0x12, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x65,
	0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11,
	0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61,
	0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b,
	0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0d, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x74, 0x0a, 0x1a, 0x74,
	0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x65, 0x72,
	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x36, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75,
	0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x74, 0x72, 0x75,
	0x73, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69,
	0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x52, 0x18, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64,
	0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65,
	0x73, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x0a, 0x0a,
	0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x3d, 0x0a, 0x0b, 0x50, 0x65, 0x72,
	0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x1a, 0x0a, 0x08,
	0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x1c, 0x0a, 0x1a, 0x74, 0x72, 0x75, 0x73,
	0x74, 0x65, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66,
	0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x22, 0xb8, 0x1a, 0x0a, 0x11, 0x52, 0x65, 0x62, 0x75, 0x69,
	0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3c, 0x0a, 0x06,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x73, 0x52, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67,
	0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x9b, 0x01,
	0x0a, 0x07, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x38, 0x0a, 0x17, 0x4f, 0x53, 0x5f,
	0x45, 0x58, 0x54, 0x5f, 0x49, 0x50, 0x53, 0x5f, 0x4d, 0x41, 0x43, 0x5f, 0x6d, 0x61, 0x63, 0x5f,
	0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x4f, 0x53, 0x2d, 0x45,
	0x58, 0x54, 0x2d, 0x49, 0x50, 0x53, 0x2d, 0x4d, 0x41, 0x43, 0x3a, 0x6d, 0x61, 0x63, 0x5f, 0x61,
	0x64, 0x64, 0x72, 0x12, 0x28, 0x0a, 0x0f, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x49, 0x50,
	0x53, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x4f, 0x53,
	0x2d, 0x45, 0x58, 0x54, 0x2d, 0x49, 0x50, 0x53, 0x3a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a,
	0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64,
	0x72, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x1a, 0x4b, 0x0a, 0x09, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76,
	0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x52,
	0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x1a, 0x0d, 0x0a, 0x0b, 0x45, 0x78, 0x74, 0x72,
	0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x1a, 0x8c, 0x02, 0x0a, 0x06, 0x46, 0x6c, 0x61, 0x76,
	0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
	0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x63, 0x70, 0x75,
	0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x63, 0x70, 0x75, 0x73, 0x12, 0x10,
	0x0a, 0x03, 0x72, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x72, 0x61, 0x6d,
	0x12, 0x12, 0x0a, 0x04, 0x64, 0x69, 0x73, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04,
	0x64, 0x69, 0x73, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61,
	0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x65, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72,
	0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x77, 0x61, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x04, 0x73, 0x77, 0x61, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e,
	0x61, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f,
	0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x0b, 0x65,
	0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x28, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62,
	0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x45,
	0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72,
	0x61, 0x53, 0x70, 0x65, 0x63, 0x73, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12,
	0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68,
	0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x51, 0x0a, 0x05, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x0e,
	0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x38,
	0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c,
	0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6e, 0x6b,
	0x73, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x1a, 0x2e, 0x0a, 0x06, 0x4c, 0x69, 0x6e, 0x6b,
	0x73, 0x31, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x0a, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61,
	0x64, 0x61, 0x74, 0x61, 0x1a, 0x6a, 0x0a, 0x24, 0x4f, 0x73, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e,
	0x64, 0x65, 0x64, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x76, 0x6f, 0x6c, 0x75,
	0x6d, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x12, 0x0e, 0x0a, 0x02,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x15,
	0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x5f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x64, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x4f, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x1a, 0x69, 0x0a, 0x05, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a,
	0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61,
	0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
	0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x1a, 0x25, 0x0a, 0x0f, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x12,
	0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x1a, 0xdc, 0x11, 0x0a, 0x07, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x1e,
	0x0a, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x34, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x34, 0x12, 0x1e,
	0x0a, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x36, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x50, 0x76, 0x36, 0x12, 0x44,
	0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x26, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65,
	0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x64,
	0x72, 0x69, 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x44, 0x72, 0x69, 0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x12, 0x3b, 0x0a, 0x06, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65,
	0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x06, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x12, 0x16,
	0x0a, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x38, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18,
	0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65,
	0x12, 0x19, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x05, 0x6c,
	0x69, 0x6e, 0x6b, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x31, 0x52,
	0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x41, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52,
	0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a,
	0x11, 0x4f, 0x53, 0x5f, 0x44, 0x43, 0x46, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x4f, 0x53, 0x2d, 0x44, 0x43, 0x46,
	0x3a, 0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x1b, 0x4f,
	0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x41, 0x5a, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
	0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x1b, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x41, 0x5a, 0x3a, 0x61, 0x76, 0x61, 0x69,
	0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x12, 0x32, 0x0a,
	0x14, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52,
	0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x4f, 0x53, 0x2d,
	0x45, 0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x68, 0x6f, 0x73,
	0x74, 0x12, 0x3a, 0x0a, 0x18, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f,
	0x41, 0x54, 0x54, 0x52, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x18, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d,
	0x41, 0x54, 0x54, 0x52, 0x3a, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x50, 0x0a,
	0x23, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52,
	0x5f, 0x68, 0x79, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x5f, 0x68, 0x6f, 0x73, 0x74,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x23, 0x4f, 0x53, 0x2d, 0x45,
	0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x68, 0x79, 0x70, 0x65,
	0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12,
	0x44, 0x0a, 0x1d, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54,
	0x54, 0x52, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1d, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53,
	0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
	0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x19, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f,
	0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x5f,
	0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54,
	0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c,
	0x5f, 0x69, 0x64, 0x12, 0x42, 0x0a, 0x1c, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52,
	0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1c, 0x4f, 0x53, 0x2d, 0x45, 0x58,
	0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x6c, 0x61, 0x75, 0x6e, 0x63,
	0x68, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x3e, 0x0a, 0x1a, 0x4f, 0x53, 0x5f, 0x45, 0x58,
	0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x72, 0x61, 0x6d, 0x64, 0x69,
	0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1a, 0x4f, 0x53, 0x2d,
	0x45, 0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x72, 0x61, 0x6d,
	0x64, 0x69, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x12, 0x46, 0x0a, 0x1e, 0x4f, 0x53, 0x5f, 0x45, 0x58,
	0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72,
	0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x1e, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52,
	0x3a, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x12,
	0x4a, 0x0a, 0x20, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54,
	0x54, 0x52, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x20, 0x4f, 0x53, 0x2d, 0x45, 0x58,
	0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a, 0x72, 0x6f, 0x6f, 0x74, 0x5f,
	0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x19, 0x4f,
	0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x75,
	0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19,
	0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x41, 0x54, 0x54, 0x52, 0x3a,
	0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x12, 0x36, 0x0a, 0x16, 0x4f, 0x53, 0x5f,
	0x45, 0x58, 0x54, 0x5f, 0x53, 0x54, 0x53, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74,
	0x61, 0x74, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x4f, 0x53, 0x2d, 0x45, 0x58,
	0x54, 0x2d, 0x53, 0x54, 0x53, 0x3a, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74,
	0x65, 0x12, 0x34, 0x0a, 0x15, 0x4f, 0x53, 0x5f, 0x45, 0x58, 0x54, 0x5f, 0x53, 0x54, 0x53, 0x5f,
	0x74, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x15, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x54, 0x53, 0x3a, 0x74, 0x61, 0x73,
	0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x4f, 0x53, 0x5f, 0x45, 0x58,
	0x54, 0x5f, 0x53, 0x54, 0x53, 0x5f, 0x76, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x1c,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x4f, 0x53, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x53, 0x54, 0x53,
	0x3a, 0x76, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x95, 0x01, 0x0a, 0x24, 0x6f, 0x73,
	0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x73, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68,
	0x65, 0x64, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4f, 0x73, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64,
	0x65, 0x64, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x24, 0x6f, 0x73, 0x2d,
	0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x2d, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73,
	0x3a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65,
	0x64, 0x12, 0x36, 0x0a, 0x16, 0x4f, 0x53, 0x5f, 0x53, 0x52, 0x56, 0x5f, 0x55, 0x53, 0x47, 0x5f,
	0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x1e, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x16, 0x4f, 0x53, 0x2d, 0x53, 0x52, 0x56, 0x2d, 0x55, 0x53, 0x47, 0x3a, 0x6c, 0x61,
	0x75, 0x6e, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x18, 0x4f, 0x53, 0x5f,
	0x53, 0x52, 0x56, 0x5f, 0x55, 0x53, 0x47, 0x5f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x4f, 0x53, 0x2d,
	0x53, 0x52, 0x56, 0x2d, 0x55, 0x53, 0x47, 0x3a, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x61, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
	0x20, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a,
	0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x21, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x22, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
	0x23, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x38, 0x0a,
	0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x61, 0x75, 0x6c, 0x74,
	0x52, 0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72,
	0x65, 0x73, 0x73, 0x12, 0x55, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f,
	0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x26, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x0e, 0x73, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x6f,
	0x63, 0x6b, 0x65, 0x64, 0x18, 0x27, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6c, 0x6f, 0x63, 0x6b,
	0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x18, 0x28, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x29, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x2a, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x3c, 0x0a, 0x1a, 0x74, 0x72, 0x75,
	0x73, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69,
	0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x74,
	0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x65, 0x72, 0x74, 0x69,
	0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x2c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x23, 0x0a, 0x0d,
	0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x2d, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f,
	0x6e, 0x22, 0xdb, 0x01, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x49, 0x64, 0x12, 0x39, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52,
	0x65, 0x73, 0x69, 0x7a, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x52,
	0x65, 0x73, 0x69, 0x7a, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1a, 0x0a,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x54, 0x0a, 0x06, 0x52, 0x65, 0x73,
	0x69, 0x7a, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65, 0x66,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65,
	0x66, 0x12, 0x2c, 0x0a, 0x11, 0x4f, 0x53, 0x5f, 0x44, 0x43, 0x46, 0x5f, 0x64, 0x69, 0x73, 0x6b,
	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x4f, 0x53,
	0x2d, 0x44, 0x43, 0x46, 0x3a, 0x64, 0x69, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22,
	0x55, 0x0a, 0x10, 0x52, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xb5, 0x03, 0x0a, 0x10, 0x4d, 0x69, 0x67, 0x72, 0x61,
	0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72,
	0x79, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x69, 0x67,
	0x72, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0d, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x12, 0x3d, 0x0a, 0x07, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4d, 0x69,
	0x67, 0x72, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x4d,
	0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x52, 0x07, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x12,
	0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x39, 0x0a, 0x0b, 0x41,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 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, 0x85, 0x01, 0x0a, 0x07, 0x4d, 0x69, 0x67, 0x72, 0x61,
	0x74, 0x65, 0x12, 0x41, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4d, 0x69, 0x67,
	0x72, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x4d, 0x69,
	0x67, 0x72, 0x61, 0x74, 0x65, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
	0x04, 0x68, 0x6f, 0x73, 0x74, 0x1a, 0x37, 0x0a, 0x09, 0x48, 0x6f, 0x73, 0x74, 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, 0x56,
	0x0a, 0x11, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xed, 0x01, 0x0a, 0x1f, 0x43, 0x68, 0x61, 0x6e, 0x67,
	0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x50,
	0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x61, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6e, 0x67,
	0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x39, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x68, 0x61, 0x6e,
	0x67, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65,
	0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x2e, 0x43, 0x68, 0x61, 0x6e,
	0x67, 0x65, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x0e, 0x63, 0x68, 0x61, 0x6e,
	0x67, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x2e, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
	0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x6d, 0x69,
	0x6e, 0x50, 0x61, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x6d,
	0x69, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x22, 0x65, 0x0a, 0x20, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
	0x41, 0x64, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x50, 0x61,
	0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67,
	0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xd7, 0x01,
	0x0a, 0x0f, 0x52, 0x65, 0x73, 0x63, 0x75, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x39,
	0x0a, 0x06, 0x72, 0x65, 0x73, 0x63, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x73, 0x63, 0x75,
	0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x52, 0x65, 0x73, 0x63, 0x75,
	0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x63, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x50, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x63, 0x75, 0x65, 0x12,
	0x1c, 0x0a, 0x09, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x12, 0x28, 0x0a,
	0x10, 0x72, 0x65, 0x73, 0x63, 0x75, 0x65, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65,
	0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x63, 0x75, 0x65, 0x49,
	0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x66, 0x22, 0x73, 0x0a, 0x10, 0x52, 0x65, 0x73, 0x63, 0x75,
	0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x61,
	0x64, 0x6d, 0x69, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x61, 0x64, 0x6d, 0x69, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a,
	0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12,
	0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xf2, 0x01, 0x0a,
	0x11, 0x55, 0x6e, 0x52, 0x65, 0x73, 0x63, 0x75, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52,
	0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12,
	0x40, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x28, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x6e, 0x52, 0x65,
	0x73, 0x63, 0x75, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x41, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x55, 0x6e, 0x52, 0x65, 0x73, 0x63, 0x75, 0x65, 0x5f, 0x61, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x55, 0x6e, 0x52, 0x65,
	0x73, 0x63, 0x75, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x39, 0x0a, 0x0b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	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, 0x57, 0x0a, 0x12, 0x55, 0x6e, 0x52, 0x65, 0x73, 0x63, 0x75, 0x65, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a,
	0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xee, 0x01, 0x0a, 0x10, 0x55,
	0x6e, 0x70, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12,
	0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x06,
	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x6e, 0x70, 0x61, 0x75, 0x73, 0x65,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a,
	0x0e, 0x75, 0x6e, 0x70, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x75, 0x6e, 0x70, 0x61, 0x75, 0x73, 0x65, 0x41, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
	0x1a, 0x39, 0x0a, 0x0b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 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, 0x56, 0x0a, 0x11, 0x55,
	0x6e, 0x70, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
	0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f,
	0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x4d, 0x73, 0x67, 0x22, 0xea, 0x01, 0x0a, 0x0f, 0x53, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x53, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x49, 0x64, 0x12, 0x3e, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x53, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71,
	0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x61, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x5f, 0x61,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x68, 0x65,
	0x6c, 0x76, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x39, 0x0a, 0x0b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 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, 0x55, 0x0a, 0x10, 0x53, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xf2, 0x01, 0x0a, 0x11, 0x55, 0x6e, 0x73, 0x68,
	0x65, 0x6c, 0x76, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a,
	0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x06, 0x61, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x6e, 0x73, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x53,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45,
	0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f,
	0x75, 0x6e, 0x73, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x75, 0x6e, 0x73, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x41,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x1a, 0x39, 0x0a, 0x0b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 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, 0x57, 0x0a, 0x12,
	0x55, 0x6e, 0x73, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xee, 0x01, 0x0a, 0x10, 0x53, 0x75, 0x73, 0x70, 0x65, 0x6e,
	0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x53, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x52, 0x65, 0x71, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79,
	0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x75, 0x73, 0x70,
	0x65, 0x6e, 0x64, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0d, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x39, 0x0a, 0x0b, 0x41,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 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, 0x56, 0x0a, 0x11, 0x53, 0x75, 0x73, 0x70, 0x65, 0x6e,
	0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12,
	0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73,
	0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xe3,
	0x01, 0x0a, 0x1b, 0x41, 0x64, 0x64, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72,
	0x6f, 0x75, 0x70, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b,
	0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x63, 0x0a, 0x10, 0x61,
	0x64, 0x64, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x41, 0x64, 0x64, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f,
	0x75, 0x70, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x41, 0x64,
	0x64, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x10,
	0x61, 0x64, 0x64, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x26, 0x0a, 0x10,
	0x41, 0x64, 0x64, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x22, 0x61, 0x0a, 0x1c, 0x41, 0x64, 0x64, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xe5, 0x01, 0x0a, 0x16, 0x72, 0x65, 0x6d, 0x6f,
	0x76, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52,
	0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12,
	0x67, 0x0a, 0x13, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x2e,
	0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72,
	0x6f, 0x75, 0x70, 0x52, 0x13, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74,
	0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74,
	0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x29, 0x0a, 0x13, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22,
	0x5c, 0x0a, 0x17, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67,
	0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xe5, 0x01,
	0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x73, 0x44, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x6b,
	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x72, 0x74, 0x4b, 0x65,
	0x79, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x12, 0x14, 0x0a, 0x05,
	0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d,
	0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x69,
	0x6e, 0x44, 0x69, 0x73, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x69, 0x6e,
	0x44, 0x69, 0x73, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x69, 0x6e, 0x52, 0x61, 0x6d, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6d, 0x69, 0x6e, 0x52, 0x61, 0x6d, 0x12, 0x1b, 0x0a, 0x09,
	0x69, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x69, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xa7, 0x06, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c,
	0x61, 0x76, 0x6f, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x41, 0x0a, 0x07, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x07, 0x66, 0x6c, 0x61, 0x76, 0x6f,
	0x72, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0xc9, 0x04, 0x0a, 0x06, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x69, 0x73, 0x6b, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x69, 0x73, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x70,
	0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x65,
	0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x4d, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x72,
	0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c,
	0x61, 0x76, 0x6f, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x52, 0x0a, 0x65, 0x78, 0x74,
	0x72, 0x61, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 0x72, 0x69, 0x67, 0x69,
	0x6e, 0x61, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
	0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03,
	0x72, 0x61, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x72, 0x61, 0x6d, 0x12, 0x12,
	0x0a, 0x04, 0x73, 0x77, 0x61, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x77,
	0x61, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x63, 0x70, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x05, 0x76, 0x63, 0x70, 0x75, 0x73, 0x12, 0x3c, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b,
	0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x73, 0x44,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x52,
	0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x3c, 0x0a, 0x19, 0x4f, 0x53, 0x5f, 0x46, 0x4c, 0x56,
	0x5f, 0x45, 0x58, 0x54, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x65, 0x70, 0x68, 0x65, 0x6d, 0x65,
	0x72, 0x61, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19, 0x4f, 0x53, 0x2d, 0x46, 0x4c,
	0x56, 0x2d, 0x45, 0x58, 0x54, 0x2d, 0x44, 0x41, 0x54, 0x41, 0x3a, 0x65, 0x70, 0x68, 0x65, 0x6d,
	0x65, 0x72, 0x61, 0x6c, 0x12, 0x3a, 0x0a, 0x18, 0x4f, 0x53, 0x5f, 0x46, 0x4c, 0x56, 0x5f, 0x44,
	0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64,
	0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x4f, 0x53, 0x2d, 0x46, 0x4c, 0x56, 0x2d, 0x44,
	0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x3a, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64,
	0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x78, 0x74, 0x78, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18,
	0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x72, 0x78, 0x74, 0x78, 0x46, 0x61, 0x63, 0x74, 0x6f,
	0x72, 0x12, 0x3e, 0x0a, 0x1a, 0x6f, 0x73, 0x5f, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x5f, 0x61,
	0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18,
	0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x6f, 0x73, 0x2d, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72,
	0x2d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x3a, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69,
	0x63, 0x1a, 0x0d, 0x0a, 0x0b, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73,
	0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65,
	0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a,
	0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x22,
	0x96, 0x02, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72,
	0x52, 0x65, 0x71, 0x12, 0x39, 0x0a, 0x06, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x2e,
	0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x06, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x12, 0x1a,
	0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0xab, 0x01, 0x0a, 0x06, 0x46,
	0x6c, 0x61, 0x76, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x61, 0x6d,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x72, 0x61, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x76,
	0x63, 0x70, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x63, 0x70, 0x75,
	0x73, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x69, 0x73, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x04, 0x64, 0x69, 0x73, 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x78, 0x74, 0x78, 0x5f, 0x66, 0x61,
	0x63, 0x74, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x72, 0x78, 0x74, 0x78,
	0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xce, 0x05, 0x0a, 0x10, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3a, 0x0a,
	0x06, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x6c, 0x61, 0x76, 0x6f,
	0x72, 0x52, 0x06, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a,
	0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12,
	0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x2d, 0x0a, 0x05,
	0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x0d, 0x0a, 0x0b, 0x45,
	0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x1a, 0xfc, 0x03, 0x0a, 0x06, 0x46,
	0x6c, 0x61, 0x76, 0x6f, 0x72, 0x12, 0x3a, 0x0a, 0x18, 0x4f, 0x53, 0x5f, 0x46, 0x4c, 0x56, 0x5f,
	0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x4f, 0x53, 0x2d, 0x46, 0x4c, 0x56, 0x2d,
	0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x3a, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65,
	0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x69, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x04, 0x64, 0x69, 0x73, 0x6b, 0x12, 0x3c, 0x0a, 0x19, 0x4f, 0x53, 0x5f, 0x46, 0x4c, 0x56, 0x5f,
	0x45, 0x58, 0x54, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x65, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72,
	0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x4f, 0x53, 0x2d, 0x46, 0x4c, 0x56,
	0x2d, 0x45, 0x58, 0x54, 0x2d, 0x44, 0x41, 0x54, 0x41, 0x3a, 0x65, 0x70, 0x68, 0x65, 0x6d, 0x65,
	0x72, 0x61, 0x6c, 0x12, 0x3e, 0x0a, 0x1a, 0x6f, 0x73, 0x5f, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72,
	0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69,
	0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x6f, 0x73, 0x2d, 0x66, 0x6c, 0x61, 0x76,
	0x6f, 0x72, 0x2d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x3a, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x62,
	0x6c, 0x69, 0x63, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x37, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x06, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x12, 0x10, 0x0a, 0x03, 0x72, 0x61, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x72,
	0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x77, 0x61, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x04, 0x73, 0x77, 0x61, 0x70, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x78, 0x74, 0x78, 0x5f, 0x66,
	0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x72, 0x78, 0x74,
	0x78, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x63, 0x70, 0x75, 0x73,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x63, 0x70, 0x75, 0x73, 0x12, 0x20, 0x0a,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x48, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x0d,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x52, 0x0a, 0x65,
	0x78, 0x74, 0x72, 0x61, 0x53, 0x70, 0x65, 0x63, 0x73, 0x22, 0x67, 0x0a, 0x0f, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x6c, 0x61,
	0x76, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6c,
	0x61, 0x76, 0x6f, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
	0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
	0x72, 0x6d, 0x22, 0x55, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76,
	0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73,
	0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x52, 0x0a, 0x15, 0x53, 0x68, 0x6f,
	0x77, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52,
	0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49,
	0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xd9, 0x06,
	0x0a, 0x07, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d,
	0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12,
	0x36, 0x0a, 0x17, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f,
	0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09,
	0x52, 0x15, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f,
	0x6e, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x76, 0x61, 0x69, 0x6c,
	0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x73, 0x18, 0x03, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
	0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d,
	0x61, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f,
	0x6d, 0x61, 0x69, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x70, 0x76, 0x34, 0x5f, 0x61, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x10, 0x69, 0x70, 0x76, 0x34, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x63, 0x6f,
	0x70, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x70, 0x76, 0x36, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x5f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10,
	0x69, 0x70, 0x76, 0x36, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x63, 0x6f, 0x70, 0x65,
	0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x32, 0x5f, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x63, 0x79,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6c, 0x32, 0x41, 0x64, 0x6a, 0x61, 0x63, 0x65,
	0x6e, 0x63, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x74, 0x75, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x03, 0x6d, 0x74, 0x75, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x6f, 0x72,
	0x74, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a,
	0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d,
	0x71, 0x6f, 0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x6f, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64,
	0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d,
	0x62, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x0f, 0x72, 0x6f, 0x75,
	0x74, 0x65, 0x72, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x18, 0x10, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x0f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x11, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x73, 0x18, 0x13,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x73, 0x12, 0x12, 0x0a,
	0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67,
	0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x15,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d,
	0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x16, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x29, 0x0a,
	0x10, 0x76, 0x6c, 0x61, 0x6e, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e,
	0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x76, 0x6c, 0x61, 0x6e, 0x54, 0x72, 0x61,
	0x6e, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73,
	0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
	0x69, 0x73, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x22, 0x89, 0x01, 0x0a, 0x16, 0x53, 0x68,
	0x6f, 0x77, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x20, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x21, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x7b, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x07, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
	0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
	0x72, 0x6d, 0x22, 0x84, 0x01, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x07, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x1e, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65,
	0x18, 0x1f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x20, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x4d, 0x0a, 0x10, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a,
	0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x56, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a,
	0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12,
	0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67,
	0x22, 0x2d, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73,
	0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22,
	0x85, 0x01, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x2e, 0x0a, 0x08, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x5c, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x2c, 0x0a, 0x07, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x84, 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x07, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64,
	0x65, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a,
	0x03, 0x6d, 0x73, 0x67, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12,
	0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x20, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x58, 0x0a, 0x0f,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x71, 0x12,
	0x29, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x11, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x75, 0x62, 0x6e,
	0x65, 0x74, 0x52, 0x06, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x84, 0x01, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2d, 0x0a, 0x06, 0x73,
	0x75, 0x62, 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65,
	0x73, 0x70, 0x52, 0x06, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67,
	0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xc0, 0x02,
	0x0a, 0x06, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63,
	0x69, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x69, 0x64, 0x72, 0x12,
	0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d,
	0x0a, 0x0a, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x70, 0x12, 0x1f, 0x0a,
	0x0b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x0a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x68, 0x63, 0x70, 0x12, 0x46,
	0x0a, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6f,
	0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
	0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x52, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61,
	0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x0e, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12,
	0x1f, 0x0a, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x09,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73,
	0x22, 0x95, 0x06, 0x0a, 0x0a, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x63, 0x69, 0x64, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x76, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x70, 0x56,
	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x5f, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x49, 0x70, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f,
	0x64, 0x68, 0x63, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x6e, 0x61, 0x62,
	0x6c, 0x65, 0x44, 0x68, 0x63, 0x70, 0x12, 0x46, 0x0a, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x41, 0x6c, 0x6c,
	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x52, 0x0f, 0x61,
	0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x27,
	0x0a, 0x0f, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x5f,
	0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f,
	0x73, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x49, 0x64, 0x12, 0x2f, 0x0a, 0x14, 0x64, 0x6e, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73,
	0x68, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x11, 0x64, 0x6e, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x46, 0x69, 0x78, 0x65,
	0x64, 0x49, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
	0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x70, 0x76, 0x36, 0x5f, 0x61, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0f, 0x69, 0x70, 0x76, 0x36, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x6f, 0x64, 0x65,
	0x12, 0x20, 0x0a, 0x0c, 0x69, 0x70, 0x76, 0x36, 0x5f, 0x72, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65,
	0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x70, 0x76, 0x36, 0x52, 0x61, 0x4d, 0x6f,
	0x64, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e,
	0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x14, 0x20, 0x03,
	0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73,
	0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x69,
	0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x70,
	0x6f, 0x6f, 0x6c, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x16, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x3a, 0x0a, 0x10, 0x41, 0x6c, 0x6c, 0x6f,
	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x14, 0x0a, 0x05,
	0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61,
	0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x65, 0x6e, 0x64, 0x22, 0x63, 0x0a, 0x15, 0x42, 0x75, 0x6c, 0x6b, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x12, 0x2e, 0x0a,
	0x08, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x12, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x1a, 0x0a,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x8b, 0x09, 0x0a, 0x16, 0x42, 0x75,
	0x6c, 0x6b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x2e, 0x0a, 0x08, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74,
	0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64,
	0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12, 0x36, 0x0a, 0x17, 0x61, 0x76,
	0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x5f,
	0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x15, 0x61, 0x76, 0x61,
	0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x48, 0x69, 0x6e,
	0x74, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69,
	0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11,
	0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65,
	0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
	0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12,
	0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12,
	0x2c, 0x0a, 0x12, 0x69, 0x70, 0x76, 0x34, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f,
	0x73, 0x63, 0x6f, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x69, 0x70, 0x76,
	0x34, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x2c, 0x0a,
	0x12, 0x69, 0x70, 0x76, 0x36, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x63,
	0x6f, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x69, 0x70, 0x76, 0x36, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6c,
	0x32, 0x5f, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x0b, 0x6c, 0x32, 0x41, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x74, 0x75, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6d, 0x74, 0x75,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0d, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x13, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72,
	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x15, 0x70, 0x72, 0x6f, 0x76, 0x69,
	0x64, 0x65, 0x72, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
	0x3a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x3c, 0x0a,
	0x19, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63,
	0x61, 0x6c, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x19, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x3a, 0x70, 0x68, 0x79, 0x73, 0x69,
	0x63, 0x61, 0x6c, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x3a, 0x0a, 0x18, 0x70,
	0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x03, 0x52, 0x18, 0x70,
	0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x3a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x6f, 0x73, 0x5f, 0x70,
	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
	0x71, 0x6f, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72,
	0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x13,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75,
	0x6d, 0x62, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x0f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x65,
	0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x72,
	0x6f, 0x75, 0x74, 0x65, 0x72, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
	0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18,
	0x0a, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x73, 0x18, 0x18, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x07, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e,
	0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x5f, 0x61, 0x74, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x41, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x76, 0x6c, 0x61, 0x6e, 0x5f, 0x74, 0x72, 0x61,
	0x6e, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f,
	0x76, 0x6c, 0x61, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12,
	0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x1c,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18,
	0x1d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
	0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04,
	0x74, 0x61, 0x67, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x1f, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18,
	0x20, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x21, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x5a, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x53,
	0x75, 0x62, 0x6e, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d,
	0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12,
	0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
	0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66,
	0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66,
	0x6f, 0x72, 0x6d, 0x22, 0xf3, 0x07, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x6e,
	0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3c, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x65,
	0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x73, 0x52, 0x07, 0x73, 0x75,
	0x62, 0x6e, 0x65, 0x74, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x3a, 0x0a, 0x10, 0x41, 0x6c, 0x6c, 0x6f,
	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x14, 0x0a, 0x05,
	0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61,
	0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x65, 0x6e, 0x64, 0x1a, 0xa2, 0x06, 0x0a, 0x07, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x73,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64,
	0x68, 0x63, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x6e, 0x61, 0x62, 0x6c,
	0x65, 0x44, 0x68, 0x63, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e,
	0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
	0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12,
	0x27, 0x0a, 0x0f, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d,
	0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x64, 0x6e, 0x73, 0x5f,
	0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x64, 0x6e, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69,
	0x73, 0x68, 0x46, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x12, 0x56, 0x0a, 0x10, 0x61, 0x6c, 0x6c,
	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x09, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x73,
	0x52, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6f, 0x6c,
	0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73,
	0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x52, 0x6f, 0x75, 0x74,
	0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
	0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x70, 0x18,
	0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x70,
	0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x64, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x63, 0x69, 0x64, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
	0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x70, 0x76, 0x36, 0x5f, 0x61, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0f, 0x69, 0x70, 0x76, 0x36, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x6f, 0x64,
	0x65, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x70, 0x76, 0x36, 0x5f, 0x72, 0x61, 0x5f, 0x6d, 0x6f, 0x64,
	0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x70, 0x76, 0x36, 0x52, 0x61, 0x4d,
	0x6f, 0x64, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
	0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65,
	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x14, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65,
	0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x70, 0x6f, 0x6f, 0x6c, 0x5f,
	0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74,
	0x70, 0x6f, 0x6f, 0x6c, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x16,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x4a, 0x0a, 0x0f, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09,
	0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x55, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53,
	0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12,
	0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x4a, 0x0a, 0x0f,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x71, 0x12,
	0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xff, 0x06, 0x0a, 0x10, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3a, 0x0a,
	0x06, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x75, 0x62, 0x6e, 0x65,
	0x74, 0x52, 0x06, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12,
	0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x3a, 0x0a, 0x10,
	0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x73,
	0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x1a, 0xaf, 0x05, 0x0a, 0x06, 0x53, 0x75, 0x62,
	0x6e, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x61, 0x62, 0x6c,
	0x65, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x6e,
	0x61, 0x62, 0x6c, 0x65, 0x44, 0x68, 0x63, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72,
	0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12,
	0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1b,
	0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x64, 0x6e,
	0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x0e, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x64, 0x6e, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69,
	0x73, 0x68, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x11, 0x64, 0x6e, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x46, 0x69, 0x78,
	0x65, 0x64, 0x49, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f,
	0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x57, 0x0a, 0x10, 0x61, 0x6c, 0x6c,
	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x0c, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6f, 0x6c,
	0x73, 0x52, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6f,
	0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65,
	0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x52, 0x6f, 0x75,
	0x74, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
	0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x70,
	0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49,
	0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x64, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x63, 0x69, 0x64, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x5f, 0x61, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x41, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x14,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0xb6, 0x03, 0x0a, 0x1c, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d,
	0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x71, 0x0a, 0x15, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72,
	0x61, 0x6e, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65,
	0x52, 0x65, 0x71, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d,
	0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x13, 0x6e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1a,
	0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x86, 0x02, 0x0a, 0x15, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72,
	0x61, 0x6e, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68,
	0x61, 0x72, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72,
	0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49,
	0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c,
	0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f,
	0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12,
	0x18, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x78,
	0x69, 0x6d, 0x75, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x61, 0x78, 0x69,
	0x6d, 0x75, 0x6d, 0x22, 0x8a, 0x06, 0x0a, 0x1d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x72, 0x0a, 0x15, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65,
	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72,
	0x61, 0x6e, 0x67, 0x65, 0x52, 0x13, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12,
	0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x06, 0x0a, 0x04,
	0x55, 0x73, 0x65, 0x64, 0x1a, 0xa9, 0x04, 0x0a, 0x15, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x0e,
	0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12,
	0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
	0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e,
	0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
	0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61,
	0x6c, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0f, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x12, 0x18, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61,
	0x78, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x61, 0x78,
	0x69, 0x6d, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
	0x65, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
	0x6c, 0x65, 0x12, 0x41, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e,
	0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x55, 0x73, 0x65, 0x64, 0x52,
	0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
	0x5f, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f,
	0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x64, 0x41, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
	0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65,
	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04,
	0x74, 0x61, 0x67, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73,
	0x22, 0x67, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x12,
	0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
	0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x8b, 0x06, 0x0a, 0x1c, 0x4c, 0x69,
	0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
	0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x74, 0x0a, 0x16, 0x6e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61,
	0x6e, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d,
	0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x14, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73,
	0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d,
	0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f,
	0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x4d, 0x73, 0x67, 0x1a, 0x06, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x64, 0x1a, 0xa9, 0x04, 0x0a, 0x16,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
	0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07,
	0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64,
	0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x1b,
	0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a,
	0x10, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61,
	0x6c, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x69,
	0x6d, 0x75, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d,
	0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09,
	0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0d, 0x52,
	0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x40, 0x0a, 0x04, 0x75, 0x73,
	0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x55, 0x73, 0x65, 0x64, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65,
	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x10, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d,
	0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0x74, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52,
	0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x12, 0x37, 0x0a, 0x18, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67,
	0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x49,
	0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x63, 0x0a,
	0x1e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65,
	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73,
	0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
	0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d,
	0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d,
	0x73, 0x67, 0x22, 0xa0, 0x06, 0x0a, 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65,
	0x73, 0x52, 0x65, 0x71, 0x12, 0x37, 0x0a, 0x18, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f,
	0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x12, 0x75, 0x0a,
	0x16, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
	0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61,
	0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f,
	0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x14,
	0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61,
	0x6e, 0x67, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
	0x1a, 0xaa, 0x04, 0x0a, 0x16, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
	0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73,
	0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61,
	0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
	0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12,
	0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79,
	0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x68,
	0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x18, 0x0a,
	0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07,
	0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x78, 0x69, 0x6d,
	0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75,
	0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0c,
	0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12,
	0x41, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61,
	0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x2e, 0x55, 0x73, 0x65, 0x64, 0x52, 0x04, 0x75, 0x73,
	0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41,
	0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
	0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d,
	0x62, 0x65, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67,
	0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x06, 0x0a,
	0x04, 0x55, 0x73, 0x65, 0x64, 0x22, 0x8d, 0x06, 0x0a, 0x1e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61,
	0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x73, 0x0a, 0x15, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x13, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x10, 0x0a,
	0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12,
	0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67,
	0x1a, 0x06, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x64, 0x1a, 0xaa, 0x04, 0x0a, 0x15, 0x4e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e,
	0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
	0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61,
	0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75,
	0x6c, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65,
	0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74,
	0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65,
	0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x68, 0x79,
	0x73, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x4e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x18,
	0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x18,
	0x0a, 0x07, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x07, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x69,
	0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x76, 0x61,
	0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x42, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64, 0x18, 0x0d,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65,
	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x55, 0x73, 0x65, 0x64, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69,
	0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65,
	0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0x78, 0x0a, 0x21, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65,
	0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x12, 0x37, 0x0a, 0x18, 0x6e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61,
	0x6e, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x6e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67,
	0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22,
	0x99, 0x06, 0x0a, 0x22, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69,
	0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x77, 0x0a, 0x15, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x13, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12,
	0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73,
	0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52,
	0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d,
	0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d,
	0x73, 0x67, 0x1a, 0x06, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x64, 0x1a, 0xae, 0x04, 0x0a, 0x15, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72,
	0x61, 0x6e, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65,
	0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x66,
	0x61, 0x75, 0x6c, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09,
	0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
	0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70,
	0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18,
	0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75,
	0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d,
	0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x07, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x76,
	0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x61,
	0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x46, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64,
	0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65,
	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x55, 0x73, 0x65, 0x64, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64,
	0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0e,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12,
	0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x27,
	0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65,
	0x72, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18,
	0x11, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0xfb, 0x04, 0x0a, 0x0d,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x12, 0x31, 0x0a,
	0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f,
	0x72, 0x74, 0x52, 0x65, 0x71, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x57, 0x0a, 0x15,
	0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f,
	0x70, 0x61, 0x69, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x41, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x1a, 0xc1, 0x03, 0x0a, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x24,
	0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61,
	0x74, 0x65, 0x55, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61,
	0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d,
	0x61, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12,
	0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49,
	0x64, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x6f, 0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f,
	0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x6f, 0x73, 0x50, 0x6f, 0x6c,
	0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x62, 0x0a, 0x15, 0x61, 0x6c, 0x6c,
	0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x61, 0x69,
	0x72, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52,
	0x65, 0x71, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65,
	0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x69, 0x72, 0x73, 0x12, 0x36, 0x0a,
	0x17, 0x70, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x6c, 0x69, 0x6e,
	0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15,
	0x70, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74, 0x65, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72,
	0x65, 0x5f, 0x6f, 0x66, 0x66, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x4f, 0x66,
	0x66, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0xae, 0x0d, 0x0a, 0x0e, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x32, 0x0a, 0x04,
	0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72,
	0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74,
	0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d,
	0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f,
	0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x4d, 0x73, 0x67, 0x1a, 0x57, 0x0a, 0x15, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a,
	0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d,
	0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0a, 0x6d, 0x61, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x1a, 0x5f, 0x0a, 0x0e,
	0x44, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a,
	0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70,
	0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x71, 0x64,
	0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x71, 0x64, 0x6e, 0x1a, 0x68, 0x0a,
	0x0f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73,
	0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a,
	0x0a, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x09, 0x69, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08,
	0x6f, 0x70, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
	0x6f, 0x70, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x47, 0x0a, 0x09, 0x46, 0x69, 0x78, 0x65, 0x64,
	0x5f, 0x69, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64,
	0x1a, 0xb7, 0x09, 0x0a, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d,
	0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12,
	0x63, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65,
	0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x52,
	0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x50,
	0x61, 0x69, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
	0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x41, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x61, 0x6e,
	0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f,
	0x64, 0x61, 0x74, 0x61, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
	0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x21,
	0x0a, 0x0c, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x77, 0x6e, 0x65,
	0x72, 0x12, 0x4f, 0x0a, 0x0e, 0x64, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d,
	0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x44, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d,
	0x65, 0x6e, 0x74, 0x52, 0x0d, 0x64, 0x6e, 0x73, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65,
	0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69,
	0x6e, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x0f,
	0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x18,
	0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73,
	0x52, 0x0d, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x68, 0x63, 0x70, 0x4f, 0x70, 0x74, 0x73, 0x12,
	0x40, 0x0a, 0x09, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x0c, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x69,
	0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x52, 0x08, 0x66, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70,
	0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
	0x64, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x70, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x70, 0x41, 0x6c, 0x6c, 0x6f,
	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x63,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x6f,
	0x72, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62,
	0x6c, 0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x70, 0x6f, 0x72, 0x74, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d,
	0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a,
	0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
	0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
	0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x15, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18,
	0x17, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74,
	0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x31, 0x0a, 0x15, 0x71, 0x6f, 0x73, 0x5f, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64,
	0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x71, 0x6f, 0x73, 0x4e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x6f,
	0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0b, 0x71, 0x6f, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x36,
	0x0a, 0x17, 0x70, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x6c, 0x69,
	0x6e, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x15, 0x70, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74, 0x65, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b,
	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61,
	0x72, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x4f,
	0x66, 0x66, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x58, 0x0a, 0x0c, 0x4c, 0x69,
	0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69,
	0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74,
	0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74,
	0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74,
	0x66, 0x6f, 0x72, 0x6d, 0x22, 0xf5, 0x0c, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x72,
	0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x34, 0x0a, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x10, 0x0a, 0x03,
	0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12,
	0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a,
	0x5f, 0x0a, 0x0e, 0x44, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e,
	0x74, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a,
	0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04,
	0x66, 0x71, 0x64, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x71, 0x64, 0x6e,
	0x1a, 0x68, 0x0a, 0x0f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f,
	0x70, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65,
	0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
	0x19, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x47, 0x0a, 0x09, 0x46, 0x69,
	0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74,
	0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65,
	0x74, 0x49, 0x64, 0x1a, 0x17, 0x0a, 0x15, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x1a, 0x11, 0x0a, 0x0f,
	0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x1a,
	0xaa, 0x09, 0x0a, 0x05, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d,
	0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12,
	0x62, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50,
	0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64,
	0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x52, 0x13,
	0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61,
	0x69, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
	0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65,
	0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64,
	0x61, 0x74, 0x61, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20,
	0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a,
	0x0c, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72,
	0x12, 0x4e, 0x0a, 0x0e, 0x64, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65,
	0x6e, 0x74, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x44, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e,
	0x74, 0x52, 0x0d, 0x64, 0x6e, 0x73, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
	0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x09,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12,
	0x19, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x50, 0x0a, 0x0f, 0x65, 0x78,
	0x74, 0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x18, 0x0b, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78,
	0x74, 0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x52, 0x0d, 0x65,
	0x78, 0x74, 0x72, 0x61, 0x44, 0x68, 0x63, 0x70, 0x4f, 0x70, 0x74, 0x73, 0x12, 0x3f, 0x0a, 0x09,
	0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x69, 0x78, 0x65, 0x64, 0x5f,
	0x69, 0x70, 0x73, 0x52, 0x08, 0x66, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x73, 0x12, 0x0e, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a,
	0x0d, 0x69, 0x70, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x70, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x41, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e,
	0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x51,
	0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x73, 0x52, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67,
	0x73, 0x18, 0x16, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a,
	0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x31, 0x0a, 0x15, 0x71, 0x6f, 0x73,
	0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f,
	0x69, 0x64, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x71, 0x6f, 0x73, 0x4e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d,
	0x71, 0x6f, 0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x1a, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x6f, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64,
	0x12, 0x32, 0x0a, 0x15, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x13, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x61,
	0x62, 0x6c, 0x65, 0x64, 0x12, 0x36, 0x0a, 0x17, 0x70, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74,
	0x65, 0x5f, 0x75, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
	0x1c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x70, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74, 0x65,
	0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x44, 0x0a, 0x0d,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a,
	0x07, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x70, 0x6f, 0x72, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
	0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
	0x72, 0x6d, 0x22, 0x53, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x9a, 0x0d, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x72,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6f, 0x72, 0x74,
	0x49, 0x64, 0x12, 0x31, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x52,
	0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x1a, 0x57, 0x0a, 0x15, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70,
	0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x63,
	0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
	0x6d, 0x61, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x1a, 0x5f, 0x0a, 0x0e, 0x44, 0x6e,
	0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08,
	0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x71, 0x64, 0x6e, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x71, 0x64, 0x6e, 0x1a, 0x68, 0x0a, 0x0f, 0x45,
	0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x12, 0x1b,
	0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69,
	0x70, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x09, 0x69, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70,
	0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70,
	0x74, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x47, 0x0a, 0x09, 0x46, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69,
	0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64, 0x1a, 0xb3,
	0x09, 0x0a, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e,
	0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12, 0x62, 0x0a,
	0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50,
	0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x52, 0x13, 0x61, 0x6c,
	0x6c, 0x6f, 0x77, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x69, 0x72,
	0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
	0x12, 0x2a, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x61, 0x74,
	0x61, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b,
	0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64,
	0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x4e,
	0x0a, 0x0e, 0x64, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
	0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71,
	0x2e, 0x44, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52,
	0x0d, 0x64, 0x6e, 0x73, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1d,
	0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x19, 0x0a,
	0x08, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x50, 0x0a, 0x0f, 0x65, 0x78, 0x74, 0x72,
	0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x2e, 0x45, 0x78, 0x74, 0x72,
	0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x52, 0x0d, 0x65, 0x78, 0x74,
	0x72, 0x61, 0x44, 0x68, 0x63, 0x70, 0x4f, 0x70, 0x74, 0x73, 0x12, 0x3f, 0x0a, 0x09, 0x66, 0x69,
	0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x2e, 0x46, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70,
	0x73, 0x52, 0x08, 0x66, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x69,
	0x70, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0c, 0x69, 0x70, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18,
	0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x12, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x13, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72,
	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72,
	0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x73, 0x18, 0x15, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x17, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41,
	0x74, 0x12, 0x31, 0x0a, 0x15, 0x71, 0x6f, 0x73, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x12, 0x71, 0x6f, 0x73, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x6f, 0x6c, 0x69,
	0x63, 0x79, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x6f, 0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69,
	0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x6f, 0x73,
	0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x17, 0x70, 0x72, 0x6f, 0x70,
	0x61, 0x67, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x70, 0x72, 0x6f, 0x70, 0x61,
	0x67, 0x61, 0x74, 0x65, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x12, 0x32, 0x0a, 0x15, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x5f, 0x6f, 0x66, 0x66,
	0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x13, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x4f, 0x66, 0x66, 0x6c, 0x6f, 0x61, 0x64,
	0x54, 0x79, 0x70, 0x65, 0x22, 0xd2, 0x0f, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50,
	0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x32, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d,
	0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a,
	0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64,
	0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x11,
	0x0a, 0x0f, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c,
	0x65, 0x1a, 0x15, 0x0a, 0x13, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x69, 0x66,
	0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x1a, 0x5f, 0x0a, 0x0e, 0x44, 0x6e, 0x73, 0x5f,
	0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f,
	0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f,
	0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x71, 0x64, 0x6e, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x71, 0x64, 0x6e, 0x1a, 0x68, 0x0a, 0x0f, 0x45, 0x78, 0x74,
	0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09,
	0x6f, 0x70, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x6f, 0x70, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f,
	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69,
	0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x4e,
	0x61, 0x6d, 0x65, 0x1a, 0x47, 0x0a, 0x09, 0x46, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73,
	0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12,
	0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64, 0x1a, 0x17, 0x0a, 0x15,
	0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f,
	0x70, 0x61, 0x69, 0x72, 0x73, 0x1a, 0xf1, 0x0b, 0x0a, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x24,
	0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61,
	0x74, 0x65, 0x55, 0x70, 0x12, 0x63, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f,
	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x18, 0x02, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41,
	0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70,
	0x61, 0x69, 0x72, 0x73, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x41, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x69, 0x72, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x62, 0x69, 0x6e,
	0x64, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0f, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x68, 0x6f, 0x73, 0x74,
	0x5f, 0x69, 0x64, 0x12, 0x53, 0x0a, 0x0f, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x70,
	0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50,
	0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f,
	0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x0f, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67,
	0x3a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x5f, 0x0a, 0x13, 0x62, 0x69, 0x6e, 0x64,
	0x69, 0x6e, 0x67, 0x5f, 0x76, 0x69, 0x66, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x69, 0x66, 0x5f, 0x64, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x73, 0x52, 0x13, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x76, 0x69,
	0x66, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x62, 0x69, 0x6e,
	0x64, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x69, 0x66, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x10, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x76, 0x69, 0x66,
	0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67,
	0x5f, 0x76, 0x6e, 0x69, 0x63, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x11, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x76, 0x6e, 0x69, 0x63, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
	0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65,
	0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64,
	0x61, 0x74, 0x61, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20,
	0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a,
	0x0c, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x0c, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72,
	0x12, 0x4f, 0x0a, 0x0e, 0x64, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65,
	0x6e, 0x74, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x44, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65,
	0x6e, 0x74, 0x52, 0x0d, 0x64, 0x6e, 0x73, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e,
	0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18,
	0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
	0x12, 0x19, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x0f, 0x65,
	0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x18, 0x10,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x52,
	0x0d, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x68, 0x63, 0x70, 0x4f, 0x70, 0x74, 0x73, 0x12, 0x40,
	0x0a, 0x09, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x69, 0x78,
	0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x52, 0x08, 0x66, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x73,
	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
	0x12, 0x23, 0x0a, 0x0d, 0x69, 0x70, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x70, 0x41, 0x6c, 0x6c, 0x6f, 0x63,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x15,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69,
	0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x18, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65,
	0x72, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x73, 0x18, 0x19, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x1b, 0x20, 0x03, 0x28, 0x09,
	0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x5f, 0x69, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e,
	0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
	0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x12, 0x31, 0x0a, 0x15, 0x71, 0x6f, 0x73, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x1e, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x12, 0x71, 0x6f, 0x73, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x6f, 0x6c,
	0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x6f, 0x73, 0x5f, 0x70, 0x6f, 0x6c,
	0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x6f,
	0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x6f, 0x72,
	0x74, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x18, 0x20, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x36, 0x0a,
	0x17, 0x70, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x6c, 0x69, 0x6e,
	0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x21, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15,
	0x70, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74, 0x65, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72,
	0x65, 0x5f, 0x6f, 0x66, 0x66, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x22,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x4f, 0x66,
	0x66, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x61, 0x0a, 0x12, 0x53, 0x68, 0x6f,
	0x77, 0x50, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x12,
	0x17, 0x0a, 0x07, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c,
	0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xcf, 0x0d, 0x0a,
	0x13, 0x53, 0x68, 0x6f, 0x77, 0x50, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x37, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53,
	0x68, 0x6f, 0x77, 0x50, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x10, 0x0a,
	0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12,
	0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67,
	0x1a, 0x5f, 0x0a, 0x0e, 0x44, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65,
	0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d,
	0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a,
	0x04, 0x66, 0x71, 0x64, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x71, 0x64,
	0x6e, 0x1a, 0x68, 0x0a, 0x0f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f,
	0x6f, 0x70, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x56, 0x61, 0x6c, 0x75,
	0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x47, 0x0a, 0x09, 0x46,
	0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e,
	0x65, 0x74, 0x49, 0x64, 0x1a, 0x17, 0x0a, 0x15, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f,
	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x1a, 0x11, 0x0a,
	0x0f, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73,
	0x1a, 0xfb, 0x09, 0x0a, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d,
	0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12,
	0x68, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x50,
	0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41,
	0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70,
	0x61, 0x69, 0x72, 0x73, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x41, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x69, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61,
	0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
	0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63,
	0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6f, 0x77,
	0x6e, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63,
	0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x54, 0x0a, 0x0e, 0x64, 0x6e, 0x73, 0x5f, 0x61, 0x73,
	0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x50,
	0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x44,
	0x6e, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0d, 0x64,
	0x6e, 0x73, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a,
	0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x64,
	0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64,
	0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x56, 0x0a, 0x0f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f,
	0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x2e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77,
	0x50, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x52,
	0x0d, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x68, 0x63, 0x70, 0x4f, 0x70, 0x74, 0x73, 0x12, 0x45,
	0x0a, 0x09, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68,
	0x6f, 0x77, 0x50, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x46, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x52, 0x08, 0x66, 0x69, 0x78,
	0x65, 0x64, 0x49, 0x70, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x70, 0x5f, 0x61, 0x6c, 0x6c, 0x6f,
	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x70,
	0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61,
	0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0a, 0x6d, 0x61, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
	0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x32,
	0x0a, 0x15, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f,
	0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x70,
	0x6f, 0x72, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49,
	0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75,
	0x6d, 0x62, 0x65, 0x72, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69,
	0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x57, 0x0a, 0x0f, 0x73, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x15, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x53, 0x68, 0x6f, 0x77, 0x50, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x73, 0x52, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f,
	0x75, 0x70, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x16, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74,
	0x61, 0x67, 0x73, 0x18, 0x17, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12,
	0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x31, 0x0a, 0x15, 0x71,
	0x6f, 0x73, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63,
	0x79, 0x5f, 0x69, 0x64, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x71, 0x6f, 0x73, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x22,
	0x0a, 0x0d, 0x71, 0x6f, 0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18,
	0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x6f, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
	0x49, 0x64, 0x12, 0x36, 0x0a, 0x17, 0x70, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74, 0x65, 0x5f,
	0x75, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x1c, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x15, 0x70, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74, 0x65, 0x55, 0x70,
	0x6c, 0x69, 0x6e, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x68, 0x61,
	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x68, 0x61, 0x72, 0x64, 0x77,
	0x61, 0x72, 0x65, 0x4f, 0x66, 0x66, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x5a,
	0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71,
	0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
	0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1a,
	0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xae, 0x0b, 0x0a, 0x0f, 0x4c,
	0x69, 0x73, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3c,
	0x0a, 0x07, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x52, 0x6f, 0x75, 0x74,
	0x65, 0x72, 0x73, 0x52, 0x07, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x12, 0x10, 0x0a, 0x03,
	0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12,
	0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a,
	0x50, 0x0a, 0x12, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65,
	0x64, 0x5f, 0x69, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49,
	0x64, 0x1a, 0xb4, 0x01, 0x0a, 0x15, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x65,
	0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x6e, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x0a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6e, 0x61, 0x74, 0x12, 0x5b, 0x0a, 0x12,
	0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69,
	0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69,
	0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x46, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x1a, 0x44, 0x0a, 0x06, 0x52, 0x6f, 0x75, 0x74,
	0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x68, 0x6f, 0x70, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x68, 0x6f, 0x70, 0x1a, 0x5b,
	0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x6c, 0x70,
	0x65, 0x72, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12,
	0x16, 0x0a, 0x06, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x1a, 0x19, 0x0a, 0x17, 0x41,
	0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65,
	0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0xd2, 0x06, 0x0a, 0x07, 0x52, 0x6f, 0x75, 0x74, 0x65,
	0x72, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74,
	0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69,
	0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12, 0x6a, 0x0a, 0x17, 0x61, 0x76, 0x61, 0x69,
	0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x68, 0x69,
	0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69,
	0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x15, 0x61,
	0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x48,
	0x69, 0x6e, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69,
	0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09,
	0x52, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f,
	0x6e, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
	0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75,
	0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x74, 0x72,
	0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x12, 0x64, 0x0a, 0x15, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x13, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09,
	0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x68, 0x61, 0x18,
	0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x68, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
	0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a,
	0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
	0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
	0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x39, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73,
	0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65,
	0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72,
	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f,
	0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04,
	0x74, 0x61, 0x67, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73,
	0x12, 0x59, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x68, 0x65,
	0x6c, 0x70, 0x65, 0x72, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x75, 0x74,
	0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63,
	0x6b, 0x5f, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x6e, 0x74,
	0x72, 0x61, 0x63, 0x6b, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x22, 0x9c, 0x04, 0x0a, 0x0f,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12,
	0x39, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x52, 0x6f, 0x75, 0x74,
	0x65, 0x72, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x50, 0x0a, 0x12, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a,
	0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73,
	0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64, 0x1a, 0xb4, 0x01, 0x0a, 0x15, 0x45, 0x78, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e,
	0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49,
	0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x6e, 0x61, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6e,
	0x61, 0x74, 0x12, 0x5b, 0x0a, 0x12, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66,
	0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x52, 0x10, 0x65,
	0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x46, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x73, 0x1a,
	0xa8, 0x01, 0x0a, 0x06, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x64,
	0x0a, 0x15, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x52,
	0x13, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74,
	0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64,
	0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x22, 0xfa, 0x0e, 0x0a, 0x10, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x3a, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x52, 0x6f, 0x75,
	0x74, 0x65, 0x72, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x6d,
	0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a,
	0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64,
	0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x50,
	0x0a, 0x12, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64,
	0x5f, 0x69, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64,
	0x1a, 0xb5, 0x01, 0x0a, 0x15, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e,
	0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x6e, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6e, 0x61, 0x74, 0x12, 0x5c, 0x0a, 0x12, 0x65,
	0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70,
	0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69,
	0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x46, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x1a, 0xd1, 0x04, 0x0a, 0x07, 0x52, 0x6f, 0x75,
	0x74, 0x65, 0x72, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74,
	0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64,
	0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x76,
	0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x73,
	0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69,
	0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69,
	0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0b, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x12, 0x65, 0x0a, 0x15,
	0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f,
	0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x13,
	0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49,
	0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x5f, 0x69, 0x64,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x49, 0x64,
	0x12, 0x0e, 0x0a, 0x02, 0x68, 0x61, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x68, 0x61,
	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
	0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72,
	0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x16, 0x0a,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
	0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73,
	0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x19, 0x0a, 0x17,
	0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e,
	0x65, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x13, 0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x6e, 0x74,
	0x72, 0x61, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x1a, 0xd8, 0x06, 0x0a,
	0x06, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e,
	0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12, 0x6b, 0x0a,
	0x17, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f,
	0x6e, 0x65, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41, 0x76, 0x61, 0x69,
	0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x68, 0x69,
	0x6e, 0x74, 0x73, 0x52, 0x15, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
	0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x76,
	0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x73,
	0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69,
	0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69,
	0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0b, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x12, 0x65, 0x0a, 0x15,
	0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f,
	0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x13,
	0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49,
	0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x5f, 0x69, 0x64,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x49, 0x64,
	0x12, 0x0e, 0x0a, 0x02, 0x68, 0x61, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x68, 0x61,
	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x07, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x18,
	0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x52, 0x07, 0x72, 0x6f, 0x75, 0x74,
	0x65, 0x72, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
	0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65,
	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f,
	0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
	0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18,
	0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12,
	0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f,
	0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x54, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18,
	0x13, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x5a, 0x0a, 0x11, 0x63,
	0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73,
	0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x68, 0x65,
	0x6c, 0x70, 0x65, 0x72, 0x73, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x6b,
	0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x22, 0xa2, 0x05, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x70,
	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70,
	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x39, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65,
	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72,
	0x52, 0x65, 0x71, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74,
	0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x49, 0x64, 0x1a,
	0x50, 0x0a, 0x12, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65,
	0x64, 0x5f, 0x69, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49,
	0x64, 0x1a, 0x44, 0x0a, 0x06, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64,
	0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a,
	0x07, 0x6e, 0x65, 0x78, 0x74, 0x68, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
	0x6e, 0x65, 0x78, 0x74, 0x68, 0x6f, 0x70, 0x1a, 0xef, 0x01, 0x0a, 0x15, 0x45, 0x78, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66,
	0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64,
	0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x6e, 0x61, 0x74, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6e, 0x61,
	0x74, 0x12, 0x5b, 0x0a, 0x12, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69,
	0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x52, 0x10, 0x65, 0x78,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x46, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x73, 0x12, 0x39,
	0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65,
	0x73, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x90, 0x01, 0x0a, 0x06, 0x52, 0x6f,
	0x75, 0x74, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75,
	0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x74, 0x72,
	0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x12, 0x64, 0x0a, 0x15, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65,
	0x71, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x13, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xe9, 0x0a, 0x0a,
	0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x3a, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x52,
	0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x10, 0x0a,
	0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12,
	0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67,
	0x1a, 0x50, 0x0a, 0x12, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78,
	0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74,
	0x49, 0x64, 0x1a, 0xb5, 0x01, 0x0a, 0x15, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x0b,
	0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x6e, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x0a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6e, 0x61, 0x74, 0x12, 0x5c, 0x0a,
	0x12, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f,
	0x69, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74,
	0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f,
	0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x46, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x1a, 0x44, 0x0a, 0x06, 0x52, 0x6f,
	0x75, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69,
	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x68, 0x6f,
	0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x68, 0x6f, 0x70,
	0x1a, 0x19, 0x0a, 0x17, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
	0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x13, 0x0a, 0x11, 0x43,
	0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73,
	0x1a, 0xd5, 0x06, 0x0a, 0x06, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x61,
	0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55,
	0x70, 0x12, 0x6b, 0x0a, 0x17, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
	0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e,
	0x65, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x15, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
	0x69, 0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x2d,
	0x0a, 0x12, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a,
	0x6f, 0x6e, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x61, 0x76, 0x61, 0x69,
	0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x73, 0x12, 0x1d, 0x0a,
	0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20,
	0x0a, 0x0b, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64,
	0x12, 0x65, 0x0a, 0x15, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x31, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e,
	0x66, 0x6f, 0x52, 0x13, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x47, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x6c, 0x61, 0x76, 0x6f,
	0x72, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6c, 0x61, 0x76,
	0x6f, 0x72, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x68, 0x61, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x02, 0x68, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69,
	0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65,
	0x72, 0x12, 0x3a, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x52,
	0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x16, 0x0a,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
	0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73,
	0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x5a, 0x0a, 0x11,
	0x63, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72,
	0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x68,
	0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63,
	0x6b, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x22, 0xbb, 0x05, 0x0a, 0x14, 0x53, 0x68, 0x6f,
	0x77, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65,
	0x71, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x3e, 0x0a,
	0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x6f,
	0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x2e, 0x52,
	0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a,
	0x09, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x50, 0x0a, 0x12, 0x45, 0x78,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73,
	0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12,
	0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64, 0x1a, 0x44, 0x0a, 0x06,
	0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
	0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x78, 0x74,
	0x68, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x68,
	0x6f, 0x70, 0x1a, 0xf9, 0x01, 0x0a, 0x15, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a,
	0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x65,
	0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x6e, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x0a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6e, 0x61, 0x74, 0x12, 0x60, 0x0a, 0x12,
	0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69,
	0x70, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x44,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x52, 0x10, 0x65, 0x78,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x46, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x73, 0x12, 0x3e,
	0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52,
	0x6f, 0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x2e,
	0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x95,
	0x01, 0x0a, 0x06, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73,
	0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b,
	0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x12, 0x69, 0x0a, 0x15, 0x65,
	0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f,
	0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x6f, 0x75, 0x74, 0x65,
	0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x2e, 0x45, 0x78, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66,
	0x6f, 0x52, 0x13, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x47, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x8c, 0x0b, 0x0a, 0x15, 0x53, 0x68, 0x6f, 0x77, 0x52,
	0x6f, 0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x3f, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f,
	0x77, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65,
	0x72, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
	0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x4d, 0x73, 0x67, 0x1a, 0x50, 0x0a, 0x12, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70,
	0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62,
	0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75,
	0x62, 0x6e, 0x65, 0x74, 0x49, 0x64, 0x1a, 0xba, 0x01, 0x0a, 0x15, 0x45, 0x78, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
	0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x6e, 0x61, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6e, 0x61,
	0x74, 0x12, 0x61, 0x0a, 0x12, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69,
	0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x6f,
	0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69,
	0x70, 0x73, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x46, 0x69, 0x78, 0x65,
	0x64, 0x49, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f,
	0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x49, 0x64, 0x1a, 0x44, 0x0a, 0x06, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a,
	0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x18, 0x0a, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x68, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x68, 0x6f, 0x70, 0x1a, 0x19, 0x0a, 0x17, 0x41, 0x76, 0x61,
	0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x68,
	0x69, 0x6e, 0x74, 0x73, 0x1a, 0x13, 0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63,
	0x6b, 0x5f, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x1a, 0xe9, 0x06, 0x0a, 0x06, 0x52, 0x6f,
	0x75, 0x74, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74,
	0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64,
	0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12, 0x70, 0x0a, 0x17, 0x61, 0x76,
	0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x5f,
	0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x6f, 0x75, 0x74,
	0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41, 0x76,
	0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x5f,
	0x68, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x15, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c,
	0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x12,
	0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e,
	0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
	0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b,
	0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x12, 0x6a,
	0x0a, 0x15, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x6f,
	0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x13, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x47,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x6c,
	0x61, 0x76, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66,
	0x6c, 0x61, 0x76, 0x6f, 0x72, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x68, 0x61, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x02, 0x68, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0a, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x72,
	0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0c,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75,
	0x6d, 0x62, 0x65, 0x72, 0x12, 0x3f, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0d,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69,
	0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x06, 0x72,
	0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
	0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a,
	0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a,
	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74,
	0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x49, 0x64,
	0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04,
	0x74, 0x61, 0x67, 0x73, 0x12, 0x5f, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63,
	0x6b, 0x5f, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x32, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77,
	0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x6c, 0x70,
	0x65, 0x72, 0x73, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x48, 0x65,
	0x6c, 0x70, 0x65, 0x72, 0x73, 0x22, 0x4a, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52,
	0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x75, 0x74,
	0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x75,
	0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x22, 0x55, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65,
	0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x5e, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74,
	0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x73, 0x52, 0x65, 0x71, 0x12, 0x14,
	0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c,
	0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xd7, 0x0a, 0x0a, 0x13, 0x4c, 0x69, 0x73,
	0x74, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x4c, 0x0a, 0x0b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x73, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70,
	0x73, 0x52, 0x0b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x73, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67,
	0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
	0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73,
	0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73,
	0x67, 0x1a, 0xe0, 0x01, 0x0a, 0x0c, 0x50, 0x6f, 0x72, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69,
	0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24,
	0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61,
	0x74, 0x65, 0x55, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f,
	0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6f, 0x77,
	0x6e, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63,
	0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x63,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63,
	0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69,
	0x63, 0x65, 0x49, 0x64, 0x1a, 0xbd, 0x01, 0x0a, 0x10, 0x50, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f,
	0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x11, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x70, 0x41, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f,
	0x72, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x02, 0x69, 0x64, 0x1a, 0x8b, 0x06, 0x0a, 0x0b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e,
	0x67, 0x69, 0x70, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x49,
	0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69,
	0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61,
	0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a,
	0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72,
	0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75,
	0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
	0x12, 0x2e, 0x0a, 0x13, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64,
	0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x69, 0x78, 0x65,
	0x64, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x6c,
	0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e,
	0x67, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f,
	0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6f, 0x72,
	0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0f, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x4e, 0x0a, 0x0c, 0x70,
	0x6f, 0x72, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x2b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b,
	0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74,
	0x61, 0x67, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12,
	0x5a, 0x0a, 0x10, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69,
	0x6e, 0x67, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69,
	0x6e, 0x67, 0x49, 0x50, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x5f, 0x66,
	0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x0f, 0x70, 0x6f, 0x72, 0x74,
	0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x31, 0x0a, 0x15, 0x71,
	0x6f, 0x73, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63,
	0x79, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x71, 0x6f, 0x73, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x22,
	0x0a, 0x0d, 0x71, 0x6f, 0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18,
	0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x6f, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
	0x49, 0x64, 0x22, 0xcb, 0x03, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x6f,
	0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x71, 0x12, 0x49, 0x0a, 0x0a, 0x66, 0x6c,
	0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x71, 0x2e, 0x46,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x52, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74,
	0x69, 0x6e, 0x67, 0x69, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x1a, 0xcc, 0x02, 0x0a, 0x0a, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70,
	0x12, 0x2e, 0x0a, 0x13, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64,
	0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62,
	0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75,
	0x62, 0x6e, 0x65, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f,
	0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0e, 0x66, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x12, 0x2e, 0x0a, 0x13, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x70, 0x5f,
	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69,
	0x6e, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d,
	0x71, 0x6f, 0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x6f, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64,
	0x22, 0xc9, 0x0a, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74,
	0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4a, 0x0a, 0x0a, 0x66, 0x6c, 0x6f,
	0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x52, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74,
	0x69, 0x6e, 0x67, 0x69, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0xe0, 0x01, 0x0a, 0x0c, 0x50, 0x6f, 0x72,
	0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73,
	0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61,
	0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65,
	0x76, 0x69, 0x63, 0x65, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x1f, 0x0a,
	0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b,
	0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x1a, 0xe2, 0x01, 0x0a, 0x10,
	0x50, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x2e, 0x0a, 0x13,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x23, 0x0a, 0x0d,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x72,
	0x74, 0x12, 0x28, 0x0a, 0x10, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6f,
	0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x65,
	0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x0c, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74,
	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
	0x1a, 0xd9, 0x05, 0x0a, 0x0a, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x12,
	0x28, 0x0a, 0x10, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x69, 0x78, 0x65, 0x64,
	0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x6c, 0x6f,
	0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67,
	0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x6c, 0x6f,
	0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x72,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6f, 0x72, 0x74,
	0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65,
	0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e,
	0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d,
	0x61, 0x69, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f,
	0x6d, 0x61, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12,
	0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d,
	0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x27, 0x0a,
	0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
	0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
	0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x4f, 0x0a, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x64,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50, 0x6f,
	0x72, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, 0x70, 0x6f, 0x72, 0x74,
	0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18,
	0x11, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x5b, 0x0a, 0x10, 0x70,
	0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18,
	0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67,
	0x49, 0x50, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x77,
	0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x0f, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72,
	0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x6f, 0x73, 0x5f,
	0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0b, 0x71, 0x6f, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x22, 0xc8, 0x01, 0x0a,
	0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49,
	0x50, 0x52, 0x65, 0x71, 0x12, 0x49, 0x0a, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67,
	0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74,
	0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x71, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e,
	0x67, 0x69, 0x70, 0x52, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x12,
	0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x23, 0x0a, 0x0d, 0x66,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0c, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x49, 0x64,
	0x1a, 0x25, 0x0a, 0x0a, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x12, 0x17,
	0x0a, 0x07, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x64, 0x22, 0xfc, 0x0a, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x4a, 0x0a, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49,
	0x50, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70,
	0x52, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x12, 0x10, 0x0a, 0x03,
	0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12,
	0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a,
	0xe0, 0x01, 0x0a, 0x0c, 0x50, 0x6f, 0x72, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e,
	0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65,
	0x55, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49,
	0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6f, 0x77, 0x6e, 0x65,
	0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4f,
	0x77, 0x6e, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x41, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f,
	0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
	0x49, 0x64, 0x1a, 0xe2, 0x01, 0x0a, 0x10, 0x50, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x77,
	0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x63, 0x6f, 0x6c, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f,
	0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x11, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f,
	0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74,
	0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70,
	0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x78, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x1a, 0x8c, 0x06, 0x0a, 0x0a, 0x46, 0x6c, 0x6f, 0x61,
	0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64,
	0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73,
	0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d,
	0x65, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x69, 0x78,
	0x65, 0x64, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x66,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69,
	0x6e, 0x67, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x66,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f,
	0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69,
	0x6e, 0x67, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x70,
	0x6f, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6f,
	0x72, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
	0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65,
	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09,
	0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41,
	0x74, 0x12, 0x4f, 0x0a, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69,
	0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x5f, 0x64, 0x65,
	0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69,
	0x6c, 0x73, 0x12, 0x5b, 0x0a, 0x10, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61,
	0x72, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50, 0x6f,
	0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x0f,
	0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x12,
	0x31, 0x0a, 0x15, 0x71, 0x6f, 0x73, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70,
	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12,
	0x71, 0x6f, 0x73, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
	0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x6f, 0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79,
	0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x6f, 0x73, 0x50, 0x6f,
	0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x22, 0x56, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x71, 0x12, 0x23, 0x0a,
	0x0d, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70,
	0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x59,
	0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67,
	0x49, 0x50, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x5b, 0x0a, 0x18, 0x53, 0x68, 0x6f,
	0x77, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x44, 0x65, 0x74, 0x61, 0x69,
	0x6c, 0x73, 0x52, 0x65, 0x71, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e,
	0x67, 0x69, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x6c,
	0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x90, 0x0b, 0x0a, 0x19, 0x53, 0x68, 0x6f, 0x77, 0x46,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x4f, 0x0a, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67,
	0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e,
	0x67, 0x49, 0x50, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46,
	0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x52, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74,
	0x69, 0x6e, 0x67, 0x69, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0xe0, 0x01, 0x0a, 0x0c, 0x50, 0x6f, 0x72,
	0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73,
	0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61,
	0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x6e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65,
	0x76, 0x69, 0x63, 0x65, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x1f, 0x0a,
	0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b,
	0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x1a, 0xe2, 0x01, 0x0a, 0x10,
	0x50, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x2e, 0x0a, 0x13,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x23, 0x0a, 0x0d,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x72,
	0x74, 0x12, 0x28, 0x0a, 0x10, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6f,
	0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x65,
	0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x0c, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74,
	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
	0x1a, 0x96, 0x06, 0x0a, 0x0a, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x70, 0x12,
	0x2e, 0x0a, 0x13, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x6c,
	0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12,
	0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10,
	0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x69, 0x78, 0x65, 0x64, 0x49, 0x70, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x70, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f,
	0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6f, 0x72,
	0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d,
	0x61, 0x69, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f,
	0x6d, 0x61, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12,
	0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d,
	0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x27, 0x0a,
	0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
	0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
	0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x54, 0x0a, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x64,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x6c, 0x6f,
	0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52,
	0x0b, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04,
	0x74, 0x61, 0x67, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73,
	0x12, 0x60, 0x0a, 0x10, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64,
	0x69, 0x6e, 0x67, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x6c, 0x6f, 0x61, 0x74,
	0x69, 0x6e, 0x67, 0x49, 0x50, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x50, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67,
	0x73, 0x52, 0x0f, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e,
	0x67, 0x73, 0x12, 0x31, 0x0a, 0x15, 0x71, 0x6f, 0x73, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x12, 0x71, 0x6f, 0x73, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x6f, 0x6c,
	0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x6f, 0x73, 0x5f, 0x70, 0x6f, 0x6c,
	0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x6f,
	0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x22, 0x4b, 0x0a, 0x15, 0x4c, 0x69, 0x73,
	0x74, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52,
	0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xb1, 0x04, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x46,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x5a, 0x0a, 0x0f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x69,
	0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x0e, 0x66,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x10, 0x0a,
	0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12,
	0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67,
	0x1a, 0xf7, 0x02, 0x0a, 0x0f, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74,
	0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64,
	0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x19,
	0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f,
	0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x16, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50,
	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x69, 0x6e, 0x67, 0x72, 0x65,
	0x73, 0x73, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69,
	0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x69, 0x6e, 0x67,
	0x72, 0x65, 0x73, 0x73, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69,
	0x63, 0x79, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x72, 0x74,
	0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
	0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
	0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a,
	0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x60, 0x0a, 0x16, 0x44, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c,
	0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x5c, 0x0a, 0x17,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72,
	0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a,
	0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xbe, 0x02, 0x0a, 0x16, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f,
	0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x57, 0x0a, 0x0e, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71,
	0x2e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x52,
	0x0d, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a,
	0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0xae, 0x01, 0x0a, 0x0e, 0x46,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x24, 0x0a,
	0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74,
	0x65, 0x55, 0x70, 0x12, 0x39, 0x0a, 0x19, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x66, 0x69,
	0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x46, 0x69,
	0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x3b,
	0x0a, 0x1a, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61,
	0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x17, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x22, 0xaf, 0x04, 0x0a, 0x17,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72,
	0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x58, 0x0a, 0x0e, 0x66, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x31, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x52, 0x0d, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
	0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x4d, 0x73, 0x67, 0x1a, 0xf6, 0x02, 0x0a, 0x0e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e,
	0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12, 0x20, 0x0a,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x39, 0x0a, 0x19, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61,
	0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x16, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61,
	0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x69, 0x6e,
	0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70,
	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17,
	0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50,
	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70,
	0x6f, 0x72, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x72, 0x74,
	0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18,
	0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64,
	0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xf1, 0x01,
	0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c,
	0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x57, 0x0a, 0x0e, 0x66, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x30, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x52, 0x65, 0x71, 0x2e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x52, 0x0d, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x2a, 0x0a,
	0x11, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f,
	0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61,
	0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x1a, 0x36, 0x0a, 0x0e, 0x46, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x24, 0x0a, 0x0e, 0x61,
	0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x55,
	0x70, 0x22, 0xaf, 0x04, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x58, 0x0a,
	0x0e, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c,
	0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61,
	0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x0d, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61,
	0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a,
	0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0xf6, 0x02, 0x0a, 0x0e, 0x46,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x24, 0x0a,
	0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74,
	0x65, 0x55, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x19, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f,
	0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f,
	0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73,
	0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64,
	0x12, 0x3b, 0x0a, 0x1a, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x66, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x46, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x0e, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09,
	0x52, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65,
	0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12,
	0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e,
	0x74, 0x49, 0x64, 0x22, 0x65, 0x0a, 0x1b, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52,
	0x65, 0x71, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67,
	0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x66,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1a,
	0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xa3, 0x04, 0x0a, 0x1c, 0x53,
	0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5d, 0x0a, 0x0e, 0x66,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x0d, 0x66, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73,
	0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04,
	0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65,
	0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0xe0, 0x02,
	0x0a, 0x0e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x12, 0x24, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f,
	0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53,
	0x74, 0x61, 0x74, 0x65, 0x55, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x19, 0x65, 0x67, 0x72, 0x65,
	0x73, 0x73, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69,
	0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x65, 0x67, 0x72,
	0x65, 0x73, 0x73, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63,
	0x79, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x66,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69,
	0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73,
	0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
	0x22, 0xe0, 0x01, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x12, 0x5b, 0x0a, 0x0f,
	0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c,
	0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x2e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61,
	0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0e, 0x66, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x4c, 0x0a, 0x0f, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e,
	0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x02,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75,
	0x6c, 0x65, 0x73, 0x22, 0xaa, 0x03, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69,
	0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x5c, 0x0a, 0x0f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c,
	0x69, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0e,
	0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67,
	0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
	0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73,
	0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73,
	0x67, 0x1a, 0xec, 0x01, 0x0a, 0x0f, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70,
	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x75, 0x64, 0x69, 0x74, 0x65, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x75, 0x64, 0x69, 0x74, 0x65, 0x64, 0x12,
	0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75,
	0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x66, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a,
	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73,
	0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61,
	0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
	0x22, 0x63, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61,
	0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x12, 0x2c, 0x0a, 0x12, 0x66,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x5d, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
	0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x4d, 0x73, 0x67, 0x22, 0x4d, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x12,
	0x16, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66,
	0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66,
	0x6f, 0x72, 0x6d, 0x22, 0xb2, 0x03, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d,
	0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f,
	0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x4d, 0x73, 0x67, 0x12, 0x62, 0x0a, 0x11, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f,
	0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c,
	0x69, 0x63, 0x69, 0x65, 0x73, 0x52, 0x10, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50,
	0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x1a, 0xee, 0x01, 0x0a, 0x11, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x12, 0x18, 0x0a,
	0x07, 0x61, 0x75, 0x64, 0x69, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
	0x61, 0x75, 0x64, 0x69, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x0d, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73,
	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74,
	0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x68, 0x0a, 0x1c, 0x53, 0x68, 0x6f, 0x77,
	0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x44, 0x65,
	0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f,
	0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
	0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
	0x72, 0x6d, 0x22, 0xb4, 0x03, 0x0a, 0x1d, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x61, 0x0a, 0x0f, 0x66, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x38, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f,
	0x77, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x44,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0e, 0x66, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x1a, 0xec, 0x01, 0x0a, 0x0f, 0x46,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x18,
	0x0a, 0x07, 0x61, 0x75, 0x64, 0x69, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x07, 0x61, 0x75, 0x64, 0x69, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x69,
	0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03,
	0x28, 0x09, 0x52, 0x0d, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65,
	0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
	0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
	0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65,
	0x63, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09,
	0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xa7, 0x02, 0x0a, 0x15, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65,
	0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12,
	0x53, 0x0a, 0x0d, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x2e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x0c, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c,
	0x52, 0x75, 0x6c, 0x65, 0x1a, 0x9c, 0x01, 0x0a, 0x0d, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29,
	0x0a, 0x10, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f,
	0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61,
	0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62,
	0x6c, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x63, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x63, 0x6f, 0x6c, 0x22, 0xf4, 0x05, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69,
	0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67,
	0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
	0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73,
	0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73,
	0x67, 0x12, 0x54, 0x0a, 0x0d, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75,
	0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x0c, 0x66, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x1a, 0xc0, 0x04, 0x0a, 0x0d, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x41, 0x0a, 0x1d, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1a, 0x64, 0x65, 0x73, 0x74,
	0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10,
	0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
	0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
	0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
	0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18,
	0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x37, 0x0a, 0x18, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64,
	0x12, 0x2a, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1b, 0x0a,
	0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x5d, 0x0a, 0x15, 0x44, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65,
	0x52, 0x65, 0x71, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f,
	0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x5b, 0x0a, 0x16, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x4a, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69,
	0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16,
	0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
	0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
	0x72, 0x6d, 0x22, 0xc0, 0x06, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x56, 0x0a, 0x0e,
	0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c,
	0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f,
	0x72, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x0d, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52,
	0x75, 0x6c, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x8b, 0x05, 0x0a, 0x0e, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x41, 0x0a, 0x1d, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1a, 0x64, 0x65, 0x73,
	0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c,
	0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x64, 0x65, 0x73, 0x74, 0x69,
	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a,
	0x10, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x72,
	0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62,
	0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70,
	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10,
	0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64,
	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
	0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
	0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1a,
	0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68,
	0x61, 0x72, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72,
	0x65, 0x64, 0x12, 0x37, 0x0a, 0x18, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x66, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x0f,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x70,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e,
	0x61, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x62, 0x0a, 0x1a, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x52, 0x65, 0x71, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f,
	0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xc8, 0x06, 0x0a, 0x1b, 0x53, 0x68,
	0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x44, 0x65,
	0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12,
	0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x59, 0x0a, 0x0d,
	0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65,
	0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x0c, 0x66, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x1a, 0x8a, 0x05, 0x0a, 0x0d, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x41, 0x0a, 0x1d, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1a, 0x64, 0x65, 0x73, 0x74,
	0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10,
	0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
	0x64, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f,
	0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x66,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x12,
	0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12,
	0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12,
	0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d,
	0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a,
	0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61,
	0x72, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65,
	0x64, 0x12, 0x37, 0x0a, 0x18, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x66, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x0f, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18,
	0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x70, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x49, 0x64, 0x22, 0x4b, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a,
	0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66,
	0x69, 0x65, 0x6c, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x22, 0xbd, 0x09, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03,
	0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12,
	0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12,
	0x5a, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x0e, 0x73, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x1a, 0xd4, 0x04, 0x0a, 0x14,
	0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72,
	0x75, 0x6c, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65,
	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
	0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d,
	0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61,
	0x6e, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72,
	0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c,
	0x70, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f,
	0x74, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64,
	0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70, 0x5f, 0x70, 0x72,
	0x65, 0x66, 0x69, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x6d, 0x6f,
	0x74, 0x65, 0x49, 0x70, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18,
	0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e,
	0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12,
	0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61,
	0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18,
	0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12,
	0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0e, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d,
	0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x31, 0x0a, 0x15, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x65,
	0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x67, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12,
	0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x54, 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
	0x53, 0x67, 0x1a, 0xac, 0x03, 0x0a, 0x0f, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f,
	0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x68, 0x0a, 0x14,
	0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72,
	0x75, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c,
	0x65, 0x73, 0x52, 0x12, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e,
	0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d,
	0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a,
	0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x12, 0x0a, 0x04,
	0x74, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73,
	0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a,
	0x08, 0x73, 0x74, 0x61, 0x74, 0x65, 0x66, 0x75, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x08, 0x73, 0x74, 0x61, 0x74, 0x65, 0x66, 0x75, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61,
	0x72, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65,
	0x64, 0x22, 0xf1, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x57, 0x0a, 0x0e,
	0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
	0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x0d, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
	0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x1a, 0x62, 0x0a, 0x0e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x61,
	0x74, 0x65, 0x66, 0x75, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x73, 0x74, 0x61,
	0x74, 0x65, 0x66, 0x75, 0x6c, 0x22, 0xbc, 0x09, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
	0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x4d, 0x73, 0x67, 0x12, 0x58, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
	0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x52,
	0x0d, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x1a, 0xd4,
	0x04, 0x0a, 0x14, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74,
	0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67,
	0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x70, 0x6f, 0x72,
	0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72,
	0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x69, 0x6e, 0x12,
	0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x72,
	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70,
	0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72,
	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x2a, 0x0a,
	0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f,
	0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69,
	0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12,
	0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74,
	0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
	0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x15, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x5f, 0x74, 0x6f,
	0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x67, 0x18, 0x12, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x12, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x54, 0x6f, 0x44, 0x65, 0x66, 0x61,
	0x75, 0x6c, 0x74, 0x53, 0x67, 0x1a, 0xac, 0x03, 0x0a, 0x0e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x69,
	0x0a, 0x14, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f,
	0x72, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x12, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69,
	0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12,
	0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74,
	0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
	0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x65, 0x66, 0x75, 0x6c, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x65, 0x66, 0x75, 0x6c, 0x12, 0x16, 0x0a, 0x06,
	0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68,
	0x61, 0x72, 0x65, 0x64, 0x22, 0x60, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x2a,
	0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x5c, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
	0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x4d, 0x73, 0x67, 0x22, 0x60, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x2a,
	0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xef, 0x09, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x58, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x52, 0x0d, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x1a,
	0xd4, 0x04, 0x0a, 0x14, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72,
	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74,
	0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72,
	0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e,
	0x67, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x70, 0x6f,
	0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f,
	0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x69, 0x6e,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x26, 0x0a, 0x0f,
	0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x47, 0x72, 0x6f,
	0x75, 0x70, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69,
	0x70, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
	0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x2a,
	0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72,
	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62,
	0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09,
	0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e,
	0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
	0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41,
	0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x15, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x5f, 0x74,
	0x6f, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x67, 0x18, 0x11, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x12, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x54, 0x6f, 0x44, 0x65, 0x66,
	0x61, 0x75, 0x6c, 0x74, 0x53, 0x67, 0x1a, 0xdf, 0x03, 0x0a, 0x0e, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x69, 0x0a, 0x14, 0x73, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65,
	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73,
	0x52, 0x12, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52,
	0x75, 0x6c, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
	0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65,
	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09,
	0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a,
	0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67,
	0x73, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x65, 0x66, 0x75, 0x6c, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x65, 0x66, 0x75, 0x6c, 0x12, 0x16, 0x0a,
	0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73,
	0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x31, 0x0a, 0x15, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73,
	0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x67, 0x18, 0x0d,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x54, 0x6f, 0x44,
	0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x67, 0x22, 0x90, 0x01, 0x0a, 0x14, 0x53, 0x68, 0x6f,
	0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65,
	0x71, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x18, 0x0a,
	0x07, 0x76, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
	0x76, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64,
	0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12,
	0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xb6, 0x09, 0x0a, 0x15,
	0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x56, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x2f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f,
	0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x52, 0x0d, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x1a, 0xd4, 0x04, 0x0a, 0x14, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72,
	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69,
	0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72,
	0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x74, 0x68, 0x65,
	0x72, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61,
	0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x70,
	0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x70,
	0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x69,
	0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x26, 0x0a,
	0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x47, 0x72,
	0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f,
	0x69, 0x70, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12,
	0x2a, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65,
	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d,
	0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
	0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
	0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x15, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x5f,
	0x74, 0x6f, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x67, 0x18, 0x11, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x12, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x54, 0x6f, 0x44, 0x65,
	0x66, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x67, 0x1a, 0xaa, 0x03, 0x0a, 0x0e, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02,
	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x12, 0x67, 0x0a, 0x14, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f,
	0x72, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x12, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69,
	0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12,
	0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74,
	0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
	0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x65, 0x66, 0x75, 0x6c, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x65, 0x66, 0x75, 0x6c, 0x12, 0x16, 0x0a, 0x06,
	0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68,
	0x61, 0x72, 0x65, 0x64, 0x22, 0x37, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65,
	0x71, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x90, 0x06,
	0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72,
	0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03,
	0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12,
	0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12,
	0x6c, 0x0a, 0x14, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x12, 0x73, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x1a, 0xc0, 0x04,
	0x0a, 0x14, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74, 0x79,
	0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
	0x69, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65,
	0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74,
	0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74,
	0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x69, 0x6e, 0x12, 0x1a,
	0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x65,
	0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70, 0x5f,
	0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65,
	0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x2a, 0x0a, 0x11,
	0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69,
	0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72,
	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72,
	0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12,
	0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1b,
	0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a,
	0x15, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x65, 0x66, 0x61,
	0x75, 0x6c, 0x74, 0x5f, 0x73, 0x67, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x62, 0x65,
	0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x54, 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x67,
	0x22, 0xb3, 0x03, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x12,
	0x69, 0x0a, 0x13, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65,
	0x52, 0x65, 0x71, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x8d, 0x02, 0x0a, 0x13, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x1c,
	0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e,
	0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d,
	0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65,
	0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d,
	0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61,
	0x6e, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
	0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
	0x6f, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d,
	0x6f, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x8e, 0x06, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75,
	0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x6a, 0x0a, 0x13, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72,
	0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x52,
	0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75,
	0x6c, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0xbf, 0x04, 0x0a, 0x13, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x1c, 0x0a,
	0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65,
	0x74, 0x68, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x65, 0x74, 0x68, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72,
	0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12,
	0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x69,
	0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e,
	0x67, 0x65, 0x4d, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
	0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
	0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f,
	0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6d,
	0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x50, 0x72, 0x65,
	0x66, 0x69, 0x78, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f,
	0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f,
	0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12,
	0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27,
	0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65,
	0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e,
	0x74, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
	0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
	0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x15, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x5f,
	0x74, 0x6f, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x67, 0x18, 0x10, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x12, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x54, 0x6f, 0x44, 0x65,
	0x66, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x67, 0x22, 0x6b, 0x0a, 0x18, 0x53, 0x68, 0x6f, 0x77, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65,
	0x52, 0x65, 0x71, 0x12, 0x33, 0x0a, 0x16, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f,
	0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f,
	0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74,
	0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74,
	0x66, 0x6f, 0x72, 0x6d, 0x22, 0x8a, 0x06, 0x0a, 0x19, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x68, 0x0a, 0x13, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x38, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53,
	0x68, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x11, 0x73, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x1a,
	0xbf, 0x04, 0x0a, 0x13, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74,
	0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67,
	0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x6f, 0x72,
	0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72,
	0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x69, 0x6e, 0x12,
	0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x72,
	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70,
	0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72,
	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x2a, 0x0a,
	0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f,
	0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69,
	0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65,
	0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0c,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d,
	0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a,
	0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31,
	0x0a, 0x15, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x65, 0x66,
	0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x67, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x62,
	0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x54, 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x53,
	0x67, 0x22, 0x6d, 0x0a, 0x1a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x12,
	0x33, 0x0a, 0x16, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x13, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75,
	0x6c, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
	0x22, 0xec, 0x05, 0x0a, 0x1b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d,
	0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f,
	0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x4d, 0x73, 0x67, 0x12, 0x6a, 0x0a, 0x13, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f,
	0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x3a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x11, 0x73, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x1a,
	0x9d, 0x04, 0x0a, 0x13, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x74, 0x68, 0x65, 0x72, 0x74,
	0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67,
	0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x70, 0x6f, 0x72,
	0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6f, 0x72,
	0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x69, 0x6e, 0x12,
	0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x72,
	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70,
	0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72,
	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x27, 0x0a,
	0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
	0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x41, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
	0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64,
	0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0d,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12,
	0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x15,
	0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75,
	0x6c, 0x74, 0x5f, 0x73, 0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x62, 0x65, 0x6c,
	0x6f, 0x6e, 0x67, 0x73, 0x54, 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x67, 0x22,
	0xfc, 0x04, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71,
	0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x75, 0x75, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
	0x65, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e,
	0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6d, 0x61, 0x69, 0x6e,
	0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x73, 0x73, 0x6f, 0x63,
	0x69, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x61, 0x73, 0x73,
	0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x76, 0x69,
	0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65,
	0x12, 0x18, 0x0a, 0x07, 0x73, 0x68, 0x61, 0x72, 0x64, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x07, 0x73, 0x68, 0x61, 0x72, 0x64, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x72,
	0x69, 0x76, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x72, 0x69, 0x76,
	0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63,
	0x6c, 0x61, 0x73, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e,
	0x64, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x47, 0x72, 0x6f,
	0x75, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x18,
	0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x6f, 0x72,
	0x12, 0x14, 0x0a, 0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18,
	0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06,
	0x6c, 0x65, 0x73, 0x73, 0x65, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x65,
	0x73, 0x73, 0x65, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x0d, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69,
	0x6d, 0x69, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74,
	0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x6f, 0x72, 0x74,
	0x5f, 0x64, 0x69, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x72, 0x74,
	0x44, 0x69, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18,
	0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x72, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x16,
	0x0a, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
	0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
	0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72,
	0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75,
	0x64, 0x65, 0x5f, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72,
	0x65, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x15,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xb0,
	0x03, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x34, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52,
	0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73,
	0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e,
	0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0xf6, 0x01, 0x0a, 0x05, 0x4e, 0x6f, 0x64,
	0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x75,
	0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61,
	0x6e, 0x63, 0x65, 0x55, 0x75, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73,
	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x20, 0x0a,
	0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x12,
	0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61,
	0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x53,
	0x74, 0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70,
	0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a,
	0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69,
	0x64, 0x22, 0x98, 0x0c, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65,
	0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65,
	0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x12,
	0x45, 0x0a, 0x0b, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x2e, 0x44,
	0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x72, 0x69, 0x76,
	0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0e, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12,
	0x25, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73,
	0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x6f, 0x6f, 0x74, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
	0x62, 0x6f, 0x6f, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x27, 0x0a,
	0x0f, 0x63, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x6f,
	0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c,
	0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64,
	0x65, 0x70, 0x6c, 0x6f, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x2b,
	0x0a, 0x11, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x70, 0x65,
	0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x6d,
	0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x6d, 0x61, 0x6e, 0x61, 0x67,
	0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x2b,
	0x0a, 0x11, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x72,
	0x65, 0x73, 0x63, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18,
	0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x63, 0x75, 0x65, 0x49, 0x6e, 0x74,
	0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
	0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x10, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x76, 0x65, 0x6e, 0x64, 0x6f,
	0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0f, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61,
	0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65,
	0x73, 0x73, 0x65, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x65, 0x73, 0x73,
	0x65, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x43, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70,
	0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e,
	0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65,
	0x73, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x27, 0x0a,
	0x0f, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6c, 0x65, 0x61, 0x6e,
	0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65,
	0x64, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x69, 0x6f, 0x73, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
	0x62, 0x69, 0x6f, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x21, 0x0a,
	0x0c, 0x63, 0x68, 0x61, 0x73, 0x73, 0x69, 0x73, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x18, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x73, 0x73, 0x69, 0x73, 0x55, 0x75, 0x69, 0x64,
	0x12, 0x4b, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66,
	0x6f, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65,
	0x71, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x52,
	0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a,
	0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x1a,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x55, 0x75,
	0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63,
	0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e,
	0x61, 0x6e, 0x63, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61,
	0x6e, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x11, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x61,
	0x73, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x0c, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x64,
	0x61, 0x74, 0x61, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65,
	0x52, 0x65, 0x71, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61,
	0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a,
	0x0b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x1e, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x1c,
	0x0a, 0x09, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x1f, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x29, 0x0a, 0x10,
	0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e,
	0x18, 0x20, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65,
	0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x74, 0x69, 0x72,
	0x65, 0x64, 0x18, 0x21, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x74, 0x69, 0x72, 0x65,
	0x64, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x61,
	0x73, 0x6f, 0x6e, 0x18, 0x22, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x69, 0x72,
	0x65, 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74,
	0x66, 0x6f, 0x72, 0x6d, 0x18, 0x23, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74,
	0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x57, 0x0a, 0x0b, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69,
	0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x70, 0x6d, 0x69, 0x5f, 0x75, 0x73, 0x65, 0x72,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x70, 0x6d, 0x69,
	0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x70, 0x6d, 0x69,
	0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0c, 0x69, 0x70, 0x6d, 0x69, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x1a, 0x0c, 0x0a,
	0x0a, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x1a, 0x0f, 0x0a, 0x0d, 0x49,
	0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x1a, 0x0e, 0x0a, 0x0c,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x22, 0xf8, 0x19, 0x0a,
	0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x27, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x75,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b,
	0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0a, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a,
	0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74,
	0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65,
	0x74, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x70,
	0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x53,
	0x74, 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70,
	0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61,
	0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2d, 0x0a, 0x12,
	0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x61, 0x73,
	0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65,
	0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x66,
	0x61, 0x75, 0x6c, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x66, 0x61, 0x75, 0x6c,
	0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18,
	0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72,
	0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x12, 0x46, 0x0a, 0x0b, 0x64, 0x72,
	0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x44, 0x72, 0x69, 0x76, 0x65,
	0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x49, 0x6e,
	0x66, 0x6f, 0x12, 0x60, 0x0a, 0x14, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x2e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x44, 0x72, 0x69, 0x76,
	0x65, 0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
	0x52, 0x12, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x44, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69,
	0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x52, 0x0a,
	0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x4c, 0x0a, 0x0d, 0x69, 0x6e,
	0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x10, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x73,
	0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74,
	0x61, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x74,
	0x61, 0x6e, 0x63, 0x65, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x55, 0x75, 0x69, 0x64, 0x12, 0x21, 0x0a,
	0x0c, 0x63, 0x68, 0x61, 0x73, 0x73, 0x69, 0x73, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x12, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x73, 0x73, 0x69, 0x73, 0x55, 0x75, 0x69, 0x64,
	0x12, 0x35, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61,
	0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x73, 0x6f,
	0x6c, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
	0x12, 0x46, 0x0a, 0x0b, 0x72, 0x61, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18,
	0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x52, 0x61, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0a, 0x72, 0x61,
	0x69, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x5a, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67,
	0x65, 0x74, 0x5f, 0x72, 0x61, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x16,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x61, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x61, 0x69, 0x64, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x12, 0x43, 0x0a, 0x0a, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x5f, 0x73, 0x74,
	0x65, 0x70, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x52, 0x09,
	0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x74, 0x65, 0x70, 0x12, 0x46, 0x0a, 0x0b, 0x64, 0x65, 0x70,
	0x6c, 0x6f, 0x79, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79,
	0x5f, 0x73, 0x74, 0x65, 0x70, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x53, 0x74, 0x65,
	0x70, 0x12, 0x35, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x19, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6e, 0x6b,
	0x73, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x35, 0x0a, 0x05, 0x70, 0x6f, 0x72, 0x74,
	0x73, 0x18, 0x1a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12,
	0x44, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x1b, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50,
	0x6f, 0x72, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x67,
	0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x38, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x18,
	0x1c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12,
	0x25, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73,
	0x73, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x6f, 0x6f, 0x74, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
	0x62, 0x6f, 0x6f, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x2b, 0x0a,
	0x11, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61,
	0x63, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c,
	0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65,
	0x70, 0x6c, 0x6f, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x20,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x49, 0x6e, 0x74, 0x65,
	0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74,
	0x6f, 0x72, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x21, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
	0x63, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2b,
	0x0a, 0x11, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x18, 0x22, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x70, 0x65,
	0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x6d,
	0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x18, 0x23, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x6d, 0x61, 0x6e, 0x61, 0x67,
	0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x2b,
	0x0a, 0x11, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x70,
	0x6f, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x25,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x49, 0x6e, 0x74, 0x65, 0x72,
	0x66, 0x61, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x61, 0x69, 0x64, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x26, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x61,
	0x69, 0x64, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x72,
	0x65, 0x73, 0x63, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18,
	0x27, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x63, 0x75, 0x65, 0x49, 0x6e, 0x74,
	0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
	0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x28, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x10, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x72, 0x61, 0x69, 0x74, 0x73, 0x18, 0x29, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x06, 0x74, 0x72, 0x61, 0x69, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x76,
	0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18,
	0x2a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x49, 0x6e, 0x74,
	0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x18, 0x2b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x2c, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x29,
	0x0a, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x61, 0x73,
	0x6f, 0x6e, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63,
	0x74, 0x65, 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e,
	0x64, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f,
	0x6e, 0x64, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72,
	0x18, 0x2f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x16, 0x0a,
	0x06, 0x6c, 0x65, 0x73, 0x73, 0x65, 0x65, 0x18, 0x30, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6c,
	0x65, 0x73, 0x73, 0x65, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x31,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x32, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a,
	0x0f, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6c, 0x65, 0x61, 0x6e,
	0x18, 0x33, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65,
	0x64, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x69, 0x6f, 0x73, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x34, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
	0x62, 0x69, 0x6f, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x49, 0x0a,
	0x0c, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x35, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0b, 0x6e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x74, 0x69,
	0x72, 0x65, 0x64, 0x18, 0x36, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x74, 0x69, 0x72,
	0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x72, 0x65,
	0x61, 0x73, 0x6f, 0x6e, 0x18, 0x37, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x69,
	0x72, 0x65, 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x38, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x34, 0x0a, 0x16, 0x69, 0x6e, 0x73, 0x70,
	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f,
	0x61, 0x74, 0x18, 0x39, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x41, 0x74, 0x12, 0x32,
	0x0a, 0x15, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61,
	0x72, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x69,
	0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x18, 0x3b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41,
	0x74, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69,
	0x6f, 0x6e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x3d, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18,
	0x3e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d,
	0x73, 0x67, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a,
	0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x41, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x0c, 0x0a, 0x0a, 0x43, 0x6c,
	0x65, 0x61, 0x6e, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x1a, 0x0d, 0x0a, 0x0b, 0x44, 0x65, 0x70, 0x6c,
	0x6f, 0x79, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x1a, 0x57, 0x0a, 0x0b, 0x44, 0x72, 0x69, 0x76, 0x65,
	0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x70, 0x6d, 0x69, 0x5f, 0x70,
	0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69,
	0x70, 0x6d, 0x69, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x69,
	0x70, 0x6d, 0x69, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0c, 0x69, 0x70, 0x6d, 0x69, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65,
	0x1a, 0x16, 0x0a, 0x14, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x1a, 0x07, 0x0a, 0x05, 0x45, 0x78, 0x74, 0x72,
	0x61, 0x1a, 0x0f, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x6e,
	0x66, 0x6f, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68,
	0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12,
	0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65,
	0x6c, 0x1a, 0x0e, 0x0a, 0x0c, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x64, 0x61, 0x74,
	0x61, 0x1a, 0x32, 0x0a, 0x0a, 0x50, 0x6f, 0x72, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12,
	0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68,
	0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x2d, 0x0a, 0x05, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x12,
	0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72,
	0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x72, 0x65, 0x6c, 0x1a, 0x0c, 0x0a, 0x0a, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69,
	0x65, 0x73, 0x1a, 0x0d, 0x0a, 0x0b, 0x52, 0x61, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x1a, 0x2e, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68,
	0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12,
	0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65,
	0x6c, 0x1a, 0x14, 0x0a, 0x12, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x61, 0x69, 0x64,
	0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x2e, 0x0a, 0x06, 0x56, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x22, 0x4a, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x6f, 0x64, 0x65,
	0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x6f,
	0x64, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66,
	0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66,
	0x6f, 0x72, 0x6d, 0x22, 0x53, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x6f, 0x64,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x97, 0x01, 0x0a, 0x12, 0x53, 0x68, 0x6f,
	0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x12,
	0x1d, 0x0a, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x12, 0x3c,
	0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e,
	0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x2e, 0x46, 0x69,
	0x65, 0x6c, 0x64, 0x73, 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x08, 0x0a, 0x06, 0x46, 0x69, 0x65, 0x6c,
	0x64, 0x73, 0x22, 0xf1, 0x1a, 0x0a, 0x13, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x12,
	0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x74,
	0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6f,
	0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74,
	0x65, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73,
	0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x74, 0x61,
	0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73,
	0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x74, 0x61, 0x72, 0x67,
	0x65, 0x74, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65,
	0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e,
	0x63, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63,
	0x65, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11,
	0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x61, 0x73, 0x6f,
	0x6e, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x61, 0x73,
	0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x73,
	0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x72, 0x69, 0x76,
	0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72,
	0x12, 0x4b, 0x0a, 0x0b, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18,
	0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66,
	0x6f, 0x52, 0x0a, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x65, 0x0a,
	0x14, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65,
	0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x44, 0x72, 0x69, 0x76,
	0x65, 0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
	0x52, 0x12, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69,
	0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74,
	0x69, 0x65, 0x73, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12,
	0x51, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
	0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69,
	0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f,
	0x69, 0x6e, 0x66, 0x6f, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x6e,
	0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x75,
	0x75, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61,
	0x6e, 0x63, 0x65, 0x55, 0x75, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x73, 0x73,
	0x69, 0x73, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63,
	0x68, 0x61, 0x73, 0x73, 0x69, 0x73, 0x55, 0x75, 0x69, 0x64, 0x12, 0x3a, 0x0a, 0x05, 0x65, 0x78,
	0x74, 0x72, 0x61, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65,
	0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x52,
	0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c,
	0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12,
	0x4b, 0x0a, 0x0b, 0x72, 0x61, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x15,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x52, 0x61, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x52, 0x0a, 0x72, 0x61, 0x69, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x5f, 0x0a, 0x12,
	0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x61, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f,
	0x72, 0x61, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x10, 0x74, 0x61, 0x72,
	0x67, 0x65, 0x74, 0x52, 0x61, 0x69, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x48, 0x0a,
	0x0a, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x17, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x29, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68,
	0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x52, 0x09, 0x63, 0x6c,
	0x65, 0x61, 0x6e, 0x53, 0x74, 0x65, 0x70, 0x12, 0x4b, 0x0a, 0x0b, 0x64, 0x65, 0x70, 0x6c, 0x6f,
	0x79, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64,
	0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x44, 0x65, 0x70,
	0x6c, 0x6f, 0x79, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79,
	0x53, 0x74, 0x65, 0x70, 0x12, 0x3a, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x19, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73,
	0x12, 0x3a, 0x0a, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x1a, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77,
	0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x49, 0x0a, 0x0a,
	0x70, 0x6f, 0x72, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x1b, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x29, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f,
	0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x50, 0x6f, 0x72, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x0a, 0x70, 0x6f, 0x72,
	0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x3d, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x65,
	0x73, 0x18, 0x1c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61,
	0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x52, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
	0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x25, 0x0a,
	0x0e, 0x62, 0x69, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18,
	0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x62, 0x69, 0x6f, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72,
	0x66, 0x61, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x6f, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x62, 0x6f,
	0x6f, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x63,
	0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65,
	0x18, 0x20, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x49,
	0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x70, 0x6c,
	0x6f, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x21, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x22, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10,
	0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65,
	0x12, 0x31, 0x0a, 0x14, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x23, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13,
	0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10,
	0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65,
	0x12, 0x27, 0x0a, 0x0f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66,
	0x61, 0x63, 0x65, 0x18, 0x25, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6f, 0x77, 0x65, 0x72,
	0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x61, 0x69,
	0x64, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x26, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0d, 0x72, 0x61, 0x69, 0x64, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65,
	0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x73, 0x63, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x66, 0x61, 0x63, 0x65, 0x18, 0x27, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x63,
	0x75, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x73,
	0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65,
	0x18, 0x28, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x49,
	0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x3d, 0x0a, 0x06, 0x74, 0x72, 0x61, 0x69,
	0x74, 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x74, 0x73, 0x52,
	0x06, 0x74, 0x72, 0x61, 0x69, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x76, 0x65, 0x6e, 0x64, 0x6f,
	0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x2a, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0f, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61,
	0x63, 0x65, 0x12, 0x3d, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x2b, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53,
	0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x67,
	0x72, 0x6f, 0x75, 0x70, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x64,
	0x75, 0x63, 0x74, 0x6f, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72,
	0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x70,
	0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x74,
	0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x2e, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x52, 0x65, 0x61,
	0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x2f, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x73,
	0x73, 0x65, 0x65, 0x18, 0x30, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x65, 0x73, 0x73, 0x65,
	0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x31, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x32, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e,
	0x64, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x33, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f,
	0x6e, 0x64, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x63,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x34, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x75, 0x69, 0x64,
	0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x35,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12,
	0x34, 0x0a, 0x16, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x69,
	0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x36, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x14, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73,
	0x68, 0x65, 0x64, 0x41, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x37,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x4e, 0x0a, 0x0c, 0x6e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x39, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x2b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77,
	0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0b, 0x6e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x72, 0x6f,
	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
	0x74, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69,
	0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x72,
	0x65, 0x74, 0x69, 0x72, 0x65, 0x64, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65,
	0x74, 0x69, 0x72, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x69, 0x72, 0x65, 0x64,
	0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72,
	0x65, 0x74, 0x69, 0x72, 0x65, 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12,
	0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73,
	0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x40,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x0c,
	0x0a, 0x0a, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x1a, 0x0d, 0x0a, 0x0b,
	0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x1a, 0x57, 0x0a, 0x0b, 0x44,
	0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x70,
	0x6d, 0x69, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0c, 0x69, 0x70, 0x6d, 0x69, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12,
	0x23, 0x0a, 0x0d, 0x69, 0x70, 0x6d, 0x69, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x70, 0x6d, 0x69, 0x55, 0x73, 0x65, 0x72,
	0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x37, 0x0a, 0x14, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x0b,
	0x63, 0x6c, 0x65, 0x61, 0x6e, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0a, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x74, 0x65, 0x70, 0x73, 0x1a, 0x07, 0x0a,
	0x05, 0x45, 0x78, 0x74, 0x72, 0x61, 0x1a, 0x0f, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
	0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b, 0x73,
	0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x0e, 0x0a, 0x0c, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x32, 0x0a, 0x0a, 0x50, 0x6f, 0x72, 0x74, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x2d, 0x0a, 0x05, 0x50, 0x6f,
	0x72, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x0c, 0x0a, 0x0a, 0x50, 0x72, 0x6f,
	0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x1a, 0x0d, 0x0a, 0x0b, 0x52, 0x61, 0x69, 0x64, 0x5f,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x2e, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73,
	0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x14, 0x0a, 0x12, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74,
	0x5f, 0x72, 0x61, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x2e, 0x0a, 0x06,
	0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65,
	0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x08, 0x0a, 0x06,
	0x54, 0x72, 0x61, 0x69, 0x74, 0x73, 0x22, 0xb3, 0x02, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e,
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x46, 0x6f,
	0x72, 0x6d, 0x61, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x66, 0x6f, 0x72,
	0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x69, 0x73, 0x6b, 0x46,
	0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x69, 0x73,
	0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x44, 0x69, 0x73, 0x6b,
	0x12, 0x17, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x06, 0x6d, 0x69, 0x6e, 0x52, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a,
	0x09, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x09, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x04, 0x74,
	0x61, 0x67, 0x73, 0x18, 0x2b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73,
	0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x2c,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x06, 0x0a, 0x04,
	0x54, 0x61, 0x67, 0x73, 0x22, 0xe7, 0x07, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49,
	0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4c, 0x6f, 0x63, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x1e, 0x4f, 0x70, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x63,
	0x6b, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x6d,
	0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1e, 0x4f, 0x70,
	0x65, 0x6e, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2d, 0x69, 0x6d,
	0x70, 0x6f, 0x72, 0x74, 0x2d, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x12, 0x3c, 0x0a, 0x19,
	0x4f, 0x70, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f,
	0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x19, 0x4f, 0x70, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65,
	0x2d, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2d, 0x69, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x68,
	0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x68,
	0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
	0x6e, 0x65, 0x72, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x6d, 0x61,
	0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
	0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x69, 0x73, 0x6b, 0x46, 0x6f, 0x72, 0x6d, 0x61,
	0x74, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x69, 0x73,
	0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x44, 0x69, 0x73, 0x6b,
	0x12, 0x17, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x06, 0x6d, 0x69, 0x6e, 0x52, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a,
	0x0c, 0x6f, 0x73, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x61, 0x6c, 0x67, 0x6f, 0x18, 0x0d, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x73, 0x48, 0x61, 0x73, 0x68, 0x41, 0x6c, 0x67, 0x6f, 0x12,
	0x22, 0x0a, 0x0d, 0x6f, 0x73, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x73, 0x48, 0x61, 0x73, 0x68, 0x56, 0x61,
	0x6c, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x73, 0x5f, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e,
	0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x73, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e,
	0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x10, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x14,
	0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f,
	0x77, 0x6e, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x12,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x12, 0x0a, 0x04,
	0x73, 0x65, 0x6c, 0x66, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x65, 0x6c, 0x66,
	0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04,
	0x73, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x15,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76,
	0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x76,
	0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x0b, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d,
	0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x19, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x33, 0x0a,
	0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x1a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6d,
	0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x52, 0x04, 0x74, 0x61,
	0x67, 0x73, 0x12, 0x42, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
	0x1b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x09, 0x6c, 0x6f, 0x63,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x1c,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73,
	0x67, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x06, 0x0a, 0x04, 0x54, 0x61, 0x67,
	0x73, 0x1a, 0x0b, 0x0a, 0x09, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x41,
	0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x12,
	0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
	0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
	0x6d, 0x22, 0xda, 0x06, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x05, 0x66, 0x69, 0x72, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x65,
	0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x65, 0x78, 0x74, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x38, 0x0a, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73,
	0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73,
	0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
	0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f,
	0x6d, 0x73, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x4d, 0x73, 0x67, 0x1a, 0x80, 0x05, 0x0a, 0x06, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x04, 0x74, 0x61,
	0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x29,
	0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x66, 0x6f, 0x72, 0x6d,
	0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
	0x6e, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x6b,
	0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64,
	0x69, 0x73, 0x6b, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x73, 0x69,
	0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x69,
	0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, 0x6c, 0x66,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x65, 0x6c, 0x66, 0x12, 0x19, 0x0a, 0x08,
	0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07,
	0x6d, 0x69, 0x6e, 0x44, 0x69, 0x73, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x74, 0x65,
	0x63, 0x74, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x74,
	0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0d, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x68, 0x65,
	0x63, 0x6b, 0x73, 0x75, 0x6d, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x68, 0x65,
	0x63, 0x6b, 0x73, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0c, 0x6f, 0x73, 0x5f, 0x68, 0x61, 0x73, 0x68,
	0x5f, 0x61, 0x6c, 0x67, 0x6f, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x73, 0x48,
	0x61, 0x73, 0x68, 0x41, 0x6c, 0x67, 0x6f, 0x12, 0x22, 0x0a, 0x0d, 0x6f, 0x73, 0x5f, 0x68, 0x61,
	0x73, 0x68, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
	0x6f, 0x73, 0x48, 0x61, 0x73, 0x68, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6f,
	0x73, 0x5f, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08,
	0x6f, 0x73, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65,
	0x72, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x12,
	0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x69,
	0x7a, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6d, 0x18, 0x14, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x69, 0x6e, 0x52, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73,
	0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x68,
	0x65, 0x6d, 0x61, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x73,
	0x69, 0x7a, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x76, 0x69, 0x72, 0x74, 0x75,
	0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x1a, 0x06, 0x0a, 0x04, 0x54, 0x61, 0x67, 0x73, 0x22, 0x47,
	0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71,
	0x12, 0x19, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x07, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70,
	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70,
	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x54, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f,
	0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10,
	0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67,
	0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x49, 0x0a,
	0x10, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4f, 0x73, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65,
	0x71, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x56, 0x0a, 0x11, 0x55, 0x70, 0x6c, 0x6f,
	0x61, 0x64, 0x4f, 0x73, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a,
	0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64,
	0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
	0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67,
	0x22, 0xca, 0x02, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73,
	0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
	0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
	0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x54, 0x65, 0x6e, 0x61,
	0x6e, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x73, 0x6f, 0x72, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a,
	0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f,
	0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x1d, 0x0a,
	0x0a, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x09, 0x77, 0x69, 0x74, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63,
	0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73, 0x51, 0x75, 0x6f,
	0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41,
	0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xa8, 0x02,
	0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x3c, 0x0a, 0x07, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x56,
	0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x52, 0x07, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x12,
	0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d,
	0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d,
	0x73, 0x67, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68,
	0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12,
	0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65,
	0x6c, 0x1a, 0x65, 0x0a, 0x07, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x12, 0x0e, 0x0a, 0x02,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x36, 0x0a, 0x05,
	0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75,
	0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x52, 0x05, 0x6c,
	0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xb1, 0x02, 0x0a, 0x14, 0x4c, 0x69, 0x73,
	0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65,
	0x71, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x54, 0x65, 0x6e, 0x61, 0x6e,
	0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x04, 0x73, 0x6f, 0x72, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06,
	0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x66,
	0x66, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a,
	0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x09, 0x77, 0x69, 0x74, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f,
	0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x09, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73, 0x51, 0x75, 0x6f, 0x74,
	0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x9d, 0x0e, 0x0a,
	0x15, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61,
	0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x07, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x44,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x07, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x12,
	0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63,
	0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d,
	0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d,
	0x73, 0x67, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68,
	0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12,
	0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65,
	0x6c, 0x1a, 0xd2, 0x01, 0x0a, 0x0b, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74,
	0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x23,
	0x0a, 0x0d, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e,
	0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f,
	0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68,
	0x65, 0x64, 0x41, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x4e, 0x61, 0x6d,
	0x65, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x16,
	0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x1a, 0x0a, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x1a, 0xe7, 0x0a, 0x0a, 0x0c, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x44, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x3c, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b,
	0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x12, 0x4e, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18,
	0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x44, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65,
	0x6e, 0x74, 0x73, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73,
	0x12, 0x2b, 0x0a, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
	0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x76, 0x61,
	0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x34, 0x0a,
	0x15, 0x6f, 0x73, 0x5f, 0x76, 0x6f, 0x6c, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x61, 0x74, 0x74,
	0x72, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x6f, 0x73,
	0x2d, 0x76, 0x6f, 0x6c, 0x2d, 0x68, 0x6f, 0x73, 0x74, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x3a, 0x68,
	0x6f, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65,
	0x64, 0x12, 0x2a, 0x0a, 0x11, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
	0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x6e,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x1d, 0x0a,
	0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x2d, 0x0a, 0x12,
	0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73,
	0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0a, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04,
	0x73, 0x69, 0x7a, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65,
	0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x1c, 0x6f, 0x73, 0x5f,
	0x76, 0x6f, 0x6c, 0x5f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x5f,
	0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x1c, 0x6f, 0x73, 0x2d, 0x76, 0x6f, 0x6c, 0x2d, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2d, 0x61,
	0x74, 0x74, 0x72, 0x3a, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x12, 0x46, 0x0a,
	0x1e, 0x6f, 0x73, 0x5f, 0x76, 0x6f, 0x6c, 0x5f, 0x6d, 0x69, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x5f, 0x6d, 0x69, 0x67, 0x73, 0x74, 0x61, 0x74, 0x18,
	0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1e, 0x6f, 0x73, 0x2d, 0x76, 0x6f, 0x6c, 0x2d, 0x6d, 0x69,
	0x67, 0x2d, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x3a, 0x6d, 0x69,
	0x67, 0x73, 0x74, 0x61, 0x74, 0x12, 0x45, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
	0x61, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x44,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x61,
	0x74, 0x74, 0x61, 0x63, 0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6d, 0x75, 0x6c,
	0x74, 0x69, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x5f, 0x76, 0x6f, 0x6c, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x56, 0x6f, 0x6c, 0x69, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x63,
	0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f,
	0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73,
	0x74, 0x65, 0x6e, 0x63, 0x79, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x1e,
	0x6f, 0x73, 0x5f, 0x76, 0x6f, 0x6c, 0x5f, 0x6d, 0x69, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x17,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x1e, 0x6f, 0x73, 0x2d, 0x76, 0x6f, 0x6c, 0x2d, 0x6d, 0x69, 0x67,
	0x2d, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x3a, 0x6e, 0x61, 0x6d,
	0x65, 0x5f, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x74, 0x61, 0x62, 0x6c, 0x65,
	0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x74, 0x61, 0x62, 0x6c, 0x65,
	0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x19,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12,
	0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1a,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65,
	0x12, 0x24, 0x0a, 0x0e, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f,
	0x69, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x54, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f,
	0x69, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49,
	0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64,
	0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
	0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x75,
	0x69, 0x64, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x55, 0x75, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f,
	0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73,
	0x68, 0x61, 0x72, 0x65, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c,
	0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x20, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12,
	0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x71, 0x75, 0x6f, 0x74,
	0x61, 0x18, 0x21, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65,
	0x73, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
	0x22, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xf7, 0x02, 0x0a,
	0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x71,
	0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12,
	0x39, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x2e, 0x56, 0x6f, 0x6c, 0x75,
	0x6d, 0x65, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c,
	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x0a, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x1a, 0xe1, 0x01, 0x0a, 0x06, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x12, 0x0a,
	0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x69, 0x7a,
	0x65, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
	0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x76,
	0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x12,
	0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54,
	0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
	0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x52, 0x65, 0x71, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65,
	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xaa, 0x0b, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3a, 0x0a, 0x06, 0x76,
	0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f,
	0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52,
	0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d,
	0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a,
	0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69,
	0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x0a, 0x0a, 0x08, 0x4d, 0x65, 0x74,
	0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x86, 0x08, 0x0a, 0x06, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x12, 0x49, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0b,
	0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x61,
	0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69,
	0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x74,
	0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x74,
	0x61, 0x62, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x65,
	0x6e, 0x63, 0x79, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x12, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
	0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70,
	0x74, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, 0x6e, 0x63, 0x72, 0x79,
	0x70, 0x74, 0x65, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x37, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x09, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x40, 0x0a,
	0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4d, 0x65, 0x74,
	0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12,
	0x29, 0x0a, 0x10, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x69, 0x67, 0x72, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x75,
	0x6c, 0x74, 0x69, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0b, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x12, 0x12, 0x0a, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x72, 0x65,
	0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
	0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73,
	0x69, 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68,
	0x6f, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x76,
	0x6f, 0x6c, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x56, 0x6f, 0x6c, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
	0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x13, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x17,
	0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f,
	0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x5f, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f,
	0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64,
	0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f,
	0x75, 0x75, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x55, 0x75, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x68, 0x61, 0x72, 0x65,
	0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0d, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x12, 0x21,
	0x0a, 0x0c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x1a,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x61, 0x6d,
	0x65, 0x12, 0x24, 0x0a, 0x0e, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x5f, 0x69, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x54, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x73, 0x75,
	0x6d, 0x65, 0x73, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x1a, 0xd2,
	0x01, 0x0a, 0x0b, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1b,
	0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61,
	0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64,
	0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x41,
	0x74, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b,
	0x0a, 0x09, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64,
	0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x76,
	0x69, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x22, 0x7a, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x6f, 0x6c,
	0x75, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x61, 0x73, 0x63, 0x61, 0x64, 0x65, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x61, 0x73, 0x63, 0x61, 0x64, 0x65, 0x12, 0x14, 0x0a,
	0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6f,
	0x72, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22,
	0x55, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xa6, 0x02, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x6f,
	0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76,
	0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x52, 0x65, 0x71, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75,
	0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x1e,
	0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x7f,
	0x0a, 0x06, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3f,
	0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x2e, 0x4d, 0x65, 0x74,
	0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22,
	0xbe, 0x0b, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x3a, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
	0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f,
	0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72,
	0x4d, 0x73, 0x67, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04,
	0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x72, 0x65, 0x66,
	0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72,
	0x65, 0x6c, 0x1a, 0x1e, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12,
	0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x1a, 0x86, 0x08, 0x0a, 0x06, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x49, 0x0a,
	0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0b, 0x61, 0x74, 0x74,
	0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x76, 0x61, 0x69,
	0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
	0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x74, 0x61, 0x62, 0x6c,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x74, 0x61, 0x62, 0x6c,
	0x65, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x79,
	0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12,
	0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41,
	0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65,
	0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
	0x64, 0x12, 0x37, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4c, 0x69,
	0x6e, 0x6b, 0x73, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x40, 0x0a, 0x08, 0x6d, 0x65,
	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56,
	0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x29, 0x0a, 0x10,
	0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x75, 0x6c, 0x74, 0x69,
	0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6d, 0x75,
	0x6c, 0x74, 0x69, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a,
	0x12, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6c, 0x69,
	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04,
	0x73, 0x69, 0x7a, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65,
	0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18,
	0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x49,
	0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x76, 0x6f, 0x6c, 0x69,
	0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x56,
	0x6f, 0x6c, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x12,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x75,
	0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73,
	0x65, 0x72, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69,
	0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64,
	0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
	0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49,
	0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x75, 0x69,
	0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x55, 0x75, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x74,
	0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x68,
	0x61, 0x72, 0x65, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24,
	0x0a, 0x0e, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64,
	0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79,
	0x70, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73,
	0x5f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x63, 0x6f,
	0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x1a, 0xd2, 0x01, 0x0a, 0x0b,
	0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x74, 0x74, 0x61,
	0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a,
	0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1b,
	0x0a, 0x09, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x76,
	0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69,
	0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
	0x22, 0x53, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x44, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09,
	0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61,
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xae, 0x0a, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c,
	0x75, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x43, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65,
	0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x6f, 0x6c, 0x75,
	0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x6f, 0x6c,
	0x75, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x2d, 0x0a, 0x05, 0x4c, 0x69, 0x6e, 0x6b,
	0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x68, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x1a, 0x0a, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64,
	0x61, 0x74, 0x61, 0x1a, 0x0d, 0x0a, 0x0b, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e,
	0x74, 0x73, 0x1a, 0xa1, 0x08, 0x0a, 0x06, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x52, 0x0a,
	0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47,
	0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64,
	0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d,
	0x65, 0x6e, 0x74, 0x73, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74,
	0x73, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
	0x79, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x76,
	0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x1a,
	0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x62, 0x6f, 0x6f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f,
	0x6e, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69,
	0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74,
	0x65, 0x6e, 0x63, 0x79, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09,
	0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x09, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x40, 0x0a, 0x05, 0x6c, 0x69,
	0x6e, 0x6b, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x44,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e,
	0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x49, 0x0a, 0x08,
	0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x6f,
	0x6c, 0x75, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64,
	0x52, 0x65, 0x73, 0x70, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d,
	0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x69, 0x67, 0x72, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x61, 0x74, 0x74, 0x61, 0x63,
	0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x61, 0x74,
	0x74, 0x61, 0x63, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x70, 0x6c,
	0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x12,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18,
	0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73,
	0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0a, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x76, 0x6f, 0x6c, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x56, 0x6f, 0x6c, 0x69, 0x64, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69,
	0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12,
	0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x19,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65,
	0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
	0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49,
	0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x1b, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x1c, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x55, 0x75, 0x69, 0x64, 0x12,
	0x25, 0x0a, 0x0e, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
	0x73, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x54,
	0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c,
	0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x76, 0x6f, 0x6c,
	0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x1f, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12,
	0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x71, 0x75, 0x6f, 0x74,
	0x61, 0x18, 0x20, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65,
	0x73, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x22, 0xc6, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x56,
	0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a,
	0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04,
	0x73, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6f, 0x72, 0x74,
	0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x14, 0x0a,
	0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69,
	0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d,
	0x61, 0x72, 0x6b, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x61, 0x72,
	0x6b, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22,
	0x88, 0x04, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79,
	0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4e, 0x0a, 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f,
	0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x56, 0x6f,
	0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x52, 0x0b, 0x76, 0x6f, 0x6c, 0x75,
	0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d,
	0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a,
	0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x31, 0x0a, 0x0b, 0x45, 0x78,
	0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x61, 0x70,
	0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0xaa, 0x02,
	0x0a, 0x0c, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x20,
	0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x12, 0x4b, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63,
	0x73, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x0e, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a,
	0x09, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x08, 0x69, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x48,
	0x0a, 0x1f, 0x6f, 0x73, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69,
	0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1f, 0x6f, 0x73, 0x2d, 0x76, 0x6f, 0x6c, 0x75,
	0x6d, 0x65, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x2d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x3a, 0x69,
	0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x20, 0x0a, 0x0c, 0x71, 0x6f, 0x73, 0x5f,
	0x73, 0x70, 0x65, 0x63, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
	0x71, 0x6f, 0x73, 0x53, 0x70, 0x65, 0x63, 0x73, 0x49, 0x64, 0x22, 0x8e, 0x03, 0x0a, 0x13, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52,
	0x65, 0x71, 0x12, 0x4b, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x31, 0x0a, 0x0b, 0x45,
	0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x61,
	0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0xda,
	0x01, 0x0a, 0x0b, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12,
	0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x1f, 0x6f, 0x73, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x73,
	0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1f, 0x6f,
	0x73, 0x2d, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x2d, 0x61, 0x63,
	0x63, 0x65, 0x73, 0x73, 0x3a, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x4b,
	0x0a, 0x0b, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65,
	0x52, 0x65, 0x71, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x52,
	0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x53, 0x70, 0x65, 0x63, 0x73, 0x22, 0xe5, 0x03, 0x0a, 0x14,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x4c, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75,
	0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79,
	0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x31, 0x0a, 0x0b, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73,
	0x70, 0x65, 0x63, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69,
	0x74, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x61, 0x70, 0x61,
	0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0x88, 0x02, 0x0a, 0x0b, 0x56, 0x6f, 0x6c,
	0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4c, 0x0a, 0x0b,
	0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x2b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x52, 0x0a,
	0x65, 0x78, 0x74, 0x72, 0x61, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x48, 0x0a, 0x1f, 0x6f, 0x73,
	0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x61, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x5f, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x1f, 0x6f, 0x73, 0x2d, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x2d, 0x74,
	0x79, 0x70, 0x65, 0x2d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x3a, 0x69, 0x73, 0x5f, 0x70, 0x75,
	0x62, 0x6c, 0x69, 0x63, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69,
	0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69,
	0x63, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
	0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x22, 0x57, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x6f, 0x6c,
	0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0e, 0x76, 0x6f,
	0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x49, 0x64,
	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x59, 0x0a, 0x14,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x32, 0xb5, 0x3f, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x12, 0x53, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70,
	0x75, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65,
	0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65,
	0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x50, 0x0a, 0x0f, 0x47, 0x65,
	0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x1d, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c,
	0x75, 0x6d, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75,
	0x6d, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x44, 0x0a, 0x0b,
	0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x19, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x5c, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x22, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x47, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x65, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73,
	0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x12, 0x24, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52,
	0x65, 0x71, 0x1a, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47,
	0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65,
	0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x44, 0x0a, 0x0b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x12, 0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x74,
	0x61, 0x72, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x41, 0x0a, 0x0a, 0x53, 0x74, 0x6f, 0x70,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x18, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71,
	0x1a, 0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x74, 0x6f,
	0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x52,
	0x65, 0x62, 0x6f, 0x6f, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x53, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x44, 0x0a, 0x0b, 0x50, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x12, 0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x50, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1a,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x50, 0x61, 0x75, 0x73, 0x65,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4a, 0x0a, 0x0d, 0x55, 0x6e,
	0x70, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1b, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x6e, 0x70, 0x61, 0x75, 0x73, 0x65, 0x53,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x6e, 0x70, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4a, 0x0a, 0x0d, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c,
	0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52,
	0x65, 0x73, 0x69, 0x7a, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x73, 0x69, 0x7a,
	0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4a, 0x0a, 0x0d, 0x4d,
	0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1b, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x53, 0x68, 0x65, 0x6c, 0x76,
	0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x53, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x4d, 0x0a, 0x0e, 0x55, 0x6e, 0x73, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x12, 0x1c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55,
	0x6e, 0x73, 0x68, 0x65, 0x6c, 0x76, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71,
	0x1a, 0x1d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x6e, 0x73,
	0x68, 0x65, 0x6c, 0x76, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x77, 0x0a, 0x1c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x69, 0x73,
	0x74, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12,
	0x2a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x68, 0x61, 0x6e,
	0x67, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65,
	0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x2b, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x64,
	0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x50, 0x61, 0x73, 0x73,
	0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x63,
	0x75, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x73, 0x63, 0x75, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x52, 0x65, 0x73, 0x63, 0x75, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x47, 0x0a, 0x08, 0x55, 0x6e, 0x52, 0x65, 0x73, 0x63, 0x75, 0x65, 0x12, 0x1c, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x6e, 0x52, 0x65, 0x73, 0x63,
	0x75, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x6e, 0x52, 0x65, 0x73, 0x63, 0x75, 0x65,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4a, 0x0a, 0x0d, 0x53, 0x75,
	0x73, 0x70, 0x65, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1b, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x53,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x6b, 0x0a, 0x18, 0x41, 0x64, 0x64, 0x53, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x12, 0x26, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x41,
	0x64, 0x64, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x54,
	0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x27, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x41, 0x64, 0x64, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x5c, 0x0a, 0x13, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x22, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65,
	0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x56, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x73,
	0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x73, 0x44, 0x65,
	0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x73, 0x44,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76,
	0x6f, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76,
	0x6f, 0x72, 0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x59, 0x0a, 0x12, 0x53,
	0x68, 0x6f, 0x77, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x73, 0x12, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68,
	0x6f, 0x77, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x53, 0x68, 0x6f, 0x77, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69,
	0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4a, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x4a, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x12, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71,
	0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47,
	0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x1a,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4a, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x59, 0x0a, 0x12, 0x42, 0x75, 0x6c, 0x6b, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x42, 0x75, 0x6c, 0x6b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x42, 0x75, 0x6c, 0x6b, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47,
	0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x12, 0x1a,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62,
	0x6e, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x44, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x53,
	0x75, 0x62, 0x6e, 0x65, 0x74, 0x73, 0x12, 0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x73, 0x52, 0x65,
	0x71, 0x1a, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a,
	0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x12, 0x1a, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6e,
	0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52,
	0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x6e, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x27, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e,
	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e,
	0x67, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x28, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x6b, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65,
	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x26, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73,
	0x52, 0x65, 0x71, 0x1a, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65,
	0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x71, 0x0a, 0x1a,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x28, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x65, 0x74,
	0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65,
	0x73, 0x52, 0x65, 0x71, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65,
	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x71, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x28, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61,
	0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x7d, 0x0a, 0x1e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74,
	0x61, 0x69, 0x6c, 0x73, 0x12, 0x2c, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d,
	0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52,
	0x65, 0x71, 0x1a, 0x2d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53,
	0x68, 0x6f, 0x77, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e,
	0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x41, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x12,
	0x18, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x3e, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74,
	0x73, 0x12, 0x17, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x41, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f,
	0x72, 0x74, 0x12, 0x18, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50,
	0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x41, 0x0a, 0x0a, 0x55, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x1a,
	0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x50, 0x0a, 0x0f, 0x53, 0x68,
	0x6f, 0x77, 0x50, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1d, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x50, 0x6f,
	0x72, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x50, 0x6f, 0x72,
	0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52,
	0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65,
	0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x44, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x75,
	0x74, 0x65, 0x72, 0x73, 0x12, 0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a,
	0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x56, 0x0a, 0x11, 0x53,
	0x68, 0x6f, 0x77, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x12, 0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f,
	0x77, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65,
	0x71, 0x1a, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68,
	0x6f, 0x77, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75,
	0x74, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a,
	0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52,
	0x6f, 0x75, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65,
	0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x50, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x6f,
	0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x73, 0x12, 0x1d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e,
	0x67, 0x49, 0x50, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67,
	0x49, 0x50, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x53, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x12, 0x1e, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c,
	0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c,
	0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x73, 0x70, 0x12, 0x53, 0x0a, 0x10,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50,
	0x12, 0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x71,
	0x1a, 0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x53, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74,
	0x69, 0x6e, 0x67, 0x49, 0x50, 0x12, 0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67,
	0x49, 0x50, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67,
	0x49, 0x50, 0x52, 0x65, 0x73, 0x70, 0x12, 0x62, 0x0a, 0x15, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x6c,
	0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12,
	0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77,
	0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x73, 0x52, 0x65, 0x71, 0x1a, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x44,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x59, 0x0a, 0x12, 0x4c, 0x69,
	0x73, 0x74, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73,
	0x12, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52,
	0x65, 0x71, 0x1a, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5c, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x21, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a,
	0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x5c, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x22, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x5c, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x22, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69,
	0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x6b, 0x0a, 0x18, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x26, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x52, 0x65, 0x71, 0x1a, 0x27, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5f, 0x0a, 0x14,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f,
	0x6c, 0x69, 0x63, 0x79, 0x12, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50,
	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x1a, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5f, 0x0a,
	0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50,
	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c,
	0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x1a, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5f,
	0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f,
	0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x12, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50,
	0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x23, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x6e, 0x0a, 0x19, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50,
	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x27, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69,
	0x6c, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x28, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f,
	0x6c, 0x69, 0x63, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x59, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c,
	0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61,
	0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x59, 0x0a, 0x12, 0x44, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65,
	0x12, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x52,
	0x65, 0x71, 0x1a, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x56, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1f, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x72, 0x65, 0x77,
	0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x68, 0x0a,
	0x17, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c,
	0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x52, 0x75, 0x6c, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x1a,
	0x26, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77,
	0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x44, 0x65, 0x74, 0x61,
	0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x59, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x20, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x1a,
	0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x5c, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x22, 0x2e, 0x6f,
	0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70,
	0x12, 0x5c, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69,
	0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x22, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5c,
	0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
	0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
	0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x22, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x56, 0x0a, 0x11,
	0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x12, 0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68,
	0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52,
	0x65, 0x71, 0x1a, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53,
	0x68, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x65, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x63, 0x75,
	0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x24,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65,
	0x73, 0x52, 0x65, 0x71, 0x1a, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f,
	0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x68, 0x0a, 0x17, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f,
	0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
	0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x26, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x62, 0x0a, 0x15, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x63,
	0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x23,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x53,
	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65,
	0x52, 0x65, 0x71, 0x1a, 0x24, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x68, 0x0a, 0x17, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70,
	0x52, 0x75, 0x6c, 0x65, 0x12, 0x25, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x26, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65,
	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x44, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6d, 0x61,
	0x67, 0x65, 0x12, 0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x41, 0x0a, 0x0a, 0x4c, 0x69, 0x73,
	0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x18, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65,
	0x71, 0x1a, 0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x44, 0x0a, 0x0b,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x19, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6d,
	0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x48, 0x0a, 0x0b, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x6d, 0x61, 0x67,
	0x65, 0x12, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70,
	0x6c, 0x6f, 0x61, 0x64, 0x4f, 0x73, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x1c,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61,
	0x64, 0x4f, 0x73, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3e, 0x0a, 0x09,
	0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x17, 0x2e, 0x6f, 0x70, 0x65, 0x6e,
	0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52,
	0x65, 0x71, 0x1a, 0x18, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x41, 0x0a, 0x0a,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x2e, 0x6f, 0x70, 0x65,
	0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64,
	0x65, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x41, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x2e,
	0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x50, 0x0a, 0x0f, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65,
	0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63,
	0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x73, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x44, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75,
	0x6d, 0x65, 0x73, 0x12, 0x19, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56,
	0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x56, 0x0a, 0x11, 0x4c, 0x69,
	0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12,
	0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71,
	0x1a, 0x20, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75,
	0x6d, 0x65, 0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x1b,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x44,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x1a, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x6f,
	0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74,
	0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x6f,
	0x6c, 0x75, 0x6d, 0x65, 0x12, 0x1a, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x71,
	0x1a, 0x1b, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x62, 0x0a,
	0x15, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x12, 0x23, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61,
	0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61,
	0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x24, 0x2e, 0x6f, 0x70,
	0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x50, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54,
	0x79, 0x70, 0x65, 0x73, 0x12, 0x1d, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73,
	0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x54, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c,
	0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1e, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73,
	0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d,
	0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x54, 0x0a, 0x11, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1e,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x1f,
	0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, 0x42,
	0x0c, 0x5a, 0x0a, 0x2f, 0x6f, 0x70, 0x65, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x62, 0x06, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_pcm_openstack_proto_rawDescOnce sync.Once
	file_pcm_openstack_proto_rawDescData = file_pcm_openstack_proto_rawDesc
)

func file_pcm_openstack_proto_rawDescGZIP() []byte {
	file_pcm_openstack_proto_rawDescOnce.Do(func() {
		file_pcm_openstack_proto_rawDescData = protoimpl.X.CompressGZIP(file_pcm_openstack_proto_rawDescData)
	})
	return file_pcm_openstack_proto_rawDescData
}

var file_pcm_openstack_proto_msgTypes = make([]protoimpl.MessageInfo, 475)
var file_pcm_openstack_proto_goTypes = []interface{}{
	(*GetComputeLimitsReq)(nil),                                         // 0: openstack.GetComputeLimitsReq
	(*GetComputeLimitsResp)(nil),                                        // 1: openstack.GetComputeLimitsResp
	(*GetVolumeLimitsReq)(nil),                                          // 2: openstack.GetVolumeLimitsReq
	(*GetVolumeLimitsResp)(nil),                                         // 3: openstack.GetVolumeLimitsResp
	(*ListServersReq)(nil),                                              // 4: openstack.ListServersReq
	(*ListServersResp)(nil),                                             // 5: openstack.ListServersResp
	(*ListServersDetailedReq)(nil),                                      // 6: openstack.ListServersDetailedReq
	(*ListServersDetailedResp)(nil),                                     // 7: openstack.ListServersDetailedResp
	(*CreateServerReq)(nil),                                             // 8: openstack.CreateServerReq
	(*CreateServerResp)(nil),                                            // 9: openstack.CreateServerResp
	(*DeleteServerReq)(nil),                                             // 10: openstack.DeleteServerReq
	(*DeleteServerResp)(nil),                                            // 11: openstack.DeleteServerResp
	(*GetServersDetailedByIdReq)(nil),                                   // 12: openstack.GetServersDetailedByIdReq
	(*GetServersDetailedByIdResp)(nil),                                  // 13: openstack.GetServersDetailedByIdResp
	(*UpdateServerReq)(nil),                                             // 14: openstack.UpdateServerReq
	(*ServerUpdate)(nil),                                                // 15: openstack.ServerUpdate
	(*Server)(nil),                                                      // 16: openstack.Server
	(*UpdateServerResp)(nil),                                            // 17: openstack.UpdateServerResp
	(*StartServerReq)(nil),                                              // 18: openstack.StartServerReq
	(*StartServerResp)(nil),                                             // 19: openstack.StartServerResp
	(*StopServerReq)(nil),                                               // 20: openstack.StopServerReq
	(*StopServerResp)(nil),                                              // 21: openstack.StopServerResp
	(*RebootServerReq)(nil),                                             // 22: openstack.RebootServerReq
	(*RebootServerResp)(nil),                                            // 23: openstack.RebootServerResp
	(*PauseServerReq)(nil),                                              // 24: openstack.PauseServerReq
	(*PauseServerResp)(nil),                                             // 25: openstack.PauseServerResp
	(*RebuildServerReq)(nil),                                            // 26: openstack.RebuildServerReq
	(*RebuildServerResp)(nil),                                           // 27: openstack.RebuildServerResp
	(*ResizeServerReq)(nil),                                             // 28: openstack.ResizeServerReq
	(*ResizeServerResp)(nil),                                            // 29: openstack.ResizeServerResp
	(*MigrateServerReq)(nil),                                            // 30: openstack.MigrateServerReq
	(*MigrateServerResp)(nil),                                           // 31: openstack.MigrateServerResp
	(*ChangeAdministrativePasswordReq)(nil),                             // 32: openstack.ChangeAdministrativePasswordReq
	(*ChangeAdministrativePasswordResp)(nil),                            // 33: openstack.ChangeAdministrativePasswordResp
	(*RescueServerReq)(nil),                                             // 34: openstack.RescueServerReq
	(*RescueServerResp)(nil),                                            // 35: openstack.RescueServerResp
	(*UnRescueServerReq)(nil),                                           // 36: openstack.UnRescueServerReq
	(*UnRescueServerResp)(nil),                                          // 37: openstack.UnRescueServerResp
	(*UnpauseServerReq)(nil),                                            // 38: openstack.UnpauseServerReq
	(*UnpauseServerResp)(nil),                                           // 39: openstack.UnpauseServerResp
	(*ShelveServerReq)(nil),                                             // 40: openstack.ShelveServerReq
	(*ShelveServerResp)(nil),                                            // 41: openstack.ShelveServerResp
	(*UnshelveServerReq)(nil),                                           // 42: openstack.UnshelveServerReq
	(*UnshelveServerResp)(nil),                                          // 43: openstack.UnshelveServerResp
	(*SuspendServerReq)(nil),                                            // 44: openstack.SuspendServerReq
	(*SuspendServerResp)(nil),                                           // 45: openstack.SuspendServerResp
	(*AddSecurityGroupToServerReq)(nil),                                 // 46: openstack.AddSecurityGroupToServerReq
	(*AddSecurityGroupToServerResp)(nil),                                // 47: openstack.AddSecurityGroupToServerResp
	(*RemoveSecurityGroupReq)(nil),                                      // 48: openstack.removeSecurityGroupReq
	(*RemoveSecurityGroupResp)(nil),                                     // 49: openstack.removeSecurityGroupResp
	(*ListFlavorsDetailReq)(nil),                                        // 50: openstack.ListFlavorsDetailReq
	(*ListFlavorsDetailResp)(nil),                                       // 51: openstack.ListFlavorsDetailResp
	(*CreateFlavorReq)(nil),                                             // 52: openstack.CreateFlavorReq
	(*CreateFlavorResp)(nil),                                            // 53: openstack.CreateFlavorResp
	(*DeleteFlavorReq)(nil),                                             // 54: openstack.DeleteFlavorReq
	(*DeleteFlavorResp)(nil),                                            // 55: openstack.DeleteFlavorResp
	(*ShowNetworkDetailsReq)(nil),                                       // 56: openstack.ShowNetworkDetailsReq
	(*Network)(nil),                                                     // 57: openstack.Network
	(*ShowNetworkDetailsResp)(nil),                                      // 58: openstack.ShowNetworkDetailsResp
	(*UpdateNetworkReq)(nil),                                            // 59: openstack.UpdateNetworkReq
	(*UpdateNetworkResp)(nil),                                           // 60: openstack.UpdateNetworkResp
	(*DeleteNetworkReq)(nil),                                            // 61: openstack.DeleteNetworkReq
	(*DeleteNetworkResp)(nil),                                           // 62: openstack.DeleteNetworkResp
	(*ListNetworksReq)(nil),                                             // 63: openstack.ListNetworksReq
	(*ListNetworksResp)(nil),                                            // 64: openstack.ListNetworksResp
	(*CreateNetworkReq)(nil),                                            // 65: openstack.CreateNetworkReq
	(*CreateNetworkResp)(nil),                                           // 66: openstack.CreateNetworkResp
	(*CreateSubnetReq)(nil),                                             // 67: openstack.CreateSubnetReq
	(*CreateSubnetResp)(nil),                                            // 68: openstack.CreateSubnetResp
	(*Subnet)(nil),                                                      // 69: openstack.Subnet
	(*SubnetResp)(nil),                                                  // 70: openstack.SubnetResp
	(*AllocationPools)(nil),                                             // 71: openstack.Allocation_pools
	(*BulkCreateNetworksReq)(nil),                                       // 72: openstack.BulkCreateNetworksReq
	(*BulkCreateNetworksResp)(nil),                                      // 73: openstack.BulkCreateNetworksResp
	(*ListSubnetsReq)(nil),                                              // 74: openstack.ListSubnetsReq
	(*ListSubnetsResp)(nil),                                             // 75: openstack.ListSubnetsResp
	(*DeleteSubnetReq)(nil),                                             // 76: openstack.DeleteSubnetReq
	(*DeleteSubnetResp)(nil),                                            // 77: openstack.DeleteSubnetResp
	(*UpdateSubnetReq)(nil),                                             // 78: openstack.UpdateSubnetReq
	(*UpdateSubnetResp)(nil),                                            // 79: openstack.UpdateSubnetResp
	(*CreateNetworkSegmentRangeReq)(nil),                                // 80: openstack.CreateNetworkSegmentRangeReq
	(*CreateNetworkSegmentRangeResp)(nil),                               // 81: openstack.CreateNetworkSegmentRangeResp
	(*ListNetworkSegmentRangesReq)(nil),                                 // 82: openstack.ListNetworkSegmentRangesReq
	(*ListNetworkSegmentRangesResp)(nil),                                // 83: openstack.ListNetworkSegmentRangesResp
	(*DeleteNetworkSegmentRangesReq)(nil),                               // 84: openstack.DeleteNetworkSegmentRangesReq
	(*DeleteNetworkSegmentRangesResp)(nil),                              // 85: openstack.DeleteNetworkSegmentRangesResp
	(*UpdateNetworkSegmentRangesReq)(nil),                               // 86: openstack.UpdateNetworkSegmentRangesReq
	(*UpdateNetworkSegmentRangesResp)(nil),                              // 87: openstack.UpdateNetworkSegmentRangesResp
	(*ShowNetworkSegmentRangeDetailsReq)(nil),                           // 88: openstack.ShowNetworkSegmentRangeDetailsReq
	(*ShowNetworkSegmentRangeDetailsResp)(nil),                          // 89: openstack.ShowNetworkSegmentRangeDetailsResp
	(*CreatePortReq)(nil),                                               // 90: openstack.CreatePortReq
	(*CreatePortResp)(nil),                                              // 91: openstack.CreatePortResp
	(*ListPortsReq)(nil),                                                // 92: openstack.ListPortsReq
	(*ListPortsResp)(nil),                                               // 93: openstack.ListPortsResp
	(*DeletePortReq)(nil),                                               // 94: openstack.DeletePortReq
	(*DeletePortResp)(nil),                                              // 95: openstack.DeletePortResp
	(*UpdatePortReq)(nil),                                               // 96: openstack.UpdatePortReq
	(*UpdatePortResp)(nil),                                              // 97: openstack.UpdatePortResp
	(*ShowPortDetailsReq)(nil),                                          // 98: openstack.ShowPortDetailsReq
	(*ShowPortDetailsResp)(nil),                                         // 99: openstack.ShowPortDetailsResp
	(*ListRoutersReq)(nil),                                              // 100: openstack.ListRoutersReq
	(*ListRoutersResp)(nil),                                             // 101: openstack.ListRoutersResp
	(*CreateRouterReq)(nil),                                             // 102: openstack.CreateRouterReq
	(*CreateRouterResp)(nil),                                            // 103: openstack.CreateRouterResp
	(*UpdateRouterReq)(nil),                                             // 104: openstack.UpdateRouterReq
	(*UpdateRouterResp)(nil),                                            // 105: openstack.UpdateRouterResp
	(*ShowRouterDetailsReq)(nil),                                        // 106: openstack.ShowRouterDetailsReq
	(*ShowRouterDetailsResp)(nil),                                       // 107: openstack.ShowRouterDetailsResp
	(*DeleteRouterReq)(nil),                                             // 108: openstack.DeleteRouterReq
	(*DeleteRouterResp)(nil),                                            // 109: openstack.DeleteRouterResp
	(*ListFloatingIPsReq)(nil),                                          // 110: openstack.ListFloatingIPsReq
	(*ListFloatingIPsResp)(nil),                                         // 111: openstack.ListFloatingIPsResp
	(*CreateFloatingIPReq)(nil),                                         // 112: openstack.CreateFloatingIPReq
	(*CreateFloatingIPResp)(nil),                                        // 113: openstack.CreateFloatingIPResp
	(*UpdateFloatingIPReq)(nil),                                         // 114: openstack.UpdateFloatingIPReq
	(*UpdateFloatingIPResp)(nil),                                        // 115: openstack.UpdateFloatingIPResp
	(*DeleteFloatingIPReq)(nil),                                         // 116: openstack.DeleteFloatingIPReq
	(*DeleteFloatingIPResp)(nil),                                        // 117: openstack.DeleteFloatingIPResp
	(*ShowFloatingIPDetailsReq)(nil),                                    // 118: openstack.ShowFloatingIPDetailsReq
	(*ShowFloatingIPDetailsResp)(nil),                                   // 119: openstack.ShowFloatingIPDetailsResp
	(*ListFirewallGroupsReq)(nil),                                       // 120: openstack.ListFirewallGroupsReq
	(*ListFirewallGroupsResp)(nil),                                      // 121: openstack.ListFirewallGroupsResp
	(*DeleteFirewallGroupReq)(nil),                                      // 122: openstack.DeleteFirewallGroupReq
	(*DeleteFirewallGroupResp)(nil),                                     // 123: openstack.DeleteFirewallGroupResp
	(*CreateFirewallGroupReq)(nil),                                      // 124: openstack.CreateFirewallGroupReq
	(*CreateFirewallGroupResp)(nil),                                     // 125: openstack.CreateFirewallGroupResp
	(*UpdateFirewallGroupReq)(nil),                                      // 126: openstack.UpdateFirewallGroupReq
	(*UpdateFirewallGroupResp)(nil),                                     // 127: openstack.UpdateFirewallGroupResp
	(*ShowFirewallGroupDetailsReq)(nil),                                 // 128: openstack.ShowFirewallGroupDetailsReq
	(*ShowFirewallGroupDetailsResp)(nil),                                // 129: openstack.ShowFirewallGroupDetailsResp
	(*CreateFirewallPolicyReq)(nil),                                     // 130: openstack.CreateFirewallPolicyReq
	(*CreateFirewallPolicyResp)(nil),                                    // 131: openstack.CreateFirewallPolicyResp
	(*DeleteFirewallPolicyReq)(nil),                                     // 132: openstack.DeleteFirewallPolicyReq
	(*DeleteFirewallPolicyResp)(nil),                                    // 133: openstack.DeleteFirewallPolicyResp
	(*ListFirewallPoliciesReq)(nil),                                     // 134: openstack.ListFirewallPoliciesReq
	(*ListFirewallPoliciesResp)(nil),                                    // 135: openstack.ListFirewallPoliciesResp
	(*ShowFirewallPolicyDetailsReq)(nil),                                // 136: openstack.ShowFirewallPolicyDetailsReq
	(*ShowFirewallPolicyDetailsResp)(nil),                               // 137: openstack.ShowFirewallPolicyDetailsResp
	(*CreateFirewallRuleReq)(nil),                                       // 138: openstack.CreateFirewallRuleReq
	(*CreateFirewallRuleResp)(nil),                                      // 139: openstack.CreateFirewallRuleResp
	(*DeleteFirewallRuleReq)(nil),                                       // 140: openstack.DeleteFirewallRuleReq
	(*DeleteFirewallRuleResp)(nil),                                      // 141: openstack.DeleteFirewallRuleResp
	(*ListFirewallRulesReq)(nil),                                        // 142: openstack.ListFirewallRulesReq
	(*ListFirewallRulesResp)(nil),                                       // 143: openstack.ListFirewallRulesResp
	(*ShowFirewallRuleDetailsReq)(nil),                                  // 144: openstack.ShowFirewallRuleDetailsReq
	(*ShowFirewallRuleDetailsResp)(nil),                                 // 145: openstack.ShowFirewallRuleDetailsResp
	(*ListSecurityGroupsReq)(nil),                                       // 146: openstack.ListSecurityGroupsReq
	(*ListSecurityGroupsResp)(nil),                                      // 147: openstack.ListSecurityGroupsResp
	(*CreateSecurityGroupReq)(nil),                                      // 148: openstack.CreateSecurityGroupReq
	(*CreateSecurityGroupResp)(nil),                                     // 149: openstack.CreateSecurityGroupResp
	(*DeleteSecurityGroupReq)(nil),                                      // 150: openstack.DeleteSecurityGroupReq
	(*DeleteSecurityGroupResp)(nil),                                     // 151: openstack.DeleteSecurityGroupResp
	(*UpdateSecurityGroupReq)(nil),                                      // 152: openstack.UpdateSecurityGroupReq
	(*UpdateSecurityGroupResp)(nil),                                     // 153: openstack.UpdateSecurityGroupResp
	(*ShowSecurityGroupReq)(nil),                                        // 154: openstack.ShowSecurityGroupReq
	(*ShowSecurityGroupResp)(nil),                                       // 155: openstack.ShowSecurityGroupResp
	(*ListSecurityGroupRulesReq)(nil),                                   // 156: openstack.ListSecurityGroupRulesReq
	(*ListSecurityGroupRulesResp)(nil),                                  // 157: openstack.ListSecurityGroupRulesResp
	(*CreateSecurityGroupRuleReq)(nil),                                  // 158: openstack.CreateSecurityGroupRuleReq
	(*CreateSecurityGroupRuleResp)(nil),                                 // 159: openstack.CreateSecurityGroupRuleResp
	(*ShowSecurityGroupRuleReq)(nil),                                    // 160: openstack.ShowSecurityGroupRuleReq
	(*ShowSecurityGroupRuleResp)(nil),                                   // 161: openstack.ShowSecurityGroupRuleResp
	(*DeleteSecurityGroupRuleReq)(nil),                                  // 162: openstack.DeleteSecurityGroupRuleReq
	(*DeleteSecurityGroupRuleResp)(nil),                                 // 163: openstack.DeleteSecurityGroupRuleResp
	(*ListNodesReq)(nil),                                                // 164: openstack.ListNodesReq
	(*ListNodesResp)(nil),                                               // 165: openstack.ListNodesResp
	(*CreateNodeReq)(nil),                                               // 166: openstack.CreateNodeReq
	(*CreateNodeResp)(nil),                                              // 167: openstack.CreateNodeResp
	(*DeleteNodeReq)(nil),                                               // 168: openstack.DeleteNodeReq
	(*DeleteNodeResp)(nil),                                              // 169: openstack.DeleteNodeResp
	(*ShowNodeDetailsReq)(nil),                                          // 170: openstack.ShowNodeDetailsReq
	(*ShowNodeDetailsResp)(nil),                                         // 171: openstack.ShowNodeDetailsResp
	(*CreateImageReq)(nil),                                              // 172: openstack.CreateImageReq
	(*Tags)(nil),                                                        // 173: openstack.Tags
	(*CreateImageResp)(nil),                                             // 174: openstack.CreateImageResp
	(*ListImagesReq)(nil),                                               // 175: openstack.ListImagesReq
	(*ListImagesResp)(nil),                                              // 176: openstack.ListImagesResp
	(*DeleteImageReq)(nil),                                              // 177: openstack.DeleteImageReq
	(*DeleteImageResp)(nil),                                             // 178: openstack.DeleteImageResp
	(*UploadOsImageReq)(nil),                                            // 179: openstack.UploadOsImageReq
	(*UploadOsImageResp)(nil),                                           // 180: openstack.UploadOsImageResp
	(*ListVolumesReq)(nil),                                              // 181: openstack.ListVolumesReq
	(*ListVolumesResp)(nil),                                             // 182: openstack.ListVolumesResp
	(*ListVolumesDetailReq)(nil),                                        // 183: openstack.ListVolumesDetailReq
	(*ListVolumesDetailResp)(nil),                                       // 184: openstack.ListVolumesDetailResp
	(*CreateVolumeReq)(nil),                                             // 185: openstack.CreateVolumeReq
	(*CreateVolumeResp)(nil),                                            // 186: openstack.CreateVolumeResp
	(*DeleteVolumeReq)(nil),                                             // 187: openstack.DeleteVolumeReq
	(*DeleteVolumeResp)(nil),                                            // 188: openstack.DeleteVolumeResp
	(*UpdateVolumeReq)(nil),                                             // 189: openstack.UpdateVolumeReq
	(*UpdateVolumeResp)(nil),                                            // 190: openstack.UpdateVolumeResp
	(*GetVolumeDetailedByIdReq)(nil),                                    // 191: openstack.GetVolumeDetailedByIdReq
	(*GetVolumeDetailedByIdResp)(nil),                                   // 192: openstack.GetVolumeDetailedByIdResp
	(*ListVolumeTypesReq)(nil),                                          // 193: openstack.ListVolumeTypesReq
	(*ListVolumeTypesResp)(nil),                                         // 194: openstack.ListVolumeTypesResp
	(*CreateVolumeTypeReq)(nil),                                         // 195: openstack.CreateVolumeTypeReq
	(*CreateVolumeTypeResp)(nil),                                        // 196: openstack.CreateVolumeTypeResp
	(*DeleteVolumeTypeReq)(nil),                                         // 197: openstack.DeleteVolumeTypeReq
	(*DeleteVolumeTypeResp)(nil),                                        // 198: openstack.DeleteVolumeTypeResp
	(*GetComputeLimitsResp_Rate)(nil),                                   // 199: openstack.GetComputeLimitsResp.Rate
	(*GetComputeLimitsResp_Absolute)(nil),                               // 200: openstack.GetComputeLimitsResp.Absolute
	(*GetComputeLimitsResp_Limits)(nil),                                 // 201: openstack.GetComputeLimitsResp.Limits
	(*GetVolumeLimitsResp_Rate)(nil),                                    // 202: openstack.GetVolumeLimitsResp.Rate
	(*GetVolumeLimitsResp_Absolute)(nil),                                // 203: openstack.GetVolumeLimitsResp.Absolute
	(*GetVolumeLimitsResp_Limits)(nil),                                  // 204: openstack.GetVolumeLimitsResp.Limits
	(*ListServersResp_Links)(nil),                                       // 205: openstack.ListServersResp.Links
	(*ListServersResp_Servers)(nil),                                     // 206: openstack.ListServersResp.Servers
	(*ListServersResp_ServersLinks)(nil),                                // 207: openstack.ListServersResp.Servers_links
	(*ListServersDetailedResp_ServersDetailed)(nil),                     // 208: openstack.ListServersDetailedResp.ServersDetailed
	(*CreateServerReq_CrServer)(nil),                                    // 209: openstack.CreateServerReq.CrServer
	(*CreateServerReq_Networks)(nil),                                    // 210: openstack.CreateServerReq.Networks
	(*CreateServerReq_BlockDeviceMappingV2)(nil),                        // 211: openstack.CreateServerReq.Block_device_mapping_v2
	(*CreateServerReq_Metadata)(nil),                                    // 212: openstack.CreateServerReq.Metadata
	(*CreateServerReq_Personality)(nil),                                 // 213: openstack.CreateServerReq.Personality
	(*CreateServerReq_SecurityGroups)(nil),                              // 214: openstack.CreateServerReq.Security_groups
	(*CreateServerReq_Server)(nil),                                      // 215: openstack.CreateServerReq.Server
	(*CreateServerReq_OsSchHntSchedulerHints)(nil),                      // 216: openstack.CreateServerReq.Os_sch_hnt_scheduler_hints
	(*CreateServerResp_Links)(nil),                                      // 217: openstack.CreateServerResp.Links
	(*CreateServerResp_SecurityGroups)(nil),                             // 218: openstack.CreateServerResp.Security_groups
	(*CreateServerResp_Server)(nil),                                     // 219: openstack.CreateServerResp.Server
	(*GetServersDetailedByIdResp_Private)(nil),                          // 220: openstack.GetServersDetailedByIdResp.Private
	(*GetServersDetailedByIdResp_Addresses)(nil),                        // 221: openstack.GetServersDetailedByIdResp.Addresses
	(*GetServersDetailedByIdResp_ExtraSpecs)(nil),                       // 222: openstack.GetServersDetailedByIdResp.Extra_specs
	(*GetServersDetailedByIdResp_Flavor)(nil),                           // 223: openstack.GetServersDetailedByIdResp.Flavor
	(*GetServersDetailedByIdResp_Links)(nil),                            // 224: openstack.GetServersDetailedByIdResp.Links
	(*GetServersDetailedByIdResp_Image)(nil),                            // 225: openstack.GetServersDetailedByIdResp.Image
	(*GetServersDetailedByIdResp_Links1)(nil),                           // 226: openstack.GetServersDetailedByIdResp.Links1
	(*GetServersDetailedByIdResp_Metadata)(nil),                         // 227: openstack.GetServersDetailedByIdResp.Metadata
	(*GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached)(nil), // 228: openstack.GetServersDetailedByIdResp.Os_extended_volumes_volumes_attached
	(*GetServersDetailedByIdResp_Fault)(nil),                            // 229: openstack.GetServersDetailedByIdResp.Fault
	(*GetServersDetailedByIdResp_SecurityGroups)(nil),                   // 230: openstack.GetServersDetailedByIdResp.Security_groups
	(*GetServersDetailedByIdResp_Servers)(nil),                          // 231: openstack.GetServersDetailedByIdResp.Servers
	(*UpdateServerResp_Private)(nil),                                    // 232: openstack.UpdateServerResp.Private
	(*UpdateServerResp_Addresses)(nil),                                  // 233: openstack.UpdateServerResp.Addresses
	(*UpdateServerResp_ExtraSpecs)(nil),                                 // 234: openstack.UpdateServerResp.Extra_specs
	(*UpdateServerResp_Flavor)(nil),                                     // 235: openstack.UpdateServerResp.Flavor
	(*UpdateServerResp_Links)(nil),                                      // 236: openstack.UpdateServerResp.Links
	(*UpdateServerResp_Image)(nil),                                      // 237: openstack.UpdateServerResp.Image
	(*UpdateServerResp_Links1)(nil),                                     // 238: openstack.UpdateServerResp.Links1
	(*UpdateServerResp_Metadata)(nil),                                   // 239: openstack.UpdateServerResp.Metadata
	(*UpdateServerResp_SecurityGroups)(nil),                             // 240: openstack.UpdateServerResp.Security_groups
	(*UpdateServerResp_Server)(nil),                                     // 241: openstack.UpdateServerResp.Server
	nil,                                                                 // 242: openstack.StartServerReq.ActionEntry
	nil,                                                                 // 243: openstack.StopServerReq.ActionEntry
	(*RebootServerReq_Reboot)(nil),                                      // 244: openstack.RebootServerReq.Reboot
	nil,                                                                 // 245: openstack.PauseServerReq.ActionEntry
	(*RebuildServerReq_Rebuild)(nil),                                    // 246: openstack.RebuildServerReq.Rebuild
	(*RebuildServerReq_Metadata)(nil),                                   // 247: openstack.RebuildServerReq.Metadata
	(*RebuildServerReq_Personality)(nil),                                // 248: openstack.RebuildServerReq.Personality
	(*RebuildServerReqTrustedImageCertificates)(nil),                    // 249: openstack.RebuildServerReq.trusted_image_certificates
	(*RebuildServerResp_Private)(nil),                                   // 250: openstack.RebuildServerResp.Private
	(*RebuildServerResp_Addresses)(nil),                                 // 251: openstack.RebuildServerResp.Addresses
	(*RebuildServerResp_ExtraSpecs)(nil),                                // 252: openstack.RebuildServerResp.Extra_specs
	(*RebuildServerResp_Flavor)(nil),                                    // 253: openstack.RebuildServerResp.Flavor
	(*RebuildServerResp_Links)(nil),                                     // 254: openstack.RebuildServerResp.Links
	(*RebuildServerResp_Image)(nil),                                     // 255: openstack.RebuildServerResp.Image
	(*RebuildServerResp_Links1)(nil),                                    // 256: openstack.RebuildServerResp.Links1
	(*RebuildServerResp_Metadata)(nil),                                  // 257: openstack.RebuildServerResp.Metadata
	(*RebuildServerResp_OsExtendedVolumesVolumesAttached)(nil),          // 258: openstack.RebuildServerResp.Os_extended_volumes_volumes_attached
	(*RebuildServerResp_Fault)(nil),                                     // 259: openstack.RebuildServerResp.Fault
	(*RebuildServerResp_SecurityGroups)(nil),                            // 260: openstack.RebuildServerResp.Security_groups
	(*RebuildServerResp_Servers)(nil),                                   // 261: openstack.RebuildServerResp.Servers
	(*ResizeServerReq_Resize)(nil),                                      // 262: openstack.ResizeServerReq.Resize
	nil,                                                                 // 263: openstack.MigrateServerReq.ActionEntry
	(*MigrateServerReq_Migrate)(nil),                                    // 264: openstack.MigrateServerReq.Migrate
	nil,                                                                 // 265: openstack.MigrateServerReq.Migrate.HostEntry
	(*ChangeAdministrativePasswordReq_Changepassword)(nil),              // 266: openstack.ChangeAdministrativePasswordReq.Changepassword
	(*RescueServerReq_Rescue)(nil),                                      // 267: openstack.RescueServerReq.Rescue
	nil,                                                                 // 268: openstack.UnRescueServerReq.ActionEntry
	nil,                                                                 // 269: openstack.UnpauseServerReq.ActionEntry
	nil,                                                                 // 270: openstack.ShelveServerReq.ActionEntry
	nil,                                                                 // 271: openstack.UnshelveServerReq.ActionEntry
	nil,                                                                 // 272: openstack.SuspendServerReq.ActionEntry
	(*AddSecurityGroupToServerReq_AddSecurityGroup)(nil),                // 273: openstack.AddSecurityGroupToServerReq.AddSecurityGroup
	(*RemoveSecurityGroupReq_RemoveSecurityGroup)(nil),                  // 274: openstack.removeSecurityGroupReq.RemoveSecurityGroup
	(*ListFlavorsDetailResp_Flavor)(nil),                                // 275: openstack.ListFlavorsDetailResp.Flavor
	(*ListFlavorsDetailResp_ExtraSpecs)(nil),                            // 276: openstack.ListFlavorsDetailResp.Extra_specs
	(*ListFlavorsDetailResp_Links)(nil),                                 // 277: openstack.ListFlavorsDetailResp.Links
	(*CreateFlavorReq_Flavor)(nil),                                      // 278: openstack.CreateFlavorReq.Flavor
	(*CreateFlavorResp_Links)(nil),                                      // 279: openstack.CreateFlavorResp.Links
	(*CreateFlavorResp_ExtraSpecs)(nil),                                 // 280: openstack.CreateFlavorResp.Extra_specs
	(*CreateFlavorResp_Flavor)(nil),                                     // 281: openstack.CreateFlavorResp.Flavor
	(*ListSubnetsResp_AllocationPools)(nil),                             // 282: openstack.ListSubnetsResp.Allocation_pools
	(*ListSubnetsResp_Subnets)(nil),                                     // 283: openstack.ListSubnetsResp.Subnets
	(*UpdateSubnetResp_AllocationPools)(nil),                            // 284: openstack.UpdateSubnetResp.Allocation_pools
	(*UpdateSubnetResp_Subnet)(nil),                                     // 285: openstack.UpdateSubnetResp.Subnet
	(*CreateNetworkSegmentRangeReq_NetworkSegmentRange)(nil),            // 286: openstack.CreateNetworkSegmentRangeReq.Network_segment_range
	(*CreateNetworkSegmentRangeResp_Used)(nil),                          // 287: openstack.CreateNetworkSegmentRangeResp.Used
	(*CreateNetworkSegmentRangeResp_NetworkSegmentRange)(nil),           // 288: openstack.CreateNetworkSegmentRangeResp.Network_segment_range
	(*ListNetworkSegmentRangesResp_Used)(nil),                           // 289: openstack.ListNetworkSegmentRangesResp.Used
	(*ListNetworkSegmentRangesResp_NetworkSegmentRanges)(nil),           // 290: openstack.ListNetworkSegmentRangesResp.Network_segment_ranges
	(*UpdateNetworkSegmentRangesReq_NetworkSegmentRanges)(nil),          // 291: openstack.UpdateNetworkSegmentRangesReq.Network_segment_ranges
	(*UpdateNetworkSegmentRangesReq_Used)(nil),                          // 292: openstack.UpdateNetworkSegmentRangesReq.Used
	(*UpdateNetworkSegmentRangesResp_Used)(nil),                         // 293: openstack.UpdateNetworkSegmentRangesResp.Used
	(*UpdateNetworkSegmentRangesResp_NetworkSegmentRange)(nil),          // 294: openstack.UpdateNetworkSegmentRangesResp.Network_segment_range
	(*ShowNetworkSegmentRangeDetailsResp_Used)(nil),                     // 295: openstack.ShowNetworkSegmentRangeDetailsResp.Used
	(*ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange)(nil),      // 296: openstack.ShowNetworkSegmentRangeDetailsResp.Network_segment_range
	(*CreatePortReq_AllowedAddressPairs)(nil),                           // 297: openstack.CreatePortReq.Allowed_address_pairs
	(*CreatePortReq_Port)(nil),                                          // 298: openstack.CreatePortReq.Port
	(*CreatePortResp_AllowedAddressPairs)(nil),                          // 299: openstack.CreatePortResp.Allowed_address_pairs
	(*CreatePortResp_DnsAssignment)(nil),                                // 300: openstack.CreatePortResp.Dns_assignment
	(*CreatePortResp_ExtraDhcpOpts)(nil),                                // 301: openstack.CreatePortResp.Extra_dhcp_opts
	(*CreatePortResp_FixedIps)(nil),                                     // 302: openstack.CreatePortResp.Fixed_ips
	(*CreatePortResp_Port)(nil),                                         // 303: openstack.CreatePortResp.Port
	(*ListPortsResp_DnsAssignment)(nil),                                 // 304: openstack.ListPortsResp.Dns_assignment
	(*ListPortsResp_ExtraDhcpOpts)(nil),                                 // 305: openstack.ListPortsResp.Extra_dhcp_opts
	(*ListPortsResp_FixedIps)(nil),                                      // 306: openstack.ListPortsResp.Fixed_ips
	(*ListPortsResp_AllowedAddressPairs)(nil),                           // 307: openstack.ListPortsResp.Allowed_address_pairs
	(*ListPortsResp_SecurityGroups)(nil),                                // 308: openstack.ListPortsResp.Security_groups
	(*ListPortsResp_Ports)(nil),                                         // 309: openstack.ListPortsResp.Ports
	(*UpdatePortReq_AllowedAddressPairs)(nil),                           // 310: openstack.UpdatePortReq.Allowed_address_pairs
	(*UpdatePortReq_DnsAssignment)(nil),                                 // 311: openstack.UpdatePortReq.Dns_assignment
	(*UpdatePortReq_ExtraDhcpOpts)(nil),                                 // 312: openstack.UpdatePortReq.Extra_dhcp_opts
	(*UpdatePortReq_FixedIps)(nil),                                      // 313: openstack.UpdatePortReq.Fixed_ips
	(*UpdatePortReq_Port)(nil),                                          // 314: openstack.UpdatePortReq.Port
	(*UpdatePortResp_BindingProfile)(nil),                               // 315: openstack.UpdatePortResp.Binding_profile
	(*UpdatePortResp_BindingVifDetails)(nil),                            // 316: openstack.UpdatePortResp.Binding_vif_details
	(*UpdatePortResp_DnsAssignment)(nil),                                // 317: openstack.UpdatePortResp.Dns_assignment
	(*UpdatePortResp_ExtraDhcpOpts)(nil),                                // 318: openstack.UpdatePortResp.Extra_dhcp_opts
	(*UpdatePortResp_FixedIps)(nil),                                     // 319: openstack.UpdatePortResp.Fixed_ips
	(*UpdatePortResp_AllowedAddressPairs)(nil),                          // 320: openstack.UpdatePortResp.Allowed_address_pairs
	(*UpdatePortResp_Port)(nil),                                         // 321: openstack.UpdatePortResp.Port
	(*ShowPortDetailsResp_DnsAssignment)(nil),                           // 322: openstack.ShowPortDetailsResp.Dns_assignment
	(*ShowPortDetailsResp_ExtraDhcpOpts)(nil),                           // 323: openstack.ShowPortDetailsResp.Extra_dhcp_opts
	(*ShowPortDetailsResp_FixedIps)(nil),                                // 324: openstack.ShowPortDetailsResp.Fixed_ips
	(*ShowPortDetailsResp_AllowedAddressPairs)(nil),                     // 325: openstack.ShowPortDetailsResp.Allowed_address_pairs
	(*ShowPortDetailsResp_SecurityGroups)(nil),                          // 326: openstack.ShowPortDetailsResp.Security_groups
	(*ShowPortDetailsResp_Port)(nil),                                    // 327: openstack.ShowPortDetailsResp.Port
	(*ListRoutersResp_ExternalFixedIps)(nil),                            // 328: openstack.ListRoutersResp.External_fixed_ips
	(*ListRoutersResp_ExternalGatewayInfo)(nil),                         // 329: openstack.ListRoutersResp.External_gateway_info
	(*ListRoutersResp_Routes)(nil),                                      // 330: openstack.ListRoutersResp.Routes
	(*ListRoutersResp_ConntrackHelpers)(nil),                            // 331: openstack.ListRoutersResp.Conntrack_helpers
	(*ListRoutersResp_AvailabilityZoneHints)(nil),                       // 332: openstack.ListRoutersResp.Availability_zone_hints
	(*ListRoutersResp_Routers)(nil),                                     // 333: openstack.ListRoutersResp.Routers
	(*CreateRouterReq_ExternalFixedIps)(nil),                            // 334: openstack.CreateRouterReq.External_fixed_ips
	(*CreateRouterReq_ExternalGatewayInfo)(nil),                         // 335: openstack.CreateRouterReq.External_gateway_info
	(*CreateRouterReq_Router)(nil),                                      // 336: openstack.CreateRouterReq.Router
	(*CreateRouterResp_ExternalFixedIps)(nil),                           // 337: openstack.CreateRouterResp.External_fixed_ips
	(*CreateRouterResp_ExternalGatewayInfo)(nil),                        // 338: openstack.CreateRouterResp.External_gateway_info
	(*CreateRouterResp_Routers)(nil),                                    // 339: openstack.CreateRouterResp.Routers
	(*CreateRouterResp_AvailabilityZoneHints)(nil),                      // 340: openstack.CreateRouterResp.Availability_zone_hints
	(*CreateRouterResp_ConntrackHelpers)(nil),                           // 341: openstack.CreateRouterResp.Conntrack_helpers
	(*CreateRouterResp_Router)(nil),                                     // 342: openstack.CreateRouterResp.Router
	(*UpdateRouterReq_ExternalFixedIps)(nil),                            // 343: openstack.UpdateRouterReq.External_fixed_ips
	(*UpdateRouterReq_Routes)(nil),                                      // 344: openstack.UpdateRouterReq.Routes
	(*UpdateRouterReq_ExternalGatewayInfo)(nil),                         // 345: openstack.UpdateRouterReq.External_gateway_info
	(*UpdateRouterReq_Router)(nil),                                      // 346: openstack.UpdateRouterReq.Router
	(*UpdateRouterResp_ExternalFixedIps)(nil),                           // 347: openstack.UpdateRouterResp.External_fixed_ips
	(*UpdateRouterResp_ExternalGatewayInfo)(nil),                        // 348: openstack.UpdateRouterResp.External_gateway_info
	(*UpdateRouterResp_Routes)(nil),                                     // 349: openstack.UpdateRouterResp.Routes
	(*UpdateRouterResp_AvailabilityZoneHints)(nil),                      // 350: openstack.UpdateRouterResp.Availability_zone_hints
	(*UpdateRouterResp_ConntrackHelpers)(nil),                           // 351: openstack.UpdateRouterResp.Conntrack_helpers
	(*UpdateRouterResp_Router)(nil),                                     // 352: openstack.UpdateRouterResp.Router
	(*ShowRouterDetailsReq_ExternalFixedIps)(nil),                       // 353: openstack.ShowRouterDetailsReq.External_fixed_ips
	(*ShowRouterDetailsReq_Routes)(nil),                                 // 354: openstack.ShowRouterDetailsReq.Routes
	(*ShowRouterDetailsReq_ExternalGatewayInfo)(nil),                    // 355: openstack.ShowRouterDetailsReq.External_gateway_info
	(*ShowRouterDetailsReq_Router)(nil),                                 // 356: openstack.ShowRouterDetailsReq.Router
	(*ShowRouterDetailsResp_ExternalFixedIps)(nil),                      // 357: openstack.ShowRouterDetailsResp.External_fixed_ips
	(*ShowRouterDetailsResp_ExternalGatewayInfo)(nil),                   // 358: openstack.ShowRouterDetailsResp.External_gateway_info
	(*ShowRouterDetailsResp_Routes)(nil),                                // 359: openstack.ShowRouterDetailsResp.Routes
	(*ShowRouterDetailsResp_AvailabilityZoneHints)(nil),                 // 360: openstack.ShowRouterDetailsResp.Availability_zone_hints
	(*ShowRouterDetailsResp_ConntrackHelpers)(nil),                      // 361: openstack.ShowRouterDetailsResp.Conntrack_helpers
	(*ShowRouterDetailsResp_Router)(nil),                                // 362: openstack.ShowRouterDetailsResp.Router
	(*ListFloatingIPsResp_PortDetails)(nil),                             // 363: openstack.ListFloatingIPsResp.Port_details
	(*ListFloatingIPsResp_PortForwardings)(nil),                         // 364: openstack.ListFloatingIPsResp.Port_forwardings
	(*ListFloatingIPsResp_Floatingips)(nil),                             // 365: openstack.ListFloatingIPsResp.Floatingips
	(*CreateFloatingIPReq_Floatingip)(nil),                              // 366: openstack.CreateFloatingIPReq.Floatingip
	(*CreateFloatingIPResp_PortDetails)(nil),                            // 367: openstack.CreateFloatingIPResp.Port_details
	(*CreateFloatingIPResp_PortForwardings)(nil),                        // 368: openstack.CreateFloatingIPResp.Port_forwardings
	(*CreateFloatingIPResp_Floatingip)(nil),                             // 369: openstack.CreateFloatingIPResp.Floatingip
	(*UpdateFloatingIPReq_Floatingip)(nil),                              // 370: openstack.UpdateFloatingIPReq.Floatingip
	(*UpdateFloatingIPResp_PortDetails)(nil),                            // 371: openstack.UpdateFloatingIPResp.Port_details
	(*UpdateFloatingIPResp_PortForwardings)(nil),                        // 372: openstack.UpdateFloatingIPResp.Port_forwardings
	(*UpdateFloatingIPResp_Floatingip)(nil),                             // 373: openstack.UpdateFloatingIPResp.Floatingip
	(*ShowFloatingIPDetailsResp_PortDetails)(nil),                       // 374: openstack.ShowFloatingIPDetailsResp.Port_details
	(*ShowFloatingIPDetailsResp_PortForwardings)(nil),                   // 375: openstack.ShowFloatingIPDetailsResp.Port_forwardings
	(*ShowFloatingIPDetailsResp_Floatingip)(nil),                        // 376: openstack.ShowFloatingIPDetailsResp.Floatingip
	(*ListFirewallGroupsResp_FirewallGroups)(nil),                       // 377: openstack.ListFirewallGroupsResp.Firewall_groups
	(*CreateFirewallGroupReq_FirewallGroup)(nil),                        // 378: openstack.CreateFirewallGroupReq.Firewall_group
	(*CreateFirewallGroupResp_FirewallGroup)(nil),                       // 379: openstack.CreateFirewallGroupResp.Firewall_group
	(*UpdateFirewallGroupReq_FirewallGroup)(nil),                        // 380: openstack.UpdateFirewallGroupReq.Firewall_group
	(*UpdateFirewallGroupResp_FirewallGroup)(nil),                       // 381: openstack.UpdateFirewallGroupResp.Firewall_group
	(*ShowFirewallGroupDetailsResp_FirewallGroup)(nil),                  // 382: openstack.ShowFirewallGroupDetailsResp.Firewall_group
	(*CreateFirewallPolicyReq_FirewallPolicy)(nil),                      // 383: openstack.CreateFirewallPolicyReq.Firewall_policy
	(*CreateFirewallPolicyResp_FirewallPolicy)(nil),                     // 384: openstack.CreateFirewallPolicyResp.Firewall_policy
	(*ListFirewallPoliciesResp_FirewallPolicies)(nil),                   // 385: openstack.ListFirewallPoliciesResp.Firewall_policies
	(*ShowFirewallPolicyDetailsResp_FirewallPolicy)(nil),                // 386: openstack.ShowFirewallPolicyDetailsResp.Firewall_policy
	(*CreateFirewallRuleReq_FirewallRule)(nil),                          // 387: openstack.CreateFirewallRuleReq.Firewall_rule
	(*CreateFirewallRuleResp_FirewallRule)(nil),                         // 388: openstack.CreateFirewallRuleResp.Firewall_rule
	(*ListFirewallRulesResp_FirewallRules)(nil),                         // 389: openstack.ListFirewallRulesResp.Firewall_rules
	(*ShowFirewallRuleDetailsResp_FirewallRule)(nil),                    // 390: openstack.ShowFirewallRuleDetailsResp.Firewall_rule
	(*ListSecurityGroupsResp_SecurityGroupRules)(nil),                   // 391: openstack.ListSecurityGroupsResp.Security_group_rules
	(*ListSecurityGroupsResp_SecurityGroups)(nil),                       // 392: openstack.ListSecurityGroupsResp.Security_groups
	(*CreateSecurityGroupReq_SecurityGroup)(nil),                        // 393: openstack.CreateSecurityGroupReq.Security_group
	(*CreateSecurityGroupResp_SecurityGroupRules)(nil),                  // 394: openstack.CreateSecurityGroupResp.Security_group_rules
	(*CreateSecurityGroupResp_SecurityGroup)(nil),                       // 395: openstack.CreateSecurityGroupResp.Security_group
	(*UpdateSecurityGroupResp_SecurityGroupRules)(nil),                  // 396: openstack.UpdateSecurityGroupResp.Security_group_rules
	(*UpdateSecurityGroupResp_SecurityGroup)(nil),                       // 397: openstack.UpdateSecurityGroupResp.Security_group
	(*ShowSecurityGroupResp_SecurityGroupRules)(nil),                    // 398: openstack.ShowSecurityGroupResp.Security_group_rules
	(*ShowSecurityGroupResp_SecurityGroup)(nil),                         // 399: openstack.ShowSecurityGroupResp.Security_group
	(*ListSecurityGroupRulesResp_SecurityGroupRules)(nil),               // 400: openstack.ListSecurityGroupRulesResp.Security_group_rules
	(*CreateSecurityGroupRuleReq_SecurityGroupRule)(nil),                // 401: openstack.CreateSecurityGroupRuleReq.Security_group_rule
	(*CreateSecurityGroupRuleResp_SecurityGroupRule)(nil),               // 402: openstack.CreateSecurityGroupRuleResp.Security_group_rule
	(*ShowSecurityGroupRuleResp_SecurityGroupRule)(nil),                 // 403: openstack.ShowSecurityGroupRuleResp.Security_group_rule
	(*DeleteSecurityGroupRuleResp_SecurityGroupRule)(nil),               // 404: openstack.DeleteSecurityGroupRuleResp.Security_group_rule
	(*ListNodesResp_Links)(nil),                                         // 405: openstack.ListNodesResp.Links
	(*ListNodesResp_Nodes)(nil),                                         // 406: openstack.ListNodesResp.Nodes
	(*CreateNodeReq_DriverInfo)(nil),                                    // 407: openstack.CreateNodeReq.Driver_info
	(*CreateNodeReq_Properties)(nil),                                    // 408: openstack.CreateNodeReq.Properties
	(*CreateNodeReq_InstanceInfo)(nil),                                  // 409: openstack.CreateNodeReq.Instance_info
	(*CreateNodeReq_NetworkData)(nil),                                   // 410: openstack.CreateNodeReq.Network_data
	(*CreateNodeResp_CleanStep)(nil),                                    // 411: openstack.CreateNodeResp.Clean_step
	(*CreateNodeResp_DeployStep)(nil),                                   // 412: openstack.CreateNodeResp.Deploy_step
	(*CreateNodeResp_DriverInfo)(nil),                                   // 413: openstack.CreateNodeResp.Driver_info
	(*CreateNodeResp_DriverInternalInfo)(nil),                           // 414: openstack.CreateNodeResp.Driver_internal_info
	(*CreateNodeResp_Extra)(nil),                                        // 415: openstack.CreateNodeResp.Extra
	(*CreateNodeResp_InstanceInfo)(nil),                                 // 416: openstack.CreateNodeResp.Instance_info
	(*CreateNodeResp_Links)(nil),                                        // 417: openstack.CreateNodeResp.Links
	(*CreateNodeResp_NetworkData)(nil),                                  // 418: openstack.CreateNodeResp.Network_data
	(*CreateNodeResp_Portgroups)(nil),                                   // 419: openstack.CreateNodeResp.Portgroups
	(*CreateNodeResp_Ports)(nil),                                        // 420: openstack.CreateNodeResp.Ports
	(*CreateNodeResp_Properties)(nil),                                   // 421: openstack.CreateNodeResp.Properties
	(*CreateNodeResp_RaidConfig)(nil),                                   // 422: openstack.CreateNodeResp.Raid_config
	(*CreateNodeResp_States)(nil),                                       // 423: openstack.CreateNodeResp.States
	(*CreateNodeResp_TargetRaidConfig)(nil),                             // 424: openstack.CreateNodeResp.Target_raid_config
	(*CreateNodeResp_Volume)(nil),                                       // 425: openstack.CreateNodeResp.Volume
	(*ShowNodeDetailsReq_Fields)(nil),                                   // 426: openstack.ShowNodeDetailsReq.Fields
	(*ShowNodeDetailsResp_CleanStep)(nil),                               // 427: openstack.ShowNodeDetailsResp.Clean_step
	(*ShowNodeDetailsResp_DeployStep)(nil),                              // 428: openstack.ShowNodeDetailsResp.Deploy_step
	(*ShowNodeDetailsResp_DriverInfo)(nil),                              // 429: openstack.ShowNodeDetailsResp.Driver_info
	(*ShowNodeDetailsResp_DriverInternalInfo)(nil),                      // 430: openstack.ShowNodeDetailsResp.Driver_internal_info
	(*ShowNodeDetailsResp_Extra)(nil),                                   // 431: openstack.ShowNodeDetailsResp.Extra
	(*ShowNodeDetailsResp_InstanceInfo)(nil),                            // 432: openstack.ShowNodeDetailsResp.Instance_info
	(*ShowNodeDetailsResp_Links)(nil),                                   // 433: openstack.ShowNodeDetailsResp.Links
	(*ShowNodeDetailsResp_NetworkData)(nil),                             // 434: openstack.ShowNodeDetailsResp.Network_data
	(*ShowNodeDetailsResp_Portgroups)(nil),                              // 435: openstack.ShowNodeDetailsResp.Portgroups
	(*ShowNodeDetailsResp_Ports)(nil),                                   // 436: openstack.ShowNodeDetailsResp.Ports
	(*ShowNodeDetailsResp_Properties)(nil),                              // 437: openstack.ShowNodeDetailsResp.Properties
	(*ShowNodeDetailsResp_RaidConfig)(nil),                              // 438: openstack.ShowNodeDetailsResp.Raid_config
	(*ShowNodeDetailsResp_States)(nil),                                  // 439: openstack.ShowNodeDetailsResp.States
	(*ShowNodeDetailsResp_TargetRaidConfig)(nil),                        // 440: openstack.ShowNodeDetailsResp.Target_raid_config
	(*ShowNodeDetailsResp_Volume)(nil),                                  // 441: openstack.ShowNodeDetailsResp.Volume
	(*ShowNodeDetailsResp_Traits)(nil),                                  // 442: openstack.ShowNodeDetailsResp.Traits
	(*CreateImageResp_Tags)(nil),                                        // 443: openstack.CreateImageResp.Tags
	(*CreateImageResp_Locations)(nil),                                   // 444: openstack.CreateImageResp.Locations
	(*ListImagesResp_Images)(nil),                                       // 445: openstack.ListImagesResp.Images
	(*ListImagesResp_Tags)(nil),                                         // 446: openstack.ListImagesResp.Tags
	(*ListVolumesResp_Links)(nil),                                       // 447: openstack.ListVolumesResp.Links
	(*ListVolumesResp_Volumes)(nil),                                     // 448: openstack.ListVolumesResp.Volumes
	(*ListVolumesDetailResp_Links)(nil),                                 // 449: openstack.ListVolumesDetailResp.Links
	(*ListVolumesDetailResp_Attachments)(nil),                           // 450: openstack.ListVolumesDetailResp.Attachments
	(*ListVolumesDetailResp_Metadata)(nil),                              // 451: openstack.ListVolumesDetailResp.Metadata
	(*ListVolumesDetailResp_VolumeDetail)(nil),                          // 452: openstack.ListVolumesDetailResp.VolumeDetail
	(*CreateVolumeReq_Metadata)(nil),                                    // 453: openstack.CreateVolumeReq.Metadata
	(*CreateVolumeReq_Volume)(nil),                                      // 454: openstack.CreateVolumeReq.Volume
	(*CreateVolumeResp_Links)(nil),                                      // 455: openstack.CreateVolumeResp.Links
	(*CreateVolumeResp_Metadata)(nil),                                   // 456: openstack.CreateVolumeResp.Metadata
	(*CreateVolumeResp_Volume)(nil),                                     // 457: openstack.CreateVolumeResp.Volume
	(*CreateVolumeResp_Attachments)(nil),                                // 458: openstack.CreateVolumeResp.Attachments
	(*UpdateVolumeReq_Metadata)(nil),                                    // 459: openstack.UpdateVolumeReq.Metadata
	(*UpdateVolumeReq_Volume)(nil),                                      // 460: openstack.UpdateVolumeReq.Volume
	(*UpdateVolumeResp_Links)(nil),                                      // 461: openstack.UpdateVolumeResp.Links
	(*UpdateVolumeResp_Metadata)(nil),                                   // 462: openstack.UpdateVolumeResp.Metadata
	(*UpdateVolumeResp_Volume)(nil),                                     // 463: openstack.UpdateVolumeResp.Volume
	(*UpdateVolumeResp_Attachments)(nil),                                // 464: openstack.UpdateVolumeResp.Attachments
	(*GetVolumeDetailedByIdResp_Links)(nil),                             // 465: openstack.GetVolumeDetailedByIdResp.Links
	(*GetVolumeDetailedByIdResp_Metadata)(nil),                          // 466: openstack.GetVolumeDetailedByIdResp.Metadata
	(*GetVolumeDetailedByIdResp_Attachments)(nil),                       // 467: openstack.GetVolumeDetailedByIdResp.Attachments
	(*GetVolumeDetailedByIdResp_Volume)(nil),                            // 468: openstack.GetVolumeDetailedByIdResp.Volume
	(*ListVolumeTypesResp_ExtraSpecs)(nil),                              // 469: openstack.ListVolumeTypesResp.Extra_specs
	(*ListVolumeTypesResp_VolumeTypes)(nil),                             // 470: openstack.ListVolumeTypesResp.Volume_types
	(*CreateVolumeTypeReq_ExtraSpecs)(nil),                              // 471: openstack.CreateVolumeTypeReq.Extra_specs
	(*CreateVolumeTypeReq_VolumeType)(nil),                              // 472: openstack.CreateVolumeTypeReq.Volume_type
	(*CreateVolumeTypeResp_ExtraSpecs)(nil),                             // 473: openstack.CreateVolumeTypeResp.Extra_specs
	(*CreateVolumeTypeResp_VolumeType)(nil),                             // 474: openstack.CreateVolumeTypeResp.Volume_type
}
var file_pcm_openstack_proto_depIdxs = []int32{
	201, // 0: openstack.GetComputeLimitsResp.limits:type_name -> openstack.GetComputeLimitsResp.Limits
	204, // 1: openstack.GetVolumeLimitsResp.limits:type_name -> openstack.GetVolumeLimitsResp.Limits
	206, // 2: openstack.ListServersResp.servers:type_name -> openstack.ListServersResp.Servers
	207, // 3: openstack.ListServersResp.servers_links:type_name -> openstack.ListServersResp.Servers_links
	208, // 4: openstack.ListServersDetailedResp.servers:type_name -> openstack.ListServersDetailedResp.ServersDetailed
	209, // 5: openstack.CreateServerReq.crServer:type_name -> openstack.CreateServerReq.CrServer
	219, // 6: openstack.CreateServerResp.server:type_name -> openstack.CreateServerResp.Server
	231, // 7: openstack.GetServersDetailedByIdResp.server:type_name -> openstack.GetServersDetailedByIdResp.Servers
	15,  // 8: openstack.UpdateServerReq.server_update:type_name -> openstack.ServerUpdate
	16,  // 9: openstack.ServerUpdate.server:type_name -> openstack.Server
	241, // 10: openstack.UpdateServerResp.server:type_name -> openstack.UpdateServerResp.Server
	242, // 11: openstack.StartServerReq.action:type_name -> openstack.StartServerReq.ActionEntry
	243, // 12: openstack.StopServerReq.action:type_name -> openstack.StopServerReq.ActionEntry
	244, // 13: openstack.RebootServerReq.reboot:type_name -> openstack.RebootServerReq.Reboot
	245, // 14: openstack.PauseServerReq.action:type_name -> openstack.PauseServerReq.ActionEntry
	246, // 15: openstack.RebuildServerReq.rebuild:type_name -> openstack.RebuildServerReq.Rebuild
	261, // 16: openstack.RebuildServerResp.server:type_name -> openstack.RebuildServerResp.Servers
	262, // 17: openstack.ResizeServerReq.resize:type_name -> openstack.ResizeServerReq.Resize
	263, // 18: openstack.MigrateServerReq.action:type_name -> openstack.MigrateServerReq.ActionEntry
	264, // 19: openstack.MigrateServerReq.migrate:type_name -> openstack.MigrateServerReq.Migrate
	266, // 20: openstack.ChangeAdministrativePasswordReq.changePassword:type_name -> openstack.ChangeAdministrativePasswordReq.Changepassword
	267, // 21: openstack.RescueServerReq.rescue:type_name -> openstack.RescueServerReq.Rescue
	268, // 22: openstack.UnRescueServerReq.action:type_name -> openstack.UnRescueServerReq.ActionEntry
	269, // 23: openstack.UnpauseServerReq.action:type_name -> openstack.UnpauseServerReq.ActionEntry
	270, // 24: openstack.ShelveServerReq.action:type_name -> openstack.ShelveServerReq.ActionEntry
	271, // 25: openstack.UnshelveServerReq.action:type_name -> openstack.UnshelveServerReq.ActionEntry
	272, // 26: openstack.SuspendServerReq.action:type_name -> openstack.SuspendServerReq.ActionEntry
	273, // 27: openstack.AddSecurityGroupToServerReq.addSecurityGroup:type_name -> openstack.AddSecurityGroupToServerReq.AddSecurityGroup
	274, // 28: openstack.removeSecurityGroupReq.removeSecurityGroup:type_name -> openstack.removeSecurityGroupReq.RemoveSecurityGroup
	275, // 29: openstack.ListFlavorsDetailResp.flavors:type_name -> openstack.ListFlavorsDetailResp.Flavor
	278, // 30: openstack.CreateFlavorReq.flavor:type_name -> openstack.CreateFlavorReq.Flavor
	281, // 31: openstack.CreateFlavorResp.flavor:type_name -> openstack.CreateFlavorResp.Flavor
	57,  // 32: openstack.ShowNetworkDetailsResp.network:type_name -> openstack.Network
	57,  // 33: openstack.UpdateNetworkReq.network:type_name -> openstack.Network
	57,  // 34: openstack.UpdateNetworkResp.network:type_name -> openstack.Network
	57,  // 35: openstack.ListNetworksResp.networks:type_name -> openstack.Network
	57,  // 36: openstack.CreateNetworkReq.network:type_name -> openstack.Network
	57,  // 37: openstack.CreateNetworkResp.network:type_name -> openstack.Network
	69,  // 38: openstack.CreateSubnetReq.subnet:type_name -> openstack.Subnet
	70,  // 39: openstack.CreateSubnetResp.subnet:type_name -> openstack.SubnetResp
	71,  // 40: openstack.Subnet.allocation_pools:type_name -> openstack.Allocation_pools
	71,  // 41: openstack.SubnetResp.allocation_pools:type_name -> openstack.Allocation_pools
	57,  // 42: openstack.BulkCreateNetworksReq.networks:type_name -> openstack.Network
	57,  // 43: openstack.BulkCreateNetworksResp.networks:type_name -> openstack.Network
	283, // 44: openstack.ListSubnetsResp.subnets:type_name -> openstack.ListSubnetsResp.Subnets
	285, // 45: openstack.UpdateSubnetResp.subnet:type_name -> openstack.UpdateSubnetResp.Subnet
	286, // 46: openstack.CreateNetworkSegmentRangeReq.network_segment_range:type_name -> openstack.CreateNetworkSegmentRangeReq.Network_segment_range
	288, // 47: openstack.CreateNetworkSegmentRangeResp.network_segment_range:type_name -> openstack.CreateNetworkSegmentRangeResp.Network_segment_range
	290, // 48: openstack.ListNetworkSegmentRangesResp.network_segment_ranges:type_name -> openstack.ListNetworkSegmentRangesResp.Network_segment_ranges
	291, // 49: openstack.UpdateNetworkSegmentRangesReq.network_segment_ranges:type_name -> openstack.UpdateNetworkSegmentRangesReq.Network_segment_ranges
	294, // 50: openstack.UpdateNetworkSegmentRangesResp.network_segment_range:type_name -> openstack.UpdateNetworkSegmentRangesResp.Network_segment_range
	296, // 51: openstack.ShowNetworkSegmentRangeDetailsResp.network_segment_range:type_name -> openstack.ShowNetworkSegmentRangeDetailsResp.Network_segment_range
	298, // 52: openstack.CreatePortReq.port:type_name -> openstack.CreatePortReq.Port
	303, // 53: openstack.CreatePortResp.port:type_name -> openstack.CreatePortResp.Port
	309, // 54: openstack.ListPortsResp.ports:type_name -> openstack.ListPortsResp.Ports
	314, // 55: openstack.UpdatePortReq.port:type_name -> openstack.UpdatePortReq.Port
	321, // 56: openstack.UpdatePortResp.port:type_name -> openstack.UpdatePortResp.Port
	327, // 57: openstack.ShowPortDetailsResp.port:type_name -> openstack.ShowPortDetailsResp.Port
	333, // 58: openstack.ListRoutersResp.routers:type_name -> openstack.ListRoutersResp.Routers
	336, // 59: openstack.CreateRouterReq.router:type_name -> openstack.CreateRouterReq.Router
	342, // 60: openstack.CreateRouterResp.router:type_name -> openstack.CreateRouterResp.Router
	346, // 61: openstack.UpdateRouterReq.router:type_name -> openstack.UpdateRouterReq.Router
	352, // 62: openstack.UpdateRouterResp.router:type_name -> openstack.UpdateRouterResp.Router
	356, // 63: openstack.ShowRouterDetailsReq.router:type_name -> openstack.ShowRouterDetailsReq.Router
	362, // 64: openstack.ShowRouterDetailsResp.router:type_name -> openstack.ShowRouterDetailsResp.Router
	365, // 65: openstack.ListFloatingIPsResp.floatingips:type_name -> openstack.ListFloatingIPsResp.Floatingips
	366, // 66: openstack.CreateFloatingIPReq.floatingip:type_name -> openstack.CreateFloatingIPReq.Floatingip
	369, // 67: openstack.CreateFloatingIPResp.floatingip:type_name -> openstack.CreateFloatingIPResp.Floatingip
	370, // 68: openstack.UpdateFloatingIPReq.floatingip:type_name -> openstack.UpdateFloatingIPReq.Floatingip
	373, // 69: openstack.UpdateFloatingIPResp.floatingip:type_name -> openstack.UpdateFloatingIPResp.Floatingip
	376, // 70: openstack.ShowFloatingIPDetailsResp.floatingip:type_name -> openstack.ShowFloatingIPDetailsResp.Floatingip
	377, // 71: openstack.ListFirewallGroupsResp.firewall_groups:type_name -> openstack.ListFirewallGroupsResp.Firewall_groups
	378, // 72: openstack.CreateFirewallGroupReq.firewall_group:type_name -> openstack.CreateFirewallGroupReq.Firewall_group
	379, // 73: openstack.CreateFirewallGroupResp.firewall_group:type_name -> openstack.CreateFirewallGroupResp.Firewall_group
	380, // 74: openstack.UpdateFirewallGroupReq.firewall_group:type_name -> openstack.UpdateFirewallGroupReq.Firewall_group
	381, // 75: openstack.UpdateFirewallGroupResp.firewall_group:type_name -> openstack.UpdateFirewallGroupResp.Firewall_group
	382, // 76: openstack.ShowFirewallGroupDetailsResp.firewall_group:type_name -> openstack.ShowFirewallGroupDetailsResp.Firewall_group
	383, // 77: openstack.CreateFirewallPolicyReq.firewall_policy:type_name -> openstack.CreateFirewallPolicyReq.Firewall_policy
	384, // 78: openstack.CreateFirewallPolicyResp.firewall_policy:type_name -> openstack.CreateFirewallPolicyResp.Firewall_policy
	385, // 79: openstack.ListFirewallPoliciesResp.firewall_policies:type_name -> openstack.ListFirewallPoliciesResp.Firewall_policies
	386, // 80: openstack.ShowFirewallPolicyDetailsResp.firewall_policy:type_name -> openstack.ShowFirewallPolicyDetailsResp.Firewall_policy
	387, // 81: openstack.CreateFirewallRuleReq.firewall_rule:type_name -> openstack.CreateFirewallRuleReq.Firewall_rule
	388, // 82: openstack.CreateFirewallRuleResp.firewall_rule:type_name -> openstack.CreateFirewallRuleResp.Firewall_rule
	389, // 83: openstack.ListFirewallRulesResp.firewall_rules:type_name -> openstack.ListFirewallRulesResp.Firewall_rules
	390, // 84: openstack.ShowFirewallRuleDetailsResp.firewall_rule:type_name -> openstack.ShowFirewallRuleDetailsResp.Firewall_rule
	392, // 85: openstack.ListSecurityGroupsResp.security_groups:type_name -> openstack.ListSecurityGroupsResp.Security_groups
	393, // 86: openstack.CreateSecurityGroupReq.security_group:type_name -> openstack.CreateSecurityGroupReq.Security_group
	395, // 87: openstack.CreateSecurityGroupResp.security_group:type_name -> openstack.CreateSecurityGroupResp.Security_group
	397, // 88: openstack.UpdateSecurityGroupResp.security_group:type_name -> openstack.UpdateSecurityGroupResp.Security_group
	399, // 89: openstack.ShowSecurityGroupResp.security_group:type_name -> openstack.ShowSecurityGroupResp.Security_group
	400, // 90: openstack.ListSecurityGroupRulesResp.security_group_rules:type_name -> openstack.ListSecurityGroupRulesResp.Security_group_rules
	401, // 91: openstack.CreateSecurityGroupRuleReq.security_group_rule:type_name -> openstack.CreateSecurityGroupRuleReq.Security_group_rule
	402, // 92: openstack.CreateSecurityGroupRuleResp.security_group_rule:type_name -> openstack.CreateSecurityGroupRuleResp.Security_group_rule
	403, // 93: openstack.ShowSecurityGroupRuleResp.security_group_rule:type_name -> openstack.ShowSecurityGroupRuleResp.Security_group_rule
	404, // 94: openstack.DeleteSecurityGroupRuleResp.security_group_rule:type_name -> openstack.DeleteSecurityGroupRuleResp.Security_group_rule
	406, // 95: openstack.ListNodesResp.nodes:type_name -> openstack.ListNodesResp.Nodes
	407, // 96: openstack.CreateNodeReq.driver_info:type_name -> openstack.CreateNodeReq.Driver_info
	408, // 97: openstack.CreateNodeReq.properties:type_name -> openstack.CreateNodeReq.Properties
	409, // 98: openstack.CreateNodeReq.instance_info:type_name -> openstack.CreateNodeReq.Instance_info
	410, // 99: openstack.CreateNodeReq.network_data:type_name -> openstack.CreateNodeReq.Network_data
	413, // 100: openstack.CreateNodeResp.driver_info:type_name -> openstack.CreateNodeResp.Driver_info
	414, // 101: openstack.CreateNodeResp.driver_internal_info:type_name -> openstack.CreateNodeResp.Driver_internal_info
	421, // 102: openstack.CreateNodeResp.properties:type_name -> openstack.CreateNodeResp.Properties
	416, // 103: openstack.CreateNodeResp.instance_info:type_name -> openstack.CreateNodeResp.Instance_info
	415, // 104: openstack.CreateNodeResp.extra:type_name -> openstack.CreateNodeResp.Extra
	422, // 105: openstack.CreateNodeResp.raid_config:type_name -> openstack.CreateNodeResp.Raid_config
	424, // 106: openstack.CreateNodeResp.target_raid_config:type_name -> openstack.CreateNodeResp.Target_raid_config
	411, // 107: openstack.CreateNodeResp.clean_step:type_name -> openstack.CreateNodeResp.Clean_step
	412, // 108: openstack.CreateNodeResp.deploy_step:type_name -> openstack.CreateNodeResp.Deploy_step
	417, // 109: openstack.CreateNodeResp.links:type_name -> openstack.CreateNodeResp.Links
	420, // 110: openstack.CreateNodeResp.ports:type_name -> openstack.CreateNodeResp.Ports
	419, // 111: openstack.CreateNodeResp.portgroups:type_name -> openstack.CreateNodeResp.Portgroups
	423, // 112: openstack.CreateNodeResp.states:type_name -> openstack.CreateNodeResp.States
	425, // 113: openstack.CreateNodeResp.volume:type_name -> openstack.CreateNodeResp.Volume
	418, // 114: openstack.CreateNodeResp.network_data:type_name -> openstack.CreateNodeResp.Network_data
	426, // 115: openstack.ShowNodeDetailsReq.fields:type_name -> openstack.ShowNodeDetailsReq.Fields
	429, // 116: openstack.ShowNodeDetailsResp.driver_info:type_name -> openstack.ShowNodeDetailsResp.Driver_info
	430, // 117: openstack.ShowNodeDetailsResp.driver_internal_info:type_name -> openstack.ShowNodeDetailsResp.Driver_internal_info
	437, // 118: openstack.ShowNodeDetailsResp.properties:type_name -> openstack.ShowNodeDetailsResp.Properties
	432, // 119: openstack.ShowNodeDetailsResp.instance_info:type_name -> openstack.ShowNodeDetailsResp.Instance_info
	431, // 120: openstack.ShowNodeDetailsResp.extra:type_name -> openstack.ShowNodeDetailsResp.Extra
	438, // 121: openstack.ShowNodeDetailsResp.raid_config:type_name -> openstack.ShowNodeDetailsResp.Raid_config
	440, // 122: openstack.ShowNodeDetailsResp.target_raid_config:type_name -> openstack.ShowNodeDetailsResp.Target_raid_config
	427, // 123: openstack.ShowNodeDetailsResp.clean_step:type_name -> openstack.ShowNodeDetailsResp.Clean_step
	428, // 124: openstack.ShowNodeDetailsResp.deploy_step:type_name -> openstack.ShowNodeDetailsResp.Deploy_step
	433, // 125: openstack.ShowNodeDetailsResp.links:type_name -> openstack.ShowNodeDetailsResp.Links
	436, // 126: openstack.ShowNodeDetailsResp.ports:type_name -> openstack.ShowNodeDetailsResp.Ports
	435, // 127: openstack.ShowNodeDetailsResp.portgroups:type_name -> openstack.ShowNodeDetailsResp.Portgroups
	439, // 128: openstack.ShowNodeDetailsResp.states:type_name -> openstack.ShowNodeDetailsResp.States
	442, // 129: openstack.ShowNodeDetailsResp.traits:type_name -> openstack.ShowNodeDetailsResp.Traits
	441, // 130: openstack.ShowNodeDetailsResp.volume:type_name -> openstack.ShowNodeDetailsResp.Volume
	434, // 131: openstack.ShowNodeDetailsResp.network_data:type_name -> openstack.ShowNodeDetailsResp.Network_data
	173, // 132: openstack.CreateImageReq.tags:type_name -> openstack.Tags
	443, // 133: openstack.CreateImageResp.tags:type_name -> openstack.CreateImageResp.Tags
	444, // 134: openstack.CreateImageResp.locations:type_name -> openstack.CreateImageResp.Locations
	445, // 135: openstack.ListImagesResp.images:type_name -> openstack.ListImagesResp.Images
	448, // 136: openstack.ListVolumesResp.volumes:type_name -> openstack.ListVolumesResp.Volumes
	452, // 137: openstack.ListVolumesDetailResp.volumes:type_name -> openstack.ListVolumesDetailResp.VolumeDetail
	454, // 138: openstack.CreateVolumeReq.volume:type_name -> openstack.CreateVolumeReq.Volume
	457, // 139: openstack.CreateVolumeResp.volume:type_name -> openstack.CreateVolumeResp.Volume
	460, // 140: openstack.UpdateVolumeReq.volume:type_name -> openstack.UpdateVolumeReq.Volume
	463, // 141: openstack.UpdateVolumeResp.volume:type_name -> openstack.UpdateVolumeResp.Volume
	468, // 142: openstack.GetVolumeDetailedByIdResp.volume:type_name -> openstack.GetVolumeDetailedByIdResp.Volume
	470, // 143: openstack.ListVolumeTypesResp.volume_types:type_name -> openstack.ListVolumeTypesResp.Volume_types
	472, // 144: openstack.CreateVolumeTypeReq.volume_type:type_name -> openstack.CreateVolumeTypeReq.Volume_type
	474, // 145: openstack.CreateVolumeTypeResp.volume_type:type_name -> openstack.CreateVolumeTypeResp.Volume_type
	199, // 146: openstack.GetComputeLimitsResp.Limits.rate:type_name -> openstack.GetComputeLimitsResp.Rate
	200, // 147: openstack.GetComputeLimitsResp.Limits.absolute:type_name -> openstack.GetComputeLimitsResp.Absolute
	202, // 148: openstack.GetVolumeLimitsResp.Limits.rate:type_name -> openstack.GetVolumeLimitsResp.Rate
	203, // 149: openstack.GetVolumeLimitsResp.Limits.absolute:type_name -> openstack.GetVolumeLimitsResp.Absolute
	205, // 150: openstack.ListServersResp.Servers.links:type_name -> openstack.ListServersResp.Links
	215, // 151: openstack.CreateServerReq.CrServer.server:type_name -> openstack.CreateServerReq.Server
	210, // 152: openstack.CreateServerReq.Server.networks:type_name -> openstack.CreateServerReq.Networks
	211, // 153: openstack.CreateServerReq.Server.block_device_mapping_v2:type_name -> openstack.CreateServerReq.Block_device_mapping_v2
	212, // 154: openstack.CreateServerReq.Server.metadata:type_name -> openstack.CreateServerReq.Metadata
	213, // 155: openstack.CreateServerReq.Server.personality:type_name -> openstack.CreateServerReq.Personality
	214, // 156: openstack.CreateServerReq.Server.security_groups:type_name -> openstack.CreateServerReq.Security_groups
	217, // 157: openstack.CreateServerResp.Server.links:type_name -> openstack.CreateServerResp.Links
	218, // 158: openstack.CreateServerResp.Server.security_groups:type_name -> openstack.CreateServerResp.Security_groups
	220, // 159: openstack.GetServersDetailedByIdResp.Addresses.private:type_name -> openstack.GetServersDetailedByIdResp.Private
	222, // 160: openstack.GetServersDetailedByIdResp.Flavor.extra_specs:type_name -> openstack.GetServersDetailedByIdResp.Extra_specs
	224, // 161: openstack.GetServersDetailedByIdResp.Image.links:type_name -> openstack.GetServersDetailedByIdResp.Links
	221, // 162: openstack.GetServersDetailedByIdResp.Servers.addresses:type_name -> openstack.GetServersDetailedByIdResp.Addresses
	223, // 163: openstack.GetServersDetailedByIdResp.Servers.flavor:type_name -> openstack.GetServersDetailedByIdResp.Flavor
	225, // 164: openstack.GetServersDetailedByIdResp.Servers.image:type_name -> openstack.GetServersDetailedByIdResp.Image
	226, // 165: openstack.GetServersDetailedByIdResp.Servers.links:type_name -> openstack.GetServersDetailedByIdResp.Links1
	227, // 166: openstack.GetServersDetailedByIdResp.Servers.metadata:type_name -> openstack.GetServersDetailedByIdResp.Metadata
	228, // 167: openstack.GetServersDetailedByIdResp.Servers.os_extended_volumes_volumes_attached:type_name -> openstack.GetServersDetailedByIdResp.Os_extended_volumes_volumes_attached
	229, // 168: openstack.GetServersDetailedByIdResp.Servers.fault:type_name -> openstack.GetServersDetailedByIdResp.Fault
	230, // 169: openstack.GetServersDetailedByIdResp.Servers.security_groups:type_name -> openstack.GetServersDetailedByIdResp.Security_groups
	232, // 170: openstack.UpdateServerResp.Addresses.private:type_name -> openstack.UpdateServerResp.Private
	234, // 171: openstack.UpdateServerResp.Flavor.extra_specs:type_name -> openstack.UpdateServerResp.Extra_specs
	236, // 172: openstack.UpdateServerResp.Image.links:type_name -> openstack.UpdateServerResp.Links
	233, // 173: openstack.UpdateServerResp.Server.addresses:type_name -> openstack.UpdateServerResp.Addresses
	235, // 174: openstack.UpdateServerResp.Server.flavor:type_name -> openstack.UpdateServerResp.Flavor
	237, // 175: openstack.UpdateServerResp.Server.image:type_name -> openstack.UpdateServerResp.Image
	238, // 176: openstack.UpdateServerResp.Server.links:type_name -> openstack.UpdateServerResp.Links1
	239, // 177: openstack.UpdateServerResp.Server.metadata:type_name -> openstack.UpdateServerResp.Metadata
	240, // 178: openstack.UpdateServerResp.Server.security_groups:type_name -> openstack.UpdateServerResp.Security_groups
	247, // 179: openstack.RebuildServerReq.Rebuild.metadata:type_name -> openstack.RebuildServerReq.Metadata
	248, // 180: openstack.RebuildServerReq.Rebuild.personality:type_name -> openstack.RebuildServerReq.Personality
	249, // 181: openstack.RebuildServerReq.Rebuild.trusted_image_certificates:type_name -> openstack.RebuildServerReq.trusted_image_certificates
	250, // 182: openstack.RebuildServerResp.Addresses.private:type_name -> openstack.RebuildServerResp.Private
	252, // 183: openstack.RebuildServerResp.Flavor.extra_specs:type_name -> openstack.RebuildServerResp.Extra_specs
	254, // 184: openstack.RebuildServerResp.Image.links:type_name -> openstack.RebuildServerResp.Links
	251, // 185: openstack.RebuildServerResp.Servers.addresses:type_name -> openstack.RebuildServerResp.Addresses
	253, // 186: openstack.RebuildServerResp.Servers.flavor:type_name -> openstack.RebuildServerResp.Flavor
	255, // 187: openstack.RebuildServerResp.Servers.image:type_name -> openstack.RebuildServerResp.Image
	256, // 188: openstack.RebuildServerResp.Servers.links:type_name -> openstack.RebuildServerResp.Links1
	257, // 189: openstack.RebuildServerResp.Servers.metadata:type_name -> openstack.RebuildServerResp.Metadata
	258, // 190: openstack.RebuildServerResp.Servers.os_extended_volumes_volumes_attached:type_name -> openstack.RebuildServerResp.Os_extended_volumes_volumes_attached
	259, // 191: openstack.RebuildServerResp.Servers.fault:type_name -> openstack.RebuildServerResp.Fault
	260, // 192: openstack.RebuildServerResp.Servers.security_groups:type_name -> openstack.RebuildServerResp.Security_groups
	265, // 193: openstack.MigrateServerReq.Migrate.host:type_name -> openstack.MigrateServerReq.Migrate.HostEntry
	276, // 194: openstack.ListFlavorsDetailResp.Flavor.extra_specs:type_name -> openstack.ListFlavorsDetailResp.Extra_specs
	277, // 195: openstack.ListFlavorsDetailResp.Flavor.links:type_name -> openstack.ListFlavorsDetailResp.Links
	279, // 196: openstack.CreateFlavorResp.Flavor.links:type_name -> openstack.CreateFlavorResp.Links
	280, // 197: openstack.CreateFlavorResp.Flavor.extra_specs:type_name -> openstack.CreateFlavorResp.Extra_specs
	282, // 198: openstack.ListSubnetsResp.Subnets.allocation_pools:type_name -> openstack.ListSubnetsResp.Allocation_pools
	284, // 199: openstack.UpdateSubnetResp.Subnet.allocation_pools:type_name -> openstack.UpdateSubnetResp.Allocation_pools
	287, // 200: openstack.CreateNetworkSegmentRangeResp.Network_segment_range.used:type_name -> openstack.CreateNetworkSegmentRangeResp.Used
	289, // 201: openstack.ListNetworkSegmentRangesResp.Network_segment_ranges.used:type_name -> openstack.ListNetworkSegmentRangesResp.Used
	292, // 202: openstack.UpdateNetworkSegmentRangesReq.Network_segment_ranges.used:type_name -> openstack.UpdateNetworkSegmentRangesReq.Used
	293, // 203: openstack.UpdateNetworkSegmentRangesResp.Network_segment_range.used:type_name -> openstack.UpdateNetworkSegmentRangesResp.Used
	295, // 204: openstack.ShowNetworkSegmentRangeDetailsResp.Network_segment_range.used:type_name -> openstack.ShowNetworkSegmentRangeDetailsResp.Used
	297, // 205: openstack.CreatePortReq.Port.allowed_address_pairs:type_name -> openstack.CreatePortReq.Allowed_address_pairs
	299, // 206: openstack.CreatePortResp.Port.allowed_address_pairs:type_name -> openstack.CreatePortResp.Allowed_address_pairs
	300, // 207: openstack.CreatePortResp.Port.dns_assignment:type_name -> openstack.CreatePortResp.Dns_assignment
	301, // 208: openstack.CreatePortResp.Port.extra_dhcp_opts:type_name -> openstack.CreatePortResp.Extra_dhcp_opts
	302, // 209: openstack.CreatePortResp.Port.fixed_ips:type_name -> openstack.CreatePortResp.Fixed_ips
	307, // 210: openstack.ListPortsResp.Ports.allowed_address_pairs:type_name -> openstack.ListPortsResp.Allowed_address_pairs
	304, // 211: openstack.ListPortsResp.Ports.dns_assignment:type_name -> openstack.ListPortsResp.Dns_assignment
	305, // 212: openstack.ListPortsResp.Ports.extra_dhcp_opts:type_name -> openstack.ListPortsResp.Extra_dhcp_opts
	306, // 213: openstack.ListPortsResp.Ports.fixed_ips:type_name -> openstack.ListPortsResp.Fixed_ips
	308, // 214: openstack.ListPortsResp.Ports.security_groups:type_name -> openstack.ListPortsResp.Security_groups
	310, // 215: openstack.UpdatePortReq.Port.allowed_address_pairs:type_name -> openstack.UpdatePortReq.Allowed_address_pairs
	311, // 216: openstack.UpdatePortReq.Port.dns_assignment:type_name -> openstack.UpdatePortReq.Dns_assignment
	312, // 217: openstack.UpdatePortReq.Port.extra_dhcp_opts:type_name -> openstack.UpdatePortReq.Extra_dhcp_opts
	313, // 218: openstack.UpdatePortReq.Port.fixed_ips:type_name -> openstack.UpdatePortReq.Fixed_ips
	320, // 219: openstack.UpdatePortResp.Port.allowed_address_pairs:type_name -> openstack.UpdatePortResp.Allowed_address_pairs
	315, // 220: openstack.UpdatePortResp.Port.Binding_profile:type_name -> openstack.UpdatePortResp.Binding_profile
	316, // 221: openstack.UpdatePortResp.Port.binding_vif_details:type_name -> openstack.UpdatePortResp.Binding_vif_details
	317, // 222: openstack.UpdatePortResp.Port.dns_assignment:type_name -> openstack.UpdatePortResp.Dns_assignment
	318, // 223: openstack.UpdatePortResp.Port.extra_dhcp_opts:type_name -> openstack.UpdatePortResp.Extra_dhcp_opts
	319, // 224: openstack.UpdatePortResp.Port.fixed_ips:type_name -> openstack.UpdatePortResp.Fixed_ips
	325, // 225: openstack.ShowPortDetailsResp.Port.allowed_address_pairs:type_name -> openstack.ShowPortDetailsResp.Allowed_address_pairs
	322, // 226: openstack.ShowPortDetailsResp.Port.dns_assignment:type_name -> openstack.ShowPortDetailsResp.Dns_assignment
	323, // 227: openstack.ShowPortDetailsResp.Port.extra_dhcp_opts:type_name -> openstack.ShowPortDetailsResp.Extra_dhcp_opts
	324, // 228: openstack.ShowPortDetailsResp.Port.fixed_ips:type_name -> openstack.ShowPortDetailsResp.Fixed_ips
	326, // 229: openstack.ShowPortDetailsResp.Port.security_groups:type_name -> openstack.ShowPortDetailsResp.Security_groups
	328, // 230: openstack.ListRoutersResp.External_gateway_info.external_fixed_ips:type_name -> openstack.ListRoutersResp.External_fixed_ips
	332, // 231: openstack.ListRoutersResp.Routers.availability_zone_hints:type_name -> openstack.ListRoutersResp.Availability_zone_hints
	329, // 232: openstack.ListRoutersResp.Routers.external_gateway_info:type_name -> openstack.ListRoutersResp.External_gateway_info
	330, // 233: openstack.ListRoutersResp.Routers.routes:type_name -> openstack.ListRoutersResp.Routes
	331, // 234: openstack.ListRoutersResp.Routers.conntrack_helpers:type_name -> openstack.ListRoutersResp.Conntrack_helpers
	334, // 235: openstack.CreateRouterReq.External_gateway_info.external_fixed_ips:type_name -> openstack.CreateRouterReq.External_fixed_ips
	335, // 236: openstack.CreateRouterReq.Router.external_gateway_info:type_name -> openstack.CreateRouterReq.External_gateway_info
	337, // 237: openstack.CreateRouterResp.External_gateway_info.external_fixed_ips:type_name -> openstack.CreateRouterResp.External_fixed_ips
	338, // 238: openstack.CreateRouterResp.Routers.external_gateway_info:type_name -> openstack.CreateRouterResp.External_gateway_info
	340, // 239: openstack.CreateRouterResp.Router.availability_zone_hints:type_name -> openstack.CreateRouterResp.Availability_zone_hints
	338, // 240: openstack.CreateRouterResp.Router.external_gateway_info:type_name -> openstack.CreateRouterResp.External_gateway_info
	339, // 241: openstack.CreateRouterResp.Router.routers:type_name -> openstack.CreateRouterResp.Routers
	341, // 242: openstack.CreateRouterResp.Router.conntrack_helpers:type_name -> openstack.CreateRouterResp.Conntrack_helpers
	343, // 243: openstack.UpdateRouterReq.External_gateway_info.external_fixed_ips:type_name -> openstack.UpdateRouterReq.External_fixed_ips
	344, // 244: openstack.UpdateRouterReq.External_gateway_info.routes:type_name -> openstack.UpdateRouterReq.Routes
	345, // 245: openstack.UpdateRouterReq.Router.external_gateway_info:type_name -> openstack.UpdateRouterReq.External_gateway_info
	347, // 246: openstack.UpdateRouterResp.External_gateway_info.external_fixed_ips:type_name -> openstack.UpdateRouterResp.External_fixed_ips
	350, // 247: openstack.UpdateRouterResp.Router.availability_zone_hints:type_name -> openstack.UpdateRouterResp.Availability_zone_hints
	348, // 248: openstack.UpdateRouterResp.Router.external_gateway_info:type_name -> openstack.UpdateRouterResp.External_gateway_info
	349, // 249: openstack.UpdateRouterResp.Router.routes:type_name -> openstack.UpdateRouterResp.Routes
	351, // 250: openstack.UpdateRouterResp.Router.conntrack_helpers:type_name -> openstack.UpdateRouterResp.Conntrack_helpers
	353, // 251: openstack.ShowRouterDetailsReq.External_gateway_info.external_fixed_ips:type_name -> openstack.ShowRouterDetailsReq.External_fixed_ips
	354, // 252: openstack.ShowRouterDetailsReq.External_gateway_info.routes:type_name -> openstack.ShowRouterDetailsReq.Routes
	355, // 253: openstack.ShowRouterDetailsReq.Router.external_gateway_info:type_name -> openstack.ShowRouterDetailsReq.External_gateway_info
	357, // 254: openstack.ShowRouterDetailsResp.External_gateway_info.external_fixed_ips:type_name -> openstack.ShowRouterDetailsResp.External_fixed_ips
	360, // 255: openstack.ShowRouterDetailsResp.Router.availability_zone_hints:type_name -> openstack.ShowRouterDetailsResp.Availability_zone_hints
	358, // 256: openstack.ShowRouterDetailsResp.Router.external_gateway_info:type_name -> openstack.ShowRouterDetailsResp.External_gateway_info
	359, // 257: openstack.ShowRouterDetailsResp.Router.routes:type_name -> openstack.ShowRouterDetailsResp.Routes
	361, // 258: openstack.ShowRouterDetailsResp.Router.conntrack_helpers:type_name -> openstack.ShowRouterDetailsResp.Conntrack_helpers
	363, // 259: openstack.ListFloatingIPsResp.Floatingips.port_details:type_name -> openstack.ListFloatingIPsResp.Port_details
	364, // 260: openstack.ListFloatingIPsResp.Floatingips.port_forwardings:type_name -> openstack.ListFloatingIPsResp.Port_forwardings
	367, // 261: openstack.CreateFloatingIPResp.Floatingip.port_details:type_name -> openstack.CreateFloatingIPResp.Port_details
	368, // 262: openstack.CreateFloatingIPResp.Floatingip.port_forwardings:type_name -> openstack.CreateFloatingIPResp.Port_forwardings
	371, // 263: openstack.UpdateFloatingIPResp.Floatingip.port_details:type_name -> openstack.UpdateFloatingIPResp.Port_details
	372, // 264: openstack.UpdateFloatingIPResp.Floatingip.port_forwardings:type_name -> openstack.UpdateFloatingIPResp.Port_forwardings
	374, // 265: openstack.ShowFloatingIPDetailsResp.Floatingip.port_details:type_name -> openstack.ShowFloatingIPDetailsResp.Port_details
	375, // 266: openstack.ShowFloatingIPDetailsResp.Floatingip.port_forwardings:type_name -> openstack.ShowFloatingIPDetailsResp.Port_forwardings
	391, // 267: openstack.ListSecurityGroupsResp.Security_groups.security_group_rules:type_name -> openstack.ListSecurityGroupsResp.Security_group_rules
	394, // 268: openstack.CreateSecurityGroupResp.Security_group.security_group_rules:type_name -> openstack.CreateSecurityGroupResp.Security_group_rules
	396, // 269: openstack.UpdateSecurityGroupResp.Security_group.security_group_rules:type_name -> openstack.UpdateSecurityGroupResp.Security_group_rules
	398, // 270: openstack.ShowSecurityGroupResp.Security_group.security_group_rules:type_name -> openstack.ShowSecurityGroupResp.Security_group_rules
	405, // 271: openstack.ListNodesResp.Nodes.links:type_name -> openstack.ListNodesResp.Links
	446, // 272: openstack.ListImagesResp.Images.tags:type_name -> openstack.ListImagesResp.Tags
	447, // 273: openstack.ListVolumesResp.Volumes.links:type_name -> openstack.ListVolumesResp.Links
	449, // 274: openstack.ListVolumesDetailResp.VolumeDetail.links:type_name -> openstack.ListVolumesDetailResp.Links
	450, // 275: openstack.ListVolumesDetailResp.VolumeDetail.attachments:type_name -> openstack.ListVolumesDetailResp.Attachments
	451, // 276: openstack.ListVolumesDetailResp.VolumeDetail.metadata:type_name -> openstack.ListVolumesDetailResp.Metadata
	453, // 277: openstack.CreateVolumeReq.Volume.metadata:type_name -> openstack.CreateVolumeReq.Metadata
	458, // 278: openstack.CreateVolumeResp.Volume.attachments:type_name -> openstack.CreateVolumeResp.Attachments
	455, // 279: openstack.CreateVolumeResp.Volume.links:type_name -> openstack.CreateVolumeResp.Links
	456, // 280: openstack.CreateVolumeResp.Volume.metadata:type_name -> openstack.CreateVolumeResp.Metadata
	459, // 281: openstack.UpdateVolumeReq.Volume.metadata:type_name -> openstack.UpdateVolumeReq.Metadata
	464, // 282: openstack.UpdateVolumeResp.Volume.attachments:type_name -> openstack.UpdateVolumeResp.Attachments
	461, // 283: openstack.UpdateVolumeResp.Volume.links:type_name -> openstack.UpdateVolumeResp.Links
	462, // 284: openstack.UpdateVolumeResp.Volume.metadata:type_name -> openstack.UpdateVolumeResp.Metadata
	467, // 285: openstack.GetVolumeDetailedByIdResp.Volume.attachments:type_name -> openstack.GetVolumeDetailedByIdResp.Attachments
	465, // 286: openstack.GetVolumeDetailedByIdResp.Volume.links:type_name -> openstack.GetVolumeDetailedByIdResp.Links
	466, // 287: openstack.GetVolumeDetailedByIdResp.Volume.metadata:type_name -> openstack.GetVolumeDetailedByIdResp.Metadata
	469, // 288: openstack.ListVolumeTypesResp.Volume_types.extra_specs:type_name -> openstack.ListVolumeTypesResp.Extra_specs
	471, // 289: openstack.CreateVolumeTypeReq.Volume_type.extra_specs:type_name -> openstack.CreateVolumeTypeReq.Extra_specs
	473, // 290: openstack.CreateVolumeTypeResp.Volume_type.extra_specs:type_name -> openstack.CreateVolumeTypeResp.Extra_specs
	0,   // 291: openstack.Openstack.GetComputeLimits:input_type -> openstack.GetComputeLimitsReq
	2,   // 292: openstack.Openstack.GetVolumeLimits:input_type -> openstack.GetVolumeLimitsReq
	4,   // 293: openstack.Openstack.ListServers:input_type -> openstack.ListServersReq
	6,   // 294: openstack.Openstack.ListServersDetailed:input_type -> openstack.ListServersDetailedReq
	8,   // 295: openstack.Openstack.CreateServer:input_type -> openstack.CreateServerReq
	10,  // 296: openstack.Openstack.DeleteServer:input_type -> openstack.DeleteServerReq
	12,  // 297: openstack.Openstack.GetServersDetailedById:input_type -> openstack.GetServersDetailedByIdReq
	14,  // 298: openstack.Openstack.UpdateServer:input_type -> openstack.UpdateServerReq
	18,  // 299: openstack.Openstack.StartServer:input_type -> openstack.StartServerReq
	20,  // 300: openstack.Openstack.StopServer:input_type -> openstack.StopServerReq
	22,  // 301: openstack.Openstack.RebootServer:input_type -> openstack.RebootServerReq
	24,  // 302: openstack.Openstack.PauseServer:input_type -> openstack.PauseServerReq
	38,  // 303: openstack.Openstack.UnpauseServer:input_type -> openstack.UnpauseServerReq
	26,  // 304: openstack.Openstack.RebuildServer:input_type -> openstack.RebuildServerReq
	28,  // 305: openstack.Openstack.ResizeServer:input_type -> openstack.ResizeServerReq
	30,  // 306: openstack.Openstack.MigrateServer:input_type -> openstack.MigrateServerReq
	40,  // 307: openstack.Openstack.ShelveServer:input_type -> openstack.ShelveServerReq
	42,  // 308: openstack.Openstack.UnshelveServer:input_type -> openstack.UnshelveServerReq
	32,  // 309: openstack.Openstack.ChangeAdministrativePassword:input_type -> openstack.ChangeAdministrativePasswordReq
	34,  // 310: openstack.Openstack.RescueServer:input_type -> openstack.RescueServerReq
	36,  // 311: openstack.Openstack.UnRescue:input_type -> openstack.UnRescueServerReq
	44,  // 312: openstack.Openstack.SuspendServer:input_type -> openstack.SuspendServerReq
	46,  // 313: openstack.Openstack.AddSecurityGroupToServer:input_type -> openstack.AddSecurityGroupToServerReq
	48,  // 314: openstack.Openstack.removeSecurityGroup:input_type -> openstack.removeSecurityGroupReq
	50,  // 315: openstack.Openstack.ListFlavorsDetail:input_type -> openstack.ListFlavorsDetailReq
	52,  // 316: openstack.Openstack.CreateFlavor:input_type -> openstack.CreateFlavorReq
	54,  // 317: openstack.Openstack.DeleteFlavor:input_type -> openstack.DeleteFlavorReq
	56,  // 318: openstack.Openstack.ShowNetworkDetails:input_type -> openstack.ShowNetworkDetailsReq
	59,  // 319: openstack.Openstack.UpdateNetwork:input_type -> openstack.UpdateNetworkReq
	61,  // 320: openstack.Openstack.DeleteNetwork:input_type -> openstack.DeleteNetworkReq
	63,  // 321: openstack.Openstack.ListNetworks:input_type -> openstack.ListNetworksReq
	65,  // 322: openstack.Openstack.CreateNetwork:input_type -> openstack.CreateNetworkReq
	72,  // 323: openstack.Openstack.BulkCreateNetworks:input_type -> openstack.BulkCreateNetworksReq
	67,  // 324: openstack.Openstack.CreateSubnet:input_type -> openstack.CreateSubnetReq
	74,  // 325: openstack.Openstack.ListSubnets:input_type -> openstack.ListSubnetsReq
	76,  // 326: openstack.Openstack.DeleteSubnet:input_type -> openstack.DeleteSubnetReq
	78,  // 327: openstack.Openstack.UpdateSubnet:input_type -> openstack.UpdateSubnetReq
	80,  // 328: openstack.Openstack.CreateNetworkSegmentRange:input_type -> openstack.CreateNetworkSegmentRangeReq
	82,  // 329: openstack.Openstack.ListNetworkSegmentRanges:input_type -> openstack.ListNetworkSegmentRangesReq
	84,  // 330: openstack.Openstack.DeleteNetworkSegmentRanges:input_type -> openstack.DeleteNetworkSegmentRangesReq
	86,  // 331: openstack.Openstack.UpdateNetworkSegmentRanges:input_type -> openstack.UpdateNetworkSegmentRangesReq
	88,  // 332: openstack.Openstack.ShowNetworkSegmentRangeDetails:input_type -> openstack.ShowNetworkSegmentRangeDetailsReq
	90,  // 333: openstack.Openstack.CreatePort:input_type -> openstack.CreatePortReq
	92,  // 334: openstack.Openstack.ListPorts:input_type -> openstack.ListPortsReq
	94,  // 335: openstack.Openstack.DeletePort:input_type -> openstack.DeletePortReq
	96,  // 336: openstack.Openstack.UpdatePort:input_type -> openstack.UpdatePortReq
	98,  // 337: openstack.Openstack.ShowPortDetails:input_type -> openstack.ShowPortDetailsReq
	102, // 338: openstack.Openstack.CreateRouter:input_type -> openstack.CreateRouterReq
	100, // 339: openstack.Openstack.ListRouters:input_type -> openstack.ListRoutersReq
	106, // 340: openstack.Openstack.ShowRouterDetails:input_type -> openstack.ShowRouterDetailsReq
	104, // 341: openstack.Openstack.UpdateRouter:input_type -> openstack.UpdateRouterReq
	108, // 342: openstack.Openstack.DeleteRouter:input_type -> openstack.DeleteRouterReq
	110, // 343: openstack.Openstack.ListFloatingIPs:input_type -> openstack.ListFloatingIPsReq
	112, // 344: openstack.Openstack.CreateFloatingIP:input_type -> openstack.CreateFloatingIPReq
	114, // 345: openstack.Openstack.UpdateFloatingIP:input_type -> openstack.UpdateFloatingIPReq
	116, // 346: openstack.Openstack.DeleteFloatingIP:input_type -> openstack.DeleteFloatingIPReq
	118, // 347: openstack.Openstack.ShowFloatingIPDetails:input_type -> openstack.ShowFloatingIPDetailsReq
	120, // 348: openstack.Openstack.ListFirewallGroups:input_type -> openstack.ListFirewallGroupsReq
	122, // 349: openstack.Openstack.DeleteFirewallGroup:input_type -> openstack.DeleteFirewallGroupReq
	124, // 350: openstack.Openstack.CreateFirewallGroup:input_type -> openstack.CreateFirewallGroupReq
	126, // 351: openstack.Openstack.UpdateFirewallGroup:input_type -> openstack.UpdateFirewallGroupReq
	128, // 352: openstack.Openstack.ShowFirewallGroupDetails:input_type -> openstack.ShowFirewallGroupDetailsReq
	130, // 353: openstack.Openstack.CreateFirewallPolicy:input_type -> openstack.CreateFirewallPolicyReq
	132, // 354: openstack.Openstack.DeleteFirewallPolicy:input_type -> openstack.DeleteFirewallPolicyReq
	134, // 355: openstack.Openstack.ListFirewallPolicies:input_type -> openstack.ListFirewallPoliciesReq
	136, // 356: openstack.Openstack.ShowFirewallPolicyDetails:input_type -> openstack.ShowFirewallPolicyDetailsReq
	138, // 357: openstack.Openstack.CreateFirewallRule:input_type -> openstack.CreateFirewallRuleReq
	140, // 358: openstack.Openstack.DeleteFirewallRule:input_type -> openstack.DeleteFirewallRuleReq
	142, // 359: openstack.Openstack.ListFirewallRules:input_type -> openstack.ListFirewallRulesReq
	144, // 360: openstack.Openstack.ShowFirewallRuleDetails:input_type -> openstack.ShowFirewallRuleDetailsReq
	146, // 361: openstack.Openstack.ListSecurityGroups:input_type -> openstack.ListSecurityGroupsReq
	148, // 362: openstack.Openstack.CreateSecurityGroup:input_type -> openstack.CreateSecurityGroupReq
	150, // 363: openstack.Openstack.DeleteSecurityGroup:input_type -> openstack.DeleteSecurityGroupReq
	152, // 364: openstack.Openstack.UpdateSecurityGroup:input_type -> openstack.UpdateSecurityGroupReq
	154, // 365: openstack.Openstack.ShowSecurityGroup:input_type -> openstack.ShowSecurityGroupReq
	156, // 366: openstack.Openstack.ListSecurityGroupRules:input_type -> openstack.ListSecurityGroupRulesReq
	158, // 367: openstack.Openstack.CreateSecurityGroupRule:input_type -> openstack.CreateSecurityGroupRuleReq
	160, // 368: openstack.Openstack.ShowSecurityGroupRule:input_type -> openstack.ShowSecurityGroupRuleReq
	162, // 369: openstack.Openstack.DeleteSecurityGroupRule:input_type -> openstack.DeleteSecurityGroupRuleReq
	172, // 370: openstack.Openstack.CreateImage:input_type -> openstack.CreateImageReq
	175, // 371: openstack.Openstack.ListImages:input_type -> openstack.ListImagesReq
	177, // 372: openstack.Openstack.DeleteImage:input_type -> openstack.DeleteImageReq
	179, // 373: openstack.Openstack.UploadImage:input_type -> openstack.UploadOsImageReq
	164, // 374: openstack.Openstack.ListNodes:input_type -> openstack.ListNodesReq
	166, // 375: openstack.Openstack.CreateNode:input_type -> openstack.CreateNodeReq
	168, // 376: openstack.Openstack.DeleteNode:input_type -> openstack.DeleteNodeReq
	170, // 377: openstack.Openstack.ShowNodeDetails:input_type -> openstack.ShowNodeDetailsReq
	181, // 378: openstack.Openstack.ListVolumes:input_type -> openstack.ListVolumesReq
	183, // 379: openstack.Openstack.ListVolumesDetail:input_type -> openstack.ListVolumesDetailReq
	185, // 380: openstack.Openstack.CreateVolume:input_type -> openstack.CreateVolumeReq
	187, // 381: openstack.Openstack.DeleteVolume:input_type -> openstack.DeleteVolumeReq
	189, // 382: openstack.Openstack.UpdateVolume:input_type -> openstack.UpdateVolumeReq
	191, // 383: openstack.Openstack.GetVolumeDetailedById:input_type -> openstack.GetVolumeDetailedByIdReq
	193, // 384: openstack.Openstack.ListVolumeTypes:input_type -> openstack.ListVolumeTypesReq
	195, // 385: openstack.Openstack.CreateVolumeTypes:input_type -> openstack.CreateVolumeTypeReq
	197, // 386: openstack.Openstack.DeleteVolumeTypes:input_type -> openstack.DeleteVolumeTypeReq
	1,   // 387: openstack.Openstack.GetComputeLimits:output_type -> openstack.GetComputeLimitsResp
	3,   // 388: openstack.Openstack.GetVolumeLimits:output_type -> openstack.GetVolumeLimitsResp
	5,   // 389: openstack.Openstack.ListServers:output_type -> openstack.ListServersResp
	7,   // 390: openstack.Openstack.ListServersDetailed:output_type -> openstack.ListServersDetailedResp
	9,   // 391: openstack.Openstack.CreateServer:output_type -> openstack.CreateServerResp
	11,  // 392: openstack.Openstack.DeleteServer:output_type -> openstack.DeleteServerResp
	13,  // 393: openstack.Openstack.GetServersDetailedById:output_type -> openstack.GetServersDetailedByIdResp
	17,  // 394: openstack.Openstack.UpdateServer:output_type -> openstack.UpdateServerResp
	19,  // 395: openstack.Openstack.StartServer:output_type -> openstack.StartServerResp
	21,  // 396: openstack.Openstack.StopServer:output_type -> openstack.StopServerResp
	23,  // 397: openstack.Openstack.RebootServer:output_type -> openstack.RebootServerResp
	25,  // 398: openstack.Openstack.PauseServer:output_type -> openstack.PauseServerResp
	39,  // 399: openstack.Openstack.UnpauseServer:output_type -> openstack.UnpauseServerResp
	27,  // 400: openstack.Openstack.RebuildServer:output_type -> openstack.RebuildServerResp
	29,  // 401: openstack.Openstack.ResizeServer:output_type -> openstack.ResizeServerResp
	31,  // 402: openstack.Openstack.MigrateServer:output_type -> openstack.MigrateServerResp
	41,  // 403: openstack.Openstack.ShelveServer:output_type -> openstack.ShelveServerResp
	43,  // 404: openstack.Openstack.UnshelveServer:output_type -> openstack.UnshelveServerResp
	33,  // 405: openstack.Openstack.ChangeAdministrativePassword:output_type -> openstack.ChangeAdministrativePasswordResp
	35,  // 406: openstack.Openstack.RescueServer:output_type -> openstack.RescueServerResp
	37,  // 407: openstack.Openstack.UnRescue:output_type -> openstack.UnRescueServerResp
	45,  // 408: openstack.Openstack.SuspendServer:output_type -> openstack.SuspendServerResp
	47,  // 409: openstack.Openstack.AddSecurityGroupToServer:output_type -> openstack.AddSecurityGroupToServerResp
	49,  // 410: openstack.Openstack.removeSecurityGroup:output_type -> openstack.removeSecurityGroupResp
	51,  // 411: openstack.Openstack.ListFlavorsDetail:output_type -> openstack.ListFlavorsDetailResp
	53,  // 412: openstack.Openstack.CreateFlavor:output_type -> openstack.CreateFlavorResp
	55,  // 413: openstack.Openstack.DeleteFlavor:output_type -> openstack.DeleteFlavorResp
	58,  // 414: openstack.Openstack.ShowNetworkDetails:output_type -> openstack.ShowNetworkDetailsResp
	60,  // 415: openstack.Openstack.UpdateNetwork:output_type -> openstack.UpdateNetworkResp
	62,  // 416: openstack.Openstack.DeleteNetwork:output_type -> openstack.DeleteNetworkResp
	64,  // 417: openstack.Openstack.ListNetworks:output_type -> openstack.ListNetworksResp
	66,  // 418: openstack.Openstack.CreateNetwork:output_type -> openstack.CreateNetworkResp
	73,  // 419: openstack.Openstack.BulkCreateNetworks:output_type -> openstack.BulkCreateNetworksResp
	68,  // 420: openstack.Openstack.CreateSubnet:output_type -> openstack.CreateSubnetResp
	75,  // 421: openstack.Openstack.ListSubnets:output_type -> openstack.ListSubnetsResp
	77,  // 422: openstack.Openstack.DeleteSubnet:output_type -> openstack.DeleteSubnetResp
	79,  // 423: openstack.Openstack.UpdateSubnet:output_type -> openstack.UpdateSubnetResp
	81,  // 424: openstack.Openstack.CreateNetworkSegmentRange:output_type -> openstack.CreateNetworkSegmentRangeResp
	83,  // 425: openstack.Openstack.ListNetworkSegmentRanges:output_type -> openstack.ListNetworkSegmentRangesResp
	85,  // 426: openstack.Openstack.DeleteNetworkSegmentRanges:output_type -> openstack.DeleteNetworkSegmentRangesResp
	87,  // 427: openstack.Openstack.UpdateNetworkSegmentRanges:output_type -> openstack.UpdateNetworkSegmentRangesResp
	89,  // 428: openstack.Openstack.ShowNetworkSegmentRangeDetails:output_type -> openstack.ShowNetworkSegmentRangeDetailsResp
	91,  // 429: openstack.Openstack.CreatePort:output_type -> openstack.CreatePortResp
	93,  // 430: openstack.Openstack.ListPorts:output_type -> openstack.ListPortsResp
	95,  // 431: openstack.Openstack.DeletePort:output_type -> openstack.DeletePortResp
	97,  // 432: openstack.Openstack.UpdatePort:output_type -> openstack.UpdatePortResp
	99,  // 433: openstack.Openstack.ShowPortDetails:output_type -> openstack.ShowPortDetailsResp
	103, // 434: openstack.Openstack.CreateRouter:output_type -> openstack.CreateRouterResp
	101, // 435: openstack.Openstack.ListRouters:output_type -> openstack.ListRoutersResp
	107, // 436: openstack.Openstack.ShowRouterDetails:output_type -> openstack.ShowRouterDetailsResp
	105, // 437: openstack.Openstack.UpdateRouter:output_type -> openstack.UpdateRouterResp
	109, // 438: openstack.Openstack.DeleteRouter:output_type -> openstack.DeleteRouterResp
	111, // 439: openstack.Openstack.ListFloatingIPs:output_type -> openstack.ListFloatingIPsResp
	113, // 440: openstack.Openstack.CreateFloatingIP:output_type -> openstack.CreateFloatingIPResp
	115, // 441: openstack.Openstack.UpdateFloatingIP:output_type -> openstack.UpdateFloatingIPResp
	117, // 442: openstack.Openstack.DeleteFloatingIP:output_type -> openstack.DeleteFloatingIPResp
	119, // 443: openstack.Openstack.ShowFloatingIPDetails:output_type -> openstack.ShowFloatingIPDetailsResp
	121, // 444: openstack.Openstack.ListFirewallGroups:output_type -> openstack.ListFirewallGroupsResp
	123, // 445: openstack.Openstack.DeleteFirewallGroup:output_type -> openstack.DeleteFirewallGroupResp
	125, // 446: openstack.Openstack.CreateFirewallGroup:output_type -> openstack.CreateFirewallGroupResp
	127, // 447: openstack.Openstack.UpdateFirewallGroup:output_type -> openstack.UpdateFirewallGroupResp
	129, // 448: openstack.Openstack.ShowFirewallGroupDetails:output_type -> openstack.ShowFirewallGroupDetailsResp
	131, // 449: openstack.Openstack.CreateFirewallPolicy:output_type -> openstack.CreateFirewallPolicyResp
	133, // 450: openstack.Openstack.DeleteFirewallPolicy:output_type -> openstack.DeleteFirewallPolicyResp
	135, // 451: openstack.Openstack.ListFirewallPolicies:output_type -> openstack.ListFirewallPoliciesResp
	137, // 452: openstack.Openstack.ShowFirewallPolicyDetails:output_type -> openstack.ShowFirewallPolicyDetailsResp
	139, // 453: openstack.Openstack.CreateFirewallRule:output_type -> openstack.CreateFirewallRuleResp
	141, // 454: openstack.Openstack.DeleteFirewallRule:output_type -> openstack.DeleteFirewallRuleResp
	143, // 455: openstack.Openstack.ListFirewallRules:output_type -> openstack.ListFirewallRulesResp
	145, // 456: openstack.Openstack.ShowFirewallRuleDetails:output_type -> openstack.ShowFirewallRuleDetailsResp
	147, // 457: openstack.Openstack.ListSecurityGroups:output_type -> openstack.ListSecurityGroupsResp
	149, // 458: openstack.Openstack.CreateSecurityGroup:output_type -> openstack.CreateSecurityGroupResp
	151, // 459: openstack.Openstack.DeleteSecurityGroup:output_type -> openstack.DeleteSecurityGroupResp
	153, // 460: openstack.Openstack.UpdateSecurityGroup:output_type -> openstack.UpdateSecurityGroupResp
	155, // 461: openstack.Openstack.ShowSecurityGroup:output_type -> openstack.ShowSecurityGroupResp
	157, // 462: openstack.Openstack.ListSecurityGroupRules:output_type -> openstack.ListSecurityGroupRulesResp
	159, // 463: openstack.Openstack.CreateSecurityGroupRule:output_type -> openstack.CreateSecurityGroupRuleResp
	161, // 464: openstack.Openstack.ShowSecurityGroupRule:output_type -> openstack.ShowSecurityGroupRuleResp
	163, // 465: openstack.Openstack.DeleteSecurityGroupRule:output_type -> openstack.DeleteSecurityGroupRuleResp
	174, // 466: openstack.Openstack.CreateImage:output_type -> openstack.CreateImageResp
	176, // 467: openstack.Openstack.ListImages:output_type -> openstack.ListImagesResp
	178, // 468: openstack.Openstack.DeleteImage:output_type -> openstack.DeleteImageResp
	180, // 469: openstack.Openstack.UploadImage:output_type -> openstack.UploadOsImageResp
	165, // 470: openstack.Openstack.ListNodes:output_type -> openstack.ListNodesResp
	167, // 471: openstack.Openstack.CreateNode:output_type -> openstack.CreateNodeResp
	169, // 472: openstack.Openstack.DeleteNode:output_type -> openstack.DeleteNodeResp
	171, // 473: openstack.Openstack.ShowNodeDetails:output_type -> openstack.ShowNodeDetailsResp
	182, // 474: openstack.Openstack.ListVolumes:output_type -> openstack.ListVolumesResp
	184, // 475: openstack.Openstack.ListVolumesDetail:output_type -> openstack.ListVolumesDetailResp
	186, // 476: openstack.Openstack.CreateVolume:output_type -> openstack.CreateVolumeResp
	188, // 477: openstack.Openstack.DeleteVolume:output_type -> openstack.DeleteVolumeResp
	190, // 478: openstack.Openstack.UpdateVolume:output_type -> openstack.UpdateVolumeResp
	192, // 479: openstack.Openstack.GetVolumeDetailedById:output_type -> openstack.GetVolumeDetailedByIdResp
	194, // 480: openstack.Openstack.ListVolumeTypes:output_type -> openstack.ListVolumeTypesResp
	196, // 481: openstack.Openstack.CreateVolumeTypes:output_type -> openstack.CreateVolumeTypeResp
	198, // 482: openstack.Openstack.DeleteVolumeTypes:output_type -> openstack.DeleteVolumeTypeResp
	387, // [387:483] is the sub-list for method output_type
	291, // [291:387] is the sub-list for method input_type
	291, // [291:291] is the sub-list for extension type_name
	291, // [291:291] is the sub-list for extension extendee
	0,   // [0:291] is the sub-list for field type_name
}

func init() { file_pcm_openstack_proto_init() }
func file_pcm_openstack_proto_init() {
	if File_pcm_openstack_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_pcm_openstack_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetComputeLimitsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetComputeLimitsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVolumeLimitsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVolumeLimitsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListServersReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListServersResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListServersDetailedReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListServersDetailedResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ServerUpdate); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Server); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StartServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StartServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StopServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StopServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebootServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebootServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PauseServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PauseServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ResizeServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ResizeServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MigrateServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MigrateServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChangeAdministrativePasswordReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChangeAdministrativePasswordResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RescueServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RescueServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UnRescueServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UnRescueServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UnpauseServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UnpauseServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShelveServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShelveServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UnshelveServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UnshelveServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SuspendServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SuspendServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AddSecurityGroupToServerReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AddSecurityGroupToServerResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RemoveSecurityGroupReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RemoveSecurityGroupResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFlavorsDetailReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFlavorsDetailResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFlavorReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFlavorResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFlavorReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFlavorResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNetworkDetailsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Network); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNetworkDetailsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateNetworkReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateNetworkResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteNetworkReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteNetworkResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNetworksReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNetworksResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNetworkReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNetworkResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSubnetReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSubnetResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Subnet); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SubnetResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AllocationPools); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BulkCreateNetworksReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BulkCreateNetworksResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSubnetsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSubnetsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteSubnetReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteSubnetResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSubnetReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSubnetResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNetworkSegmentRangeReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNetworkSegmentRangeResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNetworkSegmentRangesReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNetworkSegmentRangesResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteNetworkSegmentRangesReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteNetworkSegmentRangesResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateNetworkSegmentRangesReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateNetworkSegmentRangesResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNetworkSegmentRangeDetailsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNetworkSegmentRangeDetailsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreatePortReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreatePortResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListPortsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListPortsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeletePortReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeletePortResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowPortDetailsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowPortDetailsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListRoutersReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListRoutersResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateRouterReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateRouterResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteRouterReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteRouterResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFloatingIPsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFloatingIPsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFloatingIPReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFloatingIPResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFloatingIPReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFloatingIPResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFloatingIPReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFloatingIPResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFloatingIPDetailsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFloatingIPDetailsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFirewallGroupsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFirewallGroupsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFirewallGroupReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFirewallGroupResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallGroupReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallGroupResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFirewallGroupReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFirewallGroupResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFirewallGroupDetailsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFirewallGroupDetailsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallPolicyReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallPolicyResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFirewallPolicyReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFirewallPolicyResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFirewallPoliciesReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFirewallPoliciesResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFirewallPolicyDetailsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFirewallPolicyDetailsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallRuleReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallRuleResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFirewallRuleReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFirewallRuleResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFirewallRulesReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFirewallRulesResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFirewallRuleDetailsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFirewallRuleDetailsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSecurityGroupsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSecurityGroupsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSecurityGroupReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSecurityGroupResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteSecurityGroupReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteSecurityGroupResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSecurityGroupReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSecurityGroupResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowSecurityGroupReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowSecurityGroupResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSecurityGroupRulesReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSecurityGroupRulesResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSecurityGroupRuleReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSecurityGroupRuleResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowSecurityGroupRuleReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowSecurityGroupRuleResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteSecurityGroupRuleReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteSecurityGroupRuleResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNodesReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[165].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNodesResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[166].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[167].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[168].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteNodeReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[169].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteNodeResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[172].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateImageReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[173].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Tags); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[174].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateImageResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[175].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListImagesReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[176].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListImagesResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[177].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteImageReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[178].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteImageResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[179].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UploadOsImageReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[180].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UploadOsImageResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[181].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumesReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[182].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumesResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[183].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumesDetailReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[184].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumesDetailResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[185].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[186].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[187].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteVolumeReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[188].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteVolumeResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[189].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateVolumeReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[190].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateVolumeResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[191].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVolumeDetailedByIdReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[192].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVolumeDetailedByIdResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[193].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumeTypesReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[194].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumeTypesResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[195].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeTypeReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[196].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeTypeResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[197].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteVolumeTypeReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[198].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteVolumeTypeResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[199].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetComputeLimitsResp_Rate); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[200].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetComputeLimitsResp_Absolute); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[201].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetComputeLimitsResp_Limits); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[202].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVolumeLimitsResp_Rate); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[203].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVolumeLimitsResp_Absolute); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[204].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVolumeLimitsResp_Limits); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[205].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListServersResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[206].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListServersResp_Servers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[207].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListServersResp_ServersLinks); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[208].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListServersDetailedResp_ServersDetailed); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[209].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerReq_CrServer); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[210].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerReq_Networks); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[211].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerReq_BlockDeviceMappingV2); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[212].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerReq_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[213].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerReq_Personality); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[214].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerReq_SecurityGroups); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[215].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerReq_Server); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[216].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerReq_OsSchHntSchedulerHints); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[217].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[218].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerResp_SecurityGroups); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[219].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateServerResp_Server); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[220].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_Private); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[221].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_Addresses); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[222].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_ExtraSpecs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[223].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_Flavor); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[224].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[225].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_Image); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[226].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_Links1); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[227].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[228].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_OsExtendedVolumesVolumesAttached); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[229].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_Fault); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[230].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_SecurityGroups); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[231].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetServersDetailedByIdResp_Servers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[232].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerResp_Private); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[233].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerResp_Addresses); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[234].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerResp_ExtraSpecs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[235].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerResp_Flavor); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[236].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[237].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerResp_Image); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[238].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerResp_Links1); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[239].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerResp_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[240].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerResp_SecurityGroups); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[241].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateServerResp_Server); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[244].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebootServerReq_Reboot); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[246].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerReq_Rebuild); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[247].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerReq_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[248].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerReq_Personality); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[249].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerReqTrustedImageCertificates); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[250].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_Private); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[251].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_Addresses); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[252].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_ExtraSpecs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[253].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_Flavor); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[254].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[255].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_Image); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[256].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_Links1); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[257].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[258].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_OsExtendedVolumesVolumesAttached); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[259].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_Fault); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[260].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_SecurityGroups); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[261].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RebuildServerResp_Servers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[262].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ResizeServerReq_Resize); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[264].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MigrateServerReq_Migrate); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[266].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChangeAdministrativePasswordReq_Changepassword); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[267].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RescueServerReq_Rescue); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[273].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AddSecurityGroupToServerReq_AddSecurityGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[274].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RemoveSecurityGroupReq_RemoveSecurityGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[275].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFlavorsDetailResp_Flavor); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[276].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFlavorsDetailResp_ExtraSpecs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[277].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFlavorsDetailResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[278].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFlavorReq_Flavor); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[279].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFlavorResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[280].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFlavorResp_ExtraSpecs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[281].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFlavorResp_Flavor); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[282].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSubnetsResp_AllocationPools); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[283].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSubnetsResp_Subnets); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[284].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSubnetResp_AllocationPools); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[285].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSubnetResp_Subnet); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[286].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNetworkSegmentRangeReq_NetworkSegmentRange); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[287].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNetworkSegmentRangeResp_Used); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[288].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNetworkSegmentRangeResp_NetworkSegmentRange); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[289].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNetworkSegmentRangesResp_Used); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[290].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNetworkSegmentRangesResp_NetworkSegmentRanges); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[291].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateNetworkSegmentRangesReq_NetworkSegmentRanges); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[292].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateNetworkSegmentRangesReq_Used); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[293].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateNetworkSegmentRangesResp_Used); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[294].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateNetworkSegmentRangesResp_NetworkSegmentRange); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[295].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNetworkSegmentRangeDetailsResp_Used); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[296].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNetworkSegmentRangeDetailsResp_NetworkSegmentRange); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[297].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreatePortReq_AllowedAddressPairs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[298].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreatePortReq_Port); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[299].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreatePortResp_AllowedAddressPairs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[300].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreatePortResp_DnsAssignment); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[301].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreatePortResp_ExtraDhcpOpts); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[302].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreatePortResp_FixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[303].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreatePortResp_Port); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[304].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListPortsResp_DnsAssignment); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[305].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListPortsResp_ExtraDhcpOpts); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[306].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListPortsResp_FixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[307].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListPortsResp_AllowedAddressPairs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[308].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListPortsResp_SecurityGroups); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[309].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListPortsResp_Ports); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[310].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortReq_AllowedAddressPairs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[311].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortReq_DnsAssignment); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[312].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortReq_ExtraDhcpOpts); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[313].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortReq_FixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[314].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortReq_Port); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[315].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortResp_BindingProfile); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[316].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortResp_BindingVifDetails); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[317].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortResp_DnsAssignment); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[318].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortResp_ExtraDhcpOpts); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[319].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortResp_FixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[320].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortResp_AllowedAddressPairs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[321].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePortResp_Port); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[322].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowPortDetailsResp_DnsAssignment); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[323].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowPortDetailsResp_ExtraDhcpOpts); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[324].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowPortDetailsResp_FixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[325].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowPortDetailsResp_AllowedAddressPairs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[326].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowPortDetailsResp_SecurityGroups); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[327].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowPortDetailsResp_Port); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[328].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListRoutersResp_ExternalFixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[329].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListRoutersResp_ExternalGatewayInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[330].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListRoutersResp_Routes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[331].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListRoutersResp_ConntrackHelpers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[332].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListRoutersResp_AvailabilityZoneHints); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[333].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListRoutersResp_Routers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[334].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateRouterReq_ExternalFixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[335].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateRouterReq_ExternalGatewayInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[336].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateRouterReq_Router); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[337].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateRouterResp_ExternalFixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[338].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateRouterResp_ExternalGatewayInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[339].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateRouterResp_Routers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[340].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateRouterResp_AvailabilityZoneHints); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[341].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateRouterResp_ConntrackHelpers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[342].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateRouterResp_Router); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[343].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterReq_ExternalFixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[344].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterReq_Routes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[345].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterReq_ExternalGatewayInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[346].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterReq_Router); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[347].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterResp_ExternalFixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[348].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterResp_ExternalGatewayInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[349].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterResp_Routes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[350].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterResp_AvailabilityZoneHints); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[351].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterResp_ConntrackHelpers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[352].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateRouterResp_Router); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[353].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsReq_ExternalFixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[354].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsReq_Routes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[355].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsReq_ExternalGatewayInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[356].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsReq_Router); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[357].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsResp_ExternalFixedIps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[358].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsResp_ExternalGatewayInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[359].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsResp_Routes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[360].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsResp_AvailabilityZoneHints); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[361].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsResp_ConntrackHelpers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[362].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowRouterDetailsResp_Router); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[363].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFloatingIPsResp_PortDetails); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[364].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFloatingIPsResp_PortForwardings); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[365].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFloatingIPsResp_Floatingips); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[366].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFloatingIPReq_Floatingip); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[367].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFloatingIPResp_PortDetails); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[368].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFloatingIPResp_PortForwardings); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[369].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFloatingIPResp_Floatingip); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[370].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFloatingIPReq_Floatingip); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[371].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFloatingIPResp_PortDetails); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[372].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFloatingIPResp_PortForwardings); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[373].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFloatingIPResp_Floatingip); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[374].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFloatingIPDetailsResp_PortDetails); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[375].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFloatingIPDetailsResp_PortForwardings); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[376].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFloatingIPDetailsResp_Floatingip); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[377].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFirewallGroupsResp_FirewallGroups); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[378].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallGroupReq_FirewallGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[379].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallGroupResp_FirewallGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[380].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFirewallGroupReq_FirewallGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[381].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFirewallGroupResp_FirewallGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[382].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFirewallGroupDetailsResp_FirewallGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[383].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallPolicyReq_FirewallPolicy); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[384].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallPolicyResp_FirewallPolicy); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[385].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFirewallPoliciesResp_FirewallPolicies); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[386].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFirewallPolicyDetailsResp_FirewallPolicy); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[387].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallRuleReq_FirewallRule); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[388].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFirewallRuleResp_FirewallRule); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[389].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFirewallRulesResp_FirewallRules); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[390].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowFirewallRuleDetailsResp_FirewallRule); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[391].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSecurityGroupsResp_SecurityGroupRules); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[392].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSecurityGroupsResp_SecurityGroups); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[393].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSecurityGroupReq_SecurityGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[394].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSecurityGroupResp_SecurityGroupRules); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[395].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSecurityGroupResp_SecurityGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[396].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSecurityGroupResp_SecurityGroupRules); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[397].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSecurityGroupResp_SecurityGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[398].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowSecurityGroupResp_SecurityGroupRules); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[399].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowSecurityGroupResp_SecurityGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[400].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSecurityGroupRulesResp_SecurityGroupRules); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[401].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSecurityGroupRuleReq_SecurityGroupRule); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[402].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSecurityGroupRuleResp_SecurityGroupRule); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[403].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowSecurityGroupRuleResp_SecurityGroupRule); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[404].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteSecurityGroupRuleResp_SecurityGroupRule); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[405].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNodesResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[406].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListNodesResp_Nodes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[407].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeReq_DriverInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[408].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeReq_Properties); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[409].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeReq_InstanceInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[410].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeReq_NetworkData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[411].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_CleanStep); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[412].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_DeployStep); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[413].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_DriverInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[414].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_DriverInternalInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[415].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_Extra); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[416].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_InstanceInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[417].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[418].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_NetworkData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[419].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_Portgroups); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[420].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_Ports); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[421].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_Properties); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[422].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_RaidConfig); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[423].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_States); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[424].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_TargetRaidConfig); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[425].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateNodeResp_Volume); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[426].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsReq_Fields); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[427].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_CleanStep); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[428].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_DeployStep); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[429].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_DriverInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[430].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_DriverInternalInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[431].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_Extra); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[432].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_InstanceInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[433].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[434].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_NetworkData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[435].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_Portgroups); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[436].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_Ports); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[437].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_Properties); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[438].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_RaidConfig); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[439].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_States); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[440].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_TargetRaidConfig); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[441].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_Volume); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[442].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowNodeDetailsResp_Traits); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[443].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateImageResp_Tags); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[444].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateImageResp_Locations); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[445].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListImagesResp_Images); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[446].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListImagesResp_Tags); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[447].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumesResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[448].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumesResp_Volumes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[449].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumesDetailResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[450].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumesDetailResp_Attachments); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[451].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumesDetailResp_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[452].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumesDetailResp_VolumeDetail); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[453].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeReq_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[454].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeReq_Volume); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[455].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[456].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeResp_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[457].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeResp_Volume); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[458].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeResp_Attachments); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[459].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateVolumeReq_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[460].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateVolumeReq_Volume); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[461].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateVolumeResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[462].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateVolumeResp_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[463].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateVolumeResp_Volume); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[464].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateVolumeResp_Attachments); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[465].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVolumeDetailedByIdResp_Links); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[466].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVolumeDetailedByIdResp_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[467].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVolumeDetailedByIdResp_Attachments); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[468].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVolumeDetailedByIdResp_Volume); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[469].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumeTypesResp_ExtraSpecs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[470].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVolumeTypesResp_VolumeTypes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[471].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeTypeReq_ExtraSpecs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[472].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeTypeReq_VolumeType); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[473].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeTypeResp_ExtraSpecs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pcm_openstack_proto_msgTypes[474].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVolumeTypeResp_VolumeType); 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_pcm_openstack_proto_rawDesc,
			NumEnums:      0,
			NumMessages:   475,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_pcm_openstack_proto_goTypes,
		DependencyIndexes: file_pcm_openstack_proto_depIdxs,
		MessageInfos:      file_pcm_openstack_proto_msgTypes,
	}.Build()
	File_pcm_openstack_proto = out.File
	file_pcm_openstack_proto_rawDesc = nil
	file_pcm_openstack_proto_goTypes = nil
	file_pcm_openstack_proto_depIdxs = nil
}
