diff options
author | Pavlo Strokov <pstrokov@gitlab.com> | 2021-09-21 12:11:17 +0300 |
---|---|---|
committer | Pavlo Strokov <pstrokov@gitlab.com> | 2021-09-21 12:11:17 +0300 |
commit | 08462660739d1dec9365fe6c25efaace6c1485d3 (patch) | |
tree | 110fab8d0b59fceeca0518eda6748df0b9165c5d | |
parent | 5b7382e0251176923f258aa8f8c23a8084f6cae9 (diff) | |
parent | 0ce8dca32cda0902d202bbd7f321db77237bd113 (diff) |
Merge branch 'pks-config-rpcs-cleanup' into 'master'
Remove SetConfig and DeleteConfig RPCs
Closes #3722
See merge request gitlab-org/gitaly!3890
-rw-r--r-- | cmd/gitaly-git2go/main.go | 1 | ||||
-rw-r--r-- | cmd/gitaly-git2go/set_config.go | 67 | ||||
-rw-r--r-- | internal/git2go/set_config.go | 50 | ||||
-rw-r--r-- | internal/gitaly/service/repository/config.go | 136 | ||||
-rw-r--r-- | internal/gitaly/service/repository/config_test.go | 209 | ||||
-rw-r--r-- | internal/gitaly/service/repository/testhelper_test.go | 2 | ||||
-rw-r--r-- | internal/metadata/featureflag/ff_go_set_config.go | 4 | ||||
-rw-r--r-- | internal/praefect/coordinator.go | 2 | ||||
-rw-r--r-- | internal/praefect/protoregistry/protoregistry_test.go | 2 | ||||
-rw-r--r-- | proto/go/gitalypb/repository-service.pb.go | 1998 | ||||
-rw-r--r-- | proto/go/gitalypb/repository-service_grpc.pb.go | 94 | ||||
-rw-r--r-- | proto/repository-service.proto | 44 | ||||
-rw-r--r-- | ruby/lib/gitaly_server/repository_service.rb | 22 | ||||
-rw-r--r-- | ruby/proto/gitaly/repository-service_pb.rb | 25 | ||||
-rw-r--r-- | ruby/proto/gitaly/repository-service_services_pb.rb | 10 |
15 files changed, 798 insertions, 1868 deletions
diff --git a/cmd/gitaly-git2go/main.go b/cmd/gitaly-git2go/main.go index 208dd5863..e940f6904 100644 --- a/cmd/gitaly-git2go/main.go +++ b/cmd/gitaly-git2go/main.go @@ -29,7 +29,6 @@ var subcommands = map[string]subcmd{ "revert": &revertSubcommand{}, "resolve": &resolveSubcommand{}, "submodule": &submoduleSubcommand{}, - "set_config": &setConfigSubcommand{}, } func fatalf(format string, args ...interface{}) { diff --git a/cmd/gitaly-git2go/set_config.go b/cmd/gitaly-git2go/set_config.go deleted file mode 100644 index 79b104e6f..000000000 --- a/cmd/gitaly-git2go/set_config.go +++ /dev/null @@ -1,67 +0,0 @@ -//go:build static && system_libgit2 -// +build static,system_libgit2 - -package main - -import ( - "context" - "encoding/gob" - "errors" - "flag" - "fmt" - "io" - - "gitlab.com/gitlab-org/gitaly/v14/cmd/gitaly-git2go/git2goutil" - "gitlab.com/gitlab-org/gitaly/v14/internal/git2go" -) - -type setConfigSubcommand struct{} - -func (cmd *setConfigSubcommand) Flags() *flag.FlagSet { - return flag.NewFlagSet("set_config", flag.ExitOnError) -} - -func (cmd setConfigSubcommand) setConfig(request git2go.SetConfigCommand) error { - if request.Repository == "" { - return errors.New("missing repository") - } - - git2goRepo, err := git2goutil.OpenRepository(request.Repository) - if err != nil { - return fmt.Errorf("open repository: %w", err) - } - - conf, err := git2goRepo.Config() - if err != nil { - return fmt.Errorf("getting repository config: %w", err) - } - - for key, entry := range request.Entries { - switch v := entry.Value.(type) { - case bool: - err = conf.SetBool(key, v) - case int32: - err = conf.SetInt32(key, v) - case string: - err = conf.SetString(key, v) - default: - err = fmt.Errorf("unsupported value type: %T", entry.Value) - } - if err != nil { - return fmt.Errorf("set config value for key %q: %w", key, err) - } - } - return nil -} - -func (cmd setConfigSubcommand) Run(_ context.Context, r io.Reader, w io.Writer) error { - var request git2go.SetConfigCommand - if err := gob.NewDecoder(r).Decode(&request); err != nil { - return err - } - - err := cmd.setConfig(request) - return gob.NewEncoder(w).Encode(git2go.SetConfingResult{ - Error: git2go.SerializableError(err), - }) -} diff --git a/internal/git2go/set_config.go b/internal/git2go/set_config.go deleted file mode 100644 index 0375189ea..000000000 --- a/internal/git2go/set_config.go +++ /dev/null @@ -1,50 +0,0 @@ -package git2go - -import ( - "bytes" - "context" - "encoding/gob" - "fmt" - - "gitlab.com/gitlab-org/gitaly/v14/internal/git/repository" -) - -// ConfigEntry interface value with defined type. -type ConfigEntry struct { - Value interface{} -} - -// SetConfigCommand contains parameters to perform setting of config entries. -type SetConfigCommand struct { - // Repository is the path to repository. - Repository string `json:"repository"` - // Entries key-value config entries. - Entries map[string]ConfigEntry `json:"entries"` -} - -// SetConfingResult contains results from set config action. -type SetConfingResult struct { - // Possible Error from git2go binary. - Error error `json:"error"` -} - -// SetConfig attempts to set all entries to config -func (b Executor) SetConfig(ctx context.Context, repo repository.GitRepo, s SetConfigCommand) error { - input := &bytes.Buffer{} - if err := gob.NewEncoder(input).Encode(s); err != nil { - return fmt.Errorf("resolve: %w", err) - } - - stdout, err := b.run(ctx, repo, input, "set_config") - if err != nil { - return err - } - - var response SetConfingResult - - if err := gob.NewDecoder(stdout).Decode(&response); err != nil { - return fmt.Errorf("decodе response: %w", err) - } - - return response.Error -} diff --git a/internal/gitaly/service/repository/config.go b/internal/gitaly/service/repository/config.go index 2a0bab645..c650bc65b 100644 --- a/internal/gitaly/service/repository/config.go +++ b/internal/gitaly/service/repository/config.go @@ -7,13 +7,8 @@ import ( "os" "path/filepath" - "gitlab.com/gitlab-org/gitaly/v14/internal/command" - "gitlab.com/gitlab-org/gitaly/v14/internal/git" - "gitlab.com/gitlab-org/gitaly/v14/internal/git2go" - "gitlab.com/gitlab-org/gitaly/v14/internal/gitaly/rubyserver" "gitlab.com/gitlab-org/gitaly/v14/internal/gitaly/transaction" "gitlab.com/gitlab-org/gitaly/v14/internal/helper" - "gitlab.com/gitlab-org/gitaly/v14/internal/metadata/featureflag" "gitlab.com/gitlab-org/gitaly/v14/internal/transaction/txinfo" "gitlab.com/gitlab-org/gitaly/v14/internal/transaction/voting" "gitlab.com/gitlab-org/gitaly/v14/proto/go/gitalypb" @@ -55,137 +50,6 @@ func (s *server) GetConfig( return nil } -func (s *server) DeleteConfig(ctx context.Context, req *gitalypb.DeleteConfigRequest) (*gitalypb.DeleteConfigResponse, error) { - /* - * We need to vote both before and after the change because we don't have proper commit - * semantics: it's not easily feasible to lock the config manually, vote on it and only - * commit the change if the vote was successful. Git automatically does this for us for ref - * updates via the reference-transaction hook, but here we'll need to use an approximation. - * - * As an approximation, we thus vote both before and after the change. Praefect requires the - * vote up front because if an RPC failed and no vote exists, it assumes no change was - * performed, and that's bad for us if we fail _after_ the modification but _before_ the - * vote on changed data. And the second vote is required such that we can assert that all - * Gitaly nodes actually did perform the same change. - */ - if err := s.voteOnConfig(ctx, req.GetRepository()); err != nil { - return nil, helper.ErrInternal(fmt.Errorf("preimage vote on config: %w", err)) - } - - for _, k := range req.Keys { - // We assume k does not contain any secrets; it is leaked via 'ps'. - cmd, err := s.gitCmdFactory.New(ctx, req.Repository, git.SubCmd{ - Name: "config", - Flags: []git.Option{git.Flag{Name: "--unset-all"}}, - Args: []string{k}, - }) - if err != nil { - return nil, err - } - - if err := cmd.Wait(); err != nil { - if code, ok := command.ExitStatus(err); ok && code == 5 { - // Status code 5 means 'key not in config', see 'git help config' - continue - } - - return nil, status.Errorf(codes.Internal, "command failed: %v", err) - } - } - - if err := s.voteOnConfig(ctx, req.GetRepository()); err != nil { - return nil, helper.ErrInternal(fmt.Errorf("postimage vote on config: %w", err)) - } - - return &gitalypb.DeleteConfigResponse{}, nil -} - -func (s *server) setConfigGit2Go(ctx context.Context, req *gitalypb.SetConfigRequest) (*gitalypb.SetConfigResponse, error) { - reqRepo := req.GetRepository() - if reqRepo == nil { - return nil, status.Error(codes.InvalidArgument, "no repository") - } - - path, err := s.locator.GetRepoPath(reqRepo) - if err != nil { - return nil, err - } - - entries := make(map[string]git2go.ConfigEntry) - - for _, el := range req.Entries { - switch el.GetValue().(type) { - case *gitalypb.SetConfigRequest_Entry_ValueStr: - entries[el.Key] = git2go.ConfigEntry{Value: el.GetValueStr()} - case *gitalypb.SetConfigRequest_Entry_ValueInt32: - entries[el.Key] = git2go.ConfigEntry{Value: el.GetValueInt32()} - case *gitalypb.SetConfigRequest_Entry_ValueBool: - entries[el.Key] = git2go.ConfigEntry{Value: el.GetValueBool()} - default: - return nil, status.Error(codes.InvalidArgument, "unknown entry type") - } - } - - /* - * We're voting twice, once on the preimage and once on the postimage. Please refer to the - * comment in DeleteConfig() for the reason. - */ - if err := s.voteOnConfig(ctx, req.GetRepository()); err != nil { - return nil, helper.ErrInternalf("preimage vote on config: %v", err) - } - - if err := s.git2go.SetConfig(ctx, reqRepo, git2go.SetConfigCommand{Repository: path, Entries: entries}); err != nil { - return nil, status.Errorf(codes.Internal, "SetConfig git2go error") - } - - if err := s.voteOnConfig(ctx, req.GetRepository()); err != nil { - return nil, helper.ErrInternalf("postimage vote on config: %v", err) - } - - return &gitalypb.SetConfigResponse{}, nil -} - -func (s *server) SetConfig(ctx context.Context, req *gitalypb.SetConfigRequest) (*gitalypb.SetConfigResponse, error) { - // We use gitaly-ruby here because in gitaly-ruby we can use Rugged, and - // Rugged lets us set config values without leaking secrets via 'ps'. We - // can't use `git config foo.bar secret` because that leaks secrets. - // Also we can use git2go implementation of SetConfig - - if featureflag.GoSetConfig.IsEnabled(ctx) { - return s.setConfigGit2Go(ctx, req) - } - - client, err := s.ruby.RepositoryServiceClient(ctx) - if err != nil { - return nil, err - } - - clientCtx, err := rubyserver.SetHeaders(ctx, s.locator, req.GetRepository()) - if err != nil { - return nil, err - } - - /* - * We're voting twice, once on the preimage and once on the postimage. Please refer to the - * comment in DeleteConfig() for the reason. - */ - if err := s.voteOnConfig(ctx, req.GetRepository()); err != nil { - return nil, helper.ErrInternalf("preimage vote on config: %v", err) - } - - //nolint:staticcheck - response, err := client.SetConfig(clientCtx, req) - if err != nil { - return nil, err - } - - if err := s.voteOnConfig(ctx, req.GetRepository()); err != nil { - return nil, helper.ErrInternalf("postimage vote on config: %v", err) - } - - return response, nil -} - func (s *server) voteOnConfig(ctx context.Context, repo *gitalypb.Repository) error { return transaction.RunOnContext(ctx, func(tx txinfo.Transaction) error { repoPath, err := s.locator.GetPath(repo) diff --git a/internal/gitaly/service/repository/config_test.go b/internal/gitaly/service/repository/config_test.go index 817ff9535..98efe8bb9 100644 --- a/internal/gitaly/service/repository/config_test.go +++ b/internal/gitaly/service/repository/config_test.go @@ -1,27 +1,15 @@ package repository import ( - "bufio" - "bytes" - "context" "io" "os" "path/filepath" - "strings" "testing" "github.com/stretchr/testify/require" "gitlab.com/gitlab-org/gitaly/v14/internal/git/gittest" - "gitlab.com/gitlab-org/gitaly/v14/internal/gitaly/config" - "gitlab.com/gitlab-org/gitaly/v14/internal/gitaly/rubyserver" - "gitlab.com/gitlab-org/gitaly/v14/internal/gitaly/transaction" - "gitlab.com/gitlab-org/gitaly/v14/internal/metadata" - "gitlab.com/gitlab-org/gitaly/v14/internal/metadata/featureflag" "gitlab.com/gitlab-org/gitaly/v14/internal/testhelper" "gitlab.com/gitlab-org/gitaly/v14/internal/testhelper/testassert" - "gitlab.com/gitlab-org/gitaly/v14/internal/testhelper/testserver" - "gitlab.com/gitlab-org/gitaly/v14/internal/transaction/txinfo" - "gitlab.com/gitlab-org/gitaly/v14/internal/transaction/voting" "gitlab.com/gitlab-org/gitaly/v14/proto/go/gitalypb" "gitlab.com/gitlab-org/gitaly/v14/streamio" "google.golang.org/grpc/codes" @@ -77,200 +65,3 @@ func TestGetConfig(t *testing.T) { require.Equal(t, "", config) }) } - -func TestDeleteConfig(t *testing.T) { - t.Parallel() - cfg, client := setupRepositoryServiceWithoutRepo(t) - - testcases := []struct { - desc string - addKeys []string - reqKeys []string - code codes.Code - }{ - { - desc: "empty request", - }, - { - desc: "keys that don't exist", - reqKeys: []string{"test.foo", "test.bar"}, - }, - { - desc: "mix of keys that do and do not exist", - addKeys: []string{"test.bar"}, - reqKeys: []string{"test.foo", "test.bar", "test.baz"}, - }, - } - - for _, tc := range testcases { - t.Run(tc.desc, func(t *testing.T) { - ctx, cancel := testhelper.Context() - defer cancel() - - repo, repoPath := gittest.CloneRepo(t, cfg, cfg.Storages[0]) - - for _, k := range tc.addKeys { - gittest.Exec(t, cfg, "-C", repoPath, "config", k, "blabla") - } - - //nolint:staticcheck - _, err := client.DeleteConfig(ctx, &gitalypb.DeleteConfigRequest{Repository: repo, Keys: tc.reqKeys}) - if tc.code == codes.OK { - require.NoError(t, err) - } else { - require.Equal(t, tc.code, status.Code(err), "expected grpc error code") - return - } - - actualConfig := gittest.Exec(t, cfg, "-C", repoPath, "config", "-l") - scanner := bufio.NewScanner(bytes.NewReader(actualConfig)) - for scanner.Scan() { - for _, k := range tc.reqKeys { - require.False(t, strings.HasPrefix(scanner.Text(), k+"="), "key %q must not occur in config", k) - } - } - - require.NoError(t, scanner.Err()) - }) - } -} - -func TestDeleteConfigTransactional(t *testing.T) { - t.Parallel() - var votes []voting.Vote - txManager := transaction.MockManager{ - VoteFn: func(_ context.Context, _ txinfo.Transaction, vote voting.Vote) error { - votes = append(votes, vote) - return nil - }, - } - - cfg, repo, repoPath, client := setupRepositoryService(t, testserver.WithTransactionManager(&txManager)) - - ctx, cancel := testhelper.Context() - defer cancel() - ctx, err := txinfo.InjectTransaction(ctx, 1, "node", true) - require.NoError(t, err) - ctx = metadata.IncomingToOutgoing(ctx) - - unmodifiedContents := testhelper.MustReadFile(t, filepath.Join(repoPath, "config")) - gittest.Exec(t, cfg, "-C", repoPath, "config", "delete.me", "now") - modifiedContents := testhelper.MustReadFile(t, filepath.Join(repoPath, "config")) - - //nolint:staticcheck - _, err = client.DeleteConfig(ctx, &gitalypb.DeleteConfigRequest{ - Repository: repo, - Keys: []string{"delete.me"}, - }) - require.NoError(t, err) - - require.Equal(t, []voting.Vote{ - voting.VoteFromData(modifiedContents), - voting.VoteFromData(unmodifiedContents), - }, votes) -} - -func testSetConfig(t *testing.T, cfg config.Cfg, rubySrv *rubyserver.Server) { - testhelper.NewFeatureSets([]featureflag.FeatureFlag{ - featureflag.GoSetConfig, - }).Run(t, func(t *testing.T, ctx context.Context) { - cfg, _, _, client := setupRepositoryServiceWithRuby(t, cfg, rubySrv) - - testcases := []struct { - desc string - entries []*gitalypb.SetConfigRequest_Entry - expected []string - code codes.Code - }{ - { - desc: "empty request", - }, - { - desc: "mix of different types", - entries: []*gitalypb.SetConfigRequest_Entry{ - {Key: "test.foo1", Value: &gitalypb.SetConfigRequest_Entry_ValueStr{ValueStr: "hello world"}}, - {Key: "test.foo2", Value: &gitalypb.SetConfigRequest_Entry_ValueInt32{ValueInt32: 1234}}, - {Key: "test.foo3", Value: &gitalypb.SetConfigRequest_Entry_ValueBool{ValueBool: true}}, - }, - expected: []string{ - "test.foo1=hello world", - "test.foo2=1234", - "test.foo3=true", - }, - }, - } - - for _, tc := range testcases { - t.Run(tc.desc, func(t *testing.T) { - ctx, cancel := testhelper.Context() - defer cancel() - - testRepo, testRepoPath := gittest.CloneRepo(t, cfg, cfg.Storages[0]) - - //nolint:staticcheck - _, err := client.SetConfig(ctx, &gitalypb.SetConfigRequest{Repository: testRepo, Entries: tc.entries}) - - if tc.code != codes.OK { - require.Equal(t, tc.code, status.Code(err), "expected grpc error code") - return - } - - require.NoError(t, err) - - actualConfigBytes := gittest.Exec(t, cfg, "-C", testRepoPath, "config", "--local", "-l") - scanner := bufio.NewScanner(bytes.NewReader(actualConfigBytes)) - - var actualConfig []string - for scanner.Scan() { - actualConfig = append(actualConfig, scanner.Text()) - } - require.NoError(t, scanner.Err()) - - for _, entry := range tc.expected { - require.Contains(t, actualConfig, entry) - } - }) - } - }) -} - -func testSetConfigTransactional(t *testing.T, cfg config.Cfg, rubySrv *rubyserver.Server) { - var votes []voting.Vote - - txManager := transaction.MockManager{ - VoteFn: func(_ context.Context, _ txinfo.Transaction, vote voting.Vote) error { - votes = append(votes, vote) - return nil - }, - } - - _, repo, repoPath, client := setupRepositoryServiceWithRuby(t, cfg, rubySrv, testserver.WithTransactionManager(&txManager)) - - ctx, cancel := testhelper.Context() - defer cancel() - ctx, err := txinfo.InjectTransaction(ctx, 1, "node", true) - require.NoError(t, err) - ctx = metadata.IncomingToOutgoing(ctx) - - unmodifiedContents := testhelper.MustReadFile(t, filepath.Join(repoPath, "config")) - - //nolint:staticcheck - _, err = client.SetConfig(ctx, &gitalypb.SetConfigRequest{ - Repository: repo, - Entries: []*gitalypb.SetConfigRequest_Entry{ - { - Key: "set.me", - Value: &gitalypb.SetConfigRequest_Entry_ValueStr{ - ValueStr: "something", - }, - }, - }, - }) - require.NoError(t, err) - - modifiedContents := string(unmodifiedContents) + "[set]\n\tme = something\n" - require.Equal(t, []voting.Vote{ - voting.VoteFromData(unmodifiedContents), - voting.VoteFromData([]byte(modifiedContents)), - }, votes) -} diff --git a/internal/gitaly/service/repository/testhelper_test.go b/internal/gitaly/service/repository/testhelper_test.go index 54e8c3d47..a50e3a7da 100644 --- a/internal/gitaly/service/repository/testhelper_test.go +++ b/internal/gitaly/service/repository/testhelper_test.go @@ -58,8 +58,6 @@ func TestWithRubySidecar(t *testing.T) { t.Cleanup(rubySrv.Stop) fs := []func(t *testing.T, cfg config.Cfg, rubySrv *rubyserver.Server){ - testSetConfig, - testSetConfigTransactional, testSuccessfulFindLicenseRequest, testFindLicenseRequestEmptyRepo, } diff --git a/internal/metadata/featureflag/ff_go_set_config.go b/internal/metadata/featureflag/ff_go_set_config.go deleted file mode 100644 index 83393c2f3..000000000 --- a/internal/metadata/featureflag/ff_go_set_config.go +++ /dev/null @@ -1,4 +0,0 @@ -package featureflag - -// GoSetConfig enables git2go implementation of SetConfig. -var GoSetConfig = NewFeatureFlag("go_set_config", true) diff --git a/internal/praefect/coordinator.go b/internal/praefect/coordinator.go index cd6a86541..aea341dd0 100644 --- a/internal/praefect/coordinator.go +++ b/internal/praefect/coordinator.go @@ -73,12 +73,10 @@ var transactionRPCs = map[string]transactionsCondition{ "/gitaly.RepositoryService/CreateRepositoryFromBundle": transactionsEnabled, "/gitaly.RepositoryService/CreateRepositoryFromSnapshot": transactionsEnabled, "/gitaly.RepositoryService/CreateRepositoryFromURL": transactionsEnabled, - "/gitaly.RepositoryService/DeleteConfig": transactionsEnabled, "/gitaly.RepositoryService/FetchRemote": transactionsEnabled, "/gitaly.RepositoryService/FetchSourceBranch": transactionsEnabled, "/gitaly.RepositoryService/RemoveRepository": transactionsEnabled, "/gitaly.RepositoryService/ReplicateRepository": transactionsEnabled, - "/gitaly.RepositoryService/SetConfig": transactionsEnabled, "/gitaly.RepositoryService/SetFullPath": transactionsEnabled, "/gitaly.RepositoryService/WriteRef": transactionsEnabled, "/gitaly.SSHService/SSHReceivePack": transactionsEnabled, diff --git a/internal/praefect/protoregistry/protoregistry_test.go b/internal/praefect/protoregistry/protoregistry_test.go index c70bef342..812c2af33 100644 --- a/internal/praefect/protoregistry/protoregistry_test.go +++ b/internal/praefect/protoregistry/protoregistry_test.go @@ -125,8 +125,6 @@ func TestNewProtoRegistry(t *testing.T) { "CreateRepositoryFromURL": protoregistry.OpMutator, "CreateBundle": protoregistry.OpAccessor, "CreateRepositoryFromBundle": protoregistry.OpMutator, - "SetConfig": protoregistry.OpMutator, - "DeleteConfig": protoregistry.OpMutator, "FindLicense": protoregistry.OpAccessor, "GetInfoAttributes": protoregistry.OpAccessor, "CalculateChecksum": protoregistry.OpAccessor, diff --git a/proto/go/gitalypb/repository-service.pb.go b/proto/go/gitalypb/repository-service.pb.go index 973206e16..f53c2447e 100644 --- a/proto/go/gitalypb/repository-service.pb.go +++ b/proto/go/gitalypb/repository-service.pb.go @@ -176,7 +176,7 @@ func (x GetRawChangesResponse_RawChange_Operation) Number() protoreflect.EnumNum // Deprecated: Use GetRawChangesResponse_RawChange_Operation.Descriptor instead. func (GetRawChangesResponse_RawChange_Operation) EnumDescriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{67, 0, 0} + return file_repository_service_proto_rawDescGZIP(), []int{63, 0, 0} } type RepositoryExistsRequest struct { @@ -2546,192 +2546,6 @@ func (x *GetConfigResponse) GetData() []byte { return nil } -type SetConfigRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"` - Entries []*SetConfigRequest_Entry `protobuf:"bytes,2,rep,name=entries,proto3" json:"entries,omitempty"` -} - -func (x *SetConfigRequest) Reset() { - *x = SetConfigRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[46] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConfigRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConfigRequest) ProtoMessage() {} - -func (x *SetConfigRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[46] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SetConfigRequest.ProtoReflect.Descriptor instead. -func (*SetConfigRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{46} -} - -func (x *SetConfigRequest) GetRepository() *Repository { - if x != nil { - return x.Repository - } - return nil -} - -func (x *SetConfigRequest) GetEntries() []*SetConfigRequest_Entry { - if x != nil { - return x.Entries - } - return nil -} - -type SetConfigResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetConfigResponse) Reset() { - *x = SetConfigResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[47] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConfigResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConfigResponse) ProtoMessage() {} - -func (x *SetConfigResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[47] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SetConfigResponse.ProtoReflect.Descriptor instead. -func (*SetConfigResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{47} -} - -type DeleteConfigRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"` - Keys []string `protobuf:"bytes,2,rep,name=keys,proto3" json:"keys,omitempty"` -} - -func (x *DeleteConfigRequest) Reset() { - *x = DeleteConfigRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[48] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteConfigRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteConfigRequest) ProtoMessage() {} - -func (x *DeleteConfigRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[48] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteConfigRequest.ProtoReflect.Descriptor instead. -func (*DeleteConfigRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{48} -} - -func (x *DeleteConfigRequest) GetRepository() *Repository { - if x != nil { - return x.Repository - } - return nil -} - -func (x *DeleteConfigRequest) GetKeys() []string { - if x != nil { - return x.Keys - } - return nil -} - -type DeleteConfigResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DeleteConfigResponse) Reset() { - *x = DeleteConfigResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[49] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteConfigResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteConfigResponse) ProtoMessage() {} - -func (x *DeleteConfigResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[49] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteConfigResponse.ProtoReflect.Descriptor instead. -func (*DeleteConfigResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{49} -} - type RestoreCustomHooksRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2744,7 +2558,7 @@ type RestoreCustomHooksRequest struct { func (x *RestoreCustomHooksRequest) Reset() { *x = RestoreCustomHooksRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[50] + mi := &file_repository_service_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2757,7 +2571,7 @@ func (x *RestoreCustomHooksRequest) String() string { func (*RestoreCustomHooksRequest) ProtoMessage() {} func (x *RestoreCustomHooksRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[50] + mi := &file_repository_service_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2770,7 +2584,7 @@ func (x *RestoreCustomHooksRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RestoreCustomHooksRequest.ProtoReflect.Descriptor instead. func (*RestoreCustomHooksRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{50} + return file_repository_service_proto_rawDescGZIP(), []int{46} } func (x *RestoreCustomHooksRequest) GetRepository() *Repository { @@ -2796,7 +2610,7 @@ type RestoreCustomHooksResponse struct { func (x *RestoreCustomHooksResponse) Reset() { *x = RestoreCustomHooksResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[51] + mi := &file_repository_service_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2809,7 +2623,7 @@ func (x *RestoreCustomHooksResponse) String() string { func (*RestoreCustomHooksResponse) ProtoMessage() {} func (x *RestoreCustomHooksResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[51] + mi := &file_repository_service_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2822,7 +2636,7 @@ func (x *RestoreCustomHooksResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RestoreCustomHooksResponse.ProtoReflect.Descriptor instead. func (*RestoreCustomHooksResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{51} + return file_repository_service_proto_rawDescGZIP(), []int{47} } type BackupCustomHooksRequest struct { @@ -2836,7 +2650,7 @@ type BackupCustomHooksRequest struct { func (x *BackupCustomHooksRequest) Reset() { *x = BackupCustomHooksRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[52] + mi := &file_repository_service_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2849,7 +2663,7 @@ func (x *BackupCustomHooksRequest) String() string { func (*BackupCustomHooksRequest) ProtoMessage() {} func (x *BackupCustomHooksRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[52] + mi := &file_repository_service_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2862,7 +2676,7 @@ func (x *BackupCustomHooksRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use BackupCustomHooksRequest.ProtoReflect.Descriptor instead. func (*BackupCustomHooksRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{52} + return file_repository_service_proto_rawDescGZIP(), []int{48} } func (x *BackupCustomHooksRequest) GetRepository() *Repository { @@ -2883,7 +2697,7 @@ type BackupCustomHooksResponse struct { func (x *BackupCustomHooksResponse) Reset() { *x = BackupCustomHooksResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[53] + mi := &file_repository_service_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2896,7 +2710,7 @@ func (x *BackupCustomHooksResponse) String() string { func (*BackupCustomHooksResponse) ProtoMessage() {} func (x *BackupCustomHooksResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[53] + mi := &file_repository_service_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2909,7 +2723,7 @@ func (x *BackupCustomHooksResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use BackupCustomHooksResponse.ProtoReflect.Descriptor instead. func (*BackupCustomHooksResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{53} + return file_repository_service_proto_rawDescGZIP(), []int{49} } func (x *BackupCustomHooksResponse) GetData() []byte { @@ -2932,7 +2746,7 @@ type CreateRepositoryFromBundleRequest struct { func (x *CreateRepositoryFromBundleRequest) Reset() { *x = CreateRepositoryFromBundleRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[54] + mi := &file_repository_service_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2945,7 +2759,7 @@ func (x *CreateRepositoryFromBundleRequest) String() string { func (*CreateRepositoryFromBundleRequest) ProtoMessage() {} func (x *CreateRepositoryFromBundleRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[54] + mi := &file_repository_service_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2958,7 +2772,7 @@ func (x *CreateRepositoryFromBundleRequest) ProtoReflect() protoreflect.Message // Deprecated: Use CreateRepositoryFromBundleRequest.ProtoReflect.Descriptor instead. func (*CreateRepositoryFromBundleRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{54} + return file_repository_service_proto_rawDescGZIP(), []int{50} } func (x *CreateRepositoryFromBundleRequest) GetRepository() *Repository { @@ -2984,7 +2798,7 @@ type CreateRepositoryFromBundleResponse struct { func (x *CreateRepositoryFromBundleResponse) Reset() { *x = CreateRepositoryFromBundleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[55] + mi := &file_repository_service_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2997,7 +2811,7 @@ func (x *CreateRepositoryFromBundleResponse) String() string { func (*CreateRepositoryFromBundleResponse) ProtoMessage() {} func (x *CreateRepositoryFromBundleResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[55] + mi := &file_repository_service_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3010,7 +2824,7 @@ func (x *CreateRepositoryFromBundleResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CreateRepositoryFromBundleResponse.ProtoReflect.Descriptor instead. func (*CreateRepositoryFromBundleResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{55} + return file_repository_service_proto_rawDescGZIP(), []int{51} } type FindLicenseRequest struct { @@ -3024,7 +2838,7 @@ type FindLicenseRequest struct { func (x *FindLicenseRequest) Reset() { *x = FindLicenseRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[56] + mi := &file_repository_service_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3037,7 +2851,7 @@ func (x *FindLicenseRequest) String() string { func (*FindLicenseRequest) ProtoMessage() {} func (x *FindLicenseRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[56] + mi := &file_repository_service_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3050,7 +2864,7 @@ func (x *FindLicenseRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use FindLicenseRequest.ProtoReflect.Descriptor instead. func (*FindLicenseRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{56} + return file_repository_service_proto_rawDescGZIP(), []int{52} } func (x *FindLicenseRequest) GetRepository() *Repository { @@ -3071,7 +2885,7 @@ type FindLicenseResponse struct { func (x *FindLicenseResponse) Reset() { *x = FindLicenseResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[57] + mi := &file_repository_service_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3084,7 +2898,7 @@ func (x *FindLicenseResponse) String() string { func (*FindLicenseResponse) ProtoMessage() {} func (x *FindLicenseResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[57] + mi := &file_repository_service_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3097,7 +2911,7 @@ func (x *FindLicenseResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use FindLicenseResponse.ProtoReflect.Descriptor instead. func (*FindLicenseResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{57} + return file_repository_service_proto_rawDescGZIP(), []int{53} } func (x *FindLicenseResponse) GetLicenseShortName() string { @@ -3118,7 +2932,7 @@ type GetInfoAttributesRequest struct { func (x *GetInfoAttributesRequest) Reset() { *x = GetInfoAttributesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[58] + mi := &file_repository_service_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3131,7 +2945,7 @@ func (x *GetInfoAttributesRequest) String() string { func (*GetInfoAttributesRequest) ProtoMessage() {} func (x *GetInfoAttributesRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[58] + mi := &file_repository_service_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3144,7 +2958,7 @@ func (x *GetInfoAttributesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetInfoAttributesRequest.ProtoReflect.Descriptor instead. func (*GetInfoAttributesRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{58} + return file_repository_service_proto_rawDescGZIP(), []int{54} } func (x *GetInfoAttributesRequest) GetRepository() *Repository { @@ -3165,7 +2979,7 @@ type GetInfoAttributesResponse struct { func (x *GetInfoAttributesResponse) Reset() { *x = GetInfoAttributesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[59] + mi := &file_repository_service_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3178,7 +2992,7 @@ func (x *GetInfoAttributesResponse) String() string { func (*GetInfoAttributesResponse) ProtoMessage() {} func (x *GetInfoAttributesResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[59] + mi := &file_repository_service_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3191,7 +3005,7 @@ func (x *GetInfoAttributesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetInfoAttributesResponse.ProtoReflect.Descriptor instead. func (*GetInfoAttributesResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{59} + return file_repository_service_proto_rawDescGZIP(), []int{55} } func (x *GetInfoAttributesResponse) GetAttributes() []byte { @@ -3212,7 +3026,7 @@ type CalculateChecksumRequest struct { func (x *CalculateChecksumRequest) Reset() { *x = CalculateChecksumRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[60] + mi := &file_repository_service_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3225,7 +3039,7 @@ func (x *CalculateChecksumRequest) String() string { func (*CalculateChecksumRequest) ProtoMessage() {} func (x *CalculateChecksumRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[60] + mi := &file_repository_service_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3238,7 +3052,7 @@ func (x *CalculateChecksumRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CalculateChecksumRequest.ProtoReflect.Descriptor instead. func (*CalculateChecksumRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{60} + return file_repository_service_proto_rawDescGZIP(), []int{56} } func (x *CalculateChecksumRequest) GetRepository() *Repository { @@ -3259,7 +3073,7 @@ type CalculateChecksumResponse struct { func (x *CalculateChecksumResponse) Reset() { *x = CalculateChecksumResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[61] + mi := &file_repository_service_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3272,7 +3086,7 @@ func (x *CalculateChecksumResponse) String() string { func (*CalculateChecksumResponse) ProtoMessage() {} func (x *CalculateChecksumResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[61] + mi := &file_repository_service_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3285,7 +3099,7 @@ func (x *CalculateChecksumResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CalculateChecksumResponse.ProtoReflect.Descriptor instead. func (*CalculateChecksumResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{61} + return file_repository_service_proto_rawDescGZIP(), []int{57} } func (x *CalculateChecksumResponse) GetChecksum() string { @@ -3306,7 +3120,7 @@ type GetSnapshotRequest struct { func (x *GetSnapshotRequest) Reset() { *x = GetSnapshotRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[62] + mi := &file_repository_service_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3319,7 +3133,7 @@ func (x *GetSnapshotRequest) String() string { func (*GetSnapshotRequest) ProtoMessage() {} func (x *GetSnapshotRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[62] + mi := &file_repository_service_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3332,7 +3146,7 @@ func (x *GetSnapshotRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetSnapshotRequest.ProtoReflect.Descriptor instead. func (*GetSnapshotRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{62} + return file_repository_service_proto_rawDescGZIP(), []int{58} } func (x *GetSnapshotRequest) GetRepository() *Repository { @@ -3353,7 +3167,7 @@ type GetSnapshotResponse struct { func (x *GetSnapshotResponse) Reset() { *x = GetSnapshotResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[63] + mi := &file_repository_service_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3366,7 +3180,7 @@ func (x *GetSnapshotResponse) String() string { func (*GetSnapshotResponse) ProtoMessage() {} func (x *GetSnapshotResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[63] + mi := &file_repository_service_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3379,7 +3193,7 @@ func (x *GetSnapshotResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetSnapshotResponse.ProtoReflect.Descriptor instead. func (*GetSnapshotResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{63} + return file_repository_service_proto_rawDescGZIP(), []int{59} } func (x *GetSnapshotResponse) GetData() []byte { @@ -3402,7 +3216,7 @@ type CreateRepositoryFromSnapshotRequest struct { func (x *CreateRepositoryFromSnapshotRequest) Reset() { *x = CreateRepositoryFromSnapshotRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[64] + mi := &file_repository_service_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3415,7 +3229,7 @@ func (x *CreateRepositoryFromSnapshotRequest) String() string { func (*CreateRepositoryFromSnapshotRequest) ProtoMessage() {} func (x *CreateRepositoryFromSnapshotRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[64] + mi := &file_repository_service_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3428,7 +3242,7 @@ func (x *CreateRepositoryFromSnapshotRequest) ProtoReflect() protoreflect.Messag // Deprecated: Use CreateRepositoryFromSnapshotRequest.ProtoReflect.Descriptor instead. func (*CreateRepositoryFromSnapshotRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{64} + return file_repository_service_proto_rawDescGZIP(), []int{60} } func (x *CreateRepositoryFromSnapshotRequest) GetRepository() *Repository { @@ -3461,7 +3275,7 @@ type CreateRepositoryFromSnapshotResponse struct { func (x *CreateRepositoryFromSnapshotResponse) Reset() { *x = CreateRepositoryFromSnapshotResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[65] + mi := &file_repository_service_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3474,7 +3288,7 @@ func (x *CreateRepositoryFromSnapshotResponse) String() string { func (*CreateRepositoryFromSnapshotResponse) ProtoMessage() {} func (x *CreateRepositoryFromSnapshotResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[65] + mi := &file_repository_service_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3487,7 +3301,7 @@ func (x *CreateRepositoryFromSnapshotResponse) ProtoReflect() protoreflect.Messa // Deprecated: Use CreateRepositoryFromSnapshotResponse.ProtoReflect.Descriptor instead. func (*CreateRepositoryFromSnapshotResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{65} + return file_repository_service_proto_rawDescGZIP(), []int{61} } type GetRawChangesRequest struct { @@ -3503,7 +3317,7 @@ type GetRawChangesRequest struct { func (x *GetRawChangesRequest) Reset() { *x = GetRawChangesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[66] + mi := &file_repository_service_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3516,7 +3330,7 @@ func (x *GetRawChangesRequest) String() string { func (*GetRawChangesRequest) ProtoMessage() {} func (x *GetRawChangesRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[66] + mi := &file_repository_service_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3529,7 +3343,7 @@ func (x *GetRawChangesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRawChangesRequest.ProtoReflect.Descriptor instead. func (*GetRawChangesRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{66} + return file_repository_service_proto_rawDescGZIP(), []int{62} } func (x *GetRawChangesRequest) GetRepository() *Repository { @@ -3564,7 +3378,7 @@ type GetRawChangesResponse struct { func (x *GetRawChangesResponse) Reset() { *x = GetRawChangesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[67] + mi := &file_repository_service_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3577,7 +3391,7 @@ func (x *GetRawChangesResponse) String() string { func (*GetRawChangesResponse) ProtoMessage() {} func (x *GetRawChangesResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[67] + mi := &file_repository_service_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3590,7 +3404,7 @@ func (x *GetRawChangesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRawChangesResponse.ProtoReflect.Descriptor instead. func (*GetRawChangesResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{67} + return file_repository_service_proto_rawDescGZIP(), []int{63} } func (x *GetRawChangesResponse) GetRawChanges() []*GetRawChangesResponse_RawChange { @@ -3619,7 +3433,7 @@ type SearchFilesByNameRequest struct { func (x *SearchFilesByNameRequest) Reset() { *x = SearchFilesByNameRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[68] + mi := &file_repository_service_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3632,7 +3446,7 @@ func (x *SearchFilesByNameRequest) String() string { func (*SearchFilesByNameRequest) ProtoMessage() {} func (x *SearchFilesByNameRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[68] + mi := &file_repository_service_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3645,7 +3459,7 @@ func (x *SearchFilesByNameRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SearchFilesByNameRequest.ProtoReflect.Descriptor instead. func (*SearchFilesByNameRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{68} + return file_repository_service_proto_rawDescGZIP(), []int{64} } func (x *SearchFilesByNameRequest) GetRepository() *Repository { @@ -3687,7 +3501,7 @@ type SearchFilesByNameResponse struct { func (x *SearchFilesByNameResponse) Reset() { *x = SearchFilesByNameResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[69] + mi := &file_repository_service_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3700,7 +3514,7 @@ func (x *SearchFilesByNameResponse) String() string { func (*SearchFilesByNameResponse) ProtoMessage() {} func (x *SearchFilesByNameResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[69] + mi := &file_repository_service_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3713,7 +3527,7 @@ func (x *SearchFilesByNameResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SearchFilesByNameResponse.ProtoReflect.Descriptor instead. func (*SearchFilesByNameResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{69} + return file_repository_service_proto_rawDescGZIP(), []int{65} } func (x *SearchFilesByNameResponse) GetFiles() [][]byte { @@ -3737,7 +3551,7 @@ type SearchFilesByContentRequest struct { func (x *SearchFilesByContentRequest) Reset() { *x = SearchFilesByContentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[70] + mi := &file_repository_service_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3750,7 +3564,7 @@ func (x *SearchFilesByContentRequest) String() string { func (*SearchFilesByContentRequest) ProtoMessage() {} func (x *SearchFilesByContentRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[70] + mi := &file_repository_service_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3763,7 +3577,7 @@ func (x *SearchFilesByContentRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SearchFilesByContentRequest.ProtoReflect.Descriptor instead. func (*SearchFilesByContentRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{70} + return file_repository_service_proto_rawDescGZIP(), []int{66} } func (x *SearchFilesByContentRequest) GetRepository() *Repository { @@ -3807,7 +3621,7 @@ type SearchFilesByContentResponse struct { func (x *SearchFilesByContentResponse) Reset() { *x = SearchFilesByContentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[71] + mi := &file_repository_service_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3820,7 +3634,7 @@ func (x *SearchFilesByContentResponse) String() string { func (*SearchFilesByContentResponse) ProtoMessage() {} func (x *SearchFilesByContentResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[71] + mi := &file_repository_service_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3833,7 +3647,7 @@ func (x *SearchFilesByContentResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SearchFilesByContentResponse.ProtoReflect.Descriptor instead. func (*SearchFilesByContentResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{71} + return file_repository_service_proto_rawDescGZIP(), []int{67} } func (x *SearchFilesByContentResponse) GetMatches() [][]byte { @@ -3885,7 +3699,7 @@ type Remote struct { func (x *Remote) Reset() { *x = Remote{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[72] + mi := &file_repository_service_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3898,7 +3712,7 @@ func (x *Remote) String() string { func (*Remote) ProtoMessage() {} func (x *Remote) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[72] + mi := &file_repository_service_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3911,7 +3725,7 @@ func (x *Remote) ProtoReflect() protoreflect.Message { // Deprecated: Use Remote.ProtoReflect.Descriptor instead. func (*Remote) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{72} + return file_repository_service_proto_rawDescGZIP(), []int{68} } func (x *Remote) GetUrl() string { @@ -3946,7 +3760,7 @@ type GetObjectDirectorySizeRequest struct { func (x *GetObjectDirectorySizeRequest) Reset() { *x = GetObjectDirectorySizeRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[73] + mi := &file_repository_service_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3959,7 +3773,7 @@ func (x *GetObjectDirectorySizeRequest) String() string { func (*GetObjectDirectorySizeRequest) ProtoMessage() {} func (x *GetObjectDirectorySizeRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[73] + mi := &file_repository_service_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3972,7 +3786,7 @@ func (x *GetObjectDirectorySizeRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetObjectDirectorySizeRequest.ProtoReflect.Descriptor instead. func (*GetObjectDirectorySizeRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{73} + return file_repository_service_proto_rawDescGZIP(), []int{69} } func (x *GetObjectDirectorySizeRequest) GetRepository() *Repository { @@ -3994,7 +3808,7 @@ type GetObjectDirectorySizeResponse struct { func (x *GetObjectDirectorySizeResponse) Reset() { *x = GetObjectDirectorySizeResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[74] + mi := &file_repository_service_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4007,7 +3821,7 @@ func (x *GetObjectDirectorySizeResponse) String() string { func (*GetObjectDirectorySizeResponse) ProtoMessage() {} func (x *GetObjectDirectorySizeResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[74] + mi := &file_repository_service_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4020,7 +3834,7 @@ func (x *GetObjectDirectorySizeResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetObjectDirectorySizeResponse.ProtoReflect.Descriptor instead. func (*GetObjectDirectorySizeResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{74} + return file_repository_service_proto_rawDescGZIP(), []int{70} } func (x *GetObjectDirectorySizeResponse) GetSize() int64 { @@ -4043,7 +3857,7 @@ type CloneFromPoolRequest struct { func (x *CloneFromPoolRequest) Reset() { *x = CloneFromPoolRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[75] + mi := &file_repository_service_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4056,7 +3870,7 @@ func (x *CloneFromPoolRequest) String() string { func (*CloneFromPoolRequest) ProtoMessage() {} func (x *CloneFromPoolRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[75] + mi := &file_repository_service_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4069,7 +3883,7 @@ func (x *CloneFromPoolRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CloneFromPoolRequest.ProtoReflect.Descriptor instead. func (*CloneFromPoolRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{75} + return file_repository_service_proto_rawDescGZIP(), []int{71} } func (x *CloneFromPoolRequest) GetRepository() *Repository { @@ -4102,7 +3916,7 @@ type CloneFromPoolResponse struct { func (x *CloneFromPoolResponse) Reset() { *x = CloneFromPoolResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[76] + mi := &file_repository_service_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4115,7 +3929,7 @@ func (x *CloneFromPoolResponse) String() string { func (*CloneFromPoolResponse) ProtoMessage() {} func (x *CloneFromPoolResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[76] + mi := &file_repository_service_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4128,7 +3942,7 @@ func (x *CloneFromPoolResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CloneFromPoolResponse.ProtoReflect.Descriptor instead. func (*CloneFromPoolResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{76} + return file_repository_service_proto_rawDescGZIP(), []int{72} } type CloneFromPoolInternalRequest struct { @@ -4144,7 +3958,7 @@ type CloneFromPoolInternalRequest struct { func (x *CloneFromPoolInternalRequest) Reset() { *x = CloneFromPoolInternalRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[77] + mi := &file_repository_service_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4157,7 +3971,7 @@ func (x *CloneFromPoolInternalRequest) String() string { func (*CloneFromPoolInternalRequest) ProtoMessage() {} func (x *CloneFromPoolInternalRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[77] + mi := &file_repository_service_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4170,7 +3984,7 @@ func (x *CloneFromPoolInternalRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CloneFromPoolInternalRequest.ProtoReflect.Descriptor instead. func (*CloneFromPoolInternalRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{77} + return file_repository_service_proto_rawDescGZIP(), []int{73} } func (x *CloneFromPoolInternalRequest) GetRepository() *Repository { @@ -4203,7 +4017,7 @@ type CloneFromPoolInternalResponse struct { func (x *CloneFromPoolInternalResponse) Reset() { *x = CloneFromPoolInternalResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[78] + mi := &file_repository_service_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4216,7 +4030,7 @@ func (x *CloneFromPoolInternalResponse) String() string { func (*CloneFromPoolInternalResponse) ProtoMessage() {} func (x *CloneFromPoolInternalResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[78] + mi := &file_repository_service_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4229,7 +4043,7 @@ func (x *CloneFromPoolInternalResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CloneFromPoolInternalResponse.ProtoReflect.Descriptor instead. func (*CloneFromPoolInternalResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{78} + return file_repository_service_proto_rawDescGZIP(), []int{74} } type RemoveRepositoryRequest struct { @@ -4243,7 +4057,7 @@ type RemoveRepositoryRequest struct { func (x *RemoveRepositoryRequest) Reset() { *x = RemoveRepositoryRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[79] + mi := &file_repository_service_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4256,7 +4070,7 @@ func (x *RemoveRepositoryRequest) String() string { func (*RemoveRepositoryRequest) ProtoMessage() {} func (x *RemoveRepositoryRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[79] + mi := &file_repository_service_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4269,7 +4083,7 @@ func (x *RemoveRepositoryRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RemoveRepositoryRequest.ProtoReflect.Descriptor instead. func (*RemoveRepositoryRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{79} + return file_repository_service_proto_rawDescGZIP(), []int{75} } func (x *RemoveRepositoryRequest) GetRepository() *Repository { @@ -4288,7 +4102,7 @@ type RemoveRepositoryResponse struct { func (x *RemoveRepositoryResponse) Reset() { *x = RemoveRepositoryResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[80] + mi := &file_repository_service_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4301,7 +4115,7 @@ func (x *RemoveRepositoryResponse) String() string { func (*RemoveRepositoryResponse) ProtoMessage() {} func (x *RemoveRepositoryResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[80] + mi := &file_repository_service_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4314,7 +4128,7 @@ func (x *RemoveRepositoryResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RemoveRepositoryResponse.ProtoReflect.Descriptor instead. func (*RemoveRepositoryResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{80} + return file_repository_service_proto_rawDescGZIP(), []int{76} } type RenameRepositoryRequest struct { @@ -4329,7 +4143,7 @@ type RenameRepositoryRequest struct { func (x *RenameRepositoryRequest) Reset() { *x = RenameRepositoryRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[81] + mi := &file_repository_service_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4342,7 +4156,7 @@ func (x *RenameRepositoryRequest) String() string { func (*RenameRepositoryRequest) ProtoMessage() {} func (x *RenameRepositoryRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[81] + mi := &file_repository_service_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4355,7 +4169,7 @@ func (x *RenameRepositoryRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RenameRepositoryRequest.ProtoReflect.Descriptor instead. func (*RenameRepositoryRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{81} + return file_repository_service_proto_rawDescGZIP(), []int{77} } func (x *RenameRepositoryRequest) GetRepository() *Repository { @@ -4381,7 +4195,7 @@ type RenameRepositoryResponse struct { func (x *RenameRepositoryResponse) Reset() { *x = RenameRepositoryResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[82] + mi := &file_repository_service_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4394,7 +4208,7 @@ func (x *RenameRepositoryResponse) String() string { func (*RenameRepositoryResponse) ProtoMessage() {} func (x *RenameRepositoryResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[82] + mi := &file_repository_service_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4407,7 +4221,7 @@ func (x *RenameRepositoryResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RenameRepositoryResponse.ProtoReflect.Descriptor instead. func (*RenameRepositoryResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{82} + return file_repository_service_proto_rawDescGZIP(), []int{78} } type ReplicateRepositoryRequest struct { @@ -4422,7 +4236,7 @@ type ReplicateRepositoryRequest struct { func (x *ReplicateRepositoryRequest) Reset() { *x = ReplicateRepositoryRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[83] + mi := &file_repository_service_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4435,7 +4249,7 @@ func (x *ReplicateRepositoryRequest) String() string { func (*ReplicateRepositoryRequest) ProtoMessage() {} func (x *ReplicateRepositoryRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[83] + mi := &file_repository_service_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4448,7 +4262,7 @@ func (x *ReplicateRepositoryRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ReplicateRepositoryRequest.ProtoReflect.Descriptor instead. func (*ReplicateRepositoryRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{83} + return file_repository_service_proto_rawDescGZIP(), []int{79} } func (x *ReplicateRepositoryRequest) GetRepository() *Repository { @@ -4474,7 +4288,7 @@ type ReplicateRepositoryResponse struct { func (x *ReplicateRepositoryResponse) Reset() { *x = ReplicateRepositoryResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[84] + mi := &file_repository_service_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4487,7 +4301,7 @@ func (x *ReplicateRepositoryResponse) String() string { func (*ReplicateRepositoryResponse) ProtoMessage() {} func (x *ReplicateRepositoryResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[84] + mi := &file_repository_service_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4500,7 +4314,7 @@ func (x *ReplicateRepositoryResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ReplicateRepositoryResponse.ProtoReflect.Descriptor instead. func (*ReplicateRepositoryResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{84} + return file_repository_service_proto_rawDescGZIP(), []int{80} } type OptimizeRepositoryRequest struct { @@ -4514,7 +4328,7 @@ type OptimizeRepositoryRequest struct { func (x *OptimizeRepositoryRequest) Reset() { *x = OptimizeRepositoryRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[85] + mi := &file_repository_service_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4527,7 +4341,7 @@ func (x *OptimizeRepositoryRequest) String() string { func (*OptimizeRepositoryRequest) ProtoMessage() {} func (x *OptimizeRepositoryRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[85] + mi := &file_repository_service_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4540,7 +4354,7 @@ func (x *OptimizeRepositoryRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use OptimizeRepositoryRequest.ProtoReflect.Descriptor instead. func (*OptimizeRepositoryRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{85} + return file_repository_service_proto_rawDescGZIP(), []int{81} } func (x *OptimizeRepositoryRequest) GetRepository() *Repository { @@ -4559,7 +4373,7 @@ type OptimizeRepositoryResponse struct { func (x *OptimizeRepositoryResponse) Reset() { *x = OptimizeRepositoryResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[86] + mi := &file_repository_service_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4572,7 +4386,7 @@ func (x *OptimizeRepositoryResponse) String() string { func (*OptimizeRepositoryResponse) ProtoMessage() {} func (x *OptimizeRepositoryResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[86] + mi := &file_repository_service_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4585,7 +4399,7 @@ func (x *OptimizeRepositoryResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use OptimizeRepositoryResponse.ProtoReflect.Descriptor instead. func (*OptimizeRepositoryResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{86} + return file_repository_service_proto_rawDescGZIP(), []int{82} } // SetFullPathRequest is a request for the SetFullPath RPC. @@ -4603,7 +4417,7 @@ type SetFullPathRequest struct { func (x *SetFullPathRequest) Reset() { *x = SetFullPathRequest{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[87] + mi := &file_repository_service_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4616,7 +4430,7 @@ func (x *SetFullPathRequest) String() string { func (*SetFullPathRequest) ProtoMessage() {} func (x *SetFullPathRequest) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[87] + mi := &file_repository_service_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4629,7 +4443,7 @@ func (x *SetFullPathRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SetFullPathRequest.ProtoReflect.Descriptor instead. func (*SetFullPathRequest) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{87} + return file_repository_service_proto_rawDescGZIP(), []int{83} } func (x *SetFullPathRequest) GetRepository() *Repository { @@ -4656,7 +4470,7 @@ type SetFullPathResponse struct { func (x *SetFullPathResponse) Reset() { *x = SetFullPathResponse{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[88] + mi := &file_repository_service_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4669,7 +4483,7 @@ func (x *SetFullPathResponse) String() string { func (*SetFullPathResponse) ProtoMessage() {} func (x *SetFullPathResponse) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[88] + mi := &file_repository_service_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4682,111 +4496,9 @@ func (x *SetFullPathResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SetFullPathResponse.ProtoReflect.Descriptor instead. func (*SetFullPathResponse) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{88} -} - -type SetConfigRequest_Entry struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` - // Types that are assignable to Value: - // *SetConfigRequest_Entry_ValueStr - // *SetConfigRequest_Entry_ValueInt32 - // *SetConfigRequest_Entry_ValueBool - Value isSetConfigRequest_Entry_Value `protobuf_oneof:"value"` -} - -func (x *SetConfigRequest_Entry) Reset() { - *x = SetConfigRequest_Entry{} - if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[89] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConfigRequest_Entry) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConfigRequest_Entry) ProtoMessage() {} - -func (x *SetConfigRequest_Entry) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[89] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SetConfigRequest_Entry.ProtoReflect.Descriptor instead. -func (*SetConfigRequest_Entry) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{46, 0} -} - -func (x *SetConfigRequest_Entry) GetKey() string { - if x != nil { - return x.Key - } - return "" -} - -func (m *SetConfigRequest_Entry) GetValue() isSetConfigRequest_Entry_Value { - if m != nil { - return m.Value - } - return nil -} - -func (x *SetConfigRequest_Entry) GetValueStr() string { - if x, ok := x.GetValue().(*SetConfigRequest_Entry_ValueStr); ok { - return x.ValueStr - } - return "" -} - -func (x *SetConfigRequest_Entry) GetValueInt32() int32 { - if x, ok := x.GetValue().(*SetConfigRequest_Entry_ValueInt32); ok { - return x.ValueInt32 - } - return 0 -} - -func (x *SetConfigRequest_Entry) GetValueBool() bool { - if x, ok := x.GetValue().(*SetConfigRequest_Entry_ValueBool); ok { - return x.ValueBool - } - return false -} - -type isSetConfigRequest_Entry_Value interface { - isSetConfigRequest_Entry_Value() -} - -type SetConfigRequest_Entry_ValueStr struct { - ValueStr string `protobuf:"bytes,2,opt,name=value_str,json=valueStr,proto3,oneof"` -} - -type SetConfigRequest_Entry_ValueInt32 struct { - ValueInt32 int32 `protobuf:"varint,3,opt,name=value_int32,json=valueInt32,proto3,oneof"` -} - -type SetConfigRequest_Entry_ValueBool struct { - ValueBool bool `protobuf:"varint,4,opt,name=value_bool,json=valueBool,proto3,oneof"` + return file_repository_service_proto_rawDescGZIP(), []int{84} } -func (*SetConfigRequest_Entry_ValueStr) isSetConfigRequest_Entry_Value() {} - -func (*SetConfigRequest_Entry_ValueInt32) isSetConfigRequest_Entry_Value() {} - -func (*SetConfigRequest_Entry_ValueBool) isSetConfigRequest_Entry_Value() {} - type GetRawChangesResponse_RawChange struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4812,7 +4524,7 @@ type GetRawChangesResponse_RawChange struct { func (x *GetRawChangesResponse_RawChange) Reset() { *x = GetRawChangesResponse_RawChange{} if protoimpl.UnsafeEnabled { - mi := &file_repository_service_proto_msgTypes[90] + mi := &file_repository_service_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4825,7 +4537,7 @@ func (x *GetRawChangesResponse_RawChange) String() string { func (*GetRawChangesResponse_RawChange) ProtoMessage() {} func (x *GetRawChangesResponse_RawChange) ProtoReflect() protoreflect.Message { - mi := &file_repository_service_proto_msgTypes[90] + mi := &file_repository_service_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4838,7 +4550,7 @@ func (x *GetRawChangesResponse_RawChange) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRawChangesResponse_RawChange.ProtoReflect.Descriptor instead. func (*GetRawChangesResponse_RawChange) Descriptor() ([]byte, []int) { - return file_repository_service_proto_rawDescGZIP(), []int{67, 0} + return file_repository_service_proto_rawDescGZIP(), []int{63, 0} } func (x *GetRawChangesResponse_RawChange) GetBlobId() string { @@ -5169,531 +4881,494 @@ var file_repository_service_proto_rawDesc = []byte{ 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x27, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x8e, 0x02, 0x0a, 0x10, 0x53, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x38, 0x0a, 0x07, 0x65, 0x6e, 0x74, - 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x69, 0x74, - 0x61, 0x6c, 0x79, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x2e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, - 0x69, 0x65, 0x73, 0x1a, 0x85, 0x01, 0x0a, 0x05, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, - 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, - 0x1d, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x21, - 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x33, - 0x32, 0x12, 0x1f, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, - 0x6f, 0x6c, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x13, 0x0a, 0x11, 0x53, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x63, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x69, 0x0a, 0x19, 0x52, 0x65, + 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, - 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x04, 0x6b, 0x65, 0x79, 0x73, 0x22, 0x16, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x69, 0x0a, - 0x19, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, - 0x6f, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, - 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, - 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x1c, 0x0a, 0x1a, 0x52, 0x65, 0x73, 0x74, - 0x6f, 0x72, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x54, 0x0a, 0x18, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, - 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, - 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x2f, 0x0a, 0x19, - 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x71, 0x0a, - 0x21, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, - 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, - 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, - 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x22, 0x24, 0x0a, 0x22, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4e, 0x0a, 0x12, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x69, - 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, - 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x43, 0x0a, 0x13, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x69, - 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, - 0x12, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6c, 0x69, 0x63, 0x65, 0x6e, - 0x73, 0x65, 0x53, 0x68, 0x6f, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x54, 0x0a, 0x18, 0x47, - 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x79, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x1c, 0x0a, 0x1a, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x54, 0x0a, 0x18, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x2f, 0x0a, 0x19, 0x42, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x71, 0x0a, 0x21, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, + 0x6f, 0x6d, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x24, 0x0a, + 0x22, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, + 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x4e, 0x0a, 0x12, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, + 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, + 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, + 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x6f, 0x72, 0x79, 0x22, 0x43, 0x0a, 0x13, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, + 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x6c, 0x69, + 0x63, 0x65, 0x6e, 0x73, 0x65, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x53, + 0x68, 0x6f, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x54, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x49, + 0x6e, 0x66, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, + 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, + 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, + 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x3b, + 0x0a, 0x19, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x22, 0x54, 0x0a, 0x18, 0x43, + 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, - 0x79, 0x22, 0x3b, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x41, 0x74, 0x74, 0x72, - 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, - 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x22, 0x54, - 0x0a, 0x18, 0x43, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, - 0x73, 0x75, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, - 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, - 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x6f, 0x72, 0x79, 0x22, 0x37, 0x0a, 0x19, 0x43, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, - 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x22, 0x4e, 0x0a, - 0x12, 0x47, 0x65, 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, - 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, - 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x29, 0x0a, - 0x13, 0x47, 0x65, 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x97, 0x01, 0x0a, 0x23, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, - 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x79, 0x22, 0x37, 0x0a, 0x19, 0x43, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x22, 0x4e, 0x0a, 0x12, 0x47, 0x65, + 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, - 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x74, - 0x74, 0x70, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x74, - 0x74, 0x70, 0x55, 0x72, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x61, 0x75, - 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x74, 0x74, 0x70, 0x41, 0x75, - 0x74, 0x68, 0x22, 0x26, 0x0a, 0x24, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, - 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x96, 0x01, 0x0a, 0x14, 0x47, - 0x65, 0x74, 0x52, 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, - 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, - 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x23, 0x0a, - 0x0d, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, - 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x6f, 0x52, 0x65, 0x76, 0x69, 0x73, - 0x69, 0x6f, 0x6e, 0x22, 0xbd, 0x04, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x52, 0x61, 0x77, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, - 0x0b, 0x72, 0x61, 0x77, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x52, - 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x2e, 0x52, 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0a, 0x72, 0x61, 0x77, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x1a, 0xd9, 0x03, 0x0a, 0x09, 0x52, 0x61, 0x77, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x62, 0x6c, 0x6f, 0x62, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6c, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, - 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x50, 0x61, 0x74, - 0x68, 0x12, 0x1d, 0x0a, 0x08, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x6f, 0x6c, 0x64, 0x50, 0x61, 0x74, 0x68, - 0x12, 0x4f, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, - 0x52, 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x52, 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x61, 0x77, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x61, 0x77, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x6c, 0x64, 0x5f, 0x6d, 0x6f, - 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6f, 0x6c, 0x64, 0x4d, 0x6f, 0x64, - 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x24, 0x0a, 0x0e, - 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x6e, 0x65, 0x77, 0x50, 0x61, 0x74, 0x68, 0x42, 0x79, 0x74, - 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x62, - 0x79, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x6f, 0x6c, 0x64, 0x50, - 0x61, 0x74, 0x68, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0x69, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, - 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x44, 0x44, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, - 0x06, 0x43, 0x4f, 0x50, 0x49, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x4c, - 0x45, 0x54, 0x45, 0x44, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, - 0x45, 0x44, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x4e, 0x41, 0x4d, 0x45, 0x44, 0x10, - 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, - 0x44, 0x10, 0x06, 0x22, 0x94, 0x01, 0x0a, 0x18, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, - 0x6c, 0x65, 0x73, 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x29, 0x0a, 0x13, 0x47, 0x65, + 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x97, 0x01, 0x0a, 0x23, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, + 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, + 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x74, 0x74, 0x70, 0x5f, + 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x74, 0x74, 0x70, 0x55, + 0x72, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x74, 0x74, 0x70, 0x41, 0x75, 0x74, 0x68, 0x22, + 0x26, 0x0a, 0x24, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x96, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x52, + 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, - 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x72, - 0x65, 0x66, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x31, 0x0a, 0x19, 0x53, 0x65, - 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x22, 0xaa, 0x01, - 0x0a, 0x1b, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, + 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x72, + 0x6f, 0x6d, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, + 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x6f, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x22, 0xbd, 0x04, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x52, 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x0b, 0x72, 0x61, + 0x77, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x27, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x61, 0x77, 0x43, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, + 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0a, 0x72, 0x61, 0x77, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x73, 0x1a, 0xd9, 0x03, 0x0a, 0x09, 0x52, 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x62, 0x6c, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6c, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, + 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, + 0x1d, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1d, + 0x0a, 0x08, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x6f, 0x6c, 0x64, 0x50, 0x61, 0x74, 0x68, 0x12, 0x4f, 0x0a, + 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x31, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x61, 0x77, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x52, 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, + 0x0a, 0x0d, 0x72, 0x61, 0x77, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x61, 0x77, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x6c, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6f, 0x6c, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x19, + 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x6e, 0x65, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6e, 0x65, 0x77, + 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x0c, 0x6e, 0x65, 0x77, 0x50, 0x61, 0x74, 0x68, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, + 0x24, 0x0a, 0x0e, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x62, 0x79, 0x74, 0x65, + 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x6f, 0x6c, 0x64, 0x50, 0x61, 0x74, 0x68, + 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0x69, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, + 0x09, 0x0a, 0x05, 0x41, 0x44, 0x44, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x4f, + 0x50, 0x49, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, + 0x44, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, + 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x4e, 0x41, 0x4d, 0x45, 0x44, 0x10, 0x05, 0x12, 0x10, + 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x44, 0x10, 0x06, + 0x22, 0x94, 0x01, 0x0a, 0x18, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, + 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x72, 0x65, 0x66, 0x12, - 0x29, 0x0a, 0x10, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x63, 0x68, 0x75, 0x6e, 0x6b, - 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x79, 0x0a, 0x1c, 0x53, 0x65, - 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x07, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x44, - 0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0c, 0x65, 0x6e, 0x64, 0x5f, 0x6f, 0x66, 0x5f, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x6e, 0x64, 0x4f, 0x66, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x22, 0x89, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, - 0x72, 0x6c, 0x12, 0x3a, 0x0a, 0x19, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, - 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x68, 0x74, 0x74, 0x70, 0x41, 0x75, 0x74, 0x68, 0x6f, - 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x25, - 0x0a, 0x0e, 0x6d, 0x69, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x66, 0x6d, 0x61, 0x70, 0x73, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x6d, 0x69, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, - 0x66, 0x6d, 0x61, 0x70, 0x73, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x22, 0x59, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, - 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, - 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x34, 0x0a, 0x1e, - 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, - 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, - 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, - 0x7a, 0x65, 0x22, 0xa0, 0x01, 0x0a, 0x14, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, - 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x26, 0x0a, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x12, 0x26, 0x0a, - 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x06, 0x72, - 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x22, 0x17, 0x0a, 0x15, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, - 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc1, - 0x01, 0x0a, 0x1c, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, - 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x31, 0x0a, 0x19, 0x53, 0x65, 0x61, 0x72, 0x63, + 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0c, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x22, 0xaa, 0x01, 0x0a, 0x1b, 0x53, + 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, + 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, + 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x6f, 0x72, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, + 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x72, 0x65, 0x66, 0x12, 0x29, 0x0a, 0x10, + 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x65, 0x64, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x79, 0x0a, 0x1c, 0x53, 0x65, 0x61, 0x72, 0x63, + 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, + 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x61, 0x74, 0x61, + 0x12, 0x20, 0x0a, 0x0c, 0x65, 0x6e, 0x64, 0x5f, 0x6f, 0x66, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x6e, 0x64, 0x4f, 0x66, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x22, 0x89, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x10, 0x0a, + 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, + 0x3a, 0x0a, 0x19, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x17, 0x68, 0x74, 0x74, 0x70, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x6d, + 0x69, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x66, 0x6d, 0x61, 0x70, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x0d, 0x6d, 0x69, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x66, 0x6d, 0x61, + 0x70, 0x73, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x59, + 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x26, 0x0a, 0x04, 0x70, 0x6f, 0x6f, - 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, - 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x04, 0x70, 0x6f, 0x6f, - 0x6c, 0x12, 0x3f, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x34, 0x0a, 0x1e, 0x47, 0x65, 0x74, + 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x53, + 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, + 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22, + 0xa0, 0x01, 0x0a, 0x14, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x6f, + 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, - 0x52, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, - 0x72, 0x79, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, - 0x6f, 0x6f, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x53, 0x0a, 0x17, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, - 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x1a, 0x0a, 0x18, 0x52, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x78, 0x0a, 0x17, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x1a, - 0x0a, 0x18, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, - 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x82, 0x01, 0x0a, 0x1a, 0x52, - 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, - 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, - 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x6f, 0x72, 0x79, 0x12, 0x2a, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, - 0x1d, 0x0a, 0x1b, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x55, - 0x0a, 0x19, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, + 0x72, 0x79, 0x12, 0x26, 0x0a, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x12, 0x26, 0x0a, 0x06, 0x72, 0x65, + 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x67, 0x69, 0x74, + 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x22, 0x17, 0x0a, 0x15, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, + 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc1, 0x01, 0x0a, 0x1c, + 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x6e, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, + 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x26, 0x0a, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x12, 0x3f, + 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, + 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x10, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, + 0x1f, 0x0a, 0x1d, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, + 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x53, 0x0a, 0x17, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x1c, 0x0a, 0x1a, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, - 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x62, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x50, 0x61, - 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, - 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x65, 0x74, 0x46, 0x75, - 0x6c, 0x6c, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0x93, - 0x20, 0x0a, 0x11, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x12, 0x5d, 0x0a, 0x10, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, - 0x72, 0x79, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, - 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x45, 0x78, 0x69, 0x73, - 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, - 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x45, 0x78, 0x69, - 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, - 0x02, 0x08, 0x02, 0x12, 0x60, 0x0a, 0x11, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x63, - 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, - 0x79, 0x2e, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, - 0x74, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74, - 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, - 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x4b, 0x0a, 0x0a, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x46, - 0x75, 0x6c, 0x6c, 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, - 0x61, 0x63, 0x6b, 0x46, 0x75, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, - 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x46, 0x75, - 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, - 0x08, 0x01, 0x12, 0x4b, 0x0a, 0x0a, 0x4d, 0x69, 0x64, 0x78, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, - 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4d, 0x69, 0x64, 0x78, 0x52, 0x65, - 0x70, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x69, - 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4d, 0x69, 0x64, 0x78, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, - 0x57, 0x0a, 0x0e, 0x47, 0x61, 0x72, 0x62, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x12, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x61, 0x72, 0x62, 0x61, - 0x67, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x61, 0x72, 0x62, 0x61, 0x67, - 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x5d, 0x0a, 0x10, 0x57, 0x72, 0x69, 0x74, - 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x47, 0x72, 0x61, 0x70, 0x68, 0x12, 0x1f, 0x2e, 0x67, - 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69, - 0x74, 0x47, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, - 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, - 0x69, 0x74, 0x47, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x57, 0x0a, 0x0e, 0x52, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, - 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, - 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, + 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x1a, 0x0a, 0x18, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x78, 0x0a, 0x17, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, + 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, + 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, + 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x1a, 0x0a, 0x18, 0x52, + 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x82, 0x01, 0x0a, 0x1a, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, + 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, + 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, + 0x12, 0x2a, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x6f, 0x72, 0x79, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x1d, 0x0a, 0x1b, + 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x55, 0x0a, 0x19, 0x4f, + 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, + 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, + 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, + 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, + 0x72, 0x79, 0x22, 0x1c, 0x0a, 0x1a, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x52, 0x65, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x62, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x50, 0x61, 0x74, 0x68, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, + 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, + 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, + 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x70, 0x61, 0x74, 0x68, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x50, + 0x61, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xf0, 0x1e, 0x0a, 0x11, + 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x12, 0x5d, 0x0a, 0x10, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x45, + 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, + 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, - 0x12, 0x63, 0x0a, 0x12, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x69, 0x74, 0x61, 0x74, 0x74, 0x72, - 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, + 0x12, 0x60, 0x0a, 0x11, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, + 0x65, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, + 0x2e, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, + 0x08, 0x01, 0x12, 0x4b, 0x0a, 0x0a, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x46, 0x75, 0x6c, 0x6c, + 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, + 0x46, 0x75, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x69, + 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x46, 0x75, 0x6c, 0x6c, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, + 0x4b, 0x0a, 0x0a, 0x4d, 0x69, 0x64, 0x78, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x12, 0x19, 0x2e, + 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4d, 0x69, 0x64, 0x78, 0x52, 0x65, 0x70, 0x61, 0x63, + 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, + 0x79, 0x2e, 0x4d, 0x69, 0x64, 0x78, 0x52, 0x65, 0x70, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x57, 0x0a, 0x0e, + 0x47, 0x61, 0x72, 0x62, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x1d, + 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x61, 0x72, 0x62, 0x61, 0x67, 0x65, 0x43, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, + 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x61, 0x72, 0x62, 0x61, 0x67, 0x65, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, + 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x5d, 0x0a, 0x10, 0x57, 0x72, 0x69, 0x74, 0x65, 0x43, 0x6f, + 0x6d, 0x6d, 0x69, 0x74, 0x47, 0x72, 0x61, 0x70, 0x68, 0x12, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, + 0x6c, 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x47, 0x72, + 0x61, 0x70, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x69, 0x74, + 0x61, 0x6c, 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x47, + 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, + 0x28, 0x02, 0x08, 0x01, 0x12, 0x57, 0x0a, 0x0e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, + 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, + 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x63, 0x0a, + 0x12, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x69, 0x74, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x12, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x47, 0x69, 0x74, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x69, 0x74, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, - 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x69, 0x74, 0x61, - 0x6c, 0x79, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x69, 0x74, 0x61, 0x74, 0x74, 0x72, 0x69, - 0x62, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, - 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x4e, 0x0a, 0x0b, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x65, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, - 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, - 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x5d, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, - 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x69, 0x74, - 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, - 0x28, 0x02, 0x08, 0x01, 0x12, 0x4d, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x41, 0x72, 0x63, 0x68, 0x69, - 0x76, 0x65, 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x41, - 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, - 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, - 0x02, 0x30, 0x01, 0x12, 0x5d, 0x0a, 0x10, 0x48, 0x61, 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, - 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, - 0x2e, 0x48, 0x61, 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, - 0x79, 0x2e, 0x48, 0x61, 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, - 0x08, 0x02, 0x12, 0x60, 0x0a, 0x11, 0x46, 0x65, 0x74, 0x63, 0x68, 0x53, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, - 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x72, 0x61, 0x6e, - 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, - 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x72, - 0x61, 0x6e, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, - 0x28, 0x02, 0x08, 0x01, 0x12, 0x39, 0x0a, 0x04, 0x46, 0x73, 0x63, 0x6b, 0x12, 0x13, 0x2e, 0x67, - 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x73, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x14, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x73, 0x63, 0x6b, 0x52, + 0x08, 0x01, 0x12, 0x4e, 0x0a, 0x0b, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x6d, 0x6f, 0x74, + 0x65, 0x12, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, + 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, + 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x52, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, + 0x08, 0x01, 0x12, 0x5d, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, + 0x01, 0x12, 0x4d, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x12, + 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x63, 0x68, + 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x69, 0x74, + 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, + 0x12, 0x5d, 0x0a, 0x10, 0x48, 0x61, 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, + 0x63, 0x68, 0x65, 0x73, 0x12, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x48, 0x61, + 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x48, + 0x61, 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, - 0x45, 0x0a, 0x08, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x66, 0x12, 0x17, 0x2e, 0x67, 0x69, - 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x66, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x57, 0x72, - 0x69, 0x74, 0x65, 0x52, 0x65, 0x66, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, - 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x54, 0x0a, 0x0d, 0x46, 0x69, 0x6e, 0x64, 0x4d, 0x65, - 0x72, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x1c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, - 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, - 0x69, 0x6e, 0x64, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x4b, 0x0a, 0x0a, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x6b, 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, - 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x6b, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x66, 0x0a, 0x12, 0x49, 0x73, 0x53, - 0x71, 0x75, 0x61, 0x73, 0x68, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x49, 0x73, 0x53, 0x71, 0x75, 0x61, 0x73, - 0x68, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x49, 0x73, 0x53, 0x71, - 0x75, 0x61, 0x73, 0x68, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x09, 0x88, 0x02, 0x01, 0xfa, 0x97, 0x28, 0x02, 0x08, - 0x02, 0x12, 0x72, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x55, 0x52, 0x4c, 0x12, 0x26, 0x2e, 0x67, - 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, + 0x60, 0x0a, 0x11, 0x46, 0x65, 0x74, 0x63, 0x68, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x72, + 0x61, 0x6e, 0x63, 0x68, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x65, + 0x74, 0x63, 0x68, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, + 0x46, 0x65, 0x74, 0x63, 0x68, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, + 0x01, 0x12, 0x39, 0x0a, 0x04, 0x46, 0x73, 0x63, 0x6b, 0x12, 0x13, 0x2e, 0x67, 0x69, 0x74, 0x61, + 0x6c, 0x79, 0x2e, 0x46, 0x73, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, + 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x73, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x45, 0x0a, 0x08, + 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x66, 0x12, 0x17, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, + 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x66, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x18, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, + 0x52, 0x65, 0x66, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, + 0x02, 0x08, 0x01, 0x12, 0x54, 0x0a, 0x0d, 0x46, 0x69, 0x6e, 0x64, 0x4d, 0x65, 0x72, 0x67, 0x65, + 0x42, 0x61, 0x73, 0x65, 0x12, 0x1c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, + 0x6e, 0x64, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, + 0x4d, 0x65, 0x72, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x4b, 0x0a, 0x0a, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x6b, 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x46, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, + 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x66, 0x0a, 0x12, 0x49, 0x73, 0x53, 0x71, 0x75, 0x61, + 0x73, 0x68, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x2e, 0x67, + 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x49, 0x73, 0x53, 0x71, 0x75, 0x61, 0x73, 0x68, 0x49, 0x6e, + 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x22, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x49, 0x73, 0x53, 0x71, 0x75, 0x61, 0x73, + 0x68, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x09, 0x88, 0x02, 0x01, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x72, + 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, + 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x55, 0x52, 0x4c, 0x12, 0x26, 0x2e, 0x67, 0x69, 0x74, 0x61, + 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x55, + 0x52, 0x4c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, + 0x08, 0x01, 0x12, 0x53, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x12, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x1c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, + 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x76, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x66, 0x4c, 0x69, + 0x73, 0x74, 0x12, 0x26, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x66, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x69, 0x74, + 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x66, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x28, 0x01, 0x30, 0x01, 0x12, + 0x7d, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x29, 0x2e, + 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, + 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, + 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x28, 0x01, 0x12, 0x4a, + 0x0a, 0x09, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x2e, 0x67, 0x69, + 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, + 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x4e, 0x0a, 0x0b, 0x46, 0x69, + 0x6e, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, + 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, + 0x69, 0x6e, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x62, 0x0a, 0x11, 0x47, 0x65, + 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, + 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, + 0x66, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x60, + 0x0a, 0x11, 0x43, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, + 0x73, 0x75, 0x6d, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x61, 0x6c, + 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, + 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, + 0x12, 0x42, 0x0a, 0x07, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, 0x12, 0x16, 0x2e, 0x67, 0x69, + 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x6c, 0x65, + 0x61, 0x6e, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, + 0x28, 0x02, 0x08, 0x01, 0x12, 0x50, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, + 0x68, 0x6f, 0x74, 0x12, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, + 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x6e, 0x61, 0x70, + 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, + 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x81, 0x01, 0x0a, 0x1c, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x53, + 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x2b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, + 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, - 0x6f, 0x6d, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, - 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x53, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, - 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x76, 0x0a, 0x17, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x65, - 0x66, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x26, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x52, - 0x65, 0x66, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, - 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x75, 0x6e, - 0x64, 0x6c, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x66, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x28, 0x01, - 0x30, 0x01, 0x12, 0x7d, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, - 0x12, 0x29, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x75, - 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x67, 0x69, - 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x28, - 0x01, 0x12, 0x4a, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, - 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, - 0x79, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x4b, 0x0a, - 0x09, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x2e, 0x67, 0x69, 0x74, - 0x61, 0x6c, 0x79, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x53, 0x65, - 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x09, 0x88, 0x02, 0x01, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x54, 0x0a, 0x0c, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1b, 0x2e, 0x67, 0x69, 0x74, - 0x61, 0x6c, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, - 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x09, 0x88, 0x02, 0x01, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, - 0x12, 0x4e, 0x0a, 0x0b, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x12, - 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x69, 0x63, - 0x65, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67, 0x69, - 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, + 0x6f, 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x56, 0x0a, 0x0d, 0x47, 0x65, + 0x74, 0x52, 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x67, 0x69, + 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, + 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, - 0x12, 0x62, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, - 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, - 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, - 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, - 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, - 0x08, 0x02, 0x30, 0x01, 0x12, 0x60, 0x0a, 0x11, 0x43, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, - 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, - 0x6c, 0x79, 0x2e, 0x43, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x65, 0x63, - 0x6b, 0x73, 0x75, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, - 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, - 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x42, 0x0a, 0x07, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x75, - 0x70, 0x12, 0x16, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x6e, - 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x67, 0x69, 0x74, 0x61, - 0x6c, 0x79, 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x50, 0x0a, 0x0b, 0x47, 0x65, - 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, - 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, - 0x65, 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x81, 0x01, 0x0a, - 0x1c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, - 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x2b, 0x2e, - 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x73, - 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x69, 0x74, - 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, - 0x12, 0x56, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x52, 0x61, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x73, 0x12, 0x1c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x61, - 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x61, 0x77, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, - 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x6b, 0x0a, 0x14, 0x53, 0x65, 0x61, 0x72, - 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x12, 0x23, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, - 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x53, - 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, - 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x62, 0x0a, 0x11, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, - 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, + 0x30, 0x01, 0x12, 0x6b, 0x0a, 0x14, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, + 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, - 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, - 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, - 0x73, 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x65, 0x0a, 0x12, 0x52, 0x65, 0x73, - 0x74, 0x6f, 0x72, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x12, - 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x73, 0x74, - 0x6f, 0x72, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x28, 0x01, - 0x12, 0x62, 0x0a, 0x11, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x42, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, - 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, - 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, - 0x08, 0x02, 0x30, 0x01, 0x12, 0x6f, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x25, - 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, - 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x79, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, - 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x54, 0x0a, 0x0d, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, - 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x1c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, - 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x6c, - 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x6c, 0x0a, 0x15, 0x43, - 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x12, 0x24, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x6c, + 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x24, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, + 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, + 0x62, 0x0a, 0x11, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x53, 0x65, + 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, + 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x4e, 0x61, 0x6d, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, + 0x02, 0x30, 0x01, 0x12, 0x65, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x12, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, + 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, + 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x28, 0x01, 0x12, 0x62, 0x0a, 0x11, 0x42, 0x61, + 0x63, 0x6b, 0x75, 0x70, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x12, + 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, + 0x70, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x6f, + 0x0a, 0x16, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x25, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, + 0x79, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x26, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, + 0x54, 0x0a, 0x0d, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, + 0x12, 0x1c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, + 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, + 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, + 0x6d, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, + 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x6c, 0x0a, 0x15, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, + 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x12, 0x24, + 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, + 0x6d, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x72, - 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x69, 0x74, - 0x61, 0x6c, 0x79, 0x2e, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x6f, - 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x5d, 0x0a, 0x10, 0x52, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1f, 0x2e, - 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, - 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x5d, 0x0a, 0x10, 0x52, 0x65, 0x6e, 0x61, - 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1f, 0x2e, 0x67, - 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, - 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x66, 0x0a, 0x13, 0x52, 0x65, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x22, - 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, + 0x02, 0x08, 0x01, 0x12, 0x5d, 0x0a, 0x10, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, + 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, + 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, + 0x79, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, + 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, + 0x08, 0x01, 0x12, 0x5d, 0x0a, 0x10, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, + 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, + 0x2e, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, + 0x01, 0x12, 0x66, 0x0a, 0x13, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x22, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, + 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, + 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x67, + 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x63, 0x0a, 0x12, 0x4f, 0x70, 0x74, + 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, + 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, - 0x63, 0x0a, 0x12, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4f, - 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, - 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, - 0x79, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, - 0x28, 0x02, 0x08, 0x01, 0x12, 0x4e, 0x0a, 0x0b, 0x53, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x50, - 0x61, 0x74, 0x68, 0x12, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x53, 0x65, 0x74, - 0x46, 0x75, 0x6c, 0x6c, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x53, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, - 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, - 0x28, 0x02, 0x08, 0x01, 0x42, 0x34, 0x5a, 0x32, 0x67, 0x69, 0x74, 0x6c, 0x61, 0x62, 0x2e, 0x63, - 0x6f, 0x6d, 0x2f, 0x67, 0x69, 0x74, 0x6c, 0x61, 0x62, 0x2d, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x69, - 0x74, 0x61, 0x6c, 0x79, 0x2f, 0x76, 0x31, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, - 0x6f, 0x2f, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x33, + 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4f, 0x70, 0x74, 0x69, + 0x6d, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x4e, + 0x0a, 0x0b, 0x53, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1a, 0x2e, + 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x53, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x50, 0x61, + 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, + 0x6c, 0x79, 0x2e, 0x53, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x42, 0x34, + 0x5a, 0x32, 0x67, 0x69, 0x74, 0x6c, 0x61, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x69, 0x74, + 0x6c, 0x61, 0x62, 0x2d, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2f, 0x76, + 0x31, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x69, 0x74, 0x61, + 0x6c, 0x79, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -5709,7 +5384,7 @@ func file_repository_service_proto_rawDescGZIP() []byte { } var file_repository_service_proto_enumTypes = make([]protoimpl.EnumInfo, 3) -var file_repository_service_proto_msgTypes = make([]protoimpl.MessageInfo, 91) +var file_repository_service_proto_msgTypes = make([]protoimpl.MessageInfo, 86) var file_repository_service_proto_goTypes = []interface{}{ (WriteCommitGraphRequest_SplitStrategy)(0), // 0: gitaly.WriteCommitGraphRequest.SplitStrategy (GetArchiveRequest_Format)(0), // 1: gitaly.GetArchiveRequest.Format @@ -5760,205 +5435,193 @@ var file_repository_service_proto_goTypes = []interface{}{ (*CreateBundleFromRefListResponse)(nil), // 46: gitaly.CreateBundleFromRefListResponse (*GetConfigRequest)(nil), // 47: gitaly.GetConfigRequest (*GetConfigResponse)(nil), // 48: gitaly.GetConfigResponse - (*SetConfigRequest)(nil), // 49: gitaly.SetConfigRequest - (*SetConfigResponse)(nil), // 50: gitaly.SetConfigResponse - (*DeleteConfigRequest)(nil), // 51: gitaly.DeleteConfigRequest - (*DeleteConfigResponse)(nil), // 52: gitaly.DeleteConfigResponse - (*RestoreCustomHooksRequest)(nil), // 53: gitaly.RestoreCustomHooksRequest - (*RestoreCustomHooksResponse)(nil), // 54: gitaly.RestoreCustomHooksResponse - (*BackupCustomHooksRequest)(nil), // 55: gitaly.BackupCustomHooksRequest - (*BackupCustomHooksResponse)(nil), // 56: gitaly.BackupCustomHooksResponse - (*CreateRepositoryFromBundleRequest)(nil), // 57: gitaly.CreateRepositoryFromBundleRequest - (*CreateRepositoryFromBundleResponse)(nil), // 58: gitaly.CreateRepositoryFromBundleResponse - (*FindLicenseRequest)(nil), // 59: gitaly.FindLicenseRequest - (*FindLicenseResponse)(nil), // 60: gitaly.FindLicenseResponse - (*GetInfoAttributesRequest)(nil), // 61: gitaly.GetInfoAttributesRequest - (*GetInfoAttributesResponse)(nil), // 62: gitaly.GetInfoAttributesResponse - (*CalculateChecksumRequest)(nil), // 63: gitaly.CalculateChecksumRequest - (*CalculateChecksumResponse)(nil), // 64: gitaly.CalculateChecksumResponse - (*GetSnapshotRequest)(nil), // 65: gitaly.GetSnapshotRequest - (*GetSnapshotResponse)(nil), // 66: gitaly.GetSnapshotResponse - (*CreateRepositoryFromSnapshotRequest)(nil), // 67: gitaly.CreateRepositoryFromSnapshotRequest - (*CreateRepositoryFromSnapshotResponse)(nil), // 68: gitaly.CreateRepositoryFromSnapshotResponse - (*GetRawChangesRequest)(nil), // 69: gitaly.GetRawChangesRequest - (*GetRawChangesResponse)(nil), // 70: gitaly.GetRawChangesResponse - (*SearchFilesByNameRequest)(nil), // 71: gitaly.SearchFilesByNameRequest - (*SearchFilesByNameResponse)(nil), // 72: gitaly.SearchFilesByNameResponse - (*SearchFilesByContentRequest)(nil), // 73: gitaly.SearchFilesByContentRequest - (*SearchFilesByContentResponse)(nil), // 74: gitaly.SearchFilesByContentResponse - (*Remote)(nil), // 75: gitaly.Remote - (*GetObjectDirectorySizeRequest)(nil), // 76: gitaly.GetObjectDirectorySizeRequest - (*GetObjectDirectorySizeResponse)(nil), // 77: gitaly.GetObjectDirectorySizeResponse - (*CloneFromPoolRequest)(nil), // 78: gitaly.CloneFromPoolRequest - (*CloneFromPoolResponse)(nil), // 79: gitaly.CloneFromPoolResponse - (*CloneFromPoolInternalRequest)(nil), // 80: gitaly.CloneFromPoolInternalRequest - (*CloneFromPoolInternalResponse)(nil), // 81: gitaly.CloneFromPoolInternalResponse - (*RemoveRepositoryRequest)(nil), // 82: gitaly.RemoveRepositoryRequest - (*RemoveRepositoryResponse)(nil), // 83: gitaly.RemoveRepositoryResponse - (*RenameRepositoryRequest)(nil), // 84: gitaly.RenameRepositoryRequest - (*RenameRepositoryResponse)(nil), // 85: gitaly.RenameRepositoryResponse - (*ReplicateRepositoryRequest)(nil), // 86: gitaly.ReplicateRepositoryRequest - (*ReplicateRepositoryResponse)(nil), // 87: gitaly.ReplicateRepositoryResponse - (*OptimizeRepositoryRequest)(nil), // 88: gitaly.OptimizeRepositoryRequest - (*OptimizeRepositoryResponse)(nil), // 89: gitaly.OptimizeRepositoryResponse - (*SetFullPathRequest)(nil), // 90: gitaly.SetFullPathRequest - (*SetFullPathResponse)(nil), // 91: gitaly.SetFullPathResponse - (*SetConfigRequest_Entry)(nil), // 92: gitaly.SetConfigRequest.Entry - (*GetRawChangesResponse_RawChange)(nil), // 93: gitaly.GetRawChangesResponse.RawChange - (*Repository)(nil), // 94: gitaly.Repository - (*ObjectPool)(nil), // 95: gitaly.ObjectPool + (*RestoreCustomHooksRequest)(nil), // 49: gitaly.RestoreCustomHooksRequest + (*RestoreCustomHooksResponse)(nil), // 50: gitaly.RestoreCustomHooksResponse + (*BackupCustomHooksRequest)(nil), // 51: gitaly.BackupCustomHooksRequest + (*BackupCustomHooksResponse)(nil), // 52: gitaly.BackupCustomHooksResponse + (*CreateRepositoryFromBundleRequest)(nil), // 53: gitaly.CreateRepositoryFromBundleRequest + (*CreateRepositoryFromBundleResponse)(nil), // 54: gitaly.CreateRepositoryFromBundleResponse + (*FindLicenseRequest)(nil), // 55: gitaly.FindLicenseRequest + (*FindLicenseResponse)(nil), // 56: gitaly.FindLicenseResponse + (*GetInfoAttributesRequest)(nil), // 57: gitaly.GetInfoAttributesRequest + (*GetInfoAttributesResponse)(nil), // 58: gitaly.GetInfoAttributesResponse + (*CalculateChecksumRequest)(nil), // 59: gitaly.CalculateChecksumRequest + (*CalculateChecksumResponse)(nil), // 60: gitaly.CalculateChecksumResponse + (*GetSnapshotRequest)(nil), // 61: gitaly.GetSnapshotRequest + (*GetSnapshotResponse)(nil), // 62: gitaly.GetSnapshotResponse + (*CreateRepositoryFromSnapshotRequest)(nil), // 63: gitaly.CreateRepositoryFromSnapshotRequest + (*CreateRepositoryFromSnapshotResponse)(nil), // 64: gitaly.CreateRepositoryFromSnapshotResponse + (*GetRawChangesRequest)(nil), // 65: gitaly.GetRawChangesRequest + (*GetRawChangesResponse)(nil), // 66: gitaly.GetRawChangesResponse + (*SearchFilesByNameRequest)(nil), // 67: gitaly.SearchFilesByNameRequest + (*SearchFilesByNameResponse)(nil), // 68: gitaly.SearchFilesByNameResponse + (*SearchFilesByContentRequest)(nil), // 69: gitaly.SearchFilesByContentRequest + (*SearchFilesByContentResponse)(nil), // 70: gitaly.SearchFilesByContentResponse + (*Remote)(nil), // 71: gitaly.Remote + (*GetObjectDirectorySizeRequest)(nil), // 72: gitaly.GetObjectDirectorySizeRequest + (*GetObjectDirectorySizeResponse)(nil), // 73: gitaly.GetObjectDirectorySizeResponse + (*CloneFromPoolRequest)(nil), // 74: gitaly.CloneFromPoolRequest + (*CloneFromPoolResponse)(nil), // 75: gitaly.CloneFromPoolResponse + (*CloneFromPoolInternalRequest)(nil), // 76: gitaly.CloneFromPoolInternalRequest + (*CloneFromPoolInternalResponse)(nil), // 77: gitaly.CloneFromPoolInternalResponse + (*RemoveRepositoryRequest)(nil), // 78: gitaly.RemoveRepositoryRequest + (*RemoveRepositoryResponse)(nil), // 79: gitaly.RemoveRepositoryResponse + (*RenameRepositoryRequest)(nil), // 80: gitaly.RenameRepositoryRequest + (*RenameRepositoryResponse)(nil), // 81: gitaly.RenameRepositoryResponse + (*ReplicateRepositoryRequest)(nil), // 82: gitaly.ReplicateRepositoryRequest + (*ReplicateRepositoryResponse)(nil), // 83: gitaly.ReplicateRepositoryResponse + (*OptimizeRepositoryRequest)(nil), // 84: gitaly.OptimizeRepositoryRequest + (*OptimizeRepositoryResponse)(nil), // 85: gitaly.OptimizeRepositoryResponse + (*SetFullPathRequest)(nil), // 86: gitaly.SetFullPathRequest + (*SetFullPathResponse)(nil), // 87: gitaly.SetFullPathResponse + (*GetRawChangesResponse_RawChange)(nil), // 88: gitaly.GetRawChangesResponse.RawChange + (*Repository)(nil), // 89: gitaly.Repository + (*ObjectPool)(nil), // 90: gitaly.ObjectPool } var file_repository_service_proto_depIdxs = []int32{ - 94, // 0: gitaly.RepositoryExistsRequest.repository:type_name -> gitaly.Repository - 94, // 1: gitaly.RepackIncrementalRequest.repository:type_name -> gitaly.Repository - 94, // 2: gitaly.RepackFullRequest.repository:type_name -> gitaly.Repository - 94, // 3: gitaly.MidxRepackRequest.repository:type_name -> gitaly.Repository - 94, // 4: gitaly.GarbageCollectRequest.repository:type_name -> gitaly.Repository - 94, // 5: gitaly.WriteCommitGraphRequest.repository:type_name -> gitaly.Repository - 0, // 6: gitaly.WriteCommitGraphRequest.splitStrategy:type_name -> gitaly.WriteCommitGraphRequest.SplitStrategy - 94, // 7: gitaly.CleanupRequest.repository:type_name -> gitaly.Repository - 94, // 8: gitaly.RepositorySizeRequest.repository:type_name -> gitaly.Repository - 94, // 9: gitaly.ApplyGitattributesRequest.repository:type_name -> gitaly.Repository - 94, // 10: gitaly.FetchRemoteRequest.repository:type_name -> gitaly.Repository - 75, // 11: gitaly.FetchRemoteRequest.remote_params:type_name -> gitaly.Remote - 94, // 12: gitaly.CreateRepositoryRequest.repository:type_name -> gitaly.Repository - 94, // 13: gitaly.GetArchiveRequest.repository:type_name -> gitaly.Repository - 1, // 14: gitaly.GetArchiveRequest.format:type_name -> gitaly.GetArchiveRequest.Format - 94, // 15: gitaly.HasLocalBranchesRequest.repository:type_name -> gitaly.Repository - 94, // 16: gitaly.FetchSourceBranchRequest.repository:type_name -> gitaly.Repository - 94, // 17: gitaly.FetchSourceBranchRequest.source_repository:type_name -> gitaly.Repository - 94, // 18: gitaly.FsckRequest.repository:type_name -> gitaly.Repository - 94, // 19: gitaly.WriteRefRequest.repository:type_name -> gitaly.Repository - 94, // 20: gitaly.FindMergeBaseRequest.repository:type_name -> gitaly.Repository - 94, // 21: gitaly.CreateForkRequest.repository:type_name -> gitaly.Repository - 94, // 22: gitaly.CreateForkRequest.source_repository:type_name -> gitaly.Repository - 94, // 23: gitaly.IsSquashInProgressRequest.repository:type_name -> gitaly.Repository - 94, // 24: gitaly.CreateRepositoryFromURLRequest.repository:type_name -> gitaly.Repository - 94, // 25: gitaly.CreateBundleRequest.repository:type_name -> gitaly.Repository - 94, // 26: gitaly.CreateBundleFromRefListRequest.repository:type_name -> gitaly.Repository - 94, // 27: gitaly.GetConfigRequest.repository:type_name -> gitaly.Repository - 94, // 28: gitaly.SetConfigRequest.repository:type_name -> gitaly.Repository - 92, // 29: gitaly.SetConfigRequest.entries:type_name -> gitaly.SetConfigRequest.Entry - 94, // 30: gitaly.DeleteConfigRequest.repository:type_name -> gitaly.Repository - 94, // 31: gitaly.RestoreCustomHooksRequest.repository:type_name -> gitaly.Repository - 94, // 32: gitaly.BackupCustomHooksRequest.repository:type_name -> gitaly.Repository - 94, // 33: gitaly.CreateRepositoryFromBundleRequest.repository:type_name -> gitaly.Repository - 94, // 34: gitaly.FindLicenseRequest.repository:type_name -> gitaly.Repository - 94, // 35: gitaly.GetInfoAttributesRequest.repository:type_name -> gitaly.Repository - 94, // 36: gitaly.CalculateChecksumRequest.repository:type_name -> gitaly.Repository - 94, // 37: gitaly.GetSnapshotRequest.repository:type_name -> gitaly.Repository - 94, // 38: gitaly.CreateRepositoryFromSnapshotRequest.repository:type_name -> gitaly.Repository - 94, // 39: gitaly.GetRawChangesRequest.repository:type_name -> gitaly.Repository - 93, // 40: gitaly.GetRawChangesResponse.raw_changes:type_name -> gitaly.GetRawChangesResponse.RawChange - 94, // 41: gitaly.SearchFilesByNameRequest.repository:type_name -> gitaly.Repository - 94, // 42: gitaly.SearchFilesByContentRequest.repository:type_name -> gitaly.Repository - 94, // 43: gitaly.GetObjectDirectorySizeRequest.repository:type_name -> gitaly.Repository - 94, // 44: gitaly.CloneFromPoolRequest.repository:type_name -> gitaly.Repository - 95, // 45: gitaly.CloneFromPoolRequest.pool:type_name -> gitaly.ObjectPool - 75, // 46: gitaly.CloneFromPoolRequest.remote:type_name -> gitaly.Remote - 94, // 47: gitaly.CloneFromPoolInternalRequest.repository:type_name -> gitaly.Repository - 95, // 48: gitaly.CloneFromPoolInternalRequest.pool:type_name -> gitaly.ObjectPool - 94, // 49: gitaly.CloneFromPoolInternalRequest.source_repository:type_name -> gitaly.Repository - 94, // 50: gitaly.RemoveRepositoryRequest.repository:type_name -> gitaly.Repository - 94, // 51: gitaly.RenameRepositoryRequest.repository:type_name -> gitaly.Repository - 94, // 52: gitaly.ReplicateRepositoryRequest.repository:type_name -> gitaly.Repository - 94, // 53: gitaly.ReplicateRepositoryRequest.source:type_name -> gitaly.Repository - 94, // 54: gitaly.OptimizeRepositoryRequest.repository:type_name -> gitaly.Repository - 94, // 55: gitaly.SetFullPathRequest.repository:type_name -> gitaly.Repository - 2, // 56: gitaly.GetRawChangesResponse.RawChange.operation:type_name -> gitaly.GetRawChangesResponse.RawChange.Operation - 3, // 57: gitaly.RepositoryService.RepositoryExists:input_type -> gitaly.RepositoryExistsRequest - 5, // 58: gitaly.RepositoryService.RepackIncremental:input_type -> gitaly.RepackIncrementalRequest - 7, // 59: gitaly.RepositoryService.RepackFull:input_type -> gitaly.RepackFullRequest - 9, // 60: gitaly.RepositoryService.MidxRepack:input_type -> gitaly.MidxRepackRequest - 11, // 61: gitaly.RepositoryService.GarbageCollect:input_type -> gitaly.GarbageCollectRequest - 13, // 62: gitaly.RepositoryService.WriteCommitGraph:input_type -> gitaly.WriteCommitGraphRequest - 17, // 63: gitaly.RepositoryService.RepositorySize:input_type -> gitaly.RepositorySizeRequest - 19, // 64: gitaly.RepositoryService.ApplyGitattributes:input_type -> gitaly.ApplyGitattributesRequest - 21, // 65: gitaly.RepositoryService.FetchRemote:input_type -> gitaly.FetchRemoteRequest - 23, // 66: gitaly.RepositoryService.CreateRepository:input_type -> gitaly.CreateRepositoryRequest - 25, // 67: gitaly.RepositoryService.GetArchive:input_type -> gitaly.GetArchiveRequest - 27, // 68: gitaly.RepositoryService.HasLocalBranches:input_type -> gitaly.HasLocalBranchesRequest - 29, // 69: gitaly.RepositoryService.FetchSourceBranch:input_type -> gitaly.FetchSourceBranchRequest - 31, // 70: gitaly.RepositoryService.Fsck:input_type -> gitaly.FsckRequest - 33, // 71: gitaly.RepositoryService.WriteRef:input_type -> gitaly.WriteRefRequest - 35, // 72: gitaly.RepositoryService.FindMergeBase:input_type -> gitaly.FindMergeBaseRequest - 37, // 73: gitaly.RepositoryService.CreateFork:input_type -> gitaly.CreateForkRequest - 39, // 74: gitaly.RepositoryService.IsSquashInProgress:input_type -> gitaly.IsSquashInProgressRequest - 41, // 75: gitaly.RepositoryService.CreateRepositoryFromURL:input_type -> gitaly.CreateRepositoryFromURLRequest - 43, // 76: gitaly.RepositoryService.CreateBundle:input_type -> gitaly.CreateBundleRequest - 45, // 77: gitaly.RepositoryService.CreateBundleFromRefList:input_type -> gitaly.CreateBundleFromRefListRequest - 57, // 78: gitaly.RepositoryService.CreateRepositoryFromBundle:input_type -> gitaly.CreateRepositoryFromBundleRequest - 47, // 79: gitaly.RepositoryService.GetConfig:input_type -> gitaly.GetConfigRequest - 49, // 80: gitaly.RepositoryService.SetConfig:input_type -> gitaly.SetConfigRequest - 51, // 81: gitaly.RepositoryService.DeleteConfig:input_type -> gitaly.DeleteConfigRequest - 59, // 82: gitaly.RepositoryService.FindLicense:input_type -> gitaly.FindLicenseRequest - 61, // 83: gitaly.RepositoryService.GetInfoAttributes:input_type -> gitaly.GetInfoAttributesRequest - 63, // 84: gitaly.RepositoryService.CalculateChecksum:input_type -> gitaly.CalculateChecksumRequest - 15, // 85: gitaly.RepositoryService.Cleanup:input_type -> gitaly.CleanupRequest - 65, // 86: gitaly.RepositoryService.GetSnapshot:input_type -> gitaly.GetSnapshotRequest - 67, // 87: gitaly.RepositoryService.CreateRepositoryFromSnapshot:input_type -> gitaly.CreateRepositoryFromSnapshotRequest - 69, // 88: gitaly.RepositoryService.GetRawChanges:input_type -> gitaly.GetRawChangesRequest - 73, // 89: gitaly.RepositoryService.SearchFilesByContent:input_type -> gitaly.SearchFilesByContentRequest - 71, // 90: gitaly.RepositoryService.SearchFilesByName:input_type -> gitaly.SearchFilesByNameRequest - 53, // 91: gitaly.RepositoryService.RestoreCustomHooks:input_type -> gitaly.RestoreCustomHooksRequest - 55, // 92: gitaly.RepositoryService.BackupCustomHooks:input_type -> gitaly.BackupCustomHooksRequest - 76, // 93: gitaly.RepositoryService.GetObjectDirectorySize:input_type -> gitaly.GetObjectDirectorySizeRequest - 78, // 94: gitaly.RepositoryService.CloneFromPool:input_type -> gitaly.CloneFromPoolRequest - 80, // 95: gitaly.RepositoryService.CloneFromPoolInternal:input_type -> gitaly.CloneFromPoolInternalRequest - 82, // 96: gitaly.RepositoryService.RemoveRepository:input_type -> gitaly.RemoveRepositoryRequest - 84, // 97: gitaly.RepositoryService.RenameRepository:input_type -> gitaly.RenameRepositoryRequest - 86, // 98: gitaly.RepositoryService.ReplicateRepository:input_type -> gitaly.ReplicateRepositoryRequest - 88, // 99: gitaly.RepositoryService.OptimizeRepository:input_type -> gitaly.OptimizeRepositoryRequest - 90, // 100: gitaly.RepositoryService.SetFullPath:input_type -> gitaly.SetFullPathRequest - 4, // 101: gitaly.RepositoryService.RepositoryExists:output_type -> gitaly.RepositoryExistsResponse - 6, // 102: gitaly.RepositoryService.RepackIncremental:output_type -> gitaly.RepackIncrementalResponse - 8, // 103: gitaly.RepositoryService.RepackFull:output_type -> gitaly.RepackFullResponse - 10, // 104: gitaly.RepositoryService.MidxRepack:output_type -> gitaly.MidxRepackResponse - 12, // 105: gitaly.RepositoryService.GarbageCollect:output_type -> gitaly.GarbageCollectResponse - 14, // 106: gitaly.RepositoryService.WriteCommitGraph:output_type -> gitaly.WriteCommitGraphResponse - 18, // 107: gitaly.RepositoryService.RepositorySize:output_type -> gitaly.RepositorySizeResponse - 20, // 108: gitaly.RepositoryService.ApplyGitattributes:output_type -> gitaly.ApplyGitattributesResponse - 22, // 109: gitaly.RepositoryService.FetchRemote:output_type -> gitaly.FetchRemoteResponse - 24, // 110: gitaly.RepositoryService.CreateRepository:output_type -> gitaly.CreateRepositoryResponse - 26, // 111: gitaly.RepositoryService.GetArchive:output_type -> gitaly.GetArchiveResponse - 28, // 112: gitaly.RepositoryService.HasLocalBranches:output_type -> gitaly.HasLocalBranchesResponse - 30, // 113: gitaly.RepositoryService.FetchSourceBranch:output_type -> gitaly.FetchSourceBranchResponse - 32, // 114: gitaly.RepositoryService.Fsck:output_type -> gitaly.FsckResponse - 34, // 115: gitaly.RepositoryService.WriteRef:output_type -> gitaly.WriteRefResponse - 36, // 116: gitaly.RepositoryService.FindMergeBase:output_type -> gitaly.FindMergeBaseResponse - 38, // 117: gitaly.RepositoryService.CreateFork:output_type -> gitaly.CreateForkResponse - 40, // 118: gitaly.RepositoryService.IsSquashInProgress:output_type -> gitaly.IsSquashInProgressResponse - 42, // 119: gitaly.RepositoryService.CreateRepositoryFromURL:output_type -> gitaly.CreateRepositoryFromURLResponse - 44, // 120: gitaly.RepositoryService.CreateBundle:output_type -> gitaly.CreateBundleResponse - 46, // 121: gitaly.RepositoryService.CreateBundleFromRefList:output_type -> gitaly.CreateBundleFromRefListResponse - 58, // 122: gitaly.RepositoryService.CreateRepositoryFromBundle:output_type -> gitaly.CreateRepositoryFromBundleResponse - 48, // 123: gitaly.RepositoryService.GetConfig:output_type -> gitaly.GetConfigResponse - 50, // 124: gitaly.RepositoryService.SetConfig:output_type -> gitaly.SetConfigResponse - 52, // 125: gitaly.RepositoryService.DeleteConfig:output_type -> gitaly.DeleteConfigResponse - 60, // 126: gitaly.RepositoryService.FindLicense:output_type -> gitaly.FindLicenseResponse - 62, // 127: gitaly.RepositoryService.GetInfoAttributes:output_type -> gitaly.GetInfoAttributesResponse - 64, // 128: gitaly.RepositoryService.CalculateChecksum:output_type -> gitaly.CalculateChecksumResponse - 16, // 129: gitaly.RepositoryService.Cleanup:output_type -> gitaly.CleanupResponse - 66, // 130: gitaly.RepositoryService.GetSnapshot:output_type -> gitaly.GetSnapshotResponse - 68, // 131: gitaly.RepositoryService.CreateRepositoryFromSnapshot:output_type -> gitaly.CreateRepositoryFromSnapshotResponse - 70, // 132: gitaly.RepositoryService.GetRawChanges:output_type -> gitaly.GetRawChangesResponse - 74, // 133: gitaly.RepositoryService.SearchFilesByContent:output_type -> gitaly.SearchFilesByContentResponse - 72, // 134: gitaly.RepositoryService.SearchFilesByName:output_type -> gitaly.SearchFilesByNameResponse - 54, // 135: gitaly.RepositoryService.RestoreCustomHooks:output_type -> gitaly.RestoreCustomHooksResponse - 56, // 136: gitaly.RepositoryService.BackupCustomHooks:output_type -> gitaly.BackupCustomHooksResponse - 77, // 137: gitaly.RepositoryService.GetObjectDirectorySize:output_type -> gitaly.GetObjectDirectorySizeResponse - 79, // 138: gitaly.RepositoryService.CloneFromPool:output_type -> gitaly.CloneFromPoolResponse - 81, // 139: gitaly.RepositoryService.CloneFromPoolInternal:output_type -> gitaly.CloneFromPoolInternalResponse - 83, // 140: gitaly.RepositoryService.RemoveRepository:output_type -> gitaly.RemoveRepositoryResponse - 85, // 141: gitaly.RepositoryService.RenameRepository:output_type -> gitaly.RenameRepositoryResponse - 87, // 142: gitaly.RepositoryService.ReplicateRepository:output_type -> gitaly.ReplicateRepositoryResponse - 89, // 143: gitaly.RepositoryService.OptimizeRepository:output_type -> gitaly.OptimizeRepositoryResponse - 91, // 144: gitaly.RepositoryService.SetFullPath:output_type -> gitaly.SetFullPathResponse - 101, // [101:145] is the sub-list for method output_type - 57, // [57:101] is the sub-list for method input_type - 57, // [57:57] is the sub-list for extension type_name - 57, // [57:57] is the sub-list for extension extendee - 0, // [0:57] is the sub-list for field type_name + 89, // 0: gitaly.RepositoryExistsRequest.repository:type_name -> gitaly.Repository + 89, // 1: gitaly.RepackIncrementalRequest.repository:type_name -> gitaly.Repository + 89, // 2: gitaly.RepackFullRequest.repository:type_name -> gitaly.Repository + 89, // 3: gitaly.MidxRepackRequest.repository:type_name -> gitaly.Repository + 89, // 4: gitaly.GarbageCollectRequest.repository:type_name -> gitaly.Repository + 89, // 5: gitaly.WriteCommitGraphRequest.repository:type_name -> gitaly.Repository + 0, // 6: gitaly.WriteCommitGraphRequest.splitStrategy:type_name -> gitaly.WriteCommitGraphRequest.SplitStrategy + 89, // 7: gitaly.CleanupRequest.repository:type_name -> gitaly.Repository + 89, // 8: gitaly.RepositorySizeRequest.repository:type_name -> gitaly.Repository + 89, // 9: gitaly.ApplyGitattributesRequest.repository:type_name -> gitaly.Repository + 89, // 10: gitaly.FetchRemoteRequest.repository:type_name -> gitaly.Repository + 71, // 11: gitaly.FetchRemoteRequest.remote_params:type_name -> gitaly.Remote + 89, // 12: gitaly.CreateRepositoryRequest.repository:type_name -> gitaly.Repository + 89, // 13: gitaly.GetArchiveRequest.repository:type_name -> gitaly.Repository + 1, // 14: gitaly.GetArchiveRequest.format:type_name -> gitaly.GetArchiveRequest.Format + 89, // 15: gitaly.HasLocalBranchesRequest.repository:type_name -> gitaly.Repository + 89, // 16: gitaly.FetchSourceBranchRequest.repository:type_name -> gitaly.Repository + 89, // 17: gitaly.FetchSourceBranchRequest.source_repository:type_name -> gitaly.Repository + 89, // 18: gitaly.FsckRequest.repository:type_name -> gitaly.Repository + 89, // 19: gitaly.WriteRefRequest.repository:type_name -> gitaly.Repository + 89, // 20: gitaly.FindMergeBaseRequest.repository:type_name -> gitaly.Repository + 89, // 21: gitaly.CreateForkRequest.repository:type_name -> gitaly.Repository + 89, // 22: gitaly.CreateForkRequest.source_repository:type_name -> gitaly.Repository + 89, // 23: gitaly.IsSquashInProgressRequest.repository:type_name -> gitaly.Repository + 89, // 24: gitaly.CreateRepositoryFromURLRequest.repository:type_name -> gitaly.Repository + 89, // 25: gitaly.CreateBundleRequest.repository:type_name -> gitaly.Repository + 89, // 26: gitaly.CreateBundleFromRefListRequest.repository:type_name -> gitaly.Repository + 89, // 27: gitaly.GetConfigRequest.repository:type_name -> gitaly.Repository + 89, // 28: gitaly.RestoreCustomHooksRequest.repository:type_name -> gitaly.Repository + 89, // 29: gitaly.BackupCustomHooksRequest.repository:type_name -> gitaly.Repository + 89, // 30: gitaly.CreateRepositoryFromBundleRequest.repository:type_name -> gitaly.Repository + 89, // 31: gitaly.FindLicenseRequest.repository:type_name -> gitaly.Repository + 89, // 32: gitaly.GetInfoAttributesRequest.repository:type_name -> gitaly.Repository + 89, // 33: gitaly.CalculateChecksumRequest.repository:type_name -> gitaly.Repository + 89, // 34: gitaly.GetSnapshotRequest.repository:type_name -> gitaly.Repository + 89, // 35: gitaly.CreateRepositoryFromSnapshotRequest.repository:type_name -> gitaly.Repository + 89, // 36: gitaly.GetRawChangesRequest.repository:type_name -> gitaly.Repository + 88, // 37: gitaly.GetRawChangesResponse.raw_changes:type_name -> gitaly.GetRawChangesResponse.RawChange + 89, // 38: gitaly.SearchFilesByNameRequest.repository:type_name -> gitaly.Repository + 89, // 39: gitaly.SearchFilesByContentRequest.repository:type_name -> gitaly.Repository + 89, // 40: gitaly.GetObjectDirectorySizeRequest.repository:type_name -> gitaly.Repository + 89, // 41: gitaly.CloneFromPoolRequest.repository:type_name -> gitaly.Repository + 90, // 42: gitaly.CloneFromPoolRequest.pool:type_name -> gitaly.ObjectPool + 71, // 43: gitaly.CloneFromPoolRequest.remote:type_name -> gitaly.Remote + 89, // 44: gitaly.CloneFromPoolInternalRequest.repository:type_name -> gitaly.Repository + 90, // 45: gitaly.CloneFromPoolInternalRequest.pool:type_name -> gitaly.ObjectPool + 89, // 46: gitaly.CloneFromPoolInternalRequest.source_repository:type_name -> gitaly.Repository + 89, // 47: gitaly.RemoveRepositoryRequest.repository:type_name -> gitaly.Repository + 89, // 48: gitaly.RenameRepositoryRequest.repository:type_name -> gitaly.Repository + 89, // 49: gitaly.ReplicateRepositoryRequest.repository:type_name -> gitaly.Repository + 89, // 50: gitaly.ReplicateRepositoryRequest.source:type_name -> gitaly.Repository + 89, // 51: gitaly.OptimizeRepositoryRequest.repository:type_name -> gitaly.Repository + 89, // 52: gitaly.SetFullPathRequest.repository:type_name -> gitaly.Repository + 2, // 53: gitaly.GetRawChangesResponse.RawChange.operation:type_name -> gitaly.GetRawChangesResponse.RawChange.Operation + 3, // 54: gitaly.RepositoryService.RepositoryExists:input_type -> gitaly.RepositoryExistsRequest + 5, // 55: gitaly.RepositoryService.RepackIncremental:input_type -> gitaly.RepackIncrementalRequest + 7, // 56: gitaly.RepositoryService.RepackFull:input_type -> gitaly.RepackFullRequest + 9, // 57: gitaly.RepositoryService.MidxRepack:input_type -> gitaly.MidxRepackRequest + 11, // 58: gitaly.RepositoryService.GarbageCollect:input_type -> gitaly.GarbageCollectRequest + 13, // 59: gitaly.RepositoryService.WriteCommitGraph:input_type -> gitaly.WriteCommitGraphRequest + 17, // 60: gitaly.RepositoryService.RepositorySize:input_type -> gitaly.RepositorySizeRequest + 19, // 61: gitaly.RepositoryService.ApplyGitattributes:input_type -> gitaly.ApplyGitattributesRequest + 21, // 62: gitaly.RepositoryService.FetchRemote:input_type -> gitaly.FetchRemoteRequest + 23, // 63: gitaly.RepositoryService.CreateRepository:input_type -> gitaly.CreateRepositoryRequest + 25, // 64: gitaly.RepositoryService.GetArchive:input_type -> gitaly.GetArchiveRequest + 27, // 65: gitaly.RepositoryService.HasLocalBranches:input_type -> gitaly.HasLocalBranchesRequest + 29, // 66: gitaly.RepositoryService.FetchSourceBranch:input_type -> gitaly.FetchSourceBranchRequest + 31, // 67: gitaly.RepositoryService.Fsck:input_type -> gitaly.FsckRequest + 33, // 68: gitaly.RepositoryService.WriteRef:input_type -> gitaly.WriteRefRequest + 35, // 69: gitaly.RepositoryService.FindMergeBase:input_type -> gitaly.FindMergeBaseRequest + 37, // 70: gitaly.RepositoryService.CreateFork:input_type -> gitaly.CreateForkRequest + 39, // 71: gitaly.RepositoryService.IsSquashInProgress:input_type -> gitaly.IsSquashInProgressRequest + 41, // 72: gitaly.RepositoryService.CreateRepositoryFromURL:input_type -> gitaly.CreateRepositoryFromURLRequest + 43, // 73: gitaly.RepositoryService.CreateBundle:input_type -> gitaly.CreateBundleRequest + 45, // 74: gitaly.RepositoryService.CreateBundleFromRefList:input_type -> gitaly.CreateBundleFromRefListRequest + 53, // 75: gitaly.RepositoryService.CreateRepositoryFromBundle:input_type -> gitaly.CreateRepositoryFromBundleRequest + 47, // 76: gitaly.RepositoryService.GetConfig:input_type -> gitaly.GetConfigRequest + 55, // 77: gitaly.RepositoryService.FindLicense:input_type -> gitaly.FindLicenseRequest + 57, // 78: gitaly.RepositoryService.GetInfoAttributes:input_type -> gitaly.GetInfoAttributesRequest + 59, // 79: gitaly.RepositoryService.CalculateChecksum:input_type -> gitaly.CalculateChecksumRequest + 15, // 80: gitaly.RepositoryService.Cleanup:input_type -> gitaly.CleanupRequest + 61, // 81: gitaly.RepositoryService.GetSnapshot:input_type -> gitaly.GetSnapshotRequest + 63, // 82: gitaly.RepositoryService.CreateRepositoryFromSnapshot:input_type -> gitaly.CreateRepositoryFromSnapshotRequest + 65, // 83: gitaly.RepositoryService.GetRawChanges:input_type -> gitaly.GetRawChangesRequest + 69, // 84: gitaly.RepositoryService.SearchFilesByContent:input_type -> gitaly.SearchFilesByContentRequest + 67, // 85: gitaly.RepositoryService.SearchFilesByName:input_type -> gitaly.SearchFilesByNameRequest + 49, // 86: gitaly.RepositoryService.RestoreCustomHooks:input_type -> gitaly.RestoreCustomHooksRequest + 51, // 87: gitaly.RepositoryService.BackupCustomHooks:input_type -> gitaly.BackupCustomHooksRequest + 72, // 88: gitaly.RepositoryService.GetObjectDirectorySize:input_type -> gitaly.GetObjectDirectorySizeRequest + 74, // 89: gitaly.RepositoryService.CloneFromPool:input_type -> gitaly.CloneFromPoolRequest + 76, // 90: gitaly.RepositoryService.CloneFromPoolInternal:input_type -> gitaly.CloneFromPoolInternalRequest + 78, // 91: gitaly.RepositoryService.RemoveRepository:input_type -> gitaly.RemoveRepositoryRequest + 80, // 92: gitaly.RepositoryService.RenameRepository:input_type -> gitaly.RenameRepositoryRequest + 82, // 93: gitaly.RepositoryService.ReplicateRepository:input_type -> gitaly.ReplicateRepositoryRequest + 84, // 94: gitaly.RepositoryService.OptimizeRepository:input_type -> gitaly.OptimizeRepositoryRequest + 86, // 95: gitaly.RepositoryService.SetFullPath:input_type -> gitaly.SetFullPathRequest + 4, // 96: gitaly.RepositoryService.RepositoryExists:output_type -> gitaly.RepositoryExistsResponse + 6, // 97: gitaly.RepositoryService.RepackIncremental:output_type -> gitaly.RepackIncrementalResponse + 8, // 98: gitaly.RepositoryService.RepackFull:output_type -> gitaly.RepackFullResponse + 10, // 99: gitaly.RepositoryService.MidxRepack:output_type -> gitaly.MidxRepackResponse + 12, // 100: gitaly.RepositoryService.GarbageCollect:output_type -> gitaly.GarbageCollectResponse + 14, // 101: gitaly.RepositoryService.WriteCommitGraph:output_type -> gitaly.WriteCommitGraphResponse + 18, // 102: gitaly.RepositoryService.RepositorySize:output_type -> gitaly.RepositorySizeResponse + 20, // 103: gitaly.RepositoryService.ApplyGitattributes:output_type -> gitaly.ApplyGitattributesResponse + 22, // 104: gitaly.RepositoryService.FetchRemote:output_type -> gitaly.FetchRemoteResponse + 24, // 105: gitaly.RepositoryService.CreateRepository:output_type -> gitaly.CreateRepositoryResponse + 26, // 106: gitaly.RepositoryService.GetArchive:output_type -> gitaly.GetArchiveResponse + 28, // 107: gitaly.RepositoryService.HasLocalBranches:output_type -> gitaly.HasLocalBranchesResponse + 30, // 108: gitaly.RepositoryService.FetchSourceBranch:output_type -> gitaly.FetchSourceBranchResponse + 32, // 109: gitaly.RepositoryService.Fsck:output_type -> gitaly.FsckResponse + 34, // 110: gitaly.RepositoryService.WriteRef:output_type -> gitaly.WriteRefResponse + 36, // 111: gitaly.RepositoryService.FindMergeBase:output_type -> gitaly.FindMergeBaseResponse + 38, // 112: gitaly.RepositoryService.CreateFork:output_type -> gitaly.CreateForkResponse + 40, // 113: gitaly.RepositoryService.IsSquashInProgress:output_type -> gitaly.IsSquashInProgressResponse + 42, // 114: gitaly.RepositoryService.CreateRepositoryFromURL:output_type -> gitaly.CreateRepositoryFromURLResponse + 44, // 115: gitaly.RepositoryService.CreateBundle:output_type -> gitaly.CreateBundleResponse + 46, // 116: gitaly.RepositoryService.CreateBundleFromRefList:output_type -> gitaly.CreateBundleFromRefListResponse + 54, // 117: gitaly.RepositoryService.CreateRepositoryFromBundle:output_type -> gitaly.CreateRepositoryFromBundleResponse + 48, // 118: gitaly.RepositoryService.GetConfig:output_type -> gitaly.GetConfigResponse + 56, // 119: gitaly.RepositoryService.FindLicense:output_type -> gitaly.FindLicenseResponse + 58, // 120: gitaly.RepositoryService.GetInfoAttributes:output_type -> gitaly.GetInfoAttributesResponse + 60, // 121: gitaly.RepositoryService.CalculateChecksum:output_type -> gitaly.CalculateChecksumResponse + 16, // 122: gitaly.RepositoryService.Cleanup:output_type -> gitaly.CleanupResponse + 62, // 123: gitaly.RepositoryService.GetSnapshot:output_type -> gitaly.GetSnapshotResponse + 64, // 124: gitaly.RepositoryService.CreateRepositoryFromSnapshot:output_type -> gitaly.CreateRepositoryFromSnapshotResponse + 66, // 125: gitaly.RepositoryService.GetRawChanges:output_type -> gitaly.GetRawChangesResponse + 70, // 126: gitaly.RepositoryService.SearchFilesByContent:output_type -> gitaly.SearchFilesByContentResponse + 68, // 127: gitaly.RepositoryService.SearchFilesByName:output_type -> gitaly.SearchFilesByNameResponse + 50, // 128: gitaly.RepositoryService.RestoreCustomHooks:output_type -> gitaly.RestoreCustomHooksResponse + 52, // 129: gitaly.RepositoryService.BackupCustomHooks:output_type -> gitaly.BackupCustomHooksResponse + 73, // 130: gitaly.RepositoryService.GetObjectDirectorySize:output_type -> gitaly.GetObjectDirectorySizeResponse + 75, // 131: gitaly.RepositoryService.CloneFromPool:output_type -> gitaly.CloneFromPoolResponse + 77, // 132: gitaly.RepositoryService.CloneFromPoolInternal:output_type -> gitaly.CloneFromPoolInternalResponse + 79, // 133: gitaly.RepositoryService.RemoveRepository:output_type -> gitaly.RemoveRepositoryResponse + 81, // 134: gitaly.RepositoryService.RenameRepository:output_type -> gitaly.RenameRepositoryResponse + 83, // 135: gitaly.RepositoryService.ReplicateRepository:output_type -> gitaly.ReplicateRepositoryResponse + 85, // 136: gitaly.RepositoryService.OptimizeRepository:output_type -> gitaly.OptimizeRepositoryResponse + 87, // 137: gitaly.RepositoryService.SetFullPath:output_type -> gitaly.SetFullPathResponse + 96, // [96:138] is the sub-list for method output_type + 54, // [54:96] is the sub-list for method input_type + 54, // [54:54] is the sub-list for extension type_name + 54, // [54:54] is the sub-list for extension extendee + 0, // [0:54] is the sub-list for field type_name } func init() { file_repository_service_proto_init() } @@ -6522,54 +6185,6 @@ func file_repository_service_proto_init() { } } file_repository_service_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetConfigRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_repository_service_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetConfigResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_repository_service_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteConfigRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_repository_service_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteConfigResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_repository_service_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RestoreCustomHooksRequest); i { case 0: return &v.state @@ -6581,7 +6196,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RestoreCustomHooksResponse); i { case 0: return &v.state @@ -6593,7 +6208,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BackupCustomHooksRequest); i { case 0: return &v.state @@ -6605,7 +6220,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BackupCustomHooksResponse); i { case 0: return &v.state @@ -6617,7 +6232,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateRepositoryFromBundleRequest); i { case 0: return &v.state @@ -6629,7 +6244,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateRepositoryFromBundleResponse); i { case 0: return &v.state @@ -6641,7 +6256,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindLicenseRequest); i { case 0: return &v.state @@ -6653,7 +6268,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindLicenseResponse); i { case 0: return &v.state @@ -6665,7 +6280,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetInfoAttributesRequest); i { case 0: return &v.state @@ -6677,7 +6292,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetInfoAttributesResponse); i { case 0: return &v.state @@ -6689,7 +6304,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CalculateChecksumRequest); i { case 0: return &v.state @@ -6701,7 +6316,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CalculateChecksumResponse); i { case 0: return &v.state @@ -6713,7 +6328,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSnapshotRequest); i { case 0: return &v.state @@ -6725,7 +6340,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSnapshotResponse); i { case 0: return &v.state @@ -6737,7 +6352,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateRepositoryFromSnapshotRequest); i { case 0: return &v.state @@ -6749,7 +6364,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateRepositoryFromSnapshotResponse); i { case 0: return &v.state @@ -6761,7 +6376,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetRawChangesRequest); i { case 0: return &v.state @@ -6773,7 +6388,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetRawChangesResponse); i { case 0: return &v.state @@ -6785,7 +6400,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SearchFilesByNameRequest); i { case 0: return &v.state @@ -6797,7 +6412,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SearchFilesByNameResponse); i { case 0: return &v.state @@ -6809,7 +6424,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SearchFilesByContentRequest); i { case 0: return &v.state @@ -6821,7 +6436,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SearchFilesByContentResponse); i { case 0: return &v.state @@ -6833,7 +6448,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Remote); i { case 0: return &v.state @@ -6845,7 +6460,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetObjectDirectorySizeRequest); i { case 0: return &v.state @@ -6857,7 +6472,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetObjectDirectorySizeResponse); i { case 0: return &v.state @@ -6869,7 +6484,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CloneFromPoolRequest); i { case 0: return &v.state @@ -6881,7 +6496,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CloneFromPoolResponse); i { case 0: return &v.state @@ -6893,7 +6508,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CloneFromPoolInternalRequest); i { case 0: return &v.state @@ -6905,7 +6520,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CloneFromPoolInternalResponse); i { case 0: return &v.state @@ -6917,7 +6532,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveRepositoryRequest); i { case 0: return &v.state @@ -6929,7 +6544,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveRepositoryResponse); i { case 0: return &v.state @@ -6941,7 +6556,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RenameRepositoryRequest); i { case 0: return &v.state @@ -6953,7 +6568,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RenameRepositoryResponse); i { case 0: return &v.state @@ -6965,7 +6580,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReplicateRepositoryRequest); i { case 0: return &v.state @@ -6977,7 +6592,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReplicateRepositoryResponse); i { case 0: return &v.state @@ -6989,7 +6604,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*OptimizeRepositoryRequest); i { case 0: return &v.state @@ -7001,7 +6616,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*OptimizeRepositoryResponse); i { case 0: return &v.state @@ -7013,7 +6628,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetFullPathRequest); i { case 0: return &v.state @@ -7025,7 +6640,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetFullPathResponse); i { case 0: return &v.state @@ -7037,19 +6652,7 @@ func file_repository_service_proto_init() { return nil } } - file_repository_service_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetConfigRequest_Entry); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_repository_service_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { + file_repository_service_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetRawChangesResponse_RawChange); i { case 0: return &v.state @@ -7062,18 +6665,13 @@ func file_repository_service_proto_init() { } } } - file_repository_service_proto_msgTypes[89].OneofWrappers = []interface{}{ - (*SetConfigRequest_Entry_ValueStr)(nil), - (*SetConfigRequest_Entry_ValueInt32)(nil), - (*SetConfigRequest_Entry_ValueBool)(nil), - } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_repository_service_proto_rawDesc, NumEnums: 3, - NumMessages: 91, + NumMessages: 86, NumExtensions: 0, NumServices: 1, }, diff --git a/proto/go/gitalypb/repository-service_grpc.pb.go b/proto/go/gitalypb/repository-service_grpc.pb.go index dfd6b38b3..d21f68e35 100644 --- a/proto/go/gitalypb/repository-service_grpc.pb.go +++ b/proto/go/gitalypb/repository-service_grpc.pb.go @@ -51,18 +51,6 @@ type RepositoryServiceClient interface { // GetConfig reads the target repository's gitconfig and streams its contents // back. Returns a NotFound error in case no gitconfig was found. GetConfig(ctx context.Context, in *GetConfigRequest, opts ...grpc.CallOption) (RepositoryService_GetConfigClient, error) - // Deprecated: Do not use. - // SetConfig writes a set of config entries into the target repository's - // gitconfig. This RPC is deprecated with no general replacement: modifying - // the on-disk gitconfig is not supported anymore. The only usecase that is - // still supported is writing "gitlab.fullpath" via the new `SetFullPath()` - // RPC. - SetConfig(ctx context.Context, in *SetConfigRequest, opts ...grpc.CallOption) (*SetConfigResponse, error) - // Deprecated: Do not use. - // DeleteConfig deletes a set of config entries from the target repository's - // gitconfig. This RPC is deprecated with no replacement: modifying the - // on-disk gitconfig is not supported anymore. - DeleteConfig(ctx context.Context, in *DeleteConfigRequest, opts ...grpc.CallOption) (*DeleteConfigResponse, error) FindLicense(ctx context.Context, in *FindLicenseRequest, opts ...grpc.CallOption) (*FindLicenseResponse, error) GetInfoAttributes(ctx context.Context, in *GetInfoAttributesRequest, opts ...grpc.CallOption) (RepositoryService_GetInfoAttributesClient, error) CalculateChecksum(ctx context.Context, in *CalculateChecksumRequest, opts ...grpc.CallOption) (*CalculateChecksumResponse, error) @@ -423,26 +411,6 @@ func (x *repositoryServiceGetConfigClient) Recv() (*GetConfigResponse, error) { return m, nil } -// Deprecated: Do not use. -func (c *repositoryServiceClient) SetConfig(ctx context.Context, in *SetConfigRequest, opts ...grpc.CallOption) (*SetConfigResponse, error) { - out := new(SetConfigResponse) - err := c.cc.Invoke(ctx, "/gitaly.RepositoryService/SetConfig", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// Deprecated: Do not use. -func (c *repositoryServiceClient) DeleteConfig(ctx context.Context, in *DeleteConfigRequest, opts ...grpc.CallOption) (*DeleteConfigResponse, error) { - out := new(DeleteConfigResponse) - err := c.cc.Invoke(ctx, "/gitaly.RepositoryService/DeleteConfig", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *repositoryServiceClient) FindLicense(ctx context.Context, in *FindLicenseRequest, opts ...grpc.CallOption) (*FindLicenseResponse, error) { out := new(FindLicenseResponse) err := c.cc.Invoke(ctx, "/gitaly.RepositoryService/FindLicense", in, out, opts...) @@ -814,18 +782,6 @@ type RepositoryServiceServer interface { // GetConfig reads the target repository's gitconfig and streams its contents // back. Returns a NotFound error in case no gitconfig was found. GetConfig(*GetConfigRequest, RepositoryService_GetConfigServer) error - // Deprecated: Do not use. - // SetConfig writes a set of config entries into the target repository's - // gitconfig. This RPC is deprecated with no general replacement: modifying - // the on-disk gitconfig is not supported anymore. The only usecase that is - // still supported is writing "gitlab.fullpath" via the new `SetFullPath()` - // RPC. - SetConfig(context.Context, *SetConfigRequest) (*SetConfigResponse, error) - // Deprecated: Do not use. - // DeleteConfig deletes a set of config entries from the target repository's - // gitconfig. This RPC is deprecated with no replacement: modifying the - // on-disk gitconfig is not supported anymore. - DeleteConfig(context.Context, *DeleteConfigRequest) (*DeleteConfigResponse, error) FindLicense(context.Context, *FindLicenseRequest) (*FindLicenseResponse, error) GetInfoAttributes(*GetInfoAttributesRequest, RepositoryService_GetInfoAttributesServer) error CalculateChecksum(context.Context, *CalculateChecksumRequest) (*CalculateChecksumResponse, error) @@ -928,12 +884,6 @@ func (UnimplementedRepositoryServiceServer) CreateRepositoryFromBundle(Repositor func (UnimplementedRepositoryServiceServer) GetConfig(*GetConfigRequest, RepositoryService_GetConfigServer) error { return status.Errorf(codes.Unimplemented, "method GetConfig not implemented") } -func (UnimplementedRepositoryServiceServer) SetConfig(context.Context, *SetConfigRequest) (*SetConfigResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetConfig not implemented") -} -func (UnimplementedRepositoryServiceServer) DeleteConfig(context.Context, *DeleteConfigRequest) (*DeleteConfigResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteConfig not implemented") -} func (UnimplementedRepositoryServiceServer) FindLicense(context.Context, *FindLicenseRequest) (*FindLicenseResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method FindLicense not implemented") } @@ -1443,42 +1393,6 @@ func (x *repositoryServiceGetConfigServer) Send(m *GetConfigResponse) error { return x.ServerStream.SendMsg(m) } -func _RepositoryService_SetConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetConfigRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(RepositoryServiceServer).SetConfig(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/gitaly.RepositoryService/SetConfig", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(RepositoryServiceServer).SetConfig(ctx, req.(*SetConfigRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _RepositoryService_DeleteConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteConfigRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(RepositoryServiceServer).DeleteConfig(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/gitaly.RepositoryService/DeleteConfig", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(RepositoryServiceServer).DeleteConfig(ctx, req.(*DeleteConfigRequest)) - } - return interceptor(ctx, in, info, handler) -} - func _RepositoryService_FindLicense_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(FindLicenseRequest) if err := dec(in); err != nil { @@ -1927,14 +1841,6 @@ var RepositoryService_ServiceDesc = grpc.ServiceDesc{ Handler: _RepositoryService_CreateRepositoryFromURL_Handler, }, { - MethodName: "SetConfig", - Handler: _RepositoryService_SetConfig_Handler, - }, - { - MethodName: "DeleteConfig", - Handler: _RepositoryService_DeleteConfig_Handler, - }, - { MethodName: "FindLicense", Handler: _RepositoryService_FindLicense_Handler, }, diff --git a/proto/repository-service.proto b/proto/repository-service.proto index bc4b6f245..b512e571f 100644 --- a/proto/repository-service.proto +++ b/proto/repository-service.proto @@ -142,28 +142,6 @@ service RepositoryService { }; } - // SetConfig writes a set of config entries into the target repository's - // gitconfig. This RPC is deprecated with no general replacement: modifying - // the on-disk gitconfig is not supported anymore. The only usecase that is - // still supported is writing "gitlab.fullpath" via the new `SetFullPath()` - // RPC. - rpc SetConfig(SetConfigRequest) returns (SetConfigResponse) { - option deprecated = true; - option (op_type) = { - op: MUTATOR - }; - } - - // DeleteConfig deletes a set of config entries from the target repository's - // gitconfig. This RPC is deprecated with no replacement: modifying the - // on-disk gitconfig is not supported anymore. - rpc DeleteConfig(DeleteConfigRequest) returns (DeleteConfigResponse) { - option deprecated = true; - option (op_type) = { - op: MUTATOR - }; - } - rpc FindLicense(FindLicenseRequest) returns (FindLicenseResponse) { option (op_type) = { op: ACCESSOR @@ -536,28 +514,6 @@ message GetConfigResponse { bytes data = 1; } -message SetConfigRequest { - Repository repository = 1 [(target_repository)=true]; - message Entry { - string key = 1; - oneof value { - string value_str = 2; - int32 value_int32 = 3; - bool value_bool = 4; - } - } - repeated Entry entries = 2; -} - -message SetConfigResponse {} - -message DeleteConfigRequest { - Repository repository = 1 [(target_repository)=true]; - repeated string keys = 2; -} - -message DeleteConfigResponse {} - message RestoreCustomHooksRequest { Repository repository = 1 [(target_repository)=true]; bytes data = 2; diff --git a/ruby/lib/gitaly_server/repository_service.rb b/ruby/lib/gitaly_server/repository_service.rb index d4861ec69..cd84ee180 100644 --- a/ruby/lib/gitaly_server/repository_service.rb +++ b/ruby/lib/gitaly_server/repository_service.rb @@ -4,28 +4,6 @@ module GitalyServer class RepositoryService < Gitaly::RepositoryService::Service include Utils - def set_config(request, call) - repo = Gitlab::Git::Repository.from_gitaly(request.repository, call) - - request.entries.each do |entry| - key = entry.key - value = case entry.value - when :value_str - entry.value_str - when :value_int32 - entry.value_int32 - when :value_bool - entry.value_bool - else - raise GRPC::InvalidArgument, "unknown entry type: #{entry.value}" - end - - repo.rugged.config[key] = value - end - - Gitaly::SetConfigResponse.new - end - def find_license(request, call) repo = Gitlab::Git::Repository.from_gitaly(request.repository, call) diff --git a/ruby/proto/gitaly/repository-service_pb.rb b/ruby/proto/gitaly/repository-service_pb.rb index f702f902b..4db2937f4 100644 --- a/ruby/proto/gitaly/repository-service_pb.rb +++ b/ruby/proto/gitaly/repository-service_pb.rb @@ -175,26 +175,6 @@ Google::Protobuf::DescriptorPool.generated_pool.build do add_message "gitaly.GetConfigResponse" do optional :data, :bytes, 1 end - add_message "gitaly.SetConfigRequest" do - optional :repository, :message, 1, "gitaly.Repository" - repeated :entries, :message, 2, "gitaly.SetConfigRequest.Entry" - end - add_message "gitaly.SetConfigRequest.Entry" do - optional :key, :string, 1 - oneof :value do - optional :value_str, :string, 2 - optional :value_int32, :int32, 3 - optional :value_bool, :bool, 4 - end - end - add_message "gitaly.SetConfigResponse" do - end - add_message "gitaly.DeleteConfigRequest" do - optional :repository, :message, 1, "gitaly.Repository" - repeated :keys, :string, 2 - end - add_message "gitaly.DeleteConfigResponse" do - end add_message "gitaly.RestoreCustomHooksRequest" do optional :repository, :message, 1, "gitaly.Repository" optional :data, :bytes, 2 @@ -398,11 +378,6 @@ module Gitaly CreateBundleFromRefListResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.CreateBundleFromRefListResponse").msgclass GetConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.GetConfigRequest").msgclass GetConfigResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.GetConfigResponse").msgclass - SetConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.SetConfigRequest").msgclass - SetConfigRequest::Entry = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.SetConfigRequest.Entry").msgclass - SetConfigResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.SetConfigResponse").msgclass - DeleteConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.DeleteConfigRequest").msgclass - DeleteConfigResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.DeleteConfigResponse").msgclass RestoreCustomHooksRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.RestoreCustomHooksRequest").msgclass RestoreCustomHooksResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.RestoreCustomHooksResponse").msgclass BackupCustomHooksRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.BackupCustomHooksRequest").msgclass diff --git a/ruby/proto/gitaly/repository-service_services_pb.rb b/ruby/proto/gitaly/repository-service_services_pb.rb index b913f67d3..37c2187f4 100644 --- a/ruby/proto/gitaly/repository-service_services_pb.rb +++ b/ruby/proto/gitaly/repository-service_services_pb.rb @@ -46,16 +46,6 @@ module Gitaly # GetConfig reads the target repository's gitconfig and streams its contents # back. Returns a NotFound error in case no gitconfig was found. rpc :GetConfig, Gitaly::GetConfigRequest, stream(Gitaly::GetConfigResponse) - # SetConfig writes a set of config entries into the target repository's - # gitconfig. This RPC is deprecated with no general replacement: modifying - # the on-disk gitconfig is not supported anymore. The only usecase that is - # still supported is writing "gitlab.fullpath" via the new `SetFullPath()` - # RPC. - rpc :SetConfig, Gitaly::SetConfigRequest, Gitaly::SetConfigResponse - # DeleteConfig deletes a set of config entries from the target repository's - # gitconfig. This RPC is deprecated with no replacement: modifying the - # on-disk gitconfig is not supported anymore. - rpc :DeleteConfig, Gitaly::DeleteConfigRequest, Gitaly::DeleteConfigResponse rpc :FindLicense, Gitaly::FindLicenseRequest, Gitaly::FindLicenseResponse rpc :GetInfoAttributes, Gitaly::GetInfoAttributesRequest, stream(Gitaly::GetInfoAttributesResponse) rpc :CalculateChecksum, Gitaly::CalculateChecksumRequest, Gitaly::CalculateChecksumResponse |