diff options
author | John Cai <jcai@gitlab.com> | 2020-06-19 21:22:55 +0300 |
---|---|---|
committer | John Cai <jcai@gitlab.com> | 2020-06-19 21:22:55 +0300 |
commit | b6dee22b7fbdd9055c2fa45336189aabdff9038b (patch) | |
tree | 48a2992250425abff85889429e99869197c6819c | |
parent | 779ca4726b48a426243bac59562b599c7d55ee46 (diff) | |
parent | 5426aeac2e22409dd36a8d7eb0cc9da149af77cf (diff) |
Merge branch 'sluongngoc/commit-graph' into 'master'
commit-graph: add dedicated GRPC for commit-graph
See merge request gitlab-org/gitaly!2113
-rw-r--r-- | internal/service/repository/commit_graph.go | 44 | ||||
-rw-r--r-- | internal/service/repository/commit_graph_test.go | 96 | ||||
-rw-r--r-- | proto/go/gitalypb/repository-service.pb.go | 640 | ||||
-rw-r--r-- | proto/repository-service.proto | 11 | ||||
-rw-r--r-- | ruby/proto/gitaly/repository-service_pb.rb | 7 | ||||
-rw-r--r-- | ruby/proto/gitaly/repository-service_services_pb.rb | 1 |
6 files changed, 534 insertions, 265 deletions
diff --git a/internal/service/repository/commit_graph.go b/internal/service/repository/commit_graph.go new file mode 100644 index 000000000..845bf3785 --- /dev/null +++ b/internal/service/repository/commit_graph.go @@ -0,0 +1,44 @@ +package repository + +import ( + "context" + "fmt" + + "gitlab.com/gitlab-org/gitaly/internal/git" + "gitlab.com/gitlab-org/gitaly/internal/helper" + "gitlab.com/gitlab-org/gitaly/proto/go/gitalypb" +) + +const ( + CommitGraphRelPath = "objects/info/commit-graph" +) + +// WriteCommitGraph write or update commit-graph file in a repository +func (*server) WriteCommitGraph(ctx context.Context, in *gitalypb.WriteCommitGraphRequest) (*gitalypb.WriteCommitGraphResponse, error) { + if err := writeCommitGraph(ctx, in); err != nil { + return nil, helper.ErrInternal(fmt.Errorf("WriteCommitGraph: gitCommand: %v", err)) + } + + return &gitalypb.WriteCommitGraphResponse{}, nil +} + +func writeCommitGraph(ctx context.Context, in *gitalypb.WriteCommitGraphRequest) error { + cmd, err := git.SafeCmd(ctx, in.GetRepository(), nil, + git.SubCmd{ + Name: "commit-graph", + Flags: []git.Option{ + git.SubSubCmd{Name: "write"}, + git.Flag{Name: "--reachable"}, + }, + }, + ) + if err != nil { + return err + } + + if err := cmd.Wait(); err != nil { + return err + } + + return nil +} diff --git a/internal/service/repository/commit_graph_test.go b/internal/service/repository/commit_graph_test.go new file mode 100644 index 000000000..11efa8a18 --- /dev/null +++ b/internal/service/repository/commit_graph_test.go @@ -0,0 +1,96 @@ +package repository + +import ( + "os" + "path/filepath" + "testing" + "time" + + "github.com/stretchr/testify/assert" + "gitlab.com/gitlab-org/gitaly/internal/testhelper" + "gitlab.com/gitlab-org/gitaly/proto/go/gitalypb" +) + +func TestWriteCommitGraph(t *testing.T) { + s, stop := runRepoServer(t) + defer stop() + + c, conn := newRepositoryClient(t, s) + defer conn.Close() + + testRepo, testRepoPath, cleanup := testhelper.NewTestRepo(t) + defer cleanup() + + ctx, cancel := testhelper.Context() + defer cancel() + + commitGraphPath := filepath.Join(testRepoPath, CommitGraphRelPath) + + _, err := os.Stat(commitGraphPath) + assert.True(t, os.IsNotExist(err)) + + testhelper.CreateCommit( + t, + testRepoPath, + t.Name(), + &testhelper.CreateCommitOpts{Message: t.Name()}, + ) + + res, err := c.WriteCommitGraph(ctx, &gitalypb.WriteCommitGraphRequest{Repository: testRepo}) + assert.NoError(t, err) + assert.NotNil(t, res) + + assert.FileExists(t, commitGraphPath) +} + +func TestUpdateCommitGraph(t *testing.T) { + s, stop := runRepoServer(t) + defer stop() + + c, conn := newRepositoryClient(t, s) + defer conn.Close() + + testRepo, testRepoPath, cleanup := testhelper.NewTestRepo(t) + defer cleanup() + + ctx, cancel := testhelper.Context() + defer cancel() + + testhelper.CreateCommit( + t, + testRepoPath, + t.Name(), + &testhelper.CreateCommitOpts{Message: t.Name()}, + ) + + commitGraphPath := filepath.Join(testRepoPath, CommitGraphRelPath) + + _, err := os.Stat(commitGraphPath) + assert.True(t, os.IsNotExist(err)) + + res, err := c.WriteCommitGraph(ctx, &gitalypb.WriteCommitGraphRequest{Repository: testRepo}) + assert.NoError(t, err) + assert.NotNil(t, res) + assert.FileExists(t, commitGraphPath) + + // Reset the mtime of commit-graph file to use + // as basis to detect changes + assert.NoError(t, os.Chtimes(commitGraphPath, time.Time{}, time.Time{})) + info, err := os.Stat(commitGraphPath) + assert.NoError(t, err) + mt := info.ModTime() + + testhelper.CreateCommit( + t, + testRepoPath, + t.Name(), + &testhelper.CreateCommitOpts{Message: t.Name()}, + ) + + res, err = c.WriteCommitGraph(ctx, &gitalypb.WriteCommitGraphRequest{Repository: testRepo}) + assert.NoError(t, err) + assert.NotNil(t, res) + assert.FileExists(t, commitGraphPath) + + assertModTimeAfter(t, mt, commitGraphPath) +} diff --git a/proto/go/gitalypb/repository-service.pb.go b/proto/go/gitalypb/repository-service.pb.go index 392502bae..c6c4c4e02 100644 --- a/proto/go/gitalypb/repository-service.pb.go +++ b/proto/go/gitalypb/repository-service.pb.go @@ -52,7 +52,7 @@ func (x GetArchiveRequest_Format) String() string { } func (GetArchiveRequest_Format) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{18, 0} + return fileDescriptor_e9b1768cf174c79b, []int{20, 0} } type GetRawChangesResponse_RawChange_Operation int32 @@ -92,7 +92,7 @@ func (x GetRawChangesResponse_RawChange_Operation) String() string { } func (GetRawChangesResponse_RawChange_Operation) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{61, 0, 0} + return fileDescriptor_e9b1768cf174c79b, []int{63, 0, 0} } type RepositoryExistsRequest struct { @@ -399,6 +399,76 @@ func (m *GarbageCollectResponse) XXX_DiscardUnknown() { var xxx_messageInfo_GarbageCollectResponse proto.InternalMessageInfo +type WriteCommitGraphRequest 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 *WriteCommitGraphRequest) Reset() { *m = WriteCommitGraphRequest{} } +func (m *WriteCommitGraphRequest) String() string { return proto.CompactTextString(m) } +func (*WriteCommitGraphRequest) ProtoMessage() {} +func (*WriteCommitGraphRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_e9b1768cf174c79b, []int{8} +} + +func (m *WriteCommitGraphRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_WriteCommitGraphRequest.Unmarshal(m, b) +} +func (m *WriteCommitGraphRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_WriteCommitGraphRequest.Marshal(b, m, deterministic) +} +func (m *WriteCommitGraphRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_WriteCommitGraphRequest.Merge(m, src) +} +func (m *WriteCommitGraphRequest) XXX_Size() int { + return xxx_messageInfo_WriteCommitGraphRequest.Size(m) +} +func (m *WriteCommitGraphRequest) XXX_DiscardUnknown() { + xxx_messageInfo_WriteCommitGraphRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_WriteCommitGraphRequest proto.InternalMessageInfo + +func (m *WriteCommitGraphRequest) GetRepository() *Repository { + if m != nil { + return m.Repository + } + return nil +} + +type WriteCommitGraphResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *WriteCommitGraphResponse) Reset() { *m = WriteCommitGraphResponse{} } +func (m *WriteCommitGraphResponse) String() string { return proto.CompactTextString(m) } +func (*WriteCommitGraphResponse) ProtoMessage() {} +func (*WriteCommitGraphResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e9b1768cf174c79b, []int{9} +} + +func (m *WriteCommitGraphResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_WriteCommitGraphResponse.Unmarshal(m, b) +} +func (m *WriteCommitGraphResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_WriteCommitGraphResponse.Marshal(b, m, deterministic) +} +func (m *WriteCommitGraphResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_WriteCommitGraphResponse.Merge(m, src) +} +func (m *WriteCommitGraphResponse) XXX_Size() int { + return xxx_messageInfo_WriteCommitGraphResponse.Size(m) +} +func (m *WriteCommitGraphResponse) XXX_DiscardUnknown() { + xxx_messageInfo_WriteCommitGraphResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_WriteCommitGraphResponse proto.InternalMessageInfo + type CleanupRequest struct { Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` @@ -410,7 +480,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_e9b1768cf174c79b, []int{8} + return fileDescriptor_e9b1768cf174c79b, []int{10} } func (m *CleanupRequest) XXX_Unmarshal(b []byte) error { @@ -448,7 +518,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_e9b1768cf174c79b, []int{9} + return fileDescriptor_e9b1768cf174c79b, []int{11} } func (m *CleanupResponse) XXX_Unmarshal(b []byte) error { @@ -480,7 +550,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_e9b1768cf174c79b, []int{10} + return fileDescriptor_e9b1768cf174c79b, []int{12} } func (m *RepositorySizeRequest) XXX_Unmarshal(b []byte) error { @@ -520,7 +590,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_e9b1768cf174c79b, []int{11} + return fileDescriptor_e9b1768cf174c79b, []int{13} } func (m *RepositorySizeResponse) XXX_Unmarshal(b []byte) error { @@ -560,7 +630,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_e9b1768cf174c79b, []int{12} + return fileDescriptor_e9b1768cf174c79b, []int{14} } func (m *ApplyGitattributesRequest) XXX_Unmarshal(b []byte) error { @@ -605,7 +675,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_e9b1768cf174c79b, []int{13} + return fileDescriptor_e9b1768cf174c79b, []int{15} } func (m *ApplyGitattributesResponse) XXX_Unmarshal(b []byte) error { @@ -645,7 +715,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_e9b1768cf174c79b, []int{14} + return fileDescriptor_e9b1768cf174c79b, []int{16} } func (m *FetchRemoteRequest) XXX_Unmarshal(b []byte) error { @@ -739,7 +809,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_e9b1768cf174c79b, []int{15} + return fileDescriptor_e9b1768cf174c79b, []int{17} } func (m *FetchRemoteResponse) XXX_Unmarshal(b []byte) error { @@ -771,7 +841,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_e9b1768cf174c79b, []int{16} + return fileDescriptor_e9b1768cf174c79b, []int{18} } func (m *CreateRepositoryRequest) XXX_Unmarshal(b []byte) error { @@ -809,7 +879,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_e9b1768cf174c79b, []int{17} + return fileDescriptor_e9b1768cf174c79b, []int{19} } func (m *CreateRepositoryResponse) XXX_Unmarshal(b []byte) error { @@ -845,7 +915,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_e9b1768cf174c79b, []int{18} + return fileDescriptor_e9b1768cf174c79b, []int{20} } func (m *GetArchiveRequest) XXX_Unmarshal(b []byte) error { @@ -912,7 +982,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_e9b1768cf174c79b, []int{19} + return fileDescriptor_e9b1768cf174c79b, []int{21} } func (m *GetArchiveResponse) XXX_Unmarshal(b []byte) error { @@ -951,7 +1021,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_e9b1768cf174c79b, []int{20} + return fileDescriptor_e9b1768cf174c79b, []int{22} } func (m *HasLocalBranchesRequest) XXX_Unmarshal(b []byte) error { @@ -990,7 +1060,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_e9b1768cf174c79b, []int{21} + return fileDescriptor_e9b1768cf174c79b, []int{23} } func (m *HasLocalBranchesResponse) XXX_Unmarshal(b []byte) error { @@ -1032,7 +1102,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_e9b1768cf174c79b, []int{22} + return fileDescriptor_e9b1768cf174c79b, []int{24} } func (m *FetchSourceBranchRequest) XXX_Unmarshal(b []byte) error { @@ -1092,7 +1162,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_e9b1768cf174c79b, []int{23} + return fileDescriptor_e9b1768cf174c79b, []int{25} } func (m *FetchSourceBranchResponse) XXX_Unmarshal(b []byte) error { @@ -1131,7 +1201,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_e9b1768cf174c79b, []int{24} + return fileDescriptor_e9b1768cf174c79b, []int{26} } func (m *FsckRequest) XXX_Unmarshal(b []byte) error { @@ -1170,7 +1240,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_e9b1768cf174c79b, []int{25} + return fileDescriptor_e9b1768cf174c79b, []int{27} } func (m *FsckResponse) XXX_Unmarshal(b []byte) error { @@ -1213,7 +1283,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_e9b1768cf174c79b, []int{26} + return fileDescriptor_e9b1768cf174c79b, []int{28} } func (m *WriteRefRequest) XXX_Unmarshal(b []byte) error { @@ -1279,7 +1349,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_e9b1768cf174c79b, []int{27} + return fileDescriptor_e9b1768cf174c79b, []int{29} } func (m *WriteRefResponse) XXX_Unmarshal(b []byte) error { @@ -1315,7 +1385,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_e9b1768cf174c79b, []int{28} + return fileDescriptor_e9b1768cf174c79b, []int{30} } func (m *FindMergeBaseRequest) XXX_Unmarshal(b []byte) error { @@ -1361,7 +1431,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_e9b1768cf174c79b, []int{29} + return fileDescriptor_e9b1768cf174c79b, []int{31} } func (m *FindMergeBaseResponse) XXX_Unmarshal(b []byte) error { @@ -1401,7 +1471,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_e9b1768cf174c79b, []int{30} + return fileDescriptor_e9b1768cf174c79b, []int{32} } func (m *CreateForkRequest) XXX_Unmarshal(b []byte) error { @@ -1446,7 +1516,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_e9b1768cf174c79b, []int{31} + return fileDescriptor_e9b1768cf174c79b, []int{33} } func (m *CreateForkResponse) XXX_Unmarshal(b []byte) error { @@ -1479,7 +1549,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_e9b1768cf174c79b, []int{32} + return fileDescriptor_e9b1768cf174c79b, []int{34} } func (m *IsRebaseInProgressRequest) XXX_Unmarshal(b []byte) error { @@ -1525,7 +1595,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_e9b1768cf174c79b, []int{33} + return fileDescriptor_e9b1768cf174c79b, []int{35} } func (m *IsRebaseInProgressResponse) XXX_Unmarshal(b []byte) error { @@ -1565,7 +1635,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_e9b1768cf174c79b, []int{34} + return fileDescriptor_e9b1768cf174c79b, []int{36} } func (m *IsSquashInProgressRequest) XXX_Unmarshal(b []byte) error { @@ -1611,7 +1681,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_e9b1768cf174c79b, []int{35} + return fileDescriptor_e9b1768cf174c79b, []int{37} } func (m *IsSquashInProgressResponse) XXX_Unmarshal(b []byte) error { @@ -1651,7 +1721,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_e9b1768cf174c79b, []int{36} + return fileDescriptor_e9b1768cf174c79b, []int{38} } func (m *CreateRepositoryFromURLRequest) XXX_Unmarshal(b []byte) error { @@ -1696,7 +1766,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_e9b1768cf174c79b, []int{37} + return fileDescriptor_e9b1768cf174c79b, []int{39} } func (m *CreateRepositoryFromURLResponse) XXX_Unmarshal(b []byte) error { @@ -1728,7 +1798,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_e9b1768cf174c79b, []int{38} + return fileDescriptor_e9b1768cf174c79b, []int{40} } func (m *CreateBundleRequest) XXX_Unmarshal(b []byte) error { @@ -1767,7 +1837,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_e9b1768cf174c79b, []int{39} + return fileDescriptor_e9b1768cf174c79b, []int{41} } func (m *CreateBundleResponse) XXX_Unmarshal(b []byte) error { @@ -1807,7 +1877,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_e9b1768cf174c79b, []int{40} + return fileDescriptor_e9b1768cf174c79b, []int{42} } func (m *SetConfigRequest) XXX_Unmarshal(b []byte) error { @@ -1858,7 +1928,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_e9b1768cf174c79b, []int{40, 0} + return fileDescriptor_e9b1768cf174c79b, []int{42, 0} } func (m *SetConfigRequest_Entry) XXX_Unmarshal(b []byte) error { @@ -1955,7 +2025,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_e9b1768cf174c79b, []int{41} + return fileDescriptor_e9b1768cf174c79b, []int{43} } func (m *SetConfigResponse) XXX_Unmarshal(b []byte) error { @@ -1988,7 +2058,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_e9b1768cf174c79b, []int{42} + return fileDescriptor_e9b1768cf174c79b, []int{44} } func (m *DeleteConfigRequest) XXX_Unmarshal(b []byte) error { @@ -2033,7 +2103,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_e9b1768cf174c79b, []int{43} + return fileDescriptor_e9b1768cf174c79b, []int{45} } func (m *DeleteConfigResponse) XXX_Unmarshal(b []byte) error { @@ -2066,7 +2136,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_e9b1768cf174c79b, []int{44} + return fileDescriptor_e9b1768cf174c79b, []int{46} } func (m *RestoreCustomHooksRequest) XXX_Unmarshal(b []byte) error { @@ -2111,7 +2181,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_e9b1768cf174c79b, []int{45} + return fileDescriptor_e9b1768cf174c79b, []int{47} } func (m *RestoreCustomHooksResponse) XXX_Unmarshal(b []byte) error { @@ -2143,7 +2213,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_e9b1768cf174c79b, []int{46} + return fileDescriptor_e9b1768cf174c79b, []int{48} } func (m *BackupCustomHooksRequest) XXX_Unmarshal(b []byte) error { @@ -2182,7 +2252,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_e9b1768cf174c79b, []int{47} + return fileDescriptor_e9b1768cf174c79b, []int{49} } func (m *BackupCustomHooksResponse) XXX_Unmarshal(b []byte) error { @@ -2223,7 +2293,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_e9b1768cf174c79b, []int{48} + return fileDescriptor_e9b1768cf174c79b, []int{50} } func (m *CreateRepositoryFromBundleRequest) XXX_Unmarshal(b []byte) error { @@ -2268,7 +2338,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_e9b1768cf174c79b, []int{49} + return fileDescriptor_e9b1768cf174c79b, []int{51} } func (m *CreateRepositoryFromBundleResponse) XXX_Unmarshal(b []byte) error { @@ -2300,7 +2370,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_e9b1768cf174c79b, []int{50} + return fileDescriptor_e9b1768cf174c79b, []int{52} } func (m *FindLicenseRequest) XXX_Unmarshal(b []byte) error { @@ -2339,7 +2409,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_e9b1768cf174c79b, []int{51} + return fileDescriptor_e9b1768cf174c79b, []int{53} } func (m *FindLicenseResponse) XXX_Unmarshal(b []byte) error { @@ -2378,7 +2448,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_e9b1768cf174c79b, []int{52} + return fileDescriptor_e9b1768cf174c79b, []int{54} } func (m *GetInfoAttributesRequest) XXX_Unmarshal(b []byte) error { @@ -2417,7 +2487,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_e9b1768cf174c79b, []int{53} + return fileDescriptor_e9b1768cf174c79b, []int{55} } func (m *GetInfoAttributesResponse) XXX_Unmarshal(b []byte) error { @@ -2456,7 +2526,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_e9b1768cf174c79b, []int{54} + return fileDescriptor_e9b1768cf174c79b, []int{56} } func (m *CalculateChecksumRequest) XXX_Unmarshal(b []byte) error { @@ -2495,7 +2565,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_e9b1768cf174c79b, []int{55} + return fileDescriptor_e9b1768cf174c79b, []int{57} } func (m *CalculateChecksumResponse) XXX_Unmarshal(b []byte) error { @@ -2534,7 +2604,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_e9b1768cf174c79b, []int{56} + return fileDescriptor_e9b1768cf174c79b, []int{58} } func (m *GetSnapshotRequest) XXX_Unmarshal(b []byte) error { @@ -2573,7 +2643,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_e9b1768cf174c79b, []int{57} + return fileDescriptor_e9b1768cf174c79b, []int{59} } func (m *GetSnapshotResponse) XXX_Unmarshal(b []byte) error { @@ -2614,7 +2684,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_e9b1768cf174c79b, []int{58} + return fileDescriptor_e9b1768cf174c79b, []int{60} } func (m *CreateRepositoryFromSnapshotRequest) XXX_Unmarshal(b []byte) error { @@ -2666,7 +2736,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_e9b1768cf174c79b, []int{59} + return fileDescriptor_e9b1768cf174c79b, []int{61} } func (m *CreateRepositoryFromSnapshotResponse) XXX_Unmarshal(b []byte) error { @@ -2700,7 +2770,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_e9b1768cf174c79b, []int{60} + return fileDescriptor_e9b1768cf174c79b, []int{62} } func (m *GetRawChangesRequest) XXX_Unmarshal(b []byte) error { @@ -2753,7 +2823,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_e9b1768cf174c79b, []int{61} + return fileDescriptor_e9b1768cf174c79b, []int{63} } func (m *GetRawChangesResponse) XXX_Unmarshal(b []byte) error { @@ -2803,7 +2873,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_e9b1768cf174c79b, []int{61, 0} + return fileDescriptor_e9b1768cf174c79b, []int{63, 0} } func (m *GetRawChangesResponse_RawChange) XXX_Unmarshal(b []byte) error { @@ -2909,7 +2979,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_e9b1768cf174c79b, []int{62} + return fileDescriptor_e9b1768cf174c79b, []int{64} } func (m *SearchFilesByNameRequest) XXX_Unmarshal(b []byte) error { @@ -2962,7 +3032,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_e9b1768cf174c79b, []int{63} + return fileDescriptor_e9b1768cf174c79b, []int{65} } func (m *SearchFilesByNameResponse) XXX_Unmarshal(b []byte) error { @@ -3004,7 +3074,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_e9b1768cf174c79b, []int{64} + return fileDescriptor_e9b1768cf174c79b, []int{66} } func (m *SearchFilesByContentRequest) XXX_Unmarshal(b []byte) error { @@ -3066,7 +3136,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_e9b1768cf174c79b, []int{65} + return fileDescriptor_e9b1768cf174c79b, []int{67} } func (m *SearchFilesByContentResponse) XXX_Unmarshal(b []byte) error { @@ -3122,7 +3192,7 @@ func (m *Remote) Reset() { *m = Remote{} } func (m *Remote) String() string { return proto.CompactTextString(m) } func (*Remote) ProtoMessage() {} func (*Remote) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{66} + return fileDescriptor_e9b1768cf174c79b, []int{68} } func (m *Remote) XXX_Unmarshal(b []byte) error { @@ -3184,7 +3254,7 @@ func (m *FetchHTTPRemoteRequest) Reset() { *m = FetchHTTPRemoteRequest{} func (m *FetchHTTPRemoteRequest) String() string { return proto.CompactTextString(m) } func (*FetchHTTPRemoteRequest) ProtoMessage() {} func (*FetchHTTPRemoteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{67} + return fileDescriptor_e9b1768cf174c79b, []int{69} } func (m *FetchHTTPRemoteRequest) XXX_Unmarshal(b []byte) error { @@ -3236,7 +3306,7 @@ func (m *FetchHTTPRemoteResponse) Reset() { *m = FetchHTTPRemoteResponse func (m *FetchHTTPRemoteResponse) String() string { return proto.CompactTextString(m) } func (*FetchHTTPRemoteResponse) ProtoMessage() {} func (*FetchHTTPRemoteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{68} + return fileDescriptor_e9b1768cf174c79b, []int{70} } func (m *FetchHTTPRemoteResponse) XXX_Unmarshal(b []byte) error { @@ -3268,7 +3338,7 @@ func (m *GetObjectDirectorySizeRequest) Reset() { *m = GetObjectDirector func (m *GetObjectDirectorySizeRequest) String() string { return proto.CompactTextString(m) } func (*GetObjectDirectorySizeRequest) ProtoMessage() {} func (*GetObjectDirectorySizeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{69} + return fileDescriptor_e9b1768cf174c79b, []int{71} } func (m *GetObjectDirectorySizeRequest) XXX_Unmarshal(b []byte) error { @@ -3308,7 +3378,7 @@ func (m *GetObjectDirectorySizeResponse) Reset() { *m = GetObjectDirecto func (m *GetObjectDirectorySizeResponse) String() string { return proto.CompactTextString(m) } func (*GetObjectDirectorySizeResponse) ProtoMessage() {} func (*GetObjectDirectorySizeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{70} + return fileDescriptor_e9b1768cf174c79b, []int{72} } func (m *GetObjectDirectorySizeResponse) XXX_Unmarshal(b []byte) error { @@ -3349,7 +3419,7 @@ func (m *CloneFromPoolRequest) Reset() { *m = CloneFromPoolRequest{} } func (m *CloneFromPoolRequest) String() string { return proto.CompactTextString(m) } func (*CloneFromPoolRequest) ProtoMessage() {} func (*CloneFromPoolRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{71} + return fileDescriptor_e9b1768cf174c79b, []int{73} } func (m *CloneFromPoolRequest) XXX_Unmarshal(b []byte) error { @@ -3401,7 +3471,7 @@ func (m *CloneFromPoolResponse) Reset() { *m = CloneFromPoolResponse{} } func (m *CloneFromPoolResponse) String() string { return proto.CompactTextString(m) } func (*CloneFromPoolResponse) ProtoMessage() {} func (*CloneFromPoolResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{72} + return fileDescriptor_e9b1768cf174c79b, []int{74} } func (m *CloneFromPoolResponse) XXX_Unmarshal(b []byte) error { @@ -3435,7 +3505,7 @@ func (m *CloneFromPoolInternalRequest) Reset() { *m = CloneFromPoolInter func (m *CloneFromPoolInternalRequest) String() string { return proto.CompactTextString(m) } func (*CloneFromPoolInternalRequest) ProtoMessage() {} func (*CloneFromPoolInternalRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{73} + return fileDescriptor_e9b1768cf174c79b, []int{75} } func (m *CloneFromPoolInternalRequest) XXX_Unmarshal(b []byte) error { @@ -3487,7 +3557,7 @@ func (m *CloneFromPoolInternalResponse) Reset() { *m = CloneFromPoolInte func (m *CloneFromPoolInternalResponse) String() string { return proto.CompactTextString(m) } func (*CloneFromPoolInternalResponse) ProtoMessage() {} func (*CloneFromPoolInternalResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{74} + return fileDescriptor_e9b1768cf174c79b, []int{76} } func (m *CloneFromPoolInternalResponse) XXX_Unmarshal(b []byte) error { @@ -3519,7 +3589,7 @@ func (m *RemoveRepositoryRequest) Reset() { *m = RemoveRepositoryRequest func (m *RemoveRepositoryRequest) String() string { return proto.CompactTextString(m) } func (*RemoveRepositoryRequest) ProtoMessage() {} func (*RemoveRepositoryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{75} + return fileDescriptor_e9b1768cf174c79b, []int{77} } func (m *RemoveRepositoryRequest) XXX_Unmarshal(b []byte) error { @@ -3557,7 +3627,7 @@ func (m *RemoveRepositoryResponse) Reset() { *m = RemoveRepositoryRespon func (m *RemoveRepositoryResponse) String() string { return proto.CompactTextString(m) } func (*RemoveRepositoryResponse) ProtoMessage() {} func (*RemoveRepositoryResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{76} + return fileDescriptor_e9b1768cf174c79b, []int{78} } func (m *RemoveRepositoryResponse) XXX_Unmarshal(b []byte) error { @@ -3590,7 +3660,7 @@ func (m *RenameRepositoryRequest) Reset() { *m = RenameRepositoryRequest func (m *RenameRepositoryRequest) String() string { return proto.CompactTextString(m) } func (*RenameRepositoryRequest) ProtoMessage() {} func (*RenameRepositoryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{77} + return fileDescriptor_e9b1768cf174c79b, []int{79} } func (m *RenameRepositoryRequest) XXX_Unmarshal(b []byte) error { @@ -3635,7 +3705,7 @@ func (m *RenameRepositoryResponse) Reset() { *m = RenameRepositoryRespon func (m *RenameRepositoryResponse) String() string { return proto.CompactTextString(m) } func (*RenameRepositoryResponse) ProtoMessage() {} func (*RenameRepositoryResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{78} + return fileDescriptor_e9b1768cf174c79b, []int{80} } func (m *RenameRepositoryResponse) XXX_Unmarshal(b []byte) error { @@ -3668,7 +3738,7 @@ func (m *ReplicateRepositoryRequest) Reset() { *m = ReplicateRepositoryR func (m *ReplicateRepositoryRequest) String() string { return proto.CompactTextString(m) } func (*ReplicateRepositoryRequest) ProtoMessage() {} func (*ReplicateRepositoryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{79} + return fileDescriptor_e9b1768cf174c79b, []int{81} } func (m *ReplicateRepositoryRequest) XXX_Unmarshal(b []byte) error { @@ -3713,7 +3783,7 @@ func (m *ReplicateRepositoryResponse) Reset() { *m = ReplicateRepository func (m *ReplicateRepositoryResponse) String() string { return proto.CompactTextString(m) } func (*ReplicateRepositoryResponse) ProtoMessage() {} func (*ReplicateRepositoryResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{80} + return fileDescriptor_e9b1768cf174c79b, []int{82} } func (m *ReplicateRepositoryResponse) XXX_Unmarshal(b []byte) error { @@ -3745,7 +3815,7 @@ func (m *OptimizeRepositoryRequest) Reset() { *m = OptimizeRepositoryReq func (m *OptimizeRepositoryRequest) String() string { return proto.CompactTextString(m) } func (*OptimizeRepositoryRequest) ProtoMessage() {} func (*OptimizeRepositoryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{81} + return fileDescriptor_e9b1768cf174c79b, []int{83} } func (m *OptimizeRepositoryRequest) XXX_Unmarshal(b []byte) error { @@ -3783,7 +3853,7 @@ func (m *OptimizeRepositoryResponse) Reset() { *m = OptimizeRepositoryRe func (m *OptimizeRepositoryResponse) String() string { return proto.CompactTextString(m) } func (*OptimizeRepositoryResponse) ProtoMessage() {} func (*OptimizeRepositoryResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e9b1768cf174c79b, []int{82} + return fileDescriptor_e9b1768cf174c79b, []int{84} } func (m *OptimizeRepositoryResponse) XXX_Unmarshal(b []byte) error { @@ -3815,6 +3885,8 @@ func init() { proto.RegisterType((*RepackFullResponse)(nil), "gitaly.RepackFullResponse") proto.RegisterType((*GarbageCollectRequest)(nil), "gitaly.GarbageCollectRequest") proto.RegisterType((*GarbageCollectResponse)(nil), "gitaly.GarbageCollectResponse") + proto.RegisterType((*WriteCommitGraphRequest)(nil), "gitaly.WriteCommitGraphRequest") + proto.RegisterType((*WriteCommitGraphResponse)(nil), "gitaly.WriteCommitGraphResponse") proto.RegisterType((*CleanupRequest)(nil), "gitaly.CleanupRequest") proto.RegisterType((*CleanupResponse)(nil), "gitaly.CleanupResponse") proto.RegisterType((*RepositorySizeRequest)(nil), "gitaly.RepositorySizeRequest") @@ -3897,193 +3969,195 @@ func init() { func init() { proto.RegisterFile("repository-service.proto", fileDescriptor_e9b1768cf174c79b) } var fileDescriptor_e9b1768cf174c79b = []byte{ - // 2966 bytes of a gzipped FileDescriptorProto + // 3005 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x5b, 0x6f, 0x1c, 0xc7, - 0xb1, 0xd6, 0xf2, 0xb6, 0xbb, 0xc5, 0x95, 0xb4, 0x6c, 0x52, 0xe2, 0xee, 0x88, 0x14, 0xa5, 0x91, - 0x2c, 0xcb, 0xb6, 0x4c, 0xc9, 0xd2, 0x01, 0x8e, 0xcf, 0x39, 0x38, 0x08, 0xb8, 0xbc, 0xeb, 0x42, - 0xd2, 0x43, 0x2a, 0x86, 0x05, 0x18, 0xe3, 0xd9, 0xd9, 0x5e, 0xee, 0x84, 0xb3, 0xd3, 0xab, 0x99, - 0x5e, 0xd2, 0x34, 0x92, 0x87, 0x04, 0xf0, 0x53, 0x00, 0x03, 0x01, 0x82, 0x38, 0x8f, 0x79, 0xce, - 0x2f, 0xc8, 0x4b, 0x10, 0xe4, 0x25, 0xff, 0xc1, 0x7f, 0x25, 0x4f, 0x41, 0x5f, 0x66, 0x7a, 0xae, - 0x6b, 0x05, 0xbb, 0x70, 0xde, 0xa6, 0xab, 0xab, 0xab, 0xaa, 0xab, 0xab, 0x2f, 0xf5, 0xd5, 0x40, - 0xc3, 0xc7, 0x03, 0x12, 0x38, 0x94, 0xf8, 0x97, 0x1f, 0x07, 0xd8, 0x3f, 0x77, 0x6c, 0xbc, 0x3e, - 0xf0, 0x09, 0x25, 0x68, 0xee, 0xd4, 0xa1, 0x96, 0x7b, 0xa9, 0x81, 0xeb, 0x78, 0x54, 0xd0, 0xb4, - 0x5a, 0xd0, 0xb3, 0x7c, 0xdc, 0x11, 0x2d, 0xfd, 0x18, 0x96, 0x8d, 0x68, 0xf4, 0xf6, 0xd7, 0x4e, - 0x40, 0x03, 0x03, 0xbf, 0x1d, 0xe2, 0x80, 0xa2, 0x4f, 0x01, 0x94, 0xe0, 0x46, 0xe9, 0x4e, 0xe9, - 0xe1, 0xfc, 0x53, 0xb4, 0x2e, 0x24, 0xae, 0xab, 0x41, 0xad, 0x99, 0x3f, 0xfe, 0xe3, 0x51, 0xc9, - 0x88, 0xf1, 0xea, 0x4f, 0xa1, 0x91, 0x15, 0x1a, 0x0c, 0x88, 0x17, 0x60, 0x74, 0x13, 0xe6, 0x30, - 0xa7, 0x70, 0x89, 0x15, 0x43, 0xb6, 0xf4, 0x13, 0x3e, 0xc6, 0xb2, 0xcf, 0xf6, 0x3d, 0xdb, 0xc7, - 0x7d, 0xec, 0x51, 0xcb, 0x1d, 0xdf, 0x92, 0x5b, 0xd0, 0xcc, 0x91, 0x2a, 0x4c, 0xd1, 0x7d, 0x58, - 0x10, 0x9d, 0x3b, 0x43, 0x77, 0x7c, 0x5d, 0xe8, 0x1e, 0x5c, 0xb5, 0x7d, 0x6c, 0x51, 0x6c, 0xb6, - 0x1d, 0xda, 0xb7, 0x06, 0x8d, 0x29, 0x3e, 0xc1, 0x9a, 0x20, 0xb6, 0x38, 0x4d, 0x5f, 0x02, 0x14, - 0xd7, 0x29, 0x2d, 0x39, 0x87, 0x1b, 0xbb, 0x96, 0xdf, 0xb6, 0x4e, 0xf1, 0x26, 0x71, 0x5d, 0x6c, - 0xd3, 0x9f, 0xc8, 0x9a, 0x06, 0xdc, 0x4c, 0xeb, 0x95, 0x16, 0x3d, 0x87, 0x6b, 0x9b, 0x2e, 0xb6, - 0xbc, 0xe1, 0x60, 0xfc, 0x45, 0x58, 0x80, 0xeb, 0x91, 0x2c, 0x29, 0xfe, 0x33, 0xb8, 0xa1, 0x86, - 0x1c, 0x3b, 0xdf, 0xe0, 0xf1, 0xb5, 0x3c, 0x82, 0x9b, 0x69, 0x91, 0x32, 0xe4, 0x10, 0xcc, 0x04, - 0xce, 0x37, 0x98, 0x4b, 0x9b, 0x36, 0xf8, 0xb7, 0xfe, 0x16, 0x9a, 0x1b, 0x83, 0x81, 0x7b, 0xb9, - 0xeb, 0x50, 0x8b, 0x52, 0xdf, 0x69, 0x0f, 0x29, 0x1e, 0x3f, 0xf2, 0x91, 0x06, 0x15, 0x1f, 0x9f, - 0x3b, 0x81, 0x43, 0x3c, 0xee, 0xf0, 0x9a, 0x11, 0xb5, 0xf5, 0x15, 0xd0, 0xf2, 0x54, 0x4a, 0x8f, - 0xfc, 0x6d, 0x0a, 0xd0, 0x0e, 0xa6, 0x76, 0xcf, 0xc0, 0x7d, 0x42, 0xc7, 0xf7, 0x07, 0xdb, 0x68, - 0x3e, 0x17, 0xc5, 0x0d, 0xa9, 0x1a, 0xb2, 0x85, 0x96, 0x60, 0xb6, 0x4b, 0x7c, 0x1b, 0x37, 0xa6, - 0x79, 0x40, 0x88, 0x06, 0x5a, 0x86, 0xb2, 0x47, 0x4c, 0x6a, 0x9d, 0x06, 0x8d, 0x19, 0xb1, 0x2f, - 0x3d, 0x72, 0x62, 0x9d, 0x06, 0xa8, 0x01, 0x65, 0xea, 0xf4, 0x31, 0x19, 0xd2, 0xc6, 0xec, 0x9d, - 0xd2, 0xc3, 0x59, 0x23, 0x6c, 0xb2, 0x21, 0x41, 0xd0, 0x33, 0xcf, 0xf0, 0x65, 0x63, 0x4e, 0x68, - 0x08, 0x82, 0xde, 0x0b, 0x7c, 0x89, 0xd6, 0x60, 0xfe, 0xcc, 0x23, 0x17, 0x9e, 0xd9, 0x23, 0x6c, - 0x9f, 0x97, 0x79, 0x27, 0x70, 0xd2, 0x1e, 0xa3, 0xa0, 0x26, 0x54, 0x3c, 0x62, 0x0e, 0xfc, 0xa1, - 0x87, 0x1b, 0x55, 0xae, 0xad, 0xec, 0x91, 0x23, 0xd6, 0x44, 0xcf, 0xe0, 0xaa, 0xb0, 0xd3, 0x1c, - 0x58, 0xbe, 0xd5, 0x0f, 0x1a, 0xc0, 0xa7, 0x7c, 0x4d, 0x4d, 0x99, 0x7b, 0xa7, 0x26, 0x98, 0x8e, - 0x38, 0xcf, 0xf3, 0x99, 0x4a, 0xa5, 0x5e, 0xd5, 0x6f, 0xc0, 0x62, 0xc2, 0x81, 0xd2, 0xb1, 0xc7, - 0xb0, 0xbc, 0xc9, 0x63, 0x5e, 0x79, 0x6b, 0xfc, 0x60, 0xd3, 0xa0, 0x91, 0x15, 0x2a, 0x15, 0x7e, - 0x3b, 0x05, 0x0b, 0xbb, 0x98, 0x6e, 0xf8, 0x76, 0xcf, 0x39, 0x9f, 0xc0, 0x42, 0xde, 0x82, 0xaa, - 0x4d, 0xfa, 0x7d, 0x87, 0x9a, 0x4e, 0x47, 0xae, 0x65, 0x45, 0x10, 0xf6, 0x3b, 0x6c, 0x95, 0x07, - 0x3e, 0xee, 0x3a, 0x5f, 0xf3, 0xe5, 0xac, 0x1a, 0xb2, 0x85, 0x3e, 0x85, 0xb9, 0x2e, 0xf1, 0xfb, - 0x16, 0xe5, 0xcb, 0x79, 0xed, 0xe9, 0x9d, 0x50, 0x55, 0xc6, 0xb2, 0xf5, 0x1d, 0xce, 0x67, 0x48, - 0x7e, 0xb6, 0x5b, 0x06, 0x16, 0xed, 0xf1, 0xd5, 0xae, 0x19, 0xfc, 0x5b, 0x7f, 0x06, 0x73, 0x82, - 0x0b, 0x95, 0x61, 0xfa, 0xcd, 0xfe, 0x51, 0xfd, 0x0a, 0xfb, 0x38, 0xd9, 0x30, 0xea, 0x25, 0x04, - 0x30, 0x77, 0xb2, 0x61, 0x98, 0xbb, 0x6f, 0xea, 0x53, 0x68, 0x1e, 0xca, 0xec, 0xbb, 0xf5, 0xe6, - 0x69, 0x7d, 0x5a, 0x7f, 0x08, 0x28, 0xae, 0x4c, 0x6d, 0xc6, 0x8e, 0x45, 0x2d, 0xee, 0x81, 0x9a, - 0xc1, 0xbf, 0xd9, 0x12, 0xed, 0x59, 0xc1, 0x4b, 0x62, 0x5b, 0x6e, 0xcb, 0xb7, 0x3c, 0xbb, 0x37, - 0x81, 0xad, 0xa8, 0x3f, 0x81, 0x46, 0x56, 0xa8, 0x34, 0x62, 0x09, 0x66, 0xcf, 0x2d, 0x77, 0x88, - 0xe5, 0x1d, 0x24, 0x1a, 0xfa, 0x0f, 0x25, 0x68, 0xf0, 0x08, 0x3a, 0x26, 0x43, 0xdf, 0xc6, 0x62, - 0xd4, 0xf8, 0xeb, 0xf7, 0x33, 0x58, 0x08, 0xb8, 0x40, 0x33, 0x26, 0x60, 0xaa, 0x48, 0x80, 0x51, - 0x17, 0xcc, 0x46, 0xe2, 0x28, 0x97, 0x02, 0xda, 0xdc, 0x24, 0xbe, 0xd4, 0x35, 0xa3, 0x16, 0xc4, - 0xcc, 0x44, 0xab, 0x00, 0xd4, 0xf2, 0x4f, 0x31, 0x35, 0x7d, 0xdc, 0xe5, 0x8b, 0x5e, 0x33, 0xaa, - 0x82, 0x62, 0xe0, 0xae, 0xfe, 0x0c, 0x9a, 0x39, 0x53, 0x53, 0x77, 0xb2, 0x8f, 0x83, 0xa1, 0x4b, - 0xc3, 0x3b, 0x59, 0xb4, 0xf4, 0x5d, 0x98, 0xdf, 0x09, 0xec, 0xb3, 0xf1, 0xd7, 0xe2, 0x3e, 0xd4, - 0x84, 0x20, 0xe5, 0x7f, 0xec, 0xfb, 0xc4, 0x97, 0x51, 0x20, 0x1a, 0xfa, 0x5f, 0x4a, 0x70, 0xfd, - 0x73, 0xdf, 0x61, 0x9b, 0xaa, 0x3b, 0xbe, 0xdb, 0xeb, 0x30, 0xcd, 0x3c, 0x21, 0x4e, 0x61, 0xf6, - 0x99, 0x38, 0x9c, 0xa7, 0x93, 0x87, 0x33, 0xba, 0x0b, 0x35, 0xe2, 0x76, 0xcc, 0xa8, 0x5f, 0x38, - 0x70, 0x9e, 0xb8, 0x1d, 0x23, 0x64, 0x89, 0x0e, 0xce, 0xd9, 0xd8, 0xc1, 0xf9, 0x7c, 0xa6, 0x32, - 0x57, 0x2f, 0xeb, 0x0d, 0xa8, 0x2b, 0xcb, 0xc5, 0x24, 0x9f, 0xcf, 0x54, 0x4a, 0xf5, 0x29, 0xdd, - 0x83, 0xa5, 0x1d, 0xc7, 0xeb, 0xbc, 0xc2, 0xfe, 0x29, 0x6e, 0x59, 0xc1, 0x04, 0xce, 0x83, 0x15, - 0xa8, 0x86, 0x66, 0x06, 0x8d, 0xa9, 0x3b, 0xd3, 0x6c, 0xa1, 0x23, 0x82, 0xfe, 0x11, 0xdc, 0x48, - 0xe9, 0x53, 0x1b, 0xaf, 0x6d, 0x05, 0x22, 0xe4, 0xab, 0x06, 0xff, 0xd6, 0xbf, 0x2b, 0xc1, 0x82, - 0x38, 0xc7, 0x76, 0x88, 0x7f, 0xf6, 0x9f, 0x0f, 0x75, 0xf6, 0x3c, 0x8a, 0xdb, 0x13, 0x3d, 0xd4, - 0x9a, 0xfb, 0x81, 0x81, 0x99, 0xc9, 0xfb, 0xde, 0x91, 0x4f, 0x4e, 0x7d, 0x1c, 0x04, 0x13, 0x39, - 0x58, 0x7d, 0x2e, 0x34, 0x76, 0xb0, 0x0a, 0xc2, 0x7e, 0x47, 0xff, 0x7f, 0xd0, 0xf2, 0x74, 0x4a, - 0x67, 0xae, 0xc1, 0xbc, 0xe3, 0x99, 0x03, 0x49, 0x96, 0xdb, 0x06, 0x9c, 0x88, 0x51, 0x98, 0x7c, - 0xfc, 0x76, 0x68, 0x05, 0xbd, 0x09, 0x9b, 0x1c, 0x70, 0xa1, 0x31, 0x93, 0x05, 0x21, 0x34, 0x39, - 0xab, 0xf3, 0x5d, 0x4d, 0x76, 0xe1, 0x76, 0xfa, 0x4e, 0xdb, 0xf1, 0x49, 0xff, 0xb5, 0xf1, 0x72, - 0x22, 0x9b, 0x71, 0xe8, 0xbb, 0xd2, 0x62, 0xf6, 0xa9, 0xdf, 0x85, 0xb5, 0x42, 0x6d, 0x72, 0xd9, - 0x0f, 0x61, 0x51, 0xb0, 0xb4, 0x86, 0x5e, 0xc7, 0x9d, 0xc0, 0x13, 0xf1, 0x43, 0x58, 0x4a, 0x0a, - 0x1c, 0x71, 0x27, 0x7d, 0x37, 0x05, 0xf5, 0x63, 0x4c, 0x37, 0x89, 0xd7, 0x75, 0x4e, 0xc7, 0x77, - 0xc0, 0xa7, 0x50, 0xc6, 0x1e, 0xf5, 0x1d, 0x2c, 0xb6, 0xec, 0xfc, 0xd3, 0xdb, 0xe1, 0xb0, 0xb4, - 0x92, 0xf5, 0x6d, 0x8f, 0xfa, 0x97, 0x46, 0xc8, 0xae, 0x7d, 0x5b, 0x82, 0x59, 0x4e, 0x62, 0x4e, - 0x64, 0x8f, 0x2d, 0xb1, 0x81, 0xd9, 0x27, 0x5a, 0x85, 0x2a, 0xbf, 0xba, 0xcc, 0x80, 0xfa, 0xc2, - 0xb9, 0x7b, 0x57, 0x8c, 0x0a, 0x27, 0x1d, 0x53, 0x1f, 0xdd, 0x85, 0x79, 0xd1, 0xed, 0x78, 0xf4, - 0xd9, 0x53, 0x7e, 0xe6, 0xcd, 0xee, 0x5d, 0x31, 0x80, 0x13, 0xf7, 0x19, 0x0d, 0xad, 0x81, 0x68, - 0x99, 0x6d, 0x42, 0x5c, 0xf1, 0xf4, 0xdb, 0xbb, 0x62, 0x08, 0xa9, 0x2d, 0x42, 0xdc, 0x56, 0x59, - 0x5e, 0x95, 0xfa, 0x22, 0x2c, 0xc4, 0x4c, 0x95, 0x4b, 0x64, 0xc3, 0xe2, 0x16, 0x76, 0x31, 0xc5, - 0x93, 0xf2, 0x13, 0x82, 0x99, 0x33, 0x7c, 0x29, 0x9c, 0x54, 0x35, 0xf8, 0xb7, 0x7e, 0x13, 0x96, - 0x92, 0x4a, 0xa4, 0x72, 0x87, 0x25, 0x77, 0x01, 0x25, 0x3e, 0xde, 0x1c, 0x06, 0x94, 0xf4, 0xf7, - 0x08, 0x39, 0x0b, 0x26, 0x62, 0x02, 0x8f, 0x86, 0xa9, 0x58, 0x34, 0xac, 0x80, 0x96, 0xa7, 0x4a, - 0x1a, 0x72, 0x02, 0x8d, 0x96, 0x65, 0x9f, 0x0d, 0x07, 0x93, 0xb4, 0x43, 0x7f, 0x0c, 0xcd, 0x1c, - 0xa9, 0x23, 0x42, 0xf6, 0x2d, 0xdc, 0xcd, 0xdb, 0x52, 0x13, 0xda, 0x3d, 0xb9, 0x7e, 0xb9, 0x0f, - 0xfa, 0x28, 0x95, 0xd2, 0x3f, 0x07, 0x80, 0xd8, 0x9d, 0xf4, 0xd2, 0xb1, 0xb1, 0x37, 0x81, 0x1b, - 0x50, 0xdf, 0x84, 0xc5, 0x84, 0x3c, 0xe9, 0x93, 0x47, 0x80, 0x5c, 0x41, 0x32, 0x83, 0x1e, 0xf1, - 0xa9, 0xe9, 0x59, 0xfd, 0xf0, 0xbe, 0xab, 0xcb, 0x9e, 0x63, 0xd6, 0x71, 0x60, 0xf5, 0xf9, 0xa2, - 0xed, 0x62, 0xba, 0xef, 0x75, 0xc9, 0xc6, 0xe4, 0x12, 0x40, 0xfd, 0xff, 0xa0, 0x99, 0x23, 0x55, - 0x1a, 0x78, 0x1b, 0x40, 0x65, 0x7e, 0x72, 0xe9, 0x62, 0x14, 0x66, 0xd2, 0xa6, 0xe5, 0xda, 0x43, - 0xd7, 0xa2, 0x78, 0xb3, 0x87, 0xed, 0xb3, 0x60, 0xd8, 0x1f, 0xdf, 0xa4, 0xff, 0x86, 0x66, 0x8e, - 0x54, 0x69, 0x92, 0x06, 0x15, 0x5b, 0xd2, 0xa4, 0xa7, 0xa2, 0x36, 0x5b, 0xb6, 0x5d, 0x4c, 0x8f, - 0x3d, 0x6b, 0x10, 0xf4, 0xc8, 0xf8, 0x90, 0x84, 0xfe, 0x01, 0x2c, 0x26, 0xe4, 0x8d, 0x08, 0xe5, - 0xef, 0x4b, 0x70, 0x2f, 0x2f, 0xb0, 0x26, 0x66, 0x0c, 0xcb, 0x41, 0x7b, 0x94, 0x0e, 0x4c, 0x75, - 0x2d, 0x95, 0x59, 0xfb, 0xb5, 0xef, 0xb2, 0x4b, 0x96, 0x77, 0x59, 0x43, 0xda, 0x93, 0x69, 0x15, - 0xe7, 0xdd, 0x18, 0xd2, 0x9e, 0xfe, 0x00, 0xee, 0x8f, 0x36, 0x4c, 0xc6, 0xfc, 0x1f, 0x4a, 0xb0, - 0xb4, 0x8b, 0xa9, 0x61, 0x5d, 0x6c, 0xf6, 0x2c, 0xef, 0x74, 0x12, 0xe0, 0xc2, 0x3d, 0xb8, 0xda, - 0xf5, 0x49, 0xdf, 0x4c, 0x20, 0x0c, 0x55, 0xa3, 0xc6, 0x88, 0xd1, 0x2b, 0x75, 0x0d, 0xe6, 0x29, - 0x31, 0x13, 0xef, 0xdc, 0xaa, 0x01, 0x94, 0x84, 0x0c, 0xfa, 0x5f, 0x67, 0xe0, 0x46, 0xca, 0x30, - 0xb9, 0x10, 0x7b, 0x30, 0xef, 0x5b, 0x17, 0xa6, 0x2d, 0xc8, 0x8d, 0x12, 0xbf, 0xa7, 0xde, 0x8f, - 0x25, 0x8e, 0xd9, 0x31, 0xeb, 0x11, 0xc9, 0x00, 0x3f, 0xea, 0xd5, 0x7e, 0x98, 0x86, 0x6a, 0xd4, - 0x83, 0x96, 0xa1, 0xdc, 0x76, 0x49, 0x9b, 0x3d, 0x59, 0x44, 0x88, 0xcd, 0xb1, 0xe6, 0x7e, 0x27, - 0x02, 0x66, 0xa6, 0x14, 0x30, 0x83, 0x56, 0xa1, 0xe2, 0xe1, 0x0b, 0x93, 0xa7, 0xa0, 0xdc, 0xf8, - 0xd6, 0x54, 0xa3, 0x64, 0x94, 0x3d, 0x7c, 0x71, 0x64, 0x51, 0x96, 0xe6, 0x54, 0xd8, 0x3b, 0x9d, - 0x77, 0xcf, 0xa8, 0x6e, 0xe2, 0x76, 0x78, 0xf7, 0x21, 0x54, 0xc9, 0x00, 0xfb, 0x16, 0x65, 0x73, - 0x9f, 0xe5, 0x99, 0xef, 0x27, 0xef, 0x38, 0x81, 0xf5, 0xc3, 0x70, 0xa0, 0xa1, 0x64, 0x30, 0x9f, - 0x33, 0x9f, 0x28, 0xa1, 0x02, 0xea, 0xa8, 0xf9, 0xd6, 0x45, 0xc4, 0xcf, 0x62, 0x89, 0x19, 0xd5, - 0x27, 0x1d, 0xcc, 0xd1, 0x8e, 0x59, 0x6e, 0xd0, 0x2b, 0xd2, 0xc1, 0x1c, 0xea, 0xc0, 0x17, 0xa2, - 0xab, 0x22, 0xba, 0x3c, 0x7c, 0xc1, 0xbb, 0xee, 0xc3, 0xb5, 0x70, 0xa6, 0x66, 0xfb, 0x92, 0x9d, - 0x08, 0x55, 0x91, 0xd7, 0xc9, 0xb9, 0xb6, 0x18, 0x8d, 0x71, 0x85, 0x13, 0x96, 0x5c, 0x20, 0xb8, - 0xe4, 0x94, 0x39, 0x97, 0xee, 0x40, 0x55, 0x99, 0x33, 0x0f, 0xe5, 0xd7, 0x07, 0x2f, 0x0e, 0x0e, - 0x3f, 0x3f, 0xa8, 0x5f, 0x41, 0x55, 0x98, 0xdd, 0xd8, 0xda, 0xda, 0xde, 0x12, 0x99, 0xfa, 0xe6, - 0xe1, 0xd1, 0xfe, 0xf6, 0x96, 0xc8, 0xd4, 0xb7, 0xb6, 0x5f, 0x6e, 0x9f, 0x6c, 0x6f, 0xd5, 0xa7, - 0x51, 0x0d, 0x2a, 0xaf, 0x0e, 0xb7, 0xf6, 0x77, 0x58, 0xd7, 0x0c, 0xeb, 0x32, 0xb6, 0x0f, 0x36, - 0x5e, 0x6d, 0x6f, 0xd5, 0x67, 0x51, 0x1d, 0x6a, 0x27, 0x5f, 0x1c, 0x6d, 0x9b, 0x9b, 0x7b, 0x1b, - 0x07, 0xbb, 0xdb, 0x5b, 0xf5, 0x39, 0xfd, 0x97, 0xd0, 0x38, 0xc6, 0x96, 0x6f, 0xf7, 0x76, 0x1c, - 0x17, 0x07, 0xad, 0x4b, 0x76, 0x98, 0x8e, 0x1f, 0xdb, 0x4b, 0x30, 0xfb, 0x76, 0x88, 0x65, 0xb6, - 0x50, 0x35, 0x44, 0x23, 0xcc, 0xe1, 0xa6, 0xa3, 0x1c, 0x4e, 0xff, 0x04, 0x9a, 0x39, 0xda, 0x55, - 0x5a, 0xd9, 0x65, 0x64, 0x1e, 0xba, 0x35, 0x43, 0x34, 0xf4, 0x3f, 0x97, 0xe0, 0x56, 0x62, 0xcc, - 0x26, 0xf1, 0x28, 0xf6, 0xe8, 0x4f, 0x66, 0x34, 0xfa, 0x00, 0xea, 0x76, 0x6f, 0xe8, 0x9d, 0x61, - 0x96, 0x60, 0x0a, 0x5b, 0x25, 0xca, 0x76, 0x5d, 0xd2, 0xa3, 0x63, 0xe3, 0x12, 0x56, 0xf2, 0x6d, - 0x95, 0x53, 0x6c, 0x40, 0xb9, 0x6f, 0x51, 0xbb, 0x17, 0x4d, 0x32, 0x6c, 0xa2, 0x55, 0x00, 0xfe, - 0x69, 0xc6, 0x2e, 0xe9, 0x2a, 0xa7, 0x6c, 0x59, 0xd4, 0x42, 0x77, 0xa0, 0x86, 0xbd, 0x8e, 0x49, - 0xba, 0x26, 0xa7, 0x49, 0xf4, 0x0f, 0xb0, 0xd7, 0x39, 0xec, 0xbe, 0x62, 0x14, 0xfd, 0x77, 0x25, - 0x98, 0x13, 0xd8, 0x59, 0xf8, 0x5c, 0x2f, 0x45, 0xcf, 0x75, 0xb6, 0x55, 0xf9, 0x6d, 0x2a, 0x66, - 0xca, 0xbf, 0xd1, 0xff, 0x42, 0x33, 0x3a, 0x27, 0x89, 0xef, 0x7c, 0xc3, 0xa3, 0xcf, 0xec, 0x61, - 0xab, 0x83, 0x7d, 0x79, 0xf0, 0x2c, 0x87, 0xe7, 0x66, 0xd4, 0xbf, 0xc7, 0xbb, 0xd1, 0x7b, 0x70, - 0xad, 0xef, 0xb0, 0xac, 0xdf, 0xf4, 0x71, 0xb7, 0x6f, 0x0d, 0x82, 0xc6, 0x0c, 0x7f, 0xf1, 0x5d, - 0x15, 0x54, 0x43, 0x10, 0xf5, 0xdf, 0x97, 0xe0, 0x26, 0xc7, 0x2d, 0xf6, 0x4e, 0x4e, 0x8e, 0x26, - 0x85, 0x8c, 0x3e, 0x48, 0x20, 0xa3, 0x59, 0x70, 0x31, 0x44, 0x4a, 0x63, 0xd0, 0xe7, 0x74, 0x02, - 0xfa, 0xd4, 0x9b, 0xb0, 0x9c, 0xb1, 0x4a, 0x2e, 0xe0, 0x17, 0xb0, 0xba, 0x8b, 0xe9, 0x61, 0xfb, - 0x17, 0xd8, 0xa6, 0x5b, 0x8e, 0x8f, 0xed, 0xc9, 0x21, 0xdc, 0xff, 0x05, 0xb7, 0x8b, 0x44, 0x8f, - 0x40, 0xba, 0xff, 0x54, 0x82, 0xa5, 0x4d, 0x97, 0x78, 0x98, 0x5d, 0x53, 0x47, 0x84, 0xb8, 0x93, - 0x70, 0xe0, 0xcc, 0x80, 0xa5, 0x0b, 0xa9, 0xcc, 0x5e, 0x58, 0xc6, 0x55, 0xf0, 0xfe, 0x98, 0xa3, - 0xa7, 0x47, 0x39, 0x5a, 0x5f, 0x86, 0x1b, 0x29, 0x0b, 0xa5, 0x33, 0xff, 0x5e, 0x82, 0x95, 0x44, - 0xcf, 0xbe, 0x47, 0xb1, 0xef, 0x59, 0x3f, 0xe1, 0x1c, 0x72, 0x21, 0x8d, 0xe9, 0x7f, 0x03, 0xd2, - 0x58, 0x83, 0xd5, 0x82, 0x29, 0x28, 0x80, 0x9a, 0xf9, 0xe3, 0x7c, 0xd2, 0x00, 0x75, 0x56, 0xa8, - 0x54, 0xf8, 0x35, 0x53, 0xe8, 0xf1, 0x83, 0x73, 0x62, 0x0a, 0xf9, 0x45, 0x89, 0x5d, 0x8b, 0x3a, - 0xe7, 0x58, 0xdc, 0xce, 0xf2, 0x71, 0x12, 0x12, 0xd9, 0x5d, 0x25, 0xac, 0x4a, 0x6b, 0x96, 0x56, - 0xfd, 0xa6, 0xc4, 0x72, 0xac, 0x81, 0xeb, 0xd8, 0x93, 0xc5, 0xea, 0xd1, 0x87, 0x30, 0x27, 0x16, - 0x65, 0x04, 0x12, 0x25, 0x39, 0xf4, 0x55, 0xb8, 0x95, 0x6b, 0x83, 0xb4, 0xf1, 0x35, 0x34, 0x0f, - 0x07, 0xd4, 0xe9, 0xf3, 0x3d, 0x37, 0xb9, 0xc5, 0x5a, 0x01, 0x2d, 0x4f, 0xac, 0x50, 0xfa, 0xf4, - 0xb7, 0xb7, 0x79, 0x9d, 0x32, 0xac, 0x6c, 0x89, 0x02, 0x2f, 0xfa, 0x12, 0xea, 0xe9, 0x1a, 0x2b, - 0x5a, 0xcb, 0x6a, 0x4b, 0x94, 0x74, 0xb5, 0x3b, 0xc5, 0x0c, 0x72, 0x86, 0x73, 0xff, 0xfc, 0xfe, - 0xe1, 0x54, 0x65, 0x0a, 0x7d, 0x15, 0xd6, 0x46, 0x63, 0x85, 0x53, 0x14, 0x1f, 0x9e, 0x5b, 0xa9, - 0xd5, 0xee, 0x8e, 0xe0, 0x48, 0x68, 0x28, 0xa1, 0x17, 0x00, 0xaa, 0x12, 0x8a, 0x9a, 0xc9, 0x81, - 0xb1, 0x8a, 0xac, 0xa6, 0xe5, 0x75, 0xa5, 0x84, 0x7d, 0x0e, 0xd7, 0x92, 0x85, 0x4c, 0xb4, 0x1a, - 0x3d, 0xfb, 0xf2, 0x0a, 0xab, 0xda, 0xed, 0xa2, 0xee, 0xac, 0xe0, 0x64, 0x55, 0x51, 0x09, 0xce, - 0x2d, 0x60, 0x2a, 0xc1, 0xf9, 0xc5, 0xc8, 0x48, 0xb0, 0x0d, 0x28, 0x5b, 0x0d, 0x44, 0x91, 0xff, - 0x0a, 0x8b, 0x93, 0x9a, 0x3e, 0x8a, 0x25, 0xa5, 0xe4, 0x00, 0xe6, 0x63, 0x25, 0x31, 0x14, 0x79, - 0x32, 0x5b, 0x68, 0xd4, 0x6e, 0xe5, 0xf6, 0xa5, 0xe4, 0x7d, 0x09, 0xf5, 0x74, 0xf2, 0xa3, 0x82, - 0xae, 0xa0, 0xca, 0xa6, 0x82, 0xae, 0xb0, 0x62, 0x16, 0x8a, 0x7f, 0x05, 0xa0, 0x2a, 0x46, 0x2a, - 0x24, 0x32, 0x25, 0x2b, 0x15, 0x12, 0xd9, 0x02, 0x53, 0x28, 0xec, 0x09, 0xb7, 0x36, 0x5d, 0x01, - 0x52, 0xd6, 0x16, 0x14, 0x9c, 0x94, 0xb5, 0x45, 0xc5, 0xa3, 0xf8, 0x16, 0xc9, 0x94, 0x54, 0xd4, - 0x16, 0x29, 0x2a, 0x24, 0xa9, 0x2d, 0x52, 0x58, 0x8f, 0x89, 0xfc, 0xf1, 0x3f, 0x30, 0xb3, 0x13, - 0xd8, 0x67, 0x68, 0x31, 0x1a, 0xa2, 0xaa, 0x31, 0xda, 0x52, 0x92, 0x98, 0x1a, 0xba, 0x0d, 0x95, - 0xb0, 0x20, 0x81, 0x96, 0x43, 0xce, 0x54, 0x71, 0x45, 0x6b, 0x64, 0x3b, 0x52, 0x62, 0x4e, 0xe0, - 0x6a, 0xa2, 0x9a, 0x80, 0x56, 0x22, 0xad, 0x39, 0x45, 0x0d, 0x6d, 0xb5, 0xa0, 0x37, 0xe5, 0xb9, - 0x17, 0x00, 0x0a, 0xe5, 0x57, 0xeb, 0x9c, 0xa9, 0x44, 0xa8, 0x75, 0xce, 0x29, 0x0a, 0xc4, 0x36, - 0x52, 0x16, 0xa8, 0x57, 0x1b, 0xa9, 0xb0, 0x70, 0xa0, 0x36, 0x52, 0x31, 0xce, 0x1f, 0x59, 0xcc, - 0x95, 0xa4, 0xa1, 0xf5, 0xb8, 0x92, 0x02, 0xa8, 0x3f, 0xae, 0xa4, 0x08, 0x99, 0x8f, 0x94, 0xf8, - 0xd9, 0x4a, 0xb5, 0x84, 0xc4, 0xd1, 0x83, 0xa2, 0x3d, 0x94, 0x44, 0xe8, 0xb5, 0xf7, 0x7f, 0x94, - 0x2f, 0xe5, 0xbd, 0x63, 0xa8, 0xc5, 0x21, 0x71, 0x74, 0x2b, 0x29, 0x20, 0x81, 0x1d, 0x6a, 0x2b, - 0xf9, 0x9d, 0xc9, 0x69, 0x3c, 0x29, 0xa1, 0x5f, 0x81, 0x56, 0x8c, 0x0a, 0xa2, 0x0f, 0x46, 0xd9, - 0x98, 0x54, 0xf8, 0xe1, 0xbb, 0xb0, 0x26, 0x67, 0xf4, 0xb0, 0x84, 0xf6, 0xa0, 0x1a, 0x21, 0xd5, - 0xa8, 0x51, 0x84, 0xb3, 0x6b, 0xcd, 0x9c, 0x9e, 0x94, 0x77, 0x3e, 0x83, 0x5a, 0x1c, 0x79, 0x56, - 0xde, 0xc9, 0x01, 0xbd, 0x95, 0x77, 0x72, 0xc1, 0xea, 0xf8, 0x91, 0xac, 0xb0, 0xcb, 0xd8, 0x91, - 0x9c, 0x01, 0x48, 0x63, 0x47, 0x72, 0x16, 0xec, 0x8c, 0x82, 0xa6, 0xcd, 0x7f, 0x36, 0x48, 0x02, - 0x8e, 0x28, 0x5e, 0xed, 0xcf, 0x45, 0x38, 0xd5, 0x29, 0x54, 0x88, 0x56, 0xc6, 0xd6, 0xf3, 0x2b, - 0x58, 0xc8, 0x20, 0x88, 0x4a, 0x47, 0x11, 0x64, 0xa9, 0x74, 0x14, 0xc2, 0x8f, 0xd1, 0x2c, 0x5a, - 0x50, 0x96, 0xbf, 0x08, 0xa1, 0x9b, 0xd1, 0xa8, 0xc4, 0xff, 0x47, 0xda, 0x72, 0x86, 0x9e, 0xf2, - 0xec, 0x11, 0xcc, 0xc7, 0xe0, 0x45, 0x14, 0xbf, 0x23, 0x52, 0xb0, 0xa1, 0xf2, 0x6c, 0x0e, 0x1e, - 0x19, 0x9b, 0xf7, 0xaf, 0x59, 0xfa, 0x31, 0x02, 0xec, 0x43, 0x1f, 0x8d, 0x8a, 0xcf, 0xb4, 0xd2, - 0x47, 0xef, 0xc6, 0x9c, 0x9a, 0xd5, 0xcf, 0xe1, 0x6a, 0x02, 0xb8, 0x52, 0x27, 0x70, 0x1e, 0xba, - 0xa8, 0x4e, 0xe0, 0x5c, 0xb4, 0x2b, 0x36, 0xb7, 0x33, 0x58, 0xca, 0x03, 0x1a, 0xd0, 0x3d, 0xb5, - 0x2b, 0x0a, 0x21, 0x13, 0xed, 0xfe, 0x68, 0xa6, 0x8c, 0xb2, 0x36, 0x2c, 0x64, 0x50, 0x1b, 0x15, - 0x40, 0x45, 0x70, 0x92, 0x0a, 0xa0, 0x42, 0xc8, 0x27, 0xa6, 0x03, 0x03, 0xca, 0x96, 0x68, 0x50, - 0xec, 0x41, 0x5a, 0x50, 0x29, 0x52, 0x47, 0xf4, 0x88, 0x0a, 0x8f, 0x3a, 0x5c, 0xda, 0xb0, 0x90, - 0xa9, 0xca, 0xa8, 0xa9, 0x14, 0x95, 0x81, 0xd4, 0x54, 0x0a, 0x4b, 0x3a, 0xb1, 0xa9, 0xbc, 0x81, - 0xeb, 0x29, 0x78, 0x01, 0xdd, 0x4e, 0xbc, 0x1a, 0x32, 0x68, 0x88, 0xb6, 0x56, 0xd8, 0x9f, 0x8a, - 0x27, 0x02, 0x37, 0xf3, 0x41, 0x04, 0xf4, 0x5e, 0x2c, 0x74, 0x8a, 0xf1, 0x0b, 0xed, 0xc1, 0x8f, - 0xb1, 0xa5, 0xb6, 0xf6, 0x09, 0x5c, 0x4d, 0xe4, 0xbf, 0x2a, 0x80, 0xf3, 0x50, 0x09, 0x15, 0xc0, - 0xf9, 0x88, 0x40, 0x38, 0x0d, 0x37, 0x05, 0x19, 0x84, 0x59, 0x35, 0xba, 0x9f, 0x3b, 0x3e, 0x85, - 0x1b, 0x68, 0xef, 0xfd, 0x08, 0x57, 0xf6, 0xdd, 0x9b, 0xce, 0xa6, 0xe3, 0xc9, 0x56, 0x6e, 0xf2, - 0x1e, 0x4f, 0xb6, 0x0a, 0x12, 0xf1, 0x84, 0xf8, 0x64, 0x5a, 0x1c, 0x17, 0x9f, 0x9b, 0xaa, 0xc7, - 0xc5, 0x17, 0x64, 0xd4, 0xa1, 0xf8, 0x2e, 0x2c, 0xe6, 0x24, 0xb5, 0x28, 0x16, 0xf7, 0x45, 0x59, - 0xb7, 0x76, 0x6f, 0x24, 0x4f, 0xf6, 0x25, 0x96, 0x4d, 0x63, 0xd5, 0x0e, 0x2c, 0xcc, 0x9c, 0xd5, - 0x0e, 0x2c, 0xce, 0x82, 0x43, 0x25, 0xad, 0x27, 0x6f, 0x18, 0xb3, 0x6b, 0xb5, 0xd7, 0x6d, 0xd2, - 0x7f, 0x2c, 0x3e, 0x3f, 0x26, 0xfe, 0xe9, 0x63, 0x21, 0xe2, 0x31, 0xff, 0xad, 0xf9, 0xf1, 0x29, - 0x91, 0xed, 0x41, 0xbb, 0x3d, 0xc7, 0x49, 0xcf, 0xfe, 0x15, 0x00, 0x00, 0xff, 0xff, 0x33, 0xd8, - 0x52, 0x3b, 0x27, 0x2d, 0x00, 0x00, + 0xb1, 0xd6, 0xf2, 0xb6, 0xbb, 0xc5, 0x95, 0xb4, 0x6c, 0x52, 0xe2, 0x72, 0x44, 0x8a, 0xd2, 0x48, + 0x96, 0x65, 0x5b, 0xa6, 0x64, 0xe9, 0x00, 0xc7, 0xe7, 0x1c, 0x1c, 0x04, 0xdc, 0xe5, 0x55, 0x17, + 0x92, 0x1e, 0x52, 0x31, 0x2c, 0xc0, 0x18, 0xcf, 0xce, 0xf6, 0x72, 0x27, 0x9c, 0x9d, 0x5e, 0xcd, + 0xf4, 0x92, 0xa6, 0x91, 0x3c, 0x24, 0x80, 0x5f, 0x0d, 0x04, 0x08, 0xe2, 0x3c, 0xe6, 0x39, 0xbf, + 0x20, 0x2f, 0x41, 0x90, 0x97, 0xfc, 0x07, 0xff, 0x85, 0xfc, 0x84, 0x3c, 0x05, 0x7d, 0x99, 0xe9, + 0xb9, 0xae, 0x15, 0xec, 0xc2, 0x79, 0x9b, 0xae, 0xae, 0xae, 0xaa, 0xae, 0xee, 0xea, 0xee, 0xfa, + 0x6a, 0xa0, 0xe1, 0xe3, 0x01, 0x09, 0x1c, 0x4a, 0xfc, 0xcb, 0x8f, 0x03, 0xec, 0x9f, 0x3b, 0x36, + 0xde, 0x18, 0xf8, 0x84, 0x12, 0x34, 0x77, 0xea, 0x50, 0xcb, 0xbd, 0xd4, 0xc0, 0x75, 0x3c, 0x2a, + 0x68, 0x5a, 0x2d, 0xe8, 0x59, 0x3e, 0xee, 0x88, 0x96, 0x7e, 0x0c, 0xcb, 0x46, 0x34, 0x7a, 0xfb, + 0x6b, 0x27, 0xa0, 0x81, 0x81, 0xdf, 0x0e, 0x71, 0x40, 0xd1, 0xa7, 0x00, 0x4a, 0x70, 0xa3, 0x74, + 0xa7, 0xf4, 0x70, 0xfe, 0x29, 0xda, 0x10, 0x12, 0x37, 0xd4, 0xa0, 0xe6, 0xcc, 0x1f, 0xfe, 0xfe, + 0xa8, 0x64, 0xc4, 0x78, 0xf5, 0xa7, 0xd0, 0xc8, 0x0a, 0x0d, 0x06, 0xc4, 0x0b, 0x30, 0xba, 0x09, + 0x73, 0x98, 0x53, 0xb8, 0xc4, 0x8a, 0x21, 0x5b, 0xfa, 0x09, 0x1f, 0x63, 0xd9, 0x67, 0xfb, 0x9e, + 0xed, 0xe3, 0x3e, 0xf6, 0xa8, 0xe5, 0x8e, 0x6f, 0xc9, 0x2d, 0x58, 0xc9, 0x91, 0x2a, 0x4c, 0xd1, + 0x7d, 0x58, 0x10, 0x9d, 0x3b, 0x43, 0x77, 0x7c, 0x5d, 0xe8, 0x1e, 0x5c, 0xb5, 0x7d, 0x6c, 0x51, + 0x6c, 0xb6, 0x1d, 0xda, 0xb7, 0x06, 0x8d, 0x29, 0x3e, 0xc1, 0x9a, 0x20, 0x36, 0x39, 0x4d, 0x5f, + 0x02, 0x14, 0xd7, 0x29, 0x2d, 0x39, 0x87, 0x1b, 0xbb, 0x96, 0xdf, 0xb6, 0x4e, 0x71, 0x8b, 0xb8, + 0x2e, 0xb6, 0xe9, 0x4f, 0x64, 0x4d, 0x03, 0x6e, 0xa6, 0xf5, 0x4a, 0x8b, 0x8e, 0x61, 0xf9, 0x73, + 0xdf, 0xa1, 0xb8, 0x45, 0xfa, 0x7d, 0x87, 0xee, 0xfa, 0xd6, 0xa0, 0x37, 0xfe, 0x6a, 0x68, 0xd0, + 0xc8, 0x0a, 0x95, 0x0a, 0x9f, 0xc3, 0xb5, 0x96, 0x8b, 0x2d, 0x6f, 0x38, 0x18, 0x5f, 0xcf, 0x02, + 0x5c, 0x8f, 0x64, 0x49, 0xf1, 0x9f, 0xc1, 0x0d, 0x35, 0xe4, 0xd8, 0xf9, 0x06, 0x8f, 0xaf, 0xe5, + 0x11, 0xdc, 0x4c, 0x8b, 0x94, 0x7b, 0x1c, 0xc1, 0x4c, 0xe0, 0x7c, 0x83, 0xb9, 0xb4, 0x69, 0x83, + 0x7f, 0xeb, 0x6f, 0x61, 0x65, 0x73, 0x30, 0x70, 0x2f, 0x77, 0x1d, 0x6a, 0x51, 0xea, 0x3b, 0xed, + 0x21, 0xc5, 0xe3, 0x87, 0x1a, 0xd2, 0xa0, 0xe2, 0xe3, 0x73, 0x27, 0x70, 0x88, 0xc7, 0x57, 0xb8, + 0x66, 0x44, 0x6d, 0x7d, 0x15, 0xb4, 0x3c, 0x95, 0xd2, 0x23, 0x7f, 0x9d, 0x02, 0xb4, 0x83, 0xa9, + 0xdd, 0x33, 0x70, 0x9f, 0xd0, 0xf1, 0xfd, 0xc1, 0x22, 0xdb, 0xe7, 0xa2, 0xb8, 0x21, 0x55, 0x43, + 0xb6, 0xd0, 0x12, 0xcc, 0x76, 0x89, 0x6f, 0xe3, 0xc6, 0x34, 0xdf, 0x81, 0xa2, 0x81, 0x96, 0xa1, + 0xec, 0x11, 0x93, 0x5a, 0xa7, 0x41, 0x63, 0x46, 0x1c, 0x04, 0x1e, 0x39, 0xb1, 0x4e, 0x03, 0xd4, + 0x80, 0x32, 0x75, 0xfa, 0x98, 0x0c, 0x69, 0x63, 0xf6, 0x4e, 0xe9, 0xe1, 0xac, 0x11, 0x36, 0xd9, + 0x90, 0x20, 0xe8, 0x99, 0x67, 0xf8, 0xb2, 0x31, 0x27, 0x34, 0x04, 0x41, 0xef, 0x05, 0xbe, 0x44, + 0xeb, 0x30, 0x7f, 0xe6, 0x91, 0x0b, 0xcf, 0xec, 0x11, 0x76, 0xb0, 0x94, 0x79, 0x27, 0x70, 0xd2, + 0x1e, 0xa3, 0xa0, 0x15, 0xa8, 0x78, 0xc4, 0x1c, 0xf8, 0x43, 0x0f, 0x37, 0xaa, 0x5c, 0x5b, 0xd9, + 0x23, 0x47, 0xac, 0x89, 0x9e, 0xc1, 0x55, 0x61, 0xa7, 0x39, 0xb0, 0x7c, 0xab, 0x1f, 0x34, 0x80, + 0x4f, 0xf9, 0x9a, 0x9a, 0x32, 0xf7, 0x4e, 0x4d, 0x30, 0x1d, 0x71, 0x9e, 0xe7, 0x33, 0x95, 0x4a, + 0xbd, 0xaa, 0xdf, 0x80, 0xc5, 0x84, 0x03, 0x55, 0xe8, 0xb4, 0x78, 0x90, 0x29, 0x6f, 0x4d, 0x24, + 0x74, 0xb2, 0x42, 0xa5, 0xc2, 0x6f, 0xa7, 0x60, 0x61, 0x17, 0xd3, 0x4d, 0xdf, 0xee, 0x39, 0xe7, + 0x13, 0x58, 0xc8, 0x5b, 0x50, 0xb5, 0x79, 0x84, 0x9a, 0x4e, 0x47, 0xae, 0x65, 0x45, 0x10, 0xf6, + 0x3b, 0x6c, 0x95, 0x07, 0x3e, 0xee, 0x3a, 0x5f, 0xf3, 0xe5, 0xac, 0x1a, 0xb2, 0x85, 0x3e, 0x85, + 0xb9, 0x2e, 0xf1, 0xfb, 0x16, 0xe5, 0xcb, 0x79, 0xed, 0xe9, 0x9d, 0x50, 0x55, 0xc6, 0xb2, 0x8d, + 0x1d, 0xce, 0x67, 0x48, 0x7e, 0x16, 0x2d, 0x03, 0x8b, 0xf6, 0xf8, 0x6a, 0xd7, 0x0c, 0xfe, 0xad, + 0x3f, 0x83, 0x39, 0xc1, 0x85, 0xca, 0x30, 0xfd, 0x66, 0xff, 0xa8, 0x7e, 0x85, 0x7d, 0x9c, 0x6c, + 0x1a, 0xf5, 0x12, 0x02, 0x98, 0x3b, 0xd9, 0x34, 0xcc, 0xdd, 0x37, 0xf5, 0x29, 0x34, 0x0f, 0x65, + 0xf6, 0xdd, 0x7c, 0xf3, 0xb4, 0x3e, 0xad, 0x3f, 0x04, 0x14, 0x57, 0xa6, 0x82, 0xb1, 0x63, 0x51, + 0x8b, 0x7b, 0xa0, 0x66, 0xf0, 0x6f, 0xb6, 0x44, 0x7b, 0x56, 0xf0, 0x92, 0xd8, 0x96, 0xdb, 0xf4, + 0x2d, 0xcf, 0xee, 0x4d, 0x20, 0x14, 0xf5, 0x27, 0xd0, 0xc8, 0x0a, 0x95, 0x46, 0x2c, 0xc1, 0xec, + 0xb9, 0xe5, 0x0e, 0xb1, 0xbc, 0xf4, 0x44, 0x43, 0xff, 0xa1, 0x04, 0x0d, 0xbe, 0x83, 0x8e, 0xc9, + 0xd0, 0xb7, 0xb1, 0x18, 0x35, 0xfe, 0xfa, 0xfd, 0x0c, 0x16, 0x02, 0x2e, 0xd0, 0x8c, 0x09, 0x98, + 0x2a, 0x12, 0x60, 0xd4, 0x05, 0xb3, 0x91, 0xb8, 0x3b, 0xa4, 0x80, 0x36, 0x37, 0x89, 0x2f, 0x75, + 0xcd, 0xa8, 0x05, 0x31, 0x33, 0xd1, 0x1a, 0x00, 0xb5, 0xfc, 0x53, 0x4c, 0x4d, 0x1f, 0x77, 0xf9, + 0xa2, 0xd7, 0x8c, 0xaa, 0xa0, 0x18, 0xb8, 0xab, 0x3f, 0x83, 0x95, 0x9c, 0xa9, 0xa9, 0x47, 0x80, + 0x8f, 0x83, 0xa1, 0x4b, 0xc3, 0x47, 0x80, 0x68, 0xe9, 0xbb, 0x30, 0xbf, 0x13, 0xd8, 0x67, 0xe3, + 0xaf, 0xc5, 0x7d, 0xa8, 0x09, 0x41, 0xca, 0xff, 0xd8, 0xf7, 0x89, 0x2f, 0x77, 0x81, 0x68, 0xe8, + 0x7f, 0x2e, 0xc1, 0x75, 0x7e, 0x21, 0x19, 0xb8, 0x3b, 0xbe, 0xdb, 0xeb, 0x30, 0xcd, 0x3c, 0x21, + 0x4e, 0x61, 0xf6, 0x99, 0x38, 0x9c, 0xa7, 0x93, 0x87, 0x33, 0xba, 0x0b, 0x35, 0xe2, 0x76, 0xcc, + 0xa8, 0x5f, 0x38, 0x70, 0x9e, 0xb8, 0x1d, 0x23, 0x64, 0x89, 0x0e, 0xce, 0xd9, 0xd8, 0xc1, 0xf9, + 0x7c, 0xa6, 0x32, 0x57, 0x2f, 0xeb, 0x0d, 0xa8, 0x2b, 0xcb, 0xc5, 0x24, 0x9f, 0xcf, 0x54, 0x4a, + 0xf5, 0x29, 0xdd, 0x83, 0xa5, 0x1d, 0xc7, 0xeb, 0xbc, 0xc2, 0xfe, 0x29, 0x6e, 0x5a, 0xc1, 0x04, + 0xce, 0x83, 0x55, 0xa8, 0x86, 0x66, 0x06, 0x8d, 0xa9, 0x3b, 0xd3, 0x6c, 0xa1, 0x23, 0x82, 0xfe, + 0x11, 0xdc, 0x48, 0xe9, 0x53, 0x81, 0xd7, 0xb6, 0x02, 0xb1, 0xe5, 0xab, 0x06, 0xff, 0xd6, 0xbf, + 0x2b, 0xc1, 0x82, 0x38, 0xc7, 0x76, 0x88, 0x7f, 0xf6, 0x9f, 0xdf, 0xea, 0xec, 0x3d, 0x16, 0xb7, + 0x27, 0x7a, 0x19, 0xae, 0xec, 0x07, 0x06, 0x66, 0x26, 0xef, 0x7b, 0x47, 0x3e, 0x39, 0xf5, 0x71, + 0x10, 0x4c, 0xe4, 0x60, 0xf5, 0xb9, 0xd0, 0xd8, 0xc1, 0x2a, 0x08, 0xfb, 0x1d, 0xfd, 0xff, 0x41, + 0xcb, 0xd3, 0x29, 0x9d, 0xb9, 0x0e, 0xf3, 0x8e, 0x67, 0x0e, 0x24, 0x59, 0x86, 0x0d, 0x38, 0x11, + 0xa3, 0x30, 0xf9, 0xf8, 0xed, 0xd0, 0x0a, 0x7a, 0x13, 0x36, 0x39, 0xe0, 0x42, 0x63, 0x26, 0x0b, + 0x42, 0x68, 0x72, 0x56, 0xe7, 0xbb, 0x9a, 0xec, 0xc2, 0xed, 0xf4, 0x9d, 0xb6, 0xe3, 0x93, 0xfe, + 0x6b, 0xe3, 0xe5, 0x44, 0x82, 0x71, 0xe8, 0xbb, 0xd2, 0x62, 0xf6, 0xa9, 0xdf, 0x85, 0xf5, 0x42, + 0x6d, 0x72, 0xd9, 0x0f, 0x61, 0x51, 0xb0, 0x34, 0x87, 0x5e, 0xc7, 0x9d, 0xc0, 0x13, 0xf1, 0x43, + 0x58, 0x4a, 0x0a, 0x1c, 0x71, 0x27, 0x7d, 0x37, 0x05, 0xf5, 0x63, 0x4c, 0x5b, 0xc4, 0xeb, 0x3a, + 0xa7, 0xe3, 0x3b, 0xe0, 0x53, 0x28, 0x63, 0x8f, 0xfa, 0x0e, 0x16, 0x21, 0x3b, 0xff, 0xf4, 0x76, + 0x38, 0x2c, 0xad, 0x64, 0x63, 0xdb, 0xa3, 0xfe, 0xa5, 0x11, 0xb2, 0x6b, 0xdf, 0x96, 0x60, 0x96, + 0x93, 0x98, 0x13, 0xd9, 0x63, 0x4b, 0x04, 0x30, 0xfb, 0x44, 0x6b, 0x50, 0xe5, 0x57, 0x97, 0x19, + 0x50, 0x5f, 0x38, 0x77, 0xef, 0x8a, 0x51, 0xe1, 0xa4, 0x63, 0xea, 0xa3, 0xbb, 0x30, 0x2f, 0xba, + 0x1d, 0x8f, 0x3e, 0x7b, 0xca, 0xcf, 0xbc, 0xd9, 0xbd, 0x2b, 0x06, 0x70, 0xe2, 0x3e, 0xa3, 0xa1, + 0x75, 0x10, 0x2d, 0xb3, 0x4d, 0x88, 0x2b, 0x9e, 0x7e, 0x7b, 0x57, 0x0c, 0x21, 0xb5, 0x49, 0x88, + 0xdb, 0x2c, 0xcb, 0xab, 0x52, 0x5f, 0x84, 0x85, 0x98, 0xa9, 0x72, 0x89, 0x6c, 0x58, 0xdc, 0xc2, + 0x2e, 0x66, 0x39, 0xc4, 0x64, 0xfc, 0x84, 0x60, 0xe6, 0x0c, 0x5f, 0x0a, 0x27, 0x55, 0x0d, 0xfe, + 0xad, 0xdf, 0x84, 0xa5, 0xa4, 0x12, 0xa9, 0xdc, 0x61, 0xd9, 0x64, 0x40, 0x89, 0x8f, 0x5b, 0xc3, + 0x80, 0x92, 0xfe, 0x1e, 0x21, 0x67, 0xc1, 0x44, 0x4c, 0xe0, 0xbb, 0x61, 0x2a, 0xb6, 0x1b, 0x56, + 0x41, 0xcb, 0x53, 0x25, 0x0d, 0x39, 0x81, 0x46, 0xd3, 0xb2, 0xcf, 0x86, 0x83, 0x49, 0xda, 0xa1, + 0x3f, 0x86, 0x95, 0x1c, 0xa9, 0x23, 0xb6, 0xec, 0x5b, 0xb8, 0x9b, 0x17, 0x52, 0x13, 0x8a, 0x9e, + 0x5c, 0xbf, 0xdc, 0x07, 0x7d, 0x94, 0x4a, 0xe9, 0x9f, 0x03, 0x40, 0xec, 0x4e, 0x7a, 0xe9, 0xd8, + 0xd8, 0x9b, 0xc0, 0x0d, 0xa8, 0xb7, 0x60, 0x31, 0x21, 0x4f, 0xfa, 0xe4, 0x11, 0x20, 0x57, 0x90, + 0xcc, 0xa0, 0x47, 0x7c, 0x6a, 0x7a, 0x56, 0x3f, 0xbc, 0xef, 0xea, 0xb2, 0xe7, 0x98, 0x75, 0x1c, + 0x58, 0x7d, 0xbe, 0x68, 0xbb, 0x98, 0xee, 0x7b, 0x5d, 0xb2, 0x39, 0xb9, 0x04, 0x50, 0xff, 0x3f, + 0x58, 0xc9, 0x91, 0x2a, 0x0d, 0xbc, 0x0d, 0xa0, 0x32, 0x3f, 0xb9, 0x74, 0x31, 0x0a, 0x33, 0xa9, + 0x65, 0xb9, 0xf6, 0xd0, 0xb5, 0x28, 0x6e, 0xf5, 0xb0, 0x7d, 0x16, 0x0c, 0xfb, 0xe3, 0x9b, 0xf4, + 0xdf, 0xb0, 0x92, 0x23, 0x55, 0x9a, 0xa4, 0x41, 0xc5, 0x96, 0x34, 0xe9, 0xa9, 0xa8, 0xcd, 0x96, + 0x6d, 0x17, 0xd3, 0x63, 0xcf, 0x1a, 0x04, 0x3d, 0x32, 0x3e, 0x06, 0xa2, 0x7f, 0x00, 0x8b, 0x09, + 0x79, 0x23, 0xb6, 0xf2, 0xf7, 0x25, 0xb8, 0x97, 0xb7, 0xb1, 0x26, 0x66, 0x0c, 0xcb, 0x41, 0x7b, + 0x94, 0x0e, 0x4c, 0x75, 0x2d, 0x95, 0x59, 0xfb, 0xb5, 0xef, 0xb2, 0x4b, 0x96, 0x77, 0x59, 0x43, + 0xda, 0x93, 0x69, 0x15, 0xe7, 0xdd, 0x1c, 0xd2, 0x9e, 0xfe, 0x00, 0xee, 0x8f, 0x36, 0x4c, 0xee, + 0xf9, 0xdf, 0x97, 0x60, 0x69, 0x17, 0x53, 0xc3, 0xba, 0x68, 0xf5, 0x2c, 0xef, 0x74, 0x12, 0xe0, + 0xc2, 0x3d, 0xb8, 0xda, 0xf5, 0x49, 0xdf, 0x4c, 0x20, 0x0c, 0x55, 0xa3, 0xc6, 0x88, 0xd1, 0x2b, + 0x75, 0x1d, 0xe6, 0x29, 0x31, 0x13, 0xef, 0xdc, 0xaa, 0x01, 0x94, 0x84, 0x0c, 0xfa, 0x5f, 0x66, + 0xe0, 0x46, 0xca, 0x30, 0xb9, 0x10, 0x7b, 0x30, 0xef, 0x5b, 0x17, 0xa6, 0x2d, 0xc8, 0x8d, 0x12, + 0xbf, 0xa7, 0xde, 0x8f, 0x25, 0x8e, 0xd9, 0x31, 0x1b, 0x11, 0xc9, 0x00, 0x3f, 0xea, 0xd5, 0x7e, + 0x98, 0x86, 0x6a, 0xd4, 0x83, 0x96, 0xa1, 0xdc, 0x76, 0x49, 0x9b, 0x3d, 0x59, 0xc4, 0x16, 0x9b, + 0x63, 0xcd, 0xfd, 0x4e, 0x04, 0xcc, 0x4c, 0x29, 0x60, 0x06, 0xad, 0x41, 0xc5, 0xc3, 0x17, 0x26, + 0x4f, 0x41, 0xb9, 0xf1, 0xcd, 0xa9, 0x46, 0xc9, 0x28, 0x7b, 0xf8, 0xe2, 0xc8, 0xa2, 0x2c, 0xcd, + 0xa9, 0xb0, 0x77, 0x3a, 0xef, 0x9e, 0x51, 0xdd, 0xc4, 0xed, 0xf0, 0xee, 0x43, 0xa8, 0x92, 0x01, + 0xf6, 0x2d, 0xca, 0xe6, 0x3e, 0xcb, 0x33, 0xdf, 0x4f, 0xde, 0x71, 0x02, 0x1b, 0x87, 0xe1, 0x40, + 0x43, 0xc9, 0x60, 0x3e, 0x67, 0x3e, 0x51, 0x42, 0x05, 0xd4, 0x51, 0xf3, 0xad, 0x8b, 0x88, 0x9f, + 0xed, 0x25, 0x66, 0x54, 0x9f, 0x74, 0x30, 0x47, 0x3b, 0x66, 0xb9, 0x41, 0xaf, 0x48, 0x07, 0x73, + 0xa8, 0x03, 0x5f, 0x88, 0xae, 0x8a, 0xe8, 0xf2, 0xf0, 0x05, 0xef, 0xba, 0x0f, 0xd7, 0xc2, 0x99, + 0x9a, 0xed, 0x4b, 0x76, 0x22, 0x54, 0x45, 0x5e, 0x27, 0xe7, 0xda, 0x64, 0x34, 0xc6, 0x15, 0x4e, + 0x58, 0x72, 0x81, 0xe0, 0x92, 0x53, 0xe6, 0x5c, 0xba, 0x03, 0x55, 0x65, 0xce, 0x3c, 0x94, 0x5f, + 0x1f, 0xbc, 0x38, 0x38, 0xfc, 0xfc, 0xa0, 0x7e, 0x05, 0x55, 0x61, 0x76, 0x73, 0x6b, 0x6b, 0x7b, + 0x4b, 0x64, 0xea, 0xad, 0xc3, 0xa3, 0xfd, 0xed, 0x2d, 0x91, 0xa9, 0x6f, 0x6d, 0xbf, 0xdc, 0x3e, + 0xd9, 0xde, 0xaa, 0x4f, 0xa3, 0x1a, 0x54, 0x5e, 0x1d, 0x6e, 0xed, 0xef, 0xb0, 0xae, 0x19, 0xd6, + 0x65, 0x6c, 0x1f, 0x6c, 0xbe, 0xda, 0xde, 0xaa, 0xcf, 0xa2, 0x3a, 0xd4, 0x4e, 0xbe, 0x38, 0xda, + 0x36, 0x5b, 0x7b, 0x9b, 0x07, 0xbb, 0xdb, 0x5b, 0xf5, 0x39, 0xfd, 0x97, 0xd0, 0x38, 0xc6, 0x96, + 0x6f, 0xf7, 0x76, 0x1c, 0x17, 0x07, 0xcd, 0x4b, 0x76, 0x98, 0x8e, 0xbf, 0xb7, 0x97, 0x60, 0xf6, + 0xed, 0x10, 0xcb, 0x6c, 0xa1, 0x6a, 0x88, 0x46, 0x98, 0xc3, 0x4d, 0x47, 0x39, 0x9c, 0xfe, 0x09, + 0xac, 0xe4, 0x68, 0x57, 0x69, 0x65, 0x97, 0x91, 0xf9, 0xd6, 0xad, 0x19, 0xa2, 0xa1, 0xff, 0xa9, + 0x04, 0xb7, 0x12, 0x63, 0x5a, 0xc4, 0xa3, 0xd8, 0xa3, 0x3f, 0x99, 0xd1, 0xe8, 0x03, 0xa8, 0xdb, + 0xbd, 0xa1, 0x77, 0x86, 0x59, 0x82, 0x29, 0x6c, 0x95, 0x28, 0xdb, 0x75, 0x49, 0x8f, 0x8e, 0x8d, + 0x4b, 0x58, 0xcd, 0xb7, 0x55, 0x4e, 0xb1, 0x01, 0xe5, 0xbe, 0x45, 0xed, 0x5e, 0x34, 0xc9, 0xb0, + 0x89, 0xd6, 0x00, 0xf8, 0xa7, 0x19, 0xbb, 0xa4, 0xab, 0x9c, 0xb2, 0x65, 0x51, 0x0b, 0xdd, 0x81, + 0x1a, 0xf6, 0x3a, 0x26, 0xe9, 0x9a, 0x9c, 0x26, 0xd1, 0x3f, 0xc0, 0x5e, 0xe7, 0xb0, 0xfb, 0x8a, + 0x51, 0xf4, 0xdf, 0x96, 0x60, 0x4e, 0x60, 0x67, 0xe1, 0x73, 0xbd, 0x14, 0x3d, 0xd7, 0x59, 0xa8, + 0xf2, 0xdb, 0x54, 0xcc, 0x94, 0x7f, 0xa3, 0xff, 0x85, 0x95, 0xe8, 0x9c, 0x24, 0xbe, 0xf3, 0x0d, + 0xdf, 0x7d, 0x66, 0x0f, 0x5b, 0x1d, 0xec, 0xcb, 0x83, 0x67, 0x39, 0x3c, 0x37, 0xa3, 0xfe, 0x3d, + 0xde, 0x8d, 0xde, 0x83, 0x6b, 0x7d, 0x87, 0x65, 0xfd, 0xa6, 0x8f, 0xbb, 0x7d, 0x6b, 0x10, 0x34, + 0x66, 0xf8, 0x8b, 0xef, 0xaa, 0xa0, 0x1a, 0x82, 0xa8, 0xff, 0xae, 0x04, 0x37, 0x39, 0x6e, 0xb1, + 0x77, 0x72, 0x72, 0x34, 0x29, 0x64, 0xf4, 0x41, 0x02, 0x19, 0xcd, 0x82, 0x8b, 0x21, 0x52, 0x1a, + 0x83, 0x3e, 0xa7, 0x13, 0xd0, 0xa7, 0xbe, 0x02, 0xcb, 0x19, 0xab, 0xe4, 0x02, 0x7e, 0x01, 0x6b, + 0xbb, 0x98, 0x1e, 0xb6, 0x7f, 0x81, 0x6d, 0xba, 0xe5, 0xf8, 0xd8, 0x9e, 0x1c, 0xc2, 0xfd, 0x5f, + 0x70, 0xbb, 0x48, 0xf4, 0x08, 0xa4, 0xfb, 0x8f, 0x25, 0x58, 0x6a, 0xb9, 0xc4, 0xc3, 0xec, 0x9a, + 0x3a, 0x22, 0xc4, 0x9d, 0x84, 0x03, 0x67, 0x06, 0x2c, 0x5d, 0x48, 0x65, 0xf6, 0xc2, 0x32, 0xae, + 0x82, 0xf7, 0xc7, 0x1c, 0x3d, 0x3d, 0xca, 0xd1, 0xfa, 0x32, 0xdc, 0x48, 0x59, 0x28, 0x9d, 0xf9, + 0xb7, 0x12, 0xac, 0x26, 0x7a, 0xf6, 0x3d, 0x8a, 0x7d, 0xcf, 0xfa, 0x09, 0xe7, 0x90, 0x0b, 0x69, + 0x4c, 0xff, 0x1b, 0x90, 0xc6, 0x3a, 0xac, 0x15, 0x4c, 0x41, 0x01, 0xd4, 0xcc, 0x1f, 0xe7, 0x93, + 0x06, 0xa8, 0xb3, 0x42, 0xa5, 0xc2, 0xaf, 0x99, 0x42, 0x8f, 0x1f, 0x9c, 0x13, 0x53, 0xc8, 0x2f, + 0x4a, 0xec, 0x5a, 0xd4, 0x39, 0xc7, 0xe2, 0x76, 0x96, 0x8f, 0x93, 0x90, 0xc8, 0xee, 0x2a, 0x61, + 0x55, 0x5a, 0xb3, 0xb4, 0xea, 0x37, 0x25, 0x96, 0x63, 0x0d, 0x5c, 0xc7, 0x9e, 0x2c, 0x56, 0x8f, + 0x3e, 0x84, 0x39, 0xb1, 0x28, 0x23, 0x90, 0x28, 0xc9, 0xa1, 0xaf, 0xc1, 0xad, 0x5c, 0x1b, 0xa4, + 0x8d, 0xaf, 0x61, 0xe5, 0x70, 0x40, 0x9d, 0x3e, 0x8f, 0xb9, 0xc9, 0x2d, 0xd6, 0x2a, 0x68, 0x79, + 0x62, 0x85, 0xd2, 0xa7, 0xff, 0xb8, 0xcd, 0x0b, 0xa3, 0x61, 0x65, 0x4b, 0x54, 0x94, 0xd1, 0x97, + 0x50, 0x4f, 0x17, 0x75, 0xd1, 0x7a, 0x56, 0x5b, 0xa2, 0x86, 0xac, 0xdd, 0x29, 0x66, 0x90, 0x33, + 0x9c, 0xfb, 0xe7, 0xf7, 0x0f, 0xa7, 0x2a, 0x53, 0xe8, 0xab, 0xb0, 0x18, 0x1b, 0xab, 0xd4, 0xa2, + 0xf8, 0xf0, 0xdc, 0xd2, 0xb0, 0x76, 0x77, 0x04, 0x47, 0x42, 0x43, 0x09, 0xbd, 0x00, 0x50, 0xa5, + 0x57, 0xb4, 0x92, 0x1c, 0x18, 0x2b, 0x01, 0x6b, 0x5a, 0x5e, 0x57, 0x4a, 0xd8, 0xe7, 0x70, 0x2d, + 0x59, 0x39, 0x45, 0x6b, 0xd1, 0xb3, 0x2f, 0xaf, 0x92, 0xab, 0xdd, 0x2e, 0xea, 0x4e, 0x09, 0xfe, + 0x52, 0x02, 0xbb, 0xb1, 0x1a, 0xa9, 0x72, 0x73, 0x41, 0x49, 0x56, 0xb9, 0xb9, 0xb0, 0xbc, 0x1a, + 0xb3, 0x3b, 0x59, 0xb4, 0x54, 0x76, 0xe7, 0xd6, 0x47, 0x95, 0xdd, 0xf9, 0xb5, 0xce, 0x48, 0xb0, + 0x0d, 0x28, 0x5b, 0x6c, 0x44, 0xd1, 0xf2, 0x14, 0xd6, 0x3e, 0x35, 0x7d, 0x14, 0x4b, 0x4a, 0xc9, + 0x01, 0xcc, 0xc7, 0x2a, 0x6e, 0x28, 0x5a, 0xa8, 0x6c, 0x1d, 0x53, 0xbb, 0x95, 0xdb, 0x97, 0x75, + 0x76, 0x3a, 0xb7, 0x52, 0xce, 0x2e, 0x28, 0xe2, 0x29, 0x67, 0x17, 0x16, 0xe4, 0x42, 0xf1, 0xaf, + 0x00, 0x54, 0x41, 0x4a, 0xed, 0xb8, 0x4c, 0x45, 0x4c, 0xed, 0xb8, 0x6c, 0xfd, 0x2a, 0x14, 0xf6, + 0x84, 0x5b, 0x9b, 0x2e, 0x30, 0x29, 0x6b, 0x0b, 0xea, 0x59, 0xca, 0xda, 0xa2, 0xda, 0x54, 0x3c, + 0x02, 0x33, 0x15, 0x1b, 0x15, 0x81, 0x45, 0x75, 0x2a, 0x15, 0x81, 0x85, 0xe5, 0x9e, 0xc8, 0x1f, + 0xff, 0x03, 0x33, 0x3b, 0x81, 0x7d, 0x86, 0x16, 0xa3, 0x21, 0xaa, 0xd8, 0xa3, 0x2d, 0x25, 0x89, + 0xa9, 0xa1, 0xdb, 0x50, 0x09, 0xeb, 0x1d, 0x68, 0x39, 0xb1, 0xdb, 0x55, 0xed, 0x46, 0x6b, 0x64, + 0x3b, 0x52, 0x62, 0x4e, 0xe0, 0x6a, 0xa2, 0x58, 0x81, 0x56, 0x23, 0xad, 0x39, 0x35, 0x13, 0x6d, + 0xad, 0xa0, 0x37, 0xe5, 0xb9, 0x17, 0x00, 0xaa, 0x88, 0xa0, 0xd6, 0x39, 0x53, 0xe8, 0x50, 0xeb, + 0x9c, 0x53, 0x73, 0x88, 0x05, 0x52, 0xb6, 0x0e, 0xa0, 0x02, 0xa9, 0xb0, 0x2e, 0xa1, 0x02, 0xa9, + 0xb8, 0x8c, 0x10, 0x59, 0xcc, 0x95, 0xa4, 0x91, 0xfb, 0xb8, 0x92, 0x82, 0x4a, 0x42, 0x5c, 0x49, + 0x11, 0xf0, 0x1f, 0x29, 0xf1, 0xb3, 0x85, 0x70, 0x89, 0xb8, 0xa3, 0x07, 0x45, 0x31, 0x94, 0x2c, + 0x00, 0x68, 0xef, 0xff, 0x28, 0x5f, 0xca, 0x7b, 0xc7, 0x50, 0x8b, 0x23, 0xee, 0xe8, 0x56, 0x52, + 0x40, 0x02, 0x9a, 0xd4, 0x56, 0xf3, 0x3b, 0x93, 0xd3, 0x78, 0x52, 0x42, 0xbf, 0x02, 0xad, 0x18, + 0x74, 0x44, 0x1f, 0x8c, 0xb2, 0x31, 0xa9, 0xf0, 0xc3, 0x77, 0x61, 0x4d, 0xce, 0xe8, 0x61, 0x09, + 0xed, 0x41, 0x35, 0x02, 0xc2, 0x51, 0xa3, 0x08, 0xc6, 0xd7, 0x56, 0x72, 0x7a, 0x52, 0xde, 0xf9, + 0x0c, 0x6a, 0x71, 0x60, 0x5b, 0x79, 0x27, 0x07, 0x53, 0x57, 0xde, 0xc9, 0xc5, 0xc2, 0xe3, 0x47, + 0xb2, 0x82, 0x46, 0x63, 0x47, 0x72, 0x06, 0x7f, 0x8d, 0x1d, 0xc9, 0x59, 0x2c, 0x35, 0xda, 0x34, + 0x6d, 0xfe, 0x2f, 0x43, 0x12, 0xcf, 0x44, 0xf1, 0x9f, 0x09, 0x72, 0x01, 0x54, 0x75, 0x0a, 0x15, + 0x82, 0xa1, 0xb1, 0xf5, 0xfc, 0x0a, 0x16, 0x32, 0x00, 0xa5, 0xd2, 0x51, 0x84, 0x88, 0x2a, 0x1d, + 0x85, 0xe8, 0x66, 0x34, 0x8b, 0x26, 0x94, 0xe5, 0x1f, 0x48, 0xe8, 0x66, 0x34, 0x2a, 0xf1, 0x7b, + 0x93, 0xb6, 0x9c, 0xa1, 0xa7, 0x3c, 0x7b, 0x04, 0xf3, 0x31, 0xf4, 0x12, 0xc5, 0xef, 0x88, 0x14, + 0x2a, 0xa9, 0x3c, 0x9b, 0x03, 0x77, 0xc6, 0xe6, 0xfd, 0x6b, 0x96, 0xdd, 0x8c, 0xc0, 0x12, 0xd1, + 0x47, 0xa3, 0xf6, 0x67, 0x5a, 0xe9, 0xa3, 0x77, 0x63, 0x4e, 0xcd, 0xea, 0xe7, 0x70, 0x35, 0x81, + 0x8b, 0xa9, 0x13, 0x38, 0x0f, 0xbc, 0x54, 0x27, 0x70, 0x2e, 0x98, 0x16, 0x9b, 0xdb, 0x19, 0x2c, + 0xe5, 0xe1, 0x18, 0xe8, 0x9e, 0x8a, 0x8a, 0x42, 0x44, 0x46, 0xbb, 0x3f, 0x9a, 0x29, 0xa3, 0xac, + 0x0d, 0x0b, 0x19, 0x50, 0x48, 0x6d, 0xa0, 0x22, 0xb4, 0x4a, 0x6d, 0xa0, 0x42, 0x44, 0x29, 0xa6, + 0x03, 0x03, 0xca, 0x56, 0x80, 0x50, 0xec, 0xbd, 0x5b, 0x50, 0x88, 0x52, 0x47, 0xf4, 0x88, 0x02, + 0x92, 0x3a, 0x5c, 0xda, 0xb0, 0x90, 0x29, 0xfa, 0xa8, 0xa9, 0x14, 0x55, 0x99, 0xd4, 0x54, 0x0a, + 0x2b, 0x46, 0xb1, 0xa9, 0xbc, 0x81, 0xeb, 0x29, 0xf4, 0x02, 0xdd, 0x4e, 0xbc, 0x1a, 0x32, 0x60, + 0x8b, 0xb6, 0x5e, 0xd8, 0x9f, 0xda, 0x4f, 0x04, 0x6e, 0xe6, 0x63, 0x14, 0xe8, 0xbd, 0xd8, 0xd6, + 0x29, 0x86, 0x47, 0xb4, 0x07, 0x3f, 0xc6, 0x96, 0x0a, 0xed, 0x13, 0xb8, 0x9a, 0x48, 0xaf, 0xd5, + 0x06, 0xce, 0x03, 0x3d, 0xd4, 0x06, 0xce, 0x07, 0x1c, 0xc2, 0x69, 0xb8, 0x29, 0x44, 0x22, 0x4c, + 0xda, 0xd1, 0xfd, 0xdc, 0xf1, 0x29, 0x58, 0x42, 0x7b, 0xef, 0x47, 0xb8, 0xb2, 0xef, 0xde, 0x74, + 0xb2, 0x1e, 0xcf, 0xe5, 0x72, 0xb1, 0x81, 0x78, 0x2e, 0x57, 0x90, 0xe7, 0x27, 0xc4, 0x27, 0xb3, + 0xee, 0xb8, 0xf8, 0x5c, 0x24, 0x20, 0x2e, 0xbe, 0x20, 0x61, 0x0f, 0xc5, 0x77, 0x61, 0x31, 0x27, + 0x67, 0x46, 0xb1, 0x7d, 0x5f, 0x94, 0xd4, 0x6b, 0xf7, 0x46, 0xf2, 0x64, 0x5f, 0x62, 0xd9, 0x2c, + 0x59, 0x45, 0x60, 0x61, 0x62, 0xae, 0x22, 0xb0, 0x38, 0xc9, 0x0e, 0x95, 0x34, 0x9f, 0xbc, 0x61, + 0xcc, 0xae, 0xd5, 0xde, 0xb0, 0x49, 0xff, 0xb1, 0xf8, 0xfc, 0x98, 0xf8, 0xa7, 0x8f, 0x85, 0x88, + 0xc7, 0xfc, 0x37, 0xed, 0xc7, 0xa7, 0x44, 0xb6, 0x07, 0xed, 0xf6, 0x1c, 0x27, 0x3d, 0xfb, 0x57, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x03, 0xaf, 0xd5, 0x7d, 0xf7, 0x2d, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -4102,6 +4176,7 @@ type RepositoryServiceClient interface { RepackIncremental(ctx context.Context, in *RepackIncrementalRequest, opts ...grpc.CallOption) (*RepackIncrementalResponse, error) RepackFull(ctx context.Context, in *RepackFullRequest, opts ...grpc.CallOption) (*RepackFullResponse, error) GarbageCollect(ctx context.Context, in *GarbageCollectRequest, opts ...grpc.CallOption) (*GarbageCollectResponse, error) + WriteCommitGraph(ctx context.Context, in *WriteCommitGraphRequest, opts ...grpc.CallOption) (*WriteCommitGraphResponse, error) RepositorySize(ctx context.Context, in *RepositorySizeRequest, opts ...grpc.CallOption) (*RepositorySizeResponse, error) ApplyGitattributes(ctx context.Context, in *ApplyGitattributesRequest, opts ...grpc.CallOption) (*ApplyGitattributesResponse, error) FetchRemote(ctx context.Context, in *FetchRemoteRequest, opts ...grpc.CallOption) (*FetchRemoteResponse, error) @@ -4185,6 +4260,15 @@ func (c *repositoryServiceClient) GarbageCollect(ctx context.Context, in *Garbag return out, nil } +func (c *repositoryServiceClient) WriteCommitGraph(ctx context.Context, in *WriteCommitGraphRequest, opts ...grpc.CallOption) (*WriteCommitGraphResponse, error) { + out := new(WriteCommitGraphResponse) + err := c.cc.Invoke(ctx, "/gitaly.RepositoryService/WriteCommitGraph", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *repositoryServiceClient) RepositorySize(ctx context.Context, in *RepositorySizeRequest, opts ...grpc.CallOption) (*RepositorySizeResponse, error) { out := new(RepositorySizeResponse) err := c.cc.Invoke(ctx, "/gitaly.RepositoryService/RepositorySize", in, out, opts...) @@ -4758,6 +4842,7 @@ type RepositoryServiceServer interface { RepackIncremental(context.Context, *RepackIncrementalRequest) (*RepackIncrementalResponse, error) RepackFull(context.Context, *RepackFullRequest) (*RepackFullResponse, error) GarbageCollect(context.Context, *GarbageCollectRequest) (*GarbageCollectResponse, error) + WriteCommitGraph(context.Context, *WriteCommitGraphRequest) (*WriteCommitGraphResponse, error) RepositorySize(context.Context, *RepositorySizeRequest) (*RepositorySizeResponse, error) ApplyGitattributes(context.Context, *ApplyGitattributesRequest) (*ApplyGitattributesResponse, error) FetchRemote(context.Context, *FetchRemoteRequest) (*FetchRemoteResponse, error) @@ -4813,6 +4898,9 @@ func (*UnimplementedRepositoryServiceServer) RepackFull(ctx context.Context, req func (*UnimplementedRepositoryServiceServer) GarbageCollect(ctx context.Context, req *GarbageCollectRequest) (*GarbageCollectResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GarbageCollect not implemented") } +func (*UnimplementedRepositoryServiceServer) WriteCommitGraph(ctx context.Context, req *WriteCommitGraphRequest) (*WriteCommitGraphResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method WriteCommitGraph not implemented") +} func (*UnimplementedRepositoryServiceServer) RepositorySize(ctx context.Context, req *RepositorySizeRequest) (*RepositorySizeResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method RepositorySize not implemented") } @@ -5001,6 +5089,24 @@ func _RepositoryService_GarbageCollect_Handler(srv interface{}, ctx context.Cont return interceptor(ctx, in, info, handler) } +func _RepositoryService_WriteCommitGraph_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(WriteCommitGraphRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(RepositoryServiceServer).WriteCommitGraph(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/gitaly.RepositoryService/WriteCommitGraph", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(RepositoryServiceServer).WriteCommitGraph(ctx, req.(*WriteCommitGraphRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _RepositoryService_RepositorySize_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(RepositorySizeRequest) if err := dec(in); err != nil { @@ -5728,6 +5834,10 @@ var _RepositoryService_serviceDesc = grpc.ServiceDesc{ Handler: _RepositoryService_GarbageCollect_Handler, }, { + MethodName: "WriteCommitGraph", + Handler: _RepositoryService_WriteCommitGraph_Handler, + }, + { MethodName: "RepositorySize", Handler: _RepositoryService_RepositorySize_Handler, }, diff --git a/proto/repository-service.proto b/proto/repository-service.proto index a243df77c..7c575137d 100644 --- a/proto/repository-service.proto +++ b/proto/repository-service.proto @@ -28,6 +28,11 @@ service RepositoryService { op: MUTATOR }; } + rpc WriteCommitGraph(WriteCommitGraphRequest) returns (WriteCommitGraphResponse) { + option (op_type) = { + op: MUTATOR + }; + } rpc RepositorySize(RepositorySizeRequest) returns (RepositorySizeResponse) { option (op_type) = { op: MUTATOR @@ -244,6 +249,12 @@ message GarbageCollectRequest { message GarbageCollectResponse {} +message WriteCommitGraphRequest { + Repository repository = 1 [(target_repository)=true]; +} + +message WriteCommitGraphResponse {} + message CleanupRequest { Repository repository = 1 [(target_repository)=true]; } diff --git a/ruby/proto/gitaly/repository-service_pb.rb b/ruby/proto/gitaly/repository-service_pb.rb index 3a4090fb5..623c75fe1 100644 --- a/ruby/proto/gitaly/repository-service_pb.rb +++ b/ruby/proto/gitaly/repository-service_pb.rb @@ -29,6 +29,11 @@ Google::Protobuf::DescriptorPool.generated_pool.build do end add_message "gitaly.GarbageCollectResponse" do end + add_message "gitaly.WriteCommitGraphRequest" do + optional :repository, :message, 1, "gitaly.Repository" + end + add_message "gitaly.WriteCommitGraphResponse" do + end add_message "gitaly.CleanupRequest" do optional :repository, :message, 1, "gitaly.Repository" end @@ -332,6 +337,8 @@ module Gitaly RepackFullResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.RepackFullResponse").msgclass GarbageCollectRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.GarbageCollectRequest").msgclass GarbageCollectResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.GarbageCollectResponse").msgclass + WriteCommitGraphRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.WriteCommitGraphRequest").msgclass + WriteCommitGraphResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.WriteCommitGraphResponse").msgclass CleanupRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.CleanupRequest").msgclass CleanupResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.CleanupResponse").msgclass RepositorySizeRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.RepositorySizeRequest").msgclass diff --git a/ruby/proto/gitaly/repository-service_services_pb.rb b/ruby/proto/gitaly/repository-service_services_pb.rb index d0bf97069..a06949ac9 100644 --- a/ruby/proto/gitaly/repository-service_services_pb.rb +++ b/ruby/proto/gitaly/repository-service_services_pb.rb @@ -18,6 +18,7 @@ module Gitaly rpc :RepackIncremental, RepackIncrementalRequest, RepackIncrementalResponse rpc :RepackFull, RepackFullRequest, RepackFullResponse rpc :GarbageCollect, GarbageCollectRequest, GarbageCollectResponse + rpc :WriteCommitGraph, WriteCommitGraphRequest, WriteCommitGraphResponse rpc :RepositorySize, RepositorySizeRequest, RepositorySizeResponse rpc :ApplyGitattributes, ApplyGitattributesRequest, ApplyGitattributesResponse rpc :FetchRemote, FetchRemoteRequest, FetchRemoteResponse |