//
//Сервис домов

// 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_building_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)
)

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

const (
	// Значение не указано
	BuildingPaging_ORDER_BY_TYPE_UNKNOWN BuildingPaging_OrderByType = 0
	// По идентификатору
	BuildingPaging_ID BuildingPaging_OrderByType = 1
	// По времени создания
	BuildingPaging_CREATED_AT BuildingPaging_OrderByType = 2
	// По улице, номеру дома, корпусу
	BuildingPaging_STREET_THEN_NUMBER_THEN_PART BuildingPaging_OrderByType = 3
)

// Enum value maps for BuildingPaging_OrderByType.
var (
	BuildingPaging_OrderByType_name = map[int32]string{
		0: "ORDER_BY_TYPE_UNKNOWN",
		1: "ID",
		2: "CREATED_AT",
		3: "STREET_THEN_NUMBER_THEN_PART",
	}
	BuildingPaging_OrderByType_value = map[string]int32{
		"ORDER_BY_TYPE_UNKNOWN":        0,
		"ID":                           1,
		"CREATED_AT":                   2,
		"STREET_THEN_NUMBER_THEN_PART": 3,
	}
)

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

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

func (BuildingPaging_OrderByType) Descriptor() protoreflect.EnumDescriptor {
	return file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_enumTypes[0].Descriptor()
}

func (BuildingPaging_OrderByType) Type() protoreflect.EnumType {
	return &file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_enumTypes[0]
}

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

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

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

const (
	// Значение не указано
	BuildingPaging_DIRECTION_TYPE_UNKNOWN BuildingPaging_DirectionType = 0
	// От большего к меньшему
	BuildingPaging_DESC BuildingPaging_DirectionType = 1
	// От меньшего к большему
	BuildingPaging_ASC BuildingPaging_DirectionType = 2
)

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

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

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

func (BuildingPaging_DirectionType) Descriptor() protoreflect.EnumDescriptor {
	return file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_enumTypes[1].Descriptor()
}

func (BuildingPaging_DirectionType) Type() protoreflect.EnumType {
	return &file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_enumTypes[1]
}

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

// Deprecated: Use BuildingPaging_DirectionType.Descriptor instead.
func (BuildingPaging_DirectionType) EnumDescriptor() ([]byte, []int) {
	return file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_rawDescGZIP(), []int{8, 1}
}

// Справочник режимов работы с подписками
type BuildingSubscriptionMode_SubscriptionModeType int32

const (
	// Значение не указано
	BuildingSubscriptionMode_SUBSCRIPTION_MODE_TYPE_UNKNOWN BuildingSubscriptionMode_SubscriptionModeType = 0
	// Режим работы с подписками включен на всех помещениях дома
	BuildingSubscriptionMode_ENABLED BuildingSubscriptionMode_SubscriptionModeType = 1
	// Режим работы с подписками включен на некоторых помещениях дома
	BuildingSubscriptionMode_PARTIALLY_ENABLED BuildingSubscriptionMode_SubscriptionModeType = 2
	// Режим работы с подписками выключен на всех помещениях дома
	BuildingSubscriptionMode_DISABLED BuildingSubscriptionMode_SubscriptionModeType = 3
)

// Enum value maps for BuildingSubscriptionMode_SubscriptionModeType.
var (
	BuildingSubscriptionMode_SubscriptionModeType_name = map[int32]string{
		0: "SUBSCRIPTION_MODE_TYPE_UNKNOWN",
		1: "ENABLED",
		2: "PARTIALLY_ENABLED",
		3: "DISABLED",
	}
	BuildingSubscriptionMode_SubscriptionModeType_value = map[string]int32{
		"SUBSCRIPTION_MODE_TYPE_UNKNOWN": 0,
		"ENABLED":                        1,
		"PARTIALLY_ENABLED":              2,
		"DISABLED":                       3,
	}
)

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

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

func (BuildingSubscriptionMode_SubscriptionModeType) Descriptor() protoreflect.EnumDescriptor {
	return file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_enumTypes[2].Descriptor()
}

func (BuildingSubscriptionMode_SubscriptionModeType) Type() protoreflect.EnumType {
	return &file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_enumTypes[2]
}

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

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

