//
//Сервис помещений

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.30.0
// 	protoc        v4.23.1
// source: keyapis/access_control/v1/keyapis_access_control_access_control_v1.proto

package keyapis_access_control_v1

import (
	_ "google.golang.org/genproto/googleapis/api/annotations"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
	reflect "reflect"
	sync "sync"
)

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

// Тип
type Room_Type int32

const (
	// Значение не указано
	Room_TYPE_UNKNOWN Room_Type = 0
	// Этаж
	Room_FLOOR Room_Type = 1
	// Подъезд
	Room_ENTRANCE Room_Type = 2
	// Апартаменты
	Room_APARTMENT Room_Type = 3
	// Вводно-распределительные устройства
	Room_WATER_DISTRIBUTION Room_Type = 4
	// Индивидуальный тепловой пункт
	Room_HEAT_POINT Room_Type = 5
	// Кладовая
	Room_PANTRY Room_Type = 6
	// Колясочная
	Room_WHEELCHAIR Room_Type = 7
	// Коммутационный шкаф
	Room_WIRING_CLOSET Room_Type = 8
	// Консьержная
	Room_CONCIERGE Room_Type = 9
	// КПП
	Room_CHECKPOINT Room_Type = 10
	// Машиноместо
	Room_PARKING_PLACE Room_Type = 11
	// Офис
	Room_OFFICE Room_Type = 12
	// Подвал
	Room_BASEMENT Room_Type = 13
	// Подстанция
	Room_SUBSTATION Room_Type = 14
	// Помещение правления ТСЖ
	Room_HOMEOWNERS_ROOM Room_Type = 15
	// Тамбур
	Room_TAMBOUR Room_Type = 16
	// Узел ввода
	Room_INPUT_NODE Room_Type = 17
	// Лобби
	Room_LOBBY Room_Type = 18
	// Чердак
	Room_ATTIC Room_Type = 19
	// Шахта лифта
	Room_ELEVATOR_SHAFT Room_Type = 20
	// Электрощитовая
	Room_SWITCHBOARD Room_Type = 21
	// Квартира по умолчанию
	Room_DEFAULT_ROOM Room_Type = 22
)

// Enum value maps for Room_Type.
var (
	Room_Type_name = map[int32]string{
		0:  "TYPE_UNKNOWN",
		1:  "FLOOR",
		2:  "ENTRANCE",
		3:  "APARTMENT",
		4:  "WATER_DISTRIBUTION",
		5:  "HEAT_POINT",
		6:  "PANTRY",
		7:  "WHEELCHAIR",
		8:  "WIRING_CLOSET",
		9:  "CONCIERGE",
		10: "CHECKPOINT",
		11: "PARKING_PLACE",
		12: "OFFICE",
		13: "BASEMENT",
		14: "SUBSTATION",
		15: "HOMEOWNERS_ROOM",
		16: "TAMBOUR",
		17: "INPUT_NODE",
		18: "LOBBY",
		19: "ATTIC",
		20: "ELEVATOR_SHAFT",
		21: "SWITCHBOARD",
		22: "DEFAULT_ROOM",
	}
	Room_Type_value = map[string]int32{
		"TYPE_UNKNOWN":       0,
		"FLOOR":              1,
		"ENTRANCE":           2,
		"APARTMENT":          3,
		"WATER_DISTRIBUTION": 4,
		"HEAT_POINT":         5,
		"PANTRY":             6,
		"WHEELCHAIR":         7,
		"WIRING_CLOSET":      8,
		"CONCIERGE":          9,
		"CHECKPOINT":         10,
		"PARKING_PLACE":      11,
		"OFFICE":             12,
		"BASEMENT":           13,
		"SUBSTATION":         14,
		"HOMEOWNERS_ROOM":    15,
		"TAMBOUR":            16,
		"INPUT_NODE":         17,
		"LOBBY":              18,
		"ATTIC":              19,
		"ELEVATOR_SHAFT":     20,
		"SWITCHBOARD":        21,
		"DEFAULT_ROOM":       22,
	}
)

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

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

func (Room_Type) Descriptor() protoreflect.EnumDescriptor {
	return file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_enumTypes[0].Descriptor()
}

func (Room_Type) Type() protoreflect.EnumType {
	return &file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_enumTypes[0]
}

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

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

// Справочник значений режимов подписки
type PatchRoomSetSubscriptionModeRequest_ModeType int32

const (
	// Значение не указано
	PatchRoomSetSubscriptionModeRequest_MODE_TYPE_UNKNOWN PatchRoomSetSubscriptionModeRequest_ModeType = 0
	// Выключено
	PatchRoomSetSubscriptionModeRequest_DISABLED PatchRoomSetSubscriptionModeRequest_ModeType = 1
	// Включено
	PatchRoomSetSubscriptionModeRequest_ENABLED PatchRoomSetSubscriptionModeRequest_ModeType = 2
)

// Enum value maps for PatchRoomSetSubscriptionModeRequest_ModeType.
var (
	PatchRoomSetSubscriptionModeRequest_ModeType_name = map[int32]string{
		0: "MODE_TYPE_UNKNOWN",
		1: "DISABLED",
		2: "ENABLED",
	}
	PatchRoomSetSubscriptionModeRequest_ModeType_value = map[string]int32{
		"MODE_TYPE_UNKNOWN": 0,
		"DISABLED":          1,
		"ENABLED":           2,
	}
)

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

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

func (PatchRoomSetSubscriptionModeRequest_ModeType) Descriptor() protoreflect.EnumDescriptor {
	return file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_enumTypes[1].Descriptor()
}

func (PatchRoomSetSubscriptionModeRequest_ModeType) Type() protoreflect.EnumType {
	return &file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_enumTypes[1]
}

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

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

// Справочник типов значений сортировки.
// # Тип: byte
type RoomPaging_OrderByType int32

const (
	// Значение не указано
	RoomPaging_ORDER_BY_TYPE_UNKNOWN RoomPaging_OrderByType = 0
	// По идентификатору
	RoomPaging_ID RoomPaging_OrderByType = 1
	// По времени создания
	RoomPaging_CREATED_AT RoomPaging_OrderByType = 2
	// По этажу и номеру
	RoomPaging_FLOOR_THEN_NUMBER RoomPaging_OrderByType = 3
	// По номеру
	RoomPaging_NUMBER RoomPaging_OrderByType = 4
)

// Enum value maps for RoomPaging_OrderByType.
var (
	RoomPaging_OrderByType_name = map[int32]string{
		0: "ORDER_BY_TYPE_UNKNOWN",
		1: "ID",
		2: "CREATED_AT",
		3: "FLOOR_THEN_NUMBER",
		4: "NUMBER",
	}
	RoomPaging_OrderByType_value = map[string]int32{
		"ORDER_BY_TYPE_UNKNOWN": 0,
		"ID":                    1,
		"CREATED_AT":            2,
		"FLOOR_THEN_NUMBER":     3,
		"NUMBER":                4,
	}
)

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

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

func (RoomPaging_OrderByType) Descriptor() protoreflect.EnumDescriptor {
	return file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_enumTypes[2].Descriptor()
}

func (RoomPaging_OrderByType) Type() protoreflect.EnumType {
	return &file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_enumTypes[2]
}

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

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

// Справочник типов направлений сортировки.
// # Тип: byte
type RoomPaging_DirectionType int32

const (
	// Значение не указано
	RoomPaging_DIRECTION_TYPE_UNKNOWN RoomPaging_DirectionType = 0
	// От большего к меньшему
	RoomPaging_DESC RoomPaging_DirectionType = 1
	// От меньшего к большему
	RoomPaging_ASC RoomPaging_DirectionType = 2
)

