diff options
author | Zeger-Jan van de Weg <git@zjvandeweg.nl> | 2019-12-06 22:00:41 +0300 |
---|---|---|
committer | John Cai <jcai@gitlab.com> | 2019-12-06 22:00:41 +0300 |
commit | 20f3b408790f51f23f5f11eeefa41a360da0208a (patch) | |
tree | 73ebd16c91ad39f4f2beae2f56e3ae79cbf20ae4 | |
parent | 696f74590e9fb67bb713f6c3c36904a76c3a0cd9 (diff) |
PreFetch: remove unused RPC
This RPC has never been used in production as it contained a bug and
there were better ways to handle their intent.
Closes: https://gitlab.com/gitlab-org/gitaly/issues/2163
-rw-r--r-- | changelogs/unreleased/zj-remove-pre-fetch.yml | 5 | ||||
-rw-r--r-- | internal/praefect/protoregistry/protoregistry_test.go | 1 | ||||
-rw-r--r-- | internal/service/repository/pre_fetch.go | 155 | ||||
-rw-r--r-- | internal/service/repository/pre_fetch_test.go | 201 | ||||
-rw-r--r-- | proto/go/gitalypb/repository-service.pb.go | 526 | ||||
-rw-r--r-- | proto/repository-service.proto | 14 | ||||
-rw-r--r-- | ruby/proto/gitaly/repository-service_pb.rb | 9 | ||||
-rw-r--r-- | ruby/proto/gitaly/repository-service_services_pb.rb | 1 |
8 files changed, 204 insertions, 708 deletions
diff --git a/changelogs/unreleased/zj-remove-pre-fetch.yml b/changelogs/unreleased/zj-remove-pre-fetch.yml new file mode 100644 index 000000000..29bfc1364 --- /dev/null +++ b/changelogs/unreleased/zj-remove-pre-fetch.yml @@ -0,0 +1,5 @@ +--- +title: 'PreFetch: remove unused RPC' +merge_request: 1675 +author: +type: deprecated diff --git a/internal/praefect/protoregistry/protoregistry_test.go b/internal/praefect/protoregistry/protoregistry_test.go index 6ef10bc43..8e4d32e3c 100644 --- a/internal/praefect/protoregistry/protoregistry_test.go +++ b/internal/praefect/protoregistry/protoregistry_test.go @@ -151,7 +151,6 @@ func TestPopulatesProtoRegistry(t *testing.T) { "SearchFilesByName": protoregistry.OpAccessor, "RestoreCustomHooks": protoregistry.OpMutator, "BackupCustomHooks": protoregistry.OpAccessor, - "PreFetch": protoregistry.OpMutator, "FetchHTTPRemote": protoregistry.OpMutator, }, "ServerService": map[string]protoregistry.OpType{ diff --git a/internal/service/repository/pre_fetch.go b/internal/service/repository/pre_fetch.go deleted file mode 100644 index 7c7813152..000000000 --- a/internal/service/repository/pre_fetch.go +++ /dev/null @@ -1,155 +0,0 @@ -package repository - -import ( - "context" - - "gitlab.com/gitlab-org/gitaly/internal/helper" - "gitlab.com/gitlab-org/gitaly/proto/go/gitalypb" -) - -// PreFetch is unsafe https://gitlab.com/gitlab-org/gitaly/issues/1552 -func (s *server) PreFetch(ctx context.Context, req *gitalypb.PreFetchRequest) (*gitalypb.PreFetchResponse, error) { - return nil, helper.Unimplemented - - /* - if err := validatePreFetchRequest(req); err != nil { - return nil, helper.ErrInvalidArgument(err) - } - - if err := validatePreFetchPrecondition(req); err != nil { - return nil, helper.ErrPreconditionFailed(err) - } - - if err := preFetch(ctx, req); err != nil { - return nil, helper.ErrInternal(err) - } - - return &gitalypb.PreFetchResponse{}, nil - */ -} - -/* -func validatePreFetchRequest(req *gitalypb.PreFetchRequest) error { - if req.GetTargetRepository() == nil { - return errors.New("repository is empty") - } - - if req.GetSourceRepository() == nil { - return errors.New("source repository is empty") - } - - if req.GetSourceRepository().GetStorageName() != req.GetTargetRepository().GetStorageName() { - return errors.New("source repository and target repository are not on the same storage") - } - - return nil -} - -func validatePreFetchPrecondition(req *gitalypb.PreFetchRequest) error { - targetRepositoryFullPath, err := helper.GetPath(req.GetTargetRepository()) - if err != nil { - return fmt.Errorf("getting target repository path: %v", err) - } - - if _, err := os.Stat(targetRepositoryFullPath); !os.IsNotExist(err) { - return errors.New("target reopsitory already exists") - } - - objectPool, err := objectpool.FromProto(req.GetObjectPool()) - if err != nil { - return fmt.Errorf("getting object pool from repository: %v", err) - } - - if !objectPool.Exists() { - return errors.New("object pool does not exist") - } - - if !objectPool.IsValid() { - return errors.New("object pool is not valid") - } - - linked, err := objectPool.LinkedToRepository(req.GetSourceRepository()) - if err != nil { - return fmt.Errorf("error when testing if source repository is linked to pool repository: %v", err) - } - - if !linked { - return errors.New("source repository is not linked to pool repository") - } - - return nil -} - -func preFetch(ctx context.Context, req *gitalypb.PreFetchRequest) error { - targetRepository, sourceRepository := req.GetTargetRepository(), req.GetSourceRepository() - - sourceRepositoryFullPath, err := helper.GetPath(sourceRepository) - if err != nil { - return fmt.Errorf("getting source repository path: %v", err) - } - - targetRepositoryFullPath, err := helper.GetPath(targetRepository) - if err != nil { - return fmt.Errorf("getting target repository path: %v", err) - } - - targetPath, err := helper.GetPath(targetRepository) - if err != nil { - return fmt.Errorf("getting target repository path: %v", err) - } - - dir := filepath.Dir(targetPath) - - tmpRepoDir, err := ioutil.TempDir(dir, "repo") - if err != nil { - return fmt.Errorf("creating temp directory for repo: %v", err) - } - defer os.RemoveAll(tmpRepoDir) - - storagePath, err := helper.GetStorageByName(targetRepository.GetStorageName()) - if err != nil { - return fmt.Errorf("getting storage path for target repo: %v", err) - } - - relativePath, err := filepath.Rel(storagePath, tmpRepoDir) - if err != nil { - return fmt.Errorf("getting relative path for temp repo: %v", err) - } - - tmpRepo := &gitalypb.Repository{ - RelativePath: relativePath, - StorageName: targetRepository.GetStorageName(), - } - - args := []string{ - "clone", - "--bare", - "--shared", - "--", - sourceRepositoryFullPath, - tmpRepoDir, - } - - cmd, err := git.BareCommand(ctx, nil, nil, nil, nil, args...) - if err != nil { - return fmt.Errorf("clone command: %v", err) - } - - if err := cmd.Wait(); err != nil { - return fmt.Errorf("clone command: %v", err) - } - - objectPool, err := objectpool.FromProto(req.GetObjectPool()) - if err != nil { - return fmt.Errorf("getting object pool: %v", err) - } - - // As of 11.9, Link will still create remotes in the object pool. In this case the remotes will point to the tempoarary - // directory. This is OK because we don't plan on using these remotes, and will remove them in the future. - if err := objectPool.Link(ctx, tmpRepo); err != nil { - return fmt.Errorf("linking: %v", err) - } - - return os.Rename(tmpRepoDir, targetRepositoryFullPath) -} -*/ diff --git a/internal/service/repository/pre_fetch_test.go b/internal/service/repository/pre_fetch_test.go deleted file mode 100644 index d54e64a75..000000000 --- a/internal/service/repository/pre_fetch_test.go +++ /dev/null @@ -1,201 +0,0 @@ -package repository - -import ( - "os" - "path/filepath" - "strconv" - "strings" - "testing" - - "google.golang.org/grpc/codes" - - "github.com/stretchr/testify/assert" - "github.com/stretchr/testify/require" - "gitlab.com/gitlab-org/gitaly/internal/git/objectpool" - "gitlab.com/gitlab-org/gitaly/internal/helper/text" - "gitlab.com/gitlab-org/gitaly/internal/testhelper" - "gitlab.com/gitlab-org/gitaly/proto/go/gitalypb" -) - -// getForkDestination creates a repo struct and path, but does not actually create the directory -func getForkDestination(t *testing.T) (*gitalypb.Repository, string, func()) { - folder, err := text.RandomHex(6) - require.NoError(t, err) - forkRepoPath := filepath.Join(testhelper.GitlabTestStoragePath(), folder) - forkedRepo := &gitalypb.Repository{StorageName: "default", RelativePath: folder, GlRepository: "project-1"} - - return forkedRepo, forkRepoPath, func() { os.RemoveAll(forkRepoPath) } -} - -// getGitObjectDirSize gets the number of 1k blocks of a git object directory -func getGitObjectDirSize(t *testing.T, repoPath string) int64 { - output := testhelper.MustRunCommand(t, nil, "du", "-s", "-k", filepath.Join(repoPath, "objects")) - if len(output) < 2 { - t.Error("invalid output of du -s -k") - } - - outputSplit := strings.SplitN(string(output), "\t", 2) - blocks, err := strconv.ParseInt(outputSplit[0], 10, 64) - require.NoError(t, err) - - return blocks -} - -func TestPreFetch(t *testing.T) { - t.Skip("PreFetch is unsafe https://gitlab.com/gitlab-org/gitaly/issues/1552") - - server, serverSocketPath := runRepoServer(t) - defer server.Stop() - - client, conn := newRepositoryClient(t, serverSocketPath) - defer conn.Close() - - ctx, cancel := testhelper.Context() - defer cancel() - - testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepo(t) - defer cleanupFn() - - pool, poolRepo := NewTestObjectPool(t) - defer pool.Remove(ctx) - - require.NoError(t, pool.Create(ctx, testRepo)) - require.NoError(t, pool.Link(ctx, testRepo)) - - testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "gc") - - forkedRepo, forkRepoPath, forkRepoCleanup := getForkDestination(t) - defer forkRepoCleanup() - - req := &gitalypb.PreFetchRequest{ - TargetRepository: forkedRepo, - SourceRepository: testRepo, - ObjectPool: &gitalypb.ObjectPool{ - Repository: poolRepo, - }, - } - - _, err := client.PreFetch(ctx, req) - require.NoError(t, err) - - assert.True(t, getGitObjectDirSize(t, forkRepoPath) < 40) - - // feature is a branch known to exist in the source repository. By looking it up in the target - // we establish that the target has branches, even though (as we saw above) it has no objects. - testhelper.MustRunCommand(t, nil, "git", "-C", forkRepoPath, "show-ref", "feature") -} - -func NewTestObjectPool(t *testing.T) (*objectpool.ObjectPool, *gitalypb.Repository) { - repo, _, relativePath := testhelper.CreateRepo(t, testhelper.GitlabTestStoragePath()) - - pool, err := objectpool.NewObjectPool("default", relativePath) - require.NoError(t, err) - - return pool, repo -} - -func TestPreFetchValidationError(t *testing.T) { - t.Skip("PreFetch is unsafe https://gitlab.com/gitlab-org/gitaly/issues/1552") - - server, serverSocketPath := runRepoServer(t) - defer server.Stop() - - client, conn := newRepositoryClient(t, serverSocketPath) - defer conn.Close() - - ctx, cancel := testhelper.Context() - defer cancel() - - testRepo, _, cleanupFn := testhelper.NewTestRepo(t) - defer cleanupFn() - - pool, poolRepo := NewTestObjectPool(t) - defer pool.Remove(ctx) - - require.NoError(t, pool.Create(ctx, testRepo)) - require.NoError(t, pool.Link(ctx, testRepo)) - - forkedRepo, _, forkRepoCleanup := getForkDestination(t) - defer forkRepoCleanup() - - badPool, _, cleanupBadPool := testhelper.NewTestRepo(t) - defer cleanupBadPool() - - badPool.RelativePath = "bad_path" - - testCases := []struct { - description string - sourceRepo *gitalypb.Repository - targetRepo *gitalypb.Repository - objectPool *gitalypb.Repository - code codes.Code - }{ - { - description: "source repository nil", - sourceRepo: nil, - targetRepo: forkedRepo, - objectPool: poolRepo, - code: codes.InvalidArgument, - }, - { - description: "target repository nil", - sourceRepo: testRepo, - targetRepo: nil, - objectPool: poolRepo, - code: codes.InvalidArgument, - }, - { - description: "source/target repository have different storage", - sourceRepo: testRepo, - targetRepo: &gitalypb.Repository{ - StorageName: "specialstorage", - RelativePath: forkedRepo.RelativePath, - GlRepository: forkedRepo.GlRepository, - }, - objectPool: poolRepo, - code: codes.InvalidArgument, - }, - { - description: "bad pool repository", - sourceRepo: testRepo, - targetRepo: forkedRepo, - objectPool: badPool, - code: codes.FailedPrecondition, - }, - } - - for _, tc := range testCases { - t.Run(tc.description, func(t *testing.T) { - _, err := client.PreFetch(ctx, &gitalypb.PreFetchRequest{ - TargetRepository: tc.targetRepo, - SourceRepository: tc.sourceRepo, - ObjectPool: &gitalypb.ObjectPool{ - Repository: tc.objectPool, - }, - }) - testhelper.RequireGrpcError(t, err, tc.code) - }) - } -} - -func TestPreFetchDirectoryExists(t *testing.T) { - t.Skip("PreFetch is unsafe https://gitlab.com/gitlab-org/gitaly/issues/1552") - - server, serverSocketPath := runRepoServer(t) - defer server.Stop() - - client, conn := newRepositoryClient(t, serverSocketPath) - defer conn.Close() - - testRepo, _, cleanupFn := testhelper.NewTestRepo(t) - defer cleanupFn() - - forkedRepo, _, forkRepoCleanup := testhelper.InitBareRepo(t) - defer forkRepoCleanup() - - ctx, cancel := testhelper.Context() - defer cancel() - - _, err := client.PreFetch(ctx, &gitalypb.PreFetchRequest{TargetRepository: forkedRepo, SourceRepository: testRepo}) - testhelper.RequireGrpcError(t, err, codes.FailedPrecondition) -} diff --git a/proto/go/gitalypb/repository-service.pb.go b/proto/go/gitalypb/repository-service.pb.go index d48fc769e..eb1592646 100644 --- a/proto/go/gitalypb/repository-service.pb.go +++ b/proto/go/gitalypb/repository-service.pb.go @@ -3108,92 +3108,6 @@ func (m *SearchFilesByContentResponse) GetEndOfMatch() bool { return false } -type PreFetchRequest struct { - SourceRepository *Repository `protobuf:"bytes,1,opt,name=source_repository,json=sourceRepository,proto3" json:"source_repository,omitempty"` - TargetRepository *Repository `protobuf:"bytes,2,opt,name=target_repository,json=targetRepository,proto3" json:"target_repository,omitempty"` - ObjectPool *ObjectPool `protobuf:"bytes,3,opt,name=object_pool,json=objectPool,proto3" json:"object_pool,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *PreFetchRequest) Reset() { *m = PreFetchRequest{} } -func (m *PreFetchRequest) String() string { return proto.CompactTextString(m) } -func (*PreFetchRequest) ProtoMessage() {} -func (*PreFetchRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{66} -} - -func (m *PreFetchRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_PreFetchRequest.Unmarshal(m, b) -} -func (m *PreFetchRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_PreFetchRequest.Marshal(b, m, deterministic) -} -func (m *PreFetchRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_PreFetchRequest.Merge(m, src) -} -func (m *PreFetchRequest) XXX_Size() int { - return xxx_messageInfo_PreFetchRequest.Size(m) -} -func (m *PreFetchRequest) XXX_DiscardUnknown() { - xxx_messageInfo_PreFetchRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_PreFetchRequest proto.InternalMessageInfo - -func (m *PreFetchRequest) GetSourceRepository() *Repository { - if m != nil { - return m.SourceRepository - } - return nil -} - -func (m *PreFetchRequest) GetTargetRepository() *Repository { - if m != nil { - return m.TargetRepository - } - return nil -} - -func (m *PreFetchRequest) GetObjectPool() *ObjectPool { - if m != nil { - return m.ObjectPool - } - return nil -} - -type PreFetchResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *PreFetchResponse) Reset() { *m = PreFetchResponse{} } -func (m *PreFetchResponse) String() string { return proto.CompactTextString(m) } -func (*PreFetchResponse) ProtoMessage() {} -func (*PreFetchResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{67} -} - -func (m *PreFetchResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_PreFetchResponse.Unmarshal(m, b) -} -func (m *PreFetchResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_PreFetchResponse.Marshal(b, m, deterministic) -} -func (m *PreFetchResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_PreFetchResponse.Merge(m, src) -} -func (m *PreFetchResponse) XXX_Size() int { - return xxx_messageInfo_PreFetchResponse.Size(m) -} -func (m *PreFetchResponse) XXX_DiscardUnknown() { - xxx_messageInfo_PreFetchResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_PreFetchResponse proto.InternalMessageInfo - type Remote struct { Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"` Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` @@ -3208,7 +3122,7 @@ func (m *Remote) Reset() { *m = Remote{} } func (m *Remote) String() string { return proto.CompactTextString(m) } func (*Remote) ProtoMessage() {} func (*Remote) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{68} + return fileDescriptor_e9b1768cf174c79b, []int{66} } func (m *Remote) XXX_Unmarshal(b []byte) error { @@ -3270,7 +3184,7 @@ func (m *FetchHTTPRemoteRequest) Reset() { *m = FetchHTTPRemoteRequest{} func (m *FetchHTTPRemoteRequest) String() string { return proto.CompactTextString(m) } func (*FetchHTTPRemoteRequest) ProtoMessage() {} func (*FetchHTTPRemoteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{69} + return fileDescriptor_e9b1768cf174c79b, []int{67} } func (m *FetchHTTPRemoteRequest) XXX_Unmarshal(b []byte) error { @@ -3322,7 +3236,7 @@ func (m *FetchHTTPRemoteResponse) Reset() { *m = FetchHTTPRemoteResponse func (m *FetchHTTPRemoteResponse) String() string { return proto.CompactTextString(m) } func (*FetchHTTPRemoteResponse) ProtoMessage() {} func (*FetchHTTPRemoteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{70} + return fileDescriptor_e9b1768cf174c79b, []int{68} } func (m *FetchHTTPRemoteResponse) XXX_Unmarshal(b []byte) error { @@ -3354,7 +3268,7 @@ func (m *GetObjectDirectorySizeRequest) Reset() { *m = GetObjectDirector func (m *GetObjectDirectorySizeRequest) String() string { return proto.CompactTextString(m) } func (*GetObjectDirectorySizeRequest) ProtoMessage() {} func (*GetObjectDirectorySizeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{71} + return fileDescriptor_e9b1768cf174c79b, []int{69} } func (m *GetObjectDirectorySizeRequest) XXX_Unmarshal(b []byte) error { @@ -3394,7 +3308,7 @@ func (m *GetObjectDirectorySizeResponse) Reset() { *m = GetObjectDirecto func (m *GetObjectDirectorySizeResponse) String() string { return proto.CompactTextString(m) } func (*GetObjectDirectorySizeResponse) ProtoMessage() {} func (*GetObjectDirectorySizeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{72} + return fileDescriptor_e9b1768cf174c79b, []int{70} } func (m *GetObjectDirectorySizeResponse) XXX_Unmarshal(b []byte) error { @@ -3435,7 +3349,7 @@ func (m *CloneFromPoolRequest) Reset() { *m = CloneFromPoolRequest{} } func (m *CloneFromPoolRequest) String() string { return proto.CompactTextString(m) } func (*CloneFromPoolRequest) ProtoMessage() {} func (*CloneFromPoolRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{73} + return fileDescriptor_e9b1768cf174c79b, []int{71} } func (m *CloneFromPoolRequest) XXX_Unmarshal(b []byte) error { @@ -3487,7 +3401,7 @@ func (m *CloneFromPoolResponse) Reset() { *m = CloneFromPoolResponse{} } func (m *CloneFromPoolResponse) String() string { return proto.CompactTextString(m) } func (*CloneFromPoolResponse) ProtoMessage() {} func (*CloneFromPoolResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{74} + return fileDescriptor_e9b1768cf174c79b, []int{72} } func (m *CloneFromPoolResponse) XXX_Unmarshal(b []byte) error { @@ -3521,7 +3435,7 @@ func (m *CloneFromPoolInternalRequest) Reset() { *m = CloneFromPoolInter func (m *CloneFromPoolInternalRequest) String() string { return proto.CompactTextString(m) } func (*CloneFromPoolInternalRequest) ProtoMessage() {} func (*CloneFromPoolInternalRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{75} + return fileDescriptor_e9b1768cf174c79b, []int{73} } func (m *CloneFromPoolInternalRequest) XXX_Unmarshal(b []byte) error { @@ -3573,7 +3487,7 @@ func (m *CloneFromPoolInternalResponse) Reset() { *m = CloneFromPoolInte func (m *CloneFromPoolInternalResponse) String() string { return proto.CompactTextString(m) } func (*CloneFromPoolInternalResponse) ProtoMessage() {} func (*CloneFromPoolInternalResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{76} + return fileDescriptor_e9b1768cf174c79b, []int{74} } func (m *CloneFromPoolInternalResponse) XXX_Unmarshal(b []byte) error { @@ -3605,7 +3519,7 @@ func (m *RemoveRepositoryRequest) Reset() { *m = RemoveRepositoryRequest func (m *RemoveRepositoryRequest) String() string { return proto.CompactTextString(m) } func (*RemoveRepositoryRequest) ProtoMessage() {} func (*RemoveRepositoryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{77} + return fileDescriptor_e9b1768cf174c79b, []int{75} } func (m *RemoveRepositoryRequest) XXX_Unmarshal(b []byte) error { @@ -3643,7 +3557,7 @@ func (m *RemoveRepositoryResponse) Reset() { *m = RemoveRepositoryRespon func (m *RemoveRepositoryResponse) String() string { return proto.CompactTextString(m) } func (*RemoveRepositoryResponse) ProtoMessage() {} func (*RemoveRepositoryResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{78} + return fileDescriptor_e9b1768cf174c79b, []int{76} } func (m *RemoveRepositoryResponse) XXX_Unmarshal(b []byte) error { @@ -3676,7 +3590,7 @@ func (m *RenameRepositoryRequest) Reset() { *m = RenameRepositoryRequest func (m *RenameRepositoryRequest) String() string { return proto.CompactTextString(m) } func (*RenameRepositoryRequest) ProtoMessage() {} func (*RenameRepositoryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{79} + return fileDescriptor_e9b1768cf174c79b, []int{77} } func (m *RenameRepositoryRequest) XXX_Unmarshal(b []byte) error { @@ -3721,7 +3635,7 @@ func (m *RenameRepositoryResponse) Reset() { *m = RenameRepositoryRespon func (m *RenameRepositoryResponse) String() string { return proto.CompactTextString(m) } func (*RenameRepositoryResponse) ProtoMessage() {} func (*RenameRepositoryResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{80} + return fileDescriptor_e9b1768cf174c79b, []int{78} } func (m *RenameRepositoryResponse) XXX_Unmarshal(b []byte) error { @@ -3754,7 +3668,7 @@ func (m *ReplicateRepositoryRequest) Reset() { *m = ReplicateRepositoryR func (m *ReplicateRepositoryRequest) String() string { return proto.CompactTextString(m) } func (*ReplicateRepositoryRequest) ProtoMessage() {} func (*ReplicateRepositoryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{81} + return fileDescriptor_e9b1768cf174c79b, []int{79} } func (m *ReplicateRepositoryRequest) XXX_Unmarshal(b []byte) error { @@ -3799,7 +3713,7 @@ func (m *ReplicateRepositoryResponse) Reset() { *m = ReplicateRepository func (m *ReplicateRepositoryResponse) String() string { return proto.CompactTextString(m) } func (*ReplicateRepositoryResponse) ProtoMessage() {} func (*ReplicateRepositoryResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{82} + return fileDescriptor_e9b1768cf174c79b, []int{80} } func (m *ReplicateRepositoryResponse) XXX_Unmarshal(b []byte) error { @@ -3891,8 +3805,6 @@ func init() { proto.RegisterType((*SearchFilesByNameResponse)(nil), "gitaly.SearchFilesByNameResponse") proto.RegisterType((*SearchFilesByContentRequest)(nil), "gitaly.SearchFilesByContentRequest") proto.RegisterType((*SearchFilesByContentResponse)(nil), "gitaly.SearchFilesByContentResponse") - proto.RegisterType((*PreFetchRequest)(nil), "gitaly.PreFetchRequest") - proto.RegisterType((*PreFetchResponse)(nil), "gitaly.PreFetchResponse") proto.RegisterType((*Remote)(nil), "gitaly.Remote") proto.RegisterType((*FetchHTTPRemoteRequest)(nil), "gitaly.FetchHTTPRemoteRequest") proto.RegisterType((*FetchHTTPRemoteResponse)(nil), "gitaly.FetchHTTPRemoteResponse") @@ -3913,194 +3825,190 @@ func init() { func init() { proto.RegisterFile("repository-service.proto", fileDescriptor_e9b1768cf174c79b) } var fileDescriptor_e9b1768cf174c79b = []byte{ - // 2989 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x4b, 0x73, 0xdc, 0xc6, - 0xf1, 0x17, 0xb8, 0x24, 0x77, 0xb7, 0x77, 0x25, 0x2d, 0x87, 0x94, 0xb8, 0x84, 0x44, 0x51, 0x82, - 0x64, 0x59, 0x7e, 0x51, 0x32, 0xf5, 0xaf, 0xfa, 0xbb, 0xf2, 0x28, 0x17, 0xdf, 0xa4, 0x25, 0x3e, - 0x02, 0xd2, 0x51, 0x59, 0x55, 0x2e, 0x18, 0xc4, 0xce, 0x72, 0x11, 0x62, 0x31, 0xeb, 0xc1, 0x2c, - 0x69, 0xba, 0x72, 0xc8, 0x21, 0xa9, 0xf2, 0x29, 0x15, 0x9f, 0x52, 0x95, 0x73, 0x3e, 0x41, 0x6e, - 0xa9, 0x54, 0xee, 0xb9, 0xe7, 0x94, 0x8f, 0x90, 0xaf, 0x90, 0x4b, 0x52, 0xf3, 0x58, 0x0c, 0xb0, - 0x00, 0xd6, 0x72, 0x2d, 0xe3, 0xdc, 0x30, 0xdd, 0x3d, 0xdd, 0x3d, 0x3d, 0xcf, 0xfe, 0x35, 0xa0, - 0x49, 0x71, 0x8f, 0x44, 0x3e, 0x23, 0xf4, 0xf2, 0x83, 0x08, 0xd3, 0x73, 0xdf, 0xc3, 0xcb, 0x3d, - 0x4a, 0x18, 0x41, 0xd3, 0xa7, 0x3e, 0x73, 0x83, 0x4b, 0xb3, 0x1e, 0x75, 0x5c, 0x8a, 0x5b, 0x92, - 0x6a, 0xed, 0xc1, 0xbc, 0x1d, 0xf7, 0xd8, 0xfc, 0xca, 0x8f, 0x58, 0x64, 0xe3, 0x2f, 0xfb, 0x38, - 0x62, 0x68, 0x05, 0x40, 0x2b, 0x6b, 0x1a, 0xf7, 0x8d, 0x27, 0xb5, 0x15, 0xb4, 0x2c, 0xb5, 0x2c, - 0xeb, 0x4e, 0x76, 0x42, 0xca, 0x5a, 0x81, 0x66, 0x56, 0x5d, 0xd4, 0x23, 0x61, 0x84, 0xd1, 0x6d, - 0x98, 0xc6, 0x82, 0x22, 0x74, 0x55, 0x6c, 0xd5, 0xb2, 0xf6, 0x45, 0x1f, 0xd7, 0x3b, 0xdb, 0x0d, - 0x3d, 0x8a, 0xbb, 0x38, 0x64, 0x6e, 0x30, 0x8e, 0x0f, 0x77, 0x60, 0x21, 0x47, 0x9f, 0x74, 0xc2, - 0x0a, 0x60, 0x46, 0x32, 0xb7, 0xfa, 0xc1, 0x38, 0x56, 0xd0, 0x43, 0xb8, 0xee, 0x51, 0xec, 0x32, - 0xec, 0x9c, 0xf8, 0xac, 0xeb, 0xf6, 0x9a, 0x13, 0x62, 0x50, 0x75, 0x49, 0x5c, 0x13, 0x34, 0x6b, - 0x0e, 0x50, 0xd2, 0x9a, 0xf2, 0xa1, 0x07, 0xb7, 0xb6, 0x5d, 0x7a, 0xe2, 0x9e, 0xe2, 0x75, 0x12, - 0x04, 0xd8, 0x63, 0xff, 0x75, 0x3f, 0x9a, 0x70, 0x7b, 0xd8, 0xa2, 0xf2, 0x65, 0x03, 0x6e, 0xac, - 0x07, 0xd8, 0x0d, 0xfb, 0xbd, 0x71, 0x42, 0x3e, 0x03, 0x37, 0x63, 0x2d, 0x4a, 0xf1, 0x0b, 0xb8, - 0xa5, 0x85, 0x8f, 0xfc, 0xaf, 0xf1, 0x38, 0xfa, 0xdf, 0x87, 0xdb, 0xc3, 0xca, 0xd4, 0xa2, 0x42, - 0x30, 0x19, 0xf9, 0x5f, 0x63, 0xa1, 0xa7, 0x64, 0x8b, 0x6f, 0xeb, 0x0c, 0x16, 0x56, 0x7b, 0xbd, - 0xe0, 0x72, 0xdb, 0x67, 0x2e, 0x63, 0xd4, 0x3f, 0xe9, 0x33, 0x3c, 0xce, 0xaa, 0x46, 0x26, 0x54, - 0x28, 0x3e, 0xf7, 0x23, 0x9f, 0x84, 0x22, 0xbc, 0x75, 0x3b, 0x6e, 0x5b, 0x77, 0xc1, 0xcc, 0x33, - 0xa6, 0xa2, 0xf0, 0xe7, 0x09, 0x40, 0x5b, 0x98, 0x79, 0x1d, 0x1b, 0x77, 0x09, 0x1b, 0x27, 0x06, - 0x7c, 0xfb, 0x50, 0xa1, 0x44, 0xb8, 0x50, 0xb5, 0x55, 0x0b, 0xcd, 0xc1, 0x54, 0x9b, 0x50, 0x0f, - 0x37, 0x4b, 0x62, 0xe2, 0x65, 0x03, 0xcd, 0x43, 0x39, 0x24, 0x0e, 0x73, 0x4f, 0xa3, 0xe6, 0xa4, - 0xdc, 0x6d, 0x21, 0x39, 0x76, 0x4f, 0x23, 0xd4, 0x84, 0x32, 0xf3, 0xbb, 0x98, 0xf4, 0x59, 0x73, - 0xea, 0xbe, 0xf1, 0x64, 0xca, 0x1e, 0x34, 0x79, 0x97, 0x28, 0xea, 0x38, 0x67, 0xf8, 0xb2, 0x39, - 0x2d, 0x2d, 0x44, 0x51, 0xe7, 0x05, 0xbe, 0x44, 0x4b, 0x50, 0x3b, 0x0b, 0xc9, 0x45, 0xe8, 0x74, - 0x08, 0xdf, 0xbd, 0x65, 0xc1, 0x04, 0x41, 0xda, 0xe1, 0x14, 0xb4, 0x00, 0x95, 0x90, 0x38, 0x3d, - 0xda, 0x0f, 0x71, 0xb3, 0x2a, 0xac, 0x95, 0x43, 0x72, 0xc8, 0x9b, 0xe8, 0x39, 0x5c, 0x97, 0x7e, - 0x3a, 0x3d, 0x97, 0xba, 0xdd, 0xa8, 0x09, 0x62, 0xb0, 0x37, 0xf4, 0x60, 0x45, 0x5c, 0xea, 0x52, - 0xe8, 0x50, 0xc8, 0x7c, 0x32, 0x59, 0xa9, 0x34, 0xaa, 0xd6, 0x2d, 0x98, 0x4d, 0x85, 0x4e, 0x85, - 0x74, 0x0f, 0xe6, 0xd7, 0xc5, 0xda, 0x4e, 0xc4, 0x69, 0x8c, 0xa5, 0x65, 0x42, 0x33, 0xab, 0x4e, - 0x99, 0xfa, 0xb7, 0x01, 0x33, 0xdb, 0x98, 0xad, 0x52, 0xaf, 0xe3, 0x9f, 0x8f, 0x35, 0x79, 0x77, - 0xa0, 0xea, 0x91, 0x6e, 0xd7, 0x67, 0x8e, 0xdf, 0x52, 0xf3, 0x57, 0x91, 0x84, 0xdd, 0x16, 0x9f, - 0xd9, 0x1e, 0xc5, 0x6d, 0xff, 0x2b, 0x31, 0x85, 0x55, 0x5b, 0xb5, 0xd0, 0x47, 0x30, 0xdd, 0x26, - 0xb4, 0xeb, 0x32, 0x31, 0x85, 0x37, 0x56, 0xee, 0x0f, 0x8c, 0x64, 0x7c, 0x5a, 0xde, 0x12, 0x72, - 0xb6, 0x92, 0xe7, 0xbb, 0xa2, 0xe7, 0xb2, 0x8e, 0x98, 0xe1, 0xba, 0x2d, 0xbe, 0xad, 0xe7, 0x30, - 0x2d, 0xa5, 0x50, 0x19, 0x4a, 0xaf, 0x77, 0x0f, 0x1b, 0xd7, 0xf8, 0xc7, 0xf1, 0xaa, 0xdd, 0x30, - 0x10, 0xc0, 0xf4, 0xf1, 0xaa, 0xed, 0x6c, 0xbf, 0x6e, 0x4c, 0xa0, 0x1a, 0x94, 0xf9, 0xf7, 0xda, - 0xeb, 0x95, 0x46, 0xc9, 0x7a, 0x02, 0x28, 0x69, 0x4c, 0x6f, 0xba, 0x96, 0xcb, 0x5c, 0x31, 0xf6, - 0xba, 0x2d, 0xbe, 0xf9, 0xb4, 0xec, 0xb8, 0xd1, 0x4b, 0xe2, 0xb9, 0xc1, 0x1a, 0x75, 0x43, 0xaf, - 0x33, 0xd6, 0x96, 0xb3, 0x9e, 0x41, 0x33, 0xab, 0x4e, 0x99, 0x9f, 0x83, 0xa9, 0x73, 0x37, 0xe8, - 0x63, 0x75, 0x8f, 0xc8, 0x86, 0xf5, 0x77, 0x03, 0x9a, 0x62, 0xbd, 0x1c, 0x91, 0x3e, 0xf5, 0xb0, - 0xec, 0x35, 0xce, 0x9c, 0x7d, 0x0c, 0x33, 0x91, 0x50, 0xe5, 0x24, 0xba, 0x4e, 0x14, 0x76, 0x6d, - 0x48, 0x61, 0x3b, 0x75, 0x34, 0x2b, 0x05, 0x27, 0xc2, 0x19, 0x31, 0xbd, 0x75, 0xbb, 0x1e, 0x25, - 0x1c, 0x44, 0x8b, 0x00, 0xcc, 0xa5, 0xa7, 0x98, 0x39, 0x14, 0xb7, 0xc5, 0x44, 0xd7, 0xed, 0xaa, - 0xa4, 0xd8, 0xb8, 0x6d, 0x3d, 0x87, 0x85, 0x9c, 0x41, 0xe9, 0x1b, 0x95, 0xe2, 0xa8, 0x1f, 0xb0, - 0xc1, 0x8d, 0x2a, 0x5b, 0xd6, 0x2a, 0xd4, 0xb6, 0x22, 0xef, 0x6c, 0x9c, 0xf8, 0x3f, 0x82, 0xba, - 0x54, 0xa1, 0x63, 0x8e, 0x29, 0x25, 0x54, 0xcd, 0xb9, 0x6c, 0x58, 0x7f, 0x32, 0xe0, 0xe6, 0x2b, - 0xea, 0xf3, 0xcd, 0xd3, 0x1e, 0x27, 0xd4, 0x0d, 0x28, 0xf1, 0xd1, 0xcb, 0xb3, 0x95, 0x7f, 0xa6, - 0x8e, 0xdc, 0x52, 0xfa, 0xc8, 0x45, 0x0f, 0xa0, 0x4e, 0x82, 0x96, 0x13, 0xf3, 0x65, 0xd0, 0x6a, - 0x24, 0x68, 0xd9, 0x03, 0x91, 0xf8, 0x50, 0x9c, 0x4a, 0x1c, 0x8a, 0x9f, 0x4c, 0x56, 0xa6, 0x1b, - 0x65, 0xab, 0x09, 0x0d, 0xed, 0xb3, 0x1c, 0xde, 0x27, 0x93, 0x15, 0xa3, 0x31, 0x61, 0x75, 0x60, - 0x6e, 0xcb, 0x0f, 0x5b, 0x7b, 0x98, 0x9e, 0xe2, 0x35, 0x37, 0x1a, 0x6b, 0xc7, 0xdf, 0x85, 0xea, - 0xc0, 0xc1, 0xa8, 0x39, 0x71, 0xbf, 0xc4, 0xa7, 0x35, 0x26, 0x58, 0xef, 0xc1, 0xad, 0x21, 0x4b, - 0x7a, 0x6b, 0x9d, 0xb8, 0x91, 0x5c, 0xda, 0x55, 0x5b, 0x7c, 0x5b, 0xdf, 0x18, 0x30, 0x23, 0xcf, - 0xa8, 0x2d, 0x42, 0xcf, 0xfe, 0x97, 0x4b, 0x9a, 0x3f, 0x68, 0x92, 0x9e, 0xc4, 0x8f, 0xaa, 0x85, - 0xdd, 0xc8, 0xc6, 0xdc, 0xd9, 0xdd, 0xf0, 0x90, 0x92, 0x53, 0x8a, 0xa3, 0x68, 0xcc, 0xe3, 0x92, - 0x0a, 0x75, 0x89, 0xe3, 0x52, 0x12, 0x76, 0x5b, 0xd6, 0x4f, 0xc1, 0xcc, 0xb3, 0xa6, 0x02, 0xb8, - 0x04, 0x35, 0x3f, 0x74, 0x7a, 0x8a, 0xac, 0x36, 0x06, 0xf8, 0xb1, 0xa0, 0x74, 0xf6, 0xe8, 0xcb, - 0xbe, 0x1b, 0x75, 0xae, 0xcc, 0xd9, 0x48, 0xa8, 0x4b, 0x38, 0x2b, 0x09, 0x03, 0x67, 0xb3, 0xd6, - 0xde, 0xd4, 0xd9, 0x36, 0xdc, 0x1b, 0xbe, 0x9d, 0xb6, 0x28, 0xe9, 0x7e, 0x6a, 0xbf, 0x1c, 0x73, - 0xbb, 0xf5, 0x69, 0xa0, 0x7c, 0xe5, 0x9f, 0xd6, 0x03, 0x58, 0x2a, 0xb4, 0xa3, 0x26, 0x79, 0x17, - 0x66, 0xa5, 0xc8, 0x5a, 0x3f, 0x6c, 0x05, 0x63, 0x3d, 0xe7, 0xde, 0x85, 0xb9, 0xb4, 0xaa, 0x11, - 0xf7, 0xca, 0x37, 0x13, 0xd0, 0x38, 0xc2, 0x6c, 0x9d, 0x84, 0x6d, 0xff, 0x74, 0x9c, 0x41, 0x7f, - 0x04, 0x65, 0x1c, 0x32, 0xea, 0x63, 0xb9, 0x1d, 0x6b, 0x2b, 0xf7, 0x06, 0x1d, 0x86, 0xd5, 0x2f, - 0x6f, 0x86, 0x8c, 0x5e, 0xda, 0x03, 0x71, 0xf3, 0x37, 0x06, 0x4c, 0x09, 0x12, 0x0f, 0x1c, 0x7f, - 0x1e, 0xc9, 0xcd, 0xc9, 0x3f, 0xd1, 0x22, 0x54, 0xc5, 0xf5, 0xe3, 0x44, 0x8c, 0xca, 0x80, 0xee, - 0x5c, 0xb3, 0x2b, 0x82, 0x74, 0xc4, 0x28, 0x7a, 0x00, 0x35, 0xc9, 0xf6, 0x43, 0xf6, 0x7c, 0x45, - 0x9c, 0x64, 0x53, 0x3b, 0xd7, 0x6c, 0x10, 0xc4, 0x5d, 0x4e, 0x43, 0x4b, 0x20, 0x5b, 0xce, 0x09, - 0x21, 0x81, 0x7c, 0xac, 0xed, 0x5c, 0xb3, 0xa5, 0xd6, 0x35, 0x42, 0x82, 0xb5, 0xb2, 0xba, 0xee, - 0xac, 0x59, 0x98, 0x49, 0xb8, 0xaa, 0xa6, 0xe5, 0x73, 0x98, 0xdd, 0xc0, 0x01, 0x66, 0x78, 0xfc, - 0x08, 0x21, 0x98, 0x3c, 0xc3, 0x97, 0x32, 0x3c, 0x55, 0x5b, 0x7c, 0x5b, 0xb7, 0x61, 0x2e, 0xad, - 0x5e, 0x99, 0xf5, 0x78, 0x92, 0x15, 0x31, 0x42, 0xf1, 0x7a, 0x3f, 0x62, 0xa4, 0xbb, 0x43, 0xc8, - 0x59, 0x34, 0xa6, 0x71, 0x31, 0xf7, 0x13, 0x89, 0xb9, 0xbf, 0x0b, 0x66, 0x9e, 0x11, 0xe5, 0xc2, - 0x3e, 0x34, 0xd7, 0x5c, 0xef, 0xac, 0xdf, 0xbb, 0x1a, 0x0f, 0xac, 0xa7, 0xb0, 0x90, 0xa3, 0x6f, - 0xc4, 0xd2, 0x3c, 0x83, 0x07, 0x79, 0x9b, 0x66, 0xec, 0xfd, 0x91, 0x1b, 0x8b, 0x47, 0x60, 0x8d, - 0x32, 0xa6, 0x62, 0xb2, 0x03, 0x88, 0xdf, 0x2b, 0x2f, 0x7d, 0x0f, 0x87, 0x63, 0xdd, 0x5f, 0xd6, - 0x3a, 0xcc, 0xa6, 0x34, 0xa9, 0x38, 0xbc, 0x0f, 0x28, 0x90, 0x24, 0x27, 0xea, 0x10, 0xca, 0x9c, - 0xd0, 0xed, 0x0e, 0x6e, 0xab, 0x86, 0xe2, 0x1c, 0x71, 0xc6, 0xbe, 0xdb, 0x15, 0x53, 0xb4, 0x8d, - 0xd9, 0x6e, 0xd8, 0x26, 0xab, 0x57, 0x91, 0x88, 0x59, 0x3f, 0x86, 0x85, 0x1c, 0x7d, 0xca, 0xb5, - 0x7b, 0x00, 0x3a, 0x03, 0x53, 0x13, 0x95, 0xa0, 0x70, 0x67, 0xd6, 0xdd, 0xc0, 0xeb, 0x07, 0x2e, - 0xc3, 0xeb, 0x1d, 0xec, 0x9d, 0x45, 0xfd, 0xee, 0x38, 0xce, 0xfc, 0x3f, 0x2c, 0xe4, 0xe8, 0x53, - 0xce, 0x98, 0x50, 0xf1, 0x14, 0x4d, 0x45, 0x27, 0x6e, 0xf3, 0x49, 0xda, 0xc6, 0xec, 0x28, 0x74, - 0x7b, 0x51, 0x87, 0x8c, 0x93, 0xfc, 0x5b, 0xef, 0xc0, 0x6c, 0x4a, 0xd3, 0x88, 0xc5, 0xfa, 0xad, - 0x01, 0x0f, 0xf3, 0x16, 0xd0, 0x15, 0xb8, 0xc1, 0xf3, 0xbf, 0x0e, 0x63, 0x3d, 0x47, 0x5f, 0x2a, - 0x65, 0xde, 0xfe, 0x94, 0x06, 0xfc, 0x72, 0x14, 0x2c, 0xb7, 0xcf, 0x3a, 0x2a, 0xbd, 0x11, 0xb2, - 0xab, 0x7d, 0xd6, 0xb1, 0x1e, 0xc3, 0xa3, 0xd1, 0x2e, 0xa9, 0x55, 0xfd, 0x3b, 0x03, 0xe6, 0xb6, - 0x31, 0xb3, 0xdd, 0x8b, 0xf5, 0x8e, 0x1b, 0x9e, 0x8e, 0x97, 0xcc, 0x3f, 0x84, 0xeb, 0x6d, 0x4a, - 0xba, 0x4e, 0x2a, 0xa3, 0xaf, 0xda, 0x75, 0x4e, 0x8c, 0xdf, 0x8f, 0x4b, 0x50, 0x63, 0xc4, 0x49, - 0xbd, 0x40, 0xab, 0x36, 0x30, 0x32, 0x10, 0xb0, 0xfe, 0x3a, 0x09, 0xb7, 0x86, 0x5c, 0x52, 0xc1, - 0xdf, 0x81, 0x1a, 0x75, 0x2f, 0x1c, 0x4f, 0x92, 0x9b, 0x86, 0xb8, 0x6b, 0xde, 0x4e, 0xa4, 0x6e, - 0xd9, 0x3e, 0xcb, 0x31, 0xc9, 0x06, 0x1a, 0x73, 0xcd, 0x7f, 0x94, 0xa0, 0x1a, 0x73, 0x78, 0x7a, - 0x7e, 0x12, 0x90, 0x13, 0xfe, 0xc8, 0x90, 0x0b, 0x6a, 0x9a, 0x37, 0x77, 0x5b, 0x31, 0x04, 0x32, - 0xa1, 0x21, 0x10, 0xb4, 0x08, 0x95, 0x10, 0x5f, 0x38, 0x22, 0x09, 0x14, 0xce, 0xaf, 0x4d, 0x34, - 0x0d, 0xbb, 0x1c, 0xe2, 0x8b, 0x43, 0x97, 0xf1, 0xa4, 0xa3, 0xc2, 0x5f, 0xd0, 0x82, 0x3d, 0xa9, - 0xd9, 0x24, 0x68, 0x09, 0xf6, 0x01, 0x54, 0x49, 0x0f, 0x53, 0x97, 0xf1, 0xb1, 0x4f, 0x89, 0xdc, - 0xf3, 0xc3, 0x37, 0x1c, 0xc0, 0xf2, 0xc1, 0xa0, 0xa3, 0xad, 0x75, 0xf0, 0x98, 0xf3, 0x98, 0x68, - 0xa5, 0x12, 0x60, 0xa8, 0x53, 0xf7, 0x22, 0x96, 0xe7, 0xab, 0x88, 0x3b, 0xd5, 0x25, 0x2d, 0x2c, - 0x30, 0x86, 0x29, 0xe1, 0xd0, 0x1e, 0x69, 0x61, 0x01, 0x30, 0xe0, 0x0b, 0xc9, 0xaa, 0x48, 0x56, - 0x88, 0x2f, 0x04, 0xeb, 0x11, 0xdc, 0x18, 0x8c, 0xd4, 0x39, 0xb9, 0xe4, 0x3b, 0xbf, 0x2a, 0xb3, - 0x2c, 0x35, 0xd6, 0x35, 0x4e, 0xe3, 0x52, 0x83, 0x01, 0x2b, 0x29, 0x90, 0x52, 0x6a, 0xc8, 0x42, - 0xca, 0xf2, 0xa1, 0xaa, 0xdd, 0xa9, 0x41, 0xf9, 0xd3, 0xfd, 0x17, 0xfb, 0x07, 0xaf, 0xf6, 0x1b, - 0xd7, 0x50, 0x15, 0xa6, 0x56, 0x37, 0x36, 0x36, 0x37, 0x64, 0xae, 0xbc, 0x7e, 0x70, 0xb8, 0xbb, - 0xb9, 0x21, 0x73, 0xe5, 0x8d, 0xcd, 0x97, 0x9b, 0xc7, 0x9b, 0x1b, 0x8d, 0x12, 0xaa, 0x43, 0x65, - 0xef, 0x60, 0x63, 0x77, 0x8b, 0xb3, 0x26, 0x39, 0xcb, 0xde, 0xdc, 0x5f, 0xdd, 0xdb, 0xdc, 0x68, - 0x4c, 0xa1, 0x06, 0xd4, 0x8f, 0x3f, 0x3b, 0xdc, 0x74, 0xd6, 0x77, 0x56, 0xf7, 0xb7, 0x37, 0x37, - 0x1a, 0xd3, 0xd6, 0x39, 0x34, 0x8f, 0xb0, 0x4b, 0xbd, 0xce, 0x96, 0x1f, 0xe0, 0x68, 0xed, 0x92, - 0x1f, 0x97, 0xe3, 0xac, 0xea, 0x39, 0x98, 0xfa, 0xb2, 0x8f, 0xd5, 0x6b, 0xbe, 0x6a, 0xcb, 0xc6, - 0x20, 0xaf, 0x2a, 0xc5, 0x79, 0x95, 0xf5, 0x21, 0x2c, 0xe4, 0xd8, 0xd5, 0x49, 0x5e, 0x9b, 0x93, - 0xc5, 0xa2, 0xad, 0xdb, 0xb2, 0x61, 0xfd, 0xd1, 0x80, 0x3b, 0xa9, 0x3e, 0xeb, 0x24, 0x64, 0x38, - 0x64, 0x3f, 0x80, 0xbb, 0xe8, 0x1d, 0x68, 0x78, 0x9d, 0x7e, 0x78, 0x86, 0x79, 0xba, 0x27, 0xbd, - 0x54, 0x78, 0xd6, 0x4d, 0x45, 0x8f, 0x0f, 0x89, 0x4b, 0xb8, 0x9b, 0xef, 0xa5, 0x1a, 0x5c, 0x13, - 0xca, 0x5d, 0x97, 0x79, 0x9d, 0x78, 0x78, 0x83, 0x26, 0x4f, 0xc1, 0xc5, 0xa7, 0x93, 0xb8, 0x74, - 0xab, 0x82, 0xb2, 0xe1, 0x32, 0x17, 0xdd, 0x87, 0x3a, 0x0e, 0x5b, 0x0e, 0x69, 0x3b, 0x82, 0xa6, - 0x70, 0x36, 0xc0, 0x61, 0xeb, 0xa0, 0xbd, 0xc7, 0x29, 0xd6, 0xdf, 0x0c, 0xb8, 0x79, 0x48, 0xb1, - 0x42, 0xab, 0x64, 0x54, 0x72, 0x53, 0x2d, 0xe3, 0x7b, 0xa0, 0x07, 0x1f, 0xc3, 0x4c, 0x0c, 0x0c, - 0xbc, 0x49, 0xae, 0x36, 0xc0, 0x0c, 0x62, 0x05, 0xcf, 0xa1, 0x46, 0x4e, 0x7e, 0x81, 0x3d, 0xe6, - 0xf4, 0xf8, 0xcb, 0xb2, 0x94, 0xee, 0x7a, 0x20, 0x58, 0x87, 0x84, 0x04, 0x36, 0x90, 0xf8, 0xdb, - 0x42, 0xd0, 0xd0, 0x23, 0x51, 0x91, 0xfd, 0xd6, 0x80, 0x69, 0x09, 0xc2, 0x0d, 0x32, 0x07, 0x23, - 0xce, 0x1c, 0xf8, 0xe9, 0x23, 0x9e, 0x00, 0x72, 0x22, 0xc5, 0x37, 0xfa, 0x11, 0x2c, 0xc4, 0x87, - 0x3e, 0xa1, 0xfe, 0xd7, 0x62, 0x43, 0x39, 0x1d, 0xec, 0xb6, 0x30, 0x55, 0x67, 0xe9, 0xfc, 0xe0, - 0x12, 0x88, 0xf9, 0x3b, 0x82, 0x8d, 0xde, 0x82, 0x1b, 0x5d, 0x9f, 0x52, 0x42, 0x1d, 0x8a, 0xdb, - 0x5d, 0xb7, 0x17, 0x35, 0x27, 0xc5, 0x73, 0xf4, 0xba, 0xa4, 0xda, 0x92, 0x68, 0xfd, 0xd6, 0x80, - 0xdb, 0xc2, 0xcb, 0x9d, 0xe3, 0xe3, 0xc3, 0xf1, 0xc1, 0xd5, 0xc7, 0x29, 0x70, 0x35, 0x8b, 0x4f, - 0x0e, 0xc0, 0xd6, 0x04, 0x7a, 0x5a, 0x4a, 0xa1, 0xa7, 0xd6, 0x02, 0xcc, 0x67, 0xfc, 0x51, 0xf1, - 0x3b, 0x82, 0xc5, 0x6d, 0xcc, 0x64, 0xc0, 0x37, 0x7c, 0x8a, 0xbd, 0xab, 0x80, 0xc4, 0xff, 0x0f, - 0xee, 0x15, 0x29, 0x1d, 0x01, 0x8d, 0xff, 0xc1, 0x80, 0xb9, 0xf5, 0x80, 0x84, 0x98, 0xdf, 0xb3, - 0x62, 0xf2, 0xc7, 0x0a, 0xda, 0xa4, 0x58, 0x59, 0x13, 0x85, 0x2b, 0x4b, 0xf0, 0x13, 0xc1, 0x2d, - 0x8d, 0x0a, 0xae, 0x35, 0x0f, 0xb7, 0x86, 0x7c, 0x53, 0x01, 0xfc, 0x8b, 0x01, 0x77, 0x53, 0x9c, - 0xdd, 0x90, 0x61, 0x1a, 0xba, 0x3f, 0x88, 0xf7, 0xb9, 0x1b, 0xb9, 0xf4, 0x3d, 0x30, 0x93, 0x25, - 0x58, 0x2c, 0x70, 0x5e, 0x23, 0xda, 0x3c, 0x12, 0xe7, 0x57, 0x87, 0x68, 0x67, 0xd5, 0x29, 0x53, - 0x94, 0x9b, 0x0a, 0xc5, 0x99, 0x7f, 0x05, 0xa6, 0xc4, 0xbd, 0x8e, 0x03, 0x97, 0xf9, 0xe7, 0x58, - 0x3e, 0x26, 0xd4, 0x5b, 0x6a, 0x40, 0xe4, 0x57, 0xab, 0xf4, 0x67, 0xd8, 0xa6, 0xf2, 0xe7, 0x97, - 0x3c, 0xc3, 0xeb, 0x05, 0xbe, 0x77, 0x55, 0x78, 0x3e, 0x7a, 0x17, 0xa6, 0xe5, 0x0c, 0x8c, 0x38, - 0x2b, 0x95, 0x84, 0xb5, 0x08, 0x77, 0x72, 0xad, 0x4b, 0xe7, 0x56, 0xfe, 0x79, 0x4f, 0x14, 0x0b, - 0x07, 0x65, 0x27, 0x59, 0x4d, 0x45, 0x5f, 0x40, 0x63, 0xb8, 0xc4, 0x89, 0x96, 0xb2, 0x46, 0x52, - 0xb5, 0x54, 0xf3, 0x7e, 0xb1, 0x80, 0x8a, 0x44, 0xf5, 0x5f, 0xbf, 0x7f, 0x32, 0x55, 0x99, 0x30, - 0x8d, 0x0f, 0x91, 0x37, 0xa8, 0x51, 0x26, 0x0a, 0x98, 0x28, 0xa9, 0x21, 0xb7, 0x56, 0x6a, 0x3e, - 0x18, 0x21, 0x91, 0x32, 0x62, 0x70, 0x23, 0xfb, 0x00, 0xba, 0x34, 0x89, 0x16, 0xd2, 0x7d, 0x13, - 0xc5, 0x51, 0xd3, 0xcc, 0x63, 0x65, 0xf5, 0xbd, 0x86, 0x1b, 0xe9, 0x12, 0x23, 0x5a, 0x8c, 0x9f, - 0x8c, 0x79, 0xc5, 0x4e, 0xf3, 0x5e, 0x11, 0x3b, 0x57, 0x77, 0xba, 0xfc, 0xa7, 0x75, 0xe7, 0xd6, - 0x18, 0xb5, 0xee, 0xfc, 0xaa, 0x61, 0x52, 0x77, 0x1b, 0x50, 0xb6, 0x7e, 0x87, 0xe2, 0x58, 0x16, - 0x16, 0x12, 0x4d, 0x6b, 0x94, 0x48, 0xd6, 0xce, 0xcf, 0xa0, 0x96, 0xa8, 0x66, 0xa1, 0x38, 0xaa, - 0xd9, 0xea, 0xa0, 0x79, 0x27, 0x97, 0x97, 0x55, 0xf9, 0x05, 0x34, 0x86, 0xd3, 0x27, 0xbd, 0x12, - 0x0b, 0x6a, 0x64, 0x7a, 0x25, 0x16, 0x56, 0xbd, 0x12, 0x16, 0x0e, 0x01, 0x74, 0xf9, 0x47, 0x2f, - 0x92, 0x4c, 0xfd, 0x49, 0x2f, 0x92, 0x6c, 0xb5, 0x28, 0xa1, 0xef, 0x99, 0xc1, 0x7d, 0x1e, 0xae, - 0xeb, 0x68, 0x9f, 0x0b, 0x0a, 0x48, 0xda, 0xe7, 0xa2, 0x92, 0xd0, 0xd0, 0xee, 0xc9, 0x54, 0x4c, - 0xf4, 0xee, 0x29, 0xaa, 0x10, 0xe9, 0xdd, 0x53, 0x58, 0x6e, 0x49, 0x06, 0xe6, 0x27, 0x30, 0xb9, - 0x15, 0x79, 0x67, 0x68, 0x36, 0xee, 0xa5, 0xeb, 0x2d, 0xe6, 0x5c, 0x9a, 0x98, 0xed, 0xbd, 0x03, - 0x95, 0x41, 0x05, 0x02, 0xcd, 0x0f, 0x84, 0x87, 0xea, 0x28, 0x66, 0x33, 0xcb, 0xc8, 0x6a, 0x7a, - 0x05, 0xd7, 0x53, 0x75, 0x04, 0x74, 0x37, 0xb6, 0x9d, 0x53, 0xc8, 0x30, 0x17, 0x0b, 0xb8, 0xd9, - 0x28, 0xee, 0x03, 0x68, 0xa0, 0x5f, 0xcf, 0x7c, 0xa6, 0x0c, 0xa1, 0x67, 0x3e, 0xa7, 0x2e, 0x90, - 0xde, 0x66, 0x59, 0xd0, 0x5e, 0x6f, 0xb3, 0xc2, 0xf2, 0x81, 0xde, 0x66, 0xc5, 0x98, 0x7f, 0xd2, - 0x6f, 0x61, 0x67, 0x18, 0x6f, 0x4f, 0xda, 0x29, 0x40, 0xfe, 0x93, 0x76, 0x8a, 0xe0, 0xfa, 0xa4, - 0x9d, 0x7e, 0xb6, 0x0a, 0xad, 0x00, 0x73, 0xf4, 0xb8, 0x68, 0x87, 0xa5, 0x91, 0x7b, 0xf3, 0xed, - 0xef, 0x94, 0xcb, 0x86, 0xf1, 0xe7, 0x50, 0x4f, 0x22, 0xe7, 0xe8, 0x4e, 0x5a, 0x47, 0x0a, 0x7a, - 0x34, 0xef, 0xe6, 0x33, 0x33, 0x83, 0x79, 0x66, 0xa0, 0x5f, 0x19, 0x60, 0x16, 0xc3, 0x8b, 0xe8, - 0x9d, 0x51, 0xae, 0xa6, 0x8d, 0xbe, 0xfb, 0x26, 0xa2, 0x99, 0x81, 0x3d, 0x31, 0xd0, 0x0b, 0xa8, - 0xc6, 0xe8, 0x36, 0x6a, 0x16, 0x61, 0xf3, 0xe6, 0x42, 0x0e, 0x27, 0x1b, 0xa7, 0x63, 0xa8, 0x27, - 0x61, 0x6b, 0x1d, 0xa7, 0x1c, 0xac, 0x5c, 0xc7, 0x29, 0x17, 0xe9, 0x1e, 0x3a, 0xc3, 0x35, 0x26, - 0x9a, 0x38, 0xc3, 0x33, 0x90, 0x6b, 0xe2, 0x0c, 0xcf, 0x82, 0xa8, 0xc9, 0x75, 0x84, 0xc5, 0x1f, - 0x06, 0x69, 0x44, 0x13, 0x25, 0x0b, 0xfd, 0xb9, 0xe0, 0xa9, 0x3e, 0xad, 0x0a, 0xe1, 0xd0, 0xf4, - 0xfc, 0x7a, 0x30, 0x93, 0xc1, 0x2a, 0xb5, 0x99, 0x22, 0x58, 0x54, 0x9b, 0x29, 0x04, 0x3a, 0x93, - 0x63, 0xd9, 0x84, 0xb2, 0xfa, 0x0b, 0x08, 0xdd, 0x8e, 0x3b, 0xa6, 0x7e, 0x2e, 0x32, 0xe7, 0x33, - 0xf4, 0x6c, 0x94, 0x8f, 0xa0, 0x96, 0x00, 0x35, 0x51, 0xf2, 0x6a, 0x19, 0x02, 0x2b, 0x75, 0x94, - 0x73, 0x50, 0xd0, 0x74, 0x00, 0x7e, 0xcd, 0x53, 0x88, 0x11, 0x58, 0x23, 0x7a, 0x6f, 0xd4, 0xba, - 0x1d, 0xb6, 0xfb, 0xfe, 0x9b, 0x09, 0x67, 0xc7, 0xf6, 0x19, 0x5c, 0x4f, 0x01, 0x68, 0xfa, 0xbc, - 0xce, 0xc3, 0x37, 0xf5, 0x79, 0x9d, 0x8b, 0xba, 0xa5, 0x47, 0x18, 0xc2, 0x5c, 0x1e, 0xfe, 0x81, - 0x1e, 0xea, 0x0d, 0x53, 0x88, 0xe1, 0x98, 0x8f, 0x46, 0x0b, 0xe5, 0xd9, 0xc3, 0x30, 0x93, 0x41, - 0x92, 0xf4, 0x92, 0x2a, 0x02, 0xb7, 0xf4, 0x92, 0x2a, 0x84, 0xa1, 0xd2, 0x66, 0x3a, 0x80, 0xb2, - 0x35, 0x20, 0x94, 0x78, 0xeb, 0x16, 0x14, 0xa1, 0xf4, 0x81, 0x3e, 0xa2, 0x84, 0x94, 0x3a, 0x80, - 0x30, 0xcc, 0x64, 0xea, 0x3f, 0x7a, 0x40, 0x45, 0xa5, 0x26, 0x3d, 0xa0, 0xc2, 0xe2, 0x51, 0x7a, - 0x40, 0x3b, 0x50, 0x19, 0x20, 0x2c, 0xfa, 0xf2, 0x1f, 0x42, 0x8f, 0xf4, 0xe5, 0x9f, 0x01, 0x63, - 0x12, 0x8b, 0xe9, 0x73, 0xb8, 0x39, 0x04, 0x39, 0xa0, 0x7b, 0xa9, 0x57, 0x4c, 0x06, 0x1b, 0x31, - 0x97, 0x0a, 0xf9, 0x59, 0xf5, 0x14, 0x6e, 0xe7, 0x23, 0x0c, 0xe8, 0xad, 0xc4, 0xb2, 0x2c, 0x86, - 0x35, 0xcc, 0xc7, 0xdf, 0x25, 0x96, 0x3d, 0x42, 0x5e, 0xc1, 0xf5, 0x54, 0xae, 0xac, 0xf7, 0x47, - 0x1e, 0x6a, 0xa1, 0xf7, 0x47, 0x3e, 0x6e, 0x90, 0x18, 0x0c, 0x19, 0xc2, 0x16, 0x06, 0x49, 0x38, - 0x7a, 0x94, 0xab, 0x62, 0x08, 0x60, 0x30, 0xdf, 0xfa, 0x0e, 0xa9, 0xdc, 0xc7, 0xf9, 0x70, 0x16, - 0x9e, 0x4c, 0x13, 0x73, 0xd3, 0xfd, 0x64, 0x9a, 0x58, 0x90, 0xc0, 0x0f, 0x5b, 0x48, 0xe7, 0xd5, - 0x49, 0x0b, 0xb9, 0x59, 0x7e, 0xd2, 0x42, 0x41, 0x4a, 0x9e, 0xb0, 0xe0, 0xc3, 0x6c, 0x4e, 0x7e, - 0x8c, 0x12, 0x3b, 0xab, 0x28, 0x75, 0x37, 0x1f, 0x8e, 0x94, 0xc9, 0x98, 0x5a, 0x7b, 0xf6, 0x9a, - 0x77, 0x08, 0xdc, 0x93, 0x65, 0x8f, 0x74, 0x9f, 0xca, 0xcf, 0x0f, 0x08, 0x3d, 0x7d, 0x2a, 0xd5, - 0x3c, 0x15, 0x7f, 0x2b, 0x3f, 0x3d, 0x25, 0xaa, 0xdd, 0x3b, 0x39, 0x99, 0x16, 0xa4, 0xe7, 0xff, - 0x09, 0x00, 0x00, 0xff, 0xff, 0xc8, 0x71, 0x76, 0xe3, 0xf2, 0x2c, 0x00, 0x00, + // 2914 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x4b, 0x6f, 0xdc, 0xc8, + 0xf1, 0xf7, 0xe8, 0x35, 0x33, 0xa5, 0xb1, 0x3d, 0x6a, 0xc9, 0xd2, 0x88, 0xd6, 0xc3, 0xa6, 0xbd, + 0x5e, 0xef, 0x4b, 0xf6, 0xca, 0x7f, 0xe0, 0xbf, 0xc8, 0x03, 0x81, 0xde, 0xd2, 0xda, 0x7a, 0x84, + 0xd2, 0xc6, 0x58, 0x03, 0x0b, 0x2e, 0xc5, 0xe9, 0xd1, 0x30, 0xc3, 0x61, 0xcf, 0x36, 0x7b, 0xa4, + 0xd5, 0x22, 0x87, 0x1c, 0x12, 0x60, 0x4f, 0x41, 0x72, 0x0a, 0x90, 0x4b, 0x2e, 0xf9, 0x04, 0xb9, + 0x05, 0x41, 0x3e, 0x45, 0x4e, 0xf9, 0x2a, 0xb9, 0x24, 0xe8, 0xc7, 0xb0, 0xc9, 0x21, 0x39, 0xeb, + 0x80, 0xca, 0xe6, 0xc6, 0xae, 0xaa, 0xae, 0xaa, 0xae, 0x7e, 0xd6, 0xaf, 0x08, 0x0d, 0x8a, 0x7b, + 0x24, 0xf4, 0x18, 0xa1, 0xd7, 0x1f, 0x85, 0x98, 0x5e, 0x7a, 0x2e, 0x5e, 0xeb, 0x51, 0xc2, 0x08, + 0x9a, 0xba, 0xf0, 0x98, 0xe3, 0x5f, 0x1b, 0xb5, 0xb0, 0xed, 0x50, 0xdc, 0x94, 0x54, 0xf3, 0x10, + 0x16, 0xac, 0xa8, 0xc7, 0xce, 0xd7, 0x5e, 0xc8, 0x42, 0x0b, 0x7f, 0xd5, 0xc7, 0x21, 0x43, 0xeb, + 0x00, 0x5a, 0x59, 0xa3, 0xf4, 0xa0, 0xf4, 0x74, 0x7a, 0x1d, 0xad, 0x49, 0x2d, 0x6b, 0xba, 0x93, + 0x15, 0x93, 0x32, 0xd7, 0xa1, 0x91, 0x56, 0x17, 0xf6, 0x48, 0x10, 0x62, 0x34, 0x0f, 0x53, 0x58, + 0x50, 0x84, 0xae, 0x8a, 0xa5, 0x5a, 0xe6, 0x91, 0xe8, 0xe3, 0xb8, 0x9d, 0x83, 0xc0, 0xa5, 0xb8, + 0x8b, 0x03, 0xe6, 0xf8, 0x45, 0x7c, 0xb8, 0x0f, 0x8b, 0x19, 0xfa, 0xa4, 0x13, 0xa6, 0x0f, 0x33, + 0x92, 0xb9, 0xdb, 0xf7, 0x8b, 0x58, 0x41, 0x8f, 0xe0, 0xb6, 0x4b, 0xb1, 0xc3, 0xb0, 0x7d, 0xee, + 0xb1, 0xae, 0xd3, 0x6b, 0x8c, 0x89, 0x41, 0xd5, 0x24, 0x71, 0x53, 0xd0, 0xcc, 0x39, 0x40, 0x71, + 0x6b, 0xca, 0x87, 0x1e, 0xdc, 0xdb, 0x73, 0xe8, 0xb9, 0x73, 0x81, 0xb7, 0x88, 0xef, 0x63, 0x97, + 0xfd, 0xd7, 0xfd, 0x68, 0xc0, 0xfc, 0xb0, 0x45, 0xe5, 0xcb, 0x36, 0xdc, 0xd9, 0xf2, 0xb1, 0x13, + 0xf4, 0x7b, 0x45, 0x42, 0x3e, 0x03, 0x77, 0x23, 0x2d, 0x4a, 0xf1, 0x4b, 0xb8, 0xa7, 0x85, 0x4f, + 0xbd, 0x6f, 0x70, 0x11, 0xfd, 0x1f, 0xc2, 0xfc, 0xb0, 0x32, 0xb5, 0xa8, 0x10, 0x4c, 0x84, 0xde, + 0x37, 0x58, 0xe8, 0x19, 0xb7, 0xc4, 0xb7, 0xd9, 0x81, 0xc5, 0x8d, 0x5e, 0xcf, 0xbf, 0xde, 0xf3, + 0x98, 0xc3, 0x18, 0xf5, 0xce, 0xfb, 0x0c, 0x17, 0x59, 0xd5, 0xc8, 0x80, 0x0a, 0xc5, 0x97, 0x5e, + 0xe8, 0x91, 0x40, 0x84, 0xb7, 0x66, 0x45, 0x6d, 0x73, 0x09, 0x8c, 0x2c, 0x63, 0x2a, 0x0a, 0x7f, + 0x19, 0x03, 0xb4, 0x8b, 0x99, 0xdb, 0xb6, 0x70, 0x97, 0xb0, 0x22, 0x31, 0xe0, 0xdb, 0x87, 0x0a, + 0x25, 0xc2, 0x85, 0xaa, 0xa5, 0x5a, 0x68, 0x0e, 0x26, 0x5b, 0x84, 0xba, 0xb8, 0x31, 0x2e, 0x26, + 0x5e, 0x36, 0xd0, 0x02, 0x94, 0x03, 0x62, 0x33, 0xe7, 0x22, 0x6c, 0x4c, 0xc8, 0xdd, 0x16, 0x90, + 0x33, 0xe7, 0x22, 0x44, 0x0d, 0x28, 0x33, 0xaf, 0x8b, 0x49, 0x9f, 0x35, 0x26, 0x1f, 0x94, 0x9e, + 0x4e, 0x5a, 0x83, 0x26, 0xef, 0x12, 0x86, 0x6d, 0xbb, 0x83, 0xaf, 0x1b, 0x53, 0xd2, 0x42, 0x18, + 0xb6, 0x5f, 0xe2, 0x6b, 0xb4, 0x0a, 0xd3, 0x9d, 0x80, 0x5c, 0x05, 0x76, 0x9b, 0xf0, 0xdd, 0x5b, + 0x16, 0x4c, 0x10, 0xa4, 0x7d, 0x4e, 0x41, 0x8b, 0x50, 0x09, 0x88, 0xdd, 0xa3, 0xfd, 0x00, 0x37, + 0xaa, 0xc2, 0x5a, 0x39, 0x20, 0x27, 0xbc, 0x89, 0x5e, 0xc0, 0x6d, 0xe9, 0xa7, 0xdd, 0x73, 0xa8, + 0xd3, 0x0d, 0x1b, 0x20, 0x06, 0x7b, 0x47, 0x0f, 0x56, 0xc4, 0xa5, 0x26, 0x85, 0x4e, 0x84, 0xcc, + 0xa7, 0x13, 0x95, 0x4a, 0xbd, 0x6a, 0xde, 0x83, 0xd9, 0x44, 0xe8, 0x54, 0x48, 0x0f, 0x61, 0x61, + 0x4b, 0xac, 0xed, 0x58, 0x9c, 0x0a, 0x2c, 0x2d, 0x03, 0x1a, 0x69, 0x75, 0xca, 0xd4, 0xbf, 0x4a, + 0x30, 0xb3, 0x87, 0xd9, 0x06, 0x75, 0xdb, 0xde, 0x65, 0xa1, 0xc9, 0xbb, 0x0f, 0x55, 0x97, 0x74, + 0xbb, 0x1e, 0xb3, 0xbd, 0xa6, 0x9a, 0xbf, 0x8a, 0x24, 0x1c, 0x34, 0xf9, 0xcc, 0xf6, 0x28, 0x6e, + 0x79, 0x5f, 0x8b, 0x29, 0xac, 0x5a, 0xaa, 0x85, 0x3e, 0x81, 0xa9, 0x16, 0xa1, 0x5d, 0x87, 0x89, + 0x29, 0xbc, 0xb3, 0xfe, 0x60, 0x60, 0x24, 0xe5, 0xd3, 0xda, 0xae, 0x90, 0xb3, 0x94, 0x3c, 0xdf, + 0x15, 0x3d, 0x87, 0xb5, 0xc5, 0x0c, 0xd7, 0x2c, 0xf1, 0x6d, 0xbe, 0x80, 0x29, 0x29, 0x85, 0xca, + 0x30, 0xfe, 0xe6, 0xe0, 0xa4, 0x7e, 0x8b, 0x7f, 0x9c, 0x6d, 0x58, 0xf5, 0x12, 0x02, 0x98, 0x3a, + 0xdb, 0xb0, 0xec, 0xbd, 0x37, 0xf5, 0x31, 0x34, 0x0d, 0x65, 0xfe, 0xbd, 0xf9, 0x66, 0xbd, 0x3e, + 0x6e, 0x3e, 0x05, 0x14, 0x37, 0xa6, 0x37, 0x5d, 0xd3, 0x61, 0x8e, 0x18, 0x7b, 0xcd, 0x12, 0xdf, + 0x7c, 0x5a, 0xf6, 0x9d, 0xf0, 0x15, 0x71, 0x1d, 0x7f, 0x93, 0x3a, 0x81, 0xdb, 0x2e, 0xb4, 0xe5, + 0xcc, 0xe7, 0xd0, 0x48, 0xab, 0x53, 0xe6, 0xe7, 0x60, 0xf2, 0xd2, 0xf1, 0xfb, 0x58, 0xdd, 0x23, + 0xb2, 0x61, 0xfe, 0xbd, 0x04, 0x0d, 0xb1, 0x5e, 0x4e, 0x49, 0x9f, 0xba, 0x58, 0xf6, 0x2a, 0x32, + 0x67, 0x3f, 0x81, 0x99, 0x50, 0xa8, 0xb2, 0x63, 0x5d, 0xc7, 0x72, 0xbb, 0xd6, 0xa5, 0xb0, 0x95, + 0x38, 0x9a, 0x95, 0x82, 0x73, 0xe1, 0x8c, 0x98, 0xde, 0x9a, 0x55, 0x0b, 0x63, 0x0e, 0xa2, 0x65, + 0x00, 0xe6, 0xd0, 0x0b, 0xcc, 0x6c, 0x8a, 0x5b, 0x62, 0xa2, 0x6b, 0x56, 0x55, 0x52, 0x2c, 0xdc, + 0x32, 0x5f, 0xc0, 0x62, 0xc6, 0xa0, 0xf4, 0x8d, 0x4a, 0x71, 0xd8, 0xf7, 0xd9, 0xe0, 0x46, 0x95, + 0x2d, 0x73, 0x03, 0xa6, 0x77, 0x43, 0xb7, 0x53, 0x24, 0xfe, 0x8f, 0xa1, 0x26, 0x55, 0xe8, 0x98, + 0x63, 0x4a, 0x09, 0x55, 0x73, 0x2e, 0x1b, 0xe6, 0x9f, 0x4b, 0x70, 0xf7, 0x35, 0xf5, 0xf8, 0xe6, + 0x69, 0x15, 0x09, 0x75, 0x1d, 0xc6, 0xf9, 0xe8, 0xe5, 0xd9, 0xca, 0x3f, 0x13, 0x47, 0xee, 0x78, + 0xf2, 0xc8, 0x45, 0x0f, 0xa1, 0x46, 0xfc, 0xa6, 0x1d, 0xf1, 0x65, 0xd0, 0xa6, 0x89, 0xdf, 0xb4, + 0x06, 0x22, 0xd1, 0xa1, 0x38, 0x19, 0x3b, 0x14, 0x3f, 0x9d, 0xa8, 0x4c, 0xd5, 0xcb, 0x66, 0x03, + 0xea, 0xda, 0x67, 0x39, 0xbc, 0x4f, 0x27, 0x2a, 0xa5, 0xfa, 0x98, 0xd9, 0x86, 0xb9, 0x5d, 0x2f, + 0x68, 0x1e, 0x62, 0x7a, 0x81, 0x37, 0x9d, 0xb0, 0xd0, 0x8e, 0x5f, 0x82, 0xea, 0xc0, 0xc1, 0xb0, + 0x31, 0xf6, 0x60, 0x9c, 0x4f, 0x6b, 0x44, 0x30, 0x3f, 0x80, 0x7b, 0x43, 0x96, 0xf4, 0xd6, 0x3a, + 0x77, 0x42, 0xb9, 0xb4, 0xab, 0x96, 0xf8, 0x36, 0xbf, 0x2d, 0xc1, 0x8c, 0x3c, 0xa3, 0x76, 0x09, + 0xed, 0xfc, 0x2f, 0x97, 0x34, 0x7f, 0xd0, 0xc4, 0x3d, 0x89, 0x1e, 0x55, 0x8b, 0x07, 0xa1, 0x85, + 0xb9, 0xb3, 0x07, 0xc1, 0x09, 0x25, 0x17, 0x14, 0x87, 0x61, 0xc1, 0xe3, 0x92, 0x0a, 0x75, 0xb1, + 0xe3, 0x52, 0x12, 0x0e, 0x9a, 0xe6, 0x8f, 0xc1, 0xc8, 0xb2, 0xa6, 0x02, 0xb8, 0x0a, 0xd3, 0x5e, + 0x60, 0xf7, 0x14, 0x59, 0x6d, 0x0c, 0xf0, 0x22, 0x41, 0xe9, 0xec, 0xe9, 0x57, 0x7d, 0x27, 0x6c, + 0xdf, 0x98, 0xb3, 0xa1, 0x50, 0x17, 0x73, 0x56, 0x12, 0x06, 0xce, 0xa6, 0xad, 0xbd, 0xad, 0xb3, + 0x2d, 0x58, 0x19, 0xbe, 0x9d, 0x76, 0x29, 0xe9, 0x7e, 0x66, 0xbd, 0x2a, 0xb8, 0xdd, 0xfa, 0xd4, + 0x57, 0xbe, 0xf2, 0x4f, 0xf3, 0x21, 0xac, 0xe6, 0xda, 0x51, 0x93, 0x7c, 0x00, 0xb3, 0x52, 0x64, + 0xb3, 0x1f, 0x34, 0xfd, 0x42, 0xcf, 0xb9, 0xf7, 0x61, 0x2e, 0xa9, 0x6a, 0xc4, 0xbd, 0xf2, 0xed, + 0x18, 0xd4, 0x4f, 0x31, 0xdb, 0x22, 0x41, 0xcb, 0xbb, 0x28, 0x32, 0xe8, 0x4f, 0xa0, 0x8c, 0x03, + 0x46, 0x3d, 0x2c, 0xb7, 0xe3, 0xf4, 0xfa, 0xca, 0xa0, 0xc3, 0xb0, 0xfa, 0xb5, 0x9d, 0x80, 0xd1, + 0x6b, 0x6b, 0x20, 0x6e, 0xfc, 0xba, 0x04, 0x93, 0x82, 0xc4, 0x03, 0xc7, 0x9f, 0x47, 0x72, 0x73, + 0xf2, 0x4f, 0xb4, 0x0c, 0x55, 0x71, 0xfd, 0xd8, 0x21, 0xa3, 0x32, 0xa0, 0xfb, 0xb7, 0xac, 0x8a, + 0x20, 0x9d, 0x32, 0x8a, 0x1e, 0xc2, 0xb4, 0x64, 0x7b, 0x01, 0x7b, 0xb1, 0x2e, 0x4e, 0xb2, 0xc9, + 0xfd, 0x5b, 0x16, 0x08, 0xe2, 0x01, 0xa7, 0xa1, 0x55, 0x90, 0x2d, 0xfb, 0x9c, 0x10, 0x5f, 0x3e, + 0xd6, 0xf6, 0x6f, 0x59, 0x52, 0xeb, 0x26, 0x21, 0xfe, 0x66, 0x59, 0x5d, 0x77, 0xe6, 0x2c, 0xcc, + 0xc4, 0x5c, 0x55, 0xd3, 0xf2, 0x05, 0xcc, 0x6e, 0x63, 0x1f, 0x33, 0x5c, 0x3c, 0x42, 0x08, 0x26, + 0x3a, 0xf8, 0x5a, 0x86, 0xa7, 0x6a, 0x89, 0x6f, 0x73, 0x1e, 0xe6, 0x92, 0xea, 0x95, 0x59, 0x97, + 0x27, 0x59, 0x21, 0x23, 0x14, 0x6f, 0xf5, 0x43, 0x46, 0xba, 0xfb, 0x84, 0x74, 0xc2, 0x82, 0xc6, + 0xc5, 0xdc, 0x8f, 0xc5, 0xe6, 0x7e, 0x09, 0x8c, 0x2c, 0x23, 0xca, 0x85, 0x23, 0x68, 0x6c, 0x3a, + 0x6e, 0xa7, 0xdf, 0xbb, 0x19, 0x0f, 0xcc, 0x67, 0xb0, 0x98, 0xa1, 0x6f, 0xc4, 0xd2, 0xec, 0xc0, + 0xc3, 0xac, 0x4d, 0x53, 0x78, 0x7f, 0x64, 0xc6, 0xe2, 0x31, 0x98, 0xa3, 0x8c, 0xa9, 0x98, 0xec, + 0x03, 0xe2, 0xf7, 0xca, 0x2b, 0xcf, 0xc5, 0x41, 0xa1, 0xfb, 0xcb, 0xdc, 0x82, 0xd9, 0x84, 0x26, + 0x15, 0x87, 0x0f, 0x01, 0xf9, 0x92, 0x64, 0x87, 0x6d, 0x42, 0x99, 0x1d, 0x38, 0xdd, 0xc1, 0x6d, + 0x55, 0x57, 0x9c, 0x53, 0xce, 0x38, 0x72, 0xba, 0x62, 0x8a, 0xf6, 0x30, 0x3b, 0x08, 0x5a, 0x64, + 0xe3, 0x26, 0x12, 0x31, 0xf3, 0x87, 0xb0, 0x98, 0xa1, 0x4f, 0xb9, 0xb6, 0x02, 0xa0, 0x33, 0x30, + 0x35, 0x51, 0x31, 0x0a, 0x77, 0x66, 0xcb, 0xf1, 0xdd, 0xbe, 0xef, 0x30, 0xbc, 0xd5, 0xc6, 0x6e, + 0x27, 0xec, 0x77, 0x8b, 0x38, 0xf3, 0xff, 0xb0, 0x98, 0xa1, 0x4f, 0x39, 0x63, 0x40, 0xc5, 0x55, + 0x34, 0x15, 0x9d, 0xa8, 0xcd, 0x27, 0x69, 0x0f, 0xb3, 0xd3, 0xc0, 0xe9, 0x85, 0x6d, 0x52, 0x24, + 0xf9, 0x37, 0xdf, 0x83, 0xd9, 0x84, 0xa6, 0x11, 0x8b, 0xf5, 0x77, 0x25, 0x78, 0x94, 0xb5, 0x80, + 0x6e, 0xc0, 0x0d, 0x9e, 0xff, 0xb5, 0x19, 0xeb, 0xd9, 0xfa, 0x52, 0x29, 0xf3, 0xf6, 0x67, 0xd4, + 0xe7, 0x97, 0xa3, 0x60, 0x39, 0x7d, 0xd6, 0x56, 0xe9, 0x8d, 0x90, 0xdd, 0xe8, 0xb3, 0xb6, 0xf9, + 0x04, 0x1e, 0x8f, 0x76, 0x49, 0xad, 0xea, 0xdf, 0x96, 0x60, 0x6e, 0x0f, 0x33, 0xcb, 0xb9, 0xda, + 0x6a, 0x3b, 0xc1, 0x45, 0xb1, 0x64, 0xfe, 0x11, 0xdc, 0x6e, 0x51, 0xd2, 0xb5, 0x13, 0x19, 0x7d, + 0xd5, 0xaa, 0x71, 0x62, 0xf4, 0x7e, 0x5c, 0x85, 0x69, 0x46, 0xec, 0xc4, 0x0b, 0xb4, 0x6a, 0x01, + 0x23, 0x03, 0x01, 0xf3, 0x6f, 0x13, 0x70, 0x6f, 0xc8, 0x25, 0x15, 0xfc, 0x7d, 0x98, 0xa6, 0xce, + 0x95, 0xed, 0x4a, 0x72, 0xa3, 0x24, 0xee, 0x9a, 0x77, 0x63, 0xa9, 0x5b, 0xba, 0xcf, 0x5a, 0x44, + 0xb2, 0x80, 0x46, 0x5c, 0xe3, 0x1f, 0xe3, 0x50, 0x8d, 0x38, 0x3c, 0x3d, 0x3f, 0xf7, 0xc9, 0x39, + 0x7f, 0x64, 0xc8, 0x05, 0x35, 0xc5, 0x9b, 0x07, 0xcd, 0x08, 0x02, 0x19, 0xd3, 0x10, 0x08, 0x5a, + 0x86, 0x4a, 0x80, 0xaf, 0x6c, 0x91, 0x04, 0x0a, 0xe7, 0x37, 0xc7, 0x1a, 0x25, 0xab, 0x1c, 0xe0, + 0xab, 0x13, 0x87, 0xf1, 0xa4, 0xa3, 0xc2, 0x5f, 0xd0, 0x82, 0x3d, 0xa1, 0xd9, 0xc4, 0x6f, 0x0a, + 0xf6, 0x31, 0x54, 0x49, 0x0f, 0x53, 0x87, 0xf1, 0xb1, 0x4f, 0x8a, 0xdc, 0xf3, 0xe3, 0xb7, 0x1c, + 0xc0, 0xda, 0xf1, 0xa0, 0xa3, 0xa5, 0x75, 0xf0, 0x98, 0xf3, 0x98, 0x68, 0xa5, 0x12, 0x60, 0xa8, + 0x51, 0xe7, 0x2a, 0x92, 0xe7, 0xab, 0x88, 0x3b, 0xd5, 0x25, 0x4d, 0x2c, 0x30, 0x86, 0x49, 0xe1, + 0xd0, 0x21, 0x69, 0x62, 0x01, 0x30, 0xe0, 0x2b, 0xc9, 0xaa, 0x48, 0x56, 0x80, 0xaf, 0x04, 0xeb, + 0x31, 0xdc, 0x19, 0x8c, 0xd4, 0x3e, 0xbf, 0xe6, 0x3b, 0xbf, 0x2a, 0xb3, 0x2c, 0x35, 0xd6, 0x4d, + 0x4e, 0xe3, 0x52, 0x83, 0x01, 0x2b, 0x29, 0x90, 0x52, 0x6a, 0xc8, 0x42, 0xca, 0xf4, 0xa0, 0xaa, + 0xdd, 0x99, 0x86, 0xf2, 0x67, 0x47, 0x2f, 0x8f, 0x8e, 0x5f, 0x1f, 0xd5, 0x6f, 0xa1, 0x2a, 0x4c, + 0x6e, 0x6c, 0x6f, 0xef, 0x6c, 0xcb, 0x5c, 0x79, 0xeb, 0xf8, 0xe4, 0x60, 0x67, 0x5b, 0xe6, 0xca, + 0xdb, 0x3b, 0xaf, 0x76, 0xce, 0x76, 0xb6, 0xeb, 0xe3, 0xa8, 0x06, 0x95, 0xc3, 0xe3, 0xed, 0x83, + 0x5d, 0xce, 0x9a, 0xe0, 0x2c, 0x6b, 0xe7, 0x68, 0xe3, 0x70, 0x67, 0xbb, 0x3e, 0x89, 0xea, 0x50, + 0x3b, 0xfb, 0xfc, 0x64, 0xc7, 0xde, 0xda, 0xdf, 0x38, 0xda, 0xdb, 0xd9, 0xae, 0x4f, 0x99, 0x97, + 0xd0, 0x38, 0xc5, 0x0e, 0x75, 0xdb, 0xbb, 0x9e, 0x8f, 0xc3, 0xcd, 0x6b, 0x7e, 0x5c, 0x16, 0x59, + 0xd5, 0x73, 0x30, 0xf9, 0x55, 0x1f, 0xab, 0xd7, 0x7c, 0xd5, 0x92, 0x8d, 0x41, 0x5e, 0x35, 0x1e, + 0xe5, 0x55, 0xe6, 0xc7, 0xb0, 0x98, 0x61, 0x57, 0x27, 0x79, 0x2d, 0x4e, 0x16, 0x8b, 0xb6, 0x66, + 0xc9, 0x86, 0xf9, 0xa7, 0x12, 0xdc, 0x4f, 0xf4, 0xd9, 0x22, 0x01, 0xc3, 0x01, 0xfb, 0x1e, 0xdc, + 0x45, 0xef, 0x41, 0xdd, 0x6d, 0xf7, 0x83, 0x0e, 0xe6, 0xe9, 0x9e, 0xf4, 0x52, 0xe1, 0x59, 0x77, + 0x15, 0x3d, 0x3a, 0x24, 0xae, 0x61, 0x29, 0xdb, 0x4b, 0x35, 0xb8, 0x06, 0x94, 0xbb, 0x0e, 0x73, + 0xdb, 0xd1, 0xf0, 0x06, 0x4d, 0x9e, 0x82, 0x8b, 0x4f, 0x3b, 0x76, 0xe9, 0x56, 0x05, 0x65, 0xdb, + 0x61, 0x0e, 0x7a, 0x00, 0x35, 0x1c, 0x34, 0x6d, 0xd2, 0xb2, 0x05, 0x4d, 0xe1, 0x6c, 0x80, 0x83, + 0xe6, 0x71, 0xeb, 0x90, 0x53, 0xf8, 0xd9, 0x3a, 0x25, 0x51, 0xaa, 0xc1, 0xd3, 0xba, 0x14, 0x3d, + 0xad, 0xf9, 0xf6, 0x14, 0x77, 0xa4, 0x1c, 0xa9, 0xf8, 0x46, 0x3f, 0x80, 0xc5, 0xe8, 0x54, 0x24, + 0xd4, 0xfb, 0x46, 0xac, 0x38, 0xbb, 0x8d, 0x9d, 0x26, 0xa6, 0xea, 0xb0, 0x59, 0x18, 0x9c, 0x92, + 0x11, 0x7f, 0x5f, 0xb0, 0xd1, 0x3b, 0x70, 0xa7, 0xeb, 0xf1, 0xec, 0xdb, 0xa6, 0xb8, 0xd5, 0x75, + 0x7a, 0x61, 0x63, 0x42, 0xbc, 0xd7, 0x6e, 0x4b, 0xaa, 0x25, 0x89, 0xe6, 0x6f, 0x4a, 0x30, 0x2f, + 0x90, 0x83, 0xfd, 0xb3, 0xb3, 0x93, 0xe2, 0xe8, 0xe3, 0x93, 0x04, 0xfa, 0x98, 0x06, 0xf0, 0x06, + 0x68, 0x64, 0x0c, 0x5e, 0x1c, 0x4f, 0xc0, 0x8b, 0xe6, 0x22, 0x2c, 0xa4, 0xfc, 0x51, 0x53, 0x77, + 0x0a, 0xcb, 0x7b, 0x98, 0x1d, 0x9f, 0xff, 0x1c, 0xbb, 0x6c, 0xdb, 0xa3, 0xd8, 0xbd, 0x09, 0xcc, + 0xf8, 0xff, 0x60, 0x25, 0x4f, 0xe9, 0x08, 0xec, 0xf8, 0x0f, 0x25, 0x98, 0xdb, 0xf2, 0x49, 0x80, + 0xf9, 0x45, 0x74, 0x42, 0x88, 0x5f, 0x2c, 0x68, 0x13, 0x3d, 0xfe, 0xa8, 0x1f, 0xca, 0xb0, 0xa5, + 0x4f, 0x42, 0xb9, 0xe0, 0xc7, 0x82, 0x3b, 0x3e, 0x2a, 0xb8, 0xe6, 0x02, 0xdc, 0x1b, 0xf2, 0x4d, + 0x05, 0xf0, 0xaf, 0x25, 0x58, 0x4a, 0x70, 0x0e, 0x02, 0x86, 0x69, 0xe0, 0x7c, 0x2f, 0xde, 0x67, + 0x82, 0x0a, 0xe3, 0xff, 0x01, 0xa8, 0xb0, 0x0a, 0xcb, 0x39, 0xce, 0x6b, 0xc8, 0x97, 0x47, 0xe2, + 0xf2, 0xe6, 0x20, 0xdf, 0xb4, 0x3a, 0x65, 0x8a, 0x72, 0x53, 0x81, 0x38, 0x14, 0x6f, 0xc0, 0x94, + 0xb8, 0xf8, 0xb0, 0xef, 0x30, 0xef, 0x12, 0xcb, 0xdb, 0x56, 0x3d, 0x36, 0x06, 0x44, 0x7e, 0xf7, + 0x48, 0x7f, 0x86, 0x6d, 0x2a, 0x7f, 0x7e, 0xc1, 0x53, 0xa0, 0x9e, 0xef, 0xb9, 0x37, 0x05, 0x78, + 0xa3, 0xf7, 0x61, 0x4a, 0xce, 0xc0, 0x08, 0xe0, 0x47, 0x49, 0x98, 0xcb, 0x70, 0x3f, 0xd3, 0xba, + 0x74, 0x6e, 0xfd, 0x8f, 0x2b, 0xa2, 0x9a, 0x36, 0xa8, 0xcb, 0xc8, 0x72, 0x23, 0xfa, 0x12, 0xea, + 0xc3, 0x35, 0x40, 0xb4, 0x9a, 0x36, 0x92, 0x28, 0x36, 0x1a, 0x0f, 0xf2, 0x05, 0x54, 0x24, 0xaa, + 0xff, 0xfc, 0xfd, 0xd3, 0xc9, 0xca, 0x98, 0x51, 0xfa, 0x18, 0xb9, 0x83, 0x22, 0x5e, 0xac, 0xc2, + 0x87, 0xe2, 0x1a, 0x32, 0x8b, 0x89, 0xc6, 0xc3, 0x11, 0x12, 0x09, 0x23, 0x25, 0x6e, 0xe4, 0x08, + 0x40, 0xd7, 0xee, 0xd0, 0x62, 0xb2, 0x6f, 0xac, 0x7a, 0x68, 0x18, 0x59, 0xac, 0xb4, 0xbe, 0x37, + 0x70, 0x27, 0x59, 0x83, 0x43, 0xcb, 0xd1, 0x9b, 0x2a, 0xab, 0x1a, 0x68, 0xac, 0xe4, 0xb1, 0x33, + 0x75, 0x27, 0xeb, 0x63, 0x5a, 0x77, 0x66, 0x11, 0x4e, 0xeb, 0xce, 0x2e, 0xab, 0xc5, 0x75, 0xb7, + 0x00, 0xa5, 0x0b, 0x5c, 0x28, 0x8a, 0x65, 0x6e, 0xa5, 0xcd, 0x30, 0x47, 0x89, 0xa4, 0xed, 0xfc, + 0x14, 0xa6, 0x63, 0xe5, 0x1e, 0x14, 0x45, 0x35, 0x5d, 0x3e, 0x33, 0xee, 0x67, 0xf2, 0xd2, 0x2a, + 0xbf, 0x84, 0xfa, 0x70, 0x7e, 0xa1, 0x57, 0x62, 0x4e, 0x11, 0x49, 0xaf, 0xc4, 0xdc, 0xb2, 0x50, + 0xcc, 0xc2, 0x09, 0x80, 0xae, 0x8f, 0xe8, 0x45, 0x92, 0x2a, 0xd0, 0xe8, 0x45, 0x92, 0x2e, 0xa7, + 0xc4, 0xf4, 0x3d, 0x2f, 0x71, 0x9f, 0x87, 0x0b, 0x1f, 0xda, 0xe7, 0x9c, 0x0a, 0x8b, 0xf6, 0x39, + 0xaf, 0x66, 0x32, 0xb4, 0x7b, 0x52, 0x25, 0x05, 0xbd, 0x7b, 0xf2, 0x4a, 0x28, 0x7a, 0xf7, 0xe4, + 0xd6, 0x23, 0xe2, 0x81, 0xf9, 0x11, 0x4c, 0xec, 0x86, 0x6e, 0x07, 0xcd, 0x46, 0xbd, 0x74, 0x41, + 0xc2, 0x98, 0x4b, 0x12, 0xd3, 0xbd, 0xf7, 0xa1, 0x32, 0x80, 0xe8, 0xd1, 0xc2, 0x40, 0x78, 0xa8, + 0xd0, 0x60, 0x34, 0xd2, 0x8c, 0xb4, 0xa6, 0xd7, 0x70, 0x3b, 0x01, 0xb4, 0xa3, 0xa5, 0xc8, 0x76, + 0x06, 0xd2, 0x6f, 0x2c, 0xe7, 0x70, 0xd3, 0x51, 0x3c, 0x02, 0xd0, 0x48, 0xb8, 0x9e, 0xf9, 0x14, + 0x4e, 0xaf, 0x67, 0x3e, 0x03, 0x38, 0x4f, 0x6e, 0xb3, 0x34, 0xaa, 0xad, 0xb7, 0x59, 0x2e, 0xbe, + 0xae, 0xb7, 0x59, 0x3e, 0x28, 0x1e, 0xf7, 0x5b, 0xd8, 0x19, 0x06, 0xa4, 0xe3, 0x76, 0x72, 0xa0, + 0xf1, 0xb8, 0x9d, 0x3c, 0x3c, 0x3b, 0x6e, 0xa7, 0x9f, 0x2e, 0xd3, 0x2a, 0x44, 0x19, 0x3d, 0xc9, + 0xdb, 0x61, 0x49, 0x68, 0xdb, 0x78, 0xf7, 0x3b, 0xe5, 0xd2, 0x61, 0xfc, 0x19, 0xd4, 0xe2, 0xd0, + 0x32, 0xba, 0x9f, 0xd4, 0x91, 0xc0, 0xe6, 0x8c, 0xa5, 0x6c, 0x66, 0x6a, 0x30, 0xcf, 0x4b, 0xe8, + 0x97, 0x25, 0x30, 0xf2, 0xf1, 0x37, 0xf4, 0xde, 0x28, 0x57, 0x93, 0x46, 0xdf, 0x7f, 0x1b, 0xd1, + 0xd4, 0xc0, 0x9e, 0x96, 0xd0, 0x4b, 0xa8, 0x46, 0xf0, 0x2f, 0x6a, 0xe4, 0x81, 0xd7, 0xc6, 0x62, + 0x06, 0x27, 0x1d, 0xa7, 0x33, 0xa8, 0xc5, 0x71, 0x5d, 0x1d, 0xa7, 0x0c, 0x30, 0x59, 0xc7, 0x29, + 0x13, 0x0a, 0x1e, 0x3a, 0xc3, 0x35, 0x68, 0x18, 0x3b, 0xc3, 0x53, 0x98, 0x64, 0xec, 0x0c, 0x4f, + 0xa3, 0x8c, 0xf1, 0x75, 0x84, 0x45, 0x09, 0x3e, 0x09, 0xf9, 0xa1, 0x78, 0x25, 0x3c, 0x13, 0x5d, + 0xd4, 0xa7, 0x55, 0x2e, 0x5e, 0x98, 0x9c, 0x5f, 0x17, 0x66, 0x52, 0x60, 0x9e, 0x36, 0x93, 0x87, + 0x1b, 0x6a, 0x33, 0xb9, 0x48, 0x60, 0x7c, 0x2c, 0x3b, 0x50, 0x56, 0xbf, 0xc9, 0xa0, 0xf9, 0xa8, + 0x63, 0xe2, 0xef, 0x1b, 0x63, 0x21, 0x45, 0x4f, 0x47, 0xf9, 0x14, 0xa6, 0x63, 0xa8, 0x1f, 0x8a, + 0x5f, 0x2d, 0x43, 0x68, 0x9e, 0x8e, 0x72, 0x06, 0x4c, 0x98, 0x0c, 0xc0, 0xaf, 0x78, 0x0a, 0x31, + 0x02, 0x8c, 0x43, 0x1f, 0x8c, 0x5a, 0xb7, 0xc3, 0x76, 0x3f, 0x7c, 0x3b, 0xe1, 0xf4, 0xd8, 0x3e, + 0x87, 0xdb, 0x09, 0x84, 0x49, 0x9f, 0xd7, 0x59, 0x00, 0xa0, 0x3e, 0xaf, 0x33, 0x61, 0xa9, 0xe4, + 0x08, 0x03, 0x98, 0xcb, 0x02, 0x08, 0xd0, 0x23, 0xbd, 0x61, 0x72, 0x41, 0x0e, 0xe3, 0xf1, 0x68, + 0xa1, 0x2c, 0x7b, 0x18, 0x66, 0x52, 0x50, 0x8b, 0x5e, 0x52, 0x79, 0xe8, 0x8f, 0x5e, 0x52, 0xb9, + 0x38, 0x4d, 0xd2, 0x4c, 0x1b, 0x50, 0xba, 0x48, 0x82, 0x62, 0x6f, 0xdd, 0x9c, 0x2a, 0x8d, 0x3e, + 0xd0, 0x47, 0xd4, 0x58, 0x12, 0x07, 0x10, 0x86, 0x99, 0x54, 0x81, 0x44, 0x0f, 0x28, 0xaf, 0x16, + 0xa3, 0x07, 0x94, 0x5b, 0x5d, 0x49, 0x0e, 0xe8, 0x0b, 0xb8, 0x3b, 0x04, 0x14, 0xa0, 0x95, 0xc4, + 0xdb, 0x23, 0x85, 0x68, 0x18, 0xab, 0xb9, 0xfc, 0xf4, 0x0a, 0xa3, 0x30, 0x9f, 0x8d, 0x0b, 0xa0, + 0x77, 0x62, 0x8b, 0x29, 0x1f, 0x8c, 0x30, 0x9e, 0x7c, 0x97, 0x58, 0x7a, 0xe3, 0xbf, 0x86, 0xdb, + 0x89, 0x0c, 0x57, 0xaf, 0xea, 0x2c, 0xac, 0x41, 0xaf, 0xea, 0xec, 0x6c, 0x3f, 0x36, 0x18, 0x32, + 0x84, 0x08, 0x0c, 0x52, 0x67, 0xf4, 0x38, 0x53, 0xc5, 0x10, 0x2c, 0x60, 0xbc, 0xf3, 0x1d, 0x52, + 0x99, 0x4f, 0xea, 0xe1, 0xdc, 0x39, 0x9e, 0xdc, 0x65, 0x26, 0xe9, 0xf1, 0xe4, 0x2e, 0x27, 0xed, + 0x1e, 0xb6, 0x90, 0xcc, 0x86, 0xe3, 0x16, 0x32, 0x73, 0xf3, 0xb8, 0x85, 0x9c, 0x44, 0x3a, 0x66, + 0xc1, 0x83, 0xd9, 0x8c, 0xac, 0x16, 0xc5, 0xf6, 0x43, 0x5e, 0xc2, 0x6d, 0x3c, 0x1a, 0x29, 0x93, + 0x32, 0xb5, 0xf9, 0xfc, 0x0d, 0xef, 0xe0, 0x3b, 0xe7, 0x6b, 0x2e, 0xe9, 0x3e, 0x93, 0x9f, 0x1f, + 0x11, 0x7a, 0xf1, 0x4c, 0xaa, 0x79, 0x26, 0x7e, 0xc2, 0x7d, 0x76, 0x41, 0x54, 0xbb, 0x77, 0x7e, + 0x3e, 0x25, 0x48, 0x2f, 0xfe, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x26, 0xfd, 0x42, 0xe3, 0xc9, 0x2b, + 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -4148,7 +4056,6 @@ type RepositoryServiceClient interface { SearchFilesByName(ctx context.Context, in *SearchFilesByNameRequest, opts ...grpc.CallOption) (RepositoryService_SearchFilesByNameClient, error) RestoreCustomHooks(ctx context.Context, opts ...grpc.CallOption) (RepositoryService_RestoreCustomHooksClient, error) BackupCustomHooks(ctx context.Context, in *BackupCustomHooksRequest, opts ...grpc.CallOption) (RepositoryService_BackupCustomHooksClient, error) - PreFetch(ctx context.Context, in *PreFetchRequest, opts ...grpc.CallOption) (*PreFetchResponse, error) FetchHTTPRemote(ctx context.Context, in *FetchHTTPRemoteRequest, opts ...grpc.CallOption) (*FetchHTTPRemoteResponse, error) GetObjectDirectorySize(ctx context.Context, in *GetObjectDirectorySizeRequest, opts ...grpc.CallOption) (*GetObjectDirectorySizeResponse, error) CloneFromPool(ctx context.Context, in *CloneFromPoolRequest, opts ...grpc.CallOption) (*CloneFromPoolResponse, error) @@ -4697,15 +4604,6 @@ func (x *repositoryServiceBackupCustomHooksClient) Recv() (*BackupCustomHooksRes return m, nil } -func (c *repositoryServiceClient) PreFetch(ctx context.Context, in *PreFetchRequest, opts ...grpc.CallOption) (*PreFetchResponse, error) { - out := new(PreFetchResponse) - err := c.cc.Invoke(ctx, "/gitaly.RepositoryService/PreFetch", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *repositoryServiceClient) FetchHTTPRemote(ctx context.Context, in *FetchHTTPRemoteRequest, opts ...grpc.CallOption) (*FetchHTTPRemoteResponse, error) { out := new(FetchHTTPRemoteResponse) err := c.cc.Invoke(ctx, "/gitaly.RepositoryService/FetchHTTPRemote", in, out, opts...) @@ -4804,7 +4702,6 @@ type RepositoryServiceServer interface { SearchFilesByName(*SearchFilesByNameRequest, RepositoryService_SearchFilesByNameServer) error RestoreCustomHooks(RepositoryService_RestoreCustomHooksServer) error BackupCustomHooks(*BackupCustomHooksRequest, RepositoryService_BackupCustomHooksServer) error - PreFetch(context.Context, *PreFetchRequest) (*PreFetchResponse, error) FetchHTTPRemote(context.Context, *FetchHTTPRemoteRequest) (*FetchHTTPRemoteResponse, error) GetObjectDirectorySize(context.Context, *GetObjectDirectorySizeRequest) (*GetObjectDirectorySizeResponse, error) CloneFromPool(context.Context, *CloneFromPoolRequest) (*CloneFromPoolResponse, error) @@ -4917,9 +4814,6 @@ func (*UnimplementedRepositoryServiceServer) RestoreCustomHooks(srv RepositorySe func (*UnimplementedRepositoryServiceServer) BackupCustomHooks(req *BackupCustomHooksRequest, srv RepositoryService_BackupCustomHooksServer) error { return status.Errorf(codes.Unimplemented, "method BackupCustomHooks not implemented") } -func (*UnimplementedRepositoryServiceServer) PreFetch(ctx context.Context, req *PreFetchRequest) (*PreFetchResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method PreFetch not implemented") -} func (*UnimplementedRepositoryServiceServer) FetchHTTPRemote(ctx context.Context, req *FetchHTTPRemoteRequest) (*FetchHTTPRemoteResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method FetchHTTPRemote not implemented") } @@ -5580,24 +5474,6 @@ func (x *repositoryServiceBackupCustomHooksServer) Send(m *BackupCustomHooksResp return x.ServerStream.SendMsg(m) } -func _RepositoryService_PreFetch_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(PreFetchRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(RepositoryServiceServer).PreFetch(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/gitaly.RepositoryService/PreFetch", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(RepositoryServiceServer).PreFetch(ctx, req.(*PreFetchRequest)) - } - return interceptor(ctx, in, info, handler) -} - func _RepositoryService_FetchHTTPRemote_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(FetchHTTPRemoteRequest) if err := dec(in); err != nil { @@ -5821,10 +5697,6 @@ var _RepositoryService_serviceDesc = grpc.ServiceDesc{ Handler: _RepositoryService_CreateRepositoryFromSnapshot_Handler, }, { - MethodName: "PreFetch", - Handler: _RepositoryService_PreFetch_Handler, - }, - { MethodName: "FetchHTTPRemote", Handler: _RepositoryService_FetchHTTPRemote_Handler, }, diff --git a/proto/repository-service.proto b/proto/repository-service.proto index 3032daaf0..90d3ac2b1 100644 --- a/proto/repository-service.proto +++ b/proto/repository-service.proto @@ -206,12 +206,6 @@ service RepositoryService { target_repository_field: "1" }; } - rpc PreFetch(PreFetchRequest) returns (PreFetchResponse) { - option (op_type) = { - op: MUTATOR - target_repository_field: "1" - }; - } rpc FetchHTTPRemote(FetchHTTPRemoteRequest) returns (FetchHTTPRemoteResponse) { option (op_type) = { op: MUTATOR @@ -588,14 +582,6 @@ message SearchFilesByContentResponse { bool end_of_match = 3; } -message PreFetchRequest { - Repository source_repository = 1; - Repository target_repository = 2; - ObjectPool object_pool = 3; -} - -message PreFetchResponse {} - message Remote { string url = 1; string name = 2; diff --git a/ruby/proto/gitaly/repository-service_pb.rb b/ruby/proto/gitaly/repository-service_pb.rb index 99fabf2bf..e3ed2339e 100644 --- a/ruby/proto/gitaly/repository-service_pb.rb +++ b/ruby/proto/gitaly/repository-service_pb.rb @@ -265,13 +265,6 @@ Google::Protobuf::DescriptorPool.generated_pool.build do optional :match_data, :bytes, 2 optional :end_of_match, :bool, 3 end - add_message "gitaly.PreFetchRequest" do - optional :source_repository, :message, 1, "gitaly.Repository" - optional :target_repository, :message, 2, "gitaly.Repository" - optional :object_pool, :message, 3, "gitaly.ObjectPool" - end - add_message "gitaly.PreFetchResponse" do - end add_message "gitaly.Remote" do optional :url, :string, 1 optional :name, :string, 2 @@ -395,8 +388,6 @@ module Gitaly SearchFilesByNameResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.SearchFilesByNameResponse").msgclass SearchFilesByContentRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.SearchFilesByContentRequest").msgclass SearchFilesByContentResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.SearchFilesByContentResponse").msgclass - PreFetchRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.PreFetchRequest").msgclass - PreFetchResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.PreFetchResponse").msgclass Remote = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.Remote").msgclass FetchHTTPRemoteRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.FetchHTTPRemoteRequest").msgclass FetchHTTPRemoteResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.FetchHTTPRemoteResponse").msgclass diff --git a/ruby/proto/gitaly/repository-service_services_pb.rb b/ruby/proto/gitaly/repository-service_services_pb.rb index 60463be13..61928048f 100644 --- a/ruby/proto/gitaly/repository-service_services_pb.rb +++ b/ruby/proto/gitaly/repository-service_services_pb.rb @@ -47,7 +47,6 @@ module Gitaly rpc :SearchFilesByName, SearchFilesByNameRequest, stream(SearchFilesByNameResponse) rpc :RestoreCustomHooks, stream(RestoreCustomHooksRequest), RestoreCustomHooksResponse rpc :BackupCustomHooks, BackupCustomHooksRequest, stream(BackupCustomHooksResponse) - rpc :PreFetch, PreFetchRequest, PreFetchResponse rpc :FetchHTTPRemote, FetchHTTPRemoteRequest, FetchHTTPRemoteResponse rpc :GetObjectDirectorySize, GetObjectDirectorySizeRequest, GetObjectDirectorySizeResponse rpc :CloneFromPool, CloneFromPoolRequest, CloneFromPoolResponse |