// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.33.0
// 	protoc        v6.32.0
// source: build_proto/build.proto

package build_proto

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

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

type FilesetEntry_SymlinkBehavior int32

const (
	FilesetEntry_COPY        FilesetEntry_SymlinkBehavior = 1
	FilesetEntry_DEREFERENCE FilesetEntry_SymlinkBehavior = 2
)

// Enum value maps for FilesetEntry_SymlinkBehavior.
var (
	FilesetEntry_SymlinkBehavior_name = map[int32]string{
		1: "COPY",
		2: "DEREFERENCE",
	}
	FilesetEntry_SymlinkBehavior_value = map[string]int32{
		"COPY":        1,
		"DEREFERENCE": 2,
	}
)

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

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

func (FilesetEntry_SymlinkBehavior) Descriptor() protoreflect.EnumDescriptor {
	return file_build_proto_build_proto_enumTypes[0].Descriptor()
}

func (FilesetEntry_SymlinkBehavior) Type() protoreflect.EnumType {
	return &file_build_proto_build_proto_enumTypes[0]
}

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

// Deprecated: Do not use.
func (x *FilesetEntry_SymlinkBehavior) UnmarshalJSON(b []byte) error {
	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
	if err != nil {
		return err
	}
	*x = FilesetEntry_SymlinkBehavior(num)
	return nil
}

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

type Attribute_Discriminator int32

const (
	Attribute_INTEGER                      Attribute_Discriminator = 1
	Attribute_STRING                       Attribute_Discriminator = 2
	Attribute_LABEL                        Attribute_Discriminator = 3
	Attribute_OUTPUT                       Attribute_Discriminator = 4
	Attribute_STRING_LIST                  Attribute_Discriminator = 5
	Attribute_LABEL_LIST                   Attribute_Discriminator = 6
	Attribute_OUTPUT_LIST                  Attribute_Discriminator = 7
	Attribute_DISTRIBUTION_SET             Attribute_Discriminator = 8
	Attribute_LICENSE                      Attribute_Discriminator = 9
	Attribute_STRING_DICT                  Attribute_Discriminator = 10
	Attribute_FILESET_ENTRY_LIST           Attribute_Discriminator = 11
	Attribute_LABEL_LIST_DICT              Attribute_Discriminator = 12
	Attribute_STRING_LIST_DICT             Attribute_Discriminator = 13
	Attribute_BOOLEAN                      Attribute_Discriminator = 14
	Attribute_TRISTATE                     Attribute_Discriminator = 15
	Attribute_INTEGER_LIST                 Attribute_Discriminator = 16
	Attribute_UNKNOWN                      Attribute_Discriminator = 18
	Attribute_LABEL_DICT_UNARY             Attribute_Discriminator = 19
	Attribute_SELECTOR_LIST                Attribute_Discriminator = 20
	Attribute_LABEL_KEYED_STRING_DICT      Attribute_Discriminator = 21
	Attribute_DEPRECATED_STRING_DICT_UNARY Attribute_Discriminator = 17
)

// Enum value maps for Attribute_Discriminator.
var (
	Attribute_Discriminator_name = map[int32]string{
		1:  "INTEGER",
		2:  "STRING",
		3:  "LABEL",
		4:  "OUTPUT",
		5:  "STRING_LIST",
		6:  "LABEL_LIST",
		7:  "OUTPUT_LIST",
		8:  "DISTRIBUTION_SET",
		9:  "LICENSE",
		10: "STRING_DICT",
		11: "FILESET_ENTRY_LIST",
		12: "LABEL_LIST_DICT",
		13: "STRING_LIST_DICT",
		14: "BOOLEAN",
		15: "TRISTATE",
		16: "INTEGER_LIST",
		18: "UNKNOWN",
		19: "LABEL_DICT_UNARY",
		20: "SELECTOR_LIST",
		21: "LABEL_KEYED_STRING_DICT",
		17: "DEPRECATED_STRING_DICT_UNARY",
	}
	Attribute_Discriminator_value = map[string]int32{
		"INTEGER":                      1,
		"STRING":                       2,
		"LABEL":                        3,
		"OUTPUT":                       4,
		"STRING_LIST":                  5,
		"LABEL_LIST":                   6,
		"OUTPUT_LIST":                  7,
		"DISTRIBUTION_SET":             8,
		"LICENSE":                      9,
		"STRING_DICT":                  10,
		"FILESET_ENTRY_LIST":           11,
		"LABEL_LIST_DICT":              12,
		"STRING_LIST_DICT":             13,
		"BOOLEAN":                      14,
		"TRISTATE":                     15,
		"INTEGER_LIST":                 16,
		"UNKNOWN":                      18,
		"LABEL_DICT_UNARY":             19,
		"SELECTOR_LIST":                20,
		"LABEL_KEYED_STRING_DICT":      21,
		"DEPRECATED_STRING_DICT_UNARY": 17,
	}
)

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

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

func (Attribute_Discriminator) Descriptor() protoreflect.EnumDescriptor {
	return file_build_proto_build_proto_enumTypes[1].Descriptor()
}

func (Attribute_Discriminator) Type() protoreflect.EnumType {
	return &file_build_proto_build_proto_enumTypes[1]
}

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

// Deprecated: Do not use.
func (x *Attribute_Discriminator) UnmarshalJSON(b []byte) error {
	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
	if err != nil {
		return err
	}
	*x = Attribute_Discriminator(num)
	return nil
}

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

type Attribute_Tristate int32

const (
	Attribute_NO   Attribute_Tristate = 0
	Attribute_YES  Attribute_Tristate = 1
	Attribute_AUTO Attribute_Tristate = 2
)

// Enum value maps for Attribute_Tristate.
var (
	Attribute_Tristate_name = map[int32]string{
		0: "NO",
		1: "YES",
		2: "AUTO",
	}
	Attribute_Tristate_value = map[string]int32{
		"NO":   0,
		"YES":  1,
		"AUTO": 2,
	}
)

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

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

func (Attribute_Tristate) Descriptor() protoreflect.EnumDescriptor {
	return file_build_proto_build_proto_enumTypes[2].Descriptor()
}

func (Attribute_Tristate) Type() protoreflect.EnumType {
	return &file_build_proto_build_proto_enumTypes[2]
}

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

// Deprecated: Do not use.
func (x *Attribute_Tristate) UnmarshalJSON(b []byte) error {
	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
	if err != nil {
		return err
	}
	*x = Attribute_Tristate(num)
	return nil
}

// Deprecated: Use Attribute_Tristate.Descriptor instead.
func (Attribute_Tristate) EnumDescriptor() ([]byte, []int) {
	return file_build_proto_build_proto_rawDescGZIP(), []int{7, 1}
}

type Target_Discriminator int32

const (
	Target_RULE              Target_Discriminator = 1
	Target_SOURCE_FILE       Target_Discriminator = 2
	Target_GENERATED_FILE    Target_Discriminator = 3
	Target_PACKAGE_GROUP     Target_Discriminator = 4
	Target_ENVIRONMENT_GROUP Target_Discriminator = 5
)