// Enum value maps for RoomPaging_DirectionType.
var (
	RoomPaging_DirectionType_name = map[int32]string{
		0: "DIRECTION_TYPE_UNKNOWN",
		1: "DESC",
		2: "ASC",
	}
	RoomPaging_DirectionType_value = map[string]int32{
		"DIRECTION_TYPE_UNKNOWN": 0,
		"DESC":                   1,
		"ASC":                    2,
	}
)

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

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

func (RoomPaging_DirectionType) Descriptor() protoreflect.EnumDescriptor {
	return file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_enumTypes[3].Descriptor()
}

func (RoomPaging_DirectionType) Type() protoreflect.EnumType {
	return &file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_enumTypes[3]
}

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

// Deprecated: Use RoomPaging_DirectionType.Descriptor instead.
func (RoomPaging_DirectionType) EnumDescriptor() ([]byte, []int) {
	return file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDescGZIP(), []int{12, 1}
}

// Квартира
type Room struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Идентификатор квартиры
	Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// Номер
	Number string `protobuf:"bytes,2,opt,name=number,proto3" json:"number,omitempty"`
	// Подъезд
	Entrance int32 `protobuf:"varint,3,opt,name=entrance,proto3" json:"entrance,omitempty"`
	// Этаж
	Floor int32 `protobuf:"varint,4,opt,name=floor,proto3" json:"floor,omitempty"`
	// Площадь
	Area float32 `protobuf:"fixed32,5,opt,name=area,proto3" json:"area,omitempty"`
	// Идентификатор дома
	BuildingId int32 `protobuf:"varint,6,opt,name=building_id,json=buildingId,proto3" json:"building_id,omitempty"`
	// Идентификатор компании
	CompanyId int32 `protobuf:"varint,7,opt,name=company_id,json=companyId,proto3" json:"company_id,omitempty"`
	// Номер абонента
	AbonentId string `protobuf:"bytes,8,opt,name=abonent_id,json=abonentId,proto3" json:"abonent_id,omitempty"`
	// Тип
	Type Room_Type `protobuf:"varint,9,opt,name=type,proto3,enum=keyapis.access_control.v1.Room_Type" json:"type,omitempty"`
	// Дата создания.
	// # Тип: DateTime
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	// Дата удаления.
	// # Тип: DateTime
	DeletedAt *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=deleted_at,json=deletedAt,proto3" json:"deleted_at,omitempty"`
	// Включен ли режим подписок
	IsSubscriptionModeEnabled bool `protobuf:"varint,12,opt,name=is_subscription_mode_enabled,json=isSubscriptionModeEnabled,proto3" json:"is_subscription_mode_enabled,omitempty"`
}

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

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

func (*Room) ProtoMessage() {}

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

func (x *Room) GetId() int32 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *Room) GetNumber() string {
	if x != nil {
		return x.Number
	}
	return ""
}

func (x *Room) GetEntrance() int32 {
	if x != nil {
		return x.Entrance
	}
	return 0
}

func (x *Room) GetFloor() int32 {
	if x != nil {
		return x.Floor
	}
	return 0
}

func (x *Room) GetArea() float32 {
	if x != nil {
		return x.Area
	}
	return 0
}

func (x *Room) GetBuildingId() int32 {
	if x != nil {
		return x.BuildingId
	}
	return 0
}

func (x *Room) GetCompanyId() int32 {
	if x != nil {
		return x.CompanyId
	}
	return 0
}

func (x *Room) GetAbonentId() string {
	if x != nil {
		return x.AbonentId
	}
	return ""
}

func (x *Room) GetType() Room_Type {
	if x != nil {
		return x.Type
	}
	return Room_TYPE_UNKNOWN
}

func (x *Room) GetCreatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.CreatedAt
	}
	return nil
}

func (x *Room) GetDeletedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.DeletedAt
	}
	return nil
}

func (x *Room) GetIsSubscriptionModeEnabled() bool {
	if x != nil {
		return x.IsSubscriptionModeEnabled
	}
	return false
}

// Запрос получения квартиры
type GetRoomRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Идентификатор квартиры
	Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
}

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

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

func (*GetRoomRequest) ProtoMessage() {}

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

func (x *GetRoomRequest) GetId() int32 {
	if x != nil {
		return x.Id
	}
	return 0
}

// Ответ на запрос получения квартиры
type GetRoomResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Тип результата
	//
	// Types that are assignable to Type:
	//
	//	*GetRoomResponse_Data
	//	*GetRoomResponse_Error_
	Type isGetRoomResponse_Type `protobuf_oneof:"type"`
}

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

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

func (*GetRoomResponse) ProtoMessage() {}

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

func (m *GetRoomResponse) GetType() isGetRoomResponse_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (x *GetRoomResponse) GetData() *Room {
	if x, ok := x.GetType().(*GetRoomResponse_Data); ok {
		return x.Data
	}
	return nil
}

func (x *GetRoomResponse) GetError() *GetRoomResponse_Error {
	if x, ok := x.GetType().(*GetRoomResponse_Error_); ok {
		return x.Error
	}
	return nil
}

type isGetRoomResponse_Type interface {
	isGetRoomResponse_Type()
}

type GetRoomResponse_Data struct {
	// Квартира
	Data *Room `protobuf:"bytes,1,opt,name=data,proto3,oneof"`
}

type GetRoomResponse_Error_ struct {
	// Ошибка
	Error *GetRoomResponse_Error `protobuf:"bytes,2,opt,name=error,proto3,oneof"`
}

func (*GetRoomResponse_Data) isGetRoomResponse_Type() {}

func (*GetRoomResponse_Error_) isGetRoomResponse_Type() {}

// Запрос на установку режима подписок
type PatchRoomSetSubscriptionModeRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Список идентификаторов МРФ
	MrfIds []int32 `protobuf:"varint,1,rep,packed,name=mrf_ids,json=mrfIds,proto3" json:"mrf_ids,omitempty"`
	// Список идентификаторов РФ
	RfIds []int32 `protobuf:"varint,2,rep,packed,name=rf_ids,json=rfIds,proto3" json:"rf_ids,omitempty"`
	// Идентификатор ОРПОН дома
	OrponId int64 `protobuf:"varint,3,opt,name=orpon_id,json=orponId,proto3" json:"orpon_id,omitempty"`
	// Список номеров квартир
	RoomNumbers []string `protobuf:"bytes,4,rep,name=room_numbers,json=roomNumbers,proto3" json:"room_numbers,omitempty"`
	// Значение режима подписок
	ModeType PatchRoomSetSubscriptionModeRequest_ModeType `protobuf:"varint,5,opt,name=mode_type,json=modeType,proto3,enum=keyapis.access_control.v1.PatchRoomSetSubscriptionModeRequest_ModeType" json:"mode_type,omitempty"`
}

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

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

func (*PatchRoomSetSubscriptionModeRequest) ProtoMessage() {}

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

func (x *PatchRoomSetSubscriptionModeRequest) GetMrfIds() []int32 {
	if x != nil {
		return x.MrfIds
	}
	return nil
}

func (x *PatchRoomSetSubscriptionModeRequest) GetRfIds() []int32 {
	if x != nil {
		return x.RfIds
	}
	return nil
}

func (x *PatchRoomSetSubscriptionModeRequest) GetOrponId() int64 {
	if x != nil {
		return x.OrponId
	}
	return 0
}

func (x *PatchRoomSetSubscriptionModeRequest) GetRoomNumbers() []string {
	if x != nil {
		return x.RoomNumbers
	}
	return nil
}

func (x *PatchRoomSetSubscriptionModeRequest) GetModeType() PatchRoomSetSubscriptionModeRequest_ModeType {
	if x != nil {
		return x.ModeType
	}
	return PatchRoomSetSubscriptionModeRequest_MODE_TYPE_UNKNOWN
}