// Дом
type Building struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Идентификатор дома
	Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// Идентификатор РФ
	RfId int32 `protobuf:"varint,2,opt,name=rf_id,json=rfId,proto3" json:"rf_id,omitempty"`
	// Идентификатор МРФ
	MrfId int32 `protobuf:"varint,3,opt,name=mrf_id,json=mrfId,proto3" json:"mrf_id,omitempty"`
	// ОРПОН
	Orpon int64 `protobuf:"varint,4,opt,name=orpon,proto3" json:"orpon,omitempty"`
	// Город
	City string `protobuf:"bytes,5,opt,name=city,proto3" json:"city,omitempty"`
	// Улица
	Street string `protobuf:"bytes,6,opt,name=street,proto3" json:"street,omitempty"`
	// Номер дома
	Number string `protobuf:"bytes,7,opt,name=number,proto3" json:"number,omitempty"`
	// Корпус
	Part string `protobuf:"bytes,8,opt,name=part,proto3" json:"part,omitempty"`
	// Идентификатор компании
	CompanyId int32 `protobuf:"varint,9,opt,name=company_id,json=companyId,proto3" json:"company_id,omitempty"`
	// Префикс
	Prefix string `protobuf:"bytes,10,opt,name=prefix,proto3" json:"prefix,omitempty"`
	// Дата создания.
	// # Тип: DateTime
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	// Дата удаления.
	// # Тип: DateTime
	DeletedAt *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=deleted_at,json=deletedAt,proto3" json:"deleted_at,omitempty"`
	// Идентификатор квартирограммы
	FlatgrammId int32 `protobuf:"varint,13,opt,name=flatgramm_id,json=flatgrammId,proto3" json:"flatgramm_id,omitempty"`
	// ОРПОН города, в котором находится дом
	CityOrpon int64 `protobuf:"varint,14,opt,name=city_orpon,json=cityOrpon,proto3" json:"city_orpon,omitempty"`
	// Идентификатор в федеральной информационной адресной системе.
	// Тип: Guid
	Fias *wrapperspb.StringValue `protobuf:"bytes,15,opt,name=fias,proto3" json:"fias,omitempty"`
	// Наименование района города.
	// # Диапазон: 0..200
	District *wrapperspb.StringValue `protobuf:"bytes,16,opt,name=district,proto3" json:"district,omitempty"`
	// Уникальный номер адреса.
	// # Диапазон: 0..9999999999
	Unom *wrapperspb.Int64Value `protobuf:"bytes,17,opt,name=unom,proto3" json:"unom,omitempty"`
	// ОРПОН региона
	RegionOrpon int64 `protobuf:"varint,18,opt,name=region_orpon,json=regionOrpon,proto3" json:"region_orpon,omitempty"`
	// Смещение таймзоны в минутах.
	// # Диапазон: -720..840
	UtcOffset int32 `protobuf:"varint,19,opt,name=utc_offset,json=utcOffset,proto3" json:"utc_offset,omitempty"`
	// Флаг указывает на то могут ли жители этого дома приобрести ключи домофона в партнёрских салонах или на маркетплейсах
	IsKeyPurchasePossibleInSalePoints bool `protobuf:"varint,20,opt,name=is_key_purchase_possible_in_sale_points,json=isKeyPurchasePossibleInSalePoints,proto3" json:"is_key_purchase_possible_in_sale_points,omitempty"`
	// Флаг указывает на то могут ли жители этого дома приобретать ключи через управляющую компанию
	IsKeyPurchasePossibleInManagementCompany bool `protobuf:"varint,21,opt,name=is_key_purchase_possible_in_management_company,json=isKeyPurchasePossibleInManagementCompany,proto3" json:"is_key_purchase_possible_in_management_company,omitempty"`
	// Флаг указывает на то могут ли жители этого дома приобрести ключи напрямую у домофонной компании
	IsKeyPurchasePossibleInIntercomCompany bool `protobuf:"varint,22,opt,name=is_key_purchase_possible_in_intercom_company,json=isKeyPurchasePossibleInIntercomCompany,proto3" json:"is_key_purchase_possible_in_intercom_company,omitempty"`
	// Флаг указывает на то поддерживает ли дом использование RFID-меток с типом MIFARE
	IsRfidMifareSupported bool `protobuf:"varint,23,opt,name=is_rfid_mifare_supported,json=isRfidMifareSupported,proto3" json:"is_rfid_mifare_supported,omitempty"`
	// Наименование муниципального района.
	// # Диапазон: 0..64
	Area *wrapperspb.StringValue `protobuf:"bytes,24,opt,name=area,proto3" json:"area,omitempty"`
	// ОРПОН муниципального района.
	// # Диапазон: 0..9999999999
	AreaOrpon *wrapperspb.Int64Value `protobuf:"bytes,25,opt,name=area_orpon,json=areaOrpon,proto3" json:"area_orpon,omitempty"`
	// КЛАДР муниципального района.
	// # Диапазон: 0..32
	AreaKladr *wrapperspb.StringValue `protobuf:"bytes,26,opt,name=area_kladr,json=areaKladr,proto3" json:"area_kladr,omitempty"`
	// Признак принадлежности населённого пункта к столичному статусу.
	// 1 — центр района.
	// 2 — центр региона.
	// 3 — центр района и региона.
	// 4 — центральный район региона.
	// 0 — ничего из перечисленного.
	// # Диапазон: 0..4
	CapitalMarker *wrapperspb.Int32Value `protobuf:"bytes,27,opt,name=capital_marker,json=capitalMarker,proto3" json:"capital_marker,omitempty"`
	// КЛАДР-код города.
	// # Диапазон: 0..17
	CityKladr *wrapperspb.StringValue `protobuf:"bytes,28,opt,name=city_kladr,json=cityKladr,proto3" json:"city_kladr,omitempty"`
	// КЛАДР-код строения.
	// # Диапазон: 0..17
	Kladr *wrapperspb.StringValue `protobuf:"bytes,29,opt,name=kladr,proto3" json:"kladr,omitempty"`
	// Уровень детализации, до которого адрес найден в ФИАС.
	// 0 — страна.
	// 1 — регион.
	// 3 — район.
	// 4 — город.
	// 5 — район города.
	// 6 — населенный пункт.
	// 7 — улица.
	// 8 — дом.
	// 9 — квартира.
	// 65 — планировочная структура.
	// 90 — доп. территория.
	// 91 — улица в доп. территории.
	// -1 — иностранный или пустой.
	// # Диапазон: -1..99
	FiasLevel *wrapperspb.Int32Value `protobuf:"bytes,30,opt,name=fias_level,json=fiasLevel,proto3" json:"fias_level,omitempty"`
	// Уровень детализации, до которого адрес найден в ФИАС.
	// 0 — актуальный.
	// 1-50 — переименован.
	// 51 — переподчинен.
	// 99 — удален.
	// # Диапазон: 0..99
	FiasActualityState *wrapperspb.Int32Value `protobuf:"bytes,31,opt,name=fias_actuality_state,json=fiasActualityState,proto3" json:"fias_actuality_state,omitempty"`
	// Координаты: широта
	GeoLat *wrapperspb.DoubleValue `protobuf:"bytes,32,opt,name=geo_lat,json=geoLat,proto3" json:"geo_lat,omitempty"`
	// Координаты: долгота
	GeoLon *wrapperspb.DoubleValue `protobuf:"bytes,33,opt,name=geo_lon,json=geoLon,proto3" json:"geo_lon,omitempty"`
	// Код ОКАТО
	Okato *wrapperspb.Int32Value `protobuf:"bytes,34,opt,name=okato,proto3" json:"okato,omitempty"`
	// Код ОКТМО
	Oktmo *wrapperspb.Int32Value `protobuf:"bytes,35,opt,name=oktmo,proto3" json:"oktmo,omitempty"`
	// Почтовый индекс
	PostalCode *wrapperspb.Int32Value `protobuf:"bytes,36,opt,name=postal_code,json=postalCode,proto3" json:"postal_code,omitempty"`
	// Наименование региона.
	// # Диапазон: 0..64
	Region *wrapperspb.StringValue `protobuf:"bytes,37,opt,name=region,proto3" json:"region,omitempty"`
	// КЛАДР-код региона.
	// # Диапазон: 0..32
	RegionKladr *wrapperspb.StringValue `protobuf:"bytes,38,opt,name=region_kladr,json=regionKladr,proto3" json:"region_kladr,omitempty"`
	// КЛАДР-код улицы.
	// # Диапазон: 0..32
	StreetKladr *wrapperspb.StringValue `protobuf:"bytes,39,opt,name=street_kladr,json=streetKladr,proto3" json:"street_kladr,omitempty"`
	// ОРПОН улицы.
	// # Диапазон: 0..9999999999
	StreetOrpon *wrapperspb.Int64Value `protobuf:"bytes,40,opt,name=street_orpon,json=streetOrpon,proto3" json:"street_orpon,omitempty"`
}

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

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

func (*Building) ProtoMessage() {}

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

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

func (x *Building) GetRfId() int32 {
	if x != nil {
		return x.RfId
	}
	return 0
}

func (x *Building) GetMrfId() int32 {
	if x != nil {
		return x.MrfId
	}
	return 0
}

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

func (x *Building) GetCity() string {
	if x != nil {
		return x.City
	}
	return ""
}

func (x *Building) GetStreet() string {
	if x != nil {
		return x.Street
	}
	return ""
}

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

func (x *Building) GetPart() string {
	if x != nil {
		return x.Part
	}
	return ""
}

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

func (x *Building) GetPrefix() string {
	if x != nil {
		return x.Prefix
	}
	return ""
}

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

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

func (x *Building) GetFlatgrammId() int32 {
	if x != nil {
		return x.FlatgrammId
	}
	return 0
}