// Enum value maps for Target_Discriminator.
var (
	Target_Discriminator_name = map[int32]string{
		1: "RULE",
		2: "SOURCE_FILE",
		3: "GENERATED_FILE",
		4: "PACKAGE_GROUP",
		5: "ENVIRONMENT_GROUP",
	}
	Target_Discriminator_value = map[string]int32{
		"RULE":              1,
		"SOURCE_FILE":       2,
		"GENERATED_FILE":    3,
		"PACKAGE_GROUP":     4,
		"ENVIRONMENT_GROUP": 5,
	}
)

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

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

func (Target_Discriminator) Descriptor() protoreflect.EnumDescriptor {
	return file_build_proto_build_proto_enumTypes[3].Descriptor()
}

func (Target_Discriminator) Type() protoreflect.EnumType {
	return &file_build_proto_build_proto_enumTypes[3]
}

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

// Deprecated: Do not use.
func (x *Target_Discriminator) UnmarshalJSON(b []byte) error {
	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
	if err != nil {
		return err
	}
	*x = Target_Discriminator(num)
	return nil
}

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

type AllowedRuleClassInfo_AllowedRuleClasses int32

const (
	AllowedRuleClassInfo_ANY       AllowedRuleClassInfo_AllowedRuleClasses = 1
	AllowedRuleClassInfo_SPECIFIED AllowedRuleClassInfo_AllowedRuleClasses = 2
)

// Enum value maps for AllowedRuleClassInfo_AllowedRuleClasses.
var (
	AllowedRuleClassInfo_AllowedRuleClasses_name = map[int32]string{
		1: "ANY",
		2: "SPECIFIED",
	}
	AllowedRuleClassInfo_AllowedRuleClasses_value = map[string]int32{
		"ANY":       1,
		"SPECIFIED": 2,
	}
)

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

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

func (AllowedRuleClassInfo_AllowedRuleClasses) Descriptor() protoreflect.EnumDescriptor {
	return file_build_proto_build_proto_enumTypes[4].Descriptor()
}

func (AllowedRuleClassInfo_AllowedRuleClasses) Type() protoreflect.EnumType {
	return &file_build_proto_build_proto_enumTypes[4]
}

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

// Deprecated: Do not use.
func (x *AllowedRuleClassInfo_AllowedRuleClasses) UnmarshalJSON(b []byte) error {
	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
	if err != nil {
		return err
	}
	*x = AllowedRuleClassInfo_AllowedRuleClasses(num)
	return nil
}

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

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

	LicenseType []string `protobuf:"bytes,1,rep,name=license_type,json=licenseType" json:"license_type,omitempty"`
	Exception   []string `protobuf:"bytes,2,rep,name=exception" json:"exception,omitempty"`
}

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

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

func (*License) ProtoMessage() {}

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

func (x *License) GetLicenseType() []string {
	if x != nil {
		return x.LicenseType
	}
	return nil
}

func (x *License) GetException() []string {
	if x != nil {
		return x.Exception
	}
	return nil
}

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

	Key   *string `protobuf:"bytes,1,req,name=key" json:"key,omitempty"`
	Value *string `protobuf:"bytes,2,req,name=value" json:"value,omitempty"`
}

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

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

func (*StringDictEntry) ProtoMessage() {}

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

func (x *StringDictEntry) GetKey() string {
	if x != nil && x.Key != nil {
		return *x.Key
	}
	return ""
}

func (x *StringDictEntry) GetValue() string {
	if x != nil && x.Value != nil {
		return *x.Value
	}
	return ""
}

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

	Key   *string `protobuf:"bytes,1,req,name=key" json:"key,omitempty"`
	Value *string `protobuf:"bytes,2,req,name=value" json:"value,omitempty"`
}

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

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

func (*LabelDictUnaryEntry) ProtoMessage() {}

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

func (x *LabelDictUnaryEntry) GetKey() string {
	if x != nil && x.Key != nil {
		return *x.Key
	}
	return ""
}

func (x *LabelDictUnaryEntry) GetValue() string {
	if x != nil && x.Value != nil {
		return *x.Value
	}
	return ""
}

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

	Key   *string  `protobuf:"bytes,1,req,name=key" json:"key,omitempty"`
	Value []string `protobuf:"bytes,2,rep,name=value" json:"value,omitempty"`
}

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

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

func (*LabelListDictEntry) ProtoMessage() {}

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

func (x *LabelListDictEntry) GetKey() string {
	if x != nil && x.Key != nil {
		return *x.Key
	}
	return ""
}

func (x *LabelListDictEntry) GetValue() []string {
	if x != nil {
		return x.Value
	}
	return nil
}

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

	Key   *string `protobuf:"bytes,1,req,name=key" json:"key,omitempty"`
	Value *string `protobuf:"bytes,2,req,name=value" json:"value,omitempty"`
}

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

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

func (*LabelKeyedStringDictEntry) ProtoMessage() {}

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

func (x *LabelKeyedStringDictEntry) GetKey() string {
	if x != nil && x.Key != nil {
		return *x.Key
	}
	return ""
}

func (x *LabelKeyedStringDictEntry) GetValue() string {
	if x != nil && x.Value != nil {
		return *x.Value
	}
	return ""
}

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

	Key   *string  `protobuf:"bytes,1,req,name=key" json:"key,omitempty"`
	Value []string `protobuf:"bytes,2,rep,name=value" json:"value,omitempty"`
}

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

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

func (*StringListDictEntry) ProtoMessage() {}

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

func (x *StringListDictEntry) GetKey() string {
	if x != nil && x.Key != nil {
		return *x.Key
	}
	return ""
}

func (x *StringListDictEntry) GetValue() []string {
	if x != nil {
		return x.Value
	}
	return nil
}

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

	Source               *string                       `protobuf:"bytes,1,req,name=source" json:"source,omitempty"`
	DestinationDirectory *string                       `protobuf:"bytes,2,req,name=destination_directory,json=destinationDirectory" json:"destination_directory,omitempty"`
	FilesPresent         *bool                         `protobuf:"varint,7,opt,name=files_present,json=filesPresent" json:"files_present,omitempty"`
	File                 []string                      `protobuf:"bytes,3,rep,name=file" json:"file,omitempty"`
	Exclude              []string                      `protobuf:"bytes,4,rep,name=exclude" json:"exclude,omitempty"`
	SymlinkBehavior      *FilesetEntry_SymlinkBehavior `protobuf:"varint,5,opt,name=symlink_behavior,json=symlinkBehavior,enum=blaze_query.FilesetEntry_SymlinkBehavior,def=1" json:"symlink_behavior,omitempty"`
	StripPrefix          *string                       `protobuf:"bytes,6,opt,name=strip_prefix,json=stripPrefix" json:"strip_prefix,omitempty"`
}

// Default values for FilesetEntry fields.
const (
	Default_FilesetEntry_SymlinkBehavior = FilesetEntry_COPY
)

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

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

func (*FilesetEntry) ProtoMessage() {}

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

func (x *FilesetEntry) GetSource() string {
	if x != nil && x.Source != nil {
		return *x.Source
	}
	return ""
}

func (x *FilesetEntry) GetDestinationDirectory() string {
	if x != nil && x.DestinationDirectory != nil {
		return *x.DestinationDirectory
	}
	return ""
}

func (x *FilesetEntry) GetFilesPresent() bool {
	if x != nil && x.FilesPresent != nil {
		return *x.FilesPresent
	}
	return false
}

func (x *FilesetEntry) GetFile() []string {
	if x != nil {
		return x.File
	}
	return nil
}