// Ответ на запрос на установку режима подписок
type PatchRoomSetSubscriptionModeResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Тип ответа
	//
	// Types that are assignable to Type:
	//
	//	*PatchRoomSetSubscriptionModeResponse_Error_
	Type isPatchRoomSetSubscriptionModeResponse_Type `protobuf_oneof:"type"`
}

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

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

func (*PatchRoomSetSubscriptionModeResponse) ProtoMessage() {}

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

func (m *PatchRoomSetSubscriptionModeResponse) GetType() isPatchRoomSetSubscriptionModeResponse_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (x *PatchRoomSetSubscriptionModeResponse) GetError() *PatchRoomSetSubscriptionModeResponse_Error {
	if x, ok := x.GetType().(*PatchRoomSetSubscriptionModeResponse_Error_); ok {
		return x.Error
	}
	return nil
}

type isPatchRoomSetSubscriptionModeResponse_Type interface {
	isPatchRoomSetSubscriptionModeResponse_Type()
}

type PatchRoomSetSubscriptionModeResponse_Error_ struct {
	// Ошибка
	Error *PatchRoomSetSubscriptionModeResponse_Error `protobuf:"bytes,1,opt,name=error,proto3,oneof"`
}

func (*PatchRoomSetSubscriptionModeResponse_Error_) isPatchRoomSetSubscriptionModeResponse_Type() {}

// Запрос получения списка квартир
type GetRoomListRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Фильтр
	Filter *RoomFilter `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
	// Вариант разбиения на страницы
	//
	// Types that are assignable to Pagination:
	//
	//	*GetRoomListRequest_Paging
	Pagination isGetRoomListRequest_Pagination `protobuf_oneof:"pagination"`
}

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

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

func (*GetRoomListRequest) ProtoMessage() {}

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

func (x *GetRoomListRequest) GetFilter() *RoomFilter {
	if x != nil {
		return x.Filter
	}
	return nil
}

func (m *GetRoomListRequest) GetPagination() isGetRoomListRequest_Pagination {
	if m != nil {
		return m.Pagination
	}
	return nil
}

func (x *GetRoomListRequest) GetPaging() *RoomPaging {
	if x, ok := x.GetPagination().(*GetRoomListRequest_Paging); ok {
		return x.Paging
	}
	return nil
}

type isGetRoomListRequest_Pagination interface {
	isGetRoomListRequest_Pagination()
}

type GetRoomListRequest_Paging struct {
	// Стандартный постраничный вывод
	Paging *RoomPaging `protobuf:"bytes,2,opt,name=paging,proto3,oneof"`
}

func (*GetRoomListRequest_Paging) isGetRoomListRequest_Pagination() {}

// Ответ на запрос получения списка квартир
type GetRoomListResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Тип результата
	//
	// Types that are assignable to Type:
	//
	//	*GetRoomListResponse_Data
	//	*GetRoomListResponse_Error_
	Type isGetRoomListResponse_Type `protobuf_oneof:"type"`
}

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

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

func (*GetRoomListResponse) ProtoMessage() {}

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

func (m *GetRoomListResponse) GetType() isGetRoomListResponse_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (x *GetRoomListResponse) GetData() *Room {
	if x, ok := x.GetType().(*GetRoomListResponse_Data); ok {
		return x.Data
	}
	return nil
}

func (x *GetRoomListResponse) GetError() *GetRoomListResponse_Error {
	if x, ok := x.GetType().(*GetRoomListResponse_Error_); ok {
		return x.Error
	}
	return nil
}

type isGetRoomListResponse_Type interface {
	isGetRoomListResponse_Type()
}

type GetRoomListResponse_Data struct {
	// Квартира
	Data *Room `protobuf:"bytes,1,opt,name=data,proto3,oneof"`
}

type GetRoomListResponse_Error_ struct {
	// Ошибка
	Error *GetRoomListResponse_Error `protobuf:"bytes,2,opt,name=error,proto3,oneof"`
}

func (*GetRoomListResponse_Data) isGetRoomListResponse_Type() {}

func (*GetRoomListResponse_Error_) isGetRoomListResponse_Type() {}

// Запрос получения количества квартир
type GetRoomCountRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Фильтр
	Filter *RoomFilter `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
}

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

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

func (*GetRoomCountRequest) ProtoMessage() {}

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

func (x *GetRoomCountRequest) GetFilter() *RoomFilter {
	if x != nil {
		return x.Filter
	}
	return nil
}

// Ответ на запрос получения количества квартир
type GetRoomCountResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Тип результата
	//
	// Types that are assignable to Type:
	//
	//	*GetRoomCountResponse_Data
	Type isGetRoomCountResponse_Type `protobuf_oneof:"type"`
}

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

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

func (*GetRoomCountResponse) ProtoMessage() {}

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

func (m *GetRoomCountResponse) GetType() isGetRoomCountResponse_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (x *GetRoomCountResponse) GetData() int32 {
	if x, ok := x.GetType().(*GetRoomCountResponse_Data); ok {
		return x.Data
	}
	return 0
}

type isGetRoomCountResponse_Type interface {
	isGetRoomCountResponse_Type()
}

type GetRoomCountResponse_Data struct {
	// Количество
	Data int32 `protobuf:"varint,1,opt,name=data,proto3,oneof"`
}

func (*GetRoomCountResponse_Data) isGetRoomCountResponse_Type() {}

// Фильтр по квартирам
type RoomFilter struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// По идентификаторам домов
	BuildingIds []int32 `protobuf:"varint,1,rep,packed,name=building_ids,json=buildingIds,proto3" json:"building_ids,omitempty"`
	// По подъездам
	Entrances []int32 `protobuf:"varint,2,rep,packed,name=entrances,proto3" json:"entrances,omitempty"`
	// По этажам
	Floors []int32 `protobuf:"varint,3,rep,packed,name=floors,proto3" json:"floors,omitempty"`
	// По идентификаторам компаний
	CompanyIds []int32 `protobuf:"varint,4,rep,packed,name=company_ids,json=companyIds,proto3" json:"company_ids,omitempty"`
	// По типам
	Types []Room_Type `protobuf:"varint,5,rep,packed,name=types,proto3,enum=keyapis.access_control.v1.Room_Type" json:"types,omitempty"`
	// По идентификаторам устройств
	DeviceIds []int32 `protobuf:"varint,6,rep,packed,name=device_ids,json=deviceIds,proto3" json:"device_ids,omitempty"`
	// По ОРПОНам
	Orpons []int64 `protobuf:"varint,7,rep,packed,name=orpons,proto3" json:"orpons,omitempty"`
	// По признаку служебной квартиры
	IsServiceFlag *wrapperspb.BoolValue `protobuf:"bytes,8,opt,name=is_service_flag,json=isServiceFlag,proto3" json:"is_service_flag,omitempty"`
	// По номерам квартир
	RoomNumbers []string `protobuf:"bytes,9,rep,name=room_numbers,json=roomNumbers,proto3" json:"room_numbers,omitempty"`
}

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

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

func (*RoomFilter) ProtoMessage() {}

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

func (x *RoomFilter) GetBuildingIds() []int32 {
	if x != nil {
		return x.BuildingIds
	}
	return nil
}

func (x *RoomFilter) GetEntrances() []int32 {
	if x != nil {
		return x.Entrances
	}
	return nil
}

func (x *RoomFilter) GetFloors() []int32 {
	if x != nil {
		return x.Floors
	}
	return nil
}

func (x *RoomFilter) GetCompanyIds() []int32 {
	if x != nil {
		return x.CompanyIds
	}
	return nil
}