func (x *Building) GetCityOrpon() int64 {
	if x != nil {
		return x.CityOrpon
	}
	return 0
}

func (x *Building) GetFias() *wrapperspb.StringValue {
	if x != nil {
		return x.Fias
	}
	return nil
}

func (x *Building) GetDistrict() *wrapperspb.StringValue {
	if x != nil {
		return x.District
	}
	return nil
}

func (x *Building) GetUnom() *wrapperspb.Int64Value {
	if x != nil {
		return x.Unom
	}
	return nil
}

func (x *Building) GetRegionOrpon() int64 {
	if x != nil {
		return x.RegionOrpon
	}
	return 0
}

func (x *Building) GetUtcOffset() int32 {
	if x != nil {
		return x.UtcOffset
	}
	return 0
}

func (x *Building) GetIsKeyPurchasePossibleInSalePoints() bool {
	if x != nil {
		return x.IsKeyPurchasePossibleInSalePoints
	}
	return false
}

func (x *Building) GetIsKeyPurchasePossibleInManagementCompany() bool {
	if x != nil {
		return x.IsKeyPurchasePossibleInManagementCompany
	}
	return false
}

func (x *Building) GetIsKeyPurchasePossibleInIntercomCompany() bool {
	if x != nil {
		return x.IsKeyPurchasePossibleInIntercomCompany
	}
	return false
}

func (x *Building) GetIsRfidMifareSupported() bool {
	if x != nil {
		return x.IsRfidMifareSupported
	}
	return false
}

func (x *Building) GetArea() *wrapperspb.StringValue {
	if x != nil {
		return x.Area
	}
	return nil
}

func (x *Building) GetAreaOrpon() *wrapperspb.Int64Value {
	if x != nil {
		return x.AreaOrpon
	}
	return nil
}

func (x *Building) GetAreaKladr() *wrapperspb.StringValue {
	if x != nil {
		return x.AreaKladr
	}
	return nil
}

func (x *Building) GetCapitalMarker() *wrapperspb.Int32Value {
	if x != nil {
		return x.CapitalMarker
	}
	return nil
}

func (x *Building) GetCityKladr() *wrapperspb.StringValue {
	if x != nil {
		return x.CityKladr
	}
	return nil
}

func (x *Building) GetKladr() *wrapperspb.StringValue {
	if x != nil {
		return x.Kladr
	}
	return nil
}

func (x *Building) GetFiasLevel() *wrapperspb.Int32Value {
	if x != nil {
		return x.FiasLevel
	}
	return nil
}

func (x *Building) GetFiasActualityState() *wrapperspb.Int32Value {
	if x != nil {
		return x.FiasActualityState
	}
	return nil
}

func (x *Building) GetGeoLat() *wrapperspb.DoubleValue {
	if x != nil {
		return x.GeoLat
	}
	return nil
}

func (x *Building) GetGeoLon() *wrapperspb.DoubleValue {
	if x != nil {
		return x.GeoLon
	}
	return nil
}

func (x *Building) GetOkato() *wrapperspb.Int32Value {
	if x != nil {
		return x.Okato
	}
	return nil
}

func (x *Building) GetOktmo() *wrapperspb.Int32Value {
	if x != nil {
		return x.Oktmo
	}
	return nil
}

func (x *Building) GetPostalCode() *wrapperspb.Int32Value {
	if x != nil {
		return x.PostalCode
	}
	return nil
}

func (x *Building) GetRegion() *wrapperspb.StringValue {
	if x != nil {
		return x.Region
	}
	return nil
}

func (x *Building) GetRegionKladr() *wrapperspb.StringValue {
	if x != nil {
		return x.RegionKladr
	}
	return nil
}

func (x *Building) GetStreetKladr() *wrapperspb.StringValue {
	if x != nil {
		return x.StreetKladr
	}
	return nil
}

func (x *Building) GetStreetOrpon() *wrapperspb.Int64Value {
	if x != nil {
		return x.StreetOrpon
	}
	return nil
}

// Запрос получения дома
type GetBuildingRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

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

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

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

func (*GetBuildingRequest) ProtoMessage() {}

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

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

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

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

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

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

func (*GetBuildingResponse) ProtoMessage() {}

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

func (m *GetBuildingResponse) GetType() isGetBuildingResponse_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (x *GetBuildingResponse) GetData() *Building {
	if x, ok := x.GetType().(*GetBuildingResponse_Data); ok {
		return x.Data
	}
	return nil
}

func (x *GetBuildingResponse) GetError() *GetBuildingResponse_Error {
	if x, ok := x.GetType().(*GetBuildingResponse_Error_); ok {
		return x.Error
	}
	return nil
}

type isGetBuildingResponse_Type interface {
	isGetBuildingResponse_Type()
}

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

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

func (*GetBuildingResponse_Data) isGetBuildingResponse_Type() {}

func (*GetBuildingResponse_Error_) isGetBuildingResponse_Type() {}

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

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

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

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

func (*GetBuildingListRequest) ProtoMessage() {}

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

func (x *GetBuildingListRequest) GetFilter() *BuildingFilter {
	if x != nil {
		return x.Filter
	}
	return nil
}

func (m *GetBuildingListRequest) GetPagination() isGetBuildingListRequest_Pagination {
	if m != nil {
		return m.Pagination
	}
	return nil
}

func (x *GetBuildingListRequest) GetPaging() *BuildingPaging {
	if x, ok := x.GetPagination().(*GetBuildingListRequest_Paging); ok {
		return x.Paging
	}
	return nil
}

type isGetBuildingListRequest_Pagination interface {
	isGetBuildingListRequest_Pagination()
}

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

func (*GetBuildingListRequest_Paging) isGetBuildingListRequest_Pagination() {}

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

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

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

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

func (*GetBuildingListResponse) ProtoMessage() {}

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

func (m *GetBuildingListResponse) GetType() isGetBuildingListResponse_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (x *GetBuildingListResponse) GetData() *Building {
	if x, ok := x.GetType().(*GetBuildingListResponse_Data); ok {
		return x.Data
	}
	return nil
}

func (x *GetBuildingListResponse) GetError() *GetBuildingListResponse_Error {
	if x, ok := x.GetType().(*GetBuildingListResponse_Error_); ok {
		return x.Error
	}
	return nil
}

type isGetBuildingListResponse_Type interface {
	isGetBuildingListResponse_Type()
}

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

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

func (*GetBuildingListResponse_Data) isGetBuildingListResponse_Type() {}

func (*GetBuildingListResponse_Error_) isGetBuildingListResponse_Type() {}

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

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

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

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

func (*GetBuildingCountRequest) ProtoMessage() {}

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

func (x *GetBuildingCountRequest) GetFilter() *BuildingFilter {
	if x != nil {
		return x.Filter
	}
	return nil
}

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

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

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

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

func (*GetBuildingCountResponse) ProtoMessage() {}

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

func (m *GetBuildingCountResponse) GetType() isGetBuildingCountResponse_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

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

type isGetBuildingCountResponse_Type interface {
	isGetBuildingCountResponse_Type()
}

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