func (x *FilesetEntry) GetExclude() []string {
	if x != nil {
		return x.Exclude
	}
	return nil
}

func (x *FilesetEntry) GetSymlinkBehavior() FilesetEntry_SymlinkBehavior {
	if x != nil && x.SymlinkBehavior != nil {
		return *x.SymlinkBehavior
	}
	return Default_FilesetEntry_SymlinkBehavior
}

func (x *FilesetEntry) GetStripPrefix() string {
	if x != nil && x.StripPrefix != nil {
		return *x.StripPrefix
	}
	return ""
}

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

	Name                           *string                      `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	ExplicitlySpecified            *bool                        `protobuf:"varint,13,opt,name=explicitly_specified,json=explicitlySpecified" json:"explicitly_specified,omitempty"`
	Nodep                          *bool                        `protobuf:"varint,20,opt,name=nodep" json:"nodep,omitempty"`
	Type                           *Attribute_Discriminator     `protobuf:"varint,2,req,name=type,enum=blaze_query.Attribute_Discriminator" json:"type,omitempty"`
	IntValue                       *int32                       `protobuf:"varint,3,opt,name=int_value,json=intValue" json:"int_value,omitempty"`
	StringValue                    *string                      `protobuf:"bytes,5,opt,name=string_value,json=stringValue" json:"string_value,omitempty"`
	BooleanValue                   *bool                        `protobuf:"varint,14,opt,name=boolean_value,json=booleanValue" json:"boolean_value,omitempty"`
	TristateValue                  *Attribute_Tristate          `protobuf:"varint,15,opt,name=tristate_value,json=tristateValue,enum=blaze_query.Attribute_Tristate" json:"tristate_value,omitempty"`
	StringListValue                []string                     `protobuf:"bytes,6,rep,name=string_list_value,json=stringListValue" json:"string_list_value,omitempty"`
	License                        *License                     `protobuf:"bytes,7,opt,name=license" json:"license,omitempty"`
	StringDictValue                []*StringDictEntry           `protobuf:"bytes,8,rep,name=string_dict_value,json=stringDictValue" json:"string_dict_value,omitempty"`
	FilesetListValue               []*FilesetEntry              `protobuf:"bytes,9,rep,name=fileset_list_value,json=filesetListValue" json:"fileset_list_value,omitempty"`
	LabelListDictValue             []*LabelListDictEntry        `protobuf:"bytes,10,rep,name=label_list_dict_value,json=labelListDictValue" json:"label_list_dict_value,omitempty"`
	StringListDictValue            []*StringListDictEntry       `protobuf:"bytes,11,rep,name=string_list_dict_value,json=stringListDictValue" json:"string_list_dict_value,omitempty"`
	IntListValue                   []int32                      `protobuf:"varint,17,rep,name=int_list_value,json=intListValue" json:"int_list_value,omitempty"`
	LabelDictUnaryValue            []*LabelDictUnaryEntry       `protobuf:"bytes,19,rep,name=label_dict_unary_value,json=labelDictUnaryValue" json:"label_dict_unary_value,omitempty"`
	LabelKeyedStringDictValue      []*LabelKeyedStringDictEntry `protobuf:"bytes,22,rep,name=label_keyed_string_dict_value,json=labelKeyedStringDictValue" json:"label_keyed_string_dict_value,omitempty"`
	SelectorList                   *Attribute_SelectorList      `protobuf:"bytes,21,opt,name=selector_list,json=selectorList" json:"selector_list,omitempty"`
	DEPRECATEDStringDictUnaryValue [][]byte                     `protobuf:"bytes,18,rep,name=DEPRECATED_string_dict_unary_value,json=DEPRECATEDStringDictUnaryValue" json:"DEPRECATED_string_dict_unary_value,omitempty"`
}

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

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

func (*Attribute) ProtoMessage() {}

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

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

func (x *Attribute) GetExplicitlySpecified() bool {
	if x != nil && x.ExplicitlySpecified != nil {
		return *x.ExplicitlySpecified
	}
	return false
}

func (x *Attribute) GetNodep() bool {
	if x != nil && x.Nodep != nil {
		return *x.Nodep
	}
	return false
}

func (x *Attribute) GetType() Attribute_Discriminator {
	if x != nil && x.Type != nil {
		return *x.Type
	}
	return Attribute_INTEGER
}

func (x *Attribute) GetIntValue() int32 {
	if x != nil && x.IntValue != nil {
		return *x.IntValue
	}
	return 0
}

func (x *Attribute) GetStringValue() string {
	if x != nil && x.StringValue != nil {
		return *x.StringValue
	}
	return ""
}

func (x *Attribute) GetBooleanValue() bool {
	if x != nil && x.BooleanValue != nil {
		return *x.BooleanValue
	}
	return false
}

func (x *Attribute) GetTristateValue() Attribute_Tristate {
	if x != nil && x.TristateValue != nil {
		return *x.TristateValue
	}
	return Attribute_NO
}

func (x *Attribute) GetStringListValue() []string {
	if x != nil {
		return x.StringListValue
	}
	return nil
}

func (x *Attribute) GetLicense() *License {
	if x != nil {
		return x.License
	}
	return nil
}

func (x *Attribute) GetStringDictValue() []*StringDictEntry {
	if x != nil {
		return x.StringDictValue
	}
	return nil
}

func (x *Attribute) GetFilesetListValue() []*FilesetEntry {
	if x != nil {
		return x.FilesetListValue
	}
	return nil
}

func (x *Attribute) GetLabelListDictValue() []*LabelListDictEntry {
	if x != nil {
		return x.LabelListDictValue
	}
	return nil
}

func (x *Attribute) GetStringListDictValue() []*StringListDictEntry {
	if x != nil {
		return x.StringListDictValue
	}
	return nil
}

func (x *Attribute) GetIntListValue() []int32 {
	if x != nil {
		return x.IntListValue
	}
	return nil
}

func (x *Attribute) GetLabelDictUnaryValue() []*LabelDictUnaryEntry {
	if x != nil {
		return x.LabelDictUnaryValue
	}
	return nil
}

func (x *Attribute) GetLabelKeyedStringDictValue() []*LabelKeyedStringDictEntry {
	if x != nil {
		return x.LabelKeyedStringDictValue
	}
	return nil
}

func (x *Attribute) GetSelectorList() *Attribute_SelectorList {
	if x != nil {
		return x.SelectorList
	}
	return nil
}

func (x *Attribute) GetDEPRECATEDStringDictUnaryValue() [][]byte {
	if x != nil {
		return x.DEPRECATEDStringDictUnaryValue
	}
	return nil
}

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

	Name                       *string                `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	RuleClass                  *string                `protobuf:"bytes,2,req,name=rule_class,json=ruleClass" json:"rule_class,omitempty"`
	Location                   *string                `protobuf:"bytes,3,opt,name=location" json:"location,omitempty"`
	Attribute                  []*Attribute           `protobuf:"bytes,4,rep,name=attribute" json:"attribute,omitempty"`
	RuleInput                  []string               `protobuf:"bytes,5,rep,name=rule_input,json=ruleInput" json:"rule_input,omitempty"`
	ConfiguredRuleInput        []*ConfiguredRuleInput `protobuf:"bytes,15,rep,name=configured_rule_input,json=configuredRuleInput" json:"configured_rule_input,omitempty"`
	RuleOutput                 []string               `protobuf:"bytes,6,rep,name=rule_output,json=ruleOutput" json:"rule_output,omitempty"`
	DefaultSetting             []string               `protobuf:"bytes,7,rep,name=default_setting,json=defaultSetting" json:"default_setting,omitempty"`
	DEPRECATEDPublicByDefault  *bool                  `protobuf:"varint,9,opt,name=DEPRECATED_public_by_default,json=DEPRECATEDPublicByDefault" json:"DEPRECATED_public_by_default,omitempty"`
	DEPRECATEDIsSkylark        *bool                  `protobuf:"varint,10,opt,name=DEPRECATED_is_skylark,json=DEPRECATEDIsSkylark" json:"DEPRECATED_is_skylark,omitempty"`
	SkylarkEnvironmentHashCode *string                `protobuf:"bytes,12,opt,name=skylark_environment_hash_code,json=skylarkEnvironmentHashCode" json:"skylark_environment_hash_code,omitempty"`
	InstantiationStack         []string               `protobuf:"bytes,13,rep,name=instantiation_stack,json=instantiationStack" json:"instantiation_stack,omitempty"`
	DefinitionStack            []string               `protobuf:"bytes,14,rep,name=definition_stack,json=definitionStack" json:"definition_stack,omitempty"`
}

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

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

func (*Rule) ProtoMessage() {}

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

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

func (x *Rule) GetRuleClass() string {
	if x != nil && x.RuleClass != nil {
		return *x.RuleClass
	}
	return ""
}

func (x *Rule) GetLocation() string {
	if x != nil && x.Location != nil {
		return *x.Location
	}
	return ""
}

func (x *Rule) GetAttribute() []*Attribute {
	if x != nil {
		return x.Attribute
	}
	return nil
}

func (x *Rule) GetRuleInput() []string {
	if x != nil {
		return x.RuleInput
	}
	return nil
}

func (x *Rule) GetConfiguredRuleInput() []*ConfiguredRuleInput {
	if x != nil {
		return x.ConfiguredRuleInput
	}
	return nil
}

func (x *Rule) GetRuleOutput() []string {
	if x != nil {
		return x.RuleOutput
	}
	return nil
}

func (x *Rule) GetDefaultSetting() []string {
	if x != nil {
		return x.DefaultSetting
	}
	return nil
}

func (x *Rule) GetDEPRECATEDPublicByDefault() bool {
	if x != nil && x.DEPRECATEDPublicByDefault != nil {
		return *x.DEPRECATEDPublicByDefault
	}
	return false
}

func (x *Rule) GetDEPRECATEDIsSkylark() bool {
	if x != nil && x.DEPRECATEDIsSkylark != nil {
		return *x.DEPRECATEDIsSkylark
	}
	return false
}

func (x *Rule) GetSkylarkEnvironmentHashCode() string {
	if x != nil && x.SkylarkEnvironmentHashCode != nil {
		return *x.SkylarkEnvironmentHashCode
	}
	return ""
}

func (x *Rule) GetInstantiationStack() []string {
	if x != nil {
		return x.InstantiationStack
	}
	return nil
}

func (x *Rule) GetDefinitionStack() []string {
	if x != nil {
		return x.DefinitionStack
	}
	return nil
}

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

	Label                 *string `protobuf:"bytes,1,opt,name=label" json:"label,omitempty"`
	ConfigurationChecksum *string `protobuf:"bytes,2,opt,name=configuration_checksum,json=configurationChecksum" json:"configuration_checksum,omitempty"`
	ConfigurationId       *uint32 `protobuf:"varint,3,opt,name=configuration_id,json=configurationId" json:"configuration_id,omitempty"`
}

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

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

func (*ConfiguredRuleInput) ProtoMessage() {}

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

func (x *ConfiguredRuleInput) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *ConfiguredRuleInput) GetConfigurationChecksum() string {
	if x != nil && x.ConfigurationChecksum != nil {
		return *x.ConfigurationChecksum
	}
	return ""
}

func (x *ConfiguredRuleInput) GetConfigurationId() uint32 {
	if x != nil && x.ConfigurationId != nil {
		return *x.ConfigurationId
	}
	return 0
}

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

	Rule       *Rule   `protobuf:"bytes,1,req,name=rule" json:"rule,omitempty"`
	Dependency []*Rule `protobuf:"bytes,2,rep,name=dependency" json:"dependency,omitempty"`
	Location   *string `protobuf:"bytes,3,opt,name=location" json:"location,omitempty"`
}

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

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

func (*RuleSummary) ProtoMessage() {}

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

func (x *RuleSummary) GetRule() *Rule {
	if x != nil {
		return x.Rule
	}
	return nil
}

func (x *RuleSummary) GetDependency() []*Rule {
	if x != nil {
		return x.Dependency
	}
	return nil
}

func (x *RuleSummary) GetLocation() string {
	if x != nil && x.Location != nil {
		return *x.Location
	}
	return ""
}

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

	Name                 *string  `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	ContainedPackage     []string `protobuf:"bytes,2,rep,name=contained_package,json=containedPackage" json:"contained_package,omitempty"`
	IncludedPackageGroup []string `protobuf:"bytes,3,rep,name=included_package_group,json=includedPackageGroup" json:"included_package_group,omitempty"`
}

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

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

func (*PackageGroup) ProtoMessage() {}

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

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

func (x *PackageGroup) GetContainedPackage() []string {
	if x != nil {
		return x.ContainedPackage
	}
	return nil
}

func (x *PackageGroup) GetIncludedPackageGroup() []string {
	if x != nil {
		return x.IncludedPackageGroup
	}
	return nil
}

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

	Name        *string  `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	Environment []string `protobuf:"bytes,2,rep,name=environment" json:"environment,omitempty"`
	Default     []string `protobuf:"bytes,3,rep,name=default" json:"default,omitempty"`
}

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

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

func (*EnvironmentGroup) ProtoMessage() {}

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

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

func (x *EnvironmentGroup) GetEnvironment() []string {
	if x != nil {
		return x.Environment
	}
	return nil
}

func (x *EnvironmentGroup) GetDefault() []string {
	if x != nil {
		return x.Default
	}
	return nil
}

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

	Name                  *string  `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	Location              *string  `protobuf:"bytes,2,opt,name=location" json:"location,omitempty"`
	Subinclude            []string `protobuf:"bytes,3,rep,name=subinclude" json:"subinclude,omitempty"`
	PackageGroup          []string `protobuf:"bytes,4,rep,name=package_group,json=packageGroup" json:"package_group,omitempty"`
	VisibilityLabel       []string `protobuf:"bytes,5,rep,name=visibility_label,json=visibilityLabel" json:"visibility_label,omitempty"`
	Feature               []string `protobuf:"bytes,6,rep,name=feature" json:"feature,omitempty"`
	License               *License `protobuf:"bytes,8,opt,name=license" json:"license,omitempty"`
	PackageContainsErrors *bool    `protobuf:"varint,9,opt,name=package_contains_errors,json=packageContainsErrors" json:"package_contains_errors,omitempty"`
}

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

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

func (*SourceFile) ProtoMessage() {}

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

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

func (x *SourceFile) GetLocation() string {
	if x != nil && x.Location != nil {
		return *x.Location
	}
	return ""
}

func (x *SourceFile) GetSubinclude() []string {
	if x != nil {
		return x.Subinclude
	}
	return nil
}

func (x *SourceFile) GetPackageGroup() []string {
	if x != nil {
		return x.PackageGroup
	}
	return nil
}

func (x *SourceFile) GetVisibilityLabel() []string {
	if x != nil {
		return x.VisibilityLabel
	}
	return nil
}

func (x *SourceFile) GetFeature() []string {
	if x != nil {
		return x.Feature
	}
	return nil
}

func (x *SourceFile) GetLicense() *License {
	if x != nil {
		return x.License
	}
	return nil
}

func (x *SourceFile) GetPackageContainsErrors() bool {
	if x != nil && x.PackageContainsErrors != nil {
		return *x.PackageContainsErrors
	}
	return false
}

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

	Name           *string `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	GeneratingRule *string `protobuf:"bytes,2,req,name=generating_rule,json=generatingRule" json:"generating_rule,omitempty"`
	Location       *string `protobuf:"bytes,3,opt,name=location" json:"location,omitempty"`
}

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

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

func (*GeneratedFile) ProtoMessage() {}

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

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

func (x *GeneratedFile) GetGeneratingRule() string {
	if x != nil && x.GeneratingRule != nil {
		return *x.GeneratingRule
	}
	return ""
}

func (x *GeneratedFile) GetLocation() string {
	if x != nil && x.Location != nil {
		return *x.Location
	}
	return ""
}

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

	Type             *Target_Discriminator `protobuf:"varint,1,req,name=type,enum=blaze_query.Target_Discriminator" json:"type,omitempty"`
	Rule             *Rule                 `protobuf:"bytes,2,opt,name=rule" json:"rule,omitempty"`
	SourceFile       *SourceFile           `protobuf:"bytes,3,opt,name=source_file,json=sourceFile" json:"source_file,omitempty"`
	GeneratedFile    *GeneratedFile        `protobuf:"bytes,4,opt,name=generated_file,json=generatedFile" json:"generated_file,omitempty"`
	PackageGroup     *PackageGroup         `protobuf:"bytes,5,opt,name=package_group,json=packageGroup" json:"package_group,omitempty"`
	EnvironmentGroup *EnvironmentGroup     `protobuf:"bytes,6,opt,name=environment_group,json=environmentGroup" json:"environment_group,omitempty"`
}

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

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

func (*Target) ProtoMessage() {}

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

func (x *Target) GetType() Target_Discriminator {
	if x != nil && x.Type != nil {
		return *x.Type
	}
	return Target_RULE
}

func (x *Target) GetRule() *Rule {
	if x != nil {
		return x.Rule
	}
	return nil
}

func (x *Target) GetSourceFile() *SourceFile {
	if x != nil {
		return x.SourceFile
	}
	return nil
}

func (x *Target) GetGeneratedFile() *GeneratedFile {
	if x != nil {
		return x.GeneratedFile
	}
	return nil
}

func (x *Target) GetPackageGroup() *PackageGroup {
	if x != nil {
		return x.PackageGroup
	}
	return nil
}

func (x *Target) GetEnvironmentGroup() *EnvironmentGroup {
	if x != nil {
		return x.EnvironmentGroup
	}
	return nil
}

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

	Target []*Target `protobuf:"bytes,1,rep,name=target" json:"target,omitempty"`
}

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

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

func (*QueryResult) ProtoMessage() {}

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

func (x *QueryResult) GetTarget() []*Target {
	if x != nil {
		return x.Target
	}
	return nil
}

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

	Policy           *AllowedRuleClassInfo_AllowedRuleClasses `protobuf:"varint,1,req,name=policy,enum=blaze_query.AllowedRuleClassInfo_AllowedRuleClasses" json:"policy,omitempty"`
	AllowedRuleClass []string                                 `protobuf:"bytes,2,rep,name=allowed_rule_class,json=allowedRuleClass" json:"allowed_rule_class,omitempty"`
}

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

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

func (*AllowedRuleClassInfo) ProtoMessage() {}

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

func (x *AllowedRuleClassInfo) GetPolicy() AllowedRuleClassInfo_AllowedRuleClasses {
	if x != nil && x.Policy != nil {
		return *x.Policy
	}
	return AllowedRuleClassInfo_ANY
}

func (x *AllowedRuleClassInfo) GetAllowedRuleClass() []string {
	if x != nil {
		return x.AllowedRuleClass
	}
	return nil
}

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

	Name               *string                  `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	Type               *Attribute_Discriminator `protobuf:"varint,2,req,name=type,enum=blaze_query.Attribute_Discriminator" json:"type,omitempty"`
	Mandatory          *bool                    `protobuf:"varint,3,opt,name=mandatory" json:"mandatory,omitempty"`
	AllowedRuleClasses *AllowedRuleClassInfo    `protobuf:"bytes,4,opt,name=allowed_rule_classes,json=allowedRuleClasses" json:"allowed_rule_classes,omitempty"`
	Documentation      *string                  `protobuf:"bytes,5,opt,name=documentation" json:"documentation,omitempty"`
	AllowEmpty         *bool                    `protobuf:"varint,6,opt,name=allow_empty,json=allowEmpty" json:"allow_empty,omitempty"`
	AllowSingleFile    *bool                    `protobuf:"varint,7,opt,name=allow_single_file,json=allowSingleFile" json:"allow_single_file,omitempty"`
	Default            *AttributeValue          `protobuf:"bytes,9,opt,name=default" json:"default,omitempty"`
	Executable         *bool                    `protobuf:"varint,10,opt,name=executable" json:"executable,omitempty"`
	Configurable       *bool                    `protobuf:"varint,11,opt,name=configurable" json:"configurable,omitempty"`
	Nodep              *bool                    `protobuf:"varint,12,opt,name=nodep" json:"nodep,omitempty"`
	CfgIsHost          *bool                    `protobuf:"varint,13,opt,name=cfg_is_host,json=cfgIsHost" json:"cfg_is_host,omitempty"`
}

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

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

func (*AttributeDefinition) ProtoMessage() {}

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

// Deprecated: Use AttributeDefinition.ProtoReflect.Descriptor instead.
func (*AttributeDefinition) Descriptor() ([]byte, []int) {
	return file_build_proto_build_proto_rawDescGZIP(), []int{18}
}

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

func (x *AttributeDefinition) GetType() Attribute_Discriminator {
	if x != nil && x.Type != nil {
		return *x.Type
	}
	return Attribute_INTEGER
}

func (x *AttributeDefinition) GetMandatory() bool {
	if x != nil && x.Mandatory != nil {
		return *x.Mandatory
	}
	return false
}

func (x *AttributeDefinition) GetAllowedRuleClasses() *AllowedRuleClassInfo {
	if x != nil {
		return x.AllowedRuleClasses
	}
	return nil
}

func (x *AttributeDefinition) GetDocumentation() string {
	if x != nil && x.Documentation != nil {
		return *x.Documentation
	}
	return ""
}

func (x *AttributeDefinition) GetAllowEmpty() bool {
	if x != nil && x.AllowEmpty != nil {
		return *x.AllowEmpty
	}
	return false
}

func (x *AttributeDefinition) GetAllowSingleFile() bool {
	if x != nil && x.AllowSingleFile != nil {
		return *x.AllowSingleFile
	}
	return false
}

func (x *AttributeDefinition) GetDefault() *AttributeValue {
	if x != nil {
		return x.Default
	}
	return nil
}

func (x *AttributeDefinition) GetExecutable() bool {
	if x != nil && x.Executable != nil {
		return *x.Executable
	}
	return false
}

func (x *AttributeDefinition) GetConfigurable() bool {
	if x != nil && x.Configurable != nil {
		return *x.Configurable
	}
	return false
}

func (x *AttributeDefinition) GetNodep() bool {
	if x != nil && x.Nodep != nil {
		return *x.Nodep
	}
	return false
}

func (x *AttributeDefinition) GetCfgIsHost() bool {
	if x != nil && x.CfgIsHost != nil {
		return *x.CfgIsHost
	}
	return false
}

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

	Int     *int32                      `protobuf:"varint,1,opt,name=int" json:"int,omitempty"`
	String_ *string                     `protobuf:"bytes,2,opt,name=string" json:"string,omitempty"`
	Bool    *bool                       `protobuf:"varint,3,opt,name=bool" json:"bool,omitempty"`
	List    []*AttributeValue           `protobuf:"bytes,4,rep,name=list" json:"list,omitempty"`
	Dict    []*AttributeValue_DictEntry `protobuf:"bytes,5,rep,name=dict" json:"dict,omitempty"`
}

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

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

func (*AttributeValue) ProtoMessage() {}

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

// Deprecated: Use AttributeValue.ProtoReflect.Descriptor instead.
func (*AttributeValue) Descriptor() ([]byte, []int) {
	return file_build_proto_build_proto_rawDescGZIP(), []int{19}
}

func (x *AttributeValue) GetInt() int32 {
	if x != nil && x.Int != nil {
		return *x.Int
	}
	return 0
}

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

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

func (x *AttributeValue) GetList() []*AttributeValue {
	if x != nil {
		return x.List
	}
	return nil
}

func (x *AttributeValue) GetDict() []*AttributeValue_DictEntry {
	if x != nil {
		return x.Dict
	}
	return nil
}

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

	Name          *string                `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	Attribute     []*AttributeDefinition `protobuf:"bytes,2,rep,name=attribute" json:"attribute,omitempty"`
	Documentation *string                `protobuf:"bytes,3,opt,name=documentation" json:"documentation,omitempty"`
	Label         *string                `protobuf:"bytes,4,opt,name=label" json:"label,omitempty"`
}

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

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

func (*RuleDefinition) ProtoMessage() {}

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

// Deprecated: Use RuleDefinition.ProtoReflect.Descriptor instead.
func (*RuleDefinition) Descriptor() ([]byte, []int) {
	return file_build_proto_build_proto_rawDescGZIP(), []int{20}
}

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

func (x *RuleDefinition) GetAttribute() []*AttributeDefinition {
	if x != nil {
		return x.Attribute
	}
	return nil
}

func (x *RuleDefinition) GetDocumentation() string {
	if x != nil && x.Documentation != nil {
		return *x.Documentation
	}
	return ""
}

func (x *RuleDefinition) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

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

	Rule []*RuleDefinition `protobuf:"bytes,1,rep,name=rule" json:"rule,omitempty"`
}

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

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

func (*BuildLanguage) ProtoMessage() {}

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

// Deprecated: Use BuildLanguage.ProtoReflect.Descriptor instead.
func (*BuildLanguage) Descriptor() ([]byte, []int) {
	return file_build_proto_build_proto_rawDescGZIP(), []int{21}
}

func (x *BuildLanguage) GetRule() []*RuleDefinition {
	if x != nil {
		return x.Rule
	}
	return nil
}

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

	Label                          *string                      `protobuf:"bytes,1,opt,name=label" json:"label,omitempty"`
	IsDefaultValue                 *bool                        `protobuf:"varint,16,opt,name=is_default_value,json=isDefaultValue" json:"is_default_value,omitempty"`
	IntValue                       *int32                       `protobuf:"varint,2,opt,name=int_value,json=intValue" json:"int_value,omitempty"`
	StringValue                    *string                      `protobuf:"bytes,3,opt,name=string_value,json=stringValue" json:"string_value,omitempty"`
	BooleanValue                   *bool                        `protobuf:"varint,4,opt,name=boolean_value,json=booleanValue" json:"boolean_value,omitempty"`
	TristateValue                  *Attribute_Tristate          `protobuf:"varint,5,opt,name=tristate_value,json=tristateValue,enum=blaze_query.Attribute_Tristate" json:"tristate_value,omitempty"`
	StringListValue                []string                     `protobuf:"bytes,6,rep,name=string_list_value,json=stringListValue" json:"string_list_value,omitempty"`
	License                        *License                     `protobuf:"bytes,7,opt,name=license" json:"license,omitempty"`
	StringDictValue                []*StringDictEntry           `protobuf:"bytes,8,rep,name=string_dict_value,json=stringDictValue" json:"string_dict_value,omitempty"`
	FilesetListValue               []*FilesetEntry              `protobuf:"bytes,9,rep,name=fileset_list_value,json=filesetListValue" json:"fileset_list_value,omitempty"`
	LabelListDictValue             []*LabelListDictEntry        `protobuf:"bytes,10,rep,name=label_list_dict_value,json=labelListDictValue" json:"label_list_dict_value,omitempty"`
	StringListDictValue            []*StringListDictEntry       `protobuf:"bytes,11,rep,name=string_list_dict_value,json=stringListDictValue" json:"string_list_dict_value,omitempty"`
	IntListValue                   []int32                      `protobuf:"varint,13,rep,name=int_list_value,json=intListValue" json:"int_list_value,omitempty"`
	LabelDictUnaryValue            []*LabelDictUnaryEntry       `protobuf:"bytes,15,rep,name=label_dict_unary_value,json=labelDictUnaryValue" json:"label_dict_unary_value,omitempty"`
	LabelKeyedStringDictValue      []*LabelKeyedStringDictEntry `protobuf:"bytes,17,rep,name=label_keyed_string_dict_value,json=labelKeyedStringDictValue" json:"label_keyed_string_dict_value,omitempty"`
	DEPRECATEDStringDictUnaryValue [][]byte                     `protobuf:"bytes,14,rep,name=DEPRECATED_string_dict_unary_value,json=DEPRECATEDStringDictUnaryValue" json:"DEPRECATED_string_dict_unary_value,omitempty"`
}

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

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

func (*Attribute_SelectorEntry) ProtoMessage() {}

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

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

func (x *Attribute_SelectorEntry) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *Attribute_SelectorEntry) GetIsDefaultValue() bool {
	if x != nil && x.IsDefaultValue != nil {
		return *x.IsDefaultValue
	}
	return false
}

func (x *Attribute_SelectorEntry) GetIntValue() int32 {
	if x != nil && x.IntValue != nil {
		return *x.IntValue
	}
	return 0
}

func (x *Attribute_SelectorEntry) GetStringValue() string {
	if x != nil && x.StringValue != nil {
		return *x.StringValue
	}
	return ""
}

func (x *Attribute_SelectorEntry) GetBooleanValue() bool {
	if x != nil && x.BooleanValue != nil {
		return *x.BooleanValue
	}
	return false
}

func (x *Attribute_SelectorEntry) GetTristateValue() Attribute_Tristate {
	if x != nil && x.TristateValue != nil {
		return *x.TristateValue
	}
	return Attribute_NO
}

func (x *Attribute_SelectorEntry) GetStringListValue() []string {
	if x != nil {
		return x.StringListValue
	}
	return nil
}

func (x *Attribute_SelectorEntry) GetLicense() *License {
	if x != nil {
		return x.License
	}
	return nil
}

func (x *Attribute_SelectorEntry) GetStringDictValue() []*StringDictEntry {
	if x != nil {
		return x.StringDictValue
	}
	return nil
}

func (x *Attribute_SelectorEntry) GetFilesetListValue() []*FilesetEntry {
	if x != nil {
		return x.FilesetListValue
	}
	return nil
}

func (x *Attribute_SelectorEntry) GetLabelListDictValue() []*LabelListDictEntry {
	if x != nil {
		return x.LabelListDictValue
	}
	return nil
}

func (x *Attribute_SelectorEntry) GetStringListDictValue() []*StringListDictEntry {
	if x != nil {
		return x.StringListDictValue
	}
	return nil
}

func (x *Attribute_SelectorEntry) GetIntListValue() []int32 {
	if x != nil {
		return x.IntListValue
	}
	return nil
}

func (x *Attribute_SelectorEntry) GetLabelDictUnaryValue() []*LabelDictUnaryEntry {
	if x != nil {
		return x.LabelDictUnaryValue
	}
	return nil
}

func (x *Attribute_SelectorEntry) GetLabelKeyedStringDictValue() []*LabelKeyedStringDictEntry {
	if x != nil {
		return x.LabelKeyedStringDictValue
	}
	return nil
}

func (x *Attribute_SelectorEntry) GetDEPRECATEDStringDictUnaryValue() [][]byte {
	if x != nil {
		return x.DEPRECATEDStringDictUnaryValue
	}
	return nil
}

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

	Entries         []*Attribute_SelectorEntry `protobuf:"bytes,1,rep,name=entries" json:"entries,omitempty"`
	HasDefaultValue *bool                      `protobuf:"varint,2,opt,name=has_default_value,json=hasDefaultValue" json:"has_default_value,omitempty"`
	NoMatchError    *string                    `protobuf:"bytes,3,opt,name=no_match_error,json=noMatchError" json:"no_match_error,omitempty"`
}

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

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

func (*Attribute_Selector) ProtoMessage() {}

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

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

func (x *Attribute_Selector) GetEntries() []*Attribute_SelectorEntry {
	if x != nil {
		return x.Entries
	}
	return nil
}

func (x *Attribute_Selector) GetHasDefaultValue() bool {
	if x != nil && x.HasDefaultValue != nil {
		return *x.HasDefaultValue
	}
	return false
}

func (x *Attribute_Selector) GetNoMatchError() string {
	if x != nil && x.NoMatchError != nil {
		return *x.NoMatchError
	}
	return ""
}

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

	Type     *Attribute_Discriminator `protobuf:"varint,1,opt,name=type,enum=blaze_query.Attribute_Discriminator" json:"type,omitempty"`
	Elements []*Attribute_Selector    `protobuf:"bytes,2,rep,name=elements" json:"elements,omitempty"`
}

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

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

func (*Attribute_SelectorList) ProtoMessage() {}

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

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

func (x *Attribute_SelectorList) GetType() Attribute_Discriminator {
	if x != nil && x.Type != nil {
		return *x.Type
	}
	return Attribute_INTEGER
}

func (x *Attribute_SelectorList) GetElements() []*Attribute_Selector {
	if x != nil {
		return x.Elements
	}
	return nil
}

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

	Key   *string         `protobuf:"bytes,1,req,name=key" json:"key,omitempty"`
	Value *AttributeValue `protobuf:"bytes,2,req,name=value" json:"value,omitempty"`
}

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

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

func (*AttributeValue_DictEntry) ProtoMessage() {}

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

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

func (x *AttributeValue_DictEntry) GetKey() string {
	if x != nil && x.Key != nil {
		return *x.Key
	}
	return ""
}

func (x *AttributeValue_DictEntry) GetValue() *AttributeValue {
	if x != nil {
		return x.Value
	}
	return nil
}

var File_build_proto_build_proto protoreflect.FileDescriptor

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

var (
	file_build_proto_build_proto_rawDescOnce sync.Once
	file_build_proto_build_proto_rawDescData = file_build_proto_build_proto_rawDesc
)

func file_build_proto_build_proto_rawDescGZIP() []byte {
	file_build_proto_build_proto_rawDescOnce.Do(func() {
		file_build_proto_build_proto_rawDescData = protoimpl.X.CompressGZIP(file_build_proto_build_proto_rawDescData)
	})
	return file_build_proto_build_proto_rawDescData
}

var file_build_proto_build_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
var file_build_proto_build_proto_msgTypes = make([]protoimpl.MessageInfo, 26)
var file_build_proto_build_proto_goTypes = []interface{}{
	(FilesetEntry_SymlinkBehavior)(0),            // 0: blaze_query.FilesetEntry.SymlinkBehavior
	(Attribute_Discriminator)(0),                 // 1: blaze_query.Attribute.Discriminator
	(Attribute_Tristate)(0),                      // 2: blaze_query.Attribute.Tristate
	(Target_Discriminator)(0),                    // 3: blaze_query.Target.Discriminator
	(AllowedRuleClassInfo_AllowedRuleClasses)(0), // 4: blaze_query.AllowedRuleClassInfo.AllowedRuleClasses
	(*License)(nil),                              // 5: blaze_query.License
	(*StringDictEntry)(nil),                      // 6: blaze_query.StringDictEntry
	(*LabelDictUnaryEntry)(nil),                  // 7: blaze_query.LabelDictUnaryEntry
	(*LabelListDictEntry)(nil),                   // 8: blaze_query.LabelListDictEntry
	(*LabelKeyedStringDictEntry)(nil),            // 9: blaze_query.LabelKeyedStringDictEntry
	(*StringListDictEntry)(nil),                  // 10: blaze_query.StringListDictEntry
	(*FilesetEntry)(nil),                         // 11: blaze_query.FilesetEntry
	(*Attribute)(nil),                            // 12: blaze_query.Attribute
	(*Rule)(nil),                                 // 13: blaze_query.Rule
	(*ConfiguredRuleInput)(nil),                  // 14: blaze_query.ConfiguredRuleInput
	(*RuleSummary)(nil),                          // 15: blaze_query.RuleSummary
	(*PackageGroup)(nil),                         // 16: blaze_query.PackageGroup
	(*EnvironmentGroup)(nil),                     // 17: blaze_query.EnvironmentGroup
	(*SourceFile)(nil),                           // 18: blaze_query.SourceFile
	(*GeneratedFile)(nil),                        // 19: blaze_query.GeneratedFile
	(*Target)(nil),                               // 20: blaze_query.Target
	(*QueryResult)(nil),                          // 21: blaze_query.QueryResult
	(*AllowedRuleClassInfo)(nil),                 // 22: blaze_query.AllowedRuleClassInfo
	(*AttributeDefinition)(nil),                  // 23: blaze_query.AttributeDefinition
	(*AttributeValue)(nil),                       // 24: blaze_query.AttributeValue
	(*RuleDefinition)(nil),                       // 25: blaze_query.RuleDefinition
	(*BuildLanguage)(nil),                        // 26: blaze_query.BuildLanguage
	(*Attribute_SelectorEntry)(nil),              // 27: blaze_query.Attribute.SelectorEntry
	(*Attribute_Selector)(nil),                   // 28: blaze_query.Attribute.Selector
	(*Attribute_SelectorList)(nil),               // 29: blaze_query.Attribute.SelectorList
	(*AttributeValue_DictEntry)(nil),             // 30: blaze_query.AttributeValue.DictEntry
}
var file_build_proto_build_proto_depIdxs = []int32{
	0,  // 0: blaze_query.FilesetEntry.symlink_behavior:type_name -> blaze_query.FilesetEntry.SymlinkBehavior
	1,  // 1: blaze_query.Attribute.type:type_name -> blaze_query.Attribute.Discriminator
	2,  // 2: blaze_query.Attribute.tristate_value:type_name -> blaze_query.Attribute.Tristate
	5,  // 3: blaze_query.Attribute.license:type_name -> blaze_query.License
	6,  // 4: blaze_query.Attribute.string_dict_value:type_name -> blaze_query.StringDictEntry
	11, // 5: blaze_query.Attribute.fileset_list_value:type_name -> blaze_query.FilesetEntry
	8,  // 6: blaze_query.Attribute.label_list_dict_value:type_name -> blaze_query.LabelListDictEntry
	10, // 7: blaze_query.Attribute.string_list_dict_value:type_name -> blaze_query.StringListDictEntry
	7,  // 8: blaze_query.Attribute.label_dict_unary_value:type_name -> blaze_query.LabelDictUnaryEntry
	9,  // 9: blaze_query.Attribute.label_keyed_string_dict_value:type_name -> blaze_query.LabelKeyedStringDictEntry
	29, // 10: blaze_query.Attribute.selector_list:type_name -> blaze_query.Attribute.SelectorList
	12, // 11: blaze_query.Rule.attribute:type_name -> blaze_query.Attribute
	14, // 12: blaze_query.Rule.configured_rule_input:type_name -> blaze_query.ConfiguredRuleInput
	13, // 13: blaze_query.RuleSummary.rule:type_name -> blaze_query.Rule
	13, // 14: blaze_query.RuleSummary.dependency:type_name -> blaze_query.Rule
	5,  // 15: blaze_query.SourceFile.license:type_name -> blaze_query.License
	3,  // 16: blaze_query.Target.type:type_name -> blaze_query.Target.Discriminator
	13, // 17: blaze_query.Target.rule:type_name -> blaze_query.Rule
	18, // 18: blaze_query.Target.source_file:type_name -> blaze_query.SourceFile
	19, // 19: blaze_query.Target.generated_file:type_name -> blaze_query.GeneratedFile
	16, // 20: blaze_query.Target.package_group:type_name -> blaze_query.PackageGroup
	17, // 21: blaze_query.Target.environment_group:type_name -> blaze_query.EnvironmentGroup
	20, // 22: blaze_query.QueryResult.target:type_name -> blaze_query.Target
	4,  // 23: blaze_query.AllowedRuleClassInfo.policy:type_name -> blaze_query.AllowedRuleClassInfo.AllowedRuleClasses
	1,  // 24: blaze_query.AttributeDefinition.type:type_name -> blaze_query.Attribute.Discriminator
	22, // 25: blaze_query.AttributeDefinition.allowed_rule_classes:type_name -> blaze_query.AllowedRuleClassInfo
	24, // 26: blaze_query.AttributeDefinition.default:type_name -> blaze_query.AttributeValue
	24, // 27: blaze_query.AttributeValue.list:type_name -> blaze_query.AttributeValue
	30, // 28: blaze_query.AttributeValue.dict:type_name -> blaze_query.AttributeValue.DictEntry
	23, // 29: blaze_query.RuleDefinition.attribute:type_name -> blaze_query.AttributeDefinition
	25, // 30: blaze_query.BuildLanguage.rule:type_name -> blaze_query.RuleDefinition
	2,  // 31: blaze_query.Attribute.SelectorEntry.tristate_value:type_name -> blaze_query.Attribute.Tristate
	5,  // 32: blaze_query.Attribute.SelectorEntry.license:type_name -> blaze_query.License
	6,  // 33: blaze_query.Attribute.SelectorEntry.string_dict_value:type_name -> blaze_query.StringDictEntry
	11, // 34: blaze_query.Attribute.SelectorEntry.fileset_list_value:type_name -> blaze_query.FilesetEntry
	8,  // 35: blaze_query.Attribute.SelectorEntry.label_list_dict_value:type_name -> blaze_query.LabelListDictEntry
	10, // 36: blaze_query.Attribute.SelectorEntry.string_list_dict_value:type_name -> blaze_query.StringListDictEntry
	7,  // 37: blaze_query.Attribute.SelectorEntry.label_dict_unary_value:type_name -> blaze_query.LabelDictUnaryEntry
	9,  // 38: blaze_query.Attribute.SelectorEntry.label_keyed_string_dict_value:type_name -> blaze_query.LabelKeyedStringDictEntry
	27, // 39: blaze_query.Attribute.Selector.entries:type_name -> blaze_query.Attribute.SelectorEntry
	1,  // 40: blaze_query.Attribute.SelectorList.type:type_name -> blaze_query.Attribute.Discriminator
	28, // 41: blaze_query.Attribute.SelectorList.elements:type_name -> blaze_query.Attribute.Selector
	24, // 42: blaze_query.AttributeValue.DictEntry.value:type_name -> blaze_query.AttributeValue
	43, // [43:43] is the sub-list for method output_type
	43, // [43:43] is the sub-list for method input_type
	43, // [43:43] is the sub-list for extension type_name
	43, // [43:43] is the sub-list for extension extendee
	0,  // [0:43] is the sub-list for field type_name
}

func init() { file_build_proto_build_proto_init() }
func file_build_proto_build_proto_init() {
	if File_build_proto_build_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_build_proto_build_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*License); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StringDictEntry); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LabelDictUnaryEntry); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LabelListDictEntry); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LabelKeyedStringDictEntry); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StringListDictEntry); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FilesetEntry); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Attribute); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Rule); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConfiguredRuleInput); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RuleSummary); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PackageGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EnvironmentGroup); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SourceFile); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GeneratedFile); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Target); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*QueryResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AllowedRuleClassInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AttributeDefinition); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AttributeValue); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RuleDefinition); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BuildLanguage); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Attribute_SelectorEntry); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Attribute_Selector); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Attribute_SelectorList); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_build_proto_build_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AttributeValue_DictEntry); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_build_proto_build_proto_rawDesc,
			NumEnums:      5,
			NumMessages:   26,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_build_proto_build_proto_goTypes,
		DependencyIndexes: file_build_proto_build_proto_depIdxs,
		EnumInfos:         file_build_proto_build_proto_enumTypes,
		MessageInfos:      file_build_proto_build_proto_msgTypes,
	}.Build()
	File_build_proto_build_proto = out.File
	file_build_proto_build_proto_rawDesc = nil
	file_build_proto_build_proto_goTypes = nil
	file_build_proto_build_proto_depIdxs = nil
}