func (x *RoomFilter) GetTypes() []Room_Type {
	if x != nil {
		return x.Types
	}
	return nil
}

func (x *RoomFilter) GetDeviceIds() []int32 {
	if x != nil {
		return x.DeviceIds
	}
	return nil
}

func (x *RoomFilter) GetOrpons() []int64 {
	if x != nil {
		return x.Orpons
	}
	return nil
}

func (x *RoomFilter) GetIsServiceFlag() *wrapperspb.BoolValue {
	if x != nil {
		return x.IsServiceFlag
	}
	return nil
}

func (x *RoomFilter) GetRoomNumbers() []string {
	if x != nil {
		return x.RoomNumbers
	}
	return nil
}

// Запрос проверки существования квартиры по ОРПОН и её номеру
type GetRoomOrponNumberExistsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// ОРПОН дома.
	// # Диапазон: 1..9223372036854775807
	Orpon int64 `protobuf:"varint,1,opt,name=orpon,proto3" json:"orpon,omitempty"`
	// Номер квартиры.
	// # Диапазон: 1..4
	RoomNumber string `protobuf:"bytes,2,opt,name=room_number,json=roomNumber,proto3" json:"room_number,omitempty"`
}

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

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

func (*GetRoomOrponNumberExistsRequest) ProtoMessage() {}

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

func (x *GetRoomOrponNumberExistsRequest) GetOrpon() int64 {
	if x != nil {
		return x.Orpon
	}
	return 0
}

func (x *GetRoomOrponNumberExistsRequest) GetRoomNumber() string {
	if x != nil {
		return x.RoomNumber
	}
	return ""
}

// Ответ на запрос проверки существования квартиры
type GetRoomOrponNumberExistsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Тип результата
	//
	// Types that are assignable to Type:
	//
	//	*GetRoomOrponNumberExistsResponse_Data
	//	*GetRoomOrponNumberExistsResponse_Error_
	Type isGetRoomOrponNumberExistsResponse_Type `protobuf_oneof:"type"`
}

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

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

func (*GetRoomOrponNumberExistsResponse) ProtoMessage() {}

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

func (m *GetRoomOrponNumberExistsResponse) GetType() isGetRoomOrponNumberExistsResponse_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (x *GetRoomOrponNumberExistsResponse) GetData() bool {
	if x, ok := x.GetType().(*GetRoomOrponNumberExistsResponse_Data); ok {
		return x.Data
	}
	return false
}

func (x *GetRoomOrponNumberExistsResponse) GetError() *GetRoomOrponNumberExistsResponse_Error {
	if x, ok := x.GetType().(*GetRoomOrponNumberExistsResponse_Error_); ok {
		return x.Error
	}
	return nil
}

type isGetRoomOrponNumberExistsResponse_Type interface {
	isGetRoomOrponNumberExistsResponse_Type()
}

type GetRoomOrponNumberExistsResponse_Data struct {
	// Результат проверки: true - если квартира существует, false - в противном случае
	Data bool `protobuf:"varint,1,opt,name=data,proto3,oneof"`
}

type GetRoomOrponNumberExistsResponse_Error_ struct {
	// Ошибка
	Error *GetRoomOrponNumberExistsResponse_Error `protobuf:"bytes,2,opt,name=error,proto3,oneof"`
}

func (*GetRoomOrponNumberExistsResponse_Data) isGetRoomOrponNumberExistsResponse_Type() {}

func (*GetRoomOrponNumberExistsResponse_Error_) isGetRoomOrponNumberExistsResponse_Type() {}

// Постраничный вывод
type RoomPaging struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Тип значения сортировки.
	// Если значение не передано, то будет взято значение по умолчанию.
	// # По умолчанию: CREATED_AT
	OrderByType RoomPaging_OrderByType `protobuf:"varint,1,opt,name=order_by_type,json=orderByType,proto3,enum=keyapis.access_control.v1.RoomPaging_OrderByType" json:"order_by_type,omitempty"`
	// Тип направления сортировки.
	// # По умолчанию: DESC
	DirectionType RoomPaging_DirectionType `protobuf:"varint,2,opt,name=direction_type,json=directionType,proto3,enum=keyapis.access_control.v1.RoomPaging_DirectionType" json:"direction_type,omitempty"`
	// Количество записей на страницу.
	// Если значение 0 (не передано), то будет взято значение по умолчанию.
	// # Диапазон: 0..100.
	// # По умолчанию: 20
	Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`
	// Сдвиг.
	// # Диапазон: 0..2147483647
	Offset int32 `protobuf:"varint,4,opt,name=offset,proto3" json:"offset,omitempty"`
}

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

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

func (*RoomPaging) ProtoMessage() {}

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

func (x *RoomPaging) GetOrderByType() RoomPaging_OrderByType {
	if x != nil {
		return x.OrderByType
	}
	return RoomPaging_ORDER_BY_TYPE_UNKNOWN
}

func (x *RoomPaging) GetDirectionType() RoomPaging_DirectionType {
	if x != nil {
		return x.DirectionType
	}
	return RoomPaging_DIRECTION_TYPE_UNKNOWN
}

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

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

// Ошибки валидации.
// Эти проверки выполняются до обращения в базу данных
type ValidationError struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Путь к полю в формате наименования прото
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// Валидационное сообщение
	Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
}

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

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

func (*ValidationError) ProtoMessage() {}

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

func (x *ValidationError) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

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

// Ошибка
type GetRoomResponse_Error struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Причина ошибки
	//
	// Types that are assignable to Reason:
	//
	//	*GetRoomResponse_Error_Validation
	Reason isGetRoomResponse_Error_Reason `protobuf_oneof:"reason"`
}

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

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

func (*GetRoomResponse_Error) ProtoMessage() {}

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

func (m *GetRoomResponse_Error) GetReason() isGetRoomResponse_Error_Reason {
	if m != nil {
		return m.Reason
	}
	return nil
}

func (x *GetRoomResponse_Error) GetValidation() *ValidationError {
	if x, ok := x.GetReason().(*GetRoomResponse_Error_Validation); ok {
		return x.Validation
	}
	return nil
}

type isGetRoomResponse_Error_Reason interface {
	isGetRoomResponse_Error_Reason()
}

type GetRoomResponse_Error_Validation struct {
	// Ошибка валидации
	Validation *ValidationError `protobuf:"bytes,1,opt,name=validation,proto3,oneof"`
}

func (*GetRoomResponse_Error_Validation) isGetRoomResponse_Error_Reason() {}

// Ошибка
type PatchRoomSetSubscriptionModeResponse_Error struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Причина
	//
	// Types that are assignable to Reason:
	//
	//	*PatchRoomSetSubscriptionModeResponse_Error_OrponExpected_
	//	*PatchRoomSetSubscriptionModeResponse_Error_IdExpected_
	//	*PatchRoomSetSubscriptionModeResponse_Error_Validation
	Reason isPatchRoomSetSubscriptionModeResponse_Error_Reason `protobuf_oneof:"reason"`
}

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

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

func (*PatchRoomSetSubscriptionModeResponse_Error) ProtoMessage() {}

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

func (m *PatchRoomSetSubscriptionModeResponse_Error) GetReason() isPatchRoomSetSubscriptionModeResponse_Error_Reason {
	if m != nil {
		return m.Reason
	}
	return nil
}

func (x *PatchRoomSetSubscriptionModeResponse_Error) GetOrponExpected() *PatchRoomSetSubscriptionModeResponse_Error_OrponExpected {
	if x, ok := x.GetReason().(*PatchRoomSetSubscriptionModeResponse_Error_OrponExpected_); ok {
		return x.OrponExpected
	}
	return nil
}

func (x *PatchRoomSetSubscriptionModeResponse_Error) GetIdExpected() *PatchRoomSetSubscriptionModeResponse_Error_IdExpected {
	if x, ok := x.GetReason().(*PatchRoomSetSubscriptionModeResponse_Error_IdExpected_); ok {
		return x.IdExpected
	}
	return nil
}

func (x *PatchRoomSetSubscriptionModeResponse_Error) GetValidation() *ValidationError {
	if x, ok := x.GetReason().(*PatchRoomSetSubscriptionModeResponse_Error_Validation); ok {
		return x.Validation
	}
	return nil
}

type isPatchRoomSetSubscriptionModeResponse_Error_Reason interface {
	isPatchRoomSetSubscriptionModeResponse_Error_Reason()
}

type PatchRoomSetSubscriptionModeResponse_Error_OrponExpected_ struct {
	// Не передано значение ОРПОН
	OrponExpected *PatchRoomSetSubscriptionModeResponse_Error_OrponExpected `protobuf:"bytes,1,opt,name=orpon_expected,json=orponExpected,proto3,oneof"`
}

type PatchRoomSetSubscriptionModeResponse_Error_IdExpected_ struct {
	// Не передан хотя бы один идентификатор
	IdExpected *PatchRoomSetSubscriptionModeResponse_Error_IdExpected `protobuf:"bytes,2,opt,name=id_expected,json=idExpected,proto3,oneof"`
}

type PatchRoomSetSubscriptionModeResponse_Error_Validation struct {
	// Ошибка валидации
	Validation *ValidationError `protobuf:"bytes,3,opt,name=validation,proto3,oneof"`
}

func (*PatchRoomSetSubscriptionModeResponse_Error_OrponExpected_) isPatchRoomSetSubscriptionModeResponse_Error_Reason() {
}

func (*PatchRoomSetSubscriptionModeResponse_Error_IdExpected_) isPatchRoomSetSubscriptionModeResponse_Error_Reason() {
}

func (*PatchRoomSetSubscriptionModeResponse_Error_Validation) isPatchRoomSetSubscriptionModeResponse_Error_Reason() {
}

// Не передано значение ОРПОН:
// - Если переданы номера квартир, то значение параметра ОРПОН обязательно
type PatchRoomSetSubscriptionModeResponse_Error_OrponExpected struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*PatchRoomSetSubscriptionModeResponse_Error_OrponExpected) ProtoMessage() {}

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

// Не передан хотя бы один идентификатор:
// - Должен быть передан хотя бы один из параметров:
//   - mrf_ids;
//   - rf_ids;
//   - opron_id
type PatchRoomSetSubscriptionModeResponse_Error_IdExpected struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*PatchRoomSetSubscriptionModeResponse_Error_IdExpected) ProtoMessage() {}

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

// Ошибка
type GetRoomListResponse_Error struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Причина ошибки
	//
	// Types that are assignable to Reason:
	//
	//	*GetRoomListResponse_Error_Validation
	Reason isGetRoomListResponse_Error_Reason `protobuf_oneof:"reason"`
}

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

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

func (*GetRoomListResponse_Error) ProtoMessage() {}

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

func (m *GetRoomListResponse_Error) GetReason() isGetRoomListResponse_Error_Reason {
	if m != nil {
		return m.Reason
	}
	return nil
}

func (x *GetRoomListResponse_Error) GetValidation() *ValidationError {
	if x, ok := x.GetReason().(*GetRoomListResponse_Error_Validation); ok {
		return x.Validation
	}
	return nil
}

type isGetRoomListResponse_Error_Reason interface {
	isGetRoomListResponse_Error_Reason()
}

type GetRoomListResponse_Error_Validation struct {
	// Ошибка валидации
	Validation *ValidationError `protobuf:"bytes,1,opt,name=validation,proto3,oneof"`
}

func (*GetRoomListResponse_Error_Validation) isGetRoomListResponse_Error_Reason() {}

// Ошибка
type GetRoomOrponNumberExistsResponse_Error struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Причина ошибки
	//
	// Types that are assignable to Reason:
	//
	//	*GetRoomOrponNumberExistsResponse_Error_Validation
	Reason isGetRoomOrponNumberExistsResponse_Error_Reason `protobuf_oneof:"reason"`
}

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

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

func (*GetRoomOrponNumberExistsResponse_Error) ProtoMessage() {}

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

func (m *GetRoomOrponNumberExistsResponse_Error) GetReason() isGetRoomOrponNumberExistsResponse_Error_Reason {
	if m != nil {
		return m.Reason
	}
	return nil
}

func (x *GetRoomOrponNumberExistsResponse_Error) GetValidation() *ValidationError {
	if x, ok := x.GetReason().(*GetRoomOrponNumberExistsResponse_Error_Validation); ok {
		return x.Validation
	}
	return nil
}

type isGetRoomOrponNumberExistsResponse_Error_Reason interface {
	isGetRoomOrponNumberExistsResponse_Error_Reason()
}

type GetRoomOrponNumberExistsResponse_Error_Validation struct {
	// Ошибка валидации
	Validation *ValidationError `protobuf:"bytes,1,opt,name=validation,proto3,oneof"`
}

func (*GetRoomOrponNumberExistsResponse_Error_Validation) isGetRoomOrponNumberExistsResponse_Error_Reason() {
}

var File_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto protoreflect.FileDescriptor

var file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDesc = []byte{
	0x0a, 0x48, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73,
	0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2f, 0x76, 0x31, 0x2f, 0x6b, 0x65, 0x79, 0x61,
	0x70, 0x69, 0x73, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72,
	0x6f, 0x6c, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
	0x6c, 0x5f, 0x76, 0x31, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x19, 0x6b, 0x65, 0x79, 0x61,
	0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72,
	0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70,
	0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
	0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf0, 0x06, 0x0a, 0x04, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x13,
	0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
	0x12, 0x1f, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6e, 0x63,
	0x65, 0x12, 0x19, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05,
	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04,
	0x61, 0x72, 0x65, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x61, 0x72, 0x65, 0x61,
	0x12, 0x24, 0x0a, 0x0b, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x64, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x62, 0x75, 0x69, 0x6c,
	0x64, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e,
	0x79, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
	0x09, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x61, 0x62,
	0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
	0xe0, 0x41, 0x02, 0x52, 0x09, 0x61, 0x62, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d,
	0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x6b,
	0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f,
	0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x2e, 0x54, 0x79,
	0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x3e, 0x0a,
	0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x3e, 0x0a,
	0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0,
	0x41, 0x03, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x44, 0x0a,
	0x1c, 0x69, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0c, 0x20,
	0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x19, 0x69, 0x73, 0x53, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x45, 0x6e, 0x61, 0x62,
	0x6c, 0x65, 0x64, 0x22, 0xf2, 0x02, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c,
	0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x09,
	0x0a, 0x05, 0x46, 0x4c, 0x4f, 0x4f, 0x52, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x4e, 0x54,
	0x52, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x50, 0x41, 0x52, 0x54,
	0x4d, 0x45, 0x4e, 0x54, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x57, 0x41, 0x54, 0x45, 0x52, 0x5f,
	0x44, 0x49, 0x53, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x0e,
	0x0a, 0x0a, 0x48, 0x45, 0x41, 0x54, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x10, 0x05, 0x12, 0x0a,
	0x0a, 0x06, 0x50, 0x41, 0x4e, 0x54, 0x52, 0x59, 0x10, 0x06, 0x12, 0x0e, 0x0a, 0x0a, 0x57, 0x48,
	0x45, 0x45, 0x4c, 0x43, 0x48, 0x41, 0x49, 0x52, 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, 0x57, 0x49,
	0x52, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x54, 0x10, 0x08, 0x12, 0x0d, 0x0a,
	0x09, 0x43, 0x4f, 0x4e, 0x43, 0x49, 0x45, 0x52, 0x47, 0x45, 0x10, 0x09, 0x12, 0x0e, 0x0a, 0x0a,
	0x43, 0x48, 0x45, 0x43, 0x4b, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x10, 0x0a, 0x12, 0x11, 0x0a, 0x0d,
	0x50, 0x41, 0x52, 0x4b, 0x49, 0x4e, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x10, 0x0b, 0x12,
	0x0a, 0x0a, 0x06, 0x4f, 0x46, 0x46, 0x49, 0x43, 0x45, 0x10, 0x0c, 0x12, 0x0c, 0x0a, 0x08, 0x42,
	0x41, 0x53, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x0d, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x55, 0x42,
	0x53, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x0e, 0x12, 0x13, 0x0a, 0x0f, 0x48, 0x4f, 0x4d,
	0x45, 0x4f, 0x57, 0x4e, 0x45, 0x52, 0x53, 0x5f, 0x52, 0x4f, 0x4f, 0x4d, 0x10, 0x0f, 0x12, 0x0b,
	0x0a, 0x07, 0x54, 0x41, 0x4d, 0x42, 0x4f, 0x55, 0x52, 0x10, 0x10, 0x12, 0x0e, 0x0a, 0x0a, 0x49,
	0x4e, 0x50, 0x55, 0x54, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x10, 0x11, 0x12, 0x09, 0x0a, 0x05, 0x4c,
	0x4f, 0x42, 0x42, 0x59, 0x10, 0x12, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x54, 0x54, 0x49, 0x43, 0x10,
	0x13, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x4c, 0x45, 0x56, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x53, 0x48,
	0x41, 0x46, 0x54, 0x10, 0x14, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x57, 0x49, 0x54, 0x43, 0x48, 0x42,
	0x4f, 0x41, 0x52, 0x44, 0x10, 0x15, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c,
	0x54, 0x5f, 0x52, 0x4f, 0x4f, 0x4d, 0x10, 0x16, 0x22, 0x25, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x52,
	0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x22,
	0xfb, 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1f, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65,
	0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f,
	0x6f, 0x6d, 0x48, 0x00, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x48, 0x0a, 0x05, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6b, 0x65, 0x79, 0x61,
	0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72,
	0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x05, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x1a, 0x5f, 0x0a, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x4c, 0x0a,
	0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x2a, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65,
	0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x61,
	0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x48, 0x00, 0x52,
	0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x72,
	0x65, 0x61, 0x73, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xbc, 0x02,
	0x0a, 0x23, 0x50, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x53, 0x75,
	0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x6d, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x73,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x6d, 0x72, 0x66, 0x49, 0x64, 0x73, 0x12, 0x15,
	0x0a, 0x06, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05,
	0x72, 0x66, 0x49, 0x64, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x5f, 0x69,
	0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x49, 0x64,
	0x12, 0x21, 0x0a, 0x0c, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73,
	0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x75, 0x6d, 0x62,
	0x65, 0x72, 0x73, 0x12, 0x69, 0x0a, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x47, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73,
	0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e,
	0x76, 0x31, 0x2e, 0x50, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x53,
	0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42,
	0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6d, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3c,
	0x0a, 0x08, 0x4d, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x4d, 0x4f,
	0x44, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10,
	0x00, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12,
	0x0b, 0x0a, 0x07, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x22, 0x81, 0x04, 0x0a,
	0x24, 0x50, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x53, 0x75, 0x62,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61,
	0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31,
	0x2e, 0x50, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x53, 0x75, 0x62,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x05, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x1a, 0xf1, 0x02, 0x0a, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x7c,
	0x0a, 0x0e, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x53, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73,
	0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e,
	0x76, 0x31, 0x2e, 0x50, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x53,
	0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x2e, 0x4f, 0x72,
	0x70, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0d, 0x6f,
	0x72, 0x70, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x73, 0x0a, 0x0b,
	0x69, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x50, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65,
	0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61,
	0x74, 0x63, 0x68, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x2e, 0x49, 0x64, 0x45, 0x78, 0x70, 0x65, 0x63,
	0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0a, 0x69, 0x64, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65,
	0x64, 0x12, 0x4c, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e,
	0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76,
	0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f,
	0x72, 0x48, 0x00, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a,
	0x0f, 0x0a, 0x0d, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64,
	0x1a, 0x0c, 0x0a, 0x0a, 0x49, 0x64, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x08,
	0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65,
	0x22, 0xa2, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65,
	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69,
	0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c,
	0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06,
	0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73,
	0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e,
	0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52,
	0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x42, 0x0c, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x83, 0x02, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f,
	0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a,
	0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6b, 0x65,
	0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e,
	0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x48, 0x00, 0x52, 0x04,
	0x64, 0x61, 0x74, 0x61, 0x12, 0x4c, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63,
	0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e,
	0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x05, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x1a, 0x5f, 0x0a, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x4c, 0x0a, 0x0a, 0x76,
	0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x2a, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73,
	0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69,
	0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x0a, 0x76,
	0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x61,
	0x73, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x54, 0x0a, 0x13, 0x47,
	0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x52,
	0x6f, 0x6f, 0x6d, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65,
	0x72, 0x22, 0x34, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x43, 0x6f, 0x75, 0x6e,
	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x04, 0x64, 0x61, 0x74,
	0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x42,
	0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xe0, 0x02, 0x0a, 0x0a, 0x52, 0x6f, 0x6f, 0x6d,
	0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0b, 0x62, 0x75,
	0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x6e, 0x74,
	0x72, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x65, 0x6e,
	0x74, 0x72, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6c, 0x6f, 0x6f, 0x72,
	0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x73, 0x12,
	0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04,
	0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x49, 0x64, 0x73,
	0x12, 0x3a, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0e, 0x32,
	0x24, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73,
	0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6f, 0x6d,
	0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a,
	0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05,
	0x52, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6f,
	0x72, 0x70, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x72, 0x70,
	0x6f, 0x6e, 0x73, 0x12, 0x42, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42,
	0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d, 0x69, 0x73, 0x53, 0x65, 0x72, 0x76,
	0x69, 0x63, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x6f, 0x6f, 0x6d, 0x5f,
	0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x72,
	0x6f, 0x6f, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x62, 0x0a, 0x1f, 0x47, 0x65,
	0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72,
	0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a,
	0x05, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x05, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0b, 0x72, 0x6f, 0x6f, 0x6d,
	0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
	0x41, 0x02, 0x52, 0x0a, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xfc,
	0x01, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x4e,
	0x75, 0x6d, 0x62, 0x65, 0x72, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x08, 0x48, 0x00, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x59, 0x0a, 0x05, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70,
	0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
	0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4f, 0x72, 0x70, 0x6f,
	0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x05, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x1a, 0x5f, 0x0a, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x4c, 0x0a,
	0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x2a, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65,
	0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x61,
	0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x48, 0x00, 0x52,
	0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x72,
	0x65, 0x61, 0x73, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x92, 0x03,
	0x0a, 0x0a, 0x52, 0x6f, 0x6f, 0x6d, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x55, 0x0a, 0x0d,
	0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63,
	0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e,
	0x52, 0x6f, 0x6f, 0x6d, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72,
	0x42, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x54,
	0x79, 0x70, 0x65, 0x12, 0x5a, 0x0a, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x6b, 0x65,
	0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e,
	0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x50, 0x61, 0x67, 0x69,
	0x6e, 0x67, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65,
	0x52, 0x0d, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 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, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x63, 0x0a,
	0x0b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15,
	0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, 0x42, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e,
	0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x44, 0x10, 0x01, 0x12,
	0x0e, 0x0a, 0x0a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x5f, 0x41, 0x54, 0x10, 0x02, 0x12,
	0x15, 0x0a, 0x11, 0x46, 0x4c, 0x4f, 0x4f, 0x52, 0x5f, 0x54, 0x48, 0x45, 0x4e, 0x5f, 0x4e, 0x55,
	0x4d, 0x42, 0x45, 0x52, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x55, 0x4d, 0x42, 0x45, 0x52,
	0x10, 0x04, 0x22, 0x3e, 0x0a, 0x0d, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54,
	0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e,
	0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12,
	0x08, 0x0a, 0x04, 0x44, 0x45, 0x53, 0x43, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x53, 0x43,
	0x10, 0x02, 0x22, 0x49, 0x0a, 0x0f, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x1d,
	0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42,
	0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x32, 0xa0, 0x07,
	0x0a, 0x14, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x8a, 0x01, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x52, 0x6f,
	0x6f, 0x6d, 0x12, 0x29, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x47,
	0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e,
	0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63,
	0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f,
	0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x22, 0x12, 0x20, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72,
	0x6f, 0x6c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x6f, 0x6f, 0x6d, 0x2f, 0x7b,
	0x69, 0x64, 0x7d, 0x12, 0x98, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4c,
	0x69, 0x73, 0x74, 0x12, 0x2d, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63,
	0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e,
	0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x47,
	0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x12, 0x20, 0x2f, 0x61, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2f, 0x61, 0x70, 0x69, 0x2f,
	0x76, 0x31, 0x2f, 0x72, 0x6f, 0x6f, 0x6d, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x30, 0x01, 0x12, 0x9a,
	0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12,
	0x2e, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73,
	0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52,
	0x6f, 0x6f, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x2f, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73,
	0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52,
	0x6f, 0x6f, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 0x21, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73,
	0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31,
	0x2f, 0x72, 0x6f, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0xdd, 0x01, 0x0a, 0x1c,
	0x50, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x53, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x3e, 0x2e, 0x6b,
	0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f,
	0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f,
	0x6f, 0x6d, 0x53, 0x65, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x6b,
	0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f,
	0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f,
	0x6f, 0x6d, 0x53, 0x65, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3c, 0x82,
	0xd3, 0xe4, 0x93, 0x02, 0x36, 0x3a, 0x01, 0x2a, 0x32, 0x31, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73,
	0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31,
	0x2f, 0x72, 0x6f, 0x6f, 0x6d, 0x2f, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0xe2, 0x01, 0x0a, 0x18,
	0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62,
	0x65, 0x72, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x3a, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70,
	0x69, 0x73, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
	0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4f, 0x72, 0x70, 0x6f,
	0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x61,
	0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76, 0x31,
	0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x4e, 0x75, 0x6d,
	0x62, 0x65, 0x72, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x4d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x12, 0x45, 0x2f, 0x61, 0x63, 0x63, 0x65,
	0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76,
	0x31, 0x2f, 0x72, 0x6f, 0x6f, 0x6d, 0x2f, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x2f, 0x7b, 0x6f, 0x72,
	0x70, 0x6f, 0x6e, 0x7d, 0x2f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2f, 0x7b, 0x72, 0x6f, 0x6f,
	0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x7d, 0x2f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73,
	0x42, 0xcd, 0x01, 0x0a, 0x1c, 0x72, 0x75, 0x2e, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e,
	0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x76,
	0x31, 0x42, 0x1b, 0x4b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73,
	0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x56, 0x31, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x48, 0x03,
	0x50, 0x00, 0x5a, 0x1a, 0x2f, 0x6b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x5f, 0x61, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x76, 0x31, 0xd8, 0x01,
	0x01, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x16, 0x4b, 0x45, 0x59, 0x41, 0x50, 0x49, 0x53, 0x41, 0x43,
	0x43, 0x45, 0x53, 0x53, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x56, 0x31, 0xaa, 0x02, 0x18,
	0x4b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f,
	0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x18, 0x4b, 0x65, 0x79, 0x61, 0x70,
	0x69, 0x73, 0x5c, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c,
	0x5c, 0x56, 0x31, 0xea, 0x02, 0x1a, 0x4b, 0x65, 0x79, 0x61, 0x70, 0x69, 0x73, 0x3a, 0x3a, 0x41,
	0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x3a, 0x3a, 0x56, 0x31,
	0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDescOnce sync.Once
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDescData = file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDesc
)

func file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDescGZIP() []byte {
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDescOnce.Do(func() {
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDescData = protoimpl.X.CompressGZIP(file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDescData)
	})
	return file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDescData
}

var file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
var file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes = make([]protoimpl.MessageInfo, 20)
var file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_goTypes = []interface{}{
	(Room_Type)(0), // 0: keyapis.access_control.v1.Room.Type
	(PatchRoomSetSubscriptionModeRequest_ModeType)(0),                // 1: keyapis.access_control.v1.PatchRoomSetSubscriptionModeRequest.ModeType
	(RoomPaging_OrderByType)(0),                                      // 2: keyapis.access_control.v1.RoomPaging.OrderByType
	(RoomPaging_DirectionType)(0),                                    // 3: keyapis.access_control.v1.RoomPaging.DirectionType
	(*Room)(nil),                                                     // 4: keyapis.access_control.v1.Room
	(*GetRoomRequest)(nil),                                           // 5: keyapis.access_control.v1.GetRoomRequest
	(*GetRoomResponse)(nil),                                          // 6: keyapis.access_control.v1.GetRoomResponse
	(*PatchRoomSetSubscriptionModeRequest)(nil),                      // 7: keyapis.access_control.v1.PatchRoomSetSubscriptionModeRequest
	(*PatchRoomSetSubscriptionModeResponse)(nil),                     // 8: keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse
	(*GetRoomListRequest)(nil),                                       // 9: keyapis.access_control.v1.GetRoomListRequest
	(*GetRoomListResponse)(nil),                                      // 10: keyapis.access_control.v1.GetRoomListResponse
	(*GetRoomCountRequest)(nil),                                      // 11: keyapis.access_control.v1.GetRoomCountRequest
	(*GetRoomCountResponse)(nil),                                     // 12: keyapis.access_control.v1.GetRoomCountResponse
	(*RoomFilter)(nil),                                               // 13: keyapis.access_control.v1.RoomFilter
	(*GetRoomOrponNumberExistsRequest)(nil),                          // 14: keyapis.access_control.v1.GetRoomOrponNumberExistsRequest
	(*GetRoomOrponNumberExistsResponse)(nil),                         // 15: keyapis.access_control.v1.GetRoomOrponNumberExistsResponse
	(*RoomPaging)(nil),                                               // 16: keyapis.access_control.v1.RoomPaging
	(*ValidationError)(nil),                                          // 17: keyapis.access_control.v1.ValidationError
	(*GetRoomResponse_Error)(nil),                                    // 18: keyapis.access_control.v1.GetRoomResponse.Error
	(*PatchRoomSetSubscriptionModeResponse_Error)(nil),               // 19: keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error
	(*PatchRoomSetSubscriptionModeResponse_Error_OrponExpected)(nil), // 20: keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error.OrponExpected
	(*PatchRoomSetSubscriptionModeResponse_Error_IdExpected)(nil),    // 21: keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error.IdExpected
	(*GetRoomListResponse_Error)(nil),                                // 22: keyapis.access_control.v1.GetRoomListResponse.Error
	(*GetRoomOrponNumberExistsResponse_Error)(nil),                   // 23: keyapis.access_control.v1.GetRoomOrponNumberExistsResponse.Error
	(*timestamppb.Timestamp)(nil),                                    // 24: google.protobuf.Timestamp
	(*wrapperspb.BoolValue)(nil),                                     // 25: google.protobuf.BoolValue
}
var file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_depIdxs = []int32{
	0,  // 0: keyapis.access_control.v1.Room.type:type_name -> keyapis.access_control.v1.Room.Type
	24, // 1: keyapis.access_control.v1.Room.created_at:type_name -> google.protobuf.Timestamp
	24, // 2: keyapis.access_control.v1.Room.deleted_at:type_name -> google.protobuf.Timestamp
	4,  // 3: keyapis.access_control.v1.GetRoomResponse.data:type_name -> keyapis.access_control.v1.Room
	18, // 4: keyapis.access_control.v1.GetRoomResponse.error:type_name -> keyapis.access_control.v1.GetRoomResponse.Error
	1,  // 5: keyapis.access_control.v1.PatchRoomSetSubscriptionModeRequest.mode_type:type_name -> keyapis.access_control.v1.PatchRoomSetSubscriptionModeRequest.ModeType
	19, // 6: keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.error:type_name -> keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error
	13, // 7: keyapis.access_control.v1.GetRoomListRequest.filter:type_name -> keyapis.access_control.v1.RoomFilter
	16, // 8: keyapis.access_control.v1.GetRoomListRequest.paging:type_name -> keyapis.access_control.v1.RoomPaging
	4,  // 9: keyapis.access_control.v1.GetRoomListResponse.data:type_name -> keyapis.access_control.v1.Room
	22, // 10: keyapis.access_control.v1.GetRoomListResponse.error:type_name -> keyapis.access_control.v1.GetRoomListResponse.Error
	13, // 11: keyapis.access_control.v1.GetRoomCountRequest.filter:type_name -> keyapis.access_control.v1.RoomFilter
	0,  // 12: keyapis.access_control.v1.RoomFilter.types:type_name -> keyapis.access_control.v1.Room.Type
	25, // 13: keyapis.access_control.v1.RoomFilter.is_service_flag:type_name -> google.protobuf.BoolValue
	23, // 14: keyapis.access_control.v1.GetRoomOrponNumberExistsResponse.error:type_name -> keyapis.access_control.v1.GetRoomOrponNumberExistsResponse.Error
	2,  // 15: keyapis.access_control.v1.RoomPaging.order_by_type:type_name -> keyapis.access_control.v1.RoomPaging.OrderByType
	3,  // 16: keyapis.access_control.v1.RoomPaging.direction_type:type_name -> keyapis.access_control.v1.RoomPaging.DirectionType
	17, // 17: keyapis.access_control.v1.GetRoomResponse.Error.validation:type_name -> keyapis.access_control.v1.ValidationError
	20, // 18: keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error.orpon_expected:type_name -> keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error.OrponExpected
	21, // 19: keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error.id_expected:type_name -> keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error.IdExpected
	17, // 20: keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error.validation:type_name -> keyapis.access_control.v1.ValidationError
	17, // 21: keyapis.access_control.v1.GetRoomListResponse.Error.validation:type_name -> keyapis.access_control.v1.ValidationError
	17, // 22: keyapis.access_control.v1.GetRoomOrponNumberExistsResponse.Error.validation:type_name -> keyapis.access_control.v1.ValidationError
	5,  // 23: keyapis.access_control.v1.AccessControlService.GetRoom:input_type -> keyapis.access_control.v1.GetRoomRequest
	9,  // 24: keyapis.access_control.v1.AccessControlService.GetRoomList:input_type -> keyapis.access_control.v1.GetRoomListRequest
	11, // 25: keyapis.access_control.v1.AccessControlService.GetRoomCount:input_type -> keyapis.access_control.v1.GetRoomCountRequest
	7,  // 26: keyapis.access_control.v1.AccessControlService.PatchRoomSetSubscriptionMode:input_type -> keyapis.access_control.v1.PatchRoomSetSubscriptionModeRequest
	14, // 27: keyapis.access_control.v1.AccessControlService.GetRoomOrponNumberExists:input_type -> keyapis.access_control.v1.GetRoomOrponNumberExistsRequest
	6,  // 28: keyapis.access_control.v1.AccessControlService.GetRoom:output_type -> keyapis.access_control.v1.GetRoomResponse
	10, // 29: keyapis.access_control.v1.AccessControlService.GetRoomList:output_type -> keyapis.access_control.v1.GetRoomListResponse
	12, // 30: keyapis.access_control.v1.AccessControlService.GetRoomCount:output_type -> keyapis.access_control.v1.GetRoomCountResponse
	8,  // 31: keyapis.access_control.v1.AccessControlService.PatchRoomSetSubscriptionMode:output_type -> keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse
	15, // 32: keyapis.access_control.v1.AccessControlService.GetRoomOrponNumberExists:output_type -> keyapis.access_control.v1.GetRoomOrponNumberExistsResponse
	28, // [28:33] is the sub-list for method output_type
	23, // [23:28] is the sub-list for method input_type
	23, // [23:23] is the sub-list for extension type_name
	23, // [23:23] is the sub-list for extension extendee
	0,  // [0:23] is the sub-list for field type_name
}

func init() { file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_init() }
func file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_init() {
	if File_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Room); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoomRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoomResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PatchRoomSetSubscriptionModeRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PatchRoomSetSubscriptionModeResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoomListRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoomListResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoomCountRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoomCountResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RoomFilter); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoomOrponNumberExistsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoomOrponNumberExistsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RoomPaging); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ValidationError); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoomResponse_Error); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PatchRoomSetSubscriptionModeResponse_Error); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PatchRoomSetSubscriptionModeResponse_Error_OrponExpected); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PatchRoomSetSubscriptionModeResponse_Error_IdExpected); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoomListResponse_Error); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoomOrponNumberExistsResponse_Error); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[2].OneofWrappers = []interface{}{
		(*GetRoomResponse_Data)(nil),
		(*GetRoomResponse_Error_)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[4].OneofWrappers = []interface{}{
		(*PatchRoomSetSubscriptionModeResponse_Error_)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[5].OneofWrappers = []interface{}{
		(*GetRoomListRequest_Paging)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[6].OneofWrappers = []interface{}{
		(*GetRoomListResponse_Data)(nil),
		(*GetRoomListResponse_Error_)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[8].OneofWrappers = []interface{}{
		(*GetRoomCountResponse_Data)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[11].OneofWrappers = []interface{}{
		(*GetRoomOrponNumberExistsResponse_Data)(nil),
		(*GetRoomOrponNumberExistsResponse_Error_)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[14].OneofWrappers = []interface{}{
		(*GetRoomResponse_Error_Validation)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[15].OneofWrappers = []interface{}{
		(*PatchRoomSetSubscriptionModeResponse_Error_OrponExpected_)(nil),
		(*PatchRoomSetSubscriptionModeResponse_Error_IdExpected_)(nil),
		(*PatchRoomSetSubscriptionModeResponse_Error_Validation)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[18].OneofWrappers = []interface{}{
		(*GetRoomListResponse_Error_Validation)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes[19].OneofWrappers = []interface{}{
		(*GetRoomOrponNumberExistsResponse_Error_Validation)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDesc,
			NumEnums:      4,
			NumMessages:   20,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_goTypes,
		DependencyIndexes: file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_depIdxs,
		EnumInfos:         file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_enumTypes,
		MessageInfos:      file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_msgTypes,
	}.Build()
	File_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto = out.File
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_rawDesc = nil
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_goTypes = nil
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_depIdxs = nil
}
