go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/common/proto/gerrit/gerrit.pb.go (about)

     1  // Copyright 2018 The LUCI Authors.
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //      http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.31.0
    18  // 	protoc        v3.21.7
    19  // source: go.chromium.org/luci/common/proto/gerrit/gerrit.proto
    20  
    21  package gerritpb
    22  
    23  import (
    24  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    25  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    26  	emptypb "google.golang.org/protobuf/types/known/emptypb"
    27  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    28  	reflect "reflect"
    29  	sync "sync"
    30  )
    31  
    32  const (
    33  	// Verify that this generated code is sufficiently up-to-date.
    34  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    35  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    36  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    37  )
    38  
    39  // Specifies what extra information to include in the response.
    40  //
    41  // Source of truth:
    42  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#query-options
    43  type QueryOption int32
    44  
    45  const (
    46  	QueryOption_OPTION_UNSPECIFIED QueryOption = 0
    47  	// A summary of each label required for submit, and approvers that have
    48  	// granted (or rejected) with that label.
    49  	QueryOption_LABELS QueryOption = 1
    50  	// Detailed label information, including numeric values of all existing
    51  	// approvals, recognized label values, values permitted to be set by the
    52  	// current user, all reviewers by state, and reviewers that may be removed by
    53  	// the current user.
    54  	QueryOption_DETAILED_LABELS QueryOption = 2
    55  	// Describe the current revision (patch set) of the change, including the
    56  	// commit SHA-1 and URLs to fetch from.
    57  	QueryOption_CURRENT_REVISION QueryOption = 4
    58  	// Describe all revisions, not just current.
    59  	QueryOption_ALL_REVISIONS QueryOption = 8
    60  	// Parse and output all header fields from the commit object, including
    61  	// message. Only valid when the CURRENT_REVISION or ALL_REVISIONS option is
    62  	// selected.
    63  	QueryOption_CURRENT_COMMIT QueryOption = 16
    64  	// Parse and output all header fields from the output revisions. If only
    65  	// CURRENT_REVISION was requested then only the current revision’s commit data
    66  	// will be output.
    67  	QueryOption_ALL_COMMITS QueryOption = 32
    68  	// List files modified by the commit and magic files, including basic line
    69  	// counts inserted/deleted per file. Only valid when the CURRENT_REVISION or
    70  	// ALL_REVISIONS option is selected.
    71  	QueryOption_CURRENT_FILES QueryOption = 64
    72  	// List files modified by the commit and magic files, including basic line
    73  	// counts inserted/deleted per file. If only the CURRENT_REVISION was
    74  	// requested then only that commit’s modified files will be output.
    75  	QueryOption_ALL_FILES QueryOption = 128
    76  	// Include _account_id, email and username fields when referencing accounts.
    77  	QueryOption_DETAILED_ACCOUNTS QueryOption = 256
    78  	// Include updates to reviewers set as ReviewerUpdateInfo entities.
    79  	QueryOption_REVIEWER_UPDATES QueryOption = 512
    80  	// Include messages associated with the change.
    81  	QueryOption_MESSAGES QueryOption = 1024
    82  	// Include information on available actions for the change and its current
    83  	// revision. Ignored if the caller is not authenticated.
    84  	QueryOption_CURRENT_ACTIONS QueryOption = 2048
    85  	// Include information on available change actions for the change. Ignored if
    86  	// the caller is not authenticated.
    87  	QueryOption_CHANGE_ACTIONS QueryOption = 4096
    88  	// Include the reviewed field if all of the following are true:
    89  	//   - the change is open
    90  	//   - the caller is authenticated
    91  	//   - the caller has commented on the change more recently than the last update
    92  	//     from the change owner, i.e. this change would show up in the results of
    93  	//     reviewedby:self.
    94  	QueryOption_REVIEWED QueryOption = 8192
    95  	// Skip the mergeable field in ChangeInfo. For fast moving projects, this
    96  	// field must be recomputed often, which is slow for projects with big trees.
    97  	QueryOption_SKIP_MERGEABLE QueryOption = 16384
    98  	// Include the submittable field in ChangeInfo, which can be used to tell if
    99  	// the change is reviewed and ready for submit.
   100  	QueryOption_SUBMITTABLE QueryOption = 32768
   101  	// Include the web_links field in CommitInfo, therefore only valid in
   102  	// combination with CURRENT_COMMIT or ALL_COMMITS.
   103  	QueryOption_WEB_LINKS QueryOption = 65536
   104  	// Include potential problems with the change.
   105  	QueryOption_CHECK QueryOption = 131072
   106  	// Include the full commit message with Gerrit-specific commit footers in the
   107  	// RevisionInfo.
   108  	QueryOption_COMMIT_FOOTERS QueryOption = 262144
   109  	// Include push certificate information in the RevisionInfo. Ignored if signed
   110  	// push is not enabled on the server.
   111  	QueryOption_PUSH_CERTIFICATES QueryOption = 524288
   112  	// Include references to external tracking systems as TrackingIdInfo.
   113  	QueryOption_TRACKING_IDS QueryOption = 1048576
   114  	// Include the commands field in the FetchInfo for revisions. Only valid when
   115  	// the CURRENT_REVISION or ALL_REVISIONS option is selected.
   116  	QueryOption_DOWNLOAD_COMMANDS QueryOption = 2097152
   117  	// Include the submit_requirements field in ChangeInfo.
   118  	QueryOption_SUBMIT_REQUIREMENTS QueryOption = 4194304
   119  	// MAX_QUERY_OPTION is the largest possible number in QueryOption.
   120  	//
   121  	// This is not meant to be used, but to indicate the upper bound of the valid
   122  	// enum value set.
   123  	//
   124  	// QueryOption is typed as int32, and the largest possible value is
   125  	// pow(2,31) - 1. MAX_QUERY_OPTION is the largest power of 2 allowed in
   126  	// QueryOption.
   127  	QueryOption_MAX_QUERY_OPTION QueryOption = 1073741824
   128  )
   129  
   130  // Enum value maps for QueryOption.
   131  var (
   132  	QueryOption_name = map[int32]string{
   133  		0:          "OPTION_UNSPECIFIED",
   134  		1:          "LABELS",
   135  		2:          "DETAILED_LABELS",
   136  		4:          "CURRENT_REVISION",
   137  		8:          "ALL_REVISIONS",
   138  		16:         "CURRENT_COMMIT",
   139  		32:         "ALL_COMMITS",
   140  		64:         "CURRENT_FILES",
   141  		128:        "ALL_FILES",
   142  		256:        "DETAILED_ACCOUNTS",
   143  		512:        "REVIEWER_UPDATES",
   144  		1024:       "MESSAGES",
   145  		2048:       "CURRENT_ACTIONS",
   146  		4096:       "CHANGE_ACTIONS",
   147  		8192:       "REVIEWED",
   148  		16384:      "SKIP_MERGEABLE",
   149  		32768:      "SUBMITTABLE",
   150  		65536:      "WEB_LINKS",
   151  		131072:     "CHECK",
   152  		262144:     "COMMIT_FOOTERS",
   153  		524288:     "PUSH_CERTIFICATES",
   154  		1048576:    "TRACKING_IDS",
   155  		2097152:    "DOWNLOAD_COMMANDS",
   156  		4194304:    "SUBMIT_REQUIREMENTS",
   157  		1073741824: "MAX_QUERY_OPTION",
   158  	}
   159  	QueryOption_value = map[string]int32{
   160  		"OPTION_UNSPECIFIED":  0,
   161  		"LABELS":              1,
   162  		"DETAILED_LABELS":     2,
   163  		"CURRENT_REVISION":    4,
   164  		"ALL_REVISIONS":       8,
   165  		"CURRENT_COMMIT":      16,
   166  		"ALL_COMMITS":         32,
   167  		"CURRENT_FILES":       64,
   168  		"ALL_FILES":           128,
   169  		"DETAILED_ACCOUNTS":   256,
   170  		"REVIEWER_UPDATES":    512,
   171  		"MESSAGES":            1024,
   172  		"CURRENT_ACTIONS":     2048,
   173  		"CHANGE_ACTIONS":      4096,
   174  		"REVIEWED":            8192,
   175  		"SKIP_MERGEABLE":      16384,
   176  		"SUBMITTABLE":         32768,
   177  		"WEB_LINKS":           65536,
   178  		"CHECK":               131072,
   179  		"COMMIT_FOOTERS":      262144,
   180  		"PUSH_CERTIFICATES":   524288,
   181  		"TRACKING_IDS":        1048576,
   182  		"DOWNLOAD_COMMANDS":   2097152,
   183  		"SUBMIT_REQUIREMENTS": 4194304,
   184  		"MAX_QUERY_OPTION":    1073741824,
   185  	}
   186  )
   187  
   188  func (x QueryOption) Enum() *QueryOption {
   189  	p := new(QueryOption)
   190  	*p = x
   191  	return p
   192  }
   193  
   194  func (x QueryOption) String() string {
   195  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   196  }
   197  
   198  func (QueryOption) Descriptor() protoreflect.EnumDescriptor {
   199  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[0].Descriptor()
   200  }
   201  
   202  func (QueryOption) Type() protoreflect.EnumType {
   203  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[0]
   204  }
   205  
   206  func (x QueryOption) Number() protoreflect.EnumNumber {
   207  	return protoreflect.EnumNumber(x)
   208  }
   209  
   210  // Deprecated: Use QueryOption.Descriptor instead.
   211  func (QueryOption) EnumDescriptor() ([]byte, []int) {
   212  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{0}
   213  }
   214  
   215  // Specify the notification options for an action.
   216  // Different endpoints support different subsets of this enum.
   217  type Notify int32
   218  
   219  const (
   220  	Notify_NOTIFY_UNSPECIFIED Notify = 0
   221  	// Do not send email notifications.
   222  	Notify_NOTIFY_NONE Notify = 1
   223  	// Notify all OWNERS.
   224  	Notify_NOTIFY_OWNER Notify = 2
   225  	// Notify OWNERS who are also reviewers
   226  	Notify_NOTIFY_OWNER_REVIEWERS Notify = 3
   227  	// Notify all OWNERS and reviewers
   228  	Notify_NOTIFY_ALL Notify = 4
   229  )
   230  
   231  // Enum value maps for Notify.
   232  var (
   233  	Notify_name = map[int32]string{
   234  		0: "NOTIFY_UNSPECIFIED",
   235  		1: "NOTIFY_NONE",
   236  		2: "NOTIFY_OWNER",
   237  		3: "NOTIFY_OWNER_REVIEWERS",
   238  		4: "NOTIFY_ALL",
   239  	}
   240  	Notify_value = map[string]int32{
   241  		"NOTIFY_UNSPECIFIED":     0,
   242  		"NOTIFY_NONE":            1,
   243  		"NOTIFY_OWNER":           2,
   244  		"NOTIFY_OWNER_REVIEWERS": 3,
   245  		"NOTIFY_ALL":             4,
   246  	}
   247  )
   248  
   249  func (x Notify) Enum() *Notify {
   250  	p := new(Notify)
   251  	*p = x
   252  	return p
   253  }
   254  
   255  func (x Notify) String() string {
   256  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   257  }
   258  
   259  func (Notify) Descriptor() protoreflect.EnumDescriptor {
   260  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[1].Descriptor()
   261  }
   262  
   263  func (Notify) Type() protoreflect.EnumType {
   264  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[1]
   265  }
   266  
   267  func (x Notify) Number() protoreflect.EnumNumber {
   268  	return protoreflect.EnumNumber(x)
   269  }
   270  
   271  // Deprecated: Use Notify.Descriptor instead.
   272  func (Notify) EnumDescriptor() ([]byte, []int) {
   273  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{1}
   274  }
   275  
   276  type ChangeStatus int32
   277  
   278  const (
   279  	ChangeStatus_CHANGE_STATUS_INVALID ChangeStatus = 0
   280  	ChangeStatus_NEW                   ChangeStatus = 1
   281  	ChangeStatus_MERGED                ChangeStatus = 2
   282  	ChangeStatus_ABANDONED             ChangeStatus = 3
   283  )
   284  
   285  // Enum value maps for ChangeStatus.
   286  var (
   287  	ChangeStatus_name = map[int32]string{
   288  		0: "CHANGE_STATUS_INVALID",
   289  		1: "NEW",
   290  		2: "MERGED",
   291  		3: "ABANDONED",
   292  	}
   293  	ChangeStatus_value = map[string]int32{
   294  		"CHANGE_STATUS_INVALID": 0,
   295  		"NEW":                   1,
   296  		"MERGED":                2,
   297  		"ABANDONED":             3,
   298  	}
   299  )
   300  
   301  func (x ChangeStatus) Enum() *ChangeStatus {
   302  	p := new(ChangeStatus)
   303  	*p = x
   304  	return p
   305  }
   306  
   307  func (x ChangeStatus) String() string {
   308  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   309  }
   310  
   311  func (ChangeStatus) Descriptor() protoreflect.EnumDescriptor {
   312  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[2].Descriptor()
   313  }
   314  
   315  func (ChangeStatus) Type() protoreflect.EnumType {
   316  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[2]
   317  }
   318  
   319  func (x ChangeStatus) Number() protoreflect.EnumNumber {
   320  	return protoreflect.EnumNumber(x)
   321  }
   322  
   323  // Deprecated: Use ChangeStatus.Descriptor instead.
   324  func (ChangeStatus) EnumDescriptor() ([]byte, []int) {
   325  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{2}
   326  }
   327  
   328  type MergeableStrategy int32
   329  
   330  const (
   331  	MergeableStrategy_MERGEABLE_STRATEGY_UNSPECIFIED MergeableStrategy = 0
   332  	MergeableStrategy_RECURSIVE                      MergeableStrategy = 1
   333  	MergeableStrategy_RESOLVE                        MergeableStrategy = 2
   334  	MergeableStrategy_SIMPLE_TWO_WAY_IN_CORE         MergeableStrategy = 3
   335  	MergeableStrategy_OURS                           MergeableStrategy = 4
   336  	MergeableStrategy_THEIRS                         MergeableStrategy = 5
   337  )
   338  
   339  // Enum value maps for MergeableStrategy.
   340  var (
   341  	MergeableStrategy_name = map[int32]string{
   342  		0: "MERGEABLE_STRATEGY_UNSPECIFIED",
   343  		1: "RECURSIVE",
   344  		2: "RESOLVE",
   345  		3: "SIMPLE_TWO_WAY_IN_CORE",
   346  		4: "OURS",
   347  		5: "THEIRS",
   348  	}
   349  	MergeableStrategy_value = map[string]int32{
   350  		"MERGEABLE_STRATEGY_UNSPECIFIED": 0,
   351  		"RECURSIVE":                      1,
   352  		"RESOLVE":                        2,
   353  		"SIMPLE_TWO_WAY_IN_CORE":         3,
   354  		"OURS":                           4,
   355  		"THEIRS":                         5,
   356  	}
   357  )
   358  
   359  func (x MergeableStrategy) Enum() *MergeableStrategy {
   360  	p := new(MergeableStrategy)
   361  	*p = x
   362  	return p
   363  }
   364  
   365  func (x MergeableStrategy) String() string {
   366  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   367  }
   368  
   369  func (MergeableStrategy) Descriptor() protoreflect.EnumDescriptor {
   370  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[3].Descriptor()
   371  }
   372  
   373  func (MergeableStrategy) Type() protoreflect.EnumType {
   374  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[3]
   375  }
   376  
   377  func (x MergeableStrategy) Number() protoreflect.EnumNumber {
   378  	return protoreflect.EnumNumber(x)
   379  }
   380  
   381  // Deprecated: Use MergeableStrategy.Descriptor instead.
   382  func (MergeableStrategy) EnumDescriptor() ([]byte, []int) {
   383  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{3}
   384  }
   385  
   386  // Specify how recipient will be notified.
   387  //
   388  // Source of truth:
   389  // https://gerrit-review.googlesource.com/Documentation/user-notify.html#recipient-types
   390  type NotifyDetails_RecipientType int32
   391  
   392  const (
   393  	NotifyDetails_RECIPIENT_TYPE_UNSPECIFIED NotifyDetails_RecipientType = 0
   394  	// The standard To field is used; addresses are visible to all.
   395  	NotifyDetails_RECIPIENT_TYPE_TO NotifyDetails_RecipientType = 1
   396  	// The standard CC field is used; addresses are visible to all.
   397  	NotifyDetails_RECIPIENT_TYPE_CC NotifyDetails_RecipientType = 2
   398  	// SMTP RCPT TO is used to hide the address.
   399  	NotifyDetails_RECIPIENT_TYPE_BCC NotifyDetails_RecipientType = 3
   400  )
   401  
   402  // Enum value maps for NotifyDetails_RecipientType.
   403  var (
   404  	NotifyDetails_RecipientType_name = map[int32]string{
   405  		0: "RECIPIENT_TYPE_UNSPECIFIED",
   406  		1: "RECIPIENT_TYPE_TO",
   407  		2: "RECIPIENT_TYPE_CC",
   408  		3: "RECIPIENT_TYPE_BCC",
   409  	}
   410  	NotifyDetails_RecipientType_value = map[string]int32{
   411  		"RECIPIENT_TYPE_UNSPECIFIED": 0,
   412  		"RECIPIENT_TYPE_TO":          1,
   413  		"RECIPIENT_TYPE_CC":          2,
   414  		"RECIPIENT_TYPE_BCC":         3,
   415  	}
   416  )
   417  
   418  func (x NotifyDetails_RecipientType) Enum() *NotifyDetails_RecipientType {
   419  	p := new(NotifyDetails_RecipientType)
   420  	*p = x
   421  	return p
   422  }
   423  
   424  func (x NotifyDetails_RecipientType) String() string {
   425  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   426  }
   427  
   428  func (NotifyDetails_RecipientType) Descriptor() protoreflect.EnumDescriptor {
   429  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[4].Descriptor()
   430  }
   431  
   432  func (NotifyDetails_RecipientType) Type() protoreflect.EnumType {
   433  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[4]
   434  }
   435  
   436  func (x NotifyDetails_RecipientType) Number() protoreflect.EnumNumber {
   437  	return protoreflect.EnumNumber(x)
   438  }
   439  
   440  // Deprecated: Use NotifyDetails_RecipientType.Descriptor instead.
   441  func (NotifyDetails_RecipientType) EnumDescriptor() ([]byte, []int) {
   442  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{0, 0}
   443  }
   444  
   445  // The kind of change for this revision.
   446  type RevisionInfo_Kind int32
   447  
   448  const (
   449  	RevisionInfo_KIND_INVALID              RevisionInfo_Kind = 0
   450  	RevisionInfo_REWORK                    RevisionInfo_Kind = 1
   451  	RevisionInfo_TRIVIAL_REBASE            RevisionInfo_Kind = 2
   452  	RevisionInfo_MERGE_FIRST_PARENT_UPDATE RevisionInfo_Kind = 3
   453  	RevisionInfo_NO_CODE_CHANGE            RevisionInfo_Kind = 4
   454  	RevisionInfo_NO_CHANGE                 RevisionInfo_Kind = 5
   455  )
   456  
   457  // Enum value maps for RevisionInfo_Kind.
   458  var (
   459  	RevisionInfo_Kind_name = map[int32]string{
   460  		0: "KIND_INVALID",
   461  		1: "REWORK",
   462  		2: "TRIVIAL_REBASE",
   463  		3: "MERGE_FIRST_PARENT_UPDATE",
   464  		4: "NO_CODE_CHANGE",
   465  		5: "NO_CHANGE",
   466  	}
   467  	RevisionInfo_Kind_value = map[string]int32{
   468  		"KIND_INVALID":              0,
   469  		"REWORK":                    1,
   470  		"TRIVIAL_REBASE":            2,
   471  		"MERGE_FIRST_PARENT_UPDATE": 3,
   472  		"NO_CODE_CHANGE":            4,
   473  		"NO_CHANGE":                 5,
   474  	}
   475  )
   476  
   477  func (x RevisionInfo_Kind) Enum() *RevisionInfo_Kind {
   478  	p := new(RevisionInfo_Kind)
   479  	*p = x
   480  	return p
   481  }
   482  
   483  func (x RevisionInfo_Kind) String() string {
   484  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   485  }
   486  
   487  func (RevisionInfo_Kind) Descriptor() protoreflect.EnumDescriptor {
   488  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[5].Descriptor()
   489  }
   490  
   491  func (RevisionInfo_Kind) Type() protoreflect.EnumType {
   492  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[5]
   493  }
   494  
   495  func (x RevisionInfo_Kind) Number() protoreflect.EnumNumber {
   496  	return protoreflect.EnumNumber(x)
   497  }
   498  
   499  // Deprecated: Use RevisionInfo_Kind.Descriptor instead.
   500  func (RevisionInfo_Kind) EnumDescriptor() ([]byte, []int) {
   501  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{8, 0}
   502  }
   503  
   504  type Requirement_Status int32
   505  
   506  const (
   507  	Requirement_REQUIREMENT_STATUS_UNSPECIFIED Requirement_Status = 0
   508  	Requirement_REQUIREMENT_STATUS_OK          Requirement_Status = 1
   509  	Requirement_REQUIREMENT_STATUS_NOT_READY   Requirement_Status = 2
   510  	Requirement_REQUIREMENT_STATUS_RULE_ERROR  Requirement_Status = 3
   511  )
   512  
   513  // Enum value maps for Requirement_Status.
   514  var (
   515  	Requirement_Status_name = map[int32]string{
   516  		0: "REQUIREMENT_STATUS_UNSPECIFIED",
   517  		1: "REQUIREMENT_STATUS_OK",
   518  		2: "REQUIREMENT_STATUS_NOT_READY",
   519  		3: "REQUIREMENT_STATUS_RULE_ERROR",
   520  	}
   521  	Requirement_Status_value = map[string]int32{
   522  		"REQUIREMENT_STATUS_UNSPECIFIED": 0,
   523  		"REQUIREMENT_STATUS_OK":          1,
   524  		"REQUIREMENT_STATUS_NOT_READY":   2,
   525  		"REQUIREMENT_STATUS_RULE_ERROR":  3,
   526  	}
   527  )
   528  
   529  func (x Requirement_Status) Enum() *Requirement_Status {
   530  	p := new(Requirement_Status)
   531  	*p = x
   532  	return p
   533  }
   534  
   535  func (x Requirement_Status) String() string {
   536  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   537  }
   538  
   539  func (Requirement_Status) Descriptor() protoreflect.EnumDescriptor {
   540  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[6].Descriptor()
   541  }
   542  
   543  func (Requirement_Status) Type() protoreflect.EnumType {
   544  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[6]
   545  }
   546  
   547  func (x Requirement_Status) Number() protoreflect.EnumNumber {
   548  	return protoreflect.EnumNumber(x)
   549  }
   550  
   551  // Deprecated: Use Requirement_Status.Descriptor instead.
   552  func (Requirement_Status) EnumDescriptor() ([]byte, []int) {
   553  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{14, 0}
   554  }
   555  
   556  type FileInfo_Status int32
   557  
   558  const (
   559  	FileInfo_M FileInfo_Status = 0 // Modified (default; omitted)
   560  	FileInfo_A FileInfo_Status = 1 // Added
   561  	FileInfo_D FileInfo_Status = 2 // Deleted
   562  	FileInfo_R FileInfo_Status = 3 // Renamed
   563  	FileInfo_C FileInfo_Status = 4 // Copied
   564  	FileInfo_W FileInfo_Status = 5 // Rewritten
   565  )
   566  
   567  // Enum value maps for FileInfo_Status.
   568  var (
   569  	FileInfo_Status_name = map[int32]string{
   570  		0: "M",
   571  		1: "A",
   572  		2: "D",
   573  		3: "R",
   574  		4: "C",
   575  		5: "W",
   576  	}
   577  	FileInfo_Status_value = map[string]int32{
   578  		"M": 0,
   579  		"A": 1,
   580  		"D": 2,
   581  		"R": 3,
   582  		"C": 4,
   583  		"W": 5,
   584  	}
   585  )
   586  
   587  func (x FileInfo_Status) Enum() *FileInfo_Status {
   588  	p := new(FileInfo_Status)
   589  	*p = x
   590  	return p
   591  }
   592  
   593  func (x FileInfo_Status) String() string {
   594  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   595  }
   596  
   597  func (FileInfo_Status) Descriptor() protoreflect.EnumDescriptor {
   598  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[7].Descriptor()
   599  }
   600  
   601  func (FileInfo_Status) Type() protoreflect.EnumType {
   602  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[7]
   603  }
   604  
   605  func (x FileInfo_Status) Number() protoreflect.EnumNumber {
   606  	return protoreflect.EnumNumber(x)
   607  }
   608  
   609  // Deprecated: Use FileInfo_Status.Descriptor instead.
   610  func (FileInfo_Status) EnumDescriptor() ([]byte, []int) {
   611  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{15, 0}
   612  }
   613  
   614  type AddReviewerRequest_State int32
   615  
   616  const (
   617  	AddReviewerRequest_ADD_REVIEWER_STATE_UNSPECIFIED AddReviewerRequest_State = 0
   618  	AddReviewerRequest_ADD_REVIEWER_STATE_REVIEWER    AddReviewerRequest_State = 1
   619  	AddReviewerRequest_ADD_REVIEWER_STATE_CC          AddReviewerRequest_State = 2
   620  )
   621  
   622  // Enum value maps for AddReviewerRequest_State.
   623  var (
   624  	AddReviewerRequest_State_name = map[int32]string{
   625  		0: "ADD_REVIEWER_STATE_UNSPECIFIED",
   626  		1: "ADD_REVIEWER_STATE_REVIEWER",
   627  		2: "ADD_REVIEWER_STATE_CC",
   628  	}
   629  	AddReviewerRequest_State_value = map[string]int32{
   630  		"ADD_REVIEWER_STATE_UNSPECIFIED": 0,
   631  		"ADD_REVIEWER_STATE_REVIEWER":    1,
   632  		"ADD_REVIEWER_STATE_CC":          2,
   633  	}
   634  )
   635  
   636  func (x AddReviewerRequest_State) Enum() *AddReviewerRequest_State {
   637  	p := new(AddReviewerRequest_State)
   638  	*p = x
   639  	return p
   640  }
   641  
   642  func (x AddReviewerRequest_State) String() string {
   643  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   644  }
   645  
   646  func (AddReviewerRequest_State) Descriptor() protoreflect.EnumDescriptor {
   647  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[8].Descriptor()
   648  }
   649  
   650  func (AddReviewerRequest_State) Type() protoreflect.EnumType {
   651  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[8]
   652  }
   653  
   654  func (x AddReviewerRequest_State) Number() protoreflect.EnumNumber {
   655  	return protoreflect.EnumNumber(x)
   656  }
   657  
   658  // Deprecated: Use AddReviewerRequest_State.Descriptor instead.
   659  func (AddReviewerRequest_State) EnumDescriptor() ([]byte, []int) {
   660  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{25, 0}
   661  }
   662  
   663  // Subset of reviewer states. See the "state" entry at
   664  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#reviewer-input
   665  type ReviewerInput_State int32
   666  
   667  const (
   668  	ReviewerInput_REVIEWER_INPUT_STATE_UNSPECIFIED ReviewerInput_State = 0
   669  	ReviewerInput_REVIEWER_INPUT_STATE_REVIEWER    ReviewerInput_State = 1
   670  	ReviewerInput_REVIEWER_INPUT_STATE_CC          ReviewerInput_State = 2
   671  )
   672  
   673  // Enum value maps for ReviewerInput_State.
   674  var (
   675  	ReviewerInput_State_name = map[int32]string{
   676  		0: "REVIEWER_INPUT_STATE_UNSPECIFIED",
   677  		1: "REVIEWER_INPUT_STATE_REVIEWER",
   678  		2: "REVIEWER_INPUT_STATE_CC",
   679  	}
   680  	ReviewerInput_State_value = map[string]int32{
   681  		"REVIEWER_INPUT_STATE_UNSPECIFIED": 0,
   682  		"REVIEWER_INPUT_STATE_REVIEWER":    1,
   683  		"REVIEWER_INPUT_STATE_CC":          2,
   684  	}
   685  )
   686  
   687  func (x ReviewerInput_State) Enum() *ReviewerInput_State {
   688  	p := new(ReviewerInput_State)
   689  	*p = x
   690  	return p
   691  }
   692  
   693  func (x ReviewerInput_State) String() string {
   694  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   695  }
   696  
   697  func (ReviewerInput_State) Descriptor() protoreflect.EnumDescriptor {
   698  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[9].Descriptor()
   699  }
   700  
   701  func (ReviewerInput_State) Type() protoreflect.EnumType {
   702  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[9]
   703  }
   704  
   705  func (x ReviewerInput_State) Number() protoreflect.EnumNumber {
   706  	return protoreflect.EnumNumber(x)
   707  }
   708  
   709  // Deprecated: Use ReviewerInput_State.Descriptor instead.
   710  func (ReviewerInput_State) EnumDescriptor() ([]byte, []int) {
   711  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{30, 0}
   712  }
   713  
   714  type MergeableInfo_SubmitType int32
   715  
   716  const (
   717  	MergeableInfo_SUBMIT_TYPE_UNSPECIFIED MergeableInfo_SubmitType = 0
   718  	MergeableInfo_MERGE_IF_NECESSARY      MergeableInfo_SubmitType = 1
   719  	MergeableInfo_FAST_FORWARD_ONLY       MergeableInfo_SubmitType = 2
   720  	MergeableInfo_REBASE_IF_NECESSARY     MergeableInfo_SubmitType = 3
   721  	MergeableInfo_REBASE_ALWAYS           MergeableInfo_SubmitType = 4
   722  	MergeableInfo_MERGE_ALWAYS            MergeableInfo_SubmitType = 5
   723  	MergeableInfo_CHERRY_PICK             MergeableInfo_SubmitType = 6
   724  )
   725  
   726  // Enum value maps for MergeableInfo_SubmitType.
   727  var (
   728  	MergeableInfo_SubmitType_name = map[int32]string{
   729  		0: "SUBMIT_TYPE_UNSPECIFIED",
   730  		1: "MERGE_IF_NECESSARY",
   731  		2: "FAST_FORWARD_ONLY",
   732  		3: "REBASE_IF_NECESSARY",
   733  		4: "REBASE_ALWAYS",
   734  		5: "MERGE_ALWAYS",
   735  		6: "CHERRY_PICK",
   736  	}
   737  	MergeableInfo_SubmitType_value = map[string]int32{
   738  		"SUBMIT_TYPE_UNSPECIFIED": 0,
   739  		"MERGE_IF_NECESSARY":      1,
   740  		"FAST_FORWARD_ONLY":       2,
   741  		"REBASE_IF_NECESSARY":     3,
   742  		"REBASE_ALWAYS":           4,
   743  		"MERGE_ALWAYS":            5,
   744  		"CHERRY_PICK":             6,
   745  	}
   746  )
   747  
   748  func (x MergeableInfo_SubmitType) Enum() *MergeableInfo_SubmitType {
   749  	p := new(MergeableInfo_SubmitType)
   750  	*p = x
   751  	return p
   752  }
   753  
   754  func (x MergeableInfo_SubmitType) String() string {
   755  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   756  }
   757  
   758  func (MergeableInfo_SubmitType) Descriptor() protoreflect.EnumDescriptor {
   759  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[10].Descriptor()
   760  }
   761  
   762  func (MergeableInfo_SubmitType) Type() protoreflect.EnumType {
   763  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[10]
   764  }
   765  
   766  func (x MergeableInfo_SubmitType) Number() protoreflect.EnumNumber {
   767  	return protoreflect.EnumNumber(x)
   768  }
   769  
   770  // Deprecated: Use MergeableInfo_SubmitType.Descriptor instead.
   771  func (MergeableInfo_SubmitType) EnumDescriptor() ([]byte, []int) {
   772  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{35, 0}
   773  }
   774  
   775  type ProjectInfo_State int32
   776  
   777  const (
   778  	ProjectInfo_PROJECT_STATE_UNSPECIFIED ProjectInfo_State = 0
   779  	ProjectInfo_PROJECT_STATE_ACTIVE      ProjectInfo_State = 1
   780  	ProjectInfo_PROJECT_STATE_READ_ONLY   ProjectInfo_State = 2
   781  	ProjectInfo_PROJECT_STATE_HIDDEN      ProjectInfo_State = 3
   782  )
   783  
   784  // Enum value maps for ProjectInfo_State.
   785  var (
   786  	ProjectInfo_State_name = map[int32]string{
   787  		0: "PROJECT_STATE_UNSPECIFIED",
   788  		1: "PROJECT_STATE_ACTIVE",
   789  		2: "PROJECT_STATE_READ_ONLY",
   790  		3: "PROJECT_STATE_HIDDEN",
   791  	}
   792  	ProjectInfo_State_value = map[string]int32{
   793  		"PROJECT_STATE_UNSPECIFIED": 0,
   794  		"PROJECT_STATE_ACTIVE":      1,
   795  		"PROJECT_STATE_READ_ONLY":   2,
   796  		"PROJECT_STATE_HIDDEN":      3,
   797  	}
   798  )
   799  
   800  func (x ProjectInfo_State) Enum() *ProjectInfo_State {
   801  	p := new(ProjectInfo_State)
   802  	*p = x
   803  	return p
   804  }
   805  
   806  func (x ProjectInfo_State) String() string {
   807  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   808  }
   809  
   810  func (ProjectInfo_State) Descriptor() protoreflect.EnumDescriptor {
   811  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[11].Descriptor()
   812  }
   813  
   814  func (ProjectInfo_State) Type() protoreflect.EnumType {
   815  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[11]
   816  }
   817  
   818  func (x ProjectInfo_State) Number() protoreflect.EnumNumber {
   819  	return protoreflect.EnumNumber(x)
   820  }
   821  
   822  // Deprecated: Use ProjectInfo_State.Descriptor instead.
   823  func (ProjectInfo_State) EnumDescriptor() ([]byte, []int) {
   824  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{42, 0}
   825  }
   826  
   827  type SubmitRequirementResultInfo_Status int32
   828  
   829  const (
   830  	SubmitRequirementResultInfo_SUBMIT_REQUIREMENT_STATUS_UNSPECIFIED SubmitRequirementResultInfo_Status = 0
   831  	SubmitRequirementResultInfo_SATISFIED                             SubmitRequirementResultInfo_Status = 1
   832  	SubmitRequirementResultInfo_UNSATISFIED                           SubmitRequirementResultInfo_Status = 2
   833  	SubmitRequirementResultInfo_OVERRIDDEN                            SubmitRequirementResultInfo_Status = 3
   834  	SubmitRequirementResultInfo_NOT_APPLICABLE                        SubmitRequirementResultInfo_Status = 4
   835  	SubmitRequirementResultInfo_ERROR                                 SubmitRequirementResultInfo_Status = 5
   836  	SubmitRequirementResultInfo_FORCED                                SubmitRequirementResultInfo_Status = 6
   837  )
   838  
   839  // Enum value maps for SubmitRequirementResultInfo_Status.
   840  var (
   841  	SubmitRequirementResultInfo_Status_name = map[int32]string{
   842  		0: "SUBMIT_REQUIREMENT_STATUS_UNSPECIFIED",
   843  		1: "SATISFIED",
   844  		2: "UNSATISFIED",
   845  		3: "OVERRIDDEN",
   846  		4: "NOT_APPLICABLE",
   847  		5: "ERROR",
   848  		6: "FORCED",
   849  	}
   850  	SubmitRequirementResultInfo_Status_value = map[string]int32{
   851  		"SUBMIT_REQUIREMENT_STATUS_UNSPECIFIED": 0,
   852  		"SATISFIED":                             1,
   853  		"UNSATISFIED":                           2,
   854  		"OVERRIDDEN":                            3,
   855  		"NOT_APPLICABLE":                        4,
   856  		"ERROR":                                 5,
   857  		"FORCED":                                6,
   858  	}
   859  )
   860  
   861  func (x SubmitRequirementResultInfo_Status) Enum() *SubmitRequirementResultInfo_Status {
   862  	p := new(SubmitRequirementResultInfo_Status)
   863  	*p = x
   864  	return p
   865  }
   866  
   867  func (x SubmitRequirementResultInfo_Status) String() string {
   868  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   869  }
   870  
   871  func (SubmitRequirementResultInfo_Status) Descriptor() protoreflect.EnumDescriptor {
   872  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[12].Descriptor()
   873  }
   874  
   875  func (SubmitRequirementResultInfo_Status) Type() protoreflect.EnumType {
   876  	return &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes[12]
   877  }
   878  
   879  func (x SubmitRequirementResultInfo_Status) Number() protoreflect.EnumNumber {
   880  	return protoreflect.EnumNumber(x)
   881  }
   882  
   883  // Deprecated: Use SubmitRequirementResultInfo_Status.Descriptor instead.
   884  func (SubmitRequirementResultInfo_Status) EnumDescriptor() ([]byte, []int) {
   885  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{52, 0}
   886  }
   887  
   888  // Detailed information about whom to notify about the update.
   889  type NotifyDetails struct {
   890  	state         protoimpl.MessageState
   891  	sizeCache     protoimpl.SizeCache
   892  	unknownFields protoimpl.UnknownFields
   893  
   894  	// Recipients of the same RecipientType will be merged. Duplicate
   895  	// accountIDs in `notify_info` will be removed.
   896  	Recipients []*NotifyDetails_Recipient `protobuf:"bytes,1,rep,name=recipients,proto3" json:"recipients,omitempty"`
   897  }
   898  
   899  func (x *NotifyDetails) Reset() {
   900  	*x = NotifyDetails{}
   901  	if protoimpl.UnsafeEnabled {
   902  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[0]
   903  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   904  		ms.StoreMessageInfo(mi)
   905  	}
   906  }
   907  
   908  func (x *NotifyDetails) String() string {
   909  	return protoimpl.X.MessageStringOf(x)
   910  }
   911  
   912  func (*NotifyDetails) ProtoMessage() {}
   913  
   914  func (x *NotifyDetails) ProtoReflect() protoreflect.Message {
   915  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[0]
   916  	if protoimpl.UnsafeEnabled && x != nil {
   917  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   918  		if ms.LoadMessageInfo() == nil {
   919  			ms.StoreMessageInfo(mi)
   920  		}
   921  		return ms
   922  	}
   923  	return mi.MessageOf(x)
   924  }
   925  
   926  // Deprecated: Use NotifyDetails.ProtoReflect.Descriptor instead.
   927  func (*NotifyDetails) Descriptor() ([]byte, []int) {
   928  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{0}
   929  }
   930  
   931  func (x *NotifyDetails) GetRecipients() []*NotifyDetails_Recipient {
   932  	if x != nil {
   933  		return x.Recipients
   934  	}
   935  	return nil
   936  }
   937  
   938  // Request to list changes based on a query.
   939  type ListChangesRequest struct {
   940  	state         protoimpl.MessageState
   941  	sizeCache     protoimpl.SizeCache
   942  	unknownFields protoimpl.UnknownFields
   943  
   944  	// The query used to filter the changes.
   945  	//
   946  	// This is the same as the query that can be used in the Gerrit web UI. It is
   947  	// space-separated and can include filters like "label:Commit-Queue" or
   948  	// "status:open". The possible search operators are described at:
   949  	// https://gerrit-review.googlesource.com/Documentation/user-search.html
   950  	//
   951  	// An empty query matches all changes.
   952  	Query string `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
   953  	// What to include in the response.
   954  	Options []QueryOption `protobuf:"varint,2,rep,packed,name=options,proto3,enum=gerrit.QueryOption" json:"options,omitempty"`
   955  	// Caps the number of results to return. Required.
   956  	//
   957  	// Defaults to 25 if not provided; maximum value 1000.
   958  	//
   959  	// Use luci/common/api/gerrit:PagingListChanges wrapper if you need to fetch
   960  	// more or all changes.
   961  	Limit int64 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`
   962  	// The number of changes to skip from the start, for pagination.
   963  	//
   964  	// Note that without using offset, it's also possible to do paging by
   965  	// including a "before:" time in the query, and querying for changes before
   966  	// the earliest change in the current page. This may be preferred but is not
   967  	// very trivial to implement correctly.
   968  	Offset int64 `protobuf:"varint,4,opt,name=offset,proto3" json:"offset,omitempty"`
   969  }
   970  
   971  func (x *ListChangesRequest) Reset() {
   972  	*x = ListChangesRequest{}
   973  	if protoimpl.UnsafeEnabled {
   974  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[1]
   975  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   976  		ms.StoreMessageInfo(mi)
   977  	}
   978  }
   979  
   980  func (x *ListChangesRequest) String() string {
   981  	return protoimpl.X.MessageStringOf(x)
   982  }
   983  
   984  func (*ListChangesRequest) ProtoMessage() {}
   985  
   986  func (x *ListChangesRequest) ProtoReflect() protoreflect.Message {
   987  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[1]
   988  	if protoimpl.UnsafeEnabled && x != nil {
   989  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   990  		if ms.LoadMessageInfo() == nil {
   991  			ms.StoreMessageInfo(mi)
   992  		}
   993  		return ms
   994  	}
   995  	return mi.MessageOf(x)
   996  }
   997  
   998  // Deprecated: Use ListChangesRequest.ProtoReflect.Descriptor instead.
   999  func (*ListChangesRequest) Descriptor() ([]byte, []int) {
  1000  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{1}
  1001  }
  1002  
  1003  func (x *ListChangesRequest) GetQuery() string {
  1004  	if x != nil {
  1005  		return x.Query
  1006  	}
  1007  	return ""
  1008  }
  1009  
  1010  func (x *ListChangesRequest) GetOptions() []QueryOption {
  1011  	if x != nil {
  1012  		return x.Options
  1013  	}
  1014  	return nil
  1015  }
  1016  
  1017  func (x *ListChangesRequest) GetLimit() int64 {
  1018  	if x != nil {
  1019  		return x.Limit
  1020  	}
  1021  	return 0
  1022  }
  1023  
  1024  func (x *ListChangesRequest) GetOffset() int64 {
  1025  	if x != nil {
  1026  		return x.Offset
  1027  	}
  1028  	return 0
  1029  }
  1030  
  1031  // A list of changes that matched the query.
  1032  type ListChangesResponse struct {
  1033  	state         protoimpl.MessageState
  1034  	sizeCache     protoimpl.SizeCache
  1035  	unknownFields protoimpl.UnknownFields
  1036  
  1037  	// The changes that matched the query, with the fields requested.
  1038  	//
  1039  	// The order of the changes is expected to be decreasing by update time,
  1040  	// however the The Gerrit API doc doesn't explicitly specify the order:
  1041  	// https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html
  1042  	Changes []*ChangeInfo `protobuf:"bytes,1,rep,name=changes,proto3" json:"changes,omitempty"`
  1043  	// True if there are more changes not returned.
  1044  	//
  1045  	// This will be set if the number of changes matching the query exceeds the
  1046  	// limit supplied; however, it's possible that if the number exceeds some
  1047  	// internal Gerrit maximum, this will not be set.
  1048  	//
  1049  	// Specifically (as of Dec 2018) Google's Gerrit instance will not look
  1050  	// beyond a maximum hardcoded in Gerrit backend of 10k changes in the index
  1051  	// of changes, and so if a query matches more than that many changes, Gerrit
  1052  	// backend may not know and may not set "_more_changes".
  1053  	MoreChanges bool `protobuf:"varint,2,opt,name=more_changes,json=moreChanges,proto3" json:"more_changes,omitempty"`
  1054  }
  1055  
  1056  func (x *ListChangesResponse) Reset() {
  1057  	*x = ListChangesResponse{}
  1058  	if protoimpl.UnsafeEnabled {
  1059  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[2]
  1060  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1061  		ms.StoreMessageInfo(mi)
  1062  	}
  1063  }
  1064  
  1065  func (x *ListChangesResponse) String() string {
  1066  	return protoimpl.X.MessageStringOf(x)
  1067  }
  1068  
  1069  func (*ListChangesResponse) ProtoMessage() {}
  1070  
  1071  func (x *ListChangesResponse) ProtoReflect() protoreflect.Message {
  1072  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[2]
  1073  	if protoimpl.UnsafeEnabled && x != nil {
  1074  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1075  		if ms.LoadMessageInfo() == nil {
  1076  			ms.StoreMessageInfo(mi)
  1077  		}
  1078  		return ms
  1079  	}
  1080  	return mi.MessageOf(x)
  1081  }
  1082  
  1083  // Deprecated: Use ListChangesResponse.ProtoReflect.Descriptor instead.
  1084  func (*ListChangesResponse) Descriptor() ([]byte, []int) {
  1085  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{2}
  1086  }
  1087  
  1088  func (x *ListChangesResponse) GetChanges() []*ChangeInfo {
  1089  	if x != nil {
  1090  		return x.Changes
  1091  	}
  1092  	return nil
  1093  }
  1094  
  1095  func (x *ListChangesResponse) GetMoreChanges() bool {
  1096  	if x != nil {
  1097  		return x.MoreChanges
  1098  	}
  1099  	return false
  1100  }
  1101  
  1102  // Request to get information for a single change.
  1103  //
  1104  // Encodes path arguments and query options described at
  1105  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#get-change
  1106  type GetChangeRequest struct {
  1107  	state         protoimpl.MessageState
  1108  	sizeCache     protoimpl.SizeCache
  1109  	unknownFields protoimpl.UnknownFields
  1110  
  1111  	// Change number.
  1112  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  1113  	// What to include in the response.
  1114  	Options []QueryOption `protobuf:"varint,2,rep,packed,name=options,proto3,enum=gerrit.QueryOption" json:"options,omitempty"`
  1115  	// The Gerrit project.
  1116  	// Specifying this field is optional, but encouraged because it requires less
  1117  	// work on the Gerrit side.
  1118  	Project string `protobuf:"bytes,3,opt,name=project,proto3" json:"project,omitempty"`
  1119  	// The SHA-1 of a historical NoteDB snapshot of the change to retrieve.
  1120  	//
  1121  	// If the SHA-1 is not reachable from the serving Gerrit replica,
  1122  	// status code 412 is returned.
  1123  	// If the given value is not a valid NoteDB SHA-1,
  1124  	// status code 400 is returned.
  1125  	//
  1126  	// If omitted, GetChange will return the latest snapshot known by the serving
  1127  	// Gerrit replica.
  1128  	Meta string `protobuf:"bytes,4,opt,name=meta,proto3" json:"meta,omitempty"`
  1129  }
  1130  
  1131  func (x *GetChangeRequest) Reset() {
  1132  	*x = GetChangeRequest{}
  1133  	if protoimpl.UnsafeEnabled {
  1134  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[3]
  1135  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1136  		ms.StoreMessageInfo(mi)
  1137  	}
  1138  }
  1139  
  1140  func (x *GetChangeRequest) String() string {
  1141  	return protoimpl.X.MessageStringOf(x)
  1142  }
  1143  
  1144  func (*GetChangeRequest) ProtoMessage() {}
  1145  
  1146  func (x *GetChangeRequest) ProtoReflect() protoreflect.Message {
  1147  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[3]
  1148  	if protoimpl.UnsafeEnabled && x != nil {
  1149  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1150  		if ms.LoadMessageInfo() == nil {
  1151  			ms.StoreMessageInfo(mi)
  1152  		}
  1153  		return ms
  1154  	}
  1155  	return mi.MessageOf(x)
  1156  }
  1157  
  1158  // Deprecated: Use GetChangeRequest.ProtoReflect.Descriptor instead.
  1159  func (*GetChangeRequest) Descriptor() ([]byte, []int) {
  1160  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{3}
  1161  }
  1162  
  1163  func (x *GetChangeRequest) GetNumber() int64 {
  1164  	if x != nil {
  1165  		return x.Number
  1166  	}
  1167  	return 0
  1168  }
  1169  
  1170  func (x *GetChangeRequest) GetOptions() []QueryOption {
  1171  	if x != nil {
  1172  		return x.Options
  1173  	}
  1174  	return nil
  1175  }
  1176  
  1177  func (x *GetChangeRequest) GetProject() string {
  1178  	if x != nil {
  1179  		return x.Project
  1180  	}
  1181  	return ""
  1182  }
  1183  
  1184  func (x *GetChangeRequest) GetMeta() string {
  1185  	if x != nil {
  1186  		return x.Meta
  1187  	}
  1188  	return ""
  1189  }
  1190  
  1191  // Information about an account.
  1192  //
  1193  // Source of truth:
  1194  // https://gerrit-review.googlesource.com/Documentation/rest-api-accounts.html#account-info
  1195  type AccountInfo struct {
  1196  	state         protoimpl.MessageState
  1197  	sizeCache     protoimpl.SizeCache
  1198  	unknownFields protoimpl.UnknownFields
  1199  
  1200  	// The full name of the user.
  1201  	// Only set if detailed account information is requested.
  1202  	// See option DETAILED_ACCOUNTS for change queries
  1203  	// and option DETAILS for account queries.
  1204  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  1205  	// The email address the user prefers to be contacted through.
  1206  	// Only set if detailed account information is requested.
  1207  	// See option DETAILED_ACCOUNTS for change queries
  1208  	// and options DETAILS and ALL_EMAILS for account queries.
  1209  	Email string `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"`
  1210  	// A list of the secondary email addresses of the user.
  1211  	// Only set for account queries when the ALL_EMAILS option or the suggest
  1212  	// parameter is set. Secondary emails are only included if the calling user
  1213  	// has the Modify Account, and hence is allowed to see secondary emails of
  1214  	// other users.
  1215  	SecondaryEmails []string `protobuf:"bytes,3,rep,name=secondary_emails,json=secondaryEmails,proto3" json:"secondary_emails,omitempty"`
  1216  	// The username of the user.
  1217  	// Only set if detailed account information is requested.
  1218  	// See option DETAILED_ACCOUNTS for change queries
  1219  	// and option DETAILS for account queries.
  1220  	Username string `protobuf:"bytes,4,opt,name=username,proto3" json:"username,omitempty"`
  1221  	// The numeric ID of the account
  1222  	AccountId int64 `protobuf:"varint,5,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
  1223  	// List of additional tags that this account has.
  1224  	//
  1225  	// The only current tag an account can have is SERVICE_USER.
  1226  	// Only set if detailed account information is requested.
  1227  	// See option DETAILED_ACCOUNTS
  1228  	Tags []string `protobuf:"bytes,6,rep,name=tags,proto3" json:"tags,omitempty"`
  1229  }
  1230  
  1231  func (x *AccountInfo) Reset() {
  1232  	*x = AccountInfo{}
  1233  	if protoimpl.UnsafeEnabled {
  1234  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[4]
  1235  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1236  		ms.StoreMessageInfo(mi)
  1237  	}
  1238  }
  1239  
  1240  func (x *AccountInfo) String() string {
  1241  	return protoimpl.X.MessageStringOf(x)
  1242  }
  1243  
  1244  func (*AccountInfo) ProtoMessage() {}
  1245  
  1246  func (x *AccountInfo) ProtoReflect() protoreflect.Message {
  1247  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[4]
  1248  	if protoimpl.UnsafeEnabled && x != nil {
  1249  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1250  		if ms.LoadMessageInfo() == nil {
  1251  			ms.StoreMessageInfo(mi)
  1252  		}
  1253  		return ms
  1254  	}
  1255  	return mi.MessageOf(x)
  1256  }
  1257  
  1258  // Deprecated: Use AccountInfo.ProtoReflect.Descriptor instead.
  1259  func (*AccountInfo) Descriptor() ([]byte, []int) {
  1260  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{4}
  1261  }
  1262  
  1263  func (x *AccountInfo) GetName() string {
  1264  	if x != nil {
  1265  		return x.Name
  1266  	}
  1267  	return ""
  1268  }
  1269  
  1270  func (x *AccountInfo) GetEmail() string {
  1271  	if x != nil {
  1272  		return x.Email
  1273  	}
  1274  	return ""
  1275  }
  1276  
  1277  func (x *AccountInfo) GetSecondaryEmails() []string {
  1278  	if x != nil {
  1279  		return x.SecondaryEmails
  1280  	}
  1281  	return nil
  1282  }
  1283  
  1284  func (x *AccountInfo) GetUsername() string {
  1285  	if x != nil {
  1286  		return x.Username
  1287  	}
  1288  	return ""
  1289  }
  1290  
  1291  func (x *AccountInfo) GetAccountId() int64 {
  1292  	if x != nil {
  1293  		return x.AccountId
  1294  	}
  1295  	return 0
  1296  }
  1297  
  1298  func (x *AccountInfo) GetTags() []string {
  1299  	if x != nil {
  1300  		return x.Tags
  1301  	}
  1302  	return nil
  1303  }
  1304  
  1305  // The GitPersonInfo entity contains information about the author/committer of a commit.
  1306  //
  1307  // Fields are a subset of:
  1308  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#git-person-info
  1309  type GitPersonInfo struct {
  1310  	state         protoimpl.MessageState
  1311  	sizeCache     protoimpl.SizeCache
  1312  	unknownFields protoimpl.UnknownFields
  1313  
  1314  	// The name of the author/committer.
  1315  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  1316  	// The email address of the author/committer.
  1317  	Email string `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"`
  1318  }
  1319  
  1320  func (x *GitPersonInfo) Reset() {
  1321  	*x = GitPersonInfo{}
  1322  	if protoimpl.UnsafeEnabled {
  1323  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[5]
  1324  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1325  		ms.StoreMessageInfo(mi)
  1326  	}
  1327  }
  1328  
  1329  func (x *GitPersonInfo) String() string {
  1330  	return protoimpl.X.MessageStringOf(x)
  1331  }
  1332  
  1333  func (*GitPersonInfo) ProtoMessage() {}
  1334  
  1335  func (x *GitPersonInfo) ProtoReflect() protoreflect.Message {
  1336  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[5]
  1337  	if protoimpl.UnsafeEnabled && x != nil {
  1338  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1339  		if ms.LoadMessageInfo() == nil {
  1340  			ms.StoreMessageInfo(mi)
  1341  		}
  1342  		return ms
  1343  	}
  1344  	return mi.MessageOf(x)
  1345  }
  1346  
  1347  // Deprecated: Use GitPersonInfo.ProtoReflect.Descriptor instead.
  1348  func (*GitPersonInfo) Descriptor() ([]byte, []int) {
  1349  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{5}
  1350  }
  1351  
  1352  func (x *GitPersonInfo) GetName() string {
  1353  	if x != nil {
  1354  		return x.Name
  1355  	}
  1356  	return ""
  1357  }
  1358  
  1359  func (x *GitPersonInfo) GetEmail() string {
  1360  	if x != nil {
  1361  		return x.Email
  1362  	}
  1363  	return ""
  1364  }
  1365  
  1366  // Information about a change.
  1367  //
  1368  // Source of truth:
  1369  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#change-info
  1370  //
  1371  // Next tag: 24.
  1372  type ChangeInfo struct {
  1373  	state         protoimpl.MessageState
  1374  	sizeCache     protoimpl.SizeCache
  1375  	unknownFields protoimpl.UnknownFields
  1376  
  1377  	// The change number.
  1378  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  1379  	// The owner of the change.
  1380  	Owner *AccountInfo `protobuf:"bytes,2,opt,name=owner,proto3" json:"owner,omitempty"`
  1381  	// The project of this change. For example, "chromium/src".
  1382  	Project string `protobuf:"bytes,3,opt,name=project,proto3" json:"project,omitempty"`
  1383  	// Ref that this change targets, e.g.: refs/heads/master
  1384  	//
  1385  	// Note that the gerrit API may return short branch name (master instead of
  1386  	// refs/heads/master) but we convert it to a ref for consistency across the
  1387  	// API.
  1388  	Ref    string       `protobuf:"bytes,4,opt,name=ref,proto3" json:"ref,omitempty"`
  1389  	Status ChangeStatus `protobuf:"varint,5,opt,name=status,proto3,enum=gerrit.ChangeStatus" json:"status,omitempty"`
  1390  	// Current revision of the change.
  1391  	//
  1392  	// See:
  1393  	// https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#revision-id
  1394  	CurrentRevision string `protobuf:"bytes,6,opt,name=current_revision,json=currentRevision,proto3" json:"current_revision,omitempty"`
  1395  	// A map of patch set commit IDs to RevisionInfos.
  1396  	//
  1397  	// Only set if revision information is requested.
  1398  	Revisions map[string]*RevisionInfo `protobuf:"bytes,7,rep,name=revisions,proto3" json:"revisions,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1399  	// A map of label names to LabelInfos.
  1400  	//
  1401  	// Only set if label info is requested.
  1402  	Labels map[string]*LabelInfo `protobuf:"bytes,8,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1403  	// Messages associated with the change.
  1404  	//
  1405  	// Only set if messages are requested.
  1406  	Messages []*ChangeMessageInfo `protobuf:"bytes,9,rep,name=messages,proto3" json:"messages,omitempty"`
  1407  	// List of the requirements to be met before this change can be submitted.
  1408  	//
  1409  	// Deprecated: use `submit_requirements` instead.
  1410  	//
  1411  	// Deprecated: Marked as deprecated in go.chromium.org/luci/common/proto/gerrit/gerrit.proto.
  1412  	Requirements []*Requirement `protobuf:"bytes,14,rep,name=requirements,proto3" json:"requirements,omitempty"`
  1413  	// Whether the change is approved
  1414  	// by the project submit rules.
  1415  	//
  1416  	// Only set if submittable is requested.
  1417  	Submittable bool `protobuf:"varint,10,opt,name=submittable,proto3" json:"submittable,omitempty"`
  1418  	// Whether change is private.
  1419  	IsPrivate bool `protobuf:"varint,13,opt,name=is_private,json=isPrivate,proto3" json:"is_private,omitempty"`
  1420  	// List of hashtags that are set on the change.
  1421  	Hashtags []string `protobuf:"bytes,19,rep,name=hashtags,proto3" json:"hashtags,omitempty"`
  1422  	// Timestamp of when the change was created
  1423  	Created *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=created,proto3" json:"created,omitempty"`
  1424  	// Timestamp of when the change was last updated
  1425  	Updated *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=updated,proto3" json:"updated,omitempty"`
  1426  	// Timestamp of when the change was submitted.
  1427  	//
  1428  	// Only set for merged changes.
  1429  	Submitted *timestamppb.Timestamp `protobuf:"bytes,21,opt,name=submitted,proto3" json:"submitted,omitempty"`
  1430  	// The numeric Change-Id of the change that this change reverts.
  1431  	RevertOf int64 `protobuf:"varint,15,opt,name=revert_of,json=revertOf,proto3" json:"revert_of,omitempty"`
  1432  	// The numeric Change-Id of the change that this change was cherry-picked from.
  1433  	CherryPickOfChange int64 `protobuf:"varint,16,opt,name=cherry_pick_of_change,json=cherryPickOfChange,proto3" json:"cherry_pick_of_change,omitempty"`
  1434  	// The users who have been added in and removed from the change.
  1435  	Reviewers *ReviewerStatusMap `protobuf:"bytes,17,opt,name=reviewers,proto3" json:"reviewers,omitempty"`
  1436  	// The SHA-1 of the NoteDb meta ref.
  1437  	MetaRevId string `protobuf:"bytes,18,opt,name=meta_rev_id,json=metaRevId,proto3" json:"meta_rev_id,omitempty"`
  1438  	// The evaluation results of the submit requirements for this change.
  1439  	SubmitRequirements []*SubmitRequirementResultInfo `protobuf:"bytes,20,rep,name=submit_requirements,json=submitRequirements,proto3" json:"submit_requirements,omitempty"`
  1440  	// The subject of the change (header line of the commit message).
  1441  	Subject string `protobuf:"bytes,22,opt,name=subject,proto3" json:"subject,omitempty"`
  1442  	// The name of the target branch. The refs/heads/ prefix is omitted.
  1443  	Branch string `protobuf:"bytes,23,opt,name=branch,proto3" json:"branch,omitempty"`
  1444  }
  1445  
  1446  func (x *ChangeInfo) Reset() {
  1447  	*x = ChangeInfo{}
  1448  	if protoimpl.UnsafeEnabled {
  1449  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[6]
  1450  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1451  		ms.StoreMessageInfo(mi)
  1452  	}
  1453  }
  1454  
  1455  func (x *ChangeInfo) String() string {
  1456  	return protoimpl.X.MessageStringOf(x)
  1457  }
  1458  
  1459  func (*ChangeInfo) ProtoMessage() {}
  1460  
  1461  func (x *ChangeInfo) ProtoReflect() protoreflect.Message {
  1462  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[6]
  1463  	if protoimpl.UnsafeEnabled && x != nil {
  1464  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1465  		if ms.LoadMessageInfo() == nil {
  1466  			ms.StoreMessageInfo(mi)
  1467  		}
  1468  		return ms
  1469  	}
  1470  	return mi.MessageOf(x)
  1471  }
  1472  
  1473  // Deprecated: Use ChangeInfo.ProtoReflect.Descriptor instead.
  1474  func (*ChangeInfo) Descriptor() ([]byte, []int) {
  1475  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{6}
  1476  }
  1477  
  1478  func (x *ChangeInfo) GetNumber() int64 {
  1479  	if x != nil {
  1480  		return x.Number
  1481  	}
  1482  	return 0
  1483  }
  1484  
  1485  func (x *ChangeInfo) GetOwner() *AccountInfo {
  1486  	if x != nil {
  1487  		return x.Owner
  1488  	}
  1489  	return nil
  1490  }
  1491  
  1492  func (x *ChangeInfo) GetProject() string {
  1493  	if x != nil {
  1494  		return x.Project
  1495  	}
  1496  	return ""
  1497  }
  1498  
  1499  func (x *ChangeInfo) GetRef() string {
  1500  	if x != nil {
  1501  		return x.Ref
  1502  	}
  1503  	return ""
  1504  }
  1505  
  1506  func (x *ChangeInfo) GetStatus() ChangeStatus {
  1507  	if x != nil {
  1508  		return x.Status
  1509  	}
  1510  	return ChangeStatus_CHANGE_STATUS_INVALID
  1511  }
  1512  
  1513  func (x *ChangeInfo) GetCurrentRevision() string {
  1514  	if x != nil {
  1515  		return x.CurrentRevision
  1516  	}
  1517  	return ""
  1518  }
  1519  
  1520  func (x *ChangeInfo) GetRevisions() map[string]*RevisionInfo {
  1521  	if x != nil {
  1522  		return x.Revisions
  1523  	}
  1524  	return nil
  1525  }
  1526  
  1527  func (x *ChangeInfo) GetLabels() map[string]*LabelInfo {
  1528  	if x != nil {
  1529  		return x.Labels
  1530  	}
  1531  	return nil
  1532  }
  1533  
  1534  func (x *ChangeInfo) GetMessages() []*ChangeMessageInfo {
  1535  	if x != nil {
  1536  		return x.Messages
  1537  	}
  1538  	return nil
  1539  }
  1540  
  1541  // Deprecated: Marked as deprecated in go.chromium.org/luci/common/proto/gerrit/gerrit.proto.
  1542  func (x *ChangeInfo) GetRequirements() []*Requirement {
  1543  	if x != nil {
  1544  		return x.Requirements
  1545  	}
  1546  	return nil
  1547  }
  1548  
  1549  func (x *ChangeInfo) GetSubmittable() bool {
  1550  	if x != nil {
  1551  		return x.Submittable
  1552  	}
  1553  	return false
  1554  }
  1555  
  1556  func (x *ChangeInfo) GetIsPrivate() bool {
  1557  	if x != nil {
  1558  		return x.IsPrivate
  1559  	}
  1560  	return false
  1561  }
  1562  
  1563  func (x *ChangeInfo) GetHashtags() []string {
  1564  	if x != nil {
  1565  		return x.Hashtags
  1566  	}
  1567  	return nil
  1568  }
  1569  
  1570  func (x *ChangeInfo) GetCreated() *timestamppb.Timestamp {
  1571  	if x != nil {
  1572  		return x.Created
  1573  	}
  1574  	return nil
  1575  }
  1576  
  1577  func (x *ChangeInfo) GetUpdated() *timestamppb.Timestamp {
  1578  	if x != nil {
  1579  		return x.Updated
  1580  	}
  1581  	return nil
  1582  }
  1583  
  1584  func (x *ChangeInfo) GetSubmitted() *timestamppb.Timestamp {
  1585  	if x != nil {
  1586  		return x.Submitted
  1587  	}
  1588  	return nil
  1589  }
  1590  
  1591  func (x *ChangeInfo) GetRevertOf() int64 {
  1592  	if x != nil {
  1593  		return x.RevertOf
  1594  	}
  1595  	return 0
  1596  }
  1597  
  1598  func (x *ChangeInfo) GetCherryPickOfChange() int64 {
  1599  	if x != nil {
  1600  		return x.CherryPickOfChange
  1601  	}
  1602  	return 0
  1603  }
  1604  
  1605  func (x *ChangeInfo) GetReviewers() *ReviewerStatusMap {
  1606  	if x != nil {
  1607  		return x.Reviewers
  1608  	}
  1609  	return nil
  1610  }
  1611  
  1612  func (x *ChangeInfo) GetMetaRevId() string {
  1613  	if x != nil {
  1614  		return x.MetaRevId
  1615  	}
  1616  	return ""
  1617  }
  1618  
  1619  func (x *ChangeInfo) GetSubmitRequirements() []*SubmitRequirementResultInfo {
  1620  	if x != nil {
  1621  		return x.SubmitRequirements
  1622  	}
  1623  	return nil
  1624  }
  1625  
  1626  func (x *ChangeInfo) GetSubject() string {
  1627  	if x != nil {
  1628  		return x.Subject
  1629  	}
  1630  	return ""
  1631  }
  1632  
  1633  func (x *ChangeInfo) GetBranch() string {
  1634  	if x != nil {
  1635  		return x.Branch
  1636  	}
  1637  	return ""
  1638  }
  1639  
  1640  // ReviewerStatusMap is a map that maps a reviewer state to a list of
  1641  // AccountInfo(s).
  1642  //
  1643  // ReviewerState includes REVIEWER, CC, and REMOVED, and this struct
  1644  // defines a field for each of then.
  1645  type ReviewerStatusMap struct {
  1646  	state         protoimpl.MessageState
  1647  	sizeCache     protoimpl.SizeCache
  1648  	unknownFields protoimpl.UnknownFields
  1649  
  1650  	// The users who have been added to the change and voted.
  1651  	Reviewers []*AccountInfo `protobuf:"bytes,1,rep,name=reviewers,proto3" json:"reviewers,omitempty"`
  1652  	// The users who have been added to the change but haven't voted yet.
  1653  	Ccs []*AccountInfo `protobuf:"bytes,2,rep,name=ccs,proto3" json:"ccs,omitempty"`
  1654  	// The users who have been removed from the change.
  1655  	Removed []*AccountInfo `protobuf:"bytes,3,rep,name=removed,proto3" json:"removed,omitempty"`
  1656  }
  1657  
  1658  func (x *ReviewerStatusMap) Reset() {
  1659  	*x = ReviewerStatusMap{}
  1660  	if protoimpl.UnsafeEnabled {
  1661  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[7]
  1662  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1663  		ms.StoreMessageInfo(mi)
  1664  	}
  1665  }
  1666  
  1667  func (x *ReviewerStatusMap) String() string {
  1668  	return protoimpl.X.MessageStringOf(x)
  1669  }
  1670  
  1671  func (*ReviewerStatusMap) ProtoMessage() {}
  1672  
  1673  func (x *ReviewerStatusMap) ProtoReflect() protoreflect.Message {
  1674  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[7]
  1675  	if protoimpl.UnsafeEnabled && x != nil {
  1676  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1677  		if ms.LoadMessageInfo() == nil {
  1678  			ms.StoreMessageInfo(mi)
  1679  		}
  1680  		return ms
  1681  	}
  1682  	return mi.MessageOf(x)
  1683  }
  1684  
  1685  // Deprecated: Use ReviewerStatusMap.ProtoReflect.Descriptor instead.
  1686  func (*ReviewerStatusMap) Descriptor() ([]byte, []int) {
  1687  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{7}
  1688  }
  1689  
  1690  func (x *ReviewerStatusMap) GetReviewers() []*AccountInfo {
  1691  	if x != nil {
  1692  		return x.Reviewers
  1693  	}
  1694  	return nil
  1695  }
  1696  
  1697  func (x *ReviewerStatusMap) GetCcs() []*AccountInfo {
  1698  	if x != nil {
  1699  		return x.Ccs
  1700  	}
  1701  	return nil
  1702  }
  1703  
  1704  func (x *ReviewerStatusMap) GetRemoved() []*AccountInfo {
  1705  	if x != nil {
  1706  		return x.Removed
  1707  	}
  1708  	return nil
  1709  }
  1710  
  1711  // Information about a patch set.
  1712  //
  1713  // Source of truth:
  1714  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#revision-info
  1715  type RevisionInfo struct {
  1716  	state         protoimpl.MessageState
  1717  	sizeCache     protoimpl.SizeCache
  1718  	unknownFields protoimpl.UnknownFields
  1719  
  1720  	// The kind of this patch set.
  1721  	Kind RevisionInfo_Kind `protobuf:"varint,1,opt,name=kind,proto3,enum=gerrit.RevisionInfo_Kind" json:"kind,omitempty"`
  1722  	// The patch set number.
  1723  	Number int32 `protobuf:"varint,2,opt,name=number,proto3" json:"number,omitempty"`
  1724  	// The uploader of this patch set.
  1725  	Uploader *AccountInfo `protobuf:"bytes,3,opt,name=uploader,proto3" json:"uploader,omitempty"`
  1726  	// The Git reference for the patch set.
  1727  	Ref string `protobuf:"bytes,4,opt,name=ref,proto3" json:"ref,omitempty"`
  1728  	// The timestamp of when the patch set was created.
  1729  	Created *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=created,proto3" json:"created,omitempty"`
  1730  	// The description (aka title) of this patchset, as displayed in the patchset
  1731  	// selector menu.
  1732  	//
  1733  	// Gerrit distinguishes empty string and no value, but here both are clamped
  1734  	// into "".
  1735  	//
  1736  	// This is not CL description, aka Git commit message, which is stored in
  1737  	// `commit.message`.
  1738  	Description string `protobuf:"bytes,8,opt,name=description,proto3" json:"description,omitempty"`
  1739  	// The commit metadata for the patchset.
  1740  	//
  1741  	// Only set if commit information is requested.
  1742  	Commit *CommitInfo `protobuf:"bytes,5,opt,name=commit,proto3" json:"commit,omitempty"`
  1743  	// A map of file paths to FileInfos.
  1744  	//
  1745  	// Only set if file information is requested.
  1746  	Files map[string]*FileInfo `protobuf:"bytes,6,rep,name=files,proto3" json:"files,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1747  }
  1748  
  1749  func (x *RevisionInfo) Reset() {
  1750  	*x = RevisionInfo{}
  1751  	if protoimpl.UnsafeEnabled {
  1752  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[8]
  1753  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1754  		ms.StoreMessageInfo(mi)
  1755  	}
  1756  }
  1757  
  1758  func (x *RevisionInfo) String() string {
  1759  	return protoimpl.X.MessageStringOf(x)
  1760  }
  1761  
  1762  func (*RevisionInfo) ProtoMessage() {}
  1763  
  1764  func (x *RevisionInfo) ProtoReflect() protoreflect.Message {
  1765  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[8]
  1766  	if protoimpl.UnsafeEnabled && x != nil {
  1767  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1768  		if ms.LoadMessageInfo() == nil {
  1769  			ms.StoreMessageInfo(mi)
  1770  		}
  1771  		return ms
  1772  	}
  1773  	return mi.MessageOf(x)
  1774  }
  1775  
  1776  // Deprecated: Use RevisionInfo.ProtoReflect.Descriptor instead.
  1777  func (*RevisionInfo) Descriptor() ([]byte, []int) {
  1778  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{8}
  1779  }
  1780  
  1781  func (x *RevisionInfo) GetKind() RevisionInfo_Kind {
  1782  	if x != nil {
  1783  		return x.Kind
  1784  	}
  1785  	return RevisionInfo_KIND_INVALID
  1786  }
  1787  
  1788  func (x *RevisionInfo) GetNumber() int32 {
  1789  	if x != nil {
  1790  		return x.Number
  1791  	}
  1792  	return 0
  1793  }
  1794  
  1795  func (x *RevisionInfo) GetUploader() *AccountInfo {
  1796  	if x != nil {
  1797  		return x.Uploader
  1798  	}
  1799  	return nil
  1800  }
  1801  
  1802  func (x *RevisionInfo) GetRef() string {
  1803  	if x != nil {
  1804  		return x.Ref
  1805  	}
  1806  	return ""
  1807  }
  1808  
  1809  func (x *RevisionInfo) GetCreated() *timestamppb.Timestamp {
  1810  	if x != nil {
  1811  		return x.Created
  1812  	}
  1813  	return nil
  1814  }
  1815  
  1816  func (x *RevisionInfo) GetDescription() string {
  1817  	if x != nil {
  1818  		return x.Description
  1819  	}
  1820  	return ""
  1821  }
  1822  
  1823  func (x *RevisionInfo) GetCommit() *CommitInfo {
  1824  	if x != nil {
  1825  		return x.Commit
  1826  	}
  1827  	return nil
  1828  }
  1829  
  1830  func (x *RevisionInfo) GetFiles() map[string]*FileInfo {
  1831  	if x != nil {
  1832  		return x.Files
  1833  	}
  1834  	return nil
  1835  }
  1836  
  1837  // The CommitInfo entity contains information about a commit.
  1838  //
  1839  // Source of truth:
  1840  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#commit-info
  1841  type CommitInfo struct {
  1842  	state         protoimpl.MessageState
  1843  	sizeCache     protoimpl.SizeCache
  1844  	unknownFields protoimpl.UnknownFields
  1845  
  1846  	// The commit ID. Not set if included in a RevisionInfo entity that is
  1847  	// contained in a map which has the commit ID as key.
  1848  	Id      string               `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  1849  	Parents []*CommitInfo_Parent `protobuf:"bytes,2,rep,name=parents,proto3" json:"parents,omitempty"`
  1850  	// The commit message.
  1851  	// It is not set when CommitInfo is part of the GetRelatedChangesResponse.
  1852  	Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
  1853  	// The author of the commit as a GitPersonInfo entity.
  1854  	Author *GitPersonInfo `protobuf:"bytes,4,opt,name=author,proto3" json:"author,omitempty"`
  1855  }
  1856  
  1857  func (x *CommitInfo) Reset() {
  1858  	*x = CommitInfo{}
  1859  	if protoimpl.UnsafeEnabled {
  1860  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[9]
  1861  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1862  		ms.StoreMessageInfo(mi)
  1863  	}
  1864  }
  1865  
  1866  func (x *CommitInfo) String() string {
  1867  	return protoimpl.X.MessageStringOf(x)
  1868  }
  1869  
  1870  func (*CommitInfo) ProtoMessage() {}
  1871  
  1872  func (x *CommitInfo) ProtoReflect() protoreflect.Message {
  1873  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[9]
  1874  	if protoimpl.UnsafeEnabled && x != nil {
  1875  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1876  		if ms.LoadMessageInfo() == nil {
  1877  			ms.StoreMessageInfo(mi)
  1878  		}
  1879  		return ms
  1880  	}
  1881  	return mi.MessageOf(x)
  1882  }
  1883  
  1884  // Deprecated: Use CommitInfo.ProtoReflect.Descriptor instead.
  1885  func (*CommitInfo) Descriptor() ([]byte, []int) {
  1886  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{9}
  1887  }
  1888  
  1889  func (x *CommitInfo) GetId() string {
  1890  	if x != nil {
  1891  		return x.Id
  1892  	}
  1893  	return ""
  1894  }
  1895  
  1896  func (x *CommitInfo) GetParents() []*CommitInfo_Parent {
  1897  	if x != nil {
  1898  		return x.Parents
  1899  	}
  1900  	return nil
  1901  }
  1902  
  1903  func (x *CommitInfo) GetMessage() string {
  1904  	if x != nil {
  1905  		return x.Message
  1906  	}
  1907  	return ""
  1908  }
  1909  
  1910  func (x *CommitInfo) GetAuthor() *GitPersonInfo {
  1911  	if x != nil {
  1912  		return x.Author
  1913  	}
  1914  	return nil
  1915  }
  1916  
  1917  // Information about a Label.
  1918  //
  1919  // Source of truth:
  1920  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#label-info
  1921  type LabelInfo struct {
  1922  	state         protoimpl.MessageState
  1923  	sizeCache     protoimpl.SizeCache
  1924  	unknownFields protoimpl.UnknownFields
  1925  
  1926  	// Whether the label is optional.
  1927  	Optional bool `protobuf:"varint,1,opt,name=optional,proto3" json:"optional,omitempty"`
  1928  	// One user who approved this label on the change.
  1929  	//
  1930  	// Only set if LABELS are requested.
  1931  	Approved *AccountInfo `protobuf:"bytes,2,opt,name=approved,proto3" json:"approved,omitempty"`
  1932  	// One user who rejected this label on the change.
  1933  	//
  1934  	// Only set if LABELS are requested.
  1935  	Rejected *AccountInfo `protobuf:"bytes,3,opt,name=rejected,proto3" json:"rejected,omitempty"`
  1936  	// One user who recommended this label on the change.
  1937  	//
  1938  	// Only set if LABELS are requested.
  1939  	Recommended *AccountInfo `protobuf:"bytes,4,opt,name=recommended,proto3" json:"recommended,omitempty"`
  1940  	// One user who disliked this label on the change.
  1941  	//
  1942  	// Only set if LABELS are requested.
  1943  	Disliked *AccountInfo `protobuf:"bytes,5,opt,name=disliked,proto3" json:"disliked,omitempty"`
  1944  	// If true, the label blocks submit operation.
  1945  	//
  1946  	// Only set if LABELS are requested.
  1947  	Blocking bool `protobuf:"varint,6,opt,name=blocking,proto3" json:"blocking,omitempty"`
  1948  	// The voting value of the user who recommended/disliked this label on the
  1949  	// change if it is not "+1"/"-1".
  1950  	//
  1951  	// Only set if LABELS are requested.
  1952  	Value int32 `protobuf:"varint,7,opt,name=value,proto3" json:"value,omitempty"`
  1953  	// The default voting value for the label.
  1954  	//
  1955  	// Only set if LABELS are requested.
  1956  	DefaultValue int32 `protobuf:"varint,8,opt,name=default_value,json=defaultValue,proto3" json:"default_value,omitempty"`
  1957  	// List of all votes for this label.
  1958  	//
  1959  	// Items in this list may not represent actual votes cast by users; if a user
  1960  	// votes on any label, a corresponding ApprovalInfo will appear in this list
  1961  	// for all labels.
  1962  	//
  1963  	// Only set if DETAILED_LABELS are requested.
  1964  	All []*ApprovalInfo `protobuf:"bytes,9,rep,name=all,proto3" json:"all,omitempty"`
  1965  	// A map of all values that are allowed for this label to their descriptions.
  1966  	//
  1967  	// Only set if DETAILED_LABELS are requested.
  1968  	Values map[int32]string `protobuf:"bytes,10,rep,name=values,proto3" json:"values,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1969  }
  1970  
  1971  func (x *LabelInfo) Reset() {
  1972  	*x = LabelInfo{}
  1973  	if protoimpl.UnsafeEnabled {
  1974  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[10]
  1975  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1976  		ms.StoreMessageInfo(mi)
  1977  	}
  1978  }
  1979  
  1980  func (x *LabelInfo) String() string {
  1981  	return protoimpl.X.MessageStringOf(x)
  1982  }
  1983  
  1984  func (*LabelInfo) ProtoMessage() {}
  1985  
  1986  func (x *LabelInfo) ProtoReflect() protoreflect.Message {
  1987  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[10]
  1988  	if protoimpl.UnsafeEnabled && x != nil {
  1989  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1990  		if ms.LoadMessageInfo() == nil {
  1991  			ms.StoreMessageInfo(mi)
  1992  		}
  1993  		return ms
  1994  	}
  1995  	return mi.MessageOf(x)
  1996  }
  1997  
  1998  // Deprecated: Use LabelInfo.ProtoReflect.Descriptor instead.
  1999  func (*LabelInfo) Descriptor() ([]byte, []int) {
  2000  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{10}
  2001  }
  2002  
  2003  func (x *LabelInfo) GetOptional() bool {
  2004  	if x != nil {
  2005  		return x.Optional
  2006  	}
  2007  	return false
  2008  }
  2009  
  2010  func (x *LabelInfo) GetApproved() *AccountInfo {
  2011  	if x != nil {
  2012  		return x.Approved
  2013  	}
  2014  	return nil
  2015  }
  2016  
  2017  func (x *LabelInfo) GetRejected() *AccountInfo {
  2018  	if x != nil {
  2019  		return x.Rejected
  2020  	}
  2021  	return nil
  2022  }
  2023  
  2024  func (x *LabelInfo) GetRecommended() *AccountInfo {
  2025  	if x != nil {
  2026  		return x.Recommended
  2027  	}
  2028  	return nil
  2029  }
  2030  
  2031  func (x *LabelInfo) GetDisliked() *AccountInfo {
  2032  	if x != nil {
  2033  		return x.Disliked
  2034  	}
  2035  	return nil
  2036  }
  2037  
  2038  func (x *LabelInfo) GetBlocking() bool {
  2039  	if x != nil {
  2040  		return x.Blocking
  2041  	}
  2042  	return false
  2043  }
  2044  
  2045  func (x *LabelInfo) GetValue() int32 {
  2046  	if x != nil {
  2047  		return x.Value
  2048  	}
  2049  	return 0
  2050  }
  2051  
  2052  func (x *LabelInfo) GetDefaultValue() int32 {
  2053  	if x != nil {
  2054  		return x.DefaultValue
  2055  	}
  2056  	return 0
  2057  }
  2058  
  2059  func (x *LabelInfo) GetAll() []*ApprovalInfo {
  2060  	if x != nil {
  2061  		return x.All
  2062  	}
  2063  	return nil
  2064  }
  2065  
  2066  func (x *LabelInfo) GetValues() map[int32]string {
  2067  	if x != nil {
  2068  		return x.Values
  2069  	}
  2070  	return nil
  2071  }
  2072  
  2073  // Information about an approval from a user for a label on a change.
  2074  //
  2075  // Source of truth:
  2076  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#approval-info
  2077  type ApprovalInfo struct {
  2078  	state         protoimpl.MessageState
  2079  	sizeCache     protoimpl.SizeCache
  2080  	unknownFields protoimpl.UnknownFields
  2081  
  2082  	// User who did the approval.
  2083  	User *AccountInfo `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"`
  2084  	// The vote that the user has given for the label.
  2085  	Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
  2086  	// The range of votes the user is authorized to vote on that label.
  2087  	//
  2088  	// If absent, the user is not permitted to vote on that label.
  2089  	PermittedVotingRange *VotingRangeInfo `protobuf:"bytes,3,opt,name=permitted_voting_range,json=permittedVotingRange,proto3" json:"permitted_voting_range,omitempty"`
  2090  	// The time and date describing when the approval was made.
  2091  	Date *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=date,proto3" json:"date,omitempty"`
  2092  	// Value of the tag field from ReviewInput set while posting the review.
  2093  	Tag string `protobuf:"bytes,5,opt,name=tag,proto3" json:"tag,omitempty"`
  2094  	// If true, this vote was made after the change was submitted.
  2095  	PostSubmit bool `protobuf:"varint,6,opt,name=post_submit,json=postSubmit,proto3" json:"post_submit,omitempty"`
  2096  }
  2097  
  2098  func (x *ApprovalInfo) Reset() {
  2099  	*x = ApprovalInfo{}
  2100  	if protoimpl.UnsafeEnabled {
  2101  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[11]
  2102  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2103  		ms.StoreMessageInfo(mi)
  2104  	}
  2105  }
  2106  
  2107  func (x *ApprovalInfo) String() string {
  2108  	return protoimpl.X.MessageStringOf(x)
  2109  }
  2110  
  2111  func (*ApprovalInfo) ProtoMessage() {}
  2112  
  2113  func (x *ApprovalInfo) ProtoReflect() protoreflect.Message {
  2114  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[11]
  2115  	if protoimpl.UnsafeEnabled && x != nil {
  2116  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2117  		if ms.LoadMessageInfo() == nil {
  2118  			ms.StoreMessageInfo(mi)
  2119  		}
  2120  		return ms
  2121  	}
  2122  	return mi.MessageOf(x)
  2123  }
  2124  
  2125  // Deprecated: Use ApprovalInfo.ProtoReflect.Descriptor instead.
  2126  func (*ApprovalInfo) Descriptor() ([]byte, []int) {
  2127  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{11}
  2128  }
  2129  
  2130  func (x *ApprovalInfo) GetUser() *AccountInfo {
  2131  	if x != nil {
  2132  		return x.User
  2133  	}
  2134  	return nil
  2135  }
  2136  
  2137  func (x *ApprovalInfo) GetValue() int32 {
  2138  	if x != nil {
  2139  		return x.Value
  2140  	}
  2141  	return 0
  2142  }
  2143  
  2144  func (x *ApprovalInfo) GetPermittedVotingRange() *VotingRangeInfo {
  2145  	if x != nil {
  2146  		return x.PermittedVotingRange
  2147  	}
  2148  	return nil
  2149  }
  2150  
  2151  func (x *ApprovalInfo) GetDate() *timestamppb.Timestamp {
  2152  	if x != nil {
  2153  		return x.Date
  2154  	}
  2155  	return nil
  2156  }
  2157  
  2158  func (x *ApprovalInfo) GetTag() string {
  2159  	if x != nil {
  2160  		return x.Tag
  2161  	}
  2162  	return ""
  2163  }
  2164  
  2165  func (x *ApprovalInfo) GetPostSubmit() bool {
  2166  	if x != nil {
  2167  		return x.PostSubmit
  2168  	}
  2169  	return false
  2170  }
  2171  
  2172  // VotingRangeInfo describes the continuous voting range from min to max values.
  2173  //
  2174  // Source of truth:
  2175  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#voting-range-info
  2176  type VotingRangeInfo struct {
  2177  	state         protoimpl.MessageState
  2178  	sizeCache     protoimpl.SizeCache
  2179  	unknownFields protoimpl.UnknownFields
  2180  
  2181  	// The minimum voting value, inclusive.
  2182  	Min int32 `protobuf:"varint,1,opt,name=min,proto3" json:"min,omitempty"`
  2183  	// The maximum voting value, inclusive.
  2184  	Max int32 `protobuf:"varint,2,opt,name=max,proto3" json:"max,omitempty"`
  2185  }
  2186  
  2187  func (x *VotingRangeInfo) Reset() {
  2188  	*x = VotingRangeInfo{}
  2189  	if protoimpl.UnsafeEnabled {
  2190  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[12]
  2191  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2192  		ms.StoreMessageInfo(mi)
  2193  	}
  2194  }
  2195  
  2196  func (x *VotingRangeInfo) String() string {
  2197  	return protoimpl.X.MessageStringOf(x)
  2198  }
  2199  
  2200  func (*VotingRangeInfo) ProtoMessage() {}
  2201  
  2202  func (x *VotingRangeInfo) ProtoReflect() protoreflect.Message {
  2203  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[12]
  2204  	if protoimpl.UnsafeEnabled && x != nil {
  2205  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2206  		if ms.LoadMessageInfo() == nil {
  2207  			ms.StoreMessageInfo(mi)
  2208  		}
  2209  		return ms
  2210  	}
  2211  	return mi.MessageOf(x)
  2212  }
  2213  
  2214  // Deprecated: Use VotingRangeInfo.ProtoReflect.Descriptor instead.
  2215  func (*VotingRangeInfo) Descriptor() ([]byte, []int) {
  2216  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{12}
  2217  }
  2218  
  2219  func (x *VotingRangeInfo) GetMin() int32 {
  2220  	if x != nil {
  2221  		return x.Min
  2222  	}
  2223  	return 0
  2224  }
  2225  
  2226  func (x *VotingRangeInfo) GetMax() int32 {
  2227  	if x != nil {
  2228  		return x.Max
  2229  	}
  2230  	return 0
  2231  }
  2232  
  2233  // Information about a message attached to change.
  2234  //
  2235  // Source of truth:
  2236  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#change-message-info
  2237  type ChangeMessageInfo struct {
  2238  	state         protoimpl.MessageState
  2239  	sizeCache     protoimpl.SizeCache
  2240  	unknownFields protoimpl.UnknownFields
  2241  
  2242  	// The ID of the message
  2243  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  2244  	// Author of the message.
  2245  	//
  2246  	// Unset if written by the Gerrit system.
  2247  	Author *AccountInfo `protobuf:"bytes,2,opt,name=author,proto3" json:"author,omitempty"`
  2248  	// Real author of the message.
  2249  	//
  2250  	// Set if the message was posted on behalf of another user.
  2251  	RealAuthor *AccountInfo `protobuf:"bytes,3,opt,name=real_author,json=realAuthor,proto3" json:"real_author,omitempty"`
  2252  	// The timestamp this message was posted.
  2253  	Date *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=date,proto3" json:"date,omitempty"`
  2254  	// The text left by the user.
  2255  	Message string `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
  2256  	// Value of the tag field from ReviewInput set while posting the review
  2257  	Tag string `protobuf:"bytes,6,opt,name=tag,proto3" json:"tag,omitempty"`
  2258  }
  2259  
  2260  func (x *ChangeMessageInfo) Reset() {
  2261  	*x = ChangeMessageInfo{}
  2262  	if protoimpl.UnsafeEnabled {
  2263  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[13]
  2264  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2265  		ms.StoreMessageInfo(mi)
  2266  	}
  2267  }
  2268  
  2269  func (x *ChangeMessageInfo) String() string {
  2270  	return protoimpl.X.MessageStringOf(x)
  2271  }
  2272  
  2273  func (*ChangeMessageInfo) ProtoMessage() {}
  2274  
  2275  func (x *ChangeMessageInfo) ProtoReflect() protoreflect.Message {
  2276  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[13]
  2277  	if protoimpl.UnsafeEnabled && x != nil {
  2278  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2279  		if ms.LoadMessageInfo() == nil {
  2280  			ms.StoreMessageInfo(mi)
  2281  		}
  2282  		return ms
  2283  	}
  2284  	return mi.MessageOf(x)
  2285  }
  2286  
  2287  // Deprecated: Use ChangeMessageInfo.ProtoReflect.Descriptor instead.
  2288  func (*ChangeMessageInfo) Descriptor() ([]byte, []int) {
  2289  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{13}
  2290  }
  2291  
  2292  func (x *ChangeMessageInfo) GetId() string {
  2293  	if x != nil {
  2294  		return x.Id
  2295  	}
  2296  	return ""
  2297  }
  2298  
  2299  func (x *ChangeMessageInfo) GetAuthor() *AccountInfo {
  2300  	if x != nil {
  2301  		return x.Author
  2302  	}
  2303  	return nil
  2304  }
  2305  
  2306  func (x *ChangeMessageInfo) GetRealAuthor() *AccountInfo {
  2307  	if x != nil {
  2308  		return x.RealAuthor
  2309  	}
  2310  	return nil
  2311  }
  2312  
  2313  func (x *ChangeMessageInfo) GetDate() *timestamppb.Timestamp {
  2314  	if x != nil {
  2315  		return x.Date
  2316  	}
  2317  	return nil
  2318  }
  2319  
  2320  func (x *ChangeMessageInfo) GetMessage() string {
  2321  	if x != nil {
  2322  		return x.Message
  2323  	}
  2324  	return ""
  2325  }
  2326  
  2327  func (x *ChangeMessageInfo) GetTag() string {
  2328  	if x != nil {
  2329  		return x.Tag
  2330  	}
  2331  	return ""
  2332  }
  2333  
  2334  // The Requirement entity contains information about a requirement relative to a
  2335  // change.
  2336  //
  2337  // The requirement explains what has to happen before the change will be
  2338  // submittable, e.g. owners CR+2 vote.
  2339  //
  2340  // Source of truth:
  2341  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#requirement
  2342  type Requirement struct {
  2343  	state         protoimpl.MessageState
  2344  	sizeCache     protoimpl.SizeCache
  2345  	unknownFields protoimpl.UnknownFields
  2346  
  2347  	Status Requirement_Status `protobuf:"varint,1,opt,name=status,proto3,enum=gerrit.Requirement_Status" json:"status,omitempty"`
  2348  	// A human readable reason.
  2349  	FallbackText string `protobuf:"bytes,2,opt,name=fallback_text,json=fallbackText,proto3" json:"fallback_text,omitempty"`
  2350  	// Alphanumerical (plus hyphens or underscores) string to identify what the
  2351  	// requirement is and why it was triggered. Can be seen as a class:
  2352  	// requirements sharing the same type were created for a similar reason, and
  2353  	// the data structure will follow one set of rules.
  2354  	Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
  2355  }
  2356  
  2357  func (x *Requirement) Reset() {
  2358  	*x = Requirement{}
  2359  	if protoimpl.UnsafeEnabled {
  2360  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[14]
  2361  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2362  		ms.StoreMessageInfo(mi)
  2363  	}
  2364  }
  2365  
  2366  func (x *Requirement) String() string {
  2367  	return protoimpl.X.MessageStringOf(x)
  2368  }
  2369  
  2370  func (*Requirement) ProtoMessage() {}
  2371  
  2372  func (x *Requirement) ProtoReflect() protoreflect.Message {
  2373  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[14]
  2374  	if protoimpl.UnsafeEnabled && x != nil {
  2375  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2376  		if ms.LoadMessageInfo() == nil {
  2377  			ms.StoreMessageInfo(mi)
  2378  		}
  2379  		return ms
  2380  	}
  2381  	return mi.MessageOf(x)
  2382  }
  2383  
  2384  // Deprecated: Use Requirement.ProtoReflect.Descriptor instead.
  2385  func (*Requirement) Descriptor() ([]byte, []int) {
  2386  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{14}
  2387  }
  2388  
  2389  func (x *Requirement) GetStatus() Requirement_Status {
  2390  	if x != nil {
  2391  		return x.Status
  2392  	}
  2393  	return Requirement_REQUIREMENT_STATUS_UNSPECIFIED
  2394  }
  2395  
  2396  func (x *Requirement) GetFallbackText() string {
  2397  	if x != nil {
  2398  		return x.FallbackText
  2399  	}
  2400  	return ""
  2401  }
  2402  
  2403  func (x *Requirement) GetType() string {
  2404  	if x != nil {
  2405  		return x.Type
  2406  	}
  2407  	return ""
  2408  }
  2409  
  2410  // Information about a file in a patch set.
  2411  //
  2412  // Source of truth:
  2413  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#file-info
  2414  type FileInfo struct {
  2415  	state         protoimpl.MessageState
  2416  	sizeCache     protoimpl.SizeCache
  2417  	unknownFields protoimpl.UnknownFields
  2418  
  2419  	// Status of the file.
  2420  	Status FileInfo_Status `protobuf:"varint,1,opt,name=status,proto3,enum=gerrit.FileInfo_Status" json:"status,omitempty"`
  2421  	// Whether the file is binary.
  2422  	Binary bool `protobuf:"varint,2,opt,name=binary,proto3" json:"binary,omitempty"`
  2423  	// The old file path; only set if renamed or copied.
  2424  	OldPath string `protobuf:"bytes,3,opt,name=old_path,json=oldPath,proto3" json:"old_path,omitempty"`
  2425  	// Number of lines inserted.
  2426  	LinesInserted int32 `protobuf:"varint,4,opt,name=lines_inserted,json=linesInserted,proto3" json:"lines_inserted,omitempty"`
  2427  	// Number of lines deleted.
  2428  	LinesDeleted int32 `protobuf:"varint,5,opt,name=lines_deleted,json=linesDeleted,proto3" json:"lines_deleted,omitempty"`
  2429  	// Number of bytes by which the file size increased/decreased.
  2430  	SizeDelta int64 `protobuf:"varint,6,opt,name=size_delta,json=sizeDelta,proto3" json:"size_delta,omitempty"`
  2431  	// File size in bytes.
  2432  	Size int64 `protobuf:"varint,7,opt,name=size,proto3" json:"size,omitempty"`
  2433  }
  2434  
  2435  func (x *FileInfo) Reset() {
  2436  	*x = FileInfo{}
  2437  	if protoimpl.UnsafeEnabled {
  2438  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[15]
  2439  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2440  		ms.StoreMessageInfo(mi)
  2441  	}
  2442  }
  2443  
  2444  func (x *FileInfo) String() string {
  2445  	return protoimpl.X.MessageStringOf(x)
  2446  }
  2447  
  2448  func (*FileInfo) ProtoMessage() {}
  2449  
  2450  func (x *FileInfo) ProtoReflect() protoreflect.Message {
  2451  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[15]
  2452  	if protoimpl.UnsafeEnabled && x != nil {
  2453  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2454  		if ms.LoadMessageInfo() == nil {
  2455  			ms.StoreMessageInfo(mi)
  2456  		}
  2457  		return ms
  2458  	}
  2459  	return mi.MessageOf(x)
  2460  }
  2461  
  2462  // Deprecated: Use FileInfo.ProtoReflect.Descriptor instead.
  2463  func (*FileInfo) Descriptor() ([]byte, []int) {
  2464  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{15}
  2465  }
  2466  
  2467  func (x *FileInfo) GetStatus() FileInfo_Status {
  2468  	if x != nil {
  2469  		return x.Status
  2470  	}
  2471  	return FileInfo_M
  2472  }
  2473  
  2474  func (x *FileInfo) GetBinary() bool {
  2475  	if x != nil {
  2476  		return x.Binary
  2477  	}
  2478  	return false
  2479  }
  2480  
  2481  func (x *FileInfo) GetOldPath() string {
  2482  	if x != nil {
  2483  		return x.OldPath
  2484  	}
  2485  	return ""
  2486  }
  2487  
  2488  func (x *FileInfo) GetLinesInserted() int32 {
  2489  	if x != nil {
  2490  		return x.LinesInserted
  2491  	}
  2492  	return 0
  2493  }
  2494  
  2495  func (x *FileInfo) GetLinesDeleted() int32 {
  2496  	if x != nil {
  2497  		return x.LinesDeleted
  2498  	}
  2499  	return 0
  2500  }
  2501  
  2502  func (x *FileInfo) GetSizeDelta() int64 {
  2503  	if x != nil {
  2504  		return x.SizeDelta
  2505  	}
  2506  	return 0
  2507  }
  2508  
  2509  func (x *FileInfo) GetSize() int64 {
  2510  	if x != nil {
  2511  		return x.Size
  2512  	}
  2513  	return 0
  2514  }
  2515  
  2516  // Information for creating a new change.
  2517  //
  2518  // Fields are a subset of:
  2519  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#change-input
  2520  type CreateChangeRequest struct {
  2521  	state         protoimpl.MessageState
  2522  	sizeCache     protoimpl.SizeCache
  2523  	unknownFields protoimpl.UnknownFields
  2524  
  2525  	Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
  2526  	// Ref to base the new change at. e.g. refs/heads/master
  2527  	Ref     string `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
  2528  	Subject string `protobuf:"bytes,3,opt,name=subject,proto3" json:"subject,omitempty"`
  2529  	// 40-digit hex SHA-1 of the git commit which will be the parent commit of the
  2530  	// newly created change. If set, it must be a merged commit on the destination
  2531  	// branch.
  2532  	BaseCommit string `protobuf:"bytes,4,opt,name=base_commit,json=baseCommit,proto3" json:"base_commit,omitempty"`
  2533  	Notify     Notify `protobuf:"varint,5,opt,name=notify,proto3,enum=gerrit.Notify" json:"notify,omitempty"`
  2534  }
  2535  
  2536  func (x *CreateChangeRequest) Reset() {
  2537  	*x = CreateChangeRequest{}
  2538  	if protoimpl.UnsafeEnabled {
  2539  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[16]
  2540  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2541  		ms.StoreMessageInfo(mi)
  2542  	}
  2543  }
  2544  
  2545  func (x *CreateChangeRequest) String() string {
  2546  	return protoimpl.X.MessageStringOf(x)
  2547  }
  2548  
  2549  func (*CreateChangeRequest) ProtoMessage() {}
  2550  
  2551  func (x *CreateChangeRequest) ProtoReflect() protoreflect.Message {
  2552  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[16]
  2553  	if protoimpl.UnsafeEnabled && x != nil {
  2554  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2555  		if ms.LoadMessageInfo() == nil {
  2556  			ms.StoreMessageInfo(mi)
  2557  		}
  2558  		return ms
  2559  	}
  2560  	return mi.MessageOf(x)
  2561  }
  2562  
  2563  // Deprecated: Use CreateChangeRequest.ProtoReflect.Descriptor instead.
  2564  func (*CreateChangeRequest) Descriptor() ([]byte, []int) {
  2565  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{16}
  2566  }
  2567  
  2568  func (x *CreateChangeRequest) GetProject() string {
  2569  	if x != nil {
  2570  		return x.Project
  2571  	}
  2572  	return ""
  2573  }
  2574  
  2575  func (x *CreateChangeRequest) GetRef() string {
  2576  	if x != nil {
  2577  		return x.Ref
  2578  	}
  2579  	return ""
  2580  }
  2581  
  2582  func (x *CreateChangeRequest) GetSubject() string {
  2583  	if x != nil {
  2584  		return x.Subject
  2585  	}
  2586  	return ""
  2587  }
  2588  
  2589  func (x *CreateChangeRequest) GetBaseCommit() string {
  2590  	if x != nil {
  2591  		return x.BaseCommit
  2592  	}
  2593  	return ""
  2594  }
  2595  
  2596  func (x *CreateChangeRequest) GetNotify() Notify {
  2597  	if x != nil {
  2598  		return x.Notify
  2599  	}
  2600  	return Notify_NOTIFY_UNSPECIFIED
  2601  }
  2602  
  2603  // Information to submit a change.
  2604  //
  2605  // This is a placeholder to support the arguments from:
  2606  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#submit-change
  2607  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#submit-input
  2608  type SubmitChangeRequest struct {
  2609  	state         protoimpl.MessageState
  2610  	sizeCache     protoimpl.SizeCache
  2611  	unknownFields protoimpl.UnknownFields
  2612  
  2613  	// The change number.
  2614  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  2615  	// The project of this change. For example, "chromium/src".
  2616  	//
  2617  	// Optional, but recommended for better routing and faster RPC execution.
  2618  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  2619  }
  2620  
  2621  func (x *SubmitChangeRequest) Reset() {
  2622  	*x = SubmitChangeRequest{}
  2623  	if protoimpl.UnsafeEnabled {
  2624  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[17]
  2625  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2626  		ms.StoreMessageInfo(mi)
  2627  	}
  2628  }
  2629  
  2630  func (x *SubmitChangeRequest) String() string {
  2631  	return protoimpl.X.MessageStringOf(x)
  2632  }
  2633  
  2634  func (*SubmitChangeRequest) ProtoMessage() {}
  2635  
  2636  func (x *SubmitChangeRequest) ProtoReflect() protoreflect.Message {
  2637  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[17]
  2638  	if protoimpl.UnsafeEnabled && x != nil {
  2639  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2640  		if ms.LoadMessageInfo() == nil {
  2641  			ms.StoreMessageInfo(mi)
  2642  		}
  2643  		return ms
  2644  	}
  2645  	return mi.MessageOf(x)
  2646  }
  2647  
  2648  // Deprecated: Use SubmitChangeRequest.ProtoReflect.Descriptor instead.
  2649  func (*SubmitChangeRequest) Descriptor() ([]byte, []int) {
  2650  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{17}
  2651  }
  2652  
  2653  func (x *SubmitChangeRequest) GetNumber() int64 {
  2654  	if x != nil {
  2655  		return x.Number
  2656  	}
  2657  	return 0
  2658  }
  2659  
  2660  func (x *SubmitChangeRequest) GetProject() string {
  2661  	if x != nil {
  2662  		return x.Project
  2663  	}
  2664  	return ""
  2665  }
  2666  
  2667  // Information to submit a specific revision of a change.
  2668  //
  2669  // Fields encode the path arguments of
  2670  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#submit-revision
  2671  type SubmitRevisionRequest struct {
  2672  	state         protoimpl.MessageState
  2673  	sizeCache     protoimpl.SizeCache
  2674  	unknownFields protoimpl.UnknownFields
  2675  
  2676  	// The change number.
  2677  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  2678  	// Unique ID that identifies one revision of this change.
  2679  	//
  2680  	// Source of truth:
  2681  	// https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#revision-id
  2682  	RevisionId string `protobuf:"bytes,2,opt,name=revision_id,json=revisionId,proto3" json:"revision_id,omitempty"`
  2683  	// The project of this change. For example, "chromium/src".
  2684  	//
  2685  	// Optional, but recommended for better routing and faster RPC execution.
  2686  	Project string `protobuf:"bytes,5,opt,name=project,proto3" json:"project,omitempty"`
  2687  }
  2688  
  2689  func (x *SubmitRevisionRequest) Reset() {
  2690  	*x = SubmitRevisionRequest{}
  2691  	if protoimpl.UnsafeEnabled {
  2692  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[18]
  2693  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2694  		ms.StoreMessageInfo(mi)
  2695  	}
  2696  }
  2697  
  2698  func (x *SubmitRevisionRequest) String() string {
  2699  	return protoimpl.X.MessageStringOf(x)
  2700  }
  2701  
  2702  func (*SubmitRevisionRequest) ProtoMessage() {}
  2703  
  2704  func (x *SubmitRevisionRequest) ProtoReflect() protoreflect.Message {
  2705  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[18]
  2706  	if protoimpl.UnsafeEnabled && x != nil {
  2707  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2708  		if ms.LoadMessageInfo() == nil {
  2709  			ms.StoreMessageInfo(mi)
  2710  		}
  2711  		return ms
  2712  	}
  2713  	return mi.MessageOf(x)
  2714  }
  2715  
  2716  // Deprecated: Use SubmitRevisionRequest.ProtoReflect.Descriptor instead.
  2717  func (*SubmitRevisionRequest) Descriptor() ([]byte, []int) {
  2718  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{18}
  2719  }
  2720  
  2721  func (x *SubmitRevisionRequest) GetNumber() int64 {
  2722  	if x != nil {
  2723  		return x.Number
  2724  	}
  2725  	return 0
  2726  }
  2727  
  2728  func (x *SubmitRevisionRequest) GetRevisionId() string {
  2729  	if x != nil {
  2730  		return x.RevisionId
  2731  	}
  2732  	return ""
  2733  }
  2734  
  2735  func (x *SubmitRevisionRequest) GetProject() string {
  2736  	if x != nil {
  2737  		return x.Project
  2738  	}
  2739  	return ""
  2740  }
  2741  
  2742  // Information about the change status after submitting.
  2743  //
  2744  // Source of truth:
  2745  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#submit-info
  2746  type SubmitInfo struct {
  2747  	state         protoimpl.MessageState
  2748  	sizeCache     protoimpl.SizeCache
  2749  	unknownFields protoimpl.UnknownFields
  2750  
  2751  	// The status of the change after submitting is MERGED.
  2752  	Status ChangeStatus `protobuf:"varint,1,opt,name=status,proto3,enum=gerrit.ChangeStatus" json:"status,omitempty"`
  2753  }
  2754  
  2755  func (x *SubmitInfo) Reset() {
  2756  	*x = SubmitInfo{}
  2757  	if protoimpl.UnsafeEnabled {
  2758  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[19]
  2759  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2760  		ms.StoreMessageInfo(mi)
  2761  	}
  2762  }
  2763  
  2764  func (x *SubmitInfo) String() string {
  2765  	return protoimpl.X.MessageStringOf(x)
  2766  }
  2767  
  2768  func (*SubmitInfo) ProtoMessage() {}
  2769  
  2770  func (x *SubmitInfo) ProtoReflect() protoreflect.Message {
  2771  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[19]
  2772  	if protoimpl.UnsafeEnabled && x != nil {
  2773  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2774  		if ms.LoadMessageInfo() == nil {
  2775  			ms.StoreMessageInfo(mi)
  2776  		}
  2777  		return ms
  2778  	}
  2779  	return mi.MessageOf(x)
  2780  }
  2781  
  2782  // Deprecated: Use SubmitInfo.ProtoReflect.Descriptor instead.
  2783  func (*SubmitInfo) Descriptor() ([]byte, []int) {
  2784  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{19}
  2785  }
  2786  
  2787  func (x *SubmitInfo) GetStatus() ChangeStatus {
  2788  	if x != nil {
  2789  		return x.Status
  2790  	}
  2791  	return ChangeStatus_CHANGE_STATUS_INVALID
  2792  }
  2793  
  2794  // Information for changing contents of single file in a change edit.
  2795  //
  2796  // Fields encode the path arguments of
  2797  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#put-edit-file
  2798  type ChangeEditFileContentRequest struct {
  2799  	state         protoimpl.MessageState
  2800  	sizeCache     protoimpl.SizeCache
  2801  	unknownFields protoimpl.UnknownFields
  2802  
  2803  	// The change number.
  2804  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  2805  	// The project of this change. For example, "chromium/src".
  2806  	//
  2807  	// Optional, but recommended for better routing and faster RPC execution.
  2808  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  2809  	// Path to the file to edit inside the project.
  2810  	FilePath string `protobuf:"bytes,3,opt,name=file_path,json=filePath,proto3" json:"file_path,omitempty"`
  2811  	// New content of the file. Overwrites existing contents entirely.
  2812  	Content []byte `protobuf:"bytes,4,opt,name=content,proto3" json:"content,omitempty"`
  2813  }
  2814  
  2815  func (x *ChangeEditFileContentRequest) Reset() {
  2816  	*x = ChangeEditFileContentRequest{}
  2817  	if protoimpl.UnsafeEnabled {
  2818  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[20]
  2819  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2820  		ms.StoreMessageInfo(mi)
  2821  	}
  2822  }
  2823  
  2824  func (x *ChangeEditFileContentRequest) String() string {
  2825  	return protoimpl.X.MessageStringOf(x)
  2826  }
  2827  
  2828  func (*ChangeEditFileContentRequest) ProtoMessage() {}
  2829  
  2830  func (x *ChangeEditFileContentRequest) ProtoReflect() protoreflect.Message {
  2831  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[20]
  2832  	if protoimpl.UnsafeEnabled && x != nil {
  2833  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2834  		if ms.LoadMessageInfo() == nil {
  2835  			ms.StoreMessageInfo(mi)
  2836  		}
  2837  		return ms
  2838  	}
  2839  	return mi.MessageOf(x)
  2840  }
  2841  
  2842  // Deprecated: Use ChangeEditFileContentRequest.ProtoReflect.Descriptor instead.
  2843  func (*ChangeEditFileContentRequest) Descriptor() ([]byte, []int) {
  2844  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{20}
  2845  }
  2846  
  2847  func (x *ChangeEditFileContentRequest) GetNumber() int64 {
  2848  	if x != nil {
  2849  		return x.Number
  2850  	}
  2851  	return 0
  2852  }
  2853  
  2854  func (x *ChangeEditFileContentRequest) GetProject() string {
  2855  	if x != nil {
  2856  		return x.Project
  2857  	}
  2858  	return ""
  2859  }
  2860  
  2861  func (x *ChangeEditFileContentRequest) GetFilePath() string {
  2862  	if x != nil {
  2863  		return x.FilePath
  2864  	}
  2865  	return ""
  2866  }
  2867  
  2868  func (x *ChangeEditFileContentRequest) GetContent() []byte {
  2869  	if x != nil {
  2870  		return x.Content
  2871  	}
  2872  	return nil
  2873  }
  2874  
  2875  // Information for deleting contents of single file in a change edit.
  2876  //
  2877  // Fields encode the path arguments of
  2878  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#delete-edit-file
  2879  type DeleteEditFileContentRequest struct {
  2880  	state         protoimpl.MessageState
  2881  	sizeCache     protoimpl.SizeCache
  2882  	unknownFields protoimpl.UnknownFields
  2883  
  2884  	// The change number.
  2885  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  2886  	// The project of this change. For example, "chromium/src".
  2887  	//
  2888  	// Optional, but recommended for better routing and faster RPC execution.
  2889  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  2890  	// Path to the file to edit inside the project.
  2891  	FilePath string `protobuf:"bytes,3,opt,name=file_path,json=filePath,proto3" json:"file_path,omitempty"`
  2892  }
  2893  
  2894  func (x *DeleteEditFileContentRequest) Reset() {
  2895  	*x = DeleteEditFileContentRequest{}
  2896  	if protoimpl.UnsafeEnabled {
  2897  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[21]
  2898  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2899  		ms.StoreMessageInfo(mi)
  2900  	}
  2901  }
  2902  
  2903  func (x *DeleteEditFileContentRequest) String() string {
  2904  	return protoimpl.X.MessageStringOf(x)
  2905  }
  2906  
  2907  func (*DeleteEditFileContentRequest) ProtoMessage() {}
  2908  
  2909  func (x *DeleteEditFileContentRequest) ProtoReflect() protoreflect.Message {
  2910  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[21]
  2911  	if protoimpl.UnsafeEnabled && x != nil {
  2912  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2913  		if ms.LoadMessageInfo() == nil {
  2914  			ms.StoreMessageInfo(mi)
  2915  		}
  2916  		return ms
  2917  	}
  2918  	return mi.MessageOf(x)
  2919  }
  2920  
  2921  // Deprecated: Use DeleteEditFileContentRequest.ProtoReflect.Descriptor instead.
  2922  func (*DeleteEditFileContentRequest) Descriptor() ([]byte, []int) {
  2923  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{21}
  2924  }
  2925  
  2926  func (x *DeleteEditFileContentRequest) GetNumber() int64 {
  2927  	if x != nil {
  2928  		return x.Number
  2929  	}
  2930  	return 0
  2931  }
  2932  
  2933  func (x *DeleteEditFileContentRequest) GetProject() string {
  2934  	if x != nil {
  2935  		return x.Project
  2936  	}
  2937  	return ""
  2938  }
  2939  
  2940  func (x *DeleteEditFileContentRequest) GetFilePath() string {
  2941  	if x != nil {
  2942  		return x.FilePath
  2943  	}
  2944  	return ""
  2945  }
  2946  
  2947  // Information for publishing a change edit.
  2948  //
  2949  // This is a placeholder to support the arguments from:
  2950  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#publish-edit
  2951  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#publish-change-edit-input
  2952  type ChangeEditPublishRequest struct {
  2953  	state         protoimpl.MessageState
  2954  	sizeCache     protoimpl.SizeCache
  2955  	unknownFields protoimpl.UnknownFields
  2956  
  2957  	// The change number.
  2958  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  2959  	// The project of this change. For example, "chromium/src".
  2960  	//
  2961  	// Optional, but recommended for better routing and faster RPC execution.
  2962  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  2963  }
  2964  
  2965  func (x *ChangeEditPublishRequest) Reset() {
  2966  	*x = ChangeEditPublishRequest{}
  2967  	if protoimpl.UnsafeEnabled {
  2968  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[22]
  2969  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2970  		ms.StoreMessageInfo(mi)
  2971  	}
  2972  }
  2973  
  2974  func (x *ChangeEditPublishRequest) String() string {
  2975  	return protoimpl.X.MessageStringOf(x)
  2976  }
  2977  
  2978  func (*ChangeEditPublishRequest) ProtoMessage() {}
  2979  
  2980  func (x *ChangeEditPublishRequest) ProtoReflect() protoreflect.Message {
  2981  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[22]
  2982  	if protoimpl.UnsafeEnabled && x != nil {
  2983  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2984  		if ms.LoadMessageInfo() == nil {
  2985  			ms.StoreMessageInfo(mi)
  2986  		}
  2987  		return ms
  2988  	}
  2989  	return mi.MessageOf(x)
  2990  }
  2991  
  2992  // Deprecated: Use ChangeEditPublishRequest.ProtoReflect.Descriptor instead.
  2993  func (*ChangeEditPublishRequest) Descriptor() ([]byte, []int) {
  2994  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{22}
  2995  }
  2996  
  2997  func (x *ChangeEditPublishRequest) GetNumber() int64 {
  2998  	if x != nil {
  2999  		return x.Number
  3000  	}
  3001  	return 0
  3002  }
  3003  
  3004  func (x *ChangeEditPublishRequest) GetProject() string {
  3005  	if x != nil {
  3006  		return x.Project
  3007  	}
  3008  	return ""
  3009  }
  3010  
  3011  // Information for reverting a change.
  3012  //
  3013  // Fields are a subset of arguments from:
  3014  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#revert-change
  3015  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#revert-input
  3016  type RevertChangeRequest struct {
  3017  	state         protoimpl.MessageState
  3018  	sizeCache     protoimpl.SizeCache
  3019  	unknownFields protoimpl.UnknownFields
  3020  
  3021  	// The change number.
  3022  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  3023  	// The project of this change. For example, "chromium/src".
  3024  	//
  3025  	// Optional, but recommended for better routing and faster RPC execution.
  3026  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  3027  	// Message to be added as review comment to the change when reverting the change.
  3028  	//
  3029  	// Optional
  3030  	Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
  3031  }
  3032  
  3033  func (x *RevertChangeRequest) Reset() {
  3034  	*x = RevertChangeRequest{}
  3035  	if protoimpl.UnsafeEnabled {
  3036  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[23]
  3037  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3038  		ms.StoreMessageInfo(mi)
  3039  	}
  3040  }
  3041  
  3042  func (x *RevertChangeRequest) String() string {
  3043  	return protoimpl.X.MessageStringOf(x)
  3044  }
  3045  
  3046  func (*RevertChangeRequest) ProtoMessage() {}
  3047  
  3048  func (x *RevertChangeRequest) ProtoReflect() protoreflect.Message {
  3049  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[23]
  3050  	if protoimpl.UnsafeEnabled && x != nil {
  3051  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3052  		if ms.LoadMessageInfo() == nil {
  3053  			ms.StoreMessageInfo(mi)
  3054  		}
  3055  		return ms
  3056  	}
  3057  	return mi.MessageOf(x)
  3058  }
  3059  
  3060  // Deprecated: Use RevertChangeRequest.ProtoReflect.Descriptor instead.
  3061  func (*RevertChangeRequest) Descriptor() ([]byte, []int) {
  3062  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{23}
  3063  }
  3064  
  3065  func (x *RevertChangeRequest) GetNumber() int64 {
  3066  	if x != nil {
  3067  		return x.Number
  3068  	}
  3069  	return 0
  3070  }
  3071  
  3072  func (x *RevertChangeRequest) GetProject() string {
  3073  	if x != nil {
  3074  		return x.Project
  3075  	}
  3076  	return ""
  3077  }
  3078  
  3079  func (x *RevertChangeRequest) GetMessage() string {
  3080  	if x != nil {
  3081  		return x.Message
  3082  	}
  3083  	return ""
  3084  }
  3085  
  3086  // Information for abandoning a change.
  3087  //
  3088  // Fields are a subset of arguments from:
  3089  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#abandon-change
  3090  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#abandon-input
  3091  type AbandonChangeRequest struct {
  3092  	state         protoimpl.MessageState
  3093  	sizeCache     protoimpl.SizeCache
  3094  	unknownFields protoimpl.UnknownFields
  3095  
  3096  	// The change number.
  3097  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  3098  	// The project of this change. For example, "chromium/src".
  3099  	//
  3100  	// Optional, but recommended for better routing and faster RPC execution.
  3101  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  3102  	Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
  3103  }
  3104  
  3105  func (x *AbandonChangeRequest) Reset() {
  3106  	*x = AbandonChangeRequest{}
  3107  	if protoimpl.UnsafeEnabled {
  3108  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[24]
  3109  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3110  		ms.StoreMessageInfo(mi)
  3111  	}
  3112  }
  3113  
  3114  func (x *AbandonChangeRequest) String() string {
  3115  	return protoimpl.X.MessageStringOf(x)
  3116  }
  3117  
  3118  func (*AbandonChangeRequest) ProtoMessage() {}
  3119  
  3120  func (x *AbandonChangeRequest) ProtoReflect() protoreflect.Message {
  3121  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[24]
  3122  	if protoimpl.UnsafeEnabled && x != nil {
  3123  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3124  		if ms.LoadMessageInfo() == nil {
  3125  			ms.StoreMessageInfo(mi)
  3126  		}
  3127  		return ms
  3128  	}
  3129  	return mi.MessageOf(x)
  3130  }
  3131  
  3132  // Deprecated: Use AbandonChangeRequest.ProtoReflect.Descriptor instead.
  3133  func (*AbandonChangeRequest) Descriptor() ([]byte, []int) {
  3134  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{24}
  3135  }
  3136  
  3137  func (x *AbandonChangeRequest) GetNumber() int64 {
  3138  	if x != nil {
  3139  		return x.Number
  3140  	}
  3141  	return 0
  3142  }
  3143  
  3144  func (x *AbandonChangeRequest) GetProject() string {
  3145  	if x != nil {
  3146  		return x.Project
  3147  	}
  3148  	return ""
  3149  }
  3150  
  3151  func (x *AbandonChangeRequest) GetMessage() string {
  3152  	if x != nil {
  3153  		return x.Message
  3154  	}
  3155  	return ""
  3156  }
  3157  
  3158  // Information for adding a reviewer.
  3159  //
  3160  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#add-reviewer
  3161  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#reviewer-input
  3162  type AddReviewerRequest struct {
  3163  	state         protoimpl.MessageState
  3164  	sizeCache     protoimpl.SizeCache
  3165  	unknownFields protoimpl.UnknownFields
  3166  
  3167  	// The change number.
  3168  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  3169  	// The project of this change. For example, "chromium/src".
  3170  	//
  3171  	// Optional, but recommended for better routing and faster RPC execution.
  3172  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  3173  	// The ID of a single account or group to review the change.
  3174  	//
  3175  	// https://gerrit-review.googlesource.com/Documentation/rest-api-accounts.html#account-id
  3176  	Reviewer string `protobuf:"bytes,3,opt,name=reviewer,proto3" json:"reviewer,omitempty"`
  3177  	// The state to add reviewer in, defaults to REVIEWER.
  3178  	State AddReviewerRequest_State `protobuf:"varint,4,opt,name=state,proto3,enum=gerrit.AddReviewerRequest_State" json:"state,omitempty"`
  3179  	// Whether adding the reviewer is confirmed.
  3180  	Confirmed bool `protobuf:"varint,5,opt,name=confirmed,proto3" json:"confirmed,omitempty"`
  3181  	// Defines who should be notified after reviewer is added, defaults to ALL.
  3182  	Notify Notify `protobuf:"varint,6,opt,name=notify,proto3,enum=gerrit.Notify" json:"notify,omitempty"`
  3183  }
  3184  
  3185  func (x *AddReviewerRequest) Reset() {
  3186  	*x = AddReviewerRequest{}
  3187  	if protoimpl.UnsafeEnabled {
  3188  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[25]
  3189  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3190  		ms.StoreMessageInfo(mi)
  3191  	}
  3192  }
  3193  
  3194  func (x *AddReviewerRequest) String() string {
  3195  	return protoimpl.X.MessageStringOf(x)
  3196  }
  3197  
  3198  func (*AddReviewerRequest) ProtoMessage() {}
  3199  
  3200  func (x *AddReviewerRequest) ProtoReflect() protoreflect.Message {
  3201  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[25]
  3202  	if protoimpl.UnsafeEnabled && x != nil {
  3203  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3204  		if ms.LoadMessageInfo() == nil {
  3205  			ms.StoreMessageInfo(mi)
  3206  		}
  3207  		return ms
  3208  	}
  3209  	return mi.MessageOf(x)
  3210  }
  3211  
  3212  // Deprecated: Use AddReviewerRequest.ProtoReflect.Descriptor instead.
  3213  func (*AddReviewerRequest) Descriptor() ([]byte, []int) {
  3214  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{25}
  3215  }
  3216  
  3217  func (x *AddReviewerRequest) GetNumber() int64 {
  3218  	if x != nil {
  3219  		return x.Number
  3220  	}
  3221  	return 0
  3222  }
  3223  
  3224  func (x *AddReviewerRequest) GetProject() string {
  3225  	if x != nil {
  3226  		return x.Project
  3227  	}
  3228  	return ""
  3229  }
  3230  
  3231  func (x *AddReviewerRequest) GetReviewer() string {
  3232  	if x != nil {
  3233  		return x.Reviewer
  3234  	}
  3235  	return ""
  3236  }
  3237  
  3238  func (x *AddReviewerRequest) GetState() AddReviewerRequest_State {
  3239  	if x != nil {
  3240  		return x.State
  3241  	}
  3242  	return AddReviewerRequest_ADD_REVIEWER_STATE_UNSPECIFIED
  3243  }
  3244  
  3245  func (x *AddReviewerRequest) GetConfirmed() bool {
  3246  	if x != nil {
  3247  		return x.Confirmed
  3248  	}
  3249  	return false
  3250  }
  3251  
  3252  func (x *AddReviewerRequest) GetNotify() Notify {
  3253  	if x != nil {
  3254  		return x.Notify
  3255  	}
  3256  	return Notify_NOTIFY_UNSPECIFIED
  3257  }
  3258  
  3259  // Information about a reviewer. A superset of information from AccountInfo.
  3260  //
  3261  // Source of truth:
  3262  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#reviewer-info
  3263  type ReviewerInfo struct {
  3264  	state         protoimpl.MessageState
  3265  	sizeCache     protoimpl.SizeCache
  3266  	unknownFields protoimpl.UnknownFields
  3267  
  3268  	// The detailed account information about a reviewer.
  3269  	Account *AccountInfo `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
  3270  	// The approvals as a map of label names to approval values.
  3271  	Approvals map[string]int32 `protobuf:"bytes,2,rep,name=approvals,proto3" json:"approvals,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
  3272  }
  3273  
  3274  func (x *ReviewerInfo) Reset() {
  3275  	*x = ReviewerInfo{}
  3276  	if protoimpl.UnsafeEnabled {
  3277  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[26]
  3278  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3279  		ms.StoreMessageInfo(mi)
  3280  	}
  3281  }
  3282  
  3283  func (x *ReviewerInfo) String() string {
  3284  	return protoimpl.X.MessageStringOf(x)
  3285  }
  3286  
  3287  func (*ReviewerInfo) ProtoMessage() {}
  3288  
  3289  func (x *ReviewerInfo) ProtoReflect() protoreflect.Message {
  3290  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[26]
  3291  	if protoimpl.UnsafeEnabled && x != nil {
  3292  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3293  		if ms.LoadMessageInfo() == nil {
  3294  			ms.StoreMessageInfo(mi)
  3295  		}
  3296  		return ms
  3297  	}
  3298  	return mi.MessageOf(x)
  3299  }
  3300  
  3301  // Deprecated: Use ReviewerInfo.ProtoReflect.Descriptor instead.
  3302  func (*ReviewerInfo) Descriptor() ([]byte, []int) {
  3303  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{26}
  3304  }
  3305  
  3306  func (x *ReviewerInfo) GetAccount() *AccountInfo {
  3307  	if x != nil {
  3308  		return x.Account
  3309  	}
  3310  	return nil
  3311  }
  3312  
  3313  func (x *ReviewerInfo) GetApprovals() map[string]int32 {
  3314  	if x != nil {
  3315  		return x.Approvals
  3316  	}
  3317  	return nil
  3318  }
  3319  
  3320  // The result of adding a reviewer to a change
  3321  //
  3322  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#add-reviewer
  3323  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#add-reviewer-result
  3324  type AddReviewerResult struct {
  3325  	state         protoimpl.MessageState
  3326  	sizeCache     protoimpl.SizeCache
  3327  	unknownFields protoimpl.UnknownFields
  3328  
  3329  	// The Account ID from the AddReviewerRequest.reviewer field
  3330  	//
  3331  	// https://gerrit-review.googlesource.com/Documentation/rest-api-accounts.html#account-id
  3332  	Input string `protobuf:"bytes,1,opt,name=input,proto3" json:"input,omitempty"`
  3333  	// The newly added reviewers
  3334  	// If a group is added as a reviewer (or cc)
  3335  	// all group members are added.
  3336  	Reviewers []*ReviewerInfo `protobuf:"bytes,2,rep,name=reviewers,proto3" json:"reviewers,omitempty"`
  3337  	// The newly cc'd accounts
  3338  	Ccs []*ReviewerInfo `protobuf:"bytes,3,rep,name=ccs,proto3" json:"ccs,omitempty"`
  3339  	// The error message
  3340  	Error string `protobuf:"bytes,4,opt,name=error,proto3" json:"error,omitempty"`
  3341  	// Whether adding the reviewer requires confirmation
  3342  	Confirm bool `protobuf:"varint,5,opt,name=confirm,proto3" json:"confirm,omitempty"`
  3343  }
  3344  
  3345  func (x *AddReviewerResult) Reset() {
  3346  	*x = AddReviewerResult{}
  3347  	if protoimpl.UnsafeEnabled {
  3348  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[27]
  3349  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3350  		ms.StoreMessageInfo(mi)
  3351  	}
  3352  }
  3353  
  3354  func (x *AddReviewerResult) String() string {
  3355  	return protoimpl.X.MessageStringOf(x)
  3356  }
  3357  
  3358  func (*AddReviewerResult) ProtoMessage() {}
  3359  
  3360  func (x *AddReviewerResult) ProtoReflect() protoreflect.Message {
  3361  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[27]
  3362  	if protoimpl.UnsafeEnabled && x != nil {
  3363  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3364  		if ms.LoadMessageInfo() == nil {
  3365  			ms.StoreMessageInfo(mi)
  3366  		}
  3367  		return ms
  3368  	}
  3369  	return mi.MessageOf(x)
  3370  }
  3371  
  3372  // Deprecated: Use AddReviewerResult.ProtoReflect.Descriptor instead.
  3373  func (*AddReviewerResult) Descriptor() ([]byte, []int) {
  3374  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{27}
  3375  }
  3376  
  3377  func (x *AddReviewerResult) GetInput() string {
  3378  	if x != nil {
  3379  		return x.Input
  3380  	}
  3381  	return ""
  3382  }
  3383  
  3384  func (x *AddReviewerResult) GetReviewers() []*ReviewerInfo {
  3385  	if x != nil {
  3386  		return x.Reviewers
  3387  	}
  3388  	return nil
  3389  }
  3390  
  3391  func (x *AddReviewerResult) GetCcs() []*ReviewerInfo {
  3392  	if x != nil {
  3393  		return x.Ccs
  3394  	}
  3395  	return nil
  3396  }
  3397  
  3398  func (x *AddReviewerResult) GetError() string {
  3399  	if x != nil {
  3400  		return x.Error
  3401  	}
  3402  	return ""
  3403  }
  3404  
  3405  func (x *AddReviewerResult) GetConfirm() bool {
  3406  	if x != nil {
  3407  		return x.Confirm
  3408  	}
  3409  	return false
  3410  }
  3411  
  3412  type DeleteReviewerRequest struct {
  3413  	state         protoimpl.MessageState
  3414  	sizeCache     protoimpl.SizeCache
  3415  	unknownFields protoimpl.UnknownFields
  3416  
  3417  	// The change number.
  3418  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  3419  	// The project of this change. For example, "chromium/src".
  3420  	//
  3421  	// Optional, but recommended for better routing and faster RPC execution.
  3422  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  3423  	// The ID of a single account or group to review the change.
  3424  	//
  3425  	// https://gerrit-review.googlesource.com/Documentation/rest-api-accounts.html#account-id
  3426  	AccountId string `protobuf:"bytes,3,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
  3427  }
  3428  
  3429  func (x *DeleteReviewerRequest) Reset() {
  3430  	*x = DeleteReviewerRequest{}
  3431  	if protoimpl.UnsafeEnabled {
  3432  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[28]
  3433  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3434  		ms.StoreMessageInfo(mi)
  3435  	}
  3436  }
  3437  
  3438  func (x *DeleteReviewerRequest) String() string {
  3439  	return protoimpl.X.MessageStringOf(x)
  3440  }
  3441  
  3442  func (*DeleteReviewerRequest) ProtoMessage() {}
  3443  
  3444  func (x *DeleteReviewerRequest) ProtoReflect() protoreflect.Message {
  3445  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[28]
  3446  	if protoimpl.UnsafeEnabled && x != nil {
  3447  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3448  		if ms.LoadMessageInfo() == nil {
  3449  			ms.StoreMessageInfo(mi)
  3450  		}
  3451  		return ms
  3452  	}
  3453  	return mi.MessageOf(x)
  3454  }
  3455  
  3456  // Deprecated: Use DeleteReviewerRequest.ProtoReflect.Descriptor instead.
  3457  func (*DeleteReviewerRequest) Descriptor() ([]byte, []int) {
  3458  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{28}
  3459  }
  3460  
  3461  func (x *DeleteReviewerRequest) GetNumber() int64 {
  3462  	if x != nil {
  3463  		return x.Number
  3464  	}
  3465  	return 0
  3466  }
  3467  
  3468  func (x *DeleteReviewerRequest) GetProject() string {
  3469  	if x != nil {
  3470  		return x.Project
  3471  	}
  3472  	return ""
  3473  }
  3474  
  3475  func (x *DeleteReviewerRequest) GetAccountId() string {
  3476  	if x != nil {
  3477  		return x.AccountId
  3478  	}
  3479  	return ""
  3480  }
  3481  
  3482  // Information to set various review bits on a change
  3483  //
  3484  // Fields are a subset of arguments from:
  3485  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#set-review
  3486  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#review-input
  3487  type SetReviewRequest struct {
  3488  	state         protoimpl.MessageState
  3489  	sizeCache     protoimpl.SizeCache
  3490  	unknownFields protoimpl.UnknownFields
  3491  
  3492  	// The change number.
  3493  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  3494  	// The project of this change. For example, "chromium/src".
  3495  	//
  3496  	// Optional, but recommended for better routing and faster RPC execution.
  3497  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  3498  	// Unique ID for the revision to query.
  3499  	//
  3500  	// Source of truth:
  3501  	// https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#revision-id
  3502  	RevisionId string `protobuf:"bytes,3,opt,name=revision_id,json=revisionId,proto3" json:"revision_id,omitempty"`
  3503  	// Message to be added to the change along with this review.
  3504  	Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"`
  3505  	// labels to add, e.g.:
  3506  	//
  3507  	//	{
  3508  	//	  "Code-Review": -1,
  3509  	//	  "Verified": 1,
  3510  	//	}
  3511  	Labels map[string]int32 `protobuf:"bytes,5,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
  3512  	// Tag to be applied to the review comment message, votes, and inline
  3513  	// comments.
  3514  	//
  3515  	// Tags may be used by CI or other automated systems to distinguish them
  3516  	// from human reviews. Votes/comments that contain tag with 'autogenerated:'
  3517  	// prefix can be filtered out in the web UI.
  3518  	Tag string `protobuf:"bytes,6,opt,name=tag,proto3" json:"tag,omitempty"`
  3519  	// Notify defines to whom email notifications should be sent.
  3520  	Notify Notify `protobuf:"varint,7,opt,name=notify,proto3,enum=gerrit.Notify" json:"notify,omitempty"`
  3521  	// NotifyDetails contains additional information about whom to notify.
  3522  	//
  3523  	// These notifications are sent out even if `notify` options disables normal
  3524  	// notifications.
  3525  	NotifyDetails *NotifyDetails `protobuf:"bytes,8,opt,name=notify_details,json=notifyDetails,proto3" json:"notify_details,omitempty"`
  3526  	// The account_id that the review should be posted on behalf of.
  3527  	//
  3528  	// To use this option the caller must have been granted labelAs-NAME
  3529  	// permission for all keys of labels.
  3530  	OnBehalfOf int64 `protobuf:"varint,9,opt,name=on_behalf_of,json=onBehalfOf,proto3" json:"on_behalf_of,omitempty"`
  3531  	// If true, then start review.
  3532  	// It is an error for both ready and work_in_progress to be true at the same
  3533  	// time.
  3534  	Ready bool `protobuf:"varint,10,opt,name=ready,proto3" json:"ready,omitempty"`
  3535  	// If true, mark the change as work in progress.
  3536  	// It is an error for both ready and work_in_progress to be true at the same
  3537  	// time.
  3538  	WorkInProgress bool `protobuf:"varint,11,opt,name=work_in_progress,json=workInProgress,proto3" json:"work_in_progress,omitempty"`
  3539  	// list of AttentionSetInput entities to add to the attention set. Users that
  3540  	// are not reviewers, ccs, owner, or uploader are silently ignored.
  3541  	AddToAttentionSet []*AttentionSetInput `protobuf:"bytes,12,rep,name=add_to_attention_set,json=addToAttentionSet,proto3" json:"add_to_attention_set,omitempty"`
  3542  	// list of AttentionSetInput entities to remove from the attention set.
  3543  	RemoveFromAttentionSet []*AttentionSetInput `protobuf:"bytes,13,rep,name=remove_from_attention_set,json=removeFromAttentionSet,proto3" json:"remove_from_attention_set,omitempty"`
  3544  	// If true, ignore all automatic attention set rules described in the
  3545  	// https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#attention-set
  3546  	//
  3547  	// Updates in add_to_attention_set and remove_from_attention_set are not
  3548  	// ignored.
  3549  	IgnoreAutomaticAttentionSetRules bool `protobuf:"varint,14,opt,name=ignore_automatic_attention_set_rules,json=ignoreAutomaticAttentionSetRules,proto3" json:"ignore_automatic_attention_set_rules,omitempty"`
  3550  	// list of ReviewerInput entities representing reviewers that should be
  3551  	// added to the change.
  3552  	Reviewers []*ReviewerInput `protobuf:"bytes,15,rep,name=reviewers,proto3" json:"reviewers,omitempty"`
  3553  }
  3554  
  3555  func (x *SetReviewRequest) Reset() {
  3556  	*x = SetReviewRequest{}
  3557  	if protoimpl.UnsafeEnabled {
  3558  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[29]
  3559  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3560  		ms.StoreMessageInfo(mi)
  3561  	}
  3562  }
  3563  
  3564  func (x *SetReviewRequest) String() string {
  3565  	return protoimpl.X.MessageStringOf(x)
  3566  }
  3567  
  3568  func (*SetReviewRequest) ProtoMessage() {}
  3569  
  3570  func (x *SetReviewRequest) ProtoReflect() protoreflect.Message {
  3571  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[29]
  3572  	if protoimpl.UnsafeEnabled && x != nil {
  3573  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3574  		if ms.LoadMessageInfo() == nil {
  3575  			ms.StoreMessageInfo(mi)
  3576  		}
  3577  		return ms
  3578  	}
  3579  	return mi.MessageOf(x)
  3580  }
  3581  
  3582  // Deprecated: Use SetReviewRequest.ProtoReflect.Descriptor instead.
  3583  func (*SetReviewRequest) Descriptor() ([]byte, []int) {
  3584  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{29}
  3585  }
  3586  
  3587  func (x *SetReviewRequest) GetNumber() int64 {
  3588  	if x != nil {
  3589  		return x.Number
  3590  	}
  3591  	return 0
  3592  }
  3593  
  3594  func (x *SetReviewRequest) GetProject() string {
  3595  	if x != nil {
  3596  		return x.Project
  3597  	}
  3598  	return ""
  3599  }
  3600  
  3601  func (x *SetReviewRequest) GetRevisionId() string {
  3602  	if x != nil {
  3603  		return x.RevisionId
  3604  	}
  3605  	return ""
  3606  }
  3607  
  3608  func (x *SetReviewRequest) GetMessage() string {
  3609  	if x != nil {
  3610  		return x.Message
  3611  	}
  3612  	return ""
  3613  }
  3614  
  3615  func (x *SetReviewRequest) GetLabels() map[string]int32 {
  3616  	if x != nil {
  3617  		return x.Labels
  3618  	}
  3619  	return nil
  3620  }
  3621  
  3622  func (x *SetReviewRequest) GetTag() string {
  3623  	if x != nil {
  3624  		return x.Tag
  3625  	}
  3626  	return ""
  3627  }
  3628  
  3629  func (x *SetReviewRequest) GetNotify() Notify {
  3630  	if x != nil {
  3631  		return x.Notify
  3632  	}
  3633  	return Notify_NOTIFY_UNSPECIFIED
  3634  }
  3635  
  3636  func (x *SetReviewRequest) GetNotifyDetails() *NotifyDetails {
  3637  	if x != nil {
  3638  		return x.NotifyDetails
  3639  	}
  3640  	return nil
  3641  }
  3642  
  3643  func (x *SetReviewRequest) GetOnBehalfOf() int64 {
  3644  	if x != nil {
  3645  		return x.OnBehalfOf
  3646  	}
  3647  	return 0
  3648  }
  3649  
  3650  func (x *SetReviewRequest) GetReady() bool {
  3651  	if x != nil {
  3652  		return x.Ready
  3653  	}
  3654  	return false
  3655  }
  3656  
  3657  func (x *SetReviewRequest) GetWorkInProgress() bool {
  3658  	if x != nil {
  3659  		return x.WorkInProgress
  3660  	}
  3661  	return false
  3662  }
  3663  
  3664  func (x *SetReviewRequest) GetAddToAttentionSet() []*AttentionSetInput {
  3665  	if x != nil {
  3666  		return x.AddToAttentionSet
  3667  	}
  3668  	return nil
  3669  }
  3670  
  3671  func (x *SetReviewRequest) GetRemoveFromAttentionSet() []*AttentionSetInput {
  3672  	if x != nil {
  3673  		return x.RemoveFromAttentionSet
  3674  	}
  3675  	return nil
  3676  }
  3677  
  3678  func (x *SetReviewRequest) GetIgnoreAutomaticAttentionSetRules() bool {
  3679  	if x != nil {
  3680  		return x.IgnoreAutomaticAttentionSetRules
  3681  	}
  3682  	return false
  3683  }
  3684  
  3685  func (x *SetReviewRequest) GetReviewers() []*ReviewerInput {
  3686  	if x != nil {
  3687  		return x.Reviewers
  3688  	}
  3689  	return nil
  3690  }
  3691  
  3692  // Information to add reviewers to a change.
  3693  //
  3694  // Fields are a subset of arguments from:
  3695  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#reviewer-input
  3696  type ReviewerInput struct {
  3697  	state         protoimpl.MessageState
  3698  	sizeCache     protoimpl.SizeCache
  3699  	unknownFields protoimpl.UnknownFields
  3700  
  3701  	// The ID of a single account or group to review the change.
  3702  	//
  3703  	// https://gerrit-review.googlesource.com/Documentation/rest-api-accounts.html#account-id
  3704  	Reviewer string `protobuf:"bytes,1,opt,name=reviewer,proto3" json:"reviewer,omitempty"`
  3705  	// Optional - Add reviewer in this state.
  3706  	//
  3707  	// Possible reviewer states are REVIEWER and CC. If not given,
  3708  	// Gerrit defaults to REVIEWER.
  3709  	State ReviewerInput_State `protobuf:"varint,2,opt,name=state,proto3,enum=gerrit.ReviewerInput_State" json:"state,omitempty"`
  3710  }
  3711  
  3712  func (x *ReviewerInput) Reset() {
  3713  	*x = ReviewerInput{}
  3714  	if protoimpl.UnsafeEnabled {
  3715  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[30]
  3716  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3717  		ms.StoreMessageInfo(mi)
  3718  	}
  3719  }
  3720  
  3721  func (x *ReviewerInput) String() string {
  3722  	return protoimpl.X.MessageStringOf(x)
  3723  }
  3724  
  3725  func (*ReviewerInput) ProtoMessage() {}
  3726  
  3727  func (x *ReviewerInput) ProtoReflect() protoreflect.Message {
  3728  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[30]
  3729  	if protoimpl.UnsafeEnabled && x != nil {
  3730  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3731  		if ms.LoadMessageInfo() == nil {
  3732  			ms.StoreMessageInfo(mi)
  3733  		}
  3734  		return ms
  3735  	}
  3736  	return mi.MessageOf(x)
  3737  }
  3738  
  3739  // Deprecated: Use ReviewerInput.ProtoReflect.Descriptor instead.
  3740  func (*ReviewerInput) Descriptor() ([]byte, []int) {
  3741  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{30}
  3742  }
  3743  
  3744  func (x *ReviewerInput) GetReviewer() string {
  3745  	if x != nil {
  3746  		return x.Reviewer
  3747  	}
  3748  	return ""
  3749  }
  3750  
  3751  func (x *ReviewerInput) GetState() ReviewerInput_State {
  3752  	if x != nil {
  3753  		return x.State
  3754  	}
  3755  	return ReviewerInput_REVIEWER_INPUT_STATE_UNSPECIFIED
  3756  }
  3757  
  3758  // Information returned by a SetReview RPC.
  3759  //
  3760  // Fields are a subset of:
  3761  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#review-result
  3762  type ReviewResult struct {
  3763  	state         protoimpl.MessageState
  3764  	sizeCache     protoimpl.SizeCache
  3765  	unknownFields protoimpl.UnknownFields
  3766  
  3767  	// Map of labels to values after the review was posted. Null if any reviewer
  3768  	// additions were rejected.
  3769  	Labels map[string]int32 `protobuf:"bytes,1,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
  3770  	// Map of account or group identifier to ReviewerResult representing
  3771  	// the outcome of adding a reviewer.
  3772  	//
  3773  	// Absent if no reviewer additions were requested.
  3774  	Reviewers map[string]*AddReviewerResult `protobuf:"bytes,2,rep,name=reviewers,proto3" json:"reviewers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  3775  }
  3776  
  3777  func (x *ReviewResult) Reset() {
  3778  	*x = ReviewResult{}
  3779  	if protoimpl.UnsafeEnabled {
  3780  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[31]
  3781  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3782  		ms.StoreMessageInfo(mi)
  3783  	}
  3784  }
  3785  
  3786  func (x *ReviewResult) String() string {
  3787  	return protoimpl.X.MessageStringOf(x)
  3788  }
  3789  
  3790  func (*ReviewResult) ProtoMessage() {}
  3791  
  3792  func (x *ReviewResult) ProtoReflect() protoreflect.Message {
  3793  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[31]
  3794  	if protoimpl.UnsafeEnabled && x != nil {
  3795  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3796  		if ms.LoadMessageInfo() == nil {
  3797  			ms.StoreMessageInfo(mi)
  3798  		}
  3799  		return ms
  3800  	}
  3801  	return mi.MessageOf(x)
  3802  }
  3803  
  3804  // Deprecated: Use ReviewResult.ProtoReflect.Descriptor instead.
  3805  func (*ReviewResult) Descriptor() ([]byte, []int) {
  3806  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{31}
  3807  }
  3808  
  3809  func (x *ReviewResult) GetLabels() map[string]int32 {
  3810  	if x != nil {
  3811  		return x.Labels
  3812  	}
  3813  	return nil
  3814  }
  3815  
  3816  func (x *ReviewResult) GetReviewers() map[string]*AddReviewerResult {
  3817  	if x != nil {
  3818  		return x.Reviewers
  3819  	}
  3820  	return nil
  3821  }
  3822  
  3823  // Information to add/remove a user from the attention set of a change.
  3824  //
  3825  // Source of truth:
  3826  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#attention-set-input
  3827  type AttentionSetRequest struct {
  3828  	state         protoimpl.MessageState
  3829  	sizeCache     protoimpl.SizeCache
  3830  	unknownFields protoimpl.UnknownFields
  3831  
  3832  	// The change number.
  3833  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  3834  	// The project of this change. For example, "chromium/src".
  3835  	//
  3836  	// Optional, but recommended for better routing and faster RPC execution.
  3837  	Project string             `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  3838  	Input   *AttentionSetInput `protobuf:"bytes,6,opt,name=input,proto3" json:"input,omitempty"`
  3839  }
  3840  
  3841  func (x *AttentionSetRequest) Reset() {
  3842  	*x = AttentionSetRequest{}
  3843  	if protoimpl.UnsafeEnabled {
  3844  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[32]
  3845  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3846  		ms.StoreMessageInfo(mi)
  3847  	}
  3848  }
  3849  
  3850  func (x *AttentionSetRequest) String() string {
  3851  	return protoimpl.X.MessageStringOf(x)
  3852  }
  3853  
  3854  func (*AttentionSetRequest) ProtoMessage() {}
  3855  
  3856  func (x *AttentionSetRequest) ProtoReflect() protoreflect.Message {
  3857  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[32]
  3858  	if protoimpl.UnsafeEnabled && x != nil {
  3859  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3860  		if ms.LoadMessageInfo() == nil {
  3861  			ms.StoreMessageInfo(mi)
  3862  		}
  3863  		return ms
  3864  	}
  3865  	return mi.MessageOf(x)
  3866  }
  3867  
  3868  // Deprecated: Use AttentionSetRequest.ProtoReflect.Descriptor instead.
  3869  func (*AttentionSetRequest) Descriptor() ([]byte, []int) {
  3870  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{32}
  3871  }
  3872  
  3873  func (x *AttentionSetRequest) GetNumber() int64 {
  3874  	if x != nil {
  3875  		return x.Number
  3876  	}
  3877  	return 0
  3878  }
  3879  
  3880  func (x *AttentionSetRequest) GetProject() string {
  3881  	if x != nil {
  3882  		return x.Project
  3883  	}
  3884  	return ""
  3885  }
  3886  
  3887  func (x *AttentionSetRequest) GetInput() *AttentionSetInput {
  3888  	if x != nil {
  3889  		return x.Input
  3890  	}
  3891  	return nil
  3892  }
  3893  
  3894  // Information to add/remove a user from the attention set.
  3895  //
  3896  // Source of truth:
  3897  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#attention-set-input
  3898  type AttentionSetInput struct {
  3899  	state         protoimpl.MessageState
  3900  	sizeCache     protoimpl.SizeCache
  3901  	unknownFields protoimpl.UnknownFields
  3902  
  3903  	// A unique identifier for an account.
  3904  	//
  3905  	// Source of truth:
  3906  	// https://gerrit-review.googlesource.com/Documentation/rest-api-accounts.html#account-id
  3907  	User string `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"`
  3908  	// The justification for adding/removing the user.
  3909  	Reason string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"`
  3910  	// Defines who should be notified after change is created, defaults to OWNER.
  3911  	Notify Notify `protobuf:"varint,3,opt,name=notify,proto3,enum=gerrit.Notify" json:"notify,omitempty"`
  3912  	// NotifyDetails contains additional information about whom to notify.
  3913  	//
  3914  	// These notifications are sent out even if `notify` options disables normal
  3915  	// notifications.
  3916  	NotifyDetails *NotifyDetails `protobuf:"bytes,4,opt,name=notify_details,json=notifyDetails,proto3" json:"notify_details,omitempty"`
  3917  }
  3918  
  3919  func (x *AttentionSetInput) Reset() {
  3920  	*x = AttentionSetInput{}
  3921  	if protoimpl.UnsafeEnabled {
  3922  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[33]
  3923  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3924  		ms.StoreMessageInfo(mi)
  3925  	}
  3926  }
  3927  
  3928  func (x *AttentionSetInput) String() string {
  3929  	return protoimpl.X.MessageStringOf(x)
  3930  }
  3931  
  3932  func (*AttentionSetInput) ProtoMessage() {}
  3933  
  3934  func (x *AttentionSetInput) ProtoReflect() protoreflect.Message {
  3935  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[33]
  3936  	if protoimpl.UnsafeEnabled && x != nil {
  3937  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3938  		if ms.LoadMessageInfo() == nil {
  3939  			ms.StoreMessageInfo(mi)
  3940  		}
  3941  		return ms
  3942  	}
  3943  	return mi.MessageOf(x)
  3944  }
  3945  
  3946  // Deprecated: Use AttentionSetInput.ProtoReflect.Descriptor instead.
  3947  func (*AttentionSetInput) Descriptor() ([]byte, []int) {
  3948  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{33}
  3949  }
  3950  
  3951  func (x *AttentionSetInput) GetUser() string {
  3952  	if x != nil {
  3953  		return x.User
  3954  	}
  3955  	return ""
  3956  }
  3957  
  3958  func (x *AttentionSetInput) GetReason() string {
  3959  	if x != nil {
  3960  		return x.Reason
  3961  	}
  3962  	return ""
  3963  }
  3964  
  3965  func (x *AttentionSetInput) GetNotify() Notify {
  3966  	if x != nil {
  3967  		return x.Notify
  3968  	}
  3969  	return Notify_NOTIFY_UNSPECIFIED
  3970  }
  3971  
  3972  func (x *AttentionSetInput) GetNotifyDetails() *NotifyDetails {
  3973  	if x != nil {
  3974  		return x.NotifyDetails
  3975  	}
  3976  	return nil
  3977  }
  3978  
  3979  type GetMergeableRequest struct {
  3980  	state         protoimpl.MessageState
  3981  	sizeCache     protoimpl.SizeCache
  3982  	unknownFields protoimpl.UnknownFields
  3983  
  3984  	// The change number.
  3985  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  3986  	// The project of this change. For example, "chromium/src".
  3987  	//
  3988  	// Optional, but recommended for better routing and faster RPC execution.
  3989  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  3990  	// Unique ID for the revision to query.
  3991  	//
  3992  	// Source of truth:
  3993  	// https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#revision-id
  3994  	RevisionId string `protobuf:"bytes,3,opt,name=revision_id,json=revisionId,proto3" json:"revision_id,omitempty"`
  3995  	// The source to merge from, e.g. a complete or abbreviated commit SHA-1, a
  3996  	// complete reference name, a short reference name under refs/heads,
  3997  	// refs/tags, or refs/remotes namespace, etc.
  3998  	Source string `protobuf:"bytes,4,opt,name=source,proto3" json:"source,omitempty"`
  3999  	// The strategy of the merge.
  4000  	Strategy MergeableStrategy `protobuf:"varint,5,opt,name=strategy,proto3,enum=gerrit.MergeableStrategy" json:"strategy,omitempty"`
  4001  }
  4002  
  4003  func (x *GetMergeableRequest) Reset() {
  4004  	*x = GetMergeableRequest{}
  4005  	if protoimpl.UnsafeEnabled {
  4006  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[34]
  4007  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4008  		ms.StoreMessageInfo(mi)
  4009  	}
  4010  }
  4011  
  4012  func (x *GetMergeableRequest) String() string {
  4013  	return protoimpl.X.MessageStringOf(x)
  4014  }
  4015  
  4016  func (*GetMergeableRequest) ProtoMessage() {}
  4017  
  4018  func (x *GetMergeableRequest) ProtoReflect() protoreflect.Message {
  4019  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[34]
  4020  	if protoimpl.UnsafeEnabled && x != nil {
  4021  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4022  		if ms.LoadMessageInfo() == nil {
  4023  			ms.StoreMessageInfo(mi)
  4024  		}
  4025  		return ms
  4026  	}
  4027  	return mi.MessageOf(x)
  4028  }
  4029  
  4030  // Deprecated: Use GetMergeableRequest.ProtoReflect.Descriptor instead.
  4031  func (*GetMergeableRequest) Descriptor() ([]byte, []int) {
  4032  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{34}
  4033  }
  4034  
  4035  func (x *GetMergeableRequest) GetNumber() int64 {
  4036  	if x != nil {
  4037  		return x.Number
  4038  	}
  4039  	return 0
  4040  }
  4041  
  4042  func (x *GetMergeableRequest) GetProject() string {
  4043  	if x != nil {
  4044  		return x.Project
  4045  	}
  4046  	return ""
  4047  }
  4048  
  4049  func (x *GetMergeableRequest) GetRevisionId() string {
  4050  	if x != nil {
  4051  		return x.RevisionId
  4052  	}
  4053  	return ""
  4054  }
  4055  
  4056  func (x *GetMergeableRequest) GetSource() string {
  4057  	if x != nil {
  4058  		return x.Source
  4059  	}
  4060  	return ""
  4061  }
  4062  
  4063  func (x *GetMergeableRequest) GetStrategy() MergeableStrategy {
  4064  	if x != nil {
  4065  		return x.Strategy
  4066  	}
  4067  	return MergeableStrategy_MERGEABLE_STRATEGY_UNSPECIFIED
  4068  }
  4069  
  4070  // Contains information about the mergeability of a change.
  4071  //
  4072  // Source of truth:
  4073  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#mergeable-info
  4074  type MergeableInfo struct {
  4075  	state         protoimpl.MessageState
  4076  	sizeCache     protoimpl.SizeCache
  4077  	unknownFields protoimpl.UnknownFields
  4078  
  4079  	// Submit type used for this change.
  4080  	SubmitType MergeableInfo_SubmitType `protobuf:"varint,1,opt,name=submit_type,json=submitType,proto3,enum=gerrit.MergeableInfo_SubmitType" json:"submit_type,omitempty"`
  4081  	// The strategy of the merge.
  4082  	Strategy MergeableStrategy `protobuf:"varint,2,opt,name=strategy,proto3,enum=gerrit.MergeableStrategy" json:"strategy,omitempty"`
  4083  	// true if this change is cleanly mergeable, false otherwise.
  4084  	Mergeable bool `protobuf:"varint,3,opt,name=mergeable,proto3" json:"mergeable,omitempty"`
  4085  	// true if this change is already merged, false otherwise.
  4086  	CommitMerged bool `protobuf:"varint,4,opt,name=commit_merged,json=commitMerged,proto3" json:"commit_merged,omitempty"`
  4087  	// true if the content of this change is already merged, false otherwise.
  4088  	ContentMerged bool `protobuf:"varint,5,opt,name=content_merged,json=contentMerged,proto3" json:"content_merged,omitempty"`
  4089  	// A list of paths with conflicts.
  4090  	Conflicts []string `protobuf:"bytes,6,rep,name=conflicts,proto3" json:"conflicts,omitempty"`
  4091  	// A list of other branch names where this change could merge cleanly.
  4092  	MergeableInto []string `protobuf:"bytes,7,rep,name=mergeable_into,json=mergeableInto,proto3" json:"mergeable_into,omitempty"`
  4093  }
  4094  
  4095  func (x *MergeableInfo) Reset() {
  4096  	*x = MergeableInfo{}
  4097  	if protoimpl.UnsafeEnabled {
  4098  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[35]
  4099  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4100  		ms.StoreMessageInfo(mi)
  4101  	}
  4102  }
  4103  
  4104  func (x *MergeableInfo) String() string {
  4105  	return protoimpl.X.MessageStringOf(x)
  4106  }
  4107  
  4108  func (*MergeableInfo) ProtoMessage() {}
  4109  
  4110  func (x *MergeableInfo) ProtoReflect() protoreflect.Message {
  4111  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[35]
  4112  	if protoimpl.UnsafeEnabled && x != nil {
  4113  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4114  		if ms.LoadMessageInfo() == nil {
  4115  			ms.StoreMessageInfo(mi)
  4116  		}
  4117  		return ms
  4118  	}
  4119  	return mi.MessageOf(x)
  4120  }
  4121  
  4122  // Deprecated: Use MergeableInfo.ProtoReflect.Descriptor instead.
  4123  func (*MergeableInfo) Descriptor() ([]byte, []int) {
  4124  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{35}
  4125  }
  4126  
  4127  func (x *MergeableInfo) GetSubmitType() MergeableInfo_SubmitType {
  4128  	if x != nil {
  4129  		return x.SubmitType
  4130  	}
  4131  	return MergeableInfo_SUBMIT_TYPE_UNSPECIFIED
  4132  }
  4133  
  4134  func (x *MergeableInfo) GetStrategy() MergeableStrategy {
  4135  	if x != nil {
  4136  		return x.Strategy
  4137  	}
  4138  	return MergeableStrategy_MERGEABLE_STRATEGY_UNSPECIFIED
  4139  }
  4140  
  4141  func (x *MergeableInfo) GetMergeable() bool {
  4142  	if x != nil {
  4143  		return x.Mergeable
  4144  	}
  4145  	return false
  4146  }
  4147  
  4148  func (x *MergeableInfo) GetCommitMerged() bool {
  4149  	if x != nil {
  4150  		return x.CommitMerged
  4151  	}
  4152  	return false
  4153  }
  4154  
  4155  func (x *MergeableInfo) GetContentMerged() bool {
  4156  	if x != nil {
  4157  		return x.ContentMerged
  4158  	}
  4159  	return false
  4160  }
  4161  
  4162  func (x *MergeableInfo) GetConflicts() []string {
  4163  	if x != nil {
  4164  		return x.Conflicts
  4165  	}
  4166  	return nil
  4167  }
  4168  
  4169  func (x *MergeableInfo) GetMergeableInto() []string {
  4170  	if x != nil {
  4171  		return x.MergeableInto
  4172  	}
  4173  	return nil
  4174  }
  4175  
  4176  // Information for requesting the files in a change.
  4177  //
  4178  // Source of truth:
  4179  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#list-files
  4180  type ListFilesRequest struct {
  4181  	state         protoimpl.MessageState
  4182  	sizeCache     protoimpl.SizeCache
  4183  	unknownFields protoimpl.UnknownFields
  4184  
  4185  	// Change number.
  4186  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  4187  	// The project of this change. For example, "chromium/src".
  4188  	//
  4189  	// Optional, but recommended for better routing and faster RPC execution.
  4190  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  4191  	// Unique ID for the revision to query.
  4192  	//
  4193  	// Source of truth:
  4194  	// https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#revision-id
  4195  	RevisionId string `protobuf:"bytes,3,opt,name=revision_id,json=revisionId,proto3" json:"revision_id,omitempty"`
  4196  	// Changes the response to return a list of all files (modified or unmodified)
  4197  	// that contain this substring in the path name.
  4198  	SubstringQuery string `protobuf:"bytes,4,opt,name=substring_query,json=substringQuery,proto3" json:"substring_query,omitempty"`
  4199  	// For merge commits only, this requests a diff of files against a parent
  4200  	// revision. Use value 1 to compare against a CL's target ref.
  4201  	Parent int64 `protobuf:"varint,5,opt,name=parent,proto3" json:"parent,omitempty"`
  4202  	// Can either be a revision id or a patchset number. It changes the response
  4203  	// to return a map of the files which are different in this commit compared
  4204  	// to the given revision. The revision must correspond to a patch set in the
  4205  	// change.
  4206  	Base string `protobuf:"bytes,6,opt,name=base,proto3" json:"base,omitempty"`
  4207  }
  4208  
  4209  func (x *ListFilesRequest) Reset() {
  4210  	*x = ListFilesRequest{}
  4211  	if protoimpl.UnsafeEnabled {
  4212  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[36]
  4213  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4214  		ms.StoreMessageInfo(mi)
  4215  	}
  4216  }
  4217  
  4218  func (x *ListFilesRequest) String() string {
  4219  	return protoimpl.X.MessageStringOf(x)
  4220  }
  4221  
  4222  func (*ListFilesRequest) ProtoMessage() {}
  4223  
  4224  func (x *ListFilesRequest) ProtoReflect() protoreflect.Message {
  4225  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[36]
  4226  	if protoimpl.UnsafeEnabled && x != nil {
  4227  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4228  		if ms.LoadMessageInfo() == nil {
  4229  			ms.StoreMessageInfo(mi)
  4230  		}
  4231  		return ms
  4232  	}
  4233  	return mi.MessageOf(x)
  4234  }
  4235  
  4236  // Deprecated: Use ListFilesRequest.ProtoReflect.Descriptor instead.
  4237  func (*ListFilesRequest) Descriptor() ([]byte, []int) {
  4238  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{36}
  4239  }
  4240  
  4241  func (x *ListFilesRequest) GetNumber() int64 {
  4242  	if x != nil {
  4243  		return x.Number
  4244  	}
  4245  	return 0
  4246  }
  4247  
  4248  func (x *ListFilesRequest) GetProject() string {
  4249  	if x != nil {
  4250  		return x.Project
  4251  	}
  4252  	return ""
  4253  }
  4254  
  4255  func (x *ListFilesRequest) GetRevisionId() string {
  4256  	if x != nil {
  4257  		return x.RevisionId
  4258  	}
  4259  	return ""
  4260  }
  4261  
  4262  func (x *ListFilesRequest) GetSubstringQuery() string {
  4263  	if x != nil {
  4264  		return x.SubstringQuery
  4265  	}
  4266  	return ""
  4267  }
  4268  
  4269  func (x *ListFilesRequest) GetParent() int64 {
  4270  	if x != nil {
  4271  		return x.Parent
  4272  	}
  4273  	return 0
  4274  }
  4275  
  4276  func (x *ListFilesRequest) GetBase() string {
  4277  	if x != nil {
  4278  		return x.Base
  4279  	}
  4280  	return ""
  4281  }
  4282  
  4283  // Information about the files in a change.
  4284  //
  4285  // Source of truth:
  4286  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#list-files
  4287  type ListFilesResponse struct {
  4288  	state         protoimpl.MessageState
  4289  	sizeCache     protoimpl.SizeCache
  4290  	unknownFields protoimpl.UnknownFields
  4291  
  4292  	// A map of file paths to FileInfos.
  4293  	Files map[string]*FileInfo `protobuf:"bytes,1,rep,name=files,proto3" json:"files,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  4294  }
  4295  
  4296  func (x *ListFilesResponse) Reset() {
  4297  	*x = ListFilesResponse{}
  4298  	if protoimpl.UnsafeEnabled {
  4299  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[37]
  4300  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4301  		ms.StoreMessageInfo(mi)
  4302  	}
  4303  }
  4304  
  4305  func (x *ListFilesResponse) String() string {
  4306  	return protoimpl.X.MessageStringOf(x)
  4307  }
  4308  
  4309  func (*ListFilesResponse) ProtoMessage() {}
  4310  
  4311  func (x *ListFilesResponse) ProtoReflect() protoreflect.Message {
  4312  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[37]
  4313  	if protoimpl.UnsafeEnabled && x != nil {
  4314  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4315  		if ms.LoadMessageInfo() == nil {
  4316  			ms.StoreMessageInfo(mi)
  4317  		}
  4318  		return ms
  4319  	}
  4320  	return mi.MessageOf(x)
  4321  }
  4322  
  4323  // Deprecated: Use ListFilesResponse.ProtoReflect.Descriptor instead.
  4324  func (*ListFilesResponse) Descriptor() ([]byte, []int) {
  4325  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{37}
  4326  }
  4327  
  4328  func (x *ListFilesResponse) GetFiles() map[string]*FileInfo {
  4329  	if x != nil {
  4330  		return x.Files
  4331  	}
  4332  	return nil
  4333  }
  4334  
  4335  // Information for requesting the related changes of a change.
  4336  //
  4337  // Source of truth:
  4338  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#get-related-changes
  4339  type GetRelatedChangesRequest struct {
  4340  	state         protoimpl.MessageState
  4341  	sizeCache     protoimpl.SizeCache
  4342  	unknownFields protoimpl.UnknownFields
  4343  
  4344  	// Change number.
  4345  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  4346  	// The project of this change. For example, "chromium/src".
  4347  	//
  4348  	// Optional, but recommended for better routing and faster RPC execution.
  4349  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  4350  	// Unique ID for the revision to query.
  4351  	//
  4352  	// Source of truth:
  4353  	// https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#revision-id
  4354  	RevisionId string `protobuf:"bytes,3,opt,name=revision_id,json=revisionId,proto3" json:"revision_id,omitempty"`
  4355  }
  4356  
  4357  func (x *GetRelatedChangesRequest) Reset() {
  4358  	*x = GetRelatedChangesRequest{}
  4359  	if protoimpl.UnsafeEnabled {
  4360  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[38]
  4361  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4362  		ms.StoreMessageInfo(mi)
  4363  	}
  4364  }
  4365  
  4366  func (x *GetRelatedChangesRequest) String() string {
  4367  	return protoimpl.X.MessageStringOf(x)
  4368  }
  4369  
  4370  func (*GetRelatedChangesRequest) ProtoMessage() {}
  4371  
  4372  func (x *GetRelatedChangesRequest) ProtoReflect() protoreflect.Message {
  4373  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[38]
  4374  	if protoimpl.UnsafeEnabled && x != nil {
  4375  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4376  		if ms.LoadMessageInfo() == nil {
  4377  			ms.StoreMessageInfo(mi)
  4378  		}
  4379  		return ms
  4380  	}
  4381  	return mi.MessageOf(x)
  4382  }
  4383  
  4384  // Deprecated: Use GetRelatedChangesRequest.ProtoReflect.Descriptor instead.
  4385  func (*GetRelatedChangesRequest) Descriptor() ([]byte, []int) {
  4386  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{38}
  4387  }
  4388  
  4389  func (x *GetRelatedChangesRequest) GetNumber() int64 {
  4390  	if x != nil {
  4391  		return x.Number
  4392  	}
  4393  	return 0
  4394  }
  4395  
  4396  func (x *GetRelatedChangesRequest) GetProject() string {
  4397  	if x != nil {
  4398  		return x.Project
  4399  	}
  4400  	return ""
  4401  }
  4402  
  4403  func (x *GetRelatedChangesRequest) GetRevisionId() string {
  4404  	if x != nil {
  4405  		return x.RevisionId
  4406  	}
  4407  	return ""
  4408  }
  4409  
  4410  // Information about related changes of a specific change's revision.
  4411  //
  4412  // Source of truth:
  4413  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#related-changes-info
  4414  type GetRelatedChangesResponse struct {
  4415  	state         protoimpl.MessageState
  4416  	sizeCache     protoimpl.SizeCache
  4417  	unknownFields protoimpl.UnknownFields
  4418  
  4419  	// A list of describing the related changes.
  4420  	//
  4421  	// Sorted by git commit order, newest to oldest. Empty if there are no related
  4422  	// changes.
  4423  	Changes []*GetRelatedChangesResponse_ChangeAndCommit `protobuf:"bytes,1,rep,name=changes,proto3" json:"changes,omitempty"`
  4424  }
  4425  
  4426  func (x *GetRelatedChangesResponse) Reset() {
  4427  	*x = GetRelatedChangesResponse{}
  4428  	if protoimpl.UnsafeEnabled {
  4429  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[39]
  4430  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4431  		ms.StoreMessageInfo(mi)
  4432  	}
  4433  }
  4434  
  4435  func (x *GetRelatedChangesResponse) String() string {
  4436  	return protoimpl.X.MessageStringOf(x)
  4437  }
  4438  
  4439  func (*GetRelatedChangesResponse) ProtoMessage() {}
  4440  
  4441  func (x *GetRelatedChangesResponse) ProtoReflect() protoreflect.Message {
  4442  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[39]
  4443  	if protoimpl.UnsafeEnabled && x != nil {
  4444  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4445  		if ms.LoadMessageInfo() == nil {
  4446  			ms.StoreMessageInfo(mi)
  4447  		}
  4448  		return ms
  4449  	}
  4450  	return mi.MessageOf(x)
  4451  }
  4452  
  4453  // Deprecated: Use GetRelatedChangesResponse.ProtoReflect.Descriptor instead.
  4454  func (*GetRelatedChangesResponse) Descriptor() ([]byte, []int) {
  4455  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{39}
  4456  }
  4457  
  4458  func (x *GetRelatedChangesResponse) GetChanges() []*GetRelatedChangesResponse_ChangeAndCommit {
  4459  	if x != nil {
  4460  		return x.Changes
  4461  	}
  4462  	return nil
  4463  }
  4464  
  4465  // Information for requesting the projects on a host.
  4466  //
  4467  // Source of truth:
  4468  // https://gerrit-review.googlesource.com/Documentation/cmd-ls-projects.html
  4469  type ListProjectsRequest struct {
  4470  	state         protoimpl.MessageState
  4471  	sizeCache     protoimpl.SizeCache
  4472  	unknownFields protoimpl.UnknownFields
  4473  
  4474  	// Limit results to projects with any of the specified refs, e.g.: refs/heads/main.
  4475  	// Ref SHA1 will be included in the results.
  4476  	Refs []string `protobuf:"bytes,1,rep,name=refs,proto3" json:"refs,omitempty"`
  4477  }
  4478  
  4479  func (x *ListProjectsRequest) Reset() {
  4480  	*x = ListProjectsRequest{}
  4481  	if protoimpl.UnsafeEnabled {
  4482  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[40]
  4483  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4484  		ms.StoreMessageInfo(mi)
  4485  	}
  4486  }
  4487  
  4488  func (x *ListProjectsRequest) String() string {
  4489  	return protoimpl.X.MessageStringOf(x)
  4490  }
  4491  
  4492  func (*ListProjectsRequest) ProtoMessage() {}
  4493  
  4494  func (x *ListProjectsRequest) ProtoReflect() protoreflect.Message {
  4495  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[40]
  4496  	if protoimpl.UnsafeEnabled && x != nil {
  4497  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4498  		if ms.LoadMessageInfo() == nil {
  4499  			ms.StoreMessageInfo(mi)
  4500  		}
  4501  		return ms
  4502  	}
  4503  	return mi.MessageOf(x)
  4504  }
  4505  
  4506  // Deprecated: Use ListProjectsRequest.ProtoReflect.Descriptor instead.
  4507  func (*ListProjectsRequest) Descriptor() ([]byte, []int) {
  4508  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{40}
  4509  }
  4510  
  4511  func (x *ListProjectsRequest) GetRefs() []string {
  4512  	if x != nil {
  4513  		return x.Refs
  4514  	}
  4515  	return nil
  4516  }
  4517  
  4518  // Describes a link to an external site
  4519  //
  4520  // Source of truth:
  4521  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#web-link-info
  4522  type WebLinkInfo struct {
  4523  	state         protoimpl.MessageState
  4524  	sizeCache     protoimpl.SizeCache
  4525  	unknownFields protoimpl.UnknownFields
  4526  
  4527  	// The link name
  4528  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  4529  	// Link URL
  4530  	Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
  4531  	// URL to link icon
  4532  	ImageUrl string `protobuf:"bytes,3,opt,name=image_url,json=imageUrl,proto3" json:"image_url,omitempty"`
  4533  }
  4534  
  4535  func (x *WebLinkInfo) Reset() {
  4536  	*x = WebLinkInfo{}
  4537  	if protoimpl.UnsafeEnabled {
  4538  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[41]
  4539  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4540  		ms.StoreMessageInfo(mi)
  4541  	}
  4542  }
  4543  
  4544  func (x *WebLinkInfo) String() string {
  4545  	return protoimpl.X.MessageStringOf(x)
  4546  }
  4547  
  4548  func (*WebLinkInfo) ProtoMessage() {}
  4549  
  4550  func (x *WebLinkInfo) ProtoReflect() protoreflect.Message {
  4551  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[41]
  4552  	if protoimpl.UnsafeEnabled && x != nil {
  4553  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4554  		if ms.LoadMessageInfo() == nil {
  4555  			ms.StoreMessageInfo(mi)
  4556  		}
  4557  		return ms
  4558  	}
  4559  	return mi.MessageOf(x)
  4560  }
  4561  
  4562  // Deprecated: Use WebLinkInfo.ProtoReflect.Descriptor instead.
  4563  func (*WebLinkInfo) Descriptor() ([]byte, []int) {
  4564  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{41}
  4565  }
  4566  
  4567  func (x *WebLinkInfo) GetName() string {
  4568  	if x != nil {
  4569  		return x.Name
  4570  	}
  4571  	return ""
  4572  }
  4573  
  4574  func (x *WebLinkInfo) GetUrl() string {
  4575  	if x != nil {
  4576  		return x.Url
  4577  	}
  4578  	return ""
  4579  }
  4580  
  4581  func (x *WebLinkInfo) GetImageUrl() string {
  4582  	if x != nil {
  4583  		return x.ImageUrl
  4584  	}
  4585  	return ""
  4586  }
  4587  
  4588  // Information about individual projects.
  4589  //
  4590  // Source of truth:
  4591  // https://gerrit-review.googlesource.com/Documentation/rest-api-projects.html#project-info
  4592  type ProjectInfo struct {
  4593  	state         protoimpl.MessageState
  4594  	sizeCache     protoimpl.SizeCache
  4595  	unknownFields protoimpl.UnknownFields
  4596  
  4597  	// The project name
  4598  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  4599  	// The name of the parent project
  4600  	Parent string `protobuf:"bytes,2,opt,name=parent,proto3" json:"parent,omitempty"`
  4601  	// The description of the project
  4602  	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
  4603  	// The state of the project
  4604  	State ProjectInfo_State `protobuf:"varint,4,opt,name=state,proto3,enum=gerrit.ProjectInfo_State" json:"state,omitempty"`
  4605  	// Map of ref names to HEAD revisions
  4606  	Refs map[string]string `protobuf:"bytes,5,rep,name=refs,proto3" json:"refs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  4607  	// List of links to the project in external sites
  4608  	WebLinks []*WebLinkInfo `protobuf:"bytes,6,rep,name=web_links,json=webLinks,proto3" json:"web_links,omitempty"`
  4609  }
  4610  
  4611  func (x *ProjectInfo) Reset() {
  4612  	*x = ProjectInfo{}
  4613  	if protoimpl.UnsafeEnabled {
  4614  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[42]
  4615  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4616  		ms.StoreMessageInfo(mi)
  4617  	}
  4618  }
  4619  
  4620  func (x *ProjectInfo) String() string {
  4621  	return protoimpl.X.MessageStringOf(x)
  4622  }
  4623  
  4624  func (*ProjectInfo) ProtoMessage() {}
  4625  
  4626  func (x *ProjectInfo) ProtoReflect() protoreflect.Message {
  4627  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[42]
  4628  	if protoimpl.UnsafeEnabled && x != nil {
  4629  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4630  		if ms.LoadMessageInfo() == nil {
  4631  			ms.StoreMessageInfo(mi)
  4632  		}
  4633  		return ms
  4634  	}
  4635  	return mi.MessageOf(x)
  4636  }
  4637  
  4638  // Deprecated: Use ProjectInfo.ProtoReflect.Descriptor instead.
  4639  func (*ProjectInfo) Descriptor() ([]byte, []int) {
  4640  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{42}
  4641  }
  4642  
  4643  func (x *ProjectInfo) GetName() string {
  4644  	if x != nil {
  4645  		return x.Name
  4646  	}
  4647  	return ""
  4648  }
  4649  
  4650  func (x *ProjectInfo) GetParent() string {
  4651  	if x != nil {
  4652  		return x.Parent
  4653  	}
  4654  	return ""
  4655  }
  4656  
  4657  func (x *ProjectInfo) GetDescription() string {
  4658  	if x != nil {
  4659  		return x.Description
  4660  	}
  4661  	return ""
  4662  }
  4663  
  4664  func (x *ProjectInfo) GetState() ProjectInfo_State {
  4665  	if x != nil {
  4666  		return x.State
  4667  	}
  4668  	return ProjectInfo_PROJECT_STATE_UNSPECIFIED
  4669  }
  4670  
  4671  func (x *ProjectInfo) GetRefs() map[string]string {
  4672  	if x != nil {
  4673  		return x.Refs
  4674  	}
  4675  	return nil
  4676  }
  4677  
  4678  func (x *ProjectInfo) GetWebLinks() []*WebLinkInfo {
  4679  	if x != nil {
  4680  		return x.WebLinks
  4681  	}
  4682  	return nil
  4683  }
  4684  
  4685  // Information about the projects on a host.
  4686  //
  4687  // Source of truth:
  4688  // https://gerrit-review.googlesource.com/Documentation/rest-api-projects.html#project-info
  4689  type ListProjectsResponse struct {
  4690  	state         protoimpl.MessageState
  4691  	sizeCache     protoimpl.SizeCache
  4692  	unknownFields protoimpl.UnknownFields
  4693  
  4694  	// A map of project names to ProjectInfo entries, sorted by project name.
  4695  	Projects map[string]*ProjectInfo `protobuf:"bytes,1,rep,name=Projects,proto3" json:"Projects,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  4696  }
  4697  
  4698  func (x *ListProjectsResponse) Reset() {
  4699  	*x = ListProjectsResponse{}
  4700  	if protoimpl.UnsafeEnabled {
  4701  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[43]
  4702  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4703  		ms.StoreMessageInfo(mi)
  4704  	}
  4705  }
  4706  
  4707  func (x *ListProjectsResponse) String() string {
  4708  	return protoimpl.X.MessageStringOf(x)
  4709  }
  4710  
  4711  func (*ListProjectsResponse) ProtoMessage() {}
  4712  
  4713  func (x *ListProjectsResponse) ProtoReflect() protoreflect.Message {
  4714  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[43]
  4715  	if protoimpl.UnsafeEnabled && x != nil {
  4716  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4717  		if ms.LoadMessageInfo() == nil {
  4718  			ms.StoreMessageInfo(mi)
  4719  		}
  4720  		return ms
  4721  	}
  4722  	return mi.MessageOf(x)
  4723  }
  4724  
  4725  // Deprecated: Use ListProjectsResponse.ProtoReflect.Descriptor instead.
  4726  func (*ListProjectsResponse) Descriptor() ([]byte, []int) {
  4727  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{43}
  4728  }
  4729  
  4730  func (x *ListProjectsResponse) GetProjects() map[string]*ProjectInfo {
  4731  	if x != nil {
  4732  		return x.Projects
  4733  	}
  4734  	return nil
  4735  }
  4736  
  4737  // Information to request information about a branch.
  4738  type RefInfoRequest struct {
  4739  	state         protoimpl.MessageState
  4740  	sizeCache     protoimpl.SizeCache
  4741  	unknownFields protoimpl.UnknownFields
  4742  
  4743  	// The project name
  4744  	Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
  4745  	// The ref ID (eg: refs/heads/main).
  4746  	Ref string `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
  4747  }
  4748  
  4749  func (x *RefInfoRequest) Reset() {
  4750  	*x = RefInfoRequest{}
  4751  	if protoimpl.UnsafeEnabled {
  4752  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[44]
  4753  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4754  		ms.StoreMessageInfo(mi)
  4755  	}
  4756  }
  4757  
  4758  func (x *RefInfoRequest) String() string {
  4759  	return protoimpl.X.MessageStringOf(x)
  4760  }
  4761  
  4762  func (*RefInfoRequest) ProtoMessage() {}
  4763  
  4764  func (x *RefInfoRequest) ProtoReflect() protoreflect.Message {
  4765  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[44]
  4766  	if protoimpl.UnsafeEnabled && x != nil {
  4767  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4768  		if ms.LoadMessageInfo() == nil {
  4769  			ms.StoreMessageInfo(mi)
  4770  		}
  4771  		return ms
  4772  	}
  4773  	return mi.MessageOf(x)
  4774  }
  4775  
  4776  // Deprecated: Use RefInfoRequest.ProtoReflect.Descriptor instead.
  4777  func (*RefInfoRequest) Descriptor() ([]byte, []int) {
  4778  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{44}
  4779  }
  4780  
  4781  func (x *RefInfoRequest) GetProject() string {
  4782  	if x != nil {
  4783  		return x.Project
  4784  	}
  4785  	return ""
  4786  }
  4787  
  4788  func (x *RefInfoRequest) GetRef() string {
  4789  	if x != nil {
  4790  		return x.Ref
  4791  	}
  4792  	return ""
  4793  }
  4794  
  4795  // Information about a branch.
  4796  //
  4797  // Source of truth:
  4798  // https://gerrit-review.googlesource.com/Documentation/rest-api-projects.html#branch-info
  4799  type RefInfo struct {
  4800  	state         protoimpl.MessageState
  4801  	sizeCache     protoimpl.SizeCache
  4802  	unknownFields protoimpl.UnknownFields
  4803  
  4804  	// The ref of the branch
  4805  	Ref string `protobuf:"bytes,1,opt,name=ref,proto3" json:"ref,omitempty"`
  4806  	// The revision the branch points to
  4807  	Revision string `protobuf:"bytes,2,opt,name=revision,proto3" json:"revision,omitempty"`
  4808  }
  4809  
  4810  func (x *RefInfo) Reset() {
  4811  	*x = RefInfo{}
  4812  	if protoimpl.UnsafeEnabled {
  4813  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[45]
  4814  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4815  		ms.StoreMessageInfo(mi)
  4816  	}
  4817  }
  4818  
  4819  func (x *RefInfo) String() string {
  4820  	return protoimpl.X.MessageStringOf(x)
  4821  }
  4822  
  4823  func (*RefInfo) ProtoMessage() {}
  4824  
  4825  func (x *RefInfo) ProtoReflect() protoreflect.Message {
  4826  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[45]
  4827  	if protoimpl.UnsafeEnabled && x != nil {
  4828  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4829  		if ms.LoadMessageInfo() == nil {
  4830  			ms.StoreMessageInfo(mi)
  4831  		}
  4832  		return ms
  4833  	}
  4834  	return mi.MessageOf(x)
  4835  }
  4836  
  4837  // Deprecated: Use RefInfo.ProtoReflect.Descriptor instead.
  4838  func (*RefInfo) Descriptor() ([]byte, []int) {
  4839  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{45}
  4840  }
  4841  
  4842  func (x *RefInfo) GetRef() string {
  4843  	if x != nil {
  4844  		return x.Ref
  4845  	}
  4846  	return ""
  4847  }
  4848  
  4849  func (x *RefInfo) GetRevision() string {
  4850  	if x != nil {
  4851  		return x.Revision
  4852  	}
  4853  	return ""
  4854  }
  4855  
  4856  // Options when requesting information about an account
  4857  //
  4858  // Source of truth:
  4859  // https://gerrit-review.googlesource.com/Documentation/rest-api-accounts.html#details
  4860  type AccountOptions struct {
  4861  	state         protoimpl.MessageState
  4862  	sizeCache     protoimpl.SizeCache
  4863  	unknownFields protoimpl.UnknownFields
  4864  
  4865  	// Include account details in the response
  4866  	Details bool `protobuf:"varint,1,opt,name=details,proto3" json:"details,omitempty"`
  4867  	// Include all registered emails
  4868  	// Requires the caller to have Modify Account global capability
  4869  	AllEmails bool `protobuf:"varint,2,opt,name=all_emails,json=allEmails,proto3" json:"all_emails,omitempty"`
  4870  }
  4871  
  4872  func (x *AccountOptions) Reset() {
  4873  	*x = AccountOptions{}
  4874  	if protoimpl.UnsafeEnabled {
  4875  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[46]
  4876  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4877  		ms.StoreMessageInfo(mi)
  4878  	}
  4879  }
  4880  
  4881  func (x *AccountOptions) String() string {
  4882  	return protoimpl.X.MessageStringOf(x)
  4883  }
  4884  
  4885  func (*AccountOptions) ProtoMessage() {}
  4886  
  4887  func (x *AccountOptions) ProtoReflect() protoreflect.Message {
  4888  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[46]
  4889  	if protoimpl.UnsafeEnabled && x != nil {
  4890  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4891  		if ms.LoadMessageInfo() == nil {
  4892  			ms.StoreMessageInfo(mi)
  4893  		}
  4894  		return ms
  4895  	}
  4896  	return mi.MessageOf(x)
  4897  }
  4898  
  4899  // Deprecated: Use AccountOptions.ProtoReflect.Descriptor instead.
  4900  func (*AccountOptions) Descriptor() ([]byte, []int) {
  4901  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{46}
  4902  }
  4903  
  4904  func (x *AccountOptions) GetDetails() bool {
  4905  	if x != nil {
  4906  		return x.Details
  4907  	}
  4908  	return false
  4909  }
  4910  
  4911  func (x *AccountOptions) GetAllEmails() bool {
  4912  	if x != nil {
  4913  		return x.AllEmails
  4914  	}
  4915  	return false
  4916  }
  4917  
  4918  // Information to request the list of OWNERS for a file/folder in a branch
  4919  type ListFileOwnersRequest struct {
  4920  	state         protoimpl.MessageState
  4921  	sizeCache     protoimpl.SizeCache
  4922  	unknownFields protoimpl.UnknownFields
  4923  
  4924  	// The project name
  4925  	Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
  4926  	// The ref ID (eg: refs/heads/main)
  4927  	Ref string `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
  4928  	// Path (relative to the repo root) to the file/folder in question
  4929  	Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
  4930  	// Options about how much detail to return in the AccountInfo
  4931  	Options *AccountOptions `protobuf:"bytes,4,opt,name=options,proto3" json:"options,omitempty"`
  4932  }
  4933  
  4934  func (x *ListFileOwnersRequest) Reset() {
  4935  	*x = ListFileOwnersRequest{}
  4936  	if protoimpl.UnsafeEnabled {
  4937  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[47]
  4938  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4939  		ms.StoreMessageInfo(mi)
  4940  	}
  4941  }
  4942  
  4943  func (x *ListFileOwnersRequest) String() string {
  4944  	return protoimpl.X.MessageStringOf(x)
  4945  }
  4946  
  4947  func (*ListFileOwnersRequest) ProtoMessage() {}
  4948  
  4949  func (x *ListFileOwnersRequest) ProtoReflect() protoreflect.Message {
  4950  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[47]
  4951  	if protoimpl.UnsafeEnabled && x != nil {
  4952  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  4953  		if ms.LoadMessageInfo() == nil {
  4954  			ms.StoreMessageInfo(mi)
  4955  		}
  4956  		return ms
  4957  	}
  4958  	return mi.MessageOf(x)
  4959  }
  4960  
  4961  // Deprecated: Use ListFileOwnersRequest.ProtoReflect.Descriptor instead.
  4962  func (*ListFileOwnersRequest) Descriptor() ([]byte, []int) {
  4963  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{47}
  4964  }
  4965  
  4966  func (x *ListFileOwnersRequest) GetProject() string {
  4967  	if x != nil {
  4968  		return x.Project
  4969  	}
  4970  	return ""
  4971  }
  4972  
  4973  func (x *ListFileOwnersRequest) GetRef() string {
  4974  	if x != nil {
  4975  		return x.Ref
  4976  	}
  4977  	return ""
  4978  }
  4979  
  4980  func (x *ListFileOwnersRequest) GetPath() string {
  4981  	if x != nil {
  4982  		return x.Path
  4983  	}
  4984  	return ""
  4985  }
  4986  
  4987  func (x *ListFileOwnersRequest) GetOptions() *AccountOptions {
  4988  	if x != nil {
  4989  		return x.Options
  4990  	}
  4991  	return nil
  4992  }
  4993  
  4994  // Information about a single OWNER
  4995  // NOTE: Gerrit OwnerInfo provides other fields beyond account,
  4996  // which can be added later.
  4997  type OwnerInfo struct {
  4998  	state         protoimpl.MessageState
  4999  	sizeCache     protoimpl.SizeCache
  5000  	unknownFields protoimpl.UnknownFields
  5001  
  5002  	Account *AccountInfo `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
  5003  }
  5004  
  5005  func (x *OwnerInfo) Reset() {
  5006  	*x = OwnerInfo{}
  5007  	if protoimpl.UnsafeEnabled {
  5008  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[48]
  5009  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5010  		ms.StoreMessageInfo(mi)
  5011  	}
  5012  }
  5013  
  5014  func (x *OwnerInfo) String() string {
  5015  	return protoimpl.X.MessageStringOf(x)
  5016  }
  5017  
  5018  func (*OwnerInfo) ProtoMessage() {}
  5019  
  5020  func (x *OwnerInfo) ProtoReflect() protoreflect.Message {
  5021  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[48]
  5022  	if protoimpl.UnsafeEnabled && x != nil {
  5023  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5024  		if ms.LoadMessageInfo() == nil {
  5025  			ms.StoreMessageInfo(mi)
  5026  		}
  5027  		return ms
  5028  	}
  5029  	return mi.MessageOf(x)
  5030  }
  5031  
  5032  // Deprecated: Use OwnerInfo.ProtoReflect.Descriptor instead.
  5033  func (*OwnerInfo) Descriptor() ([]byte, []int) {
  5034  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{48}
  5035  }
  5036  
  5037  func (x *OwnerInfo) GetAccount() *AccountInfo {
  5038  	if x != nil {
  5039  		return x.Account
  5040  	}
  5041  	return nil
  5042  }
  5043  
  5044  // Code OWNERS for a particular request
  5045  type ListOwnersResponse struct {
  5046  	state         protoimpl.MessageState
  5047  	sizeCache     protoimpl.SizeCache
  5048  	unknownFields protoimpl.UnknownFields
  5049  
  5050  	// The account(s) who are OWNERS
  5051  	Owners []*OwnerInfo `protobuf:"bytes,1,rep,name=owners,proto3" json:"owners,omitempty"`
  5052  }
  5053  
  5054  func (x *ListOwnersResponse) Reset() {
  5055  	*x = ListOwnersResponse{}
  5056  	if protoimpl.UnsafeEnabled {
  5057  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[49]
  5058  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5059  		ms.StoreMessageInfo(mi)
  5060  	}
  5061  }
  5062  
  5063  func (x *ListOwnersResponse) String() string {
  5064  	return protoimpl.X.MessageStringOf(x)
  5065  }
  5066  
  5067  func (*ListOwnersResponse) ProtoMessage() {}
  5068  
  5069  func (x *ListOwnersResponse) ProtoReflect() protoreflect.Message {
  5070  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[49]
  5071  	if protoimpl.UnsafeEnabled && x != nil {
  5072  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5073  		if ms.LoadMessageInfo() == nil {
  5074  			ms.StoreMessageInfo(mi)
  5075  		}
  5076  		return ms
  5077  	}
  5078  	return mi.MessageOf(x)
  5079  }
  5080  
  5081  // Deprecated: Use ListOwnersResponse.ProtoReflect.Descriptor instead.
  5082  func (*ListOwnersResponse) Descriptor() ([]byte, []int) {
  5083  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{49}
  5084  }
  5085  
  5086  func (x *ListOwnersResponse) GetOwners() []*OwnerInfo {
  5087  	if x != nil {
  5088  		return x.Owners
  5089  	}
  5090  	return nil
  5091  }
  5092  
  5093  type GetPureRevertRequest struct {
  5094  	state         protoimpl.MessageState
  5095  	sizeCache     protoimpl.SizeCache
  5096  	unknownFields protoimpl.UnknownFields
  5097  
  5098  	// The change number.
  5099  	Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
  5100  	// The project of this change. For example, "chromium/src".
  5101  	//
  5102  	// Optional, but recommended for better routing and faster RPC execution.
  5103  	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
  5104  }
  5105  
  5106  func (x *GetPureRevertRequest) Reset() {
  5107  	*x = GetPureRevertRequest{}
  5108  	if protoimpl.UnsafeEnabled {
  5109  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[50]
  5110  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5111  		ms.StoreMessageInfo(mi)
  5112  	}
  5113  }
  5114  
  5115  func (x *GetPureRevertRequest) String() string {
  5116  	return protoimpl.X.MessageStringOf(x)
  5117  }
  5118  
  5119  func (*GetPureRevertRequest) ProtoMessage() {}
  5120  
  5121  func (x *GetPureRevertRequest) ProtoReflect() protoreflect.Message {
  5122  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[50]
  5123  	if protoimpl.UnsafeEnabled && x != nil {
  5124  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5125  		if ms.LoadMessageInfo() == nil {
  5126  			ms.StoreMessageInfo(mi)
  5127  		}
  5128  		return ms
  5129  	}
  5130  	return mi.MessageOf(x)
  5131  }
  5132  
  5133  // Deprecated: Use GetPureRevertRequest.ProtoReflect.Descriptor instead.
  5134  func (*GetPureRevertRequest) Descriptor() ([]byte, []int) {
  5135  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{50}
  5136  }
  5137  
  5138  func (x *GetPureRevertRequest) GetNumber() int64 {
  5139  	if x != nil {
  5140  		return x.Number
  5141  	}
  5142  	return 0
  5143  }
  5144  
  5145  func (x *GetPureRevertRequest) GetProject() string {
  5146  	if x != nil {
  5147  		return x.Project
  5148  	}
  5149  	return ""
  5150  }
  5151  
  5152  // Information about the result of a pure revert check.
  5153  //
  5154  // Source of truth:
  5155  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#pure-revert-info
  5156  type PureRevertInfo struct {
  5157  	state         protoimpl.MessageState
  5158  	sizeCache     protoimpl.SizeCache
  5159  	unknownFields protoimpl.UnknownFields
  5160  
  5161  	// Outcome of the check as boolean.
  5162  	IsPureRevert bool `protobuf:"varint,1,opt,name=is_pure_revert,json=isPureRevert,proto3" json:"is_pure_revert,omitempty"`
  5163  }
  5164  
  5165  func (x *PureRevertInfo) Reset() {
  5166  	*x = PureRevertInfo{}
  5167  	if protoimpl.UnsafeEnabled {
  5168  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[51]
  5169  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5170  		ms.StoreMessageInfo(mi)
  5171  	}
  5172  }
  5173  
  5174  func (x *PureRevertInfo) String() string {
  5175  	return protoimpl.X.MessageStringOf(x)
  5176  }
  5177  
  5178  func (*PureRevertInfo) ProtoMessage() {}
  5179  
  5180  func (x *PureRevertInfo) ProtoReflect() protoreflect.Message {
  5181  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[51]
  5182  	if protoimpl.UnsafeEnabled && x != nil {
  5183  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5184  		if ms.LoadMessageInfo() == nil {
  5185  			ms.StoreMessageInfo(mi)
  5186  		}
  5187  		return ms
  5188  	}
  5189  	return mi.MessageOf(x)
  5190  }
  5191  
  5192  // Deprecated: Use PureRevertInfo.ProtoReflect.Descriptor instead.
  5193  func (*PureRevertInfo) Descriptor() ([]byte, []int) {
  5194  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{51}
  5195  }
  5196  
  5197  func (x *PureRevertInfo) GetIsPureRevert() bool {
  5198  	if x != nil {
  5199  		return x.IsPureRevert
  5200  	}
  5201  	return false
  5202  }
  5203  
  5204  // The SubmitRequirementResultInfo describes the result of evaluating a submit
  5205  // requirement on a change.
  5206  //
  5207  // Source of truth:
  5208  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#submit-requirement-result-info
  5209  type SubmitRequirementResultInfo struct {
  5210  	state         protoimpl.MessageState
  5211  	sizeCache     protoimpl.SizeCache
  5212  	unknownFields protoimpl.UnknownFields
  5213  
  5214  	// Name of The submit requirement.
  5215  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  5216  	// Description of the submit requirement.
  5217  	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
  5218  	// Status describing the result of evaluating the submit requirement.
  5219  	Status SubmitRequirementResultInfo_Status `protobuf:"varint,3,opt,name=status,proto3,enum=gerrit.SubmitRequirementResultInfo_Status" json:"status,omitempty"`
  5220  	// True if this submit requirement result was created from a legacy
  5221  	// SubmitRecord.
  5222  	IsLegacy bool `protobuf:"varint,4,opt,name=is_legacy,json=isLegacy,proto3" json:"is_legacy,omitempty"`
  5223  	// SubmitRequirementExpressionInfo containing the result of evaluating
  5224  	// the applicability expression.
  5225  	//
  5226  	// Not set if the submit requirement did not define an applicability
  5227  	// expression. Note that the following fields are always omitted in
  5228  	// `applicability_expression_result`.
  5229  	// - `expression`
  5230  	// - `passing_atoms`
  5231  	// - `failing_atoms`
  5232  	ApplicabilityExpressionResult *SubmitRequirementExpressionInfo `protobuf:"bytes,5,opt,name=applicability_expression_result,json=applicabilityExpressionResult,proto3" json:"applicability_expression_result,omitempty"`
  5233  	// SubmitRequirementExpressionInfo containing the result of evaluating
  5234  	// the submittability expression.
  5235  	//
  5236  	// Not set if the submit requirement does not apply.
  5237  	SubmittabilityExpressionResult *SubmitRequirementExpressionInfo `protobuf:"bytes,6,opt,name=submittability_expression_result,json=submittabilityExpressionResult,proto3" json:"submittability_expression_result,omitempty"`
  5238  	// SubmitRequirementExpressionInfo containing the result of evaluating
  5239  	// the override expression.
  5240  	//
  5241  	// Not set if the submit requirement did not define an override expression or
  5242  	// if it does not apply.
  5243  	OverrideExpressionResult *SubmitRequirementExpressionInfo `protobuf:"bytes,7,opt,name=override_expression_result,json=overrideExpressionResult,proto3" json:"override_expression_result,omitempty"`
  5244  }
  5245  
  5246  func (x *SubmitRequirementResultInfo) Reset() {
  5247  	*x = SubmitRequirementResultInfo{}
  5248  	if protoimpl.UnsafeEnabled {
  5249  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[52]
  5250  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5251  		ms.StoreMessageInfo(mi)
  5252  	}
  5253  }
  5254  
  5255  func (x *SubmitRequirementResultInfo) String() string {
  5256  	return protoimpl.X.MessageStringOf(x)
  5257  }
  5258  
  5259  func (*SubmitRequirementResultInfo) ProtoMessage() {}
  5260  
  5261  func (x *SubmitRequirementResultInfo) ProtoReflect() protoreflect.Message {
  5262  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[52]
  5263  	if protoimpl.UnsafeEnabled && x != nil {
  5264  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5265  		if ms.LoadMessageInfo() == nil {
  5266  			ms.StoreMessageInfo(mi)
  5267  		}
  5268  		return ms
  5269  	}
  5270  	return mi.MessageOf(x)
  5271  }
  5272  
  5273  // Deprecated: Use SubmitRequirementResultInfo.ProtoReflect.Descriptor instead.
  5274  func (*SubmitRequirementResultInfo) Descriptor() ([]byte, []int) {
  5275  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{52}
  5276  }
  5277  
  5278  func (x *SubmitRequirementResultInfo) GetName() string {
  5279  	if x != nil {
  5280  		return x.Name
  5281  	}
  5282  	return ""
  5283  }
  5284  
  5285  func (x *SubmitRequirementResultInfo) GetDescription() string {
  5286  	if x != nil {
  5287  		return x.Description
  5288  	}
  5289  	return ""
  5290  }
  5291  
  5292  func (x *SubmitRequirementResultInfo) GetStatus() SubmitRequirementResultInfo_Status {
  5293  	if x != nil {
  5294  		return x.Status
  5295  	}
  5296  	return SubmitRequirementResultInfo_SUBMIT_REQUIREMENT_STATUS_UNSPECIFIED
  5297  }
  5298  
  5299  func (x *SubmitRequirementResultInfo) GetIsLegacy() bool {
  5300  	if x != nil {
  5301  		return x.IsLegacy
  5302  	}
  5303  	return false
  5304  }
  5305  
  5306  func (x *SubmitRequirementResultInfo) GetApplicabilityExpressionResult() *SubmitRequirementExpressionInfo {
  5307  	if x != nil {
  5308  		return x.ApplicabilityExpressionResult
  5309  	}
  5310  	return nil
  5311  }
  5312  
  5313  func (x *SubmitRequirementResultInfo) GetSubmittabilityExpressionResult() *SubmitRequirementExpressionInfo {
  5314  	if x != nil {
  5315  		return x.SubmittabilityExpressionResult
  5316  	}
  5317  	return nil
  5318  }
  5319  
  5320  func (x *SubmitRequirementResultInfo) GetOverrideExpressionResult() *SubmitRequirementExpressionInfo {
  5321  	if x != nil {
  5322  		return x.OverrideExpressionResult
  5323  	}
  5324  	return nil
  5325  }
  5326  
  5327  // The SubmitRequirementExpressionInfo describes the result of evaluating
  5328  // a single submit requirement expression, for example label:code-review=+2.
  5329  type SubmitRequirementExpressionInfo struct {
  5330  	state         protoimpl.MessageState
  5331  	sizeCache     protoimpl.SizeCache
  5332  	unknownFields protoimpl.UnknownFields
  5333  
  5334  	// Expression of the submit requirement.
  5335  	// e.g., branch:refs/heads/foo and label:verified=+1.
  5336  	Expression string `protobuf:"bytes,1,opt,name=expression,proto3" json:"expression,omitempty"`
  5337  	// True if the submit requirement is fulfilled for the change.
  5338  	Fulfilled bool `protobuf:"varint,2,opt,name=fulfilled,proto3" json:"fulfilled,omitempty"`
  5339  	// List of passing atoms.
  5340  	// e.g., ["branch:refs/heads/foo"]
  5341  	PassingAtoms []string `protobuf:"bytes,3,rep,name=passing_atoms,json=passingAtoms,proto3" json:"passing_atoms,omitempty"`
  5342  	// List of failing atoms. This is similar to passing_atoms except that
  5343  	// it contains a list of the predicates that are not fulfilled for the change.
  5344  	FailingAtoms []string `protobuf:"bytes,4,rep,name=failing_atoms,json=failingAtoms,proto3" json:"failing_atoms,omitempty"`
  5345  	// If evaluating the submit requirement failed, this field will contains
  5346  	// an error message describing why it failed.
  5347  	ErrorMessage string `protobuf:"bytes,5,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
  5348  }
  5349  
  5350  func (x *SubmitRequirementExpressionInfo) Reset() {
  5351  	*x = SubmitRequirementExpressionInfo{}
  5352  	if protoimpl.UnsafeEnabled {
  5353  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[53]
  5354  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5355  		ms.StoreMessageInfo(mi)
  5356  	}
  5357  }
  5358  
  5359  func (x *SubmitRequirementExpressionInfo) String() string {
  5360  	return protoimpl.X.MessageStringOf(x)
  5361  }
  5362  
  5363  func (*SubmitRequirementExpressionInfo) ProtoMessage() {}
  5364  
  5365  func (x *SubmitRequirementExpressionInfo) ProtoReflect() protoreflect.Message {
  5366  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[53]
  5367  	if protoimpl.UnsafeEnabled && x != nil {
  5368  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5369  		if ms.LoadMessageInfo() == nil {
  5370  			ms.StoreMessageInfo(mi)
  5371  		}
  5372  		return ms
  5373  	}
  5374  	return mi.MessageOf(x)
  5375  }
  5376  
  5377  // Deprecated: Use SubmitRequirementExpressionInfo.ProtoReflect.Descriptor instead.
  5378  func (*SubmitRequirementExpressionInfo) Descriptor() ([]byte, []int) {
  5379  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{53}
  5380  }
  5381  
  5382  func (x *SubmitRequirementExpressionInfo) GetExpression() string {
  5383  	if x != nil {
  5384  		return x.Expression
  5385  	}
  5386  	return ""
  5387  }
  5388  
  5389  func (x *SubmitRequirementExpressionInfo) GetFulfilled() bool {
  5390  	if x != nil {
  5391  		return x.Fulfilled
  5392  	}
  5393  	return false
  5394  }
  5395  
  5396  func (x *SubmitRequirementExpressionInfo) GetPassingAtoms() []string {
  5397  	if x != nil {
  5398  		return x.PassingAtoms
  5399  	}
  5400  	return nil
  5401  }
  5402  
  5403  func (x *SubmitRequirementExpressionInfo) GetFailingAtoms() []string {
  5404  	if x != nil {
  5405  		return x.FailingAtoms
  5406  	}
  5407  	return nil
  5408  }
  5409  
  5410  func (x *SubmitRequirementExpressionInfo) GetErrorMessage() string {
  5411  	if x != nil {
  5412  		return x.ErrorMessage
  5413  	}
  5414  	return ""
  5415  }
  5416  
  5417  // Information to retrieve the diff between two historical states of a change.
  5418  //
  5419  // If `old is omitted, the parent of the `meta` SHA-1 is used.
  5420  // If `meta` is omitted, the current state of the change is used.
  5421  // If both are omitted, the difference between the current state of the change
  5422  // and its previous state is returned.
  5423  type GetMetaDiffRequest struct {
  5424  	state         protoimpl.MessageState
  5425  	sizeCache     protoimpl.SizeCache
  5426  	unknownFields protoimpl.UnknownFields
  5427  
  5428  	// The Gerrit project.
  5429  	// Specifying this field is optional, but encouraged because it requires less
  5430  	// work on the Gerrit side.
  5431  	Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
  5432  	// Change number.
  5433  	Number int64 `protobuf:"varint,2,opt,name=number,proto3" json:"number,omitempty"`
  5434  	// The SHA-1 of the old state to retrieve the diff to the state specified by
  5435  	// `meta`.
  5436  	Old string `protobuf:"bytes,3,opt,name=old,proto3" json:"old,omitempty"`
  5437  	// The SHA-1 of the new state to retrieve the diff to the state specified by
  5438  	// `old`.
  5439  	Meta string `protobuf:"bytes,4,opt,name=meta,proto3" json:"meta,omitempty"`
  5440  	// What to include in `old_change_info` and `new_change_info` of the response.
  5441  	Options []QueryOption `protobuf:"varint,5,rep,packed,name=options,proto3,enum=gerrit.QueryOption" json:"options,omitempty"`
  5442  }
  5443  
  5444  func (x *GetMetaDiffRequest) Reset() {
  5445  	*x = GetMetaDiffRequest{}
  5446  	if protoimpl.UnsafeEnabled {
  5447  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[54]
  5448  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5449  		ms.StoreMessageInfo(mi)
  5450  	}
  5451  }
  5452  
  5453  func (x *GetMetaDiffRequest) String() string {
  5454  	return protoimpl.X.MessageStringOf(x)
  5455  }
  5456  
  5457  func (*GetMetaDiffRequest) ProtoMessage() {}
  5458  
  5459  func (x *GetMetaDiffRequest) ProtoReflect() protoreflect.Message {
  5460  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[54]
  5461  	if protoimpl.UnsafeEnabled && x != nil {
  5462  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5463  		if ms.LoadMessageInfo() == nil {
  5464  			ms.StoreMessageInfo(mi)
  5465  		}
  5466  		return ms
  5467  	}
  5468  	return mi.MessageOf(x)
  5469  }
  5470  
  5471  // Deprecated: Use GetMetaDiffRequest.ProtoReflect.Descriptor instead.
  5472  func (*GetMetaDiffRequest) Descriptor() ([]byte, []int) {
  5473  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{54}
  5474  }
  5475  
  5476  func (x *GetMetaDiffRequest) GetProject() string {
  5477  	if x != nil {
  5478  		return x.Project
  5479  	}
  5480  	return ""
  5481  }
  5482  
  5483  func (x *GetMetaDiffRequest) GetNumber() int64 {
  5484  	if x != nil {
  5485  		return x.Number
  5486  	}
  5487  	return 0
  5488  }
  5489  
  5490  func (x *GetMetaDiffRequest) GetOld() string {
  5491  	if x != nil {
  5492  		return x.Old
  5493  	}
  5494  	return ""
  5495  }
  5496  
  5497  func (x *GetMetaDiffRequest) GetMeta() string {
  5498  	if x != nil {
  5499  		return x.Meta
  5500  	}
  5501  	return ""
  5502  }
  5503  
  5504  func (x *GetMetaDiffRequest) GetOptions() []QueryOption {
  5505  	if x != nil {
  5506  		return x.Options
  5507  	}
  5508  	return nil
  5509  }
  5510  
  5511  // Difference between two historical states of a change.
  5512  type MetaDiff struct {
  5513  	state         protoimpl.MessageState
  5514  	sizeCache     protoimpl.SizeCache
  5515  	unknownFields protoimpl.UnknownFields
  5516  
  5517  	// Change props added between the two states.
  5518  	Added *ChangeInfo `protobuf:"bytes,1,opt,name=added,proto3" json:"added,omitempty"`
  5519  	// Change props removed between the two states.
  5520  	Removed *ChangeInfo `protobuf:"bytes,2,opt,name=removed,proto3" json:"removed,omitempty"`
  5521  	// ChangeInfo of the old state.
  5522  	OldChangeInfo *ChangeInfo `protobuf:"bytes,3,opt,name=old_change_info,json=oldChangeInfo,proto3" json:"old_change_info,omitempty"`
  5523  	// ChangeInfo of the new state.
  5524  	NewChangeInfo *ChangeInfo `protobuf:"bytes,4,opt,name=new_change_info,json=newChangeInfo,proto3" json:"new_change_info,omitempty"`
  5525  }
  5526  
  5527  func (x *MetaDiff) Reset() {
  5528  	*x = MetaDiff{}
  5529  	if protoimpl.UnsafeEnabled {
  5530  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[55]
  5531  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5532  		ms.StoreMessageInfo(mi)
  5533  	}
  5534  }
  5535  
  5536  func (x *MetaDiff) String() string {
  5537  	return protoimpl.X.MessageStringOf(x)
  5538  }
  5539  
  5540  func (*MetaDiff) ProtoMessage() {}
  5541  
  5542  func (x *MetaDiff) ProtoReflect() protoreflect.Message {
  5543  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[55]
  5544  	if protoimpl.UnsafeEnabled && x != nil {
  5545  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5546  		if ms.LoadMessageInfo() == nil {
  5547  			ms.StoreMessageInfo(mi)
  5548  		}
  5549  		return ms
  5550  	}
  5551  	return mi.MessageOf(x)
  5552  }
  5553  
  5554  // Deprecated: Use MetaDiff.ProtoReflect.Descriptor instead.
  5555  func (*MetaDiff) Descriptor() ([]byte, []int) {
  5556  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{55}
  5557  }
  5558  
  5559  func (x *MetaDiff) GetAdded() *ChangeInfo {
  5560  	if x != nil {
  5561  		return x.Added
  5562  	}
  5563  	return nil
  5564  }
  5565  
  5566  func (x *MetaDiff) GetRemoved() *ChangeInfo {
  5567  	if x != nil {
  5568  		return x.Removed
  5569  	}
  5570  	return nil
  5571  }
  5572  
  5573  func (x *MetaDiff) GetOldChangeInfo() *ChangeInfo {
  5574  	if x != nil {
  5575  		return x.OldChangeInfo
  5576  	}
  5577  	return nil
  5578  }
  5579  
  5580  func (x *MetaDiff) GetNewChangeInfo() *ChangeInfo {
  5581  	if x != nil {
  5582  		return x.NewChangeInfo
  5583  	}
  5584  	return nil
  5585  }
  5586  
  5587  // Source of truth:
  5588  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#notify-info
  5589  type NotifyDetails_Info struct {
  5590  	state         protoimpl.MessageState
  5591  	sizeCache     protoimpl.SizeCache
  5592  	unknownFields protoimpl.UnknownFields
  5593  
  5594  	// IDs of the accounts that will be notified.
  5595  	Accounts []int64 `protobuf:"varint,1,rep,packed,name=accounts,proto3" json:"accounts,omitempty"`
  5596  }
  5597  
  5598  func (x *NotifyDetails_Info) Reset() {
  5599  	*x = NotifyDetails_Info{}
  5600  	if protoimpl.UnsafeEnabled {
  5601  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[56]
  5602  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5603  		ms.StoreMessageInfo(mi)
  5604  	}
  5605  }
  5606  
  5607  func (x *NotifyDetails_Info) String() string {
  5608  	return protoimpl.X.MessageStringOf(x)
  5609  }
  5610  
  5611  func (*NotifyDetails_Info) ProtoMessage() {}
  5612  
  5613  func (x *NotifyDetails_Info) ProtoReflect() protoreflect.Message {
  5614  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[56]
  5615  	if protoimpl.UnsafeEnabled && x != nil {
  5616  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5617  		if ms.LoadMessageInfo() == nil {
  5618  			ms.StoreMessageInfo(mi)
  5619  		}
  5620  		return ms
  5621  	}
  5622  	return mi.MessageOf(x)
  5623  }
  5624  
  5625  // Deprecated: Use NotifyDetails_Info.ProtoReflect.Descriptor instead.
  5626  func (*NotifyDetails_Info) Descriptor() ([]byte, []int) {
  5627  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{0, 0}
  5628  }
  5629  
  5630  func (x *NotifyDetails_Info) GetAccounts() []int64 {
  5631  	if x != nil {
  5632  		return x.Accounts
  5633  	}
  5634  	return nil
  5635  }
  5636  
  5637  type NotifyDetails_Recipient struct {
  5638  	state         protoimpl.MessageState
  5639  	sizeCache     protoimpl.SizeCache
  5640  	unknownFields protoimpl.UnknownFields
  5641  
  5642  	RecipientType NotifyDetails_RecipientType `protobuf:"varint,1,opt,name=recipient_type,json=recipientType,proto3,enum=gerrit.NotifyDetails_RecipientType" json:"recipient_type,omitempty"`
  5643  	Info          *NotifyDetails_Info         `protobuf:"bytes,2,opt,name=info,proto3" json:"info,omitempty"`
  5644  }
  5645  
  5646  func (x *NotifyDetails_Recipient) Reset() {
  5647  	*x = NotifyDetails_Recipient{}
  5648  	if protoimpl.UnsafeEnabled {
  5649  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[57]
  5650  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5651  		ms.StoreMessageInfo(mi)
  5652  	}
  5653  }
  5654  
  5655  func (x *NotifyDetails_Recipient) String() string {
  5656  	return protoimpl.X.MessageStringOf(x)
  5657  }
  5658  
  5659  func (*NotifyDetails_Recipient) ProtoMessage() {}
  5660  
  5661  func (x *NotifyDetails_Recipient) ProtoReflect() protoreflect.Message {
  5662  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[57]
  5663  	if protoimpl.UnsafeEnabled && x != nil {
  5664  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5665  		if ms.LoadMessageInfo() == nil {
  5666  			ms.StoreMessageInfo(mi)
  5667  		}
  5668  		return ms
  5669  	}
  5670  	return mi.MessageOf(x)
  5671  }
  5672  
  5673  // Deprecated: Use NotifyDetails_Recipient.ProtoReflect.Descriptor instead.
  5674  func (*NotifyDetails_Recipient) Descriptor() ([]byte, []int) {
  5675  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{0, 1}
  5676  }
  5677  
  5678  func (x *NotifyDetails_Recipient) GetRecipientType() NotifyDetails_RecipientType {
  5679  	if x != nil {
  5680  		return x.RecipientType
  5681  	}
  5682  	return NotifyDetails_RECIPIENT_TYPE_UNSPECIFIED
  5683  }
  5684  
  5685  func (x *NotifyDetails_Recipient) GetInfo() *NotifyDetails_Info {
  5686  	if x != nil {
  5687  		return x.Info
  5688  	}
  5689  	return nil
  5690  }
  5691  
  5692  type CommitInfo_Parent struct {
  5693  	state         protoimpl.MessageState
  5694  	sizeCache     protoimpl.SizeCache
  5695  	unknownFields protoimpl.UnknownFields
  5696  
  5697  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // TODO(tandrii): add subject when necessary.
  5698  }
  5699  
  5700  func (x *CommitInfo_Parent) Reset() {
  5701  	*x = CommitInfo_Parent{}
  5702  	if protoimpl.UnsafeEnabled {
  5703  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[61]
  5704  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5705  		ms.StoreMessageInfo(mi)
  5706  	}
  5707  }
  5708  
  5709  func (x *CommitInfo_Parent) String() string {
  5710  	return protoimpl.X.MessageStringOf(x)
  5711  }
  5712  
  5713  func (*CommitInfo_Parent) ProtoMessage() {}
  5714  
  5715  func (x *CommitInfo_Parent) ProtoReflect() protoreflect.Message {
  5716  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[61]
  5717  	if protoimpl.UnsafeEnabled && x != nil {
  5718  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5719  		if ms.LoadMessageInfo() == nil {
  5720  			ms.StoreMessageInfo(mi)
  5721  		}
  5722  		return ms
  5723  	}
  5724  	return mi.MessageOf(x)
  5725  }
  5726  
  5727  // Deprecated: Use CommitInfo_Parent.ProtoReflect.Descriptor instead.
  5728  func (*CommitInfo_Parent) Descriptor() ([]byte, []int) {
  5729  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{9, 0}
  5730  }
  5731  
  5732  func (x *CommitInfo_Parent) GetId() string {
  5733  	if x != nil {
  5734  		return x.Id
  5735  	}
  5736  	return ""
  5737  }
  5738  
  5739  // Contains information about a related change and commit.
  5740  //
  5741  // Source of truth:
  5742  // https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#related-change-and-commit-info
  5743  type GetRelatedChangesResponse_ChangeAndCommit struct {
  5744  	state         protoimpl.MessageState
  5745  	sizeCache     protoimpl.SizeCache
  5746  	unknownFields protoimpl.UnknownFields
  5747  
  5748  	// The project of the change or commit.
  5749  	Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
  5750  	// The commit as a CommitInfo entity.
  5751  	Commit *CommitInfo `protobuf:"bytes,2,opt,name=commit,proto3" json:"commit,omitempty"`
  5752  	// Optional. The change number.
  5753  	Number int64 `protobuf:"varint,3,opt,name=number,proto3" json:"number,omitempty"`
  5754  	// Optional. The patchset number.
  5755  	Patchset int64 `protobuf:"varint,4,opt,name=patchset,proto3" json:"patchset,omitempty"`
  5756  	// Optional. The current patchset number.
  5757  	CurrentPatchset int64 `protobuf:"varint,5,opt,name=current_patchset,json=currentPatchset,proto3" json:"current_patchset,omitempty"`
  5758  	// Optional. The status of the change.
  5759  	Status ChangeStatus `protobuf:"varint,6,opt,name=status,proto3,enum=gerrit.ChangeStatus" json:"status,omitempty"`
  5760  }
  5761  
  5762  func (x *GetRelatedChangesResponse_ChangeAndCommit) Reset() {
  5763  	*x = GetRelatedChangesResponse_ChangeAndCommit{}
  5764  	if protoimpl.UnsafeEnabled {
  5765  		mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[68]
  5766  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5767  		ms.StoreMessageInfo(mi)
  5768  	}
  5769  }
  5770  
  5771  func (x *GetRelatedChangesResponse_ChangeAndCommit) String() string {
  5772  	return protoimpl.X.MessageStringOf(x)
  5773  }
  5774  
  5775  func (*GetRelatedChangesResponse_ChangeAndCommit) ProtoMessage() {}
  5776  
  5777  func (x *GetRelatedChangesResponse_ChangeAndCommit) ProtoReflect() protoreflect.Message {
  5778  	mi := &file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[68]
  5779  	if protoimpl.UnsafeEnabled && x != nil {
  5780  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  5781  		if ms.LoadMessageInfo() == nil {
  5782  			ms.StoreMessageInfo(mi)
  5783  		}
  5784  		return ms
  5785  	}
  5786  	return mi.MessageOf(x)
  5787  }
  5788  
  5789  // Deprecated: Use GetRelatedChangesResponse_ChangeAndCommit.ProtoReflect.Descriptor instead.
  5790  func (*GetRelatedChangesResponse_ChangeAndCommit) Descriptor() ([]byte, []int) {
  5791  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP(), []int{39, 0}
  5792  }
  5793  
  5794  func (x *GetRelatedChangesResponse_ChangeAndCommit) GetProject() string {
  5795  	if x != nil {
  5796  		return x.Project
  5797  	}
  5798  	return ""
  5799  }
  5800  
  5801  func (x *GetRelatedChangesResponse_ChangeAndCommit) GetCommit() *CommitInfo {
  5802  	if x != nil {
  5803  		return x.Commit
  5804  	}
  5805  	return nil
  5806  }
  5807  
  5808  func (x *GetRelatedChangesResponse_ChangeAndCommit) GetNumber() int64 {
  5809  	if x != nil {
  5810  		return x.Number
  5811  	}
  5812  	return 0
  5813  }
  5814  
  5815  func (x *GetRelatedChangesResponse_ChangeAndCommit) GetPatchset() int64 {
  5816  	if x != nil {
  5817  		return x.Patchset
  5818  	}
  5819  	return 0
  5820  }
  5821  
  5822  func (x *GetRelatedChangesResponse_ChangeAndCommit) GetCurrentPatchset() int64 {
  5823  	if x != nil {
  5824  		return x.CurrentPatchset
  5825  	}
  5826  	return 0
  5827  }
  5828  
  5829  func (x *GetRelatedChangesResponse_ChangeAndCommit) GetStatus() ChangeStatus {
  5830  	if x != nil {
  5831  		return x.Status
  5832  	}
  5833  	return ChangeStatus_CHANGE_STATUS_INVALID
  5834  }
  5835  
  5836  var File_go_chromium_org_luci_common_proto_gerrit_gerrit_proto protoreflect.FileDescriptor
  5837  
  5838  var file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDesc = []byte{
  5839  	0x0a, 0x35, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
  5840  	0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x70, 0x72,
  5841  	0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2f, 0x67, 0x65, 0x72, 0x72, 0x69,
  5842  	0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x1a,
  5843  	0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  5844  	0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f,
  5845  	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69,
  5846  	0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf5, 0x02,
  5847  	0x0a, 0x0d, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12,
  5848  	0x3f, 0x0a, 0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20,
  5849  	0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4e, 0x6f, 0x74,
  5850  	0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x52, 0x65, 0x63, 0x69, 0x70,
  5851  	0x69, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73,
  5852  	0x1a, 0x22, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x6f,
  5853  	0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x08, 0x61, 0x63, 0x63, 0x6f,
  5854  	0x75, 0x6e, 0x74, 0x73, 0x1a, 0x87, 0x01, 0x0a, 0x09, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65,
  5855  	0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x0e, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f,
  5856  	0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x67, 0x65, 0x72,
  5857  	0x72, 0x69, 0x74, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
  5858  	0x73, 0x2e, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52,
  5859  	0x0d, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e,
  5860  	0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
  5861  	0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61,
  5862  	0x69, 0x6c, 0x73, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x75,
  5863  	0x0a, 0x0d, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12,
  5864  	0x1e, 0x0a, 0x1a, 0x52, 0x45, 0x43, 0x49, 0x50, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50,
  5865  	0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
  5866  	0x15, 0x0a, 0x11, 0x52, 0x45, 0x43, 0x49, 0x50, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50,
  5867  	0x45, 0x5f, 0x54, 0x4f, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x45, 0x43, 0x49, 0x50, 0x49,
  5868  	0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x43, 0x10, 0x02, 0x12, 0x16, 0x0a,
  5869  	0x12, 0x52, 0x45, 0x43, 0x49, 0x50, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
  5870  	0x42, 0x43, 0x43, 0x10, 0x03, 0x22, 0x87, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x68,
  5871  	0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05,
  5872  	0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65,
  5873  	0x72, 0x79, 0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20,
  5874  	0x03, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x51, 0x75, 0x65,
  5875  	0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
  5876  	0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
  5877  	0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65,
  5878  	0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22,
  5879  	0x66, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65,
  5880  	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65,
  5881  	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74,
  5882  	0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x63, 0x68, 0x61,
  5883  	0x6e, 0x67, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x6f, 0x72, 0x65, 0x5f, 0x63, 0x68, 0x61,
  5884  	0x6e, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6d, 0x6f, 0x72, 0x65,
  5885  	0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x22, 0x87, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x43,
  5886  	0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06,
  5887  	0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75,
  5888  	0x6d, 0x62, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
  5889  	0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x51,
  5890  	0x75, 0x65, 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69,
  5891  	0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03,
  5892  	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a,
  5893  	0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x74,
  5894  	0x61, 0x22, 0xb1, 0x01, 0x0a, 0x0b, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66,
  5895  	0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
  5896  	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x02,
  5897  	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x29, 0x0a, 0x10, 0x73,
  5898  	0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x18,
  5899  	0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79,
  5900  	0x45, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61,
  5901  	0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61,
  5902  	0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64,
  5903  	0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49,
  5904  	0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52,
  5905  	0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0x39, 0x0a, 0x0d, 0x47, 0x69, 0x74, 0x50, 0x65, 0x72, 0x73,
  5906  	0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
  5907  	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d,
  5908  	0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c,
  5909  	0x22, 0x97, 0x09, 0x0a, 0x0a, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12,
  5910  	0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
  5911  	0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72,
  5912  	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e,
  5913  	0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x6f, 0x77, 0x6e,
  5914  	0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20,
  5915  	0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x10, 0x0a, 0x03,
  5916  	0x72, 0x65, 0x66, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x66, 0x12, 0x2c,
  5917  	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14,
  5918  	0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x74,
  5919  	0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x29, 0x0a, 0x10,
  5920  	0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  5921  	0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x52,
  5922  	0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x09, 0x72, 0x65, 0x76, 0x69, 0x73,
  5923  	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x65, 0x72,
  5924  	0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x52,
  5925  	0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x72,
  5926  	0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x36, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65,
  5927  	0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69,
  5928  	0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x4c, 0x61, 0x62,
  5929  	0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73,
  5930  	0x12, 0x35, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03,
  5931  	0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e,
  5932  	0x67, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x6d,
  5933  	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x69,
  5934  	0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e,
  5935  	0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65,
  5936  	0x6e, 0x74, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d,
  5937  	0x65, 0x6e, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x61,
  5938  	0x62, 0x6c, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x6d, 0x69,
  5939  	0x74, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x70, 0x72, 0x69,
  5940  	0x76, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x50, 0x72,
  5941  	0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67,
  5942  	0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67,
  5943  	0x73, 0x12, 0x34, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01,
  5944  	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  5945  	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07,
  5946  	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74,
  5947  	0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  5948  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
  5949  	0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x38, 0x0a,
  5950  	0x09, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b,
  5951  	0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  5952  	0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x75,
  5953  	0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x76, 0x65, 0x72,
  5954  	0x74, 0x5f, 0x6f, 0x66, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x72, 0x65, 0x76, 0x65,
  5955  	0x72, 0x74, 0x4f, 0x66, 0x12, 0x31, 0x0a, 0x15, 0x63, 0x68, 0x65, 0x72, 0x72, 0x79, 0x5f, 0x70,
  5956  	0x69, 0x63, 0x6b, 0x5f, 0x6f, 0x66, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x10, 0x20,
  5957  	0x01, 0x28, 0x03, 0x52, 0x12, 0x63, 0x68, 0x65, 0x72, 0x72, 0x79, 0x50, 0x69, 0x63, 0x6b, 0x4f,
  5958  	0x66, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x37, 0x0a, 0x09, 0x72, 0x65, 0x76, 0x69, 0x65,
  5959  	0x77, 0x65, 0x72, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x65, 0x72,
  5960  	0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74,
  5961  	0x75, 0x73, 0x4d, 0x61, 0x70, 0x52, 0x09, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73,
  5962  	0x12, 0x1e, 0x0a, 0x0b, 0x6d, 0x65, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x76, 0x5f, 0x69, 0x64, 0x18,
  5963  	0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x74, 0x61, 0x52, 0x65, 0x76, 0x49, 0x64,
  5964  	0x12, 0x54, 0x0a, 0x13, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69,
  5965  	0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e,
  5966  	0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71,
  5967  	0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x49, 0x6e,
  5968  	0x66, 0x6f, 0x52, 0x12, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72,
  5969  	0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63,
  5970  	0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74,
  5971  	0x12, 0x16, 0x0a, 0x06, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09,
  5972  	0x52, 0x06, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x1a, 0x52, 0x0a, 0x0e, 0x52, 0x65, 0x76, 0x69,
  5973  	0x73, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
  5974  	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2a, 0x0a, 0x05,
  5975  	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x65,
  5976  	0x72, 0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66,
  5977  	0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x4c, 0x0a, 0x0b,
  5978  	0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
  5979  	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x27, 0x0a,
  5980  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x67,
  5981  	0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52,
  5982  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x9c, 0x01, 0x0a, 0x11, 0x52,
  5983  	0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4d, 0x61, 0x70,
  5984  	0x12, 0x31, 0x0a, 0x09, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20,
  5985  	0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63, 0x63,
  5986  	0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77,
  5987  	0x65, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x03, 0x63, 0x63, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
  5988  	0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
  5989  	0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x63, 0x63, 0x73, 0x12, 0x2d, 0x0a, 0x07, 0x72, 0x65,
  5990  	0x6d, 0x6f, 0x76, 0x65, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65,
  5991  	0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f,
  5992  	0x52, 0x07, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x22, 0x9b, 0x04, 0x0a, 0x0c, 0x52, 0x65,
  5993  	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2d, 0x0a, 0x04, 0x6b, 0x69,
  5994  	0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69,
  5995  	0x74, 0x2e, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x4b,
  5996  	0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d,
  5997  	0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65,
  5998  	0x72, 0x12, 0x2f, 0x0a, 0x08, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20,
  5999  	0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63, 0x63,
  6000  	0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64,
  6001  	0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
  6002  	0x03, 0x72, 0x65, 0x66, 0x12, 0x34, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18,
  6003  	0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
  6004  	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
  6005  	0x70, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65,
  6006  	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
  6007  	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x06,
  6008  	0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67,
  6009  	0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x49, 0x6e, 0x66, 0x6f,
  6010  	0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x35, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65,
  6011  	0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74,
  6012  	0x2e, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x46, 0x69,
  6013  	0x6c, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x1a,
  6014  	0x4a, 0x0a, 0x0a, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
  6015  	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
  6016  	0x26, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10,
  6017  	0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f,
  6018  	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x7a, 0x0a, 0x04, 0x4b,
  6019  	0x69, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x0c, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x49, 0x4e, 0x56, 0x41,
  6020  	0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x57, 0x4f, 0x52, 0x4b, 0x10,
  6021  	0x01, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x52, 0x49, 0x56, 0x49, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x42,
  6022  	0x41, 0x53, 0x45, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x4d, 0x45, 0x52, 0x47, 0x45, 0x5f, 0x46,
  6023  	0x49, 0x52, 0x53, 0x54, 0x5f, 0x50, 0x41, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41,
  6024  	0x54, 0x45, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x4e, 0x4f, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f,
  6025  	0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x4e, 0x4f, 0x5f, 0x43,
  6026  	0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x05, 0x22, 0xb4, 0x01, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, 0x6d,
  6027  	0x69, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
  6028  	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x33, 0x0a, 0x07, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
  6029  	0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74,
  6030  	0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x61, 0x72, 0x65,
  6031  	0x6e, 0x74, 0x52, 0x07, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6d,
  6032  	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65,
  6033  	0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2d, 0x0a, 0x06, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x18,
  6034  	0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x47,
  6035  	0x69, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x61, 0x75,
  6036  	0x74, 0x68, 0x6f, 0x72, 0x1a, 0x18, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x0e,
  6037  	0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xe2,
  6038  	0x03, 0x0a, 0x09, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08,
  6039  	0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08,
  6040  	0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x2f, 0x0a, 0x08, 0x61, 0x70, 0x70, 0x72,
  6041  	0x6f, 0x76, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72,
  6042  	0x72, 0x69, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52,
  6043  	0x08, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x12, 0x2f, 0x0a, 0x08, 0x72, 0x65, 0x6a,
  6044  	0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65,
  6045  	0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f,
  6046  	0x52, 0x08, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x35, 0x0a, 0x0b, 0x72, 0x65,
  6047  	0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
  6048  	0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
  6049  	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65,
  6050  	0x64, 0x12, 0x2f, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x6c, 0x69, 0x6b, 0x65, 0x64, 0x18, 0x05, 0x20,
  6051  	0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63, 0x63,
  6052  	0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6c, 0x69, 0x6b,
  6053  	0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x18, 0x06,
  6054  	0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x12, 0x14,
  6055  	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76,
  6056  	0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f,
  6057  	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x64, 0x65, 0x66,
  6058  	0x61, 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x26, 0x0a, 0x03, 0x61, 0x6c, 0x6c,
  6059  	0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e,
  6060  	0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x61, 0x6c,
  6061  	0x6c, 0x12, 0x35, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28,
  6062  	0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c,
  6063  	0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
  6064  	0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x56, 0x61, 0x6c, 0x75,
  6065  	0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
  6066  	0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
  6067  	0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
  6068  	0x02, 0x38, 0x01, 0x22, 0xff, 0x01, 0x0a, 0x0c, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c,
  6069  	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x27, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01,
  6070  	0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f,
  6071  	0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x14, 0x0a,
  6072  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61,
  6073  	0x6c, 0x75, 0x65, 0x12, 0x4d, 0x0a, 0x16, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64,
  6074  	0x5f, 0x76, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x03, 0x20,
  6075  	0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x56, 0x6f, 0x74,
  6076  	0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x14, 0x70, 0x65,
  6077  	0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x56, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e,
  6078  	0x67, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
  6079  	0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  6080  	0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x04, 0x64, 0x61,
  6081  	0x74, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
  6082  	0x03, 0x74, 0x61, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x75, 0x62,
  6083  	0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x6f, 0x73, 0x74, 0x53,
  6084  	0x75, 0x62, 0x6d, 0x69, 0x74, 0x22, 0x35, 0x0a, 0x0f, 0x56, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x52,
  6085  	0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x18,
  6086  	0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6d, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x61,
  6087  	0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x22, 0xe2, 0x01, 0x0a,
  6088  	0x11, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x6e,
  6089  	0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
  6090  	0x69, 0x64, 0x12, 0x2b, 0x0a, 0x06, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01,
  6091  	0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f,
  6092  	0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x12,
  6093  	0x34, 0x0a, 0x0b, 0x72, 0x65, 0x61, 0x6c, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x18, 0x03,
  6094  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63,
  6095  	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x6c, 0x41,
  6096  	0x75, 0x74, 0x68, 0x6f, 0x72, 0x12, 0x2e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20,
  6097  	0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
  6098  	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52,
  6099  	0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
  6100  	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
  6101  	0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61,
  6102  	0x67, 0x22, 0x89, 0x02, 0x0a, 0x0b, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e,
  6103  	0x74, 0x12, 0x32, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
  6104  	0x0e, 0x32, 0x1a, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x69,
  6105  	0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73,
  6106  	0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63,
  6107  	0x6b, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x61,
  6108  	0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x54, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79,
  6109  	0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x8c,
  6110  	0x01, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x22, 0x0a, 0x1e, 0x52, 0x45, 0x51,
  6111  	0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f,
  6112  	0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a,
  6113  	0x15, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41,
  6114  	0x54, 0x55, 0x53, 0x5f, 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x20, 0x0a, 0x1c, 0x52, 0x45, 0x51, 0x55,
  6115  	0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x4e,
  6116  	0x4f, 0x54, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x52, 0x45,
  6117  	0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53,
  6118  	0x5f, 0x52, 0x55, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0xa1, 0x02,
  6119  	0x0a, 0x08, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2f, 0x0a, 0x06, 0x73, 0x74,
  6120  	0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x67, 0x65, 0x72,
  6121  	0x72, 0x69, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x53, 0x74, 0x61,
  6122  	0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x62,
  6123  	0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x62, 0x69, 0x6e,
  6124  	0x61, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18,
  6125  	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x6c, 0x64, 0x50, 0x61, 0x74, 0x68, 0x12, 0x25,
  6126  	0x0a, 0x0e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x65, 0x64,
  6127  	0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x49, 0x6e, 0x73,
  6128  	0x65, 0x72, 0x74, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x64,
  6129  	0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x6c, 0x69,
  6130  	0x6e, 0x65, 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69,
  6131  	0x7a, 0x65, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
  6132  	0x73, 0x69, 0x7a, 0x65, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a,
  6133  	0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22, 0x32, 0x0a,
  6134  	0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x05, 0x0a, 0x01, 0x4d, 0x10, 0x00, 0x12, 0x05,
  6135  	0x0a, 0x01, 0x41, 0x10, 0x01, 0x12, 0x05, 0x0a, 0x01, 0x44, 0x10, 0x02, 0x12, 0x05, 0x0a, 0x01,
  6136  	0x52, 0x10, 0x03, 0x12, 0x05, 0x0a, 0x01, 0x43, 0x10, 0x04, 0x12, 0x05, 0x0a, 0x01, 0x57, 0x10,
  6137  	0x05, 0x22, 0xa4, 0x01, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e,
  6138  	0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f,
  6139  	0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a,
  6140  	0x65, 0x63, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
  6141  	0x52, 0x03, 0x72, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74,
  6142  	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12,
  6143  	0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x18, 0x04,
  6144  	0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
  6145  	0x12, 0x26, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e,
  6146  	0x32, 0x0e, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79,
  6147  	0x52, 0x06, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x22, 0x47, 0x0a, 0x13, 0x53, 0x75, 0x62, 0x6d,
  6148  	0x69, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
  6149  	0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
  6150  	0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65,
  6151  	0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
  6152  	0x74, 0x22, 0x6a, 0x0a, 0x15, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73,
  6153  	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75,
  6154  	0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62,
  6155  	0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
  6156  	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
  6157  	0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x05,
  6158  	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x3a, 0x0a,
  6159  	0x0a, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x06, 0x73,
  6160  	0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x67, 0x65,
  6161  	0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75,
  6162  	0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x87, 0x01, 0x0a, 0x1c, 0x43, 0x68,
  6163  	0x61, 0x6e, 0x67, 0x65, 0x45, 0x64, 0x69, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74,
  6164  	0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75,
  6165  	0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62,
  6166  	0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20,
  6167  	0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09,
  6168  	0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
  6169  	0x08, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e,
  6170  	0x74, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74,
  6171  	0x65, 0x6e, 0x74, 0x22, 0x6d, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x64, 0x69,
  6172  	0x74, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75,
  6173  	0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20,
  6174  	0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70,
  6175  	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72,
  6176  	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61,
  6177  	0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61,
  6178  	0x74, 0x68, 0x22, 0x4c, 0x0a, 0x18, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x64, 0x69, 0x74,
  6179  	0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16,
  6180  	0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
  6181  	0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
  6182  	0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
  6183  	0x22, 0x61, 0x0a, 0x13, 0x52, 0x65, 0x76, 0x65, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
  6184  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65,
  6185  	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12,
  6186  	0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
  6187  	0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73,
  6188  	0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73,
  6189  	0x61, 0x67, 0x65, 0x22, 0x62, 0x0a, 0x14, 0x41, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x43, 0x68,
  6190  	0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e,
  6191  	0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d,
  6192  	0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02,
  6193  	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a,
  6194  	0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
  6195  	0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xc9, 0x02, 0x0a, 0x12, 0x41, 0x64, 0x64, 0x52,
  6196  	0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16,
  6197  	0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
  6198  	0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
  6199  	0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
  6200  	0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01,
  6201  	0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x12, 0x36, 0x0a, 0x05,
  6202  	0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x67, 0x65,
  6203  	0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72,
  6204  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73,
  6205  	0x74, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65,
  6206  	0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d,
  6207  	0x65, 0x64, 0x12, 0x26, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01,
  6208  	0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4e, 0x6f, 0x74, 0x69,
  6209  	0x66, 0x79, 0x52, 0x06, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x22, 0x67, 0x0a, 0x05, 0x53, 0x74,
  6210  	0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x41, 0x44, 0x44, 0x5f, 0x52, 0x45, 0x56, 0x49, 0x45,
  6211  	0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43,
  6212  	0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x41, 0x44, 0x44, 0x5f, 0x52,
  6213  	0x45, 0x56, 0x49, 0x45, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x45,
  6214  	0x56, 0x49, 0x45, 0x57, 0x45, 0x52, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x44, 0x44, 0x5f,
  6215  	0x52, 0x45, 0x56, 0x49, 0x45, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43,
  6216  	0x43, 0x10, 0x02, 0x22, 0xbe, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72,
  6217  	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2d, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
  6218  	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41,
  6219  	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f,
  6220  	0x75, 0x6e, 0x74, 0x12, 0x41, 0x0a, 0x09, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x73,
  6221  	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e,
  6222  	0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x70, 0x70,
  6223  	0x72, 0x6f, 0x76, 0x61, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x61, 0x70, 0x70,
  6224  	0x72, 0x6f, 0x76, 0x61, 0x6c, 0x73, 0x1a, 0x3c, 0x0a, 0x0e, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76,
  6225  	0x61, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
  6226  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
  6227  	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
  6228  	0x3a, 0x02, 0x38, 0x01, 0x22, 0xb5, 0x01, 0x0a, 0x11, 0x41, 0x64, 0x64, 0x52, 0x65, 0x76, 0x69,
  6229  	0x65, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e,
  6230  	0x70, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74,
  6231  	0x12, 0x32, 0x0a, 0x09, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20,
  6232  	0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x76,
  6233  	0x69, 0x65, 0x77, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x72, 0x65, 0x76, 0x69, 0x65,
  6234  	0x77, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x03, 0x63, 0x63, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
  6235  	0x0b, 0x32, 0x14, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x76, 0x69, 0x65,
  6236  	0x77, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x63, 0x63, 0x73, 0x12, 0x14, 0x0a, 0x05,
  6237  	0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72,
  6238  	0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x18, 0x05, 0x20,
  6239  	0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x22, 0x68, 0x0a, 0x15,
  6240  	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, 0x65,
  6241  	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18,
  6242  	0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a,
  6243  	0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
  6244  	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75,
  6245  	0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x63, 0x63,
  6246  	0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xf9, 0x05, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x52, 0x65,
  6247  	0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e,
  6248  	0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d,
  6249  	0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02,
  6250  	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1f, 0x0a,
  6251  	0x0b, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
  6252  	0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x18,
  6253  	0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
  6254  	0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3c, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65,
  6255  	0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69,
  6256  	0x74, 0x2e, 0x53, 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65,
  6257  	0x73, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06,
  6258  	0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x06, 0x20,
  6259  	0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x26, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x69,
  6260  	0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69,
  6261  	0x74, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x52, 0x06, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79,
  6262  	0x12, 0x3c, 0x0a, 0x0e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69,
  6263  	0x6c, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69,
  6264  	0x74, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52,
  6265  	0x0d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x20,
  6266  	0x0a, 0x0c, 0x6f, 0x6e, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x6c, 0x66, 0x5f, 0x6f, 0x66, 0x18, 0x09,
  6267  	0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6f, 0x6e, 0x42, 0x65, 0x68, 0x61, 0x6c, 0x66, 0x4f, 0x66,
  6268  	0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x61, 0x64, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52,
  6269  	0x05, 0x72, 0x65, 0x61, 0x64, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69,
  6270  	0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08,
  6271  	0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73,
  6272  	0x12, 0x4a, 0x0a, 0x14, 0x61, 0x64, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x6e,
  6273  	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19,
  6274  	0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f,
  6275  	0x6e, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x11, 0x61, 0x64, 0x64, 0x54, 0x6f,
  6276  	0x41, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x12, 0x54, 0x0a, 0x19,
  6277  	0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x61, 0x74, 0x74, 0x65,
  6278  	0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32,
  6279  	0x19, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69,
  6280  	0x6f, 0x6e, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x16, 0x72, 0x65, 0x6d, 0x6f,
  6281  	0x76, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x41, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x53,
  6282  	0x65, 0x74, 0x12, 0x4e, 0x0a, 0x24, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x61, 0x75, 0x74,
  6283  	0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e,
  6284  	0x5f, 0x73, 0x65, 0x74, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08,
  6285  	0x52, 0x20, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69,
  6286  	0x63, 0x41, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x52, 0x75, 0x6c,
  6287  	0x65, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73, 0x18,
  6288  	0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x52,
  6289  	0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x09, 0x72, 0x65,
  6290  	0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c,
  6291  	0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
  6292  	0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
  6293  	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
  6294  	0x38, 0x01, 0x22, 0xcd, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x49,
  6295  	0x6e, 0x70, 0x75, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72,
  6296  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72,
  6297  	0x12, 0x31, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32,
  6298  	0x1b, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65,
  6299  	0x72, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74,
  6300  	0x61, 0x74, 0x65, 0x22, 0x6d, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x20,
  6301  	0x52, 0x45, 0x56, 0x49, 0x45, 0x57, 0x45, 0x52, 0x5f, 0x49, 0x4e, 0x50, 0x55, 0x54, 0x5f, 0x53,
  6302  	0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
  6303  	0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x52, 0x45, 0x56, 0x49, 0x45, 0x57, 0x45, 0x52, 0x5f, 0x49,
  6304  	0x4e, 0x50, 0x55, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x56, 0x49, 0x45,
  6305  	0x57, 0x45, 0x52, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x52, 0x45, 0x56, 0x49, 0x45, 0x57, 0x45,
  6306  	0x52, 0x5f, 0x49, 0x4e, 0x50, 0x55, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x43,
  6307  	0x10, 0x02, 0x22, 0x9f, 0x02, 0x0a, 0x0c, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x73,
  6308  	0x75, 0x6c, 0x74, 0x12, 0x38, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20,
  6309  	0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x76,
  6310  	0x69, 0x65, 0x77, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73,
  6311  	0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x41, 0x0a,
  6312  	0x09, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
  6313  	0x32, 0x23, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77,
  6314  	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73,
  6315  	0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73,
  6316  	0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
  6317  	0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
  6318  	0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
  6319  	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x57, 0x0a, 0x0e, 0x52,
  6320  	0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
  6321  	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
  6322  	0x2f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19,
  6323  	0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x65, 0x76, 0x69, 0x65,
  6324  	0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
  6325  	0x3a, 0x02, 0x38, 0x01, 0x22, 0x78, 0x0a, 0x13, 0x41, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f,
  6326  	0x6e, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e,
  6327  	0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d,
  6328  	0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02,
  6329  	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2f, 0x0a,
  6330  	0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67,
  6331  	0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x53,
  6332  	0x65, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0xa5,
  6333  	0x01, 0x0a, 0x11, 0x41, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x49,
  6334  	0x6e, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01,
  6335  	0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73,
  6336  	0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e,
  6337  	0x12, 0x26, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e,
  6338  	0x32, 0x0e, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79,
  6339  	0x52, 0x06, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x12, 0x3c, 0x0a, 0x0e, 0x6e, 0x6f, 0x74, 0x69,
  6340  	0x66, 0x79, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
  6341  	0x32, 0x15, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79,
  6342  	0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x44,
  6343  	0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0xb7, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4d, 0x65,
  6344  	0x72, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16,
  6345  	0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
  6346  	0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
  6347  	0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
  6348  	0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18,
  6349  	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49,
  6350  	0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
  6351  	0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x73, 0x74, 0x72,
  6352  	0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x67, 0x65,
  6353  	0x72, 0x72, 0x69, 0x74, 0x2e, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74,
  6354  	0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x52, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79,
  6355  	0x22, 0xe2, 0x03, 0x0a, 0x0d, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x6e,
  6356  	0x66, 0x6f, 0x12, 0x41, 0x0a, 0x0b, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x5f, 0x74, 0x79, 0x70,
  6357  	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74,
  6358  	0x2e, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x53,
  6359  	0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69,
  6360  	0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67,
  6361  	0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74,
  6362  	0x2e, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65,
  6363  	0x67, 0x79, 0x52, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x1c, 0x0a, 0x09,
  6364  	0x6d, 0x65, 0x72, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52,
  6365  	0x09, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f,
  6366  	0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
  6367  	0x08, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x12,
  6368  	0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x72, 0x67, 0x65,
  6369  	0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
  6370  	0x4d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x6c, 0x69,
  6371  	0x63, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x6c,
  6372  	0x69, 0x63, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x61, 0x62, 0x6c,
  6373  	0x65, 0x5f, 0x69, 0x6e, 0x74, 0x6f, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x6d, 0x65,
  6374  	0x72, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x6f, 0x22, 0xa7, 0x01, 0x0a, 0x0a,
  6375  	0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x55,
  6376  	0x42, 0x4d, 0x49, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43,
  6377  	0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x4d, 0x45, 0x52, 0x47, 0x45,
  6378  	0x5f, 0x49, 0x46, 0x5f, 0x4e, 0x45, 0x43, 0x45, 0x53, 0x53, 0x41, 0x52, 0x59, 0x10, 0x01, 0x12,
  6379  	0x15, 0x0a, 0x11, 0x46, 0x41, 0x53, 0x54, 0x5f, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44, 0x5f,
  6380  	0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x45, 0x42, 0x41, 0x53, 0x45,
  6381  	0x5f, 0x49, 0x46, 0x5f, 0x4e, 0x45, 0x43, 0x45, 0x53, 0x53, 0x41, 0x52, 0x59, 0x10, 0x03, 0x12,
  6382  	0x11, 0x0a, 0x0d, 0x52, 0x45, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x41, 0x4c, 0x57, 0x41, 0x59, 0x53,
  6383  	0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x45, 0x52, 0x47, 0x45, 0x5f, 0x41, 0x4c, 0x57, 0x41,
  6384  	0x59, 0x53, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x48, 0x45, 0x52, 0x52, 0x59, 0x5f, 0x50,
  6385  	0x49, 0x43, 0x4b, 0x10, 0x06, 0x22, 0xba, 0x01, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69,
  6386  	0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75,
  6387  	0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62,
  6388  	0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20,
  6389  	0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1f, 0x0a, 0x0b,
  6390  	0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
  6391  	0x09, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a,
  6392  	0x0f, 0x73, 0x75, 0x62, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79,
  6393  	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x75, 0x62, 0x73, 0x74, 0x72, 0x69, 0x6e,
  6394  	0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
  6395  	0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x12,
  6396  	0x0a, 0x04, 0x62, 0x61, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x61,
  6397  	0x73, 0x65, 0x22, 0x9b, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x73,
  6398  	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65,
  6399  	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74,
  6400  	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
  6401  	0x73, 0x65, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x66,
  6402  	0x69, 0x6c, 0x65, 0x73, 0x1a, 0x4a, 0x0a, 0x0a, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x45, 0x6e, 0x74,
  6403  	0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
  6404  	0x03, 0x6b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
  6405  	0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x46, 0x69, 0x6c,
  6406  	0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
  6407  	0x22, 0x6d, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x43, 0x68,
  6408  	0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06,
  6409  	0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75,
  6410  	0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18,
  6411  	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1f,
  6412  	0x0a, 0x0b, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20,
  6413  	0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22,
  6414  	0xcf, 0x02, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x43, 0x68,
  6415  	0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a,
  6416  	0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31,
  6417  	0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74,
  6418  	0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  6419  	0x65, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x6e, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x69,
  6420  	0x74, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x1a, 0xe4, 0x01, 0x0a, 0x0f, 0x43,
  6421  	0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x6e, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x18,
  6422  	0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
  6423  	0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2a, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d,
  6424  	0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69,
  6425  	0x74, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x63, 0x6f,
  6426  	0x6d, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03,
  6427  	0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08,
  6428  	0x70, 0x61, 0x74, 0x63, 0x68, 0x73, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08,
  6429  	0x70, 0x61, 0x74, 0x63, 0x68, 0x73, 0x65, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x75, 0x72, 0x72,
  6430  	0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x63, 0x68, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01,
  6431  	0x28, 0x03, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x74, 0x63, 0x68,
  6432  	0x73, 0x65, 0x74, 0x12, 0x2c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20,
  6433  	0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61,
  6434  	0x6e, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
  6435  	0x73, 0x22, 0x29, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
  6436  	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x65, 0x66, 0x73,
  6437  	0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x72, 0x65, 0x66, 0x73, 0x22, 0x50, 0x0a, 0x0b,
  6438  	0x57, 0x65, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e,
  6439  	0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
  6440  	0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72,
  6441  	0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03,
  6442  	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x22, 0xa3,
  6443  	0x03, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12,
  6444  	0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
  6445  	0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
  6446  	0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65,
  6447  	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
  6448  	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x05,
  6449  	0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x67, 0x65,
  6450  	0x72, 0x72, 0x69, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f,
  6451  	0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x31, 0x0a,
  6452  	0x04, 0x72, 0x65, 0x66, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x65,
  6453  	0x72, 0x72, 0x69, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f,
  6454  	0x2e, 0x52, 0x65, 0x66, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x72, 0x65, 0x66, 0x73,
  6455  	0x12, 0x30, 0x0a, 0x09, 0x77, 0x65, 0x62, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x06, 0x20,
  6456  	0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x57, 0x65, 0x62,
  6457  	0x4c, 0x69, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x77, 0x65, 0x62, 0x4c, 0x69, 0x6e,
  6458  	0x6b, 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x52, 0x65, 0x66, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
  6459  	0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
  6460  	0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
  6461  	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x77, 0x0a, 0x05, 0x53,
  6462  	0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f,
  6463  	0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
  6464  	0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53,
  6465  	0x54, 0x41, 0x54, 0x45, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x1b, 0x0a,
  6466  	0x17, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52,
  6467  	0x45, 0x41, 0x44, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x52,
  6468  	0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x48, 0x49, 0x44, 0x44,
  6469  	0x45, 0x4e, 0x10, 0x03, 0x22, 0xb0, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f,
  6470  	0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a,
  6471  	0x08, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
  6472  	0x2a, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f,
  6473  	0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x72,
  6474  	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x50, 0x72, 0x6f,
  6475  	0x6a, 0x65, 0x63, 0x74, 0x73, 0x1a, 0x50, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
  6476  	0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
  6477  	0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x29, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
  6478  	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74,
  6479  	0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x76, 0x61,
  6480  	0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3c, 0x0a, 0x0e, 0x52, 0x65, 0x66, 0x49, 0x6e,
  6481  	0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f,
  6482  	0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a,
  6483  	0x65, 0x63, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
  6484  	0x52, 0x03, 0x72, 0x65, 0x66, 0x22, 0x37, 0x0a, 0x07, 0x52, 0x65, 0x66, 0x49, 0x6e, 0x66, 0x6f,
  6485  	0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72,
  6486  	0x65, 0x66, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02,
  6487  	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x49,
  6488  	0x0a, 0x0e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  6489  	0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
  6490  	0x08, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x6c,
  6491  	0x6c, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
  6492  	0x61, 0x6c, 0x6c, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x89, 0x01, 0x0a, 0x15, 0x4c, 0x69,
  6493  	0x73, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75,
  6494  	0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01,
  6495  	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x10, 0x0a,
  6496  	0x03, 0x72, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x66, 0x12,
  6497  	0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70,
  6498  	0x61, 0x74, 0x68, 0x12, 0x30, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04,
  6499  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63,
  6500  	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70,
  6501  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3a, 0x0a, 0x09, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x6e,
  6502  	0x66, 0x6f, 0x12, 0x2d, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20,
  6503  	0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63, 0x63,
  6504  	0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
  6505  	0x74, 0x22, 0x3f, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x52,
  6506  	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x06, 0x6f, 0x77, 0x6e, 0x65, 0x72,
  6507  	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74,
  6508  	0x2e, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x77, 0x6e, 0x65,
  6509  	0x72, 0x73, 0x22, 0x48, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x50, 0x75, 0x72, 0x65, 0x52, 0x65, 0x76,
  6510  	0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75,
  6511  	0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62,
  6512  	0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20,
  6513  	0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x36, 0x0a, 0x0e,
  6514  	0x50, 0x75, 0x72, 0x65, 0x52, 0x65, 0x76, 0x65, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24,
  6515  	0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x70, 0x75, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x74,
  6516  	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x50, 0x75, 0x72, 0x65, 0x52, 0x65,
  6517  	0x76, 0x65, 0x72, 0x74, 0x22, 0x90, 0x05, 0x0a, 0x1b, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52,
  6518  	0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
  6519  	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
  6520  	0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
  6521  	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
  6522  	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x42, 0x0a, 0x06, 0x73, 0x74,
  6523  	0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x67, 0x65, 0x72,
  6524  	0x72, 0x69, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72,
  6525  	0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x2e,
  6526  	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b,
  6527  	0x0a, 0x09, 0x69, 0x73, 0x5f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28,
  6528  	0x08, 0x52, 0x08, 0x69, 0x73, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x12, 0x6f, 0x0a, 0x1f, 0x61,
  6529  	0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x78, 0x70,
  6530  	0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x05,
  6531  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x53, 0x75,
  6532  	0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x45,
  6533  	0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x1d, 0x61,
  6534  	0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x78, 0x70, 0x72,
  6535  	0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x71, 0x0a, 0x20,
  6536  	0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65,
  6537  	0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
  6538  	0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e,
  6539  	0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e,
  6540  	0x74, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52,
  6541  	0x1e, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x45,
  6542  	0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12,
  6543  	0x65, 0x0a, 0x1a, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x72,
  6544  	0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x07, 0x20,
  6545  	0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x53, 0x75, 0x62,
  6546  	0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x78,
  6547  	0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x18, 0x6f, 0x76,
  6548  	0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
  6549  	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x8e, 0x01, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75,
  6550  	0x73, 0x12, 0x29, 0x0a, 0x25, 0x53, 0x55, 0x42, 0x4d, 0x49, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x55,
  6551  	0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55,
  6552  	0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09,
  6553  	0x53, 0x41, 0x54, 0x49, 0x53, 0x46, 0x49, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x55,
  6554  	0x4e, 0x53, 0x41, 0x54, 0x49, 0x53, 0x46, 0x49, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a,
  6555  	0x4f, 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e,
  6556  	0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x50, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x04,
  6557  	0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x46,
  6558  	0x4f, 0x52, 0x43, 0x45, 0x44, 0x10, 0x06, 0x22, 0xce, 0x01, 0x0a, 0x1f, 0x53, 0x75, 0x62, 0x6d,
  6559  	0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x78, 0x70,
  6560  	0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x65,
  6561  	0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
  6562  	0x0a, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x66,
  6563  	0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
  6564  	0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x73,
  6565  	0x73, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x74, 0x6f, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09,
  6566  	0x52, 0x0c, 0x70, 0x61, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x41, 0x74, 0x6f, 0x6d, 0x73, 0x12, 0x23,
  6567  	0x0a, 0x0d, 0x66, 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x74, 0x6f, 0x6d, 0x73, 0x18,
  6568  	0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x41, 0x74,
  6569  	0x6f, 0x6d, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73,
  6570  	0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f,
  6571  	0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x9b, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74,
  6572  	0x4d, 0x65, 0x74, 0x61, 0x44, 0x69, 0x66, 0x66, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
  6573  	0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
  6574  	0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d,
  6575  	0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65,
  6576  	0x72, 0x12, 0x10, 0x0a, 0x03, 0x6f, 0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
  6577  	0x6f, 0x6c, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28,
  6578  	0x09, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f,
  6579  	0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69,
  6580  	0x74, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x6f,
  6581  	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xda, 0x01, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x44,
  6582  	0x69, 0x66, 0x66, 0x12, 0x28, 0x0a, 0x05, 0x61, 0x64, 0x64, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01,
  6583  	0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e,
  6584  	0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x61, 0x64, 0x64, 0x65, 0x64, 0x12, 0x2c, 0x0a,
  6585  	0x07, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12,
  6586  	0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e,
  6587  	0x66, 0x6f, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x12, 0x3a, 0x0a, 0x0f, 0x6f,
  6588  	0x6c, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03,
  6589  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x68,
  6590  	0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x6f, 0x6c, 0x64, 0x43, 0x68, 0x61,
  6591  	0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3a, 0x0a, 0x0f, 0x6e, 0x65, 0x77, 0x5f, 0x63,
  6592  	0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
  6593  	0x32, 0x12, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
  6594  	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x6e, 0x65, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49,
  6595  	0x6e, 0x66, 0x6f, 0x2a, 0x89, 0x04, 0x0a, 0x0b, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x70, 0x74,
  6596  	0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e,
  6597  	0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4c,
  6598  	0x41, 0x42, 0x45, 0x4c, 0x53, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x45, 0x54, 0x41, 0x49,
  6599  	0x4c, 0x45, 0x44, 0x5f, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x53, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10,
  6600  	0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x56, 0x49, 0x53, 0x49, 0x4f, 0x4e,
  6601  	0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x4c, 0x4c, 0x5f, 0x52, 0x45, 0x56, 0x49, 0x53, 0x49,
  6602  	0x4f, 0x4e, 0x53, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54,
  6603  	0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x10, 0x10, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x4c, 0x4c,
  6604  	0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x53, 0x10, 0x20, 0x12, 0x11, 0x0a, 0x0d, 0x43, 0x55,
  6605  	0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x46, 0x49, 0x4c, 0x45, 0x53, 0x10, 0x40, 0x12, 0x0e, 0x0a,
  6606  	0x09, 0x41, 0x4c, 0x4c, 0x5f, 0x46, 0x49, 0x4c, 0x45, 0x53, 0x10, 0x80, 0x01, 0x12, 0x16, 0x0a,
  6607  	0x11, 0x44, 0x45, 0x54, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e,
  6608  	0x54, 0x53, 0x10, 0x80, 0x02, 0x12, 0x15, 0x0a, 0x10, 0x52, 0x45, 0x56, 0x49, 0x45, 0x57, 0x45,
  6609  	0x52, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x53, 0x10, 0x80, 0x04, 0x12, 0x0d, 0x0a, 0x08,
  6610  	0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x53, 0x10, 0x80, 0x08, 0x12, 0x14, 0x0a, 0x0f, 0x43,
  6611  	0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x10, 0x80,
  6612  	0x10, 0x12, 0x13, 0x0a, 0x0e, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x41, 0x43, 0x54, 0x49,
  6613  	0x4f, 0x4e, 0x53, 0x10, 0x80, 0x20, 0x12, 0x0d, 0x0a, 0x08, 0x52, 0x45, 0x56, 0x49, 0x45, 0x57,
  6614  	0x45, 0x44, 0x10, 0x80, 0x40, 0x12, 0x14, 0x0a, 0x0e, 0x53, 0x4b, 0x49, 0x50, 0x5f, 0x4d, 0x45,
  6615  	0x52, 0x47, 0x45, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x80, 0x80, 0x01, 0x12, 0x11, 0x0a, 0x0b, 0x53,
  6616  	0x55, 0x42, 0x4d, 0x49, 0x54, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x80, 0x80, 0x02, 0x12, 0x0f,
  6617  	0x0a, 0x09, 0x57, 0x45, 0x42, 0x5f, 0x4c, 0x49, 0x4e, 0x4b, 0x53, 0x10, 0x80, 0x80, 0x04, 0x12,
  6618  	0x0b, 0x0a, 0x05, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0x80, 0x80, 0x08, 0x12, 0x14, 0x0a, 0x0e,
  6619  	0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x46, 0x4f, 0x4f, 0x54, 0x45, 0x52, 0x53, 0x10, 0x80,
  6620  	0x80, 0x10, 0x12, 0x17, 0x0a, 0x11, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x43, 0x45, 0x52, 0x54, 0x49,
  6621  	0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x53, 0x10, 0x80, 0x80, 0x20, 0x12, 0x12, 0x0a, 0x0c, 0x54,
  6622  	0x52, 0x41, 0x43, 0x4b, 0x49, 0x4e, 0x47, 0x5f, 0x49, 0x44, 0x53, 0x10, 0x80, 0x80, 0x40, 0x12,
  6623  	0x18, 0x0a, 0x11, 0x44, 0x4f, 0x57, 0x4e, 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x4d,
  6624  	0x41, 0x4e, 0x44, 0x53, 0x10, 0x80, 0x80, 0x80, 0x01, 0x12, 0x1a, 0x0a, 0x13, 0x53, 0x55, 0x42,
  6625  	0x4d, 0x49, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53,
  6626  	0x10, 0x80, 0x80, 0x80, 0x02, 0x12, 0x18, 0x0a, 0x10, 0x4d, 0x41, 0x58, 0x5f, 0x51, 0x55, 0x45,
  6627  	0x52, 0x59, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x80, 0x80, 0x80, 0x80, 0x04, 0x2a,
  6628  	0x6f, 0x0a, 0x06, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x12, 0x16, 0x0a, 0x12, 0x4e, 0x4f, 0x54,
  6629  	0x49, 0x46, 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
  6630  	0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x5f, 0x4e, 0x4f, 0x4e, 0x45,
  6631  	0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x5f, 0x4f, 0x57, 0x4e,
  6632  	0x45, 0x52, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x5f, 0x4f,
  6633  	0x57, 0x4e, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x56, 0x49, 0x45, 0x57, 0x45, 0x52, 0x53, 0x10, 0x03,
  6634  	0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x04,
  6635  	0x2a, 0x4d, 0x0a, 0x0c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
  6636  	0x12, 0x19, 0x0a, 0x15, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55,
  6637  	0x53, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4e,
  6638  	0x45, 0x57, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x45, 0x52, 0x47, 0x45, 0x44, 0x10, 0x02,
  6639  	0x12, 0x0d, 0x0a, 0x09, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x45, 0x44, 0x10, 0x03, 0x2a,
  6640  	0x85, 0x01, 0x0a, 0x11, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x72,
  6641  	0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x22, 0x0a, 0x1e, 0x4d, 0x45, 0x52, 0x47, 0x45, 0x41, 0x42,
  6642  	0x4c, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50,
  6643  	0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x52, 0x45, 0x43,
  6644  	0x55, 0x52, 0x53, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x53, 0x4f,
  6645  	0x4c, 0x56, 0x45, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x53, 0x49, 0x4d, 0x50, 0x4c, 0x45, 0x5f,
  6646  	0x54, 0x57, 0x4f, 0x5f, 0x57, 0x41, 0x59, 0x5f, 0x49, 0x4e, 0x5f, 0x43, 0x4f, 0x52, 0x45, 0x10,
  6647  	0x03, 0x12, 0x08, 0x0a, 0x04, 0x4f, 0x55, 0x52, 0x53, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x54,
  6648  	0x48, 0x45, 0x49, 0x52, 0x53, 0x10, 0x05, 0x32, 0x99, 0x0c, 0x0a, 0x06, 0x47, 0x65, 0x72, 0x72,
  6649  	0x69, 0x74, 0x12, 0x49, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63,
  6650  	0x74, 0x73, 0x12, 0x1b, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74,
  6651  	0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
  6652  	0x1c, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f,
  6653  	0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a,
  6654  	0x0a, 0x47, 0x65, 0x74, 0x52, 0x65, 0x66, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x2e, 0x67, 0x65,
  6655  	0x72, 0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75,
  6656  	0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x66,
  6657  	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x4b, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x6c, 0x65,
  6658  	0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x12, 0x1d, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e,
  6659  	0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x52, 0x65,
  6660  	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4c,
  6661  	0x69, 0x73, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  6662  	0x65, 0x12, 0x46, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73,
  6663  	0x12, 0x1a, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x68,
  6664  	0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67,
  6665  	0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
  6666  	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x47, 0x65, 0x74,
  6667  	0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x18, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e,
  6668  	0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  6669  	0x1a, 0x12, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
  6670  	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x42, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x72, 0x67, 0x65,
  6671  	0x61, 0x62, 0x6c, 0x65, 0x12, 0x1b, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x47, 0x65,
  6672  	0x74, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
  6673  	0x74, 0x1a, 0x15, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4d, 0x65, 0x72, 0x67, 0x65,
  6674  	0x61, 0x62, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x40, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74,
  6675  	0x46, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x18, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4c,
  6676  	0x69, 0x73, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
  6677  	0x19, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x69, 0x6c,
  6678  	0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x11, 0x47, 0x65,
  6679  	0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12,
  6680  	0x20, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61,
  6681  	0x74, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
  6682  	0x74, 0x1a, 0x21, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65,
  6683  	0x6c, 0x61, 0x74, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70,
  6684  	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x50, 0x75, 0x72, 0x65, 0x52,
  6685  	0x65, 0x76, 0x65, 0x72, 0x74, 0x12, 0x1c, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x47,
  6686  	0x65, 0x74, 0x50, 0x75, 0x72, 0x65, 0x52, 0x65, 0x76, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75,
  6687  	0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x50, 0x75, 0x72,
  6688  	0x65, 0x52, 0x65, 0x76, 0x65, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, 0x0b, 0x47,
  6689  	0x65, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x44, 0x69, 0x66, 0x66, 0x12, 0x1a, 0x2e, 0x67, 0x65, 0x72,
  6690  	0x72, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x44, 0x69, 0x66, 0x66, 0x52,
  6691  	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e,
  6692  	0x4d, 0x65, 0x74, 0x61, 0x44, 0x69, 0x66, 0x66, 0x12, 0x3f, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61,
  6693  	0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1b, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69,
  6694  	0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65,
  6695  	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43,
  6696  	0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x55, 0x0a, 0x15, 0x43, 0x68, 0x61,
  6697  	0x6e, 0x67, 0x65, 0x45, 0x64, 0x69, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65,
  6698  	0x6e, 0x74, 0x12, 0x24, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e,
  6699  	0x67, 0x65, 0x45, 0x64, 0x69, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
  6700  	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  6701  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
  6702  	0x12, 0x55, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x64, 0x69, 0x74, 0x46, 0x69,
  6703  	0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x24, 0x2e, 0x67, 0x65, 0x72, 0x72,
  6704  	0x69, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x64, 0x69, 0x74, 0x46, 0x69, 0x6c,
  6705  	0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
  6706  	0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  6707  	0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4d, 0x0a, 0x11, 0x43, 0x68, 0x61, 0x6e, 0x67,
  6708  	0x65, 0x45, 0x64, 0x69, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x20, 0x2e, 0x67,
  6709  	0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x64, 0x69, 0x74,
  6710  	0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16,
  6711  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  6712  	0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x44, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x52, 0x65, 0x76,
  6713  	0x69, 0x65, 0x77, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41,
  6714  	0x64, 0x64, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
  6715  	0x74, 0x1a, 0x19, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x65,
  6716  	0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x47, 0x0a, 0x0e,
  6717  	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x12, 0x1d,
  6718  	0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65,
  6719  	0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e,
  6720  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
  6721  	0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3b, 0x0a, 0x09, 0x53, 0x65, 0x74, 0x52, 0x65, 0x76, 0x69,
  6722  	0x65, 0x77, 0x12, 0x18, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x53, 0x65, 0x74, 0x52,
  6723  	0x65, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x67,
  6724  	0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x73, 0x75,
  6725  	0x6c, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x41, 0x64, 0x64, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x65, 0x6e,
  6726  	0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x12, 0x1b, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74,
  6727  	0x2e, 0x41, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71,
  6728  	0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x63,
  6729  	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3f, 0x0a, 0x0c, 0x53, 0x75, 0x62,
  6730  	0x6d, 0x69, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1b, 0x2e, 0x67, 0x65, 0x72, 0x72,
  6731  	0x69, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52,
  6732  	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e,
  6733  	0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3f, 0x0a, 0x0c, 0x52, 0x65,
  6734  	0x76, 0x65, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1b, 0x2e, 0x67, 0x65, 0x72,
  6735  	0x72, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x76, 0x65, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
  6736  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74,
  6737  	0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x41, 0x0a, 0x0d, 0x41,
  6738  	0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1c, 0x2e, 0x67,
  6739  	0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x41, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x43, 0x68, 0x61,
  6740  	0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x67, 0x65, 0x72,
  6741  	0x72, 0x69, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x43,
  6742  	0x0a, 0x0e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  6743  	0x12, 0x1d, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74,
  6744  	0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
  6745  	0x12, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x49,
  6746  	0x6e, 0x66, 0x6f, 0x42, 0x33, 0x5a, 0x31, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
  6747  	0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d,
  6748  	0x6f, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x3b,
  6749  	0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  6750  }
  6751  
  6752  var (
  6753  	file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescOnce sync.Once
  6754  	file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescData = file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDesc
  6755  )
  6756  
  6757  func file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescGZIP() []byte {
  6758  	file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescOnce.Do(func() {
  6759  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescData)
  6760  	})
  6761  	return file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDescData
  6762  }
  6763  
  6764  var file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes = make([]protoimpl.EnumInfo, 13)
  6765  var file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes = make([]protoimpl.MessageInfo, 71)
  6766  var file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_goTypes = []interface{}{
  6767  	(QueryOption)(0),                        // 0: gerrit.QueryOption
  6768  	(Notify)(0),                             // 1: gerrit.Notify
  6769  	(ChangeStatus)(0),                       // 2: gerrit.ChangeStatus
  6770  	(MergeableStrategy)(0),                  // 3: gerrit.MergeableStrategy
  6771  	(NotifyDetails_RecipientType)(0),        // 4: gerrit.NotifyDetails.RecipientType
  6772  	(RevisionInfo_Kind)(0),                  // 5: gerrit.RevisionInfo.Kind
  6773  	(Requirement_Status)(0),                 // 6: gerrit.Requirement.Status
  6774  	(FileInfo_Status)(0),                    // 7: gerrit.FileInfo.Status
  6775  	(AddReviewerRequest_State)(0),           // 8: gerrit.AddReviewerRequest.State
  6776  	(ReviewerInput_State)(0),                // 9: gerrit.ReviewerInput.State
  6777  	(MergeableInfo_SubmitType)(0),           // 10: gerrit.MergeableInfo.SubmitType
  6778  	(ProjectInfo_State)(0),                  // 11: gerrit.ProjectInfo.State
  6779  	(SubmitRequirementResultInfo_Status)(0), // 12: gerrit.SubmitRequirementResultInfo.Status
  6780  	(*NotifyDetails)(nil),                   // 13: gerrit.NotifyDetails
  6781  	(*ListChangesRequest)(nil),              // 14: gerrit.ListChangesRequest
  6782  	(*ListChangesResponse)(nil),             // 15: gerrit.ListChangesResponse
  6783  	(*GetChangeRequest)(nil),                // 16: gerrit.GetChangeRequest
  6784  	(*AccountInfo)(nil),                     // 17: gerrit.AccountInfo
  6785  	(*GitPersonInfo)(nil),                   // 18: gerrit.GitPersonInfo
  6786  	(*ChangeInfo)(nil),                      // 19: gerrit.ChangeInfo
  6787  	(*ReviewerStatusMap)(nil),               // 20: gerrit.ReviewerStatusMap
  6788  	(*RevisionInfo)(nil),                    // 21: gerrit.RevisionInfo
  6789  	(*CommitInfo)(nil),                      // 22: gerrit.CommitInfo
  6790  	(*LabelInfo)(nil),                       // 23: gerrit.LabelInfo
  6791  	(*ApprovalInfo)(nil),                    // 24: gerrit.ApprovalInfo
  6792  	(*VotingRangeInfo)(nil),                 // 25: gerrit.VotingRangeInfo
  6793  	(*ChangeMessageInfo)(nil),               // 26: gerrit.ChangeMessageInfo
  6794  	(*Requirement)(nil),                     // 27: gerrit.Requirement
  6795  	(*FileInfo)(nil),                        // 28: gerrit.FileInfo
  6796  	(*CreateChangeRequest)(nil),             // 29: gerrit.CreateChangeRequest
  6797  	(*SubmitChangeRequest)(nil),             // 30: gerrit.SubmitChangeRequest
  6798  	(*SubmitRevisionRequest)(nil),           // 31: gerrit.SubmitRevisionRequest
  6799  	(*SubmitInfo)(nil),                      // 32: gerrit.SubmitInfo
  6800  	(*ChangeEditFileContentRequest)(nil),    // 33: gerrit.ChangeEditFileContentRequest
  6801  	(*DeleteEditFileContentRequest)(nil),    // 34: gerrit.DeleteEditFileContentRequest
  6802  	(*ChangeEditPublishRequest)(nil),        // 35: gerrit.ChangeEditPublishRequest
  6803  	(*RevertChangeRequest)(nil),             // 36: gerrit.RevertChangeRequest
  6804  	(*AbandonChangeRequest)(nil),            // 37: gerrit.AbandonChangeRequest
  6805  	(*AddReviewerRequest)(nil),              // 38: gerrit.AddReviewerRequest
  6806  	(*ReviewerInfo)(nil),                    // 39: gerrit.ReviewerInfo
  6807  	(*AddReviewerResult)(nil),               // 40: gerrit.AddReviewerResult
  6808  	(*DeleteReviewerRequest)(nil),           // 41: gerrit.DeleteReviewerRequest
  6809  	(*SetReviewRequest)(nil),                // 42: gerrit.SetReviewRequest
  6810  	(*ReviewerInput)(nil),                   // 43: gerrit.ReviewerInput
  6811  	(*ReviewResult)(nil),                    // 44: gerrit.ReviewResult
  6812  	(*AttentionSetRequest)(nil),             // 45: gerrit.AttentionSetRequest
  6813  	(*AttentionSetInput)(nil),               // 46: gerrit.AttentionSetInput
  6814  	(*GetMergeableRequest)(nil),             // 47: gerrit.GetMergeableRequest
  6815  	(*MergeableInfo)(nil),                   // 48: gerrit.MergeableInfo
  6816  	(*ListFilesRequest)(nil),                // 49: gerrit.ListFilesRequest
  6817  	(*ListFilesResponse)(nil),               // 50: gerrit.ListFilesResponse
  6818  	(*GetRelatedChangesRequest)(nil),        // 51: gerrit.GetRelatedChangesRequest
  6819  	(*GetRelatedChangesResponse)(nil),       // 52: gerrit.GetRelatedChangesResponse
  6820  	(*ListProjectsRequest)(nil),             // 53: gerrit.ListProjectsRequest
  6821  	(*WebLinkInfo)(nil),                     // 54: gerrit.WebLinkInfo
  6822  	(*ProjectInfo)(nil),                     // 55: gerrit.ProjectInfo
  6823  	(*ListProjectsResponse)(nil),            // 56: gerrit.ListProjectsResponse
  6824  	(*RefInfoRequest)(nil),                  // 57: gerrit.RefInfoRequest
  6825  	(*RefInfo)(nil),                         // 58: gerrit.RefInfo
  6826  	(*AccountOptions)(nil),                  // 59: gerrit.AccountOptions
  6827  	(*ListFileOwnersRequest)(nil),           // 60: gerrit.ListFileOwnersRequest
  6828  	(*OwnerInfo)(nil),                       // 61: gerrit.OwnerInfo
  6829  	(*ListOwnersResponse)(nil),              // 62: gerrit.ListOwnersResponse
  6830  	(*GetPureRevertRequest)(nil),            // 63: gerrit.GetPureRevertRequest
  6831  	(*PureRevertInfo)(nil),                  // 64: gerrit.PureRevertInfo
  6832  	(*SubmitRequirementResultInfo)(nil),     // 65: gerrit.SubmitRequirementResultInfo
  6833  	(*SubmitRequirementExpressionInfo)(nil), // 66: gerrit.SubmitRequirementExpressionInfo
  6834  	(*GetMetaDiffRequest)(nil),              // 67: gerrit.GetMetaDiffRequest
  6835  	(*MetaDiff)(nil),                        // 68: gerrit.MetaDiff
  6836  	(*NotifyDetails_Info)(nil),              // 69: gerrit.NotifyDetails.Info
  6837  	(*NotifyDetails_Recipient)(nil),         // 70: gerrit.NotifyDetails.Recipient
  6838  	nil,                                     // 71: gerrit.ChangeInfo.RevisionsEntry
  6839  	nil,                                     // 72: gerrit.ChangeInfo.LabelsEntry
  6840  	nil,                                     // 73: gerrit.RevisionInfo.FilesEntry
  6841  	(*CommitInfo_Parent)(nil),               // 74: gerrit.CommitInfo.Parent
  6842  	nil,                                     // 75: gerrit.LabelInfo.ValuesEntry
  6843  	nil,                                     // 76: gerrit.ReviewerInfo.ApprovalsEntry
  6844  	nil,                                     // 77: gerrit.SetReviewRequest.LabelsEntry
  6845  	nil,                                     // 78: gerrit.ReviewResult.LabelsEntry
  6846  	nil,                                     // 79: gerrit.ReviewResult.ReviewersEntry
  6847  	nil,                                     // 80: gerrit.ListFilesResponse.FilesEntry
  6848  	(*GetRelatedChangesResponse_ChangeAndCommit)(nil), // 81: gerrit.GetRelatedChangesResponse.ChangeAndCommit
  6849  	nil,                           // 82: gerrit.ProjectInfo.RefsEntry
  6850  	nil,                           // 83: gerrit.ListProjectsResponse.ProjectsEntry
  6851  	(*timestamppb.Timestamp)(nil), // 84: google.protobuf.Timestamp
  6852  	(*emptypb.Empty)(nil),         // 85: google.protobuf.Empty
  6853  }
  6854  var file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_depIdxs = []int32{
  6855  	70,  // 0: gerrit.NotifyDetails.recipients:type_name -> gerrit.NotifyDetails.Recipient
  6856  	0,   // 1: gerrit.ListChangesRequest.options:type_name -> gerrit.QueryOption
  6857  	19,  // 2: gerrit.ListChangesResponse.changes:type_name -> gerrit.ChangeInfo
  6858  	0,   // 3: gerrit.GetChangeRequest.options:type_name -> gerrit.QueryOption
  6859  	17,  // 4: gerrit.ChangeInfo.owner:type_name -> gerrit.AccountInfo
  6860  	2,   // 5: gerrit.ChangeInfo.status:type_name -> gerrit.ChangeStatus
  6861  	71,  // 6: gerrit.ChangeInfo.revisions:type_name -> gerrit.ChangeInfo.RevisionsEntry
  6862  	72,  // 7: gerrit.ChangeInfo.labels:type_name -> gerrit.ChangeInfo.LabelsEntry
  6863  	26,  // 8: gerrit.ChangeInfo.messages:type_name -> gerrit.ChangeMessageInfo
  6864  	27,  // 9: gerrit.ChangeInfo.requirements:type_name -> gerrit.Requirement
  6865  	84,  // 10: gerrit.ChangeInfo.created:type_name -> google.protobuf.Timestamp
  6866  	84,  // 11: gerrit.ChangeInfo.updated:type_name -> google.protobuf.Timestamp
  6867  	84,  // 12: gerrit.ChangeInfo.submitted:type_name -> google.protobuf.Timestamp
  6868  	20,  // 13: gerrit.ChangeInfo.reviewers:type_name -> gerrit.ReviewerStatusMap
  6869  	65,  // 14: gerrit.ChangeInfo.submit_requirements:type_name -> gerrit.SubmitRequirementResultInfo
  6870  	17,  // 15: gerrit.ReviewerStatusMap.reviewers:type_name -> gerrit.AccountInfo
  6871  	17,  // 16: gerrit.ReviewerStatusMap.ccs:type_name -> gerrit.AccountInfo
  6872  	17,  // 17: gerrit.ReviewerStatusMap.removed:type_name -> gerrit.AccountInfo
  6873  	5,   // 18: gerrit.RevisionInfo.kind:type_name -> gerrit.RevisionInfo.Kind
  6874  	17,  // 19: gerrit.RevisionInfo.uploader:type_name -> gerrit.AccountInfo
  6875  	84,  // 20: gerrit.RevisionInfo.created:type_name -> google.protobuf.Timestamp
  6876  	22,  // 21: gerrit.RevisionInfo.commit:type_name -> gerrit.CommitInfo
  6877  	73,  // 22: gerrit.RevisionInfo.files:type_name -> gerrit.RevisionInfo.FilesEntry
  6878  	74,  // 23: gerrit.CommitInfo.parents:type_name -> gerrit.CommitInfo.Parent
  6879  	18,  // 24: gerrit.CommitInfo.author:type_name -> gerrit.GitPersonInfo
  6880  	17,  // 25: gerrit.LabelInfo.approved:type_name -> gerrit.AccountInfo
  6881  	17,  // 26: gerrit.LabelInfo.rejected:type_name -> gerrit.AccountInfo
  6882  	17,  // 27: gerrit.LabelInfo.recommended:type_name -> gerrit.AccountInfo
  6883  	17,  // 28: gerrit.LabelInfo.disliked:type_name -> gerrit.AccountInfo
  6884  	24,  // 29: gerrit.LabelInfo.all:type_name -> gerrit.ApprovalInfo
  6885  	75,  // 30: gerrit.LabelInfo.values:type_name -> gerrit.LabelInfo.ValuesEntry
  6886  	17,  // 31: gerrit.ApprovalInfo.user:type_name -> gerrit.AccountInfo
  6887  	25,  // 32: gerrit.ApprovalInfo.permitted_voting_range:type_name -> gerrit.VotingRangeInfo
  6888  	84,  // 33: gerrit.ApprovalInfo.date:type_name -> google.protobuf.Timestamp
  6889  	17,  // 34: gerrit.ChangeMessageInfo.author:type_name -> gerrit.AccountInfo
  6890  	17,  // 35: gerrit.ChangeMessageInfo.real_author:type_name -> gerrit.AccountInfo
  6891  	84,  // 36: gerrit.ChangeMessageInfo.date:type_name -> google.protobuf.Timestamp
  6892  	6,   // 37: gerrit.Requirement.status:type_name -> gerrit.Requirement.Status
  6893  	7,   // 38: gerrit.FileInfo.status:type_name -> gerrit.FileInfo.Status
  6894  	1,   // 39: gerrit.CreateChangeRequest.notify:type_name -> gerrit.Notify
  6895  	2,   // 40: gerrit.SubmitInfo.status:type_name -> gerrit.ChangeStatus
  6896  	8,   // 41: gerrit.AddReviewerRequest.state:type_name -> gerrit.AddReviewerRequest.State
  6897  	1,   // 42: gerrit.AddReviewerRequest.notify:type_name -> gerrit.Notify
  6898  	17,  // 43: gerrit.ReviewerInfo.account:type_name -> gerrit.AccountInfo
  6899  	76,  // 44: gerrit.ReviewerInfo.approvals:type_name -> gerrit.ReviewerInfo.ApprovalsEntry
  6900  	39,  // 45: gerrit.AddReviewerResult.reviewers:type_name -> gerrit.ReviewerInfo
  6901  	39,  // 46: gerrit.AddReviewerResult.ccs:type_name -> gerrit.ReviewerInfo
  6902  	77,  // 47: gerrit.SetReviewRequest.labels:type_name -> gerrit.SetReviewRequest.LabelsEntry
  6903  	1,   // 48: gerrit.SetReviewRequest.notify:type_name -> gerrit.Notify
  6904  	13,  // 49: gerrit.SetReviewRequest.notify_details:type_name -> gerrit.NotifyDetails
  6905  	46,  // 50: gerrit.SetReviewRequest.add_to_attention_set:type_name -> gerrit.AttentionSetInput
  6906  	46,  // 51: gerrit.SetReviewRequest.remove_from_attention_set:type_name -> gerrit.AttentionSetInput
  6907  	43,  // 52: gerrit.SetReviewRequest.reviewers:type_name -> gerrit.ReviewerInput
  6908  	9,   // 53: gerrit.ReviewerInput.state:type_name -> gerrit.ReviewerInput.State
  6909  	78,  // 54: gerrit.ReviewResult.labels:type_name -> gerrit.ReviewResult.LabelsEntry
  6910  	79,  // 55: gerrit.ReviewResult.reviewers:type_name -> gerrit.ReviewResult.ReviewersEntry
  6911  	46,  // 56: gerrit.AttentionSetRequest.input:type_name -> gerrit.AttentionSetInput
  6912  	1,   // 57: gerrit.AttentionSetInput.notify:type_name -> gerrit.Notify
  6913  	13,  // 58: gerrit.AttentionSetInput.notify_details:type_name -> gerrit.NotifyDetails
  6914  	3,   // 59: gerrit.GetMergeableRequest.strategy:type_name -> gerrit.MergeableStrategy
  6915  	10,  // 60: gerrit.MergeableInfo.submit_type:type_name -> gerrit.MergeableInfo.SubmitType
  6916  	3,   // 61: gerrit.MergeableInfo.strategy:type_name -> gerrit.MergeableStrategy
  6917  	80,  // 62: gerrit.ListFilesResponse.files:type_name -> gerrit.ListFilesResponse.FilesEntry
  6918  	81,  // 63: gerrit.GetRelatedChangesResponse.changes:type_name -> gerrit.GetRelatedChangesResponse.ChangeAndCommit
  6919  	11,  // 64: gerrit.ProjectInfo.state:type_name -> gerrit.ProjectInfo.State
  6920  	82,  // 65: gerrit.ProjectInfo.refs:type_name -> gerrit.ProjectInfo.RefsEntry
  6921  	54,  // 66: gerrit.ProjectInfo.web_links:type_name -> gerrit.WebLinkInfo
  6922  	83,  // 67: gerrit.ListProjectsResponse.Projects:type_name -> gerrit.ListProjectsResponse.ProjectsEntry
  6923  	59,  // 68: gerrit.ListFileOwnersRequest.options:type_name -> gerrit.AccountOptions
  6924  	17,  // 69: gerrit.OwnerInfo.account:type_name -> gerrit.AccountInfo
  6925  	61,  // 70: gerrit.ListOwnersResponse.owners:type_name -> gerrit.OwnerInfo
  6926  	12,  // 71: gerrit.SubmitRequirementResultInfo.status:type_name -> gerrit.SubmitRequirementResultInfo.Status
  6927  	66,  // 72: gerrit.SubmitRequirementResultInfo.applicability_expression_result:type_name -> gerrit.SubmitRequirementExpressionInfo
  6928  	66,  // 73: gerrit.SubmitRequirementResultInfo.submittability_expression_result:type_name -> gerrit.SubmitRequirementExpressionInfo
  6929  	66,  // 74: gerrit.SubmitRequirementResultInfo.override_expression_result:type_name -> gerrit.SubmitRequirementExpressionInfo
  6930  	0,   // 75: gerrit.GetMetaDiffRequest.options:type_name -> gerrit.QueryOption
  6931  	19,  // 76: gerrit.MetaDiff.added:type_name -> gerrit.ChangeInfo
  6932  	19,  // 77: gerrit.MetaDiff.removed:type_name -> gerrit.ChangeInfo
  6933  	19,  // 78: gerrit.MetaDiff.old_change_info:type_name -> gerrit.ChangeInfo
  6934  	19,  // 79: gerrit.MetaDiff.new_change_info:type_name -> gerrit.ChangeInfo
  6935  	4,   // 80: gerrit.NotifyDetails.Recipient.recipient_type:type_name -> gerrit.NotifyDetails.RecipientType
  6936  	69,  // 81: gerrit.NotifyDetails.Recipient.info:type_name -> gerrit.NotifyDetails.Info
  6937  	21,  // 82: gerrit.ChangeInfo.RevisionsEntry.value:type_name -> gerrit.RevisionInfo
  6938  	23,  // 83: gerrit.ChangeInfo.LabelsEntry.value:type_name -> gerrit.LabelInfo
  6939  	28,  // 84: gerrit.RevisionInfo.FilesEntry.value:type_name -> gerrit.FileInfo
  6940  	40,  // 85: gerrit.ReviewResult.ReviewersEntry.value:type_name -> gerrit.AddReviewerResult
  6941  	28,  // 86: gerrit.ListFilesResponse.FilesEntry.value:type_name -> gerrit.FileInfo
  6942  	22,  // 87: gerrit.GetRelatedChangesResponse.ChangeAndCommit.commit:type_name -> gerrit.CommitInfo
  6943  	2,   // 88: gerrit.GetRelatedChangesResponse.ChangeAndCommit.status:type_name -> gerrit.ChangeStatus
  6944  	55,  // 89: gerrit.ListProjectsResponse.ProjectsEntry.value:type_name -> gerrit.ProjectInfo
  6945  	53,  // 90: gerrit.Gerrit.ListProjects:input_type -> gerrit.ListProjectsRequest
  6946  	57,  // 91: gerrit.Gerrit.GetRefInfo:input_type -> gerrit.RefInfoRequest
  6947  	60,  // 92: gerrit.Gerrit.ListFileOwners:input_type -> gerrit.ListFileOwnersRequest
  6948  	14,  // 93: gerrit.Gerrit.ListChanges:input_type -> gerrit.ListChangesRequest
  6949  	16,  // 94: gerrit.Gerrit.GetChange:input_type -> gerrit.GetChangeRequest
  6950  	47,  // 95: gerrit.Gerrit.GetMergeable:input_type -> gerrit.GetMergeableRequest
  6951  	49,  // 96: gerrit.Gerrit.ListFiles:input_type -> gerrit.ListFilesRequest
  6952  	51,  // 97: gerrit.Gerrit.GetRelatedChanges:input_type -> gerrit.GetRelatedChangesRequest
  6953  	63,  // 98: gerrit.Gerrit.GetPureRevert:input_type -> gerrit.GetPureRevertRequest
  6954  	67,  // 99: gerrit.Gerrit.GetMetaDiff:input_type -> gerrit.GetMetaDiffRequest
  6955  	29,  // 100: gerrit.Gerrit.CreateChange:input_type -> gerrit.CreateChangeRequest
  6956  	33,  // 101: gerrit.Gerrit.ChangeEditFileContent:input_type -> gerrit.ChangeEditFileContentRequest
  6957  	34,  // 102: gerrit.Gerrit.DeleteEditFileContent:input_type -> gerrit.DeleteEditFileContentRequest
  6958  	35,  // 103: gerrit.Gerrit.ChangeEditPublish:input_type -> gerrit.ChangeEditPublishRequest
  6959  	38,  // 104: gerrit.Gerrit.AddReviewer:input_type -> gerrit.AddReviewerRequest
  6960  	41,  // 105: gerrit.Gerrit.DeleteReviewer:input_type -> gerrit.DeleteReviewerRequest
  6961  	42,  // 106: gerrit.Gerrit.SetReview:input_type -> gerrit.SetReviewRequest
  6962  	45,  // 107: gerrit.Gerrit.AddToAttentionSet:input_type -> gerrit.AttentionSetRequest
  6963  	30,  // 108: gerrit.Gerrit.SubmitChange:input_type -> gerrit.SubmitChangeRequest
  6964  	36,  // 109: gerrit.Gerrit.RevertChange:input_type -> gerrit.RevertChangeRequest
  6965  	37,  // 110: gerrit.Gerrit.AbandonChange:input_type -> gerrit.AbandonChangeRequest
  6966  	31,  // 111: gerrit.Gerrit.SubmitRevision:input_type -> gerrit.SubmitRevisionRequest
  6967  	56,  // 112: gerrit.Gerrit.ListProjects:output_type -> gerrit.ListProjectsResponse
  6968  	58,  // 113: gerrit.Gerrit.GetRefInfo:output_type -> gerrit.RefInfo
  6969  	62,  // 114: gerrit.Gerrit.ListFileOwners:output_type -> gerrit.ListOwnersResponse
  6970  	15,  // 115: gerrit.Gerrit.ListChanges:output_type -> gerrit.ListChangesResponse
  6971  	19,  // 116: gerrit.Gerrit.GetChange:output_type -> gerrit.ChangeInfo
  6972  	48,  // 117: gerrit.Gerrit.GetMergeable:output_type -> gerrit.MergeableInfo
  6973  	50,  // 118: gerrit.Gerrit.ListFiles:output_type -> gerrit.ListFilesResponse
  6974  	52,  // 119: gerrit.Gerrit.GetRelatedChanges:output_type -> gerrit.GetRelatedChangesResponse
  6975  	64,  // 120: gerrit.Gerrit.GetPureRevert:output_type -> gerrit.PureRevertInfo
  6976  	68,  // 121: gerrit.Gerrit.GetMetaDiff:output_type -> gerrit.MetaDiff
  6977  	19,  // 122: gerrit.Gerrit.CreateChange:output_type -> gerrit.ChangeInfo
  6978  	85,  // 123: gerrit.Gerrit.ChangeEditFileContent:output_type -> google.protobuf.Empty
  6979  	85,  // 124: gerrit.Gerrit.DeleteEditFileContent:output_type -> google.protobuf.Empty
  6980  	85,  // 125: gerrit.Gerrit.ChangeEditPublish:output_type -> google.protobuf.Empty
  6981  	40,  // 126: gerrit.Gerrit.AddReviewer:output_type -> gerrit.AddReviewerResult
  6982  	85,  // 127: gerrit.Gerrit.DeleteReviewer:output_type -> google.protobuf.Empty
  6983  	44,  // 128: gerrit.Gerrit.SetReview:output_type -> gerrit.ReviewResult
  6984  	17,  // 129: gerrit.Gerrit.AddToAttentionSet:output_type -> gerrit.AccountInfo
  6985  	19,  // 130: gerrit.Gerrit.SubmitChange:output_type -> gerrit.ChangeInfo
  6986  	19,  // 131: gerrit.Gerrit.RevertChange:output_type -> gerrit.ChangeInfo
  6987  	19,  // 132: gerrit.Gerrit.AbandonChange:output_type -> gerrit.ChangeInfo
  6988  	32,  // 133: gerrit.Gerrit.SubmitRevision:output_type -> gerrit.SubmitInfo
  6989  	112, // [112:134] is the sub-list for method output_type
  6990  	90,  // [90:112] is the sub-list for method input_type
  6991  	90,  // [90:90] is the sub-list for extension type_name
  6992  	90,  // [90:90] is the sub-list for extension extendee
  6993  	0,   // [0:90] is the sub-list for field type_name
  6994  }
  6995  
  6996  func init() { file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_init() }
  6997  func file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_init() {
  6998  	if File_go_chromium_org_luci_common_proto_gerrit_gerrit_proto != nil {
  6999  		return
  7000  	}
  7001  	if !protoimpl.UnsafeEnabled {
  7002  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  7003  			switch v := v.(*NotifyDetails); i {
  7004  			case 0:
  7005  				return &v.state
  7006  			case 1:
  7007  				return &v.sizeCache
  7008  			case 2:
  7009  				return &v.unknownFields
  7010  			default:
  7011  				return nil
  7012  			}
  7013  		}
  7014  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  7015  			switch v := v.(*ListChangesRequest); i {
  7016  			case 0:
  7017  				return &v.state
  7018  			case 1:
  7019  				return &v.sizeCache
  7020  			case 2:
  7021  				return &v.unknownFields
  7022  			default:
  7023  				return nil
  7024  			}
  7025  		}
  7026  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  7027  			switch v := v.(*ListChangesResponse); i {
  7028  			case 0:
  7029  				return &v.state
  7030  			case 1:
  7031  				return &v.sizeCache
  7032  			case 2:
  7033  				return &v.unknownFields
  7034  			default:
  7035  				return nil
  7036  			}
  7037  		}
  7038  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  7039  			switch v := v.(*GetChangeRequest); i {
  7040  			case 0:
  7041  				return &v.state
  7042  			case 1:
  7043  				return &v.sizeCache
  7044  			case 2:
  7045  				return &v.unknownFields
  7046  			default:
  7047  				return nil
  7048  			}
  7049  		}
  7050  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  7051  			switch v := v.(*AccountInfo); i {
  7052  			case 0:
  7053  				return &v.state
  7054  			case 1:
  7055  				return &v.sizeCache
  7056  			case 2:
  7057  				return &v.unknownFields
  7058  			default:
  7059  				return nil
  7060  			}
  7061  		}
  7062  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  7063  			switch v := v.(*GitPersonInfo); i {
  7064  			case 0:
  7065  				return &v.state
  7066  			case 1:
  7067  				return &v.sizeCache
  7068  			case 2:
  7069  				return &v.unknownFields
  7070  			default:
  7071  				return nil
  7072  			}
  7073  		}
  7074  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  7075  			switch v := v.(*ChangeInfo); i {
  7076  			case 0:
  7077  				return &v.state
  7078  			case 1:
  7079  				return &v.sizeCache
  7080  			case 2:
  7081  				return &v.unknownFields
  7082  			default:
  7083  				return nil
  7084  			}
  7085  		}
  7086  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  7087  			switch v := v.(*ReviewerStatusMap); i {
  7088  			case 0:
  7089  				return &v.state
  7090  			case 1:
  7091  				return &v.sizeCache
  7092  			case 2:
  7093  				return &v.unknownFields
  7094  			default:
  7095  				return nil
  7096  			}
  7097  		}
  7098  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  7099  			switch v := v.(*RevisionInfo); i {
  7100  			case 0:
  7101  				return &v.state
  7102  			case 1:
  7103  				return &v.sizeCache
  7104  			case 2:
  7105  				return &v.unknownFields
  7106  			default:
  7107  				return nil
  7108  			}
  7109  		}
  7110  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  7111  			switch v := v.(*CommitInfo); i {
  7112  			case 0:
  7113  				return &v.state
  7114  			case 1:
  7115  				return &v.sizeCache
  7116  			case 2:
  7117  				return &v.unknownFields
  7118  			default:
  7119  				return nil
  7120  			}
  7121  		}
  7122  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  7123  			switch v := v.(*LabelInfo); i {
  7124  			case 0:
  7125  				return &v.state
  7126  			case 1:
  7127  				return &v.sizeCache
  7128  			case 2:
  7129  				return &v.unknownFields
  7130  			default:
  7131  				return nil
  7132  			}
  7133  		}
  7134  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  7135  			switch v := v.(*ApprovalInfo); i {
  7136  			case 0:
  7137  				return &v.state
  7138  			case 1:
  7139  				return &v.sizeCache
  7140  			case 2:
  7141  				return &v.unknownFields
  7142  			default:
  7143  				return nil
  7144  			}
  7145  		}
  7146  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  7147  			switch v := v.(*VotingRangeInfo); i {
  7148  			case 0:
  7149  				return &v.state
  7150  			case 1:
  7151  				return &v.sizeCache
  7152  			case 2:
  7153  				return &v.unknownFields
  7154  			default:
  7155  				return nil
  7156  			}
  7157  		}
  7158  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  7159  			switch v := v.(*ChangeMessageInfo); i {
  7160  			case 0:
  7161  				return &v.state
  7162  			case 1:
  7163  				return &v.sizeCache
  7164  			case 2:
  7165  				return &v.unknownFields
  7166  			default:
  7167  				return nil
  7168  			}
  7169  		}
  7170  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  7171  			switch v := v.(*Requirement); i {
  7172  			case 0:
  7173  				return &v.state
  7174  			case 1:
  7175  				return &v.sizeCache
  7176  			case 2:
  7177  				return &v.unknownFields
  7178  			default:
  7179  				return nil
  7180  			}
  7181  		}
  7182  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  7183  			switch v := v.(*FileInfo); i {
  7184  			case 0:
  7185  				return &v.state
  7186  			case 1:
  7187  				return &v.sizeCache
  7188  			case 2:
  7189  				return &v.unknownFields
  7190  			default:
  7191  				return nil
  7192  			}
  7193  		}
  7194  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
  7195  			switch v := v.(*CreateChangeRequest); i {
  7196  			case 0:
  7197  				return &v.state
  7198  			case 1:
  7199  				return &v.sizeCache
  7200  			case 2:
  7201  				return &v.unknownFields
  7202  			default:
  7203  				return nil
  7204  			}
  7205  		}
  7206  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
  7207  			switch v := v.(*SubmitChangeRequest); i {
  7208  			case 0:
  7209  				return &v.state
  7210  			case 1:
  7211  				return &v.sizeCache
  7212  			case 2:
  7213  				return &v.unknownFields
  7214  			default:
  7215  				return nil
  7216  			}
  7217  		}
  7218  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
  7219  			switch v := v.(*SubmitRevisionRequest); i {
  7220  			case 0:
  7221  				return &v.state
  7222  			case 1:
  7223  				return &v.sizeCache
  7224  			case 2:
  7225  				return &v.unknownFields
  7226  			default:
  7227  				return nil
  7228  			}
  7229  		}
  7230  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
  7231  			switch v := v.(*SubmitInfo); i {
  7232  			case 0:
  7233  				return &v.state
  7234  			case 1:
  7235  				return &v.sizeCache
  7236  			case 2:
  7237  				return &v.unknownFields
  7238  			default:
  7239  				return nil
  7240  			}
  7241  		}
  7242  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
  7243  			switch v := v.(*ChangeEditFileContentRequest); i {
  7244  			case 0:
  7245  				return &v.state
  7246  			case 1:
  7247  				return &v.sizeCache
  7248  			case 2:
  7249  				return &v.unknownFields
  7250  			default:
  7251  				return nil
  7252  			}
  7253  		}
  7254  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
  7255  			switch v := v.(*DeleteEditFileContentRequest); i {
  7256  			case 0:
  7257  				return &v.state
  7258  			case 1:
  7259  				return &v.sizeCache
  7260  			case 2:
  7261  				return &v.unknownFields
  7262  			default:
  7263  				return nil
  7264  			}
  7265  		}
  7266  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
  7267  			switch v := v.(*ChangeEditPublishRequest); i {
  7268  			case 0:
  7269  				return &v.state
  7270  			case 1:
  7271  				return &v.sizeCache
  7272  			case 2:
  7273  				return &v.unknownFields
  7274  			default:
  7275  				return nil
  7276  			}
  7277  		}
  7278  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
  7279  			switch v := v.(*RevertChangeRequest); i {
  7280  			case 0:
  7281  				return &v.state
  7282  			case 1:
  7283  				return &v.sizeCache
  7284  			case 2:
  7285  				return &v.unknownFields
  7286  			default:
  7287  				return nil
  7288  			}
  7289  		}
  7290  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
  7291  			switch v := v.(*AbandonChangeRequest); i {
  7292  			case 0:
  7293  				return &v.state
  7294  			case 1:
  7295  				return &v.sizeCache
  7296  			case 2:
  7297  				return &v.unknownFields
  7298  			default:
  7299  				return nil
  7300  			}
  7301  		}
  7302  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
  7303  			switch v := v.(*AddReviewerRequest); i {
  7304  			case 0:
  7305  				return &v.state
  7306  			case 1:
  7307  				return &v.sizeCache
  7308  			case 2:
  7309  				return &v.unknownFields
  7310  			default:
  7311  				return nil
  7312  			}
  7313  		}
  7314  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
  7315  			switch v := v.(*ReviewerInfo); i {
  7316  			case 0:
  7317  				return &v.state
  7318  			case 1:
  7319  				return &v.sizeCache
  7320  			case 2:
  7321  				return &v.unknownFields
  7322  			default:
  7323  				return nil
  7324  			}
  7325  		}
  7326  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
  7327  			switch v := v.(*AddReviewerResult); i {
  7328  			case 0:
  7329  				return &v.state
  7330  			case 1:
  7331  				return &v.sizeCache
  7332  			case 2:
  7333  				return &v.unknownFields
  7334  			default:
  7335  				return nil
  7336  			}
  7337  		}
  7338  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
  7339  			switch v := v.(*DeleteReviewerRequest); i {
  7340  			case 0:
  7341  				return &v.state
  7342  			case 1:
  7343  				return &v.sizeCache
  7344  			case 2:
  7345  				return &v.unknownFields
  7346  			default:
  7347  				return nil
  7348  			}
  7349  		}
  7350  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
  7351  			switch v := v.(*SetReviewRequest); i {
  7352  			case 0:
  7353  				return &v.state
  7354  			case 1:
  7355  				return &v.sizeCache
  7356  			case 2:
  7357  				return &v.unknownFields
  7358  			default:
  7359  				return nil
  7360  			}
  7361  		}
  7362  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
  7363  			switch v := v.(*ReviewerInput); i {
  7364  			case 0:
  7365  				return &v.state
  7366  			case 1:
  7367  				return &v.sizeCache
  7368  			case 2:
  7369  				return &v.unknownFields
  7370  			default:
  7371  				return nil
  7372  			}
  7373  		}
  7374  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
  7375  			switch v := v.(*ReviewResult); i {
  7376  			case 0:
  7377  				return &v.state
  7378  			case 1:
  7379  				return &v.sizeCache
  7380  			case 2:
  7381  				return &v.unknownFields
  7382  			default:
  7383  				return nil
  7384  			}
  7385  		}
  7386  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
  7387  			switch v := v.(*AttentionSetRequest); i {
  7388  			case 0:
  7389  				return &v.state
  7390  			case 1:
  7391  				return &v.sizeCache
  7392  			case 2:
  7393  				return &v.unknownFields
  7394  			default:
  7395  				return nil
  7396  			}
  7397  		}
  7398  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
  7399  			switch v := v.(*AttentionSetInput); i {
  7400  			case 0:
  7401  				return &v.state
  7402  			case 1:
  7403  				return &v.sizeCache
  7404  			case 2:
  7405  				return &v.unknownFields
  7406  			default:
  7407  				return nil
  7408  			}
  7409  		}
  7410  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
  7411  			switch v := v.(*GetMergeableRequest); i {
  7412  			case 0:
  7413  				return &v.state
  7414  			case 1:
  7415  				return &v.sizeCache
  7416  			case 2:
  7417  				return &v.unknownFields
  7418  			default:
  7419  				return nil
  7420  			}
  7421  		}
  7422  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
  7423  			switch v := v.(*MergeableInfo); i {
  7424  			case 0:
  7425  				return &v.state
  7426  			case 1:
  7427  				return &v.sizeCache
  7428  			case 2:
  7429  				return &v.unknownFields
  7430  			default:
  7431  				return nil
  7432  			}
  7433  		}
  7434  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
  7435  			switch v := v.(*ListFilesRequest); i {
  7436  			case 0:
  7437  				return &v.state
  7438  			case 1:
  7439  				return &v.sizeCache
  7440  			case 2:
  7441  				return &v.unknownFields
  7442  			default:
  7443  				return nil
  7444  			}
  7445  		}
  7446  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
  7447  			switch v := v.(*ListFilesResponse); i {
  7448  			case 0:
  7449  				return &v.state
  7450  			case 1:
  7451  				return &v.sizeCache
  7452  			case 2:
  7453  				return &v.unknownFields
  7454  			default:
  7455  				return nil
  7456  			}
  7457  		}
  7458  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
  7459  			switch v := v.(*GetRelatedChangesRequest); i {
  7460  			case 0:
  7461  				return &v.state
  7462  			case 1:
  7463  				return &v.sizeCache
  7464  			case 2:
  7465  				return &v.unknownFields
  7466  			default:
  7467  				return nil
  7468  			}
  7469  		}
  7470  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
  7471  			switch v := v.(*GetRelatedChangesResponse); i {
  7472  			case 0:
  7473  				return &v.state
  7474  			case 1:
  7475  				return &v.sizeCache
  7476  			case 2:
  7477  				return &v.unknownFields
  7478  			default:
  7479  				return nil
  7480  			}
  7481  		}
  7482  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
  7483  			switch v := v.(*ListProjectsRequest); i {
  7484  			case 0:
  7485  				return &v.state
  7486  			case 1:
  7487  				return &v.sizeCache
  7488  			case 2:
  7489  				return &v.unknownFields
  7490  			default:
  7491  				return nil
  7492  			}
  7493  		}
  7494  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
  7495  			switch v := v.(*WebLinkInfo); i {
  7496  			case 0:
  7497  				return &v.state
  7498  			case 1:
  7499  				return &v.sizeCache
  7500  			case 2:
  7501  				return &v.unknownFields
  7502  			default:
  7503  				return nil
  7504  			}
  7505  		}
  7506  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
  7507  			switch v := v.(*ProjectInfo); i {
  7508  			case 0:
  7509  				return &v.state
  7510  			case 1:
  7511  				return &v.sizeCache
  7512  			case 2:
  7513  				return &v.unknownFields
  7514  			default:
  7515  				return nil
  7516  			}
  7517  		}
  7518  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
  7519  			switch v := v.(*ListProjectsResponse); i {
  7520  			case 0:
  7521  				return &v.state
  7522  			case 1:
  7523  				return &v.sizeCache
  7524  			case 2:
  7525  				return &v.unknownFields
  7526  			default:
  7527  				return nil
  7528  			}
  7529  		}
  7530  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
  7531  			switch v := v.(*RefInfoRequest); i {
  7532  			case 0:
  7533  				return &v.state
  7534  			case 1:
  7535  				return &v.sizeCache
  7536  			case 2:
  7537  				return &v.unknownFields
  7538  			default:
  7539  				return nil
  7540  			}
  7541  		}
  7542  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
  7543  			switch v := v.(*RefInfo); i {
  7544  			case 0:
  7545  				return &v.state
  7546  			case 1:
  7547  				return &v.sizeCache
  7548  			case 2:
  7549  				return &v.unknownFields
  7550  			default:
  7551  				return nil
  7552  			}
  7553  		}
  7554  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
  7555  			switch v := v.(*AccountOptions); i {
  7556  			case 0:
  7557  				return &v.state
  7558  			case 1:
  7559  				return &v.sizeCache
  7560  			case 2:
  7561  				return &v.unknownFields
  7562  			default:
  7563  				return nil
  7564  			}
  7565  		}
  7566  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
  7567  			switch v := v.(*ListFileOwnersRequest); i {
  7568  			case 0:
  7569  				return &v.state
  7570  			case 1:
  7571  				return &v.sizeCache
  7572  			case 2:
  7573  				return &v.unknownFields
  7574  			default:
  7575  				return nil
  7576  			}
  7577  		}
  7578  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
  7579  			switch v := v.(*OwnerInfo); i {
  7580  			case 0:
  7581  				return &v.state
  7582  			case 1:
  7583  				return &v.sizeCache
  7584  			case 2:
  7585  				return &v.unknownFields
  7586  			default:
  7587  				return nil
  7588  			}
  7589  		}
  7590  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
  7591  			switch v := v.(*ListOwnersResponse); i {
  7592  			case 0:
  7593  				return &v.state
  7594  			case 1:
  7595  				return &v.sizeCache
  7596  			case 2:
  7597  				return &v.unknownFields
  7598  			default:
  7599  				return nil
  7600  			}
  7601  		}
  7602  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
  7603  			switch v := v.(*GetPureRevertRequest); i {
  7604  			case 0:
  7605  				return &v.state
  7606  			case 1:
  7607  				return &v.sizeCache
  7608  			case 2:
  7609  				return &v.unknownFields
  7610  			default:
  7611  				return nil
  7612  			}
  7613  		}
  7614  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
  7615  			switch v := v.(*PureRevertInfo); i {
  7616  			case 0:
  7617  				return &v.state
  7618  			case 1:
  7619  				return &v.sizeCache
  7620  			case 2:
  7621  				return &v.unknownFields
  7622  			default:
  7623  				return nil
  7624  			}
  7625  		}
  7626  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
  7627  			switch v := v.(*SubmitRequirementResultInfo); i {
  7628  			case 0:
  7629  				return &v.state
  7630  			case 1:
  7631  				return &v.sizeCache
  7632  			case 2:
  7633  				return &v.unknownFields
  7634  			default:
  7635  				return nil
  7636  			}
  7637  		}
  7638  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
  7639  			switch v := v.(*SubmitRequirementExpressionInfo); i {
  7640  			case 0:
  7641  				return &v.state
  7642  			case 1:
  7643  				return &v.sizeCache
  7644  			case 2:
  7645  				return &v.unknownFields
  7646  			default:
  7647  				return nil
  7648  			}
  7649  		}
  7650  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
  7651  			switch v := v.(*GetMetaDiffRequest); i {
  7652  			case 0:
  7653  				return &v.state
  7654  			case 1:
  7655  				return &v.sizeCache
  7656  			case 2:
  7657  				return &v.unknownFields
  7658  			default:
  7659  				return nil
  7660  			}
  7661  		}
  7662  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
  7663  			switch v := v.(*MetaDiff); i {
  7664  			case 0:
  7665  				return &v.state
  7666  			case 1:
  7667  				return &v.sizeCache
  7668  			case 2:
  7669  				return &v.unknownFields
  7670  			default:
  7671  				return nil
  7672  			}
  7673  		}
  7674  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
  7675  			switch v := v.(*NotifyDetails_Info); i {
  7676  			case 0:
  7677  				return &v.state
  7678  			case 1:
  7679  				return &v.sizeCache
  7680  			case 2:
  7681  				return &v.unknownFields
  7682  			default:
  7683  				return nil
  7684  			}
  7685  		}
  7686  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
  7687  			switch v := v.(*NotifyDetails_Recipient); i {
  7688  			case 0:
  7689  				return &v.state
  7690  			case 1:
  7691  				return &v.sizeCache
  7692  			case 2:
  7693  				return &v.unknownFields
  7694  			default:
  7695  				return nil
  7696  			}
  7697  		}
  7698  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
  7699  			switch v := v.(*CommitInfo_Parent); i {
  7700  			case 0:
  7701  				return &v.state
  7702  			case 1:
  7703  				return &v.sizeCache
  7704  			case 2:
  7705  				return &v.unknownFields
  7706  			default:
  7707  				return nil
  7708  			}
  7709  		}
  7710  		file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
  7711  			switch v := v.(*GetRelatedChangesResponse_ChangeAndCommit); i {
  7712  			case 0:
  7713  				return &v.state
  7714  			case 1:
  7715  				return &v.sizeCache
  7716  			case 2:
  7717  				return &v.unknownFields
  7718  			default:
  7719  				return nil
  7720  			}
  7721  		}
  7722  	}
  7723  	type x struct{}
  7724  	out := protoimpl.TypeBuilder{
  7725  		File: protoimpl.DescBuilder{
  7726  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  7727  			RawDescriptor: file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDesc,
  7728  			NumEnums:      13,
  7729  			NumMessages:   71,
  7730  			NumExtensions: 0,
  7731  			NumServices:   1,
  7732  		},
  7733  		GoTypes:           file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_goTypes,
  7734  		DependencyIndexes: file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_depIdxs,
  7735  		EnumInfos:         file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_enumTypes,
  7736  		MessageInfos:      file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_msgTypes,
  7737  	}.Build()
  7738  	File_go_chromium_org_luci_common_proto_gerrit_gerrit_proto = out.File
  7739  	file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_rawDesc = nil
  7740  	file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_goTypes = nil
  7741  	file_go_chromium_org_luci_common_proto_gerrit_gerrit_proto_depIdxs = nil
  7742  }