func (*GetBuildingCountResponse_Data) isGetBuildingCountResponse_Type() {}

// Фильтр по домам
type BuildingFilter 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"`
	// По идентификаторам устройств
	DeviceIds []int32 `protobuf:"varint,3,rep,packed,name=device_ids,json=deviceIds,proto3" json:"device_ids,omitempty"`
	// По идентификаторам квартирограмм
	FlatgrammIds []int32 `protobuf:"varint,4,rep,packed,name=flatgramm_ids,json=flatgrammIds,proto3" json:"flatgramm_ids,omitempty"`
	// По орпонам
	Orpons []int64 `protobuf:"varint,5,rep,packed,name=orpons,proto3" json:"orpons,omitempty"`
}

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

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

func (*BuildingFilter) ProtoMessage() {}

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

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

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

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

func (x *BuildingFilter) GetFlatgrammIds() []int32 {
	if x != nil {
		return x.FlatgrammIds
	}
	return nil
}

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

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

	// Тип значения сортировки.
	// Если значение не передано, то будет взято значение по умолчанию.
	// # По умолчанию: CREATED_AT
	OrderByType BuildingPaging_OrderByType `protobuf:"varint,1,opt,name=order_by_type,json=orderByType,proto3,enum=keyapis.access_control.v1.BuildingPaging_OrderByType" json:"order_by_type,omitempty"`
	// Тип направления сортировки.
	// # По умолчанию: DESC
	DirectionType BuildingPaging_DirectionType `protobuf:"varint,2,opt,name=direction_type,json=directionType,proto3,enum=keyapis.access_control.v1.BuildingPaging_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 *BuildingPaging) Reset() {
	*x = BuildingPaging{}
	if protoimpl.UnsafeEnabled {
		mi := &file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*BuildingPaging) ProtoMessage() {}

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

func (x *BuildingPaging) GetOrderByType() BuildingPaging_OrderByType {
	if x != nil {
		return x.OrderByType
	}
	return BuildingPaging_ORDER_BY_TYPE_UNKNOWN
}

func (x *BuildingPaging) GetDirectionType() BuildingPaging_DirectionType {
	if x != nil {
		return x.DirectionType
	}
	return BuildingPaging_DIRECTION_TYPE_UNKNOWN
}

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

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

// Агрегированный статус режима работы с подписками на доме
type BuildingSubscriptionMode struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Режим работы с подписками на доме
	SubscriptionModeType BuildingSubscriptionMode_SubscriptionModeType `protobuf:"varint,1,opt,name=subscription_mode_type,json=subscriptionModeType,proto3,enum=keyapis.access_control.v1.BuildingSubscriptionMode_SubscriptionModeType" json:"subscription_mode_type,omitempty"`
}

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

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

func (*BuildingSubscriptionMode) ProtoMessage() {}

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

func (x *BuildingSubscriptionMode) GetSubscriptionModeType() BuildingSubscriptionMode_SubscriptionModeType {
	if x != nil {
		return x.SubscriptionModeType
	}
	return BuildingSubscriptionMode_SUBSCRIPTION_MODE_TYPE_UNKNOWN
}

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

	// ОРПОН.
	// # Диапазон: 1..9223372036854775807
	Orpon int64 `protobuf:"varint,1,opt,name=orpon,proto3" json:"orpon,omitempty"`
}

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

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

func (*GetBuildingOrponSubscriptionModeRequest) ProtoMessage() {}

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

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

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

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

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

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

func (*GetBuildingOrponSubscriptionModeResponse) ProtoMessage() {}

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

func (m *GetBuildingOrponSubscriptionModeResponse) GetType() isGetBuildingOrponSubscriptionModeResponse_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (x *GetBuildingOrponSubscriptionModeResponse) GetData() *BuildingSubscriptionMode {
	if x, ok := x.GetType().(*GetBuildingOrponSubscriptionModeResponse_Data); ok {
		return x.Data
	}
	return nil
}

func (x *GetBuildingOrponSubscriptionModeResponse) GetError() *GetBuildingOrponSubscriptionModeResponse_Error {
	if x, ok := x.GetType().(*GetBuildingOrponSubscriptionModeResponse_Error_); ok {
		return x.Error
	}
	return nil
}

type isGetBuildingOrponSubscriptionModeResponse_Type interface {
	isGetBuildingOrponSubscriptionModeResponse_Type()
}

type GetBuildingOrponSubscriptionModeResponse_Data struct {
	// Агрегированный статус режима работы с подписками дома
	Data *BuildingSubscriptionMode `protobuf:"bytes,1,opt,name=data,proto3,oneof"`
}

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

func (*GetBuildingOrponSubscriptionModeResponse_Data) isGetBuildingOrponSubscriptionModeResponse_Type() {
}

func (*GetBuildingOrponSubscriptionModeResponse_Error_) isGetBuildingOrponSubscriptionModeResponse_Type() {
}

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

	// ОРПОН дома.
	// # Диапазон: 1..9223372036854775807
	Orpon int64 `protobuf:"varint,1,opt,name=orpon,proto3" json:"orpon,omitempty"`
}

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

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

func (*GetBuildingOrponExistsRequest) ProtoMessage() {}

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

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

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

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

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

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

func (*GetBuildingOrponExistsResponse) ProtoMessage() {}

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

func (m *GetBuildingOrponExistsResponse) GetType() isGetBuildingOrponExistsResponse_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

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

func (x *GetBuildingOrponExistsResponse) GetError() *GetBuildingOrponExistsResponse_Error {
	if x, ok := x.GetType().(*GetBuildingOrponExistsResponse_Error_); ok {
		return x.Error
	}
	return nil
}

type isGetBuildingOrponExistsResponse_Type interface {
	isGetBuildingOrponExistsResponse_Type()
}

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

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

func (*GetBuildingOrponExistsResponse_Data) isGetBuildingOrponExistsResponse_Type() {}

func (*GetBuildingOrponExistsResponse_Error_) isGetBuildingOrponExistsResponse_Type() {}

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

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

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

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

func (*GetBuildingResponse_Error) ProtoMessage() {}

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

func (m *GetBuildingResponse_Error) GetReason() isGetBuildingResponse_Error_Reason {
	if m != nil {
		return m.Reason
	}
	return nil
}

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

type isGetBuildingResponse_Error_Reason interface {
	isGetBuildingResponse_Error_Reason()
}

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

func (*GetBuildingResponse_Error_Validation) isGetBuildingResponse_Error_Reason() {}

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

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

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

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

func (*GetBuildingListResponse_Error) ProtoMessage() {}

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

func (m *GetBuildingListResponse_Error) GetReason() isGetBuildingListResponse_Error_Reason {
	if m != nil {
		return m.Reason
	}
	return nil
}

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

type isGetBuildingListResponse_Error_Reason interface {
	isGetBuildingListResponse_Error_Reason()
}

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

func (*GetBuildingListResponse_Error_Validation) isGetBuildingListResponse_Error_Reason() {}

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

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

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

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

func (*GetBuildingOrponSubscriptionModeResponse_Error) ProtoMessage() {}

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

func (m *GetBuildingOrponSubscriptionModeResponse_Error) GetReason() isGetBuildingOrponSubscriptionModeResponse_Error_Reason {
	if m != nil {
		return m.Reason
	}
	return nil
}

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

type isGetBuildingOrponSubscriptionModeResponse_Error_Reason interface {
	isGetBuildingOrponSubscriptionModeResponse_Error_Reason()
}

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

func (*GetBuildingOrponSubscriptionModeResponse_Error_Validation) isGetBuildingOrponSubscriptionModeResponse_Error_Reason() {
}

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

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

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

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

func (*GetBuildingOrponExistsResponse_Error) ProtoMessage() {}

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

func (m *GetBuildingOrponExistsResponse_Error) GetReason() isGetBuildingOrponExistsResponse_Error_Reason {
	if m != nil {
		return m.Reason
	}
	return nil
}

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

type isGetBuildingOrponExistsResponse_Error_Reason interface {
	isGetBuildingOrponExistsResponse_Error_Reason()
}

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

func (*GetBuildingOrponExistsResponse_Error_Validation) isGetBuildingOrponExistsResponse_Error_Reason() {
}

var File_keyapis_access_control_v1_keyapis_access_control_building_v1_proto protoreflect.FileDescriptor

var file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_rawDesc = []byte{
	0x0a, 0x42, 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, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 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, 0x1a,
	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, 0x22, 0xf1, 0x0f, 0x0a, 0x08, 0x42, 0x75,
	0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x05, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x72, 0x66, 0x49, 0x64,
	0x12, 0x1a, 0x0a, 0x06, 0x6d, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x6d, 0x72, 0x66, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x05,
	0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x02,
	0x52, 0x05, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x04, 0x63, 0x69, 0x74, 0x79, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x63, 0x69, 0x74, 0x79,
	0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x65, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x73, 0x74, 0x72, 0x65, 0x65, 0x74, 0x12, 0x16, 0x0a,
	0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e,
	0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x72, 0x74, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x72, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6f, 0x6d,
	0x70, 0x61, 0x6e, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0,
	0x41, 0x02, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x49, 0x64, 0x12, 0x16, 0x0a,
	0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70,
	0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x3e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 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, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x3e, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64,
	0x5f, 0x61, 0x74, 0x18, 0x0c, 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, 0x26, 0x0a, 0x0c, 0x66, 0x6c, 0x61, 0x74, 0x67, 0x72, 0x61,
	0x6d, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02,
	0x52, 0x0b, 0x66, 0x6c, 0x61, 0x74, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x49, 0x64, 0x12, 0x1d, 0x0a,
	0x0a, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x09, 0x63, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x04,
	0x66, 0x69, 0x61, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72,
	0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x66, 0x69, 0x61, 0x73, 0x12, 0x38,
	0x0a, 0x08, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
	0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08,
	0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x12, 0x2f, 0x0a, 0x04, 0x75, 0x6e, 0x6f, 0x6d,
	0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61,
	0x6c, 0x75, 0x65, 0x52, 0x04, 0x75, 0x6e, 0x6f, 0x6d, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x67,
	0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a,
	0x75, 0x74, 0x63, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x09, 0x75, 0x74, 0x63, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x52, 0x0a, 0x27, 0x69,
	0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x70,
	0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x5f, 0x73, 0x61, 0x6c, 0x65, 0x5f,
	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x21, 0x69, 0x73,
	0x4b, 0x65, 0x79, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x73, 0x69,
	0x62, 0x6c, 0x65, 0x49, 0x6e, 0x53, 0x61, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12,
	0x60, 0x0a, 0x2e, 0x69, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61,
	0x73, 0x65, 0x5f, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x5f, 0x6d,
	0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e,
	0x79, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, 0x28, 0x69, 0x73, 0x4b, 0x65, 0x79, 0x50, 0x75,
	0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x49, 0x6e,
	0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x6e,
	0x79, 0x12, 0x5c, 0x0a, 0x2c, 0x69, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x70, 0x75, 0x72, 0x63,
	0x68, 0x61, 0x73, 0x65, 0x5f, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x6e,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x6f, 0x6d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e,
	0x79, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x26, 0x69, 0x73, 0x4b, 0x65, 0x79, 0x50, 0x75,
	0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x49, 0x6e,
	0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x6f, 0x6d, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x12,
	0x37, 0x0a, 0x18, 0x69, 0x73, 0x5f, 0x72, 0x66, 0x69, 0x64, 0x5f, 0x6d, 0x69, 0x66, 0x61, 0x72,
	0x65, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x15, 0x69, 0x73, 0x52, 0x66, 0x69, 0x64, 0x4d, 0x69, 0x66, 0x61, 0x72, 0x65, 0x53,
	0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x61, 0x72, 0x65, 0x61,
	0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56,
	0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x61, 0x72, 0x65, 0x61, 0x12, 0x3a, 0x0a, 0x0a, 0x61, 0x72,
	0x65, 0x61, 0x5f, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b,
	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
	0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x61, 0x72, 0x65,
	0x61, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x0a, 0x61, 0x72, 0x65, 0x61, 0x5f, 0x6b,
	0x6c, 0x61, 0x64, 0x72, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72,
	0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x61, 0x72, 0x65, 0x61, 0x4b, 0x6c,
	0x61, 0x64, 0x72, 0x12, 0x42, 0x0a, 0x0e, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x5f, 0x6d,
	0x61, 0x72, 0x6b, 0x65, 0x72, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f,
	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e,
	0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61,
	0x6c, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x3b, 0x0a, 0x0a, 0x63, 0x69, 0x74, 0x79, 0x5f,
	0x6b, 0x6c, 0x61, 0x64, 0x72, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f,
	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74,
	0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x63, 0x69, 0x74, 0x79, 0x4b,
	0x6c, 0x61, 0x64, 0x72, 0x12, 0x32, 0x0a, 0x05, 0x6b, 0x6c, 0x61, 0x64, 0x72, 0x18, 0x1d, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75,
	0x65, 0x52, 0x05, 0x6b, 0x6c, 0x61, 0x64, 0x72, 0x12, 0x3a, 0x0a, 0x0a, 0x66, 0x69, 0x61, 0x73,
	0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67,
	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49,
	0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x66, 0x69, 0x61, 0x73, 0x4c,
	0x65, 0x76, 0x65, 0x6c, 0x12, 0x4d, 0x0a, 0x14, 0x66, 0x69, 0x61, 0x73, 0x5f, 0x61, 0x63, 0x74,
	0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x1f, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52,
	0x12, 0x66, 0x69, 0x61, 0x73, 0x41, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74,
	0x61, 0x74, 0x65, 0x12, 0x35, 0x0a, 0x07, 0x67, 0x65, 0x6f, 0x5f, 0x6c, 0x61, 0x74, 0x18, 0x20,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c,
	0x75, 0x65, 0x52, 0x06, 0x67, 0x65, 0x6f, 0x4c, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x07, 0x67, 0x65,
	0x6f, 0x5f, 0x6c, 0x6f, 0x6e, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f,
	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f,
	0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x67, 0x65, 0x6f, 0x4c, 0x6f,
	0x6e, 0x12, 0x31, 0x0a, 0x05, 0x6f, 0x6b, 0x61, 0x74, 0x6f, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
	0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x6f,
	0x6b, 0x61, 0x74, 0x6f, 0x12, 0x31, 0x0a, 0x05, 0x6f, 0x6b, 0x74, 0x6d, 0x6f, 0x18, 0x23, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65,
	0x52, 0x05, 0x6f, 0x6b, 0x74, 0x6d, 0x6f, 0x12, 0x3c, 0x0a, 0x0b, 0x70, 0x6f, 0x73, 0x74, 0x61,
	0x6c, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67,
	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49,
	0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a, 0x70, 0x6f, 0x73, 0x74, 0x61,
	0x6c, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x34, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18,
	0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61,
	0x6c, 0x75, 0x65, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x0c, 0x72,
	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x6c, 0x61, 0x64, 0x72, 0x18, 0x26, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52,
	0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4b, 0x6c, 0x61, 0x64, 0x72, 0x12, 0x3f, 0x0a, 0x0c,
	0x73, 0x74, 0x72, 0x65, 0x65, 0x74, 0x5f, 0x6b, 0x6c, 0x61, 0x64, 0x72, 0x18, 0x27, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65,
	0x52, 0x0b, 0x73, 0x74, 0x72, 0x65, 0x65, 0x74, 0x4b, 0x6c, 0x61, 0x64, 0x72, 0x12, 0x3e, 0x0a,
	0x0c, 0x73, 0x74, 0x72, 0x65, 0x65, 0x74, 0x5f, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x18, 0x28, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65,
	0x52, 0x0b, 0x73, 0x74, 0x72, 0x65, 0x65, 0x74, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x22, 0x29, 0x0a,
	0x12, 0x47, 0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 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, 0x87, 0x02, 0x0a, 0x13, 0x47, 0x65, 0x74,
	0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x39, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23,
	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, 0x42, 0x75, 0x69, 0x6c, 0x64,
	0x69, 0x6e, 0x67, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69,
	0x6e, 0x67, 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, 0xae, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69,
	0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a,
	0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69,
	0x6e, 0x67, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72,
	0x12, 0x43, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
	0x32, 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, 0x42, 0x75, 0x69,
	0x6c, 0x64, 0x69, 0x6e, 0x67, 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, 0x8f, 0x02, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64,
	0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x39, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69,
	0x6e, 0x67, 0x48, 0x00, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x50, 0x0a, 0x05, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e,
	0x67, 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, 0x61, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x42, 0x75, 0x69, 0x6c,
	0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x46, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 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, 0x42, 0x75, 0x69,
	0x6c, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x02,
	0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x38, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x42,
	0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 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, 0x9c, 0x01, 0x0a, 0x0e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x46,
	0x69, 0x6c, 0x74, 0x65, 0x72, 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, 0x1d, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f,
	0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63,
	0x65, 0x49, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x6c, 0x61, 0x74, 0x67, 0x72, 0x61, 0x6d,
	0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, 0x66, 0x6c, 0x61,
	0x74, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x72, 0x70,
	0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x72, 0x70, 0x6f, 0x6e,
	0x73, 0x22, 0x9d, 0x03, 0x0a, 0x0e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61,
	0x67, 0x69, 0x6e, 0x67, 0x12, 0x59, 0x0a, 0x0d, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79,
	0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67,
	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,
	0x5e, 0x0a, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 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, 0x62, 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,
	0x20, 0x0a, 0x1c, 0x53, 0x54, 0x52, 0x45, 0x45, 0x54, 0x5f, 0x54, 0x48, 0x45, 0x4e, 0x5f, 0x4e,
	0x55, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x54, 0x48, 0x45, 0x4e, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x10,
	0x03, 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, 0x88, 0x02, 0x0a, 0x18, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x75,
	0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x7e,
	0x0a, 0x16, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d,
	0x6f, 0x64, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x48,
	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, 0x42, 0x75, 0x69, 0x6c, 0x64,
	0x69, 0x6e, 0x67, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d,
	0x6f, 0x64, 0x65, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x4d, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x14, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x6c,
	0x0a, 0x14, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f,
	0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52,
	0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45,
	0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x4e,
	0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x50, 0x41, 0x52, 0x54, 0x49,
	0x41, 0x4c, 0x4c, 0x59, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0c,
	0x0a, 0x08, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x22, 0x44, 0x0a, 0x27,
	0x47, 0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x70, 0x6f, 0x6e,
	0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65,
	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, 0x22, 0xc1, 0x02, 0x0a, 0x28, 0x47, 0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69,
	0x6e, 0x67, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 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,
	0x49, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69,
	0x6e, 0x67, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f,
	0x64, 0x65, 0x48, 0x00, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x61, 0x0a, 0x05, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x49, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e,
	0x67, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 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, 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, 0x3a, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x42, 0x75, 0x69,
	0x6c, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 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, 0x22, 0xf8, 0x01, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69,
	0x6e, 0x67, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 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, 0x57, 0x0a, 0x05, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 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, 0x47, 0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69,
	0x6e, 0x67, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 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, 0x32, 0xcb, 0x07,
	0x0a, 0x0f, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
	0x65, 0x12, 0x9a, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e,
	0x67, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 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,
	0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73,
	0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31,
	0x2f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xa8,
	0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x4c, 0x69,
	0x73, 0x74, 0x12, 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, 0x47,
	0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73,
	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x26, 0x12, 0x24, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72,
	0x6f, 0x6c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69,
	0x6e, 0x67, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x30, 0x01, 0x12, 0xaa, 0x01, 0x0a, 0x10, 0x47, 0x65,
	0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32,
	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, 0x42, 0x75,
	0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 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, 0x47,
	0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x12,
	0x25, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c,
	0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67,
	0x2f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0xf4, 0x01, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x42, 0x75,
	0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x53, 0x75, 0x62, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x42, 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, 0x42, 0x75, 0x69, 0x6c, 0x64,
	0x69, 0x6e, 0x67, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x43, 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, 0x42,
	0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 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, 0x47, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x41, 0x12, 0x3f, 0x2f, 0x61,
	0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2f, 0x61, 0x70,
	0x69, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x72,
	0x70, 0x6f, 0x6e, 0x2f, 0x7b, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x7d, 0x2f, 0x73, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0xcb, 0x01,
	0x0a, 0x16, 0x47, 0x65, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x70,
	0x6f, 0x6e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x38, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67,
	0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x39, 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, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x70, 0x6f, 0x6e, 0x45,
	0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3c, 0x82,
	0xd3, 0xe4, 0x93, 0x02, 0x36, 0x12, 0x34, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63,
	0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x75,
	0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x72, 0x70, 0x6f, 0x6e, 0x2f, 0x7b, 0x6f, 0x72,
	0x70, 0x6f, 0x6e, 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_building_v1_proto_rawDescOnce sync.Once
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_rawDescData = file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_rawDesc
)

func file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_rawDescGZIP() []byte {
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_rawDescOnce.Do(func() {
		file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_rawDescData = protoimpl.X.CompressGZIP(file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_rawDescData)
	})
	return file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_rawDescData
}

var file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
var file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes = make([]protoimpl.MessageInfo, 18)
var file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_goTypes = []interface{}{
	(BuildingPaging_OrderByType)(0),                        // 0: keyapis.access_control.v1.BuildingPaging.OrderByType
	(BuildingPaging_DirectionType)(0),                      // 1: keyapis.access_control.v1.BuildingPaging.DirectionType
	(BuildingSubscriptionMode_SubscriptionModeType)(0),     // 2: keyapis.access_control.v1.BuildingSubscriptionMode.SubscriptionModeType
	(*Building)(nil),                                       // 3: keyapis.access_control.v1.Building
	(*GetBuildingRequest)(nil),                             // 4: keyapis.access_control.v1.GetBuildingRequest
	(*GetBuildingResponse)(nil),                            // 5: keyapis.access_control.v1.GetBuildingResponse
	(*GetBuildingListRequest)(nil),                         // 6: keyapis.access_control.v1.GetBuildingListRequest
	(*GetBuildingListResponse)(nil),                        // 7: keyapis.access_control.v1.GetBuildingListResponse
	(*GetBuildingCountRequest)(nil),                        // 8: keyapis.access_control.v1.GetBuildingCountRequest
	(*GetBuildingCountResponse)(nil),                       // 9: keyapis.access_control.v1.GetBuildingCountResponse
	(*BuildingFilter)(nil),                                 // 10: keyapis.access_control.v1.BuildingFilter
	(*BuildingPaging)(nil),                                 // 11: keyapis.access_control.v1.BuildingPaging
	(*BuildingSubscriptionMode)(nil),                       // 12: keyapis.access_control.v1.BuildingSubscriptionMode
	(*GetBuildingOrponSubscriptionModeRequest)(nil),        // 13: keyapis.access_control.v1.GetBuildingOrponSubscriptionModeRequest
	(*GetBuildingOrponSubscriptionModeResponse)(nil),       // 14: keyapis.access_control.v1.GetBuildingOrponSubscriptionModeResponse
	(*GetBuildingOrponExistsRequest)(nil),                  // 15: keyapis.access_control.v1.GetBuildingOrponExistsRequest
	(*GetBuildingOrponExistsResponse)(nil),                 // 16: keyapis.access_control.v1.GetBuildingOrponExistsResponse
	(*GetBuildingResponse_Error)(nil),                      // 17: keyapis.access_control.v1.GetBuildingResponse.Error
	(*GetBuildingListResponse_Error)(nil),                  // 18: keyapis.access_control.v1.GetBuildingListResponse.Error
	(*GetBuildingOrponSubscriptionModeResponse_Error)(nil), // 19: keyapis.access_control.v1.GetBuildingOrponSubscriptionModeResponse.Error
	(*GetBuildingOrponExistsResponse_Error)(nil),           // 20: keyapis.access_control.v1.GetBuildingOrponExistsResponse.Error
	(*timestamppb.Timestamp)(nil),                          // 21: google.protobuf.Timestamp
	(*wrapperspb.StringValue)(nil),                         // 22: google.protobuf.StringValue
	(*wrapperspb.Int64Value)(nil),                          // 23: google.protobuf.Int64Value
	(*wrapperspb.Int32Value)(nil),                          // 24: google.protobuf.Int32Value
	(*wrapperspb.DoubleValue)(nil),                         // 25: google.protobuf.DoubleValue
	(*ValidationError)(nil),                                // 26: keyapis.access_control.v1.ValidationError
}
var file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_depIdxs = []int32{
	21, // 0: keyapis.access_control.v1.Building.created_at:type_name -> google.protobuf.Timestamp
	21, // 1: keyapis.access_control.v1.Building.deleted_at:type_name -> google.protobuf.Timestamp
	22, // 2: keyapis.access_control.v1.Building.fias:type_name -> google.protobuf.StringValue
	22, // 3: keyapis.access_control.v1.Building.district:type_name -> google.protobuf.StringValue
	23, // 4: keyapis.access_control.v1.Building.unom:type_name -> google.protobuf.Int64Value
	22, // 5: keyapis.access_control.v1.Building.area:type_name -> google.protobuf.StringValue
	23, // 6: keyapis.access_control.v1.Building.area_orpon:type_name -> google.protobuf.Int64Value
	22, // 7: keyapis.access_control.v1.Building.area_kladr:type_name -> google.protobuf.StringValue
	24, // 8: keyapis.access_control.v1.Building.capital_marker:type_name -> google.protobuf.Int32Value
	22, // 9: keyapis.access_control.v1.Building.city_kladr:type_name -> google.protobuf.StringValue
	22, // 10: keyapis.access_control.v1.Building.kladr:type_name -> google.protobuf.StringValue
	24, // 11: keyapis.access_control.v1.Building.fias_level:type_name -> google.protobuf.Int32Value
	24, // 12: keyapis.access_control.v1.Building.fias_actuality_state:type_name -> google.protobuf.Int32Value
	25, // 13: keyapis.access_control.v1.Building.geo_lat:type_name -> google.protobuf.DoubleValue
	25, // 14: keyapis.access_control.v1.Building.geo_lon:type_name -> google.protobuf.DoubleValue
	24, // 15: keyapis.access_control.v1.Building.okato:type_name -> google.protobuf.Int32Value
	24, // 16: keyapis.access_control.v1.Building.oktmo:type_name -> google.protobuf.Int32Value
	24, // 17: keyapis.access_control.v1.Building.postal_code:type_name -> google.protobuf.Int32Value
	22, // 18: keyapis.access_control.v1.Building.region:type_name -> google.protobuf.StringValue
	22, // 19: keyapis.access_control.v1.Building.region_kladr:type_name -> google.protobuf.StringValue
	22, // 20: keyapis.access_control.v1.Building.street_kladr:type_name -> google.protobuf.StringValue
	23, // 21: keyapis.access_control.v1.Building.street_orpon:type_name -> google.protobuf.Int64Value
	3,  // 22: keyapis.access_control.v1.GetBuildingResponse.data:type_name -> keyapis.access_control.v1.Building
	17, // 23: keyapis.access_control.v1.GetBuildingResponse.error:type_name -> keyapis.access_control.v1.GetBuildingResponse.Error
	10, // 24: keyapis.access_control.v1.GetBuildingListRequest.filter:type_name -> keyapis.access_control.v1.BuildingFilter
	11, // 25: keyapis.access_control.v1.GetBuildingListRequest.paging:type_name -> keyapis.access_control.v1.BuildingPaging
	3,  // 26: keyapis.access_control.v1.GetBuildingListResponse.data:type_name -> keyapis.access_control.v1.Building
	18, // 27: keyapis.access_control.v1.GetBuildingListResponse.error:type_name -> keyapis.access_control.v1.GetBuildingListResponse.Error
	10, // 28: keyapis.access_control.v1.GetBuildingCountRequest.filter:type_name -> keyapis.access_control.v1.BuildingFilter
	0,  // 29: keyapis.access_control.v1.BuildingPaging.order_by_type:type_name -> keyapis.access_control.v1.BuildingPaging.OrderByType
	1,  // 30: keyapis.access_control.v1.BuildingPaging.direction_type:type_name -> keyapis.access_control.v1.BuildingPaging.DirectionType
	2,  // 31: keyapis.access_control.v1.BuildingSubscriptionMode.subscription_mode_type:type_name -> keyapis.access_control.v1.BuildingSubscriptionMode.SubscriptionModeType
	12, // 32: keyapis.access_control.v1.GetBuildingOrponSubscriptionModeResponse.data:type_name -> keyapis.access_control.v1.BuildingSubscriptionMode
	19, // 33: keyapis.access_control.v1.GetBuildingOrponSubscriptionModeResponse.error:type_name -> keyapis.access_control.v1.GetBuildingOrponSubscriptionModeResponse.Error
	20, // 34: keyapis.access_control.v1.GetBuildingOrponExistsResponse.error:type_name -> keyapis.access_control.v1.GetBuildingOrponExistsResponse.Error
	26, // 35: keyapis.access_control.v1.GetBuildingResponse.Error.validation:type_name -> keyapis.access_control.v1.ValidationError
	26, // 36: keyapis.access_control.v1.GetBuildingListResponse.Error.validation:type_name -> keyapis.access_control.v1.ValidationError
	26, // 37: keyapis.access_control.v1.GetBuildingOrponSubscriptionModeResponse.Error.validation:type_name -> keyapis.access_control.v1.ValidationError
	26, // 38: keyapis.access_control.v1.GetBuildingOrponExistsResponse.Error.validation:type_name -> keyapis.access_control.v1.ValidationError
	4,  // 39: keyapis.access_control.v1.BuildingService.GetBuilding:input_type -> keyapis.access_control.v1.GetBuildingRequest
	6,  // 40: keyapis.access_control.v1.BuildingService.GetBuildingList:input_type -> keyapis.access_control.v1.GetBuildingListRequest
	8,  // 41: keyapis.access_control.v1.BuildingService.GetBuildingCount:input_type -> keyapis.access_control.v1.GetBuildingCountRequest
	13, // 42: keyapis.access_control.v1.BuildingService.GetBuildingOrponSubscriptionMode:input_type -> keyapis.access_control.v1.GetBuildingOrponSubscriptionModeRequest
	15, // 43: keyapis.access_control.v1.BuildingService.GetBuildingOrponExists:input_type -> keyapis.access_control.v1.GetBuildingOrponExistsRequest
	5,  // 44: keyapis.access_control.v1.BuildingService.GetBuilding:output_type -> keyapis.access_control.v1.GetBuildingResponse
	7,  // 45: keyapis.access_control.v1.BuildingService.GetBuildingList:output_type -> keyapis.access_control.v1.GetBuildingListResponse
	9,  // 46: keyapis.access_control.v1.BuildingService.GetBuildingCount:output_type -> keyapis.access_control.v1.GetBuildingCountResponse
	14, // 47: keyapis.access_control.v1.BuildingService.GetBuildingOrponSubscriptionMode:output_type -> keyapis.access_control.v1.GetBuildingOrponSubscriptionModeResponse
	16, // 48: keyapis.access_control.v1.BuildingService.GetBuildingOrponExists:output_type -> keyapis.access_control.v1.GetBuildingOrponExistsResponse
	44, // [44:49] is the sub-list for method output_type
	39, // [39:44] is the sub-list for method input_type
	39, // [39:39] is the sub-list for extension type_name
	39, // [39:39] is the sub-list for extension extendee
	0,  // [0:39] is the sub-list for field type_name
}

func init() { file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_init() }
func file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_init() {
	if File_keyapis_access_control_v1_keyapis_access_control_building_v1_proto != nil {
		return
	}
	file_keyapis_access_control_v1_keyapis_access_control_access_control_v1_proto_init()
	if !protoimpl.UnsafeEnabled {
		file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Building); 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_building_v1_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingRequest); 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_building_v1_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingResponse); 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_building_v1_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingListRequest); 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_building_v1_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingListResponse); 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_building_v1_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingCountRequest); 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_building_v1_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingCountResponse); 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_building_v1_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BuildingFilter); 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_building_v1_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BuildingPaging); 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_building_v1_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BuildingSubscriptionMode); 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_building_v1_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingOrponSubscriptionModeRequest); 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_building_v1_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingOrponSubscriptionModeResponse); 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_building_v1_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingOrponExistsRequest); 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_building_v1_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingOrponExistsResponse); 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_building_v1_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingResponse_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_building_v1_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingListResponse_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_building_v1_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingOrponSubscriptionModeResponse_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_building_v1_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBuildingOrponExistsResponse_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_building_v1_proto_msgTypes[2].OneofWrappers = []interface{}{
		(*GetBuildingResponse_Data)(nil),
		(*GetBuildingResponse_Error_)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes[3].OneofWrappers = []interface{}{
		(*GetBuildingListRequest_Paging)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes[4].OneofWrappers = []interface{}{
		(*GetBuildingListResponse_Data)(nil),
		(*GetBuildingListResponse_Error_)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes[6].OneofWrappers = []interface{}{
		(*GetBuildingCountResponse_Data)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes[11].OneofWrappers = []interface{}{
		(*GetBuildingOrponSubscriptionModeResponse_Data)(nil),
		(*GetBuildingOrponSubscriptionModeResponse_Error_)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes[13].OneofWrappers = []interface{}{
		(*GetBuildingOrponExistsResponse_Data)(nil),
		(*GetBuildingOrponExistsResponse_Error_)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes[14].OneofWrappers = []interface{}{
		(*GetBuildingResponse_Error_Validation)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes[15].OneofWrappers = []interface{}{
		(*GetBuildingListResponse_Error_Validation)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes[16].OneofWrappers = []interface{}{
		(*GetBuildingOrponSubscriptionModeResponse_Error_Validation)(nil),
	}
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes[17].OneofWrappers = []interface{}{
		(*GetBuildingOrponExistsResponse_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_building_v1_proto_rawDesc,
			NumEnums:      3,
			NumMessages:   18,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_goTypes,
		DependencyIndexes: file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_depIdxs,
		EnumInfos:         file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_enumTypes,
		MessageInfos:      file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_msgTypes,
	}.Build()
	File_keyapis_access_control_v1_keyapis_access_control_building_v1_proto = out.File
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_rawDesc = nil
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_goTypes = nil
	file_keyapis_access_control_v1_keyapis_access_control_building_v1_proto_depIdxs = nil
}
