diff options
author | Paul Okstad <pokstad@gitlab.com> | 2019-06-05 01:43:13 +0300 |
---|---|---|
committer | Paul Okstad <pokstad@gitlab.com> | 2019-06-05 01:43:13 +0300 |
commit | 2b0afd9a6c3fac5dede991a993abf94a390c33aa (patch) | |
tree | 4d8badd144e6dee4309673908c41da4dc78ab798 | |
parent | b27493b8a6f19a0b4ab6325d38781a4f03088904 (diff) | |
parent | 11a757ce00e09b26746f4ea3d8e84c2e889fd578 (diff) |
Merge branch 'pb-get-objects-directory-size' into 'master'
Add GetObjectDirectorySize RPC
See merge request gitlab-org/gitaly!1263
-rw-r--r-- | changelogs/unreleased/pb-get-objects-directory-size.yml | 5 | ||||
-rw-r--r-- | internal/helper/repo.go | 27 | ||||
-rw-r--r-- | internal/helper/repo_test.go | 74 | ||||
-rw-r--r-- | internal/service/repository/size.go | 29 | ||||
-rw-r--r-- | internal/service/repository/size_test.go | 24 | ||||
-rw-r--r-- | vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/go.mod | 1 | ||||
-rw-r--r-- | vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/repository-service.pb.go | 627 | ||||
-rw-r--r-- | vendor/vendor.json | 10 |
8 files changed, 525 insertions, 272 deletions
diff --git a/changelogs/unreleased/pb-get-objects-directory-size.yml b/changelogs/unreleased/pb-get-objects-directory-size.yml new file mode 100644 index 000000000..a7a4a47ca --- /dev/null +++ b/changelogs/unreleased/pb-get-objects-directory-size.yml @@ -0,0 +1,5 @@ +--- +title: Add GetObjectDirectorySize RPC +merge_request: 1263 +author: +type: added diff --git a/internal/helper/repo.go b/internal/helper/repo.go index 4a5ba852b..c35725b25 100644 --- a/internal/helper/repo.go +++ b/internal/helper/repo.go @@ -93,3 +93,30 @@ func IsGitDirectory(dir string) bool { return true } + +// GetObjectDirectoryPath returns the full path of the object directory in a +// repository referenced by an RPC Repository message. The errors returned are +// gRPC errors with relevant error codes and should be passed back to gRPC +// without further decoration. +func GetObjectDirectoryPath(repo repository.GitRepo) (string, error) { + repoPath, err := GetRepoPath(repo) + if err != nil { + return "", err + } + + objectDirectoryPath := repo.GetGitObjectDirectory() + if objectDirectoryPath == "" { + return "", status.Errorf(codes.InvalidArgument, "GetObjectDirectoryPath: empty directory") + } + + if ContainsPathTraversal(objectDirectoryPath) { + return "", status.Errorf(codes.InvalidArgument, "GetObjectDirectoryPath: relative path can't contain directory traversal") + } + + fullPath := path.Join(repoPath, objectDirectoryPath) + if _, err := os.Stat(fullPath); os.IsNotExist(err) { + return "", status.Errorf(codes.NotFound, "GetObjectDirectoryPath: does not exist '%s'", fullPath) + } + + return fullPath, nil +} diff --git a/internal/helper/repo_test.go b/internal/helper/repo_test.go index ca2c43cc2..58a200423 100644 --- a/internal/helper/repo_test.go +++ b/internal/helper/repo_test.go @@ -160,3 +160,77 @@ func TestGetRepoPathWithCorruptedRepo(t *testing.T) { assertInvalidRepoWithoutFile(t, testRepo, testRepoPath, file) } } + +func TestGetObjectDirectoryPath(t *testing.T) { + testRepo := testhelper.TestRepository() + repoPath, err := GetRepoPath(testRepo) + if err != nil { + t.Fatal(err) + } + + testCases := []struct { + desc string + repo *gitalypb.Repository + path string + err codes.Code + }{ + { + desc: "storages configured", + repo: &gitalypb.Repository{StorageName: "default", RelativePath: testhelper.TestRelativePath, GitObjectDirectory: "objects/"}, + path: path.Join(repoPath, "objects/"), + }, + { + desc: "no GitObjectDirectoryPath", + repo: &gitalypb.Repository{StorageName: "default", RelativePath: testhelper.TestRelativePath}, + err: codes.InvalidArgument, + }, + { + desc: "with directory traversal", + repo: &gitalypb.Repository{StorageName: "default", RelativePath: testhelper.TestRelativePath, GitObjectDirectory: "../bazqux.git"}, + err: codes.InvalidArgument, + }, + { + desc: "valid path but doesn't exist", + repo: &gitalypb.Repository{StorageName: "default", RelativePath: testhelper.TestRelativePath, GitObjectDirectory: "foo../bazqux.git"}, + err: codes.NotFound, + }, + { + desc: "with sneaky directory traversal", + repo: &gitalypb.Repository{StorageName: "default", RelativePath: testhelper.TestRelativePath, GitObjectDirectory: "/../bazqux.git"}, + err: codes.InvalidArgument, + }, + { + desc: "with one level traversal at the end", + repo: &gitalypb.Repository{StorageName: "default", RelativePath: testhelper.TestRelativePath, GitObjectDirectory: "objects/.."}, + err: codes.InvalidArgument, + }, + { + desc: "with one level dashed traversal at the end", + repo: &gitalypb.Repository{StorageName: "default", RelativePath: testhelper.TestRelativePath, GitObjectDirectory: "objects/../"}, + err: codes.InvalidArgument, + }, + { + desc: "with deep traversal at the end", + repo: &gitalypb.Repository{StorageName: "default", RelativePath: testhelper.TestRelativePath, GitObjectDirectory: "bazqux.git/../.."}, + err: codes.InvalidArgument, + }, + } + + for _, tc := range testCases { + t.Run(tc.desc, func(t *testing.T) { + path, err := GetObjectDirectoryPath(tc.repo) + + if tc.err != codes.OK { + testhelper.RequireGrpcError(t, err, tc.err) + return + } + + if err != nil { + assert.NoError(t, err) + return + } + + assert.Equal(t, tc.path, path) + }) + } +} diff --git a/internal/service/repository/size.go b/internal/service/repository/size.go index 937308cdc..cc84acf4c 100644 --- a/internal/service/repository/size.go +++ b/internal/service/repository/size.go @@ -20,38 +20,47 @@ func (s *server) RepositorySize(ctx context.Context, in *gitalypb.RepositorySize return nil, err } + return &gitalypb.RepositorySizeResponse{Size: getPathSize(ctx, path)}, nil +} + +func (s *server) GetObjectDirectorySize(ctx context.Context, in *gitalypb.GetObjectDirectorySizeRequest) (*gitalypb.GetObjectDirectorySizeResponse, error) { + path, err := helper.GetObjectDirectoryPath(in.Repository) + if err != nil { + return nil, err + } + + return &gitalypb.GetObjectDirectorySizeResponse{Size: getPathSize(ctx, path)}, nil +} + +func getPathSize(ctx context.Context, path string) int64 { cmd, err := command.New(ctx, exec.Command("du", "-sk", path), nil, nil, nil) if err != nil { grpc_logrus.Extract(ctx).WithError(err).Warn("ignoring du command error") - return repositorySizeResponse(0), nil + return 0 } sizeLine, err := ioutil.ReadAll(cmd) if err != nil { grpc_logrus.Extract(ctx).WithError(err).Warn("ignoring command read error") - return repositorySizeResponse(0), nil + return 0 } if err := cmd.Wait(); err != nil { grpc_logrus.Extract(ctx).WithError(err).Warn("ignoring du wait error") - return repositorySizeResponse(0), nil + return 0 } sizeParts := bytes.Split(sizeLine, []byte("\t")) if len(sizeParts) != 2 { grpc_logrus.Extract(ctx).Warn(fmt.Sprintf("ignoring du malformed output: %q", sizeLine)) - return repositorySizeResponse(0), nil + return 0 } size, err := strconv.ParseInt(string(sizeParts[0]), 10, 0) if err != nil { grpc_logrus.Extract(ctx).WithError(err).Warn("ignoring parsing size error") - return repositorySizeResponse(0), nil + return 0 } - return repositorySizeResponse(size), nil -} - -func repositorySizeResponse(size int64) *gitalypb.RepositorySizeResponse { - return &gitalypb.RepositorySizeResponse{Size: size} + return size } diff --git a/internal/service/repository/size_test.go b/internal/service/repository/size_test.go index 15fce8d2e..7fa08c243 100644 --- a/internal/service/repository/size_test.go +++ b/internal/service/repository/size_test.go @@ -79,3 +79,27 @@ func TestFailedRepositorySizeRequest(t *testing.T) { }) } } + +func TestSuccessfulGetObjectDirectorySizeRequest(t *testing.T) { + server, serverSocketPath := runRepoServer(t) + defer server.Stop() + + client, conn := newRepositoryClient(t, serverSocketPath) + defer conn.Close() + + testRepo := testhelper.TestRepository() + testRepo.GitObjectDirectory = "objects/" + + request := &gitalypb.GetObjectDirectorySizeRequest{ + Repository: testRepo, + } + + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + + response, err := client.GetObjectDirectorySize(ctx, request) + require.NoError(t, err) + // We can't test for an exact size because it will be different for systems with different sector sizes, + // so we settle for anything greater than zero. + require.True(t, response.Size > 0, "size must be greater than zero") +} diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/go.mod b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/go.mod deleted file mode 100644 index 05161ff60..000000000 --- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/go.mod +++ /dev/null @@ -1 +0,0 @@ -module gitlab.com/gitlab-org/gitaly-proto/go/gitalypb diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/repository-service.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/repository-service.pb.go index 746ad20dd..b5d4c2e4c 100644 --- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/repository-service.pb.go +++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/repository-service.pb.go @@ -49,7 +49,7 @@ func (x GetArchiveRequest_Format) String() string { return proto.EnumName(GetArchiveRequest_Format_name, int32(x)) } func (GetArchiveRequest_Format) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{18, 0} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{18, 0} } type GetRawChangesResponse_RawChange_Operation int32 @@ -87,7 +87,7 @@ func (x GetRawChangesResponse_RawChange_Operation) String() string { return proto.EnumName(GetRawChangesResponse_RawChange_Operation_name, int32(x)) } func (GetRawChangesResponse_RawChange_Operation) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{63, 0, 0} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{63, 0, 0} } type RepositoryExistsRequest struct { @@ -101,7 +101,7 @@ func (m *RepositoryExistsRequest) Reset() { *m = RepositoryExistsRequest func (m *RepositoryExistsRequest) String() string { return proto.CompactTextString(m) } func (*RepositoryExistsRequest) ProtoMessage() {} func (*RepositoryExistsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{0} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{0} } func (m *RepositoryExistsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RepositoryExistsRequest.Unmarshal(m, b) @@ -139,7 +139,7 @@ func (m *RepositoryExistsResponse) Reset() { *m = RepositoryExistsRespon func (m *RepositoryExistsResponse) String() string { return proto.CompactTextString(m) } func (*RepositoryExistsResponse) ProtoMessage() {} func (*RepositoryExistsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{1} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{1} } func (m *RepositoryExistsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RepositoryExistsResponse.Unmarshal(m, b) @@ -177,7 +177,7 @@ func (m *RepackIncrementalRequest) Reset() { *m = RepackIncrementalReque func (m *RepackIncrementalRequest) String() string { return proto.CompactTextString(m) } func (*RepackIncrementalRequest) ProtoMessage() {} func (*RepackIncrementalRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{2} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{2} } func (m *RepackIncrementalRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RepackIncrementalRequest.Unmarshal(m, b) @@ -214,7 +214,7 @@ func (m *RepackIncrementalResponse) Reset() { *m = RepackIncrementalResp func (m *RepackIncrementalResponse) String() string { return proto.CompactTextString(m) } func (*RepackIncrementalResponse) ProtoMessage() {} func (*RepackIncrementalResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{3} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{3} } func (m *RepackIncrementalResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RepackIncrementalResponse.Unmarshal(m, b) @@ -246,7 +246,7 @@ func (m *RepackFullRequest) Reset() { *m = RepackFullRequest{} } func (m *RepackFullRequest) String() string { return proto.CompactTextString(m) } func (*RepackFullRequest) ProtoMessage() {} func (*RepackFullRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{4} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{4} } func (m *RepackFullRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RepackFullRequest.Unmarshal(m, b) @@ -290,7 +290,7 @@ func (m *RepackFullResponse) Reset() { *m = RepackFullResponse{} } func (m *RepackFullResponse) String() string { return proto.CompactTextString(m) } func (*RepackFullResponse) ProtoMessage() {} func (*RepackFullResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{5} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{5} } func (m *RepackFullResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RepackFullResponse.Unmarshal(m, b) @@ -322,7 +322,7 @@ func (m *GarbageCollectRequest) Reset() { *m = GarbageCollectRequest{} } func (m *GarbageCollectRequest) String() string { return proto.CompactTextString(m) } func (*GarbageCollectRequest) ProtoMessage() {} func (*GarbageCollectRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{6} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{6} } func (m *GarbageCollectRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GarbageCollectRequest.Unmarshal(m, b) @@ -366,7 +366,7 @@ func (m *GarbageCollectResponse) Reset() { *m = GarbageCollectResponse{} func (m *GarbageCollectResponse) String() string { return proto.CompactTextString(m) } func (*GarbageCollectResponse) ProtoMessage() {} func (*GarbageCollectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{7} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{7} } func (m *GarbageCollectResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GarbageCollectResponse.Unmarshal(m, b) @@ -397,7 +397,7 @@ func (m *CleanupRequest) Reset() { *m = CleanupRequest{} } func (m *CleanupRequest) String() string { return proto.CompactTextString(m) } func (*CleanupRequest) ProtoMessage() {} func (*CleanupRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{8} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{8} } func (m *CleanupRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CleanupRequest.Unmarshal(m, b) @@ -434,7 +434,7 @@ func (m *CleanupResponse) Reset() { *m = CleanupResponse{} } func (m *CleanupResponse) String() string { return proto.CompactTextString(m) } func (*CleanupResponse) ProtoMessage() {} func (*CleanupResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{9} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{9} } func (m *CleanupResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CleanupResponse.Unmarshal(m, b) @@ -465,7 +465,7 @@ func (m *RepositorySizeRequest) Reset() { *m = RepositorySizeRequest{} } func (m *RepositorySizeRequest) String() string { return proto.CompactTextString(m) } func (*RepositorySizeRequest) ProtoMessage() {} func (*RepositorySizeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{10} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{10} } func (m *RepositorySizeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RepositorySizeRequest.Unmarshal(m, b) @@ -504,7 +504,7 @@ func (m *RepositorySizeResponse) Reset() { *m = RepositorySizeResponse{} func (m *RepositorySizeResponse) String() string { return proto.CompactTextString(m) } func (*RepositorySizeResponse) ProtoMessage() {} func (*RepositorySizeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{11} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{11} } func (m *RepositorySizeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RepositorySizeResponse.Unmarshal(m, b) @@ -543,7 +543,7 @@ func (m *ApplyGitattributesRequest) Reset() { *m = ApplyGitattributesReq func (m *ApplyGitattributesRequest) String() string { return proto.CompactTextString(m) } func (*ApplyGitattributesRequest) ProtoMessage() {} func (*ApplyGitattributesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{12} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{12} } func (m *ApplyGitattributesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ApplyGitattributesRequest.Unmarshal(m, b) @@ -587,7 +587,7 @@ func (m *ApplyGitattributesResponse) Reset() { *m = ApplyGitattributesRe func (m *ApplyGitattributesResponse) String() string { return proto.CompactTextString(m) } func (*ApplyGitattributesResponse) ProtoMessage() {} func (*ApplyGitattributesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{13} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{13} } func (m *ApplyGitattributesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ApplyGitattributesResponse.Unmarshal(m, b) @@ -626,7 +626,7 @@ func (m *FetchRemoteRequest) Reset() { *m = FetchRemoteRequest{} } func (m *FetchRemoteRequest) String() string { return proto.CompactTextString(m) } func (*FetchRemoteRequest) ProtoMessage() {} func (*FetchRemoteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{14} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{14} } func (m *FetchRemoteRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FetchRemoteRequest.Unmarshal(m, b) @@ -719,7 +719,7 @@ func (m *FetchRemoteResponse) Reset() { *m = FetchRemoteResponse{} } func (m *FetchRemoteResponse) String() string { return proto.CompactTextString(m) } func (*FetchRemoteResponse) ProtoMessage() {} func (*FetchRemoteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{15} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{15} } func (m *FetchRemoteResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FetchRemoteResponse.Unmarshal(m, b) @@ -750,7 +750,7 @@ func (m *CreateRepositoryRequest) Reset() { *m = CreateRepositoryRequest func (m *CreateRepositoryRequest) String() string { return proto.CompactTextString(m) } func (*CreateRepositoryRequest) ProtoMessage() {} func (*CreateRepositoryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{16} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{16} } func (m *CreateRepositoryRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateRepositoryRequest.Unmarshal(m, b) @@ -787,7 +787,7 @@ func (m *CreateRepositoryResponse) Reset() { *m = CreateRepositoryRespon func (m *CreateRepositoryResponse) String() string { return proto.CompactTextString(m) } func (*CreateRepositoryResponse) ProtoMessage() {} func (*CreateRepositoryResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{17} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{17} } func (m *CreateRepositoryResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateRepositoryResponse.Unmarshal(m, b) @@ -822,7 +822,7 @@ func (m *GetArchiveRequest) Reset() { *m = GetArchiveRequest{} } func (m *GetArchiveRequest) String() string { return proto.CompactTextString(m) } func (*GetArchiveRequest) ProtoMessage() {} func (*GetArchiveRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{18} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{18} } func (m *GetArchiveRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetArchiveRequest.Unmarshal(m, b) @@ -888,7 +888,7 @@ func (m *GetArchiveResponse) Reset() { *m = GetArchiveResponse{} } func (m *GetArchiveResponse) String() string { return proto.CompactTextString(m) } func (*GetArchiveResponse) ProtoMessage() {} func (*GetArchiveResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{19} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{19} } func (m *GetArchiveResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetArchiveResponse.Unmarshal(m, b) @@ -926,7 +926,7 @@ func (m *HasLocalBranchesRequest) Reset() { *m = HasLocalBranchesRequest func (m *HasLocalBranchesRequest) String() string { return proto.CompactTextString(m) } func (*HasLocalBranchesRequest) ProtoMessage() {} func (*HasLocalBranchesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{20} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{20} } func (m *HasLocalBranchesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_HasLocalBranchesRequest.Unmarshal(m, b) @@ -964,7 +964,7 @@ func (m *HasLocalBranchesResponse) Reset() { *m = HasLocalBranchesRespon func (m *HasLocalBranchesResponse) String() string { return proto.CompactTextString(m) } func (*HasLocalBranchesResponse) ProtoMessage() {} func (*HasLocalBranchesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{21} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{21} } func (m *HasLocalBranchesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_HasLocalBranchesResponse.Unmarshal(m, b) @@ -1005,7 +1005,7 @@ func (m *FetchSourceBranchRequest) Reset() { *m = FetchSourceBranchReque func (m *FetchSourceBranchRequest) String() string { return proto.CompactTextString(m) } func (*FetchSourceBranchRequest) ProtoMessage() {} func (*FetchSourceBranchRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{22} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{22} } func (m *FetchSourceBranchRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FetchSourceBranchRequest.Unmarshal(m, b) @@ -1064,7 +1064,7 @@ func (m *FetchSourceBranchResponse) Reset() { *m = FetchSourceBranchResp func (m *FetchSourceBranchResponse) String() string { return proto.CompactTextString(m) } func (*FetchSourceBranchResponse) ProtoMessage() {} func (*FetchSourceBranchResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{23} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{23} } func (m *FetchSourceBranchResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FetchSourceBranchResponse.Unmarshal(m, b) @@ -1102,7 +1102,7 @@ func (m *FsckRequest) Reset() { *m = FsckRequest{} } func (m *FsckRequest) String() string { return proto.CompactTextString(m) } func (*FsckRequest) ProtoMessage() {} func (*FsckRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{24} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{24} } func (m *FsckRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FsckRequest.Unmarshal(m, b) @@ -1140,7 +1140,7 @@ func (m *FsckResponse) Reset() { *m = FsckResponse{} } func (m *FsckResponse) String() string { return proto.CompactTextString(m) } func (*FsckResponse) ProtoMessage() {} func (*FsckResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{25} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{25} } func (m *FsckResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FsckResponse.Unmarshal(m, b) @@ -1182,7 +1182,7 @@ func (m *WriteRefRequest) Reset() { *m = WriteRefRequest{} } func (m *WriteRefRequest) String() string { return proto.CompactTextString(m) } func (*WriteRefRequest) ProtoMessage() {} func (*WriteRefRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{26} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{26} } func (m *WriteRefRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_WriteRefRequest.Unmarshal(m, b) @@ -1247,7 +1247,7 @@ func (m *WriteRefResponse) Reset() { *m = WriteRefResponse{} } func (m *WriteRefResponse) String() string { return proto.CompactTextString(m) } func (*WriteRefResponse) ProtoMessage() {} func (*WriteRefResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{27} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{27} } func (m *WriteRefResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_WriteRefResponse.Unmarshal(m, b) @@ -1282,7 +1282,7 @@ func (m *FindMergeBaseRequest) Reset() { *m = FindMergeBaseRequest{} } func (m *FindMergeBaseRequest) String() string { return proto.CompactTextString(m) } func (*FindMergeBaseRequest) ProtoMessage() {} func (*FindMergeBaseRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{28} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{28} } func (m *FindMergeBaseRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FindMergeBaseRequest.Unmarshal(m, b) @@ -1327,7 +1327,7 @@ func (m *FindMergeBaseResponse) Reset() { *m = FindMergeBaseResponse{} } func (m *FindMergeBaseResponse) String() string { return proto.CompactTextString(m) } func (*FindMergeBaseResponse) ProtoMessage() {} func (*FindMergeBaseResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{29} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{29} } func (m *FindMergeBaseResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FindMergeBaseResponse.Unmarshal(m, b) @@ -1366,7 +1366,7 @@ func (m *CreateForkRequest) Reset() { *m = CreateForkRequest{} } func (m *CreateForkRequest) String() string { return proto.CompactTextString(m) } func (*CreateForkRequest) ProtoMessage() {} func (*CreateForkRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{30} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{30} } func (m *CreateForkRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateForkRequest.Unmarshal(m, b) @@ -1410,7 +1410,7 @@ func (m *CreateForkResponse) Reset() { *m = CreateForkResponse{} } func (m *CreateForkResponse) String() string { return proto.CompactTextString(m) } func (*CreateForkResponse) ProtoMessage() {} func (*CreateForkResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{31} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{31} } func (m *CreateForkResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateForkResponse.Unmarshal(m, b) @@ -1442,7 +1442,7 @@ func (m *IsRebaseInProgressRequest) Reset() { *m = IsRebaseInProgressReq func (m *IsRebaseInProgressRequest) String() string { return proto.CompactTextString(m) } func (*IsRebaseInProgressRequest) ProtoMessage() {} func (*IsRebaseInProgressRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{32} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{32} } func (m *IsRebaseInProgressRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_IsRebaseInProgressRequest.Unmarshal(m, b) @@ -1487,7 +1487,7 @@ func (m *IsRebaseInProgressResponse) Reset() { *m = IsRebaseInProgressRe func (m *IsRebaseInProgressResponse) String() string { return proto.CompactTextString(m) } func (*IsRebaseInProgressResponse) ProtoMessage() {} func (*IsRebaseInProgressResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{33} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{33} } func (m *IsRebaseInProgressResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_IsRebaseInProgressResponse.Unmarshal(m, b) @@ -1526,7 +1526,7 @@ func (m *IsSquashInProgressRequest) Reset() { *m = IsSquashInProgressReq func (m *IsSquashInProgressRequest) String() string { return proto.CompactTextString(m) } func (*IsSquashInProgressRequest) ProtoMessage() {} func (*IsSquashInProgressRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{34} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{34} } func (m *IsSquashInProgressRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_IsSquashInProgressRequest.Unmarshal(m, b) @@ -1571,7 +1571,7 @@ func (m *IsSquashInProgressResponse) Reset() { *m = IsSquashInProgressRe func (m *IsSquashInProgressResponse) String() string { return proto.CompactTextString(m) } func (*IsSquashInProgressResponse) ProtoMessage() {} func (*IsSquashInProgressResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{35} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{35} } func (m *IsSquashInProgressResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_IsSquashInProgressResponse.Unmarshal(m, b) @@ -1610,7 +1610,7 @@ func (m *CreateRepositoryFromURLRequest) Reset() { *m = CreateRepository func (m *CreateRepositoryFromURLRequest) String() string { return proto.CompactTextString(m) } func (*CreateRepositoryFromURLRequest) ProtoMessage() {} func (*CreateRepositoryFromURLRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{36} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{36} } func (m *CreateRepositoryFromURLRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateRepositoryFromURLRequest.Unmarshal(m, b) @@ -1654,7 +1654,7 @@ func (m *CreateRepositoryFromURLResponse) Reset() { *m = CreateRepositor func (m *CreateRepositoryFromURLResponse) String() string { return proto.CompactTextString(m) } func (*CreateRepositoryFromURLResponse) ProtoMessage() {} func (*CreateRepositoryFromURLResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{37} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{37} } func (m *CreateRepositoryFromURLResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateRepositoryFromURLResponse.Unmarshal(m, b) @@ -1685,7 +1685,7 @@ func (m *CreateBundleRequest) Reset() { *m = CreateBundleRequest{} } func (m *CreateBundleRequest) String() string { return proto.CompactTextString(m) } func (*CreateBundleRequest) ProtoMessage() {} func (*CreateBundleRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{38} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{38} } func (m *CreateBundleRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateBundleRequest.Unmarshal(m, b) @@ -1723,7 +1723,7 @@ func (m *CreateBundleResponse) Reset() { *m = CreateBundleResponse{} } func (m *CreateBundleResponse) String() string { return proto.CompactTextString(m) } func (*CreateBundleResponse) ProtoMessage() {} func (*CreateBundleResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{39} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{39} } func (m *CreateBundleResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateBundleResponse.Unmarshal(m, b) @@ -1762,7 +1762,7 @@ func (m *WriteConfigRequest) Reset() { *m = WriteConfigRequest{} } func (m *WriteConfigRequest) String() string { return proto.CompactTextString(m) } func (*WriteConfigRequest) ProtoMessage() {} func (*WriteConfigRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{40} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{40} } func (m *WriteConfigRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_WriteConfigRequest.Unmarshal(m, b) @@ -1807,7 +1807,7 @@ func (m *WriteConfigResponse) Reset() { *m = WriteConfigResponse{} } func (m *WriteConfigResponse) String() string { return proto.CompactTextString(m) } func (*WriteConfigResponse) ProtoMessage() {} func (*WriteConfigResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{41} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{41} } func (m *WriteConfigResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_WriteConfigResponse.Unmarshal(m, b) @@ -1846,7 +1846,7 @@ func (m *SetConfigRequest) Reset() { *m = SetConfigRequest{} } func (m *SetConfigRequest) String() string { return proto.CompactTextString(m) } func (*SetConfigRequest) ProtoMessage() {} func (*SetConfigRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{42} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{42} } func (m *SetConfigRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SetConfigRequest.Unmarshal(m, b) @@ -1896,7 +1896,7 @@ func (m *SetConfigRequest_Entry) Reset() { *m = SetConfigRequest_Entry{} func (m *SetConfigRequest_Entry) String() string { return proto.CompactTextString(m) } func (*SetConfigRequest_Entry) ProtoMessage() {} func (*SetConfigRequest_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{42, 0} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{42, 0} } func (m *SetConfigRequest_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SetConfigRequest_Entry.Unmarshal(m, b) @@ -2066,7 +2066,7 @@ func (m *SetConfigResponse) Reset() { *m = SetConfigResponse{} } func (m *SetConfigResponse) String() string { return proto.CompactTextString(m) } func (*SetConfigResponse) ProtoMessage() {} func (*SetConfigResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{43} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{43} } func (m *SetConfigResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SetConfigResponse.Unmarshal(m, b) @@ -2098,7 +2098,7 @@ func (m *DeleteConfigRequest) Reset() { *m = DeleteConfigRequest{} } func (m *DeleteConfigRequest) String() string { return proto.CompactTextString(m) } func (*DeleteConfigRequest) ProtoMessage() {} func (*DeleteConfigRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{44} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{44} } func (m *DeleteConfigRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteConfigRequest.Unmarshal(m, b) @@ -2142,7 +2142,7 @@ func (m *DeleteConfigResponse) Reset() { *m = DeleteConfigResponse{} } func (m *DeleteConfigResponse) String() string { return proto.CompactTextString(m) } func (*DeleteConfigResponse) ProtoMessage() {} func (*DeleteConfigResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{45} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{45} } func (m *DeleteConfigResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteConfigResponse.Unmarshal(m, b) @@ -2174,7 +2174,7 @@ func (m *RestoreCustomHooksRequest) Reset() { *m = RestoreCustomHooksReq func (m *RestoreCustomHooksRequest) String() string { return proto.CompactTextString(m) } func (*RestoreCustomHooksRequest) ProtoMessage() {} func (*RestoreCustomHooksRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{46} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{46} } func (m *RestoreCustomHooksRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RestoreCustomHooksRequest.Unmarshal(m, b) @@ -2218,7 +2218,7 @@ func (m *RestoreCustomHooksResponse) Reset() { *m = RestoreCustomHooksRe func (m *RestoreCustomHooksResponse) String() string { return proto.CompactTextString(m) } func (*RestoreCustomHooksResponse) ProtoMessage() {} func (*RestoreCustomHooksResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{47} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{47} } func (m *RestoreCustomHooksResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RestoreCustomHooksResponse.Unmarshal(m, b) @@ -2249,7 +2249,7 @@ func (m *BackupCustomHooksRequest) Reset() { *m = BackupCustomHooksReque func (m *BackupCustomHooksRequest) String() string { return proto.CompactTextString(m) } func (*BackupCustomHooksRequest) ProtoMessage() {} func (*BackupCustomHooksRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{48} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{48} } func (m *BackupCustomHooksRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BackupCustomHooksRequest.Unmarshal(m, b) @@ -2287,7 +2287,7 @@ func (m *BackupCustomHooksResponse) Reset() { *m = BackupCustomHooksResp func (m *BackupCustomHooksResponse) String() string { return proto.CompactTextString(m) } func (*BackupCustomHooksResponse) ProtoMessage() {} func (*BackupCustomHooksResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{49} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{49} } func (m *BackupCustomHooksResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BackupCustomHooksResponse.Unmarshal(m, b) @@ -2327,7 +2327,7 @@ func (m *CreateRepositoryFromBundleRequest) Reset() { *m = CreateReposit func (m *CreateRepositoryFromBundleRequest) String() string { return proto.CompactTextString(m) } func (*CreateRepositoryFromBundleRequest) ProtoMessage() {} func (*CreateRepositoryFromBundleRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{50} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{50} } func (m *CreateRepositoryFromBundleRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateRepositoryFromBundleRequest.Unmarshal(m, b) @@ -2371,7 +2371,7 @@ func (m *CreateRepositoryFromBundleResponse) Reset() { *m = CreateReposi func (m *CreateRepositoryFromBundleResponse) String() string { return proto.CompactTextString(m) } func (*CreateRepositoryFromBundleResponse) ProtoMessage() {} func (*CreateRepositoryFromBundleResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{51} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{51} } func (m *CreateRepositoryFromBundleResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateRepositoryFromBundleResponse.Unmarshal(m, b) @@ -2402,7 +2402,7 @@ func (m *FindLicenseRequest) Reset() { *m = FindLicenseRequest{} } func (m *FindLicenseRequest) String() string { return proto.CompactTextString(m) } func (*FindLicenseRequest) ProtoMessage() {} func (*FindLicenseRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{52} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{52} } func (m *FindLicenseRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FindLicenseRequest.Unmarshal(m, b) @@ -2440,7 +2440,7 @@ func (m *FindLicenseResponse) Reset() { *m = FindLicenseResponse{} } func (m *FindLicenseResponse) String() string { return proto.CompactTextString(m) } func (*FindLicenseResponse) ProtoMessage() {} func (*FindLicenseResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{53} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{53} } func (m *FindLicenseResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FindLicenseResponse.Unmarshal(m, b) @@ -2478,7 +2478,7 @@ func (m *GetInfoAttributesRequest) Reset() { *m = GetInfoAttributesReque func (m *GetInfoAttributesRequest) String() string { return proto.CompactTextString(m) } func (*GetInfoAttributesRequest) ProtoMessage() {} func (*GetInfoAttributesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{54} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{54} } func (m *GetInfoAttributesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetInfoAttributesRequest.Unmarshal(m, b) @@ -2516,7 +2516,7 @@ func (m *GetInfoAttributesResponse) Reset() { *m = GetInfoAttributesResp func (m *GetInfoAttributesResponse) String() string { return proto.CompactTextString(m) } func (*GetInfoAttributesResponse) ProtoMessage() {} func (*GetInfoAttributesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{55} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{55} } func (m *GetInfoAttributesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetInfoAttributesResponse.Unmarshal(m, b) @@ -2554,7 +2554,7 @@ func (m *CalculateChecksumRequest) Reset() { *m = CalculateChecksumReque func (m *CalculateChecksumRequest) String() string { return proto.CompactTextString(m) } func (*CalculateChecksumRequest) ProtoMessage() {} func (*CalculateChecksumRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{56} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{56} } func (m *CalculateChecksumRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CalculateChecksumRequest.Unmarshal(m, b) @@ -2592,7 +2592,7 @@ func (m *CalculateChecksumResponse) Reset() { *m = CalculateChecksumResp func (m *CalculateChecksumResponse) String() string { return proto.CompactTextString(m) } func (*CalculateChecksumResponse) ProtoMessage() {} func (*CalculateChecksumResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{57} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{57} } func (m *CalculateChecksumResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CalculateChecksumResponse.Unmarshal(m, b) @@ -2630,7 +2630,7 @@ func (m *GetSnapshotRequest) Reset() { *m = GetSnapshotRequest{} } func (m *GetSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*GetSnapshotRequest) ProtoMessage() {} func (*GetSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{58} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{58} } func (m *GetSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetSnapshotRequest.Unmarshal(m, b) @@ -2668,7 +2668,7 @@ func (m *GetSnapshotResponse) Reset() { *m = GetSnapshotResponse{} } func (m *GetSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*GetSnapshotResponse) ProtoMessage() {} func (*GetSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{59} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{59} } func (m *GetSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetSnapshotResponse.Unmarshal(m, b) @@ -2708,7 +2708,7 @@ func (m *CreateRepositoryFromSnapshotRequest) Reset() { *m = CreateRepos func (m *CreateRepositoryFromSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*CreateRepositoryFromSnapshotRequest) ProtoMessage() {} func (*CreateRepositoryFromSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{60} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{60} } func (m *CreateRepositoryFromSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateRepositoryFromSnapshotRequest.Unmarshal(m, b) @@ -2759,7 +2759,7 @@ func (m *CreateRepositoryFromSnapshotResponse) Reset() { *m = CreateRepo func (m *CreateRepositoryFromSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*CreateRepositoryFromSnapshotResponse) ProtoMessage() {} func (*CreateRepositoryFromSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{61} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{61} } func (m *CreateRepositoryFromSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateRepositoryFromSnapshotResponse.Unmarshal(m, b) @@ -2792,7 +2792,7 @@ func (m *GetRawChangesRequest) Reset() { *m = GetRawChangesRequest{} } func (m *GetRawChangesRequest) String() string { return proto.CompactTextString(m) } func (*GetRawChangesRequest) ProtoMessage() {} func (*GetRawChangesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{62} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{62} } func (m *GetRawChangesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetRawChangesRequest.Unmarshal(m, b) @@ -2844,7 +2844,7 @@ func (m *GetRawChangesResponse) Reset() { *m = GetRawChangesResponse{} } func (m *GetRawChangesResponse) String() string { return proto.CompactTextString(m) } func (*GetRawChangesResponse) ProtoMessage() {} func (*GetRawChangesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{63} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{63} } func (m *GetRawChangesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetRawChangesResponse.Unmarshal(m, b) @@ -2893,7 +2893,7 @@ func (m *GetRawChangesResponse_RawChange) Reset() { *m = GetRawChangesRe func (m *GetRawChangesResponse_RawChange) String() string { return proto.CompactTextString(m) } func (*GetRawChangesResponse_RawChange) ProtoMessage() {} func (*GetRawChangesResponse_RawChange) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{63, 0} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{63, 0} } func (m *GetRawChangesResponse_RawChange) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetRawChangesResponse_RawChange.Unmarshal(m, b) @@ -2998,7 +2998,7 @@ func (m *SearchFilesByNameRequest) Reset() { *m = SearchFilesByNameReque func (m *SearchFilesByNameRequest) String() string { return proto.CompactTextString(m) } func (*SearchFilesByNameRequest) ProtoMessage() {} func (*SearchFilesByNameRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{64} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{64} } func (m *SearchFilesByNameRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SearchFilesByNameRequest.Unmarshal(m, b) @@ -3050,7 +3050,7 @@ func (m *SearchFilesByNameResponse) Reset() { *m = SearchFilesByNameResp func (m *SearchFilesByNameResponse) String() string { return proto.CompactTextString(m) } func (*SearchFilesByNameResponse) ProtoMessage() {} func (*SearchFilesByNameResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{65} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{65} } func (m *SearchFilesByNameResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SearchFilesByNameResponse.Unmarshal(m, b) @@ -3091,7 +3091,7 @@ func (m *SearchFilesByContentRequest) Reset() { *m = SearchFilesByConten func (m *SearchFilesByContentRequest) String() string { return proto.CompactTextString(m) } func (*SearchFilesByContentRequest) ProtoMessage() {} func (*SearchFilesByContentRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{66} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{66} } func (m *SearchFilesByContentRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SearchFilesByContentRequest.Unmarshal(m, b) @@ -3152,7 +3152,7 @@ func (m *SearchFilesByContentResponse) Reset() { *m = SearchFilesByConte func (m *SearchFilesByContentResponse) String() string { return proto.CompactTextString(m) } func (*SearchFilesByContentResponse) ProtoMessage() {} func (*SearchFilesByContentResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_repository_service_ebe30b3fecc5c7cc, []int{67} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{67} } func (m *SearchFilesByContentResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SearchFilesByContentResponse.Unmarshal(m, b) @@ -3206,7 +3206,7 @@ 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_repository_service_ebe30b3fecc5c7cc, []int{68} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{68} } func (m *PreFetchRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PreFetchRequest.Unmarshal(m, b) @@ -3257,7 +3257,7 @@ 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_repository_service_ebe30b3fecc5c7cc, []int{69} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{69} } func (m *PreFetchResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PreFetchResponse.Unmarshal(m, b) @@ -3291,7 +3291,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_repository_service_ebe30b3fecc5c7cc, []int{70} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{70} } func (m *Remote) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Remote.Unmarshal(m, b) @@ -3352,7 +3352,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_repository_service_ebe30b3fecc5c7cc, []int{71} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{71} } func (m *FetchHTTPRemoteRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FetchHTTPRemoteRequest.Unmarshal(m, b) @@ -3403,7 +3403,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_repository_service_ebe30b3fecc5c7cc, []int{72} + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{72} } func (m *FetchHTTPRemoteResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FetchHTTPRemoteResponse.Unmarshal(m, b) @@ -3423,6 +3423,83 @@ func (m *FetchHTTPRemoteResponse) XXX_DiscardUnknown() { var xxx_messageInfo_FetchHTTPRemoteResponse proto.InternalMessageInfo +type GetObjectDirectorySizeRequest struct { + Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GetObjectDirectorySizeRequest) Reset() { *m = GetObjectDirectorySizeRequest{} } +func (m *GetObjectDirectorySizeRequest) String() string { return proto.CompactTextString(m) } +func (*GetObjectDirectorySizeRequest) ProtoMessage() {} +func (*GetObjectDirectorySizeRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{73} +} +func (m *GetObjectDirectorySizeRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetObjectDirectorySizeRequest.Unmarshal(m, b) +} +func (m *GetObjectDirectorySizeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetObjectDirectorySizeRequest.Marshal(b, m, deterministic) +} +func (dst *GetObjectDirectorySizeRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetObjectDirectorySizeRequest.Merge(dst, src) +} +func (m *GetObjectDirectorySizeRequest) XXX_Size() int { + return xxx_messageInfo_GetObjectDirectorySizeRequest.Size(m) +} +func (m *GetObjectDirectorySizeRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GetObjectDirectorySizeRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_GetObjectDirectorySizeRequest proto.InternalMessageInfo + +func (m *GetObjectDirectorySizeRequest) GetRepository() *Repository { + if m != nil { + return m.Repository + } + return nil +} + +type GetObjectDirectorySizeResponse struct { + // Object directory size in kilobytes + Size int64 `protobuf:"varint,1,opt,name=size,proto3" json:"size,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GetObjectDirectorySizeResponse) Reset() { *m = GetObjectDirectorySizeResponse{} } +func (m *GetObjectDirectorySizeResponse) String() string { return proto.CompactTextString(m) } +func (*GetObjectDirectorySizeResponse) ProtoMessage() {} +func (*GetObjectDirectorySizeResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_repository_service_dd8087831f1c5f01, []int{74} +} +func (m *GetObjectDirectorySizeResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetObjectDirectorySizeResponse.Unmarshal(m, b) +} +func (m *GetObjectDirectorySizeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetObjectDirectorySizeResponse.Marshal(b, m, deterministic) +} +func (dst *GetObjectDirectorySizeResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetObjectDirectorySizeResponse.Merge(dst, src) +} +func (m *GetObjectDirectorySizeResponse) XXX_Size() int { + return xxx_messageInfo_GetObjectDirectorySizeResponse.Size(m) +} +func (m *GetObjectDirectorySizeResponse) XXX_DiscardUnknown() { + xxx_messageInfo_GetObjectDirectorySizeResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_GetObjectDirectorySizeResponse proto.InternalMessageInfo + +func (m *GetObjectDirectorySizeResponse) GetSize() int64 { + if m != nil { + return m.Size + } + return 0 +} + func init() { proto.RegisterType((*RepositoryExistsRequest)(nil), "gitaly.RepositoryExistsRequest") proto.RegisterType((*RepositoryExistsResponse)(nil), "gitaly.RepositoryExistsResponse") @@ -3499,6 +3576,8 @@ func init() { proto.RegisterType((*Remote)(nil), "gitaly.Remote") proto.RegisterType((*FetchHTTPRemoteRequest)(nil), "gitaly.FetchHTTPRemoteRequest") proto.RegisterType((*FetchHTTPRemoteResponse)(nil), "gitaly.FetchHTTPRemoteResponse") + proto.RegisterType((*GetObjectDirectorySizeRequest)(nil), "gitaly.GetObjectDirectorySizeRequest") + proto.RegisterType((*GetObjectDirectorySizeResponse)(nil), "gitaly.GetObjectDirectorySizeResponse") proto.RegisterEnum("gitaly.GetArchiveRequest_Format", GetArchiveRequest_Format_name, GetArchiveRequest_Format_value) proto.RegisterEnum("gitaly.GetRawChangesResponse_RawChange_Operation", GetRawChangesResponse_RawChange_Operation_name, GetRawChangesResponse_RawChange_Operation_value) } @@ -3551,6 +3630,7 @@ type RepositoryServiceClient interface { 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) } type repositoryServiceClient struct { @@ -4119,6 +4199,15 @@ func (c *repositoryServiceClient) FetchHTTPRemote(ctx context.Context, in *Fetch return out, nil } +func (c *repositoryServiceClient) GetObjectDirectorySize(ctx context.Context, in *GetObjectDirectorySizeRequest, opts ...grpc.CallOption) (*GetObjectDirectorySizeResponse, error) { + out := new(GetObjectDirectorySizeResponse) + err := c.cc.Invoke(ctx, "/gitaly.RepositoryService/GetObjectDirectorySize", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // RepositoryServiceServer is the server API for RepositoryService service. type RepositoryServiceServer interface { RepositoryExists(context.Context, *RepositoryExistsRequest) (*RepositoryExistsResponse, error) @@ -4157,6 +4246,7 @@ type RepositoryServiceServer interface { BackupCustomHooks(*BackupCustomHooksRequest, RepositoryService_BackupCustomHooksServer) error PreFetch(context.Context, *PreFetchRequest) (*PreFetchResponse, error) FetchHTTPRemote(context.Context, *FetchHTTPRemoteRequest) (*FetchHTTPRemoteResponse, error) + GetObjectDirectorySize(context.Context, *GetObjectDirectorySizeRequest) (*GetObjectDirectorySizeResponse, error) } func RegisterRepositoryServiceServer(s *grpc.Server, srv RepositoryServiceServer) { @@ -4851,6 +4941,24 @@ func _RepositoryService_FetchHTTPRemote_Handler(srv interface{}, ctx context.Con return interceptor(ctx, in, info, handler) } +func _RepositoryService_GetObjectDirectorySize_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetObjectDirectorySizeRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(RepositoryServiceServer).GetObjectDirectorySize(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/gitaly.RepositoryService/GetObjectDirectorySize", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(RepositoryServiceServer).GetObjectDirectorySize(ctx, req.(*GetObjectDirectorySizeRequest)) + } + return interceptor(ctx, in, info, handler) +} + var _RepositoryService_serviceDesc = grpc.ServiceDesc{ ServiceName: "gitaly.RepositoryService", HandlerType: (*RepositoryServiceServer)(nil), @@ -4959,6 +5067,10 @@ var _RepositoryService_serviceDesc = grpc.ServiceDesc{ MethodName: "FetchHTTPRemote", Handler: _RepositoryService_FetchHTTPRemote_Handler, }, + { + MethodName: "GetObjectDirectorySize", + Handler: _RepositoryService_GetObjectDirectorySize_Handler, + }, }, Streams: []grpc.StreamDesc{ { @@ -5016,183 +5128,186 @@ var _RepositoryService_serviceDesc = grpc.ServiceDesc{ } func init() { - proto.RegisterFile("repository-service.proto", fileDescriptor_repository_service_ebe30b3fecc5c7cc) -} - -var fileDescriptor_repository_service_ebe30b3fecc5c7cc = []byte{ - // 2780 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x4b, 0x73, 0xdb, 0xc8, - 0x11, 0x36, 0x24, 0x51, 0x24, 0x9b, 0xb4, 0x4d, 0x8d, 0x64, 0x8b, 0x84, 0x1f, 0xb2, 0x61, 0x67, - 0x57, 0xfb, 0x92, 0xbd, 0xf2, 0x21, 0x5b, 0x79, 0xd4, 0x96, 0xde, 0xd4, 0xda, 0x7a, 0x04, 0x92, - 0xb3, 0x15, 0x57, 0x6d, 0x61, 0x41, 0x70, 0x28, 0x22, 0x04, 0x31, 0x5c, 0x60, 0x68, 0xad, 0xf6, - 0x94, 0x43, 0x52, 0xb5, 0xa7, 0x54, 0xf6, 0xb4, 0x7f, 0x20, 0x55, 0xb9, 0xe7, 0x96, 0x43, 0xee, - 0xb9, 0xe7, 0x94, 0xbf, 0xb2, 0x97, 0xa4, 0xe6, 0x41, 0x0c, 0x40, 0x00, 0x8c, 0x53, 0x70, 0x92, - 0x1b, 0xa6, 0xbb, 0xa7, 0xbb, 0xa7, 0xe7, 0xd1, 0xd3, 0xdf, 0x00, 0x9a, 0x01, 0x1e, 0x91, 0xd0, - 0xa5, 0x24, 0xb8, 0xfa, 0x28, 0xc4, 0xc1, 0x6b, 0xd7, 0xc1, 0x1b, 0xa3, 0x80, 0x50, 0x82, 0x16, - 0x2f, 0x5c, 0x6a, 0x7b, 0x57, 0x7a, 0x3d, 0xec, 0xdb, 0x01, 0xee, 0x0a, 0xaa, 0x71, 0x04, 0xab, - 0x66, 0xd4, 0x63, 0xef, 0x6b, 0x37, 0xa4, 0xa1, 0x89, 0xbf, 0x1a, 0xe3, 0x90, 0xa2, 0x4d, 0x00, - 0xa5, 0xac, 0xa9, 0x3d, 0xd0, 0xd6, 0x6b, 0x9b, 0x68, 0x43, 0x68, 0xd9, 0x50, 0x9d, 0xcc, 0x98, - 0x94, 0xb1, 0x09, 0xcd, 0xb4, 0xba, 0x70, 0x44, 0xfc, 0x10, 0xa3, 0xdb, 0xb0, 0x88, 0x39, 0x85, - 0xeb, 0xaa, 0x98, 0xb2, 0x65, 0x1c, 0xf3, 0x3e, 0xb6, 0x33, 0x38, 0xf4, 0x9d, 0x00, 0x0f, 0xb1, - 0x4f, 0x6d, 0xaf, 0x88, 0x0f, 0x77, 0xa0, 0x95, 0xa1, 0x4f, 0x38, 0x61, 0x78, 0xb0, 0x24, 0x98, - 0xfb, 0x63, 0xaf, 0x88, 0x15, 0xf4, 0x08, 0xae, 0x3b, 0x01, 0xb6, 0x29, 0xb6, 0x3a, 0x2e, 0x1d, - 0xda, 0xa3, 0xe6, 0x1c, 0x1f, 0x54, 0x5d, 0x10, 0xb7, 0x39, 0xcd, 0x58, 0x01, 0x14, 0xb7, 0x26, - 0x7d, 0x18, 0xc1, 0xad, 0x03, 0x3b, 0xe8, 0xd8, 0x17, 0x78, 0x87, 0x78, 0x1e, 0x76, 0xe8, 0x7f, - 0xdd, 0x8f, 0x26, 0xdc, 0x9e, 0xb6, 0x28, 0x7d, 0xd9, 0x85, 0x1b, 0x3b, 0x1e, 0xb6, 0xfd, 0xf1, - 0xa8, 0x48, 0xc8, 0x97, 0xe0, 0x66, 0xa4, 0x45, 0x2a, 0x7e, 0x0e, 0xb7, 0x94, 0xf0, 0x99, 0xfb, - 0x0d, 0x2e, 0xa2, 0xff, 0x43, 0xb8, 0x3d, 0xad, 0x4c, 0x2e, 0x2a, 0x04, 0x0b, 0xa1, 0xfb, 0x0d, - 0xe6, 0x7a, 0xe6, 0x4d, 0xfe, 0x6d, 0x0c, 0xa0, 0xb5, 0x35, 0x1a, 0x79, 0x57, 0x07, 0x2e, 0xb5, - 0x29, 0x0d, 0xdc, 0xce, 0x98, 0xe2, 0x22, 0xab, 0x1a, 0xe9, 0x50, 0x09, 0xf0, 0x6b, 0x37, 0x74, - 0x89, 0xcf, 0xc3, 0x5b, 0x37, 0xa3, 0xb6, 0x71, 0x17, 0xf4, 0x2c, 0x63, 0x32, 0x0a, 0x7f, 0x99, - 0x03, 0xb4, 0x8f, 0xa9, 0xd3, 0x37, 0xf1, 0x90, 0xd0, 0x22, 0x31, 0x60, 0xdb, 0x27, 0xe0, 0x4a, - 0xb8, 0x0b, 0x55, 0x53, 0xb6, 0xd0, 0x0a, 0x94, 0x7a, 0x24, 0x70, 0x70, 0x73, 0x9e, 0x4f, 0xbc, - 0x68, 0xa0, 0x55, 0x28, 0xfb, 0xc4, 0xa2, 0xf6, 0x45, 0xd8, 0x5c, 0x10, 0xbb, 0xcd, 0x27, 0xe7, - 0xf6, 0x45, 0x88, 0x9a, 0x50, 0xa6, 0xee, 0x10, 0x93, 0x31, 0x6d, 0x96, 0x1e, 0x68, 0xeb, 0x25, - 0x73, 0xd2, 0x64, 0x5d, 0xc2, 0xb0, 0x6f, 0x0d, 0xf0, 0x55, 0x73, 0x51, 0x58, 0x08, 0xc3, 0xfe, - 0x73, 0x7c, 0x85, 0xd6, 0xa0, 0x36, 0xf0, 0xc9, 0xa5, 0x6f, 0xf5, 0x09, 0xdb, 0xbd, 0x65, 0xce, - 0x04, 0x4e, 0x6a, 0x33, 0x0a, 0x6a, 0x41, 0xc5, 0x27, 0xd6, 0x28, 0x18, 0xfb, 0xb8, 0x59, 0xe5, - 0xd6, 0xca, 0x3e, 0x39, 0x65, 0x4d, 0xf4, 0x0c, 0xae, 0x0b, 0x3f, 0xad, 0x91, 0x1d, 0xd8, 0xc3, - 0xb0, 0x09, 0x7c, 0xb0, 0x37, 0xd4, 0x60, 0x79, 0x5c, 0xea, 0x42, 0xe8, 0x94, 0xcb, 0x7c, 0xb6, - 0x50, 0xa9, 0x34, 0xaa, 0xc6, 0x2d, 0x58, 0x4e, 0x84, 0x4e, 0x86, 0xf4, 0x08, 0x56, 0x77, 0xf8, - 0xda, 0x8e, 0xc5, 0xa9, 0xc0, 0xd2, 0xd2, 0xa1, 0x99, 0x56, 0x27, 0x4d, 0xfd, 0x53, 0x83, 0xa5, - 0x03, 0x4c, 0xb7, 0x02, 0xa7, 0xef, 0xbe, 0x2e, 0x34, 0x79, 0x77, 0xa0, 0xea, 0x90, 0xe1, 0xd0, - 0xa5, 0x96, 0xdb, 0x95, 0xf3, 0x57, 0x11, 0x84, 0xc3, 0x2e, 0x9b, 0xd9, 0x51, 0x80, 0x7b, 0xee, - 0xd7, 0x7c, 0x0a, 0xab, 0xa6, 0x6c, 0xa1, 0x4f, 0x60, 0xb1, 0x47, 0x82, 0xa1, 0x4d, 0xf9, 0x14, - 0xde, 0xd8, 0x7c, 0x30, 0x31, 0x92, 0xf2, 0x69, 0x63, 0x9f, 0xcb, 0x99, 0x52, 0x9e, 0xed, 0x8a, - 0x91, 0x4d, 0xfb, 0x7c, 0x86, 0xeb, 0x26, 0xff, 0x36, 0x9e, 0xc1, 0xa2, 0x90, 0x42, 0x65, 0x98, - 0x7f, 0x75, 0x78, 0xda, 0xb8, 0xc6, 0x3e, 0xce, 0xb7, 0xcc, 0x86, 0x86, 0x00, 0x16, 0xcf, 0xb7, - 0x4c, 0xeb, 0xe0, 0x55, 0x63, 0x0e, 0xd5, 0xa0, 0xcc, 0xbe, 0xb7, 0x5f, 0x6d, 0x36, 0xe6, 0x8d, - 0x75, 0x40, 0x71, 0x63, 0x6a, 0xd3, 0x75, 0x6d, 0x6a, 0xf3, 0xb1, 0xd7, 0x4d, 0xfe, 0xcd, 0xa6, - 0xa5, 0x6d, 0x87, 0x2f, 0x88, 0x63, 0x7b, 0xdb, 0x81, 0xed, 0x3b, 0xfd, 0x42, 0x5b, 0xce, 0x78, - 0x0a, 0xcd, 0xb4, 0x3a, 0x69, 0x7e, 0x05, 0x4a, 0xaf, 0x6d, 0x6f, 0x8c, 0x65, 0x1e, 0x11, 0x0d, - 0xe3, 0xef, 0x1a, 0x34, 0xf9, 0x7a, 0x39, 0x23, 0xe3, 0xc0, 0xc1, 0xa2, 0x57, 0x91, 0x39, 0xfb, - 0x14, 0x96, 0x42, 0xae, 0xca, 0x8a, 0x75, 0x9d, 0xcb, 0xed, 0xda, 0x10, 0xc2, 0x66, 0xe2, 0x68, - 0x96, 0x0a, 0x3a, 0xdc, 0x19, 0x3e, 0xbd, 0x75, 0xb3, 0x1e, 0xc6, 0x1c, 0x44, 0xf7, 0x00, 0xa8, - 0x1d, 0x5c, 0x60, 0x6a, 0x05, 0xb8, 0xc7, 0x27, 0xba, 0x6e, 0x56, 0x05, 0xc5, 0xc4, 0x3d, 0xe3, - 0x19, 0xb4, 0x32, 0x06, 0xa5, 0x32, 0x6a, 0x80, 0xc3, 0xb1, 0x47, 0x27, 0x19, 0x55, 0xb4, 0x8c, - 0x2d, 0xa8, 0xed, 0x87, 0xce, 0xa0, 0x48, 0xfc, 0x1f, 0x43, 0x5d, 0xa8, 0x50, 0x31, 0xc7, 0x41, - 0x40, 0x02, 0x39, 0xe7, 0xa2, 0x61, 0xfc, 0x59, 0x83, 0x9b, 0x9f, 0x07, 0x2e, 0xdb, 0x3c, 0xbd, - 0x22, 0xa1, 0x6e, 0xc0, 0x3c, 0x1b, 0xbd, 0x38, 0x5b, 0xd9, 0x67, 0xe2, 0xc8, 0x9d, 0x4f, 0x1e, - 0xb9, 0xe8, 0x21, 0xd4, 0x89, 0xd7, 0xb5, 0x22, 0xbe, 0x08, 0x5a, 0x8d, 0x78, 0x5d, 0x73, 0x22, - 0x12, 0x1d, 0x8a, 0xa5, 0xd8, 0xa1, 0xf8, 0xd9, 0x42, 0x65, 0xb1, 0x51, 0x36, 0x9a, 0xd0, 0x50, - 0x3e, 0x8b, 0xe1, 0x7d, 0xb6, 0x50, 0xd1, 0x1a, 0x73, 0x46, 0x1f, 0x56, 0xf6, 0x5d, 0xbf, 0x7b, - 0x84, 0x83, 0x0b, 0xbc, 0x6d, 0x87, 0x85, 0x76, 0xfc, 0x5d, 0xa8, 0x4e, 0x1c, 0x0c, 0x9b, 0x73, - 0x0f, 0xe6, 0xd9, 0xb4, 0x46, 0x04, 0xe3, 0x03, 0xb8, 0x35, 0x65, 0x49, 0x6d, 0xad, 0x8e, 0x1d, - 0x8a, 0xa5, 0x5d, 0x35, 0xf9, 0xb7, 0xf1, 0xad, 0x06, 0x4b, 0xe2, 0x8c, 0xda, 0x27, 0xc1, 0xe0, - 0xff, 0xb9, 0xa4, 0xd9, 0x85, 0x26, 0xee, 0x49, 0x74, 0xa9, 0x6a, 0x1d, 0x86, 0x26, 0x66, 0xce, - 0x1e, 0xfa, 0xa7, 0x01, 0xb9, 0x08, 0x70, 0x18, 0x16, 0x3c, 0x2e, 0x03, 0xae, 0x2e, 0x76, 0x5c, - 0x0a, 0xc2, 0x61, 0xd7, 0xf8, 0x39, 0xe8, 0x59, 0xd6, 0x64, 0x00, 0xd7, 0xa0, 0xe6, 0xfa, 0xd6, - 0x48, 0x92, 0xe5, 0xc6, 0x00, 0x37, 0x12, 0x14, 0xce, 0x9e, 0x7d, 0x35, 0xb6, 0xc3, 0xfe, 0x5b, - 0x73, 0x36, 0xe4, 0xea, 0x62, 0xce, 0x0a, 0xc2, 0xc4, 0xd9, 0xb4, 0xb5, 0x37, 0x75, 0xb6, 0x07, - 0xf7, 0xa7, 0xb3, 0xd3, 0x7e, 0x40, 0x86, 0x2f, 0xcd, 0x17, 0x05, 0xb7, 0xdb, 0x38, 0xf0, 0xa4, - 0xaf, 0xec, 0xd3, 0x78, 0x08, 0x6b, 0xb9, 0x76, 0xe4, 0x24, 0x1f, 0xc2, 0xb2, 0x10, 0xd9, 0x1e, - 0xfb, 0x5d, 0xaf, 0xd0, 0x75, 0xee, 0x7d, 0x58, 0x49, 0xaa, 0x9a, 0x91, 0x57, 0x30, 0x20, 0xbe, - 0x5b, 0x77, 0x88, 0xdf, 0x73, 0x2f, 0x0a, 0xce, 0x53, 0x6f, 0xec, 0x79, 0x16, 0xcf, 0x8c, 0x72, - 0x9e, 0x18, 0xe1, 0x94, 0x65, 0xc7, 0x0f, 0x60, 0x39, 0x61, 0x66, 0xe6, 0xb1, 0xf7, 0xed, 0x1c, - 0x34, 0xce, 0x30, 0x2d, 0xee, 0xd2, 0x27, 0x50, 0xc6, 0x3e, 0x0d, 0x5c, 0x2c, 0x8e, 0x88, 0xda, - 0xe6, 0xfd, 0x49, 0x87, 0x69, 0xf5, 0x1b, 0x7b, 0x3e, 0x0d, 0xae, 0xcc, 0x89, 0xb8, 0xfe, 0x3b, - 0x0d, 0x4a, 0x9c, 0xc4, 0x26, 0x93, 0x5d, 0xd9, 0xc4, 0x81, 0xc1, 0x3e, 0xd1, 0x3d, 0xa8, 0xf2, - 0x94, 0x68, 0x85, 0x34, 0x10, 0x03, 0x6d, 0x5f, 0x33, 0x2b, 0x9c, 0x74, 0x46, 0x03, 0xf4, 0x10, - 0x6a, 0x82, 0xed, 0xfa, 0xf4, 0xd9, 0x26, 0x3f, 0x5d, 0x4b, 0xed, 0x6b, 0x26, 0x70, 0xe2, 0x21, - 0xa3, 0xa1, 0x35, 0x10, 0x2d, 0xab, 0x43, 0x88, 0x27, 0x2e, 0x90, 0xed, 0x6b, 0xa6, 0xd0, 0xba, - 0x4d, 0x88, 0xb7, 0x5d, 0x96, 0x29, 0xd8, 0x58, 0x86, 0xa5, 0x98, 0xab, 0x72, 0xa9, 0x7c, 0x01, - 0xcb, 0xbb, 0xd8, 0xc3, 0x6f, 0x63, 0xd2, 0x10, 0x2c, 0x0c, 0xf0, 0x95, 0x08, 0x4f, 0xd5, 0xe4, - 0xdf, 0xc6, 0x6d, 0x58, 0x49, 0xaa, 0x97, 0x66, 0x1d, 0x56, 0xf8, 0x85, 0x94, 0x04, 0x78, 0x67, - 0x1c, 0x52, 0x32, 0x6c, 0x13, 0x32, 0x08, 0x0b, 0x1a, 0xe7, 0xeb, 0x71, 0x2e, 0xb6, 0x1e, 0xef, - 0x82, 0x9e, 0x65, 0x44, 0xba, 0x70, 0x0c, 0xcd, 0x6d, 0xdb, 0x19, 0x8c, 0x47, 0x6f, 0xc7, 0x03, - 0xe3, 0x09, 0xb4, 0x32, 0xf4, 0xcd, 0xd8, 0x2e, 0x03, 0x78, 0x98, 0xb5, 0x91, 0x0b, 0xef, 0xd9, - 0xcc, 0x58, 0x3c, 0x06, 0x63, 0x96, 0x31, 0x19, 0x93, 0x36, 0x20, 0x96, 0xeb, 0x5e, 0xb8, 0x0e, - 0xf6, 0x0b, 0xe5, 0x54, 0x63, 0x07, 0x96, 0x13, 0x9a, 0x64, 0x1c, 0x3e, 0x04, 0xe4, 0x09, 0x92, - 0x15, 0xf6, 0x49, 0x40, 0x2d, 0xdf, 0x1e, 0x4e, 0x32, 0x68, 0x43, 0x72, 0xce, 0x18, 0xe3, 0xd8, - 0x1e, 0xf2, 0x29, 0x3a, 0xc0, 0xf4, 0xd0, 0xef, 0x91, 0xad, 0xb7, 0x51, 0x1c, 0x1a, 0x3f, 0x85, - 0x56, 0x86, 0x3e, 0xe9, 0xda, 0x7d, 0x00, 0x55, 0x15, 0xca, 0x89, 0x8a, 0x51, 0x98, 0x33, 0x3b, - 0xb6, 0xe7, 0x8c, 0x3d, 0x9b, 0xe2, 0x9d, 0x3e, 0x76, 0x06, 0xe1, 0x78, 0x58, 0xc4, 0x99, 0x1f, - 0x43, 0x2b, 0x43, 0x9f, 0x74, 0x46, 0x87, 0x8a, 0x23, 0x69, 0x32, 0x3a, 0x51, 0x9b, 0x4d, 0xd2, - 0x01, 0xa6, 0x67, 0xbe, 0x3d, 0x0a, 0xfb, 0xa4, 0x08, 0x20, 0x61, 0xbc, 0x07, 0xcb, 0x09, 0x4d, - 0x33, 0x16, 0xeb, 0x77, 0x1a, 0x3c, 0xca, 0x5a, 0x40, 0x6f, 0xc1, 0x0d, 0x56, 0x93, 0xf6, 0x29, - 0x1d, 0x59, 0x2a, 0xd1, 0x95, 0x59, 0xfb, 0x65, 0xe0, 0xb1, 0x44, 0xc0, 0x59, 0xf6, 0x98, 0xf6, - 0x65, 0xc9, 0xc5, 0x65, 0xb7, 0xc6, 0xb4, 0x6f, 0xbc, 0x03, 0x8f, 0x67, 0xbb, 0x24, 0x57, 0xf5, - 0x1f, 0x34, 0x58, 0x39, 0xc0, 0xd4, 0xb4, 0x2f, 0x77, 0xfa, 0xb6, 0x7f, 0x51, 0x0c, 0x60, 0x78, - 0x04, 0xd7, 0x7b, 0x01, 0x19, 0x5a, 0x09, 0x94, 0xa1, 0x6a, 0xd6, 0x19, 0x31, 0xba, 0xd3, 0xae, - 0x41, 0x8d, 0x12, 0x2b, 0x71, 0x2b, 0xae, 0x9a, 0x40, 0xc9, 0x44, 0xc0, 0xf8, 0xeb, 0x02, 0xdc, - 0x9a, 0x72, 0x49, 0x06, 0xbf, 0x0d, 0xb5, 0xc0, 0xbe, 0xb4, 0x1c, 0x41, 0x6e, 0x6a, 0x3c, 0xd7, - 0xbc, 0x1b, 0x2b, 0x27, 0xd3, 0x7d, 0x36, 0x22, 0x92, 0x09, 0x41, 0xc4, 0xd5, 0xff, 0x31, 0x0f, - 0xd5, 0x88, 0x83, 0x56, 0xa1, 0xdc, 0xf1, 0x48, 0x87, 0x5d, 0x7c, 0xc4, 0x82, 0x5a, 0x64, 0xcd, - 0xc3, 0x6e, 0x04, 0xcb, 0xcc, 0x29, 0x58, 0x06, 0xdd, 0x83, 0x8a, 0x8f, 0x2f, 0x45, 0xfa, 0xe5, - 0xce, 0x6f, 0xcf, 0x35, 0x35, 0xb3, 0xec, 0xe3, 0x4b, 0x96, 0x81, 0x19, 0x9b, 0xdd, 0xea, 0x39, - 0x7b, 0x41, 0xb1, 0x89, 0xd7, 0xe5, 0xec, 0x13, 0xa8, 0x92, 0x11, 0x0e, 0x6c, 0xca, 0xc6, 0x5e, - 0xe2, 0xf5, 0xf0, 0xc7, 0x6f, 0x38, 0x80, 0x8d, 0x93, 0x49, 0x47, 0x53, 0xe9, 0x60, 0x31, 0x67, - 0x31, 0x51, 0x4a, 0x05, 0xe8, 0x51, 0x0f, 0xec, 0xcb, 0x48, 0x9e, 0xad, 0x22, 0xe6, 0xd4, 0x90, - 0x74, 0x31, 0xc7, 0x3d, 0x4a, 0xdc, 0xa1, 0x23, 0xd2, 0xc5, 0x1c, 0xf4, 0xc0, 0x97, 0x82, 0x55, - 0x11, 0x2c, 0x1f, 0x5f, 0x72, 0xd6, 0x63, 0xb8, 0x31, 0x19, 0xa9, 0xd5, 0xb9, 0x62, 0x3b, 0xbf, - 0x2a, 0x2a, 0x3f, 0x39, 0xd6, 0x6d, 0x46, 0x63, 0x52, 0x93, 0x01, 0x4b, 0x29, 0x10, 0x52, 0x72, - 0xc8, 0x5c, 0xca, 0x70, 0xa1, 0xaa, 0xdc, 0xa9, 0x41, 0xf9, 0xe5, 0xf1, 0xf3, 0xe3, 0x93, 0xcf, - 0x8f, 0x1b, 0xd7, 0x50, 0x15, 0x4a, 0x5b, 0xbb, 0xbb, 0x7b, 0xbb, 0xa2, 0x7e, 0xdf, 0x39, 0x39, - 0x3d, 0xdc, 0xdb, 0x15, 0xf5, 0xfb, 0xee, 0xde, 0x8b, 0xbd, 0xf3, 0xbd, 0xdd, 0xc6, 0x3c, 0xaa, - 0x43, 0xe5, 0xe8, 0x64, 0xf7, 0x70, 0x9f, 0xb1, 0x16, 0x18, 0xcb, 0xdc, 0x3b, 0xde, 0x3a, 0xda, - 0xdb, 0x6d, 0x94, 0x50, 0x03, 0xea, 0xe7, 0xbf, 0x3a, 0xdd, 0xb3, 0x76, 0xda, 0x5b, 0xc7, 0x07, - 0x7b, 0xbb, 0x8d, 0x45, 0xe3, 0x35, 0x34, 0xcf, 0xb0, 0x1d, 0x38, 0xfd, 0x7d, 0xd7, 0xc3, 0xe1, - 0xf6, 0x15, 0x3b, 0x2e, 0x8b, 0xac, 0xea, 0x15, 0x28, 0x7d, 0x35, 0xc6, 0xb2, 0xc2, 0xa8, 0x9a, - 0xa2, 0x31, 0xa9, 0xf5, 0xe6, 0xa3, 0x5a, 0xcf, 0xf8, 0x18, 0x5a, 0x19, 0x76, 0xd5, 0x0d, 0xac, - 0xc7, 0xc8, 0x7c, 0xd1, 0xd6, 0x4d, 0xd1, 0x30, 0xfe, 0xa8, 0xc1, 0x9d, 0x44, 0x9f, 0x1d, 0xe2, - 0x53, 0xec, 0xd3, 0xff, 0x81, 0xbb, 0xe8, 0x3d, 0x68, 0x38, 0xfd, 0xb1, 0x3f, 0xc0, 0xac, 0x04, - 0x15, 0x5e, 0x4a, 0x8c, 0xed, 0xa6, 0xa4, 0x47, 0x87, 0xc4, 0x15, 0xdc, 0xcd, 0xf6, 0x52, 0x0e, - 0xae, 0x09, 0xe5, 0xa1, 0x4d, 0x9d, 0x7e, 0x34, 0xbc, 0x49, 0x13, 0xdd, 0x03, 0xe0, 0x9f, 0x56, - 0x2c, 0xe9, 0x56, 0x39, 0x65, 0xd7, 0xa6, 0x36, 0x7a, 0x00, 0x75, 0xec, 0x77, 0x2d, 0xd2, 0xb3, - 0x38, 0x4d, 0x62, 0x7f, 0x80, 0xfd, 0xee, 0x49, 0xef, 0x88, 0x51, 0x8c, 0xbf, 0x69, 0x70, 0xf3, - 0x34, 0xc0, 0x12, 0x41, 0x13, 0x51, 0xc9, 0x2c, 0xff, 0xb4, 0xff, 0x00, 0xd1, 0xf8, 0x14, 0x96, - 0x22, 0xb0, 0xe2, 0x4d, 0xea, 0xc7, 0x09, 0x8e, 0x11, 0x29, 0x78, 0x06, 0x35, 0xd2, 0xf9, 0x35, - 0x76, 0xa8, 0x35, 0x62, 0x37, 0xcb, 0xf9, 0x64, 0xd7, 0x13, 0xce, 0x3a, 0x25, 0xc4, 0x33, 0x81, - 0x44, 0xdf, 0x06, 0x82, 0x86, 0x1a, 0x89, 0x8c, 0xec, 0x77, 0x1a, 0x2c, 0x0a, 0x60, 0x70, 0x52, - 0xcd, 0x68, 0x51, 0x35, 0xc3, 0x4e, 0x1f, 0x7e, 0x05, 0x10, 0x13, 0xc9, 0xbf, 0xd1, 0x4f, 0xa0, - 0x15, 0x1d, 0xfa, 0x24, 0x70, 0xbf, 0xe1, 0x1b, 0xca, 0xea, 0x63, 0xbb, 0x8b, 0x03, 0x79, 0x96, - 0xae, 0x4e, 0x92, 0x40, 0xc4, 0x6f, 0x73, 0x36, 0xfa, 0x11, 0xdc, 0x18, 0xba, 0xec, 0xe6, 0x6f, - 0x05, 0xb8, 0x37, 0xb4, 0x47, 0x61, 0x73, 0x81, 0x5f, 0x47, 0xaf, 0x0b, 0xaa, 0x29, 0x88, 0xc6, - 0xef, 0x35, 0xb8, 0xcd, 0xbd, 0x6c, 0x9f, 0x9f, 0x9f, 0x16, 0x07, 0x7c, 0xdf, 0x49, 0x00, 0xbe, - 0x69, 0xcc, 0x74, 0x02, 0x00, 0xc7, 0x10, 0xdd, 0xf9, 0x04, 0xa2, 0x6b, 0xb4, 0x60, 0x35, 0xe5, - 0x8f, 0x88, 0xdf, 0xe6, 0x9f, 0x74, 0xfe, 0x10, 0x32, 0x81, 0xd4, 0xc5, 0x4b, 0x11, 0xfa, 0x02, - 0x1a, 0xd3, 0xcf, 0x37, 0x68, 0x2d, 0xed, 0x66, 0xe2, 0x9d, 0x48, 0x7f, 0x90, 0x2f, 0x20, 0x27, - 0x6b, 0xf1, 0x87, 0xef, 0xd7, 0xe7, 0x2a, 0x73, 0xc8, 0x99, 0x3c, 0xbe, 0xc4, 0x5e, 0x66, 0x50, - 0xbc, 0x7b, 0xe6, 0x23, 0x90, 0xfe, 0x70, 0x86, 0x84, 0xb4, 0x50, 0xfd, 0xe1, 0xfb, 0xf5, 0x52, - 0x45, 0xd3, 0xb5, 0x8f, 0xd1, 0x31, 0x80, 0x7a, 0x73, 0x41, 0xad, 0x64, 0xdf, 0xd8, 0xab, 0x8f, - 0xae, 0x67, 0xb1, 0xd2, 0xfa, 0x5e, 0xc1, 0x8d, 0xe4, 0xdb, 0x09, 0xba, 0x17, 0xe5, 0x9d, 0xac, - 0x57, 0x1c, 0xfd, 0x7e, 0x1e, 0x3b, 0x53, 0x77, 0xf2, 0x5d, 0x43, 0xe9, 0xce, 0x7c, 0x3c, 0x51, - 0xba, 0xb3, 0x9f, 0x43, 0xe2, 0xba, 0x7b, 0x80, 0xd2, 0x0f, 0x13, 0x28, 0x8a, 0x65, 0xee, 0x0b, - 0x89, 0x6e, 0xcc, 0x12, 0x49, 0xdb, 0xf9, 0x05, 0xd4, 0x62, 0x30, 0x3d, 0x8a, 0xa2, 0x9a, 0x7e, - 0xf6, 0xd0, 0xef, 0x64, 0xf2, 0xd2, 0x2a, 0xbf, 0x84, 0xc6, 0xf4, 0x1d, 0x4c, 0x2d, 0xc3, 0x1c, - 0xf0, 0x5f, 0x2d, 0xc3, 0x5c, 0x38, 0x3f, 0x66, 0xe1, 0x14, 0x40, 0xe1, 0xda, 0x6a, 0x91, 0xa4, - 0x80, 0x75, 0xb5, 0x48, 0xd2, 0x30, 0x78, 0x4c, 0xdf, 0x53, 0x8d, 0x6d, 0x9d, 0x69, 0xc0, 0x5a, - 0xf9, 0x9c, 0x83, 0x8c, 0x2b, 0x9f, 0xf3, 0xb0, 0xee, 0xf8, 0xd6, 0x49, 0xe1, 0xc0, 0x6a, 0xeb, - 0xe4, 0xe1, 0xde, 0x6a, 0xeb, 0xe4, 0x82, 0xc8, 0xf1, 0xa8, 0xfc, 0x0c, 0x16, 0xf6, 0x43, 0x67, - 0x80, 0x96, 0xa3, 0x5e, 0x0a, 0x45, 0xd6, 0x57, 0x92, 0xc4, 0x74, 0xef, 0x36, 0x54, 0x26, 0xb8, - 0x2a, 0x5a, 0x9d, 0x08, 0x4f, 0xa1, 0xc3, 0x7a, 0x33, 0xcd, 0x48, 0x6b, 0x3a, 0x87, 0xeb, 0x09, - 0x74, 0x14, 0xdd, 0x8d, 0x6c, 0x67, 0xc0, 0xb3, 0xfa, 0xbd, 0x1c, 0xee, 0x54, 0x08, 0x8f, 0x01, - 0x14, 0x76, 0xa9, 0xe6, 0x3c, 0x85, 0xac, 0xaa, 0x39, 0xcf, 0x80, 0x3a, 0x63, 0x5e, 0x3a, 0x80, - 0xd2, 0x38, 0xa4, 0xda, 0x60, 0xb9, 0x88, 0xa8, 0xda, 0x60, 0xf9, 0x30, 0x66, 0x6c, 0xde, 0x51, - 0x1a, 0x3f, 0x8c, 0x1b, 0xc9, 0x41, 0x32, 0xe3, 0x46, 0xf2, 0xe0, 0xc7, 0xc8, 0xc8, 0x38, 0xfd, - 0xa4, 0x26, 0xd1, 0x3f, 0xf4, 0x4e, 0xde, 0xae, 0x4a, 0xc2, 0x90, 0xfa, 0xbb, 0xff, 0x56, 0x2e, - 0x1d, 0xc0, 0x97, 0x50, 0x8f, 0xc3, 0x80, 0xe8, 0x4e, 0x52, 0x47, 0x02, 0xb3, 0xd0, 0xef, 0x66, - 0x33, 0xa5, 0xd6, 0xca, 0x0f, 0xdf, 0xaf, 0x2f, 0x54, 0xb4, 0x86, 0xf6, 0x54, 0x43, 0xbf, 0xd1, - 0x40, 0xcf, 0x87, 0x25, 0xd0, 0x7b, 0xb3, 0x3c, 0x4d, 0xda, 0x7c, 0xff, 0x4d, 0x44, 0x53, 0xe3, - 0x5a, 0xd7, 0xd8, 0x99, 0x18, 0x43, 0x13, 0xd5, 0x99, 0x98, 0x46, 0x32, 0xd5, 0x99, 0x98, 0x01, - 0x3f, 0xc6, 0x83, 0xf5, 0x1c, 0xaa, 0x11, 0xd0, 0x86, 0x9a, 0x79, 0x30, 0xa1, 0xde, 0xca, 0xe0, - 0x64, 0x6d, 0xb0, 0x7a, 0x1c, 0x41, 0x53, 0x91, 0xcf, 0x80, 0xed, 0x54, 0xe4, 0x33, 0x41, 0xb7, - 0x44, 0xe6, 0xad, 0xc5, 0xe0, 0x99, 0x58, 0x26, 0x48, 0xa1, 0x3f, 0xb1, 0x4c, 0x90, 0xc6, 0x73, - 0xa2, 0x65, 0xd9, 0xe1, 0xaf, 0xaf, 0x49, 0x64, 0x05, 0xc5, 0x1f, 0x41, 0x33, 0x41, 0x1c, 0x75, - 0xe6, 0xe5, 0xc2, 0x32, 0x13, 0x0b, 0x4f, 0x35, 0xf4, 0x25, 0x2c, 0xa5, 0x00, 0x13, 0x65, 0x23, - 0x0f, 0x9b, 0x51, 0x36, 0x72, 0xd1, 0x96, 0x68, 0x14, 0x7b, 0x50, 0x96, 0xff, 0x46, 0xa0, 0xdb, - 0x51, 0xaf, 0xc4, 0x2f, 0x17, 0xfa, 0x6a, 0x8a, 0x9e, 0x95, 0xb1, 0x6a, 0x31, 0x58, 0x05, 0xc5, - 0xf3, 0xd2, 0x14, 0x5c, 0xa2, 0x82, 0x9b, 0x81, 0xc3, 0xc4, 0x86, 0xfe, 0x5b, 0x0d, 0xee, 0xce, - 0x82, 0x3a, 0xd0, 0x07, 0xb3, 0x96, 0xff, 0xb4, 0xd1, 0x0f, 0xdf, 0x4c, 0x38, 0x3d, 0xb0, 0x5f, - 0xc2, 0xf5, 0x44, 0xfd, 0xae, 0x0e, 0xfb, 0x2c, 0x78, 0x45, 0x1d, 0xf6, 0x99, 0x45, 0x7f, 0x6c, - 0x78, 0x03, 0x58, 0xc9, 0xaa, 0xbd, 0xd0, 0x23, 0xb5, 0x43, 0x72, 0xeb, 0x47, 0xfd, 0xf1, 0x6c, - 0xa1, 0x94, 0xb1, 0x0e, 0x2c, 0xa5, 0x4a, 0x58, 0xb5, 0x8c, 0xf2, 0xaa, 0x6a, 0xb5, 0x8c, 0x72, - 0xeb, 0xdf, 0x98, 0x8d, 0x3e, 0xa0, 0x34, 0xf2, 0x8c, 0x62, 0x97, 0xe3, 0x1c, 0xe8, 0x5b, 0xa5, - 0x82, 0x19, 0xc0, 0x75, 0xe2, 0xf8, 0xea, 0xc0, 0x52, 0x0a, 0x75, 0x56, 0xa3, 0xc9, 0x03, 0xb8, - 0xd5, 0x68, 0x72, 0x21, 0xeb, 0xd8, 0x68, 0xda, 0x50, 0x99, 0x14, 0x75, 0xea, 0xb6, 0x30, 0x55, - 0xb0, 0xaa, 0xdb, 0x42, 0xaa, 0xfe, 0x8b, 0x2d, 0xa0, 0x2f, 0xe0, 0xe6, 0x54, 0x95, 0x83, 0xee, - 0x27, 0xae, 0x3d, 0xa9, 0x72, 0x4c, 0x5f, 0xcb, 0xe5, 0xa7, 0xd4, 0x6f, 0x3f, 0x7d, 0xc5, 0x84, - 0x3d, 0xbb, 0xb3, 0xe1, 0x90, 0xe1, 0x13, 0xf1, 0xf9, 0x11, 0x09, 0x2e, 0x9e, 0x08, 0x15, 0x1f, - 0xf1, 0xff, 0xe8, 0x9e, 0x5c, 0x10, 0xd9, 0x1e, 0x75, 0x3a, 0x8b, 0x9c, 0xf4, 0xec, 0x5f, 0x01, - 0x00, 0x00, 0xff, 0xff, 0xf8, 0x18, 0x1e, 0xc5, 0x8c, 0x27, 0x00, 0x00, + proto.RegisterFile("repository-service.proto", fileDescriptor_repository_service_dd8087831f1c5f01) +} + +var fileDescriptor_repository_service_dd8087831f1c5f01 = []byte{ + // 2823 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x4b, 0x73, 0xdc, 0xc6, + 0xf1, 0x17, 0xf8, 0xda, 0xdd, 0xde, 0x95, 0xb4, 0x1c, 0x52, 0xe4, 0x12, 0x22, 0x45, 0x09, 0x92, + 0x65, 0xfa, 0x45, 0xc9, 0xd4, 0xbf, 0xea, 0xef, 0xca, 0xa3, 0x5c, 0x7c, 0x93, 0x96, 0xf8, 0x08, + 0x48, 0xc5, 0x15, 0x55, 0xb9, 0x60, 0x2c, 0x76, 0x96, 0x8b, 0x2c, 0x16, 0xb3, 0x1e, 0xcc, 0x8a, + 0xa6, 0x4f, 0x39, 0x24, 0x55, 0x3e, 0xa5, 0xe2, 0x93, 0xf3, 0x01, 0xf2, 0x09, 0x72, 0xcb, 0x21, + 0xf7, 0xdc, 0x73, 0xca, 0x57, 0xf1, 0x25, 0xa9, 0x79, 0x2c, 0x06, 0x58, 0x00, 0xb4, 0x52, 0xab, + 0x24, 0x37, 0x4c, 0x77, 0x4f, 0x77, 0x4f, 0x4f, 0xcf, 0xa3, 0x7f, 0x03, 0x68, 0x50, 0xdc, 0x27, + 0x91, 0xcf, 0x08, 0xbd, 0xfa, 0x28, 0xc2, 0xf4, 0xb5, 0xef, 0xe1, 0xf5, 0x3e, 0x25, 0x8c, 0xa0, + 0x99, 0x0b, 0x9f, 0xb9, 0xc1, 0x95, 0x59, 0x8b, 0x3a, 0x2e, 0xc5, 0x2d, 0x49, 0xb5, 0x8e, 0x60, + 0xd1, 0x8e, 0x7b, 0xec, 0x7e, 0xed, 0x47, 0x2c, 0xb2, 0xf1, 0x57, 0x03, 0x1c, 0x31, 0xb4, 0x01, + 0xa0, 0x95, 0x35, 0x8c, 0xfb, 0xc6, 0x5a, 0x75, 0x03, 0xad, 0x4b, 0x2d, 0xeb, 0xba, 0x93, 0x9d, + 0x90, 0xb2, 0x36, 0xa0, 0x91, 0x55, 0x17, 0xf5, 0x49, 0x18, 0x61, 0xb4, 0x00, 0x33, 0x58, 0x50, + 0x84, 0xae, 0xb2, 0xad, 0x5a, 0xd6, 0xb1, 0xe8, 0xe3, 0x7a, 0xdd, 0xc3, 0xd0, 0xa3, 0xb8, 0x87, + 0x43, 0xe6, 0x06, 0xe3, 0xf8, 0x70, 0x17, 0x96, 0x72, 0xf4, 0x49, 0x27, 0xac, 0x00, 0x66, 0x25, + 0x73, 0x6f, 0x10, 0x8c, 0x63, 0x05, 0x3d, 0x84, 0x9b, 0x1e, 0xc5, 0x2e, 0xc3, 0x4e, 0xd3, 0x67, + 0x3d, 0xb7, 0xdf, 0x98, 0x10, 0x83, 0xaa, 0x49, 0xe2, 0x96, 0xa0, 0x59, 0xf3, 0x80, 0x92, 0xd6, + 0x94, 0x0f, 0x7d, 0xb8, 0xb3, 0xef, 0xd2, 0xa6, 0x7b, 0x81, 0xb7, 0x49, 0x10, 0x60, 0x8f, 0xfd, + 0xc7, 0xfd, 0x68, 0xc0, 0xc2, 0xa8, 0x45, 0xe5, 0xcb, 0x0e, 0xdc, 0xda, 0x0e, 0xb0, 0x1b, 0x0e, + 0xfa, 0xe3, 0x84, 0x7c, 0x16, 0x6e, 0xc7, 0x5a, 0x94, 0xe2, 0xe7, 0x70, 0x47, 0x0b, 0x9f, 0xf9, + 0xdf, 0xe0, 0x71, 0xf4, 0x7f, 0x08, 0x0b, 0xa3, 0xca, 0x54, 0x52, 0x21, 0x98, 0x8a, 0xfc, 0x6f, + 0xb0, 0xd0, 0x33, 0x69, 0x8b, 0x6f, 0xab, 0x0b, 0x4b, 0x9b, 0xfd, 0x7e, 0x70, 0xb5, 0xef, 0x33, + 0x97, 0x31, 0xea, 0x37, 0x07, 0x0c, 0x8f, 0x93, 0xd5, 0xc8, 0x84, 0x32, 0xc5, 0xaf, 0xfd, 0xc8, + 0x27, 0xa1, 0x08, 0x6f, 0xcd, 0x8e, 0xdb, 0xd6, 0x32, 0x98, 0x79, 0xc6, 0x54, 0x14, 0xfe, 0x32, + 0x01, 0x68, 0x0f, 0x33, 0xaf, 0x63, 0xe3, 0x1e, 0x61, 0xe3, 0xc4, 0x80, 0x2f, 0x1f, 0x2a, 0x94, + 0x08, 0x17, 0x2a, 0xb6, 0x6a, 0xa1, 0x79, 0x98, 0x6e, 0x13, 0xea, 0xe1, 0xc6, 0xa4, 0x98, 0x78, + 0xd9, 0x40, 0x8b, 0x50, 0x0a, 0x89, 0xc3, 0xdc, 0x8b, 0xa8, 0x31, 0x25, 0x57, 0x5b, 0x48, 0xce, + 0xdd, 0x8b, 0x08, 0x35, 0xa0, 0xc4, 0xfc, 0x1e, 0x26, 0x03, 0xd6, 0x98, 0xbe, 0x6f, 0xac, 0x4d, + 0xdb, 0xc3, 0x26, 0xef, 0x12, 0x45, 0x1d, 0xa7, 0x8b, 0xaf, 0x1a, 0x33, 0xd2, 0x42, 0x14, 0x75, + 0x9e, 0xe3, 0x2b, 0xb4, 0x0a, 0xd5, 0x6e, 0x48, 0x2e, 0x43, 0xa7, 0x43, 0xf8, 0xea, 0x2d, 0x09, + 0x26, 0x08, 0xd2, 0x01, 0xa7, 0xa0, 0x25, 0x28, 0x87, 0xc4, 0xe9, 0xd3, 0x41, 0x88, 0x1b, 0x15, + 0x61, 0xad, 0x14, 0x92, 0x53, 0xde, 0x44, 0xcf, 0xe0, 0xa6, 0xf4, 0xd3, 0xe9, 0xbb, 0xd4, 0xed, + 0x45, 0x0d, 0x10, 0x83, 0xbd, 0xa5, 0x07, 0x2b, 0xe2, 0x52, 0x93, 0x42, 0xa7, 0x42, 0xe6, 0xb3, + 0xa9, 0x72, 0xb9, 0x5e, 0xb1, 0xee, 0xc0, 0x5c, 0x2a, 0x74, 0x2a, 0xa4, 0x47, 0xb0, 0xb8, 0x2d, + 0x72, 0x3b, 0x11, 0xa7, 0x31, 0x52, 0xcb, 0x84, 0x46, 0x56, 0x9d, 0x32, 0xf5, 0x4f, 0x03, 0x66, + 0xf7, 0x31, 0xdb, 0xa4, 0x5e, 0xc7, 0x7f, 0x3d, 0xd6, 0xe4, 0xdd, 0x85, 0x8a, 0x47, 0x7a, 0x3d, + 0x9f, 0x39, 0x7e, 0x4b, 0xcd, 0x5f, 0x59, 0x12, 0x0e, 0x5b, 0x7c, 0x66, 0xfb, 0x14, 0xb7, 0xfd, + 0xaf, 0xc5, 0x14, 0x56, 0x6c, 0xd5, 0x42, 0x9f, 0xc0, 0x4c, 0x9b, 0xd0, 0x9e, 0xcb, 0xc4, 0x14, + 0xde, 0xda, 0xb8, 0x3f, 0x34, 0x92, 0xf1, 0x69, 0x7d, 0x4f, 0xc8, 0xd9, 0x4a, 0x9e, 0xaf, 0x8a, + 0xbe, 0xcb, 0x3a, 0x62, 0x86, 0x6b, 0xb6, 0xf8, 0xb6, 0x9e, 0xc1, 0x8c, 0x94, 0x42, 0x25, 0x98, + 0x7c, 0x75, 0x78, 0x5a, 0xbf, 0xc1, 0x3f, 0xce, 0x37, 0xed, 0xba, 0x81, 0x00, 0x66, 0xce, 0x37, + 0x6d, 0x67, 0xff, 0x55, 0x7d, 0x02, 0x55, 0xa1, 0xc4, 0xbf, 0xb7, 0x5e, 0x6d, 0xd4, 0x27, 0xad, + 0x35, 0x40, 0x49, 0x63, 0x7a, 0xd1, 0xb5, 0x5c, 0xe6, 0x8a, 0xb1, 0xd7, 0x6c, 0xf1, 0xcd, 0xa7, + 0xe5, 0xc0, 0x8d, 0x5e, 0x10, 0xcf, 0x0d, 0xb6, 0xa8, 0x1b, 0x7a, 0x9d, 0xb1, 0x96, 0x9c, 0xf5, + 0x14, 0x1a, 0x59, 0x75, 0xca, 0xfc, 0x3c, 0x4c, 0xbf, 0x76, 0x83, 0x01, 0x56, 0xe7, 0x88, 0x6c, + 0x58, 0x7f, 0x37, 0xa0, 0x21, 0xf2, 0xe5, 0x8c, 0x0c, 0xa8, 0x87, 0x65, 0xaf, 0x71, 0xe6, 0xec, + 0x53, 0x98, 0x8d, 0x84, 0x2a, 0x27, 0xd1, 0x75, 0xa2, 0xb0, 0x6b, 0x5d, 0x0a, 0xdb, 0xa9, 0xad, + 0x59, 0x29, 0x68, 0x0a, 0x67, 0xc4, 0xf4, 0xd6, 0xec, 0x5a, 0x94, 0x70, 0x10, 0xad, 0x00, 0x30, + 0x97, 0x5e, 0x60, 0xe6, 0x50, 0xdc, 0x16, 0x13, 0x5d, 0xb3, 0x2b, 0x92, 0x62, 0xe3, 0xb6, 0xf5, + 0x0c, 0x96, 0x72, 0x06, 0xa5, 0x4f, 0x54, 0x8a, 0xa3, 0x41, 0xc0, 0x86, 0x27, 0xaa, 0x6c, 0x59, + 0x9b, 0x50, 0xdd, 0x8b, 0xbc, 0xee, 0x38, 0xf1, 0x7f, 0x04, 0x35, 0xa9, 0x42, 0xc7, 0x1c, 0x53, + 0x4a, 0xa8, 0x9a, 0x73, 0xd9, 0xb0, 0xfe, 0x6c, 0xc0, 0xed, 0xcf, 0xa9, 0xcf, 0x17, 0x4f, 0x7b, + 0x9c, 0x50, 0xd7, 0x61, 0x92, 0x8f, 0x5e, 0xee, 0xad, 0xfc, 0x33, 0xb5, 0xe5, 0x4e, 0xa6, 0xb7, + 0x5c, 0xf4, 0x00, 0x6a, 0x24, 0x68, 0x39, 0x31, 0x5f, 0x06, 0xad, 0x4a, 0x82, 0x96, 0x3d, 0x14, + 0x89, 0x37, 0xc5, 0xe9, 0xc4, 0xa6, 0xf8, 0xd9, 0x54, 0x79, 0xa6, 0x5e, 0xb2, 0x1a, 0x50, 0xd7, + 0x3e, 0xcb, 0xe1, 0x7d, 0x36, 0x55, 0x36, 0xea, 0x13, 0x56, 0x07, 0xe6, 0xf7, 0xfc, 0xb0, 0x75, + 0x84, 0xe9, 0x05, 0xde, 0x72, 0xa3, 0xb1, 0x56, 0xfc, 0x32, 0x54, 0x86, 0x0e, 0x46, 0x8d, 0x89, + 0xfb, 0x93, 0x7c, 0x5a, 0x63, 0x82, 0xf5, 0x01, 0xdc, 0x19, 0xb1, 0xa4, 0x97, 0x56, 0xd3, 0x8d, + 0x64, 0x6a, 0x57, 0x6c, 0xf1, 0x6d, 0x7d, 0x6b, 0xc0, 0xac, 0xdc, 0xa3, 0xf6, 0x08, 0xed, 0xfe, + 0x2f, 0x53, 0x9a, 0x5f, 0x68, 0x92, 0x9e, 0xc4, 0x97, 0xaa, 0xa5, 0xc3, 0xc8, 0xc6, 0xdc, 0xd9, + 0xc3, 0xf0, 0x94, 0x92, 0x0b, 0x8a, 0xa3, 0x68, 0xcc, 0xed, 0x92, 0x0a, 0x75, 0x89, 0xed, 0x52, + 0x12, 0x0e, 0x5b, 0xd6, 0xcf, 0xc1, 0xcc, 0xb3, 0xa6, 0x02, 0xb8, 0x0a, 0x55, 0x3f, 0x74, 0xfa, + 0x8a, 0xac, 0x16, 0x06, 0xf8, 0xb1, 0xa0, 0x74, 0xf6, 0xec, 0xab, 0x81, 0x1b, 0x75, 0xde, 0x9a, + 0xb3, 0x91, 0x50, 0x97, 0x70, 0x56, 0x12, 0x86, 0xce, 0x66, 0xad, 0xbd, 0xa9, 0xb3, 0x6d, 0xb8, + 0x37, 0x7a, 0x3a, 0xed, 0x51, 0xd2, 0x7b, 0x69, 0xbf, 0x18, 0x73, 0xb9, 0x0d, 0x68, 0xa0, 0x7c, + 0xe5, 0x9f, 0xd6, 0x03, 0x58, 0x2d, 0xb4, 0xa3, 0x26, 0xf9, 0x10, 0xe6, 0xa4, 0xc8, 0xd6, 0x20, + 0x6c, 0x05, 0x63, 0x5d, 0xe7, 0xde, 0x87, 0xf9, 0xb4, 0xaa, 0x6b, 0xce, 0x15, 0x0c, 0x48, 0xac, + 0xd6, 0x6d, 0x12, 0xb6, 0xfd, 0x8b, 0x31, 0xe7, 0xa9, 0x3d, 0x08, 0x02, 0x47, 0x9c, 0x8c, 0x6a, + 0x9e, 0x38, 0xe1, 0x94, 0x9f, 0x8e, 0x1f, 0xc0, 0x5c, 0xca, 0xcc, 0xb5, 0xdb, 0xde, 0xb7, 0x13, + 0x50, 0x3f, 0xc3, 0x6c, 0x7c, 0x97, 0x3e, 0x81, 0x12, 0x0e, 0x19, 0xf5, 0xb1, 0xdc, 0x22, 0xaa, + 0x1b, 0xf7, 0x86, 0x1d, 0x46, 0xd5, 0xaf, 0xef, 0x86, 0x8c, 0x5e, 0xd9, 0x43, 0x71, 0xf3, 0x77, + 0x06, 0x4c, 0x0b, 0x12, 0x9f, 0x4c, 0x7e, 0x65, 0x93, 0x1b, 0x06, 0xff, 0x44, 0x2b, 0x50, 0x11, + 0x47, 0xa2, 0x13, 0x31, 0x2a, 0x07, 0x7a, 0x70, 0xc3, 0x2e, 0x0b, 0xd2, 0x19, 0xa3, 0xe8, 0x01, + 0x54, 0x25, 0xdb, 0x0f, 0xd9, 0xb3, 0x0d, 0xb1, 0xbb, 0x4e, 0x1f, 0xdc, 0xb0, 0x41, 0x10, 0x0f, + 0x39, 0x0d, 0xad, 0x82, 0x6c, 0x39, 0x4d, 0x42, 0x02, 0x79, 0x81, 0x3c, 0xb8, 0x61, 0x4b, 0xad, + 0x5b, 0x84, 0x04, 0x5b, 0x25, 0x75, 0x04, 0x5b, 0x73, 0x30, 0x9b, 0x70, 0x55, 0xa5, 0xca, 0x17, + 0x30, 0xb7, 0x83, 0x03, 0xfc, 0x36, 0x26, 0x0d, 0xc1, 0x54, 0x17, 0x5f, 0xc9, 0xf0, 0x54, 0x6c, + 0xf1, 0x6d, 0x2d, 0xc0, 0x7c, 0x5a, 0xbd, 0x32, 0xeb, 0xf1, 0xc2, 0x2f, 0x62, 0x84, 0xe2, 0xed, + 0x41, 0xc4, 0x48, 0xef, 0x80, 0x90, 0x6e, 0x34, 0xa6, 0x71, 0x91, 0x8f, 0x13, 0x89, 0x7c, 0x5c, + 0x06, 0x33, 0xcf, 0x88, 0x72, 0xe1, 0x18, 0x1a, 0x5b, 0xae, 0xd7, 0x1d, 0xf4, 0xdf, 0x8e, 0x07, + 0xd6, 0x13, 0x58, 0xca, 0xd1, 0x77, 0xcd, 0x72, 0xe9, 0xc2, 0x83, 0xbc, 0x85, 0x3c, 0xf6, 0x9a, + 0xcd, 0x8d, 0xc5, 0x23, 0xb0, 0xae, 0x33, 0xa6, 0x62, 0x72, 0x00, 0x88, 0x9f, 0x75, 0x2f, 0x7c, + 0x0f, 0x87, 0x63, 0x9d, 0xa9, 0xd6, 0x36, 0xcc, 0xa5, 0x34, 0xa9, 0x38, 0x7c, 0x08, 0x28, 0x90, + 0x24, 0x27, 0xea, 0x10, 0xca, 0x9c, 0xd0, 0xed, 0x0d, 0x4f, 0xd0, 0xba, 0xe2, 0x9c, 0x71, 0xc6, + 0xb1, 0xdb, 0x13, 0x53, 0xb4, 0x8f, 0xd9, 0x61, 0xd8, 0x26, 0x9b, 0x6f, 0xa3, 0x38, 0xb4, 0x7e, + 0x0a, 0x4b, 0x39, 0xfa, 0x94, 0x6b, 0xf7, 0x00, 0x74, 0x55, 0xa8, 0x26, 0x2a, 0x41, 0xe1, 0xce, + 0x6c, 0xbb, 0x81, 0x37, 0x08, 0x5c, 0x86, 0xb7, 0x3b, 0xd8, 0xeb, 0x46, 0x83, 0xde, 0x38, 0xce, + 0xfc, 0x3f, 0x2c, 0xe5, 0xe8, 0x53, 0xce, 0x98, 0x50, 0xf6, 0x14, 0x4d, 0x45, 0x27, 0x6e, 0xf3, + 0x49, 0xda, 0xc7, 0xec, 0x2c, 0x74, 0xfb, 0x51, 0x87, 0x8c, 0x03, 0x48, 0x58, 0xef, 0xc1, 0x5c, + 0x4a, 0xd3, 0x35, 0xc9, 0xfa, 0x9d, 0x01, 0x0f, 0xf3, 0x12, 0xe8, 0x2d, 0xb8, 0xc1, 0x6b, 0xd2, + 0x0e, 0x63, 0x7d, 0x47, 0x1f, 0x74, 0x25, 0xde, 0x7e, 0x49, 0x03, 0x7e, 0x10, 0x08, 0x96, 0x3b, + 0x60, 0x1d, 0x55, 0x72, 0x09, 0xd9, 0xcd, 0x01, 0xeb, 0x58, 0x8f, 0xe1, 0xd1, 0xf5, 0x2e, 0xa9, + 0xac, 0xfe, 0x83, 0x01, 0xf3, 0xfb, 0x98, 0xd9, 0xee, 0xe5, 0x76, 0xc7, 0x0d, 0x2f, 0xc6, 0x03, + 0x18, 0x1e, 0xc2, 0xcd, 0x36, 0x25, 0x3d, 0x27, 0x85, 0x32, 0x54, 0xec, 0x1a, 0x27, 0xc6, 0x77, + 0xda, 0x55, 0xa8, 0x32, 0xe2, 0xa4, 0x6e, 0xc5, 0x15, 0x1b, 0x18, 0x19, 0x0a, 0x58, 0x7f, 0x9d, + 0x82, 0x3b, 0x23, 0x2e, 0xa9, 0xe0, 0x1f, 0x40, 0x95, 0xba, 0x97, 0x8e, 0x27, 0xc9, 0x0d, 0x43, + 0x9c, 0x35, 0xef, 0x26, 0xca, 0xc9, 0x6c, 0x9f, 0xf5, 0x98, 0x64, 0x03, 0x8d, 0xb9, 0xe6, 0x3f, + 0x26, 0xa1, 0x12, 0x73, 0xd0, 0x22, 0x94, 0x9a, 0x01, 0x69, 0xf2, 0x8b, 0x8f, 0x4c, 0xa8, 0x19, + 0xde, 0x3c, 0x6c, 0xc5, 0xb0, 0xcc, 0x84, 0x86, 0x65, 0xd0, 0x0a, 0x94, 0x43, 0x7c, 0x29, 0x8f, + 0x5f, 0xe1, 0xfc, 0xd6, 0x44, 0xc3, 0xb0, 0x4b, 0x21, 0xbe, 0xe4, 0x27, 0x30, 0x67, 0xf3, 0x5b, + 0xbd, 0x60, 0x4f, 0x69, 0x36, 0x09, 0x5a, 0x82, 0x7d, 0x02, 0x15, 0xd2, 0xc7, 0xd4, 0x65, 0x7c, + 0xec, 0xd3, 0xa2, 0x1e, 0xfe, 0xf8, 0x0d, 0x07, 0xb0, 0x7e, 0x32, 0xec, 0x68, 0x6b, 0x1d, 0x3c, + 0xe6, 0x3c, 0x26, 0x5a, 0xa9, 0x04, 0x3d, 0x6a, 0xd4, 0xbd, 0x8c, 0xe5, 0x79, 0x16, 0x71, 0xa7, + 0x7a, 0xa4, 0x85, 0x05, 0xee, 0x31, 0x2d, 0x1c, 0x3a, 0x22, 0x2d, 0x2c, 0x40, 0x0f, 0x7c, 0x29, + 0x59, 0x65, 0xc9, 0x0a, 0xf1, 0xa5, 0x60, 0x3d, 0x82, 0x5b, 0xc3, 0x91, 0x3a, 0xcd, 0x2b, 0xbe, + 0xf2, 0x2b, 0xb2, 0xf2, 0x53, 0x63, 0xdd, 0xe2, 0x34, 0x2e, 0x35, 0x1c, 0xb0, 0x92, 0x02, 0x29, + 0xa5, 0x86, 0x2c, 0xa4, 0x2c, 0x1f, 0x2a, 0xda, 0x9d, 0x2a, 0x94, 0x5e, 0x1e, 0x3f, 0x3f, 0x3e, + 0xf9, 0xfc, 0xb8, 0x7e, 0x03, 0x55, 0x60, 0x7a, 0x73, 0x67, 0x67, 0x77, 0x47, 0xd6, 0xef, 0xdb, + 0x27, 0xa7, 0x87, 0xbb, 0x3b, 0xb2, 0x7e, 0xdf, 0xd9, 0x7d, 0xb1, 0x7b, 0xbe, 0xbb, 0x53, 0x9f, + 0x44, 0x35, 0x28, 0x1f, 0x9d, 0xec, 0x1c, 0xee, 0x71, 0xd6, 0x14, 0x67, 0xd9, 0xbb, 0xc7, 0x9b, + 0x47, 0xbb, 0x3b, 0xf5, 0x69, 0x54, 0x87, 0xda, 0xf9, 0xaf, 0x4e, 0x77, 0x9d, 0xed, 0x83, 0xcd, + 0xe3, 0xfd, 0xdd, 0x9d, 0xfa, 0x8c, 0xf5, 0x1a, 0x1a, 0x67, 0xd8, 0xa5, 0x5e, 0x67, 0xcf, 0x0f, + 0x70, 0xb4, 0x75, 0xc5, 0xb7, 0xcb, 0x71, 0xb2, 0x7a, 0x1e, 0xa6, 0xbf, 0x1a, 0x60, 0x55, 0x61, + 0x54, 0x6c, 0xd9, 0x18, 0xd6, 0x7a, 0x93, 0x71, 0xad, 0x67, 0x7d, 0x0c, 0x4b, 0x39, 0x76, 0xf5, + 0x0d, 0xac, 0xcd, 0xc9, 0x22, 0x69, 0x6b, 0xb6, 0x6c, 0x58, 0x7f, 0x32, 0xe0, 0x6e, 0xaa, 0xcf, + 0x36, 0x09, 0x19, 0x0e, 0xd9, 0x7f, 0xc1, 0x5d, 0xf4, 0x1e, 0xd4, 0xbd, 0xce, 0x20, 0xec, 0x62, + 0x5e, 0x82, 0x4a, 0x2f, 0x15, 0xc6, 0x76, 0x5b, 0xd1, 0xe3, 0x4d, 0xe2, 0x0a, 0x96, 0xf3, 0xbd, + 0x54, 0x83, 0x6b, 0x40, 0xa9, 0xe7, 0x32, 0xaf, 0x13, 0x0f, 0x6f, 0xd8, 0x44, 0x2b, 0x00, 0xe2, + 0xd3, 0x49, 0x1c, 0xba, 0x15, 0x41, 0xd9, 0x71, 0x99, 0x8b, 0xee, 0x43, 0x0d, 0x87, 0x2d, 0x87, + 0xb4, 0x1d, 0x41, 0x53, 0xd8, 0x1f, 0xe0, 0xb0, 0x75, 0xd2, 0x3e, 0xe2, 0x14, 0xeb, 0x6f, 0x06, + 0xdc, 0x3e, 0xa5, 0x58, 0x21, 0x68, 0x32, 0x2a, 0xb9, 0xe5, 0x9f, 0xf1, 0x6f, 0x20, 0x1a, 0x9f, + 0xc2, 0x6c, 0x0c, 0x56, 0xbc, 0x49, 0xfd, 0x38, 0xc4, 0x31, 0x62, 0x05, 0xcf, 0xa0, 0x4a, 0x9a, + 0xbf, 0xc6, 0x1e, 0x73, 0xfa, 0xfc, 0x66, 0x39, 0x99, 0xee, 0x7a, 0x22, 0x58, 0xa7, 0x84, 0x04, + 0x36, 0x90, 0xf8, 0xdb, 0x42, 0x50, 0xd7, 0x23, 0x51, 0x91, 0xfd, 0xce, 0x80, 0x19, 0x09, 0x0c, + 0x0e, 0xab, 0x19, 0x23, 0xae, 0x66, 0xf8, 0xee, 0x23, 0xae, 0x00, 0x72, 0x22, 0xc5, 0x37, 0xfa, + 0x09, 0x2c, 0xc5, 0x9b, 0x3e, 0xa1, 0xfe, 0x37, 0x62, 0x41, 0x39, 0x1d, 0xec, 0xb6, 0x30, 0x55, + 0x7b, 0xe9, 0xe2, 0xf0, 0x10, 0x88, 0xf9, 0x07, 0x82, 0x8d, 0xde, 0x81, 0x5b, 0x3d, 0x9f, 0xdf, + 0xfc, 0x1d, 0x8a, 0xdb, 0x3d, 0xb7, 0x1f, 0x35, 0xa6, 0xc4, 0x75, 0xf4, 0xa6, 0xa4, 0xda, 0x92, + 0x68, 0xfd, 0xde, 0x80, 0x05, 0xe1, 0xe5, 0xc1, 0xf9, 0xf9, 0xe9, 0xf8, 0x80, 0xef, 0xe3, 0x14, + 0xe0, 0x9b, 0xc5, 0x4c, 0x87, 0x00, 0x70, 0x02, 0xd1, 0x9d, 0x4c, 0x21, 0xba, 0xd6, 0x12, 0x2c, + 0x66, 0xfc, 0x51, 0xf1, 0x3b, 0x83, 0x95, 0x7d, 0xcc, 0x64, 0xc0, 0x77, 0x7c, 0x8a, 0xbd, 0xb7, + 0x01, 0xd3, 0xff, 0x1f, 0xdc, 0x2b, 0x52, 0x5a, 0x0c, 0xd7, 0x6f, 0xfc, 0xf1, 0xae, 0x78, 0x93, + 0x19, 0xa2, 0xfb, 0xf2, 0xd1, 0x0a, 0x7d, 0x01, 0xf5, 0xd1, 0x97, 0x24, 0xb4, 0x9a, 0xb5, 0x9f, + 0x7a, 0xb2, 0x32, 0xef, 0x17, 0x0b, 0xa8, 0x71, 0xcf, 0xfc, 0xf0, 0xfd, 0xda, 0x44, 0x79, 0x02, + 0x79, 0xc3, 0x77, 0xa0, 0xc4, 0x23, 0x11, 0x4a, 0x76, 0xcf, 0x7d, 0x8f, 0x32, 0x1f, 0x5c, 0x23, + 0xa1, 0x2c, 0x54, 0x7e, 0xf8, 0x7e, 0x6d, 0xba, 0x6c, 0x98, 0xc6, 0xc7, 0xe8, 0x18, 0x40, 0x3f, + 0xff, 0xa0, 0xa5, 0x74, 0xdf, 0xc4, 0x03, 0x94, 0x69, 0xe6, 0xb1, 0xb2, 0xfa, 0x5e, 0xc1, 0xad, + 0xf4, 0x33, 0x0e, 0x5a, 0x89, 0x8f, 0xc0, 0xbc, 0x07, 0x25, 0xf3, 0x5e, 0x11, 0x3b, 0x57, 0x77, + 0xfa, 0x89, 0x45, 0xeb, 0xce, 0x7d, 0xc7, 0xd1, 0xba, 0xf3, 0x5f, 0x66, 0x92, 0xba, 0xdb, 0x80, + 0xb2, 0x6f, 0x24, 0x28, 0x8e, 0x65, 0xe1, 0x63, 0x8d, 0x69, 0x5d, 0x27, 0x92, 0xb5, 0xf3, 0x0b, + 0xa8, 0x26, 0x5e, 0x0c, 0x50, 0x1c, 0xd5, 0xec, 0x0b, 0x8c, 0x79, 0x37, 0x97, 0x97, 0x55, 0xf9, + 0x25, 0xd4, 0x47, 0xaf, 0x83, 0x3a, 0x0d, 0x0b, 0xde, 0x21, 0x74, 0x1a, 0x16, 0xbe, 0x2c, 0x24, + 0x2c, 0x9c, 0x02, 0x68, 0x88, 0x5d, 0x27, 0x49, 0x06, 0xe3, 0xd7, 0x49, 0x92, 0x45, 0xe4, 0x13, + 0xfa, 0x9e, 0x1a, 0x7c, 0xe9, 0x8c, 0x62, 0xe7, 0xda, 0xe7, 0x02, 0x90, 0x5e, 0xfb, 0x5c, 0x04, + 0xbb, 0x27, 0x97, 0x4e, 0x06, 0x92, 0xd6, 0x4b, 0xa7, 0x08, 0x82, 0xd7, 0x4b, 0xa7, 0x10, 0xcf, + 0x4e, 0x46, 0xe5, 0x67, 0x30, 0xb5, 0x17, 0x79, 0x5d, 0x34, 0x17, 0xf7, 0xd2, 0x80, 0xb6, 0x39, + 0x9f, 0x26, 0x66, 0x7b, 0x1f, 0x40, 0x79, 0x08, 0xf1, 0xa2, 0xc5, 0xa1, 0xf0, 0x08, 0x50, 0x6d, + 0x36, 0xb2, 0x8c, 0xac, 0xa6, 0x73, 0xb8, 0x99, 0x02, 0x6a, 0xd1, 0x72, 0x6c, 0x3b, 0x07, 0x29, + 0x36, 0x57, 0x0a, 0xb8, 0x23, 0x21, 0x3c, 0x06, 0xd0, 0x30, 0xaa, 0x9e, 0xf3, 0x0c, 0xc8, 0xab, + 0xe7, 0x3c, 0x07, 0x75, 0x4d, 0x78, 0xe9, 0x01, 0xca, 0x42, 0xa2, 0x7a, 0x81, 0x15, 0x82, 0xb3, + 0x7a, 0x81, 0x15, 0x23, 0xaa, 0x89, 0x79, 0x47, 0x59, 0x28, 0x33, 0x69, 0xa4, 0x00, 0x54, 0x4d, + 0x1a, 0x29, 0x42, 0x42, 0x63, 0x23, 0x83, 0xec, 0xeb, 0x9e, 0x02, 0x22, 0xd1, 0xe3, 0xa2, 0x55, + 0x95, 0x46, 0x44, 0xcd, 0x77, 0x7f, 0x54, 0x2e, 0x1b, 0xc0, 0x97, 0x50, 0x4b, 0x22, 0x92, 0xe8, + 0x6e, 0x5a, 0x47, 0x0a, 0x3e, 0x31, 0x97, 0xf3, 0x99, 0x4a, 0x6b, 0xf9, 0x87, 0xef, 0xd7, 0xa6, + 0xca, 0x46, 0xdd, 0x78, 0x6a, 0xa0, 0xdf, 0x18, 0x60, 0x16, 0x23, 0x24, 0xe8, 0xbd, 0xeb, 0x3c, + 0x4d, 0xdb, 0x7c, 0xff, 0x4d, 0x44, 0x33, 0xe3, 0x5a, 0x33, 0xf8, 0x9e, 0x98, 0x00, 0x36, 0xf5, + 0x9e, 0x98, 0x05, 0x55, 0xf5, 0x9e, 0x98, 0x83, 0x84, 0x26, 0x83, 0xf5, 0x1c, 0x2a, 0x31, 0xe6, + 0x87, 0x1a, 0x45, 0x88, 0xa5, 0xb9, 0x94, 0xc3, 0xc9, 0x5b, 0x60, 0xb5, 0x24, 0x98, 0xa7, 0x23, + 0x9f, 0x83, 0x20, 0xea, 0xc8, 0xe7, 0xe2, 0x7f, 0xa9, 0x93, 0xb7, 0x9a, 0x40, 0x8a, 0x12, 0x27, + 0x41, 0x06, 0x88, 0x4a, 0x9c, 0x04, 0x59, 0x68, 0x29, 0x4e, 0xcb, 0xa6, 0x78, 0x08, 0x4e, 0x83, + 0x3c, 0x28, 0xf9, 0x1e, 0x9b, 0x8b, 0x27, 0xe9, 0x3d, 0xaf, 0x10, 0x21, 0x1a, 0x5a, 0x78, 0x6a, + 0xa0, 0x2f, 0x61, 0x36, 0x83, 0xdd, 0x68, 0x1b, 0x45, 0x30, 0x91, 0xb6, 0x51, 0x08, 0xfc, 0xc4, + 0xa3, 0xd8, 0x85, 0x92, 0xfa, 0x4d, 0x03, 0x2d, 0xc4, 0xbd, 0x52, 0x7f, 0x7f, 0x98, 0x8b, 0x19, + 0x7a, 0xde, 0x89, 0x55, 0x4d, 0x20, 0x3c, 0x28, 0x79, 0x2e, 0x8d, 0x20, 0x37, 0x3a, 0xb8, 0x39, + 0x90, 0x50, 0x62, 0xe8, 0xbf, 0x35, 0x60, 0xf9, 0x3a, 0xd4, 0x05, 0x7d, 0x70, 0x5d, 0xfa, 0x8f, + 0x1a, 0xfd, 0xf0, 0xcd, 0x84, 0xb3, 0x03, 0xfb, 0x25, 0xdc, 0x4c, 0x41, 0x09, 0x7a, 0xb3, 0xcf, + 0x43, 0x7a, 0xf4, 0x66, 0x9f, 0x8b, 0x3f, 0x24, 0x86, 0xd7, 0x85, 0xf9, 0xbc, 0x32, 0x10, 0x3d, + 0xd4, 0x2b, 0xa4, 0xb0, 0x94, 0x35, 0x1f, 0x5d, 0x2f, 0x94, 0x31, 0xd6, 0x84, 0xd9, 0x4c, 0x35, + 0xad, 0xd3, 0xa8, 0xa8, 0xc0, 0xd7, 0x69, 0x54, 0x58, 0x8a, 0x27, 0x6c, 0x74, 0x00, 0x65, 0x41, + 0x70, 0x94, 0xb8, 0x1c, 0x17, 0xa0, 0xf0, 0xfa, 0x28, 0xb8, 0x06, 0x43, 0x4f, 0x6d, 0x5f, 0x4d, + 0x98, 0xcd, 0x00, 0xe0, 0x7a, 0x34, 0x45, 0x58, 0xbb, 0x1e, 0x4d, 0x21, 0x7a, 0x9e, 0x18, 0xcd, + 0x01, 0x94, 0x87, 0xf5, 0xa5, 0xbe, 0x2d, 0x8c, 0xd4, 0xce, 0xfa, 0xb6, 0x90, 0x29, 0x45, 0x13, + 0x09, 0xf4, 0x05, 0xdc, 0x1e, 0x29, 0xb8, 0xd0, 0xbd, 0xd4, 0xb5, 0x27, 0x53, 0x19, 0x9a, 0xab, + 0x85, 0xfc, 0xac, 0x7a, 0x02, 0x0b, 0xf9, 0xf5, 0x15, 0x7a, 0x27, 0x91, 0x8a, 0xc5, 0x45, 0x9d, + 0xf9, 0xf8, 0xc7, 0xc4, 0xd2, 0xb1, 0xd9, 0x7a, 0xfa, 0x8a, 0x77, 0x08, 0xdc, 0xe6, 0xba, 0x47, + 0x7a, 0x4f, 0xe4, 0xe7, 0x47, 0x84, 0x5e, 0x3c, 0x91, 0x6a, 0x3e, 0x12, 0xff, 0x10, 0x3e, 0xb9, + 0x20, 0xaa, 0xdd, 0x6f, 0x36, 0x67, 0x04, 0xe9, 0xd9, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0x0d, + 0xa5, 0xe8, 0xba, 0x88, 0x28, 0x00, 0x00, } diff --git a/vendor/vendor.json b/vendor/vendor.json index ea8bf6d71..55ada0c64 100644 --- a/vendor/vendor.json +++ b/vendor/vendor.json @@ -601,12 +601,12 @@ "revisionTime": "2016-03-31T18:18:00Z" }, { - "checksumSHA1": "nzYKfoxckuJfiZz3Ez3iAen9gAA=", + "checksumSHA1": "gvgkYmfZwMYGLwYu/JL3tI63/9w=", "path": "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb", - "revision": "9ee0a3509a25b509f6542ccb9175f751a02590ad", - "revisionTime": "2019-05-21T18:47:00Z", - "version": "v1.30.0", - "versionExact": "v1.30.0" + "revision": "f4db5d05d437abe1154d7308ca044d3577b5ccba", + "revisionTime": "2019-06-04T12:22:21Z", + "version": "v1.32.0", + "versionExact": "v1.32.0" }, { "checksumSHA1": "WMOuBgCyclqy+Mqunb0NbykaC4Y=", |