Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlejandro Rodríguez <alejorro70@gmail.com>2018-07-04 15:01:36 +0300
committerAlejandro Rodríguez <alejorro70@gmail.com>2018-07-04 15:01:36 +0300
commit6ac07e591946e38b662179f5c998c62dff81fbe7 (patch)
tree38e902f1912a8330484f8c58ec018e9ac4da1102
parent76df34cad9770e89e0e9491671b96c55d3cff755 (diff)
parent7898465a5d0e85606d6420724d7d326421e6cff2 (diff)
Merge branch 'config-rpcs' into 'master'
Implement DeleteConfig and SetConfig See merge request gitlab-org/gitaly!786
-rw-r--r--changelogs/unreleased/config-rpcs.yml5
-rw-r--r--internal/service/repository/config.go50
-rw-r--r--internal/service/repository/config_test.go123
-rw-r--r--ruby/Gemfile2
-rw-r--r--ruby/Gemfile.lock4
-rw-r--r--ruby/lib/gitaly_server/repository_service.rb24
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/VERSION2
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/blob.pb.go4
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/repository-service.pb.go616
-rw-r--r--vendor/vendor.json10
10 files changed, 670 insertions, 170 deletions
diff --git a/changelogs/unreleased/config-rpcs.yml b/changelogs/unreleased/config-rpcs.yml
new file mode 100644
index 000000000..5ba5986b7
--- /dev/null
+++ b/changelogs/unreleased/config-rpcs.yml
@@ -0,0 +1,5 @@
+---
+title: Implement DeleteConfig and SetConfig
+merge_request: 786
+author:
+type: added
diff --git a/internal/service/repository/config.go b/internal/service/repository/config.go
new file mode 100644
index 000000000..23dad7422
--- /dev/null
+++ b/internal/service/repository/config.go
@@ -0,0 +1,50 @@
+package repository
+
+import (
+ "gitlab.com/gitlab-org/gitaly/internal/command"
+ "gitlab.com/gitlab-org/gitaly/internal/git"
+ "gitlab.com/gitlab-org/gitaly/internal/rubyserver"
+
+ pb "gitlab.com/gitlab-org/gitaly-proto/go"
+ "golang.org/x/net/context"
+ "google.golang.org/grpc/codes"
+ "google.golang.org/grpc/status"
+)
+
+func (*server) DeleteConfig(ctx context.Context, req *pb.DeleteConfigRequest) (*pb.DeleteConfigResponse, error) {
+ for _, k := range req.Keys {
+ // We assume k does not contain any secrets; it is leaked via 'ps'.
+ cmd, err := git.Command(ctx, req.Repository, "config", "--unset-all", k)
+ if err != nil {
+ return nil, err
+ }
+
+ if err := cmd.Wait(); err != nil {
+ if code, ok := command.ExitStatus(err); ok && code == 5 {
+ // Status code 5 means 'key not in config', see 'git help config'
+ continue
+ }
+
+ return nil, status.Errorf(codes.Internal, "command failed: %v", err)
+ }
+ }
+
+ return &pb.DeleteConfigResponse{}, nil
+}
+
+func (s *server) SetConfig(ctx context.Context, req *pb.SetConfigRequest) (*pb.SetConfigResponse, error) {
+ // We use gitaly-ruby here because in gitaly-ruby we can use Rugged, and
+ // Rugged lets us set config values without leaking secrets via 'ps'. We
+ // can't use `git config foo.bar secret` because that leaks secrets.
+ client, err := s.RepositoryServiceClient(ctx)
+ if err != nil {
+ return nil, err
+ }
+
+ clientCtx, err := rubyserver.SetHeaders(ctx, req.GetRepository())
+ if err != nil {
+ return nil, err
+ }
+
+ return client.SetConfig(clientCtx, req)
+}
diff --git a/internal/service/repository/config_test.go b/internal/service/repository/config_test.go
new file mode 100644
index 000000000..1c824f0d7
--- /dev/null
+++ b/internal/service/repository/config_test.go
@@ -0,0 +1,123 @@
+package repository
+
+import (
+ "bufio"
+ "bytes"
+ "strings"
+ "testing"
+
+ "github.com/stretchr/testify/require"
+ pb "gitlab.com/gitlab-org/gitaly-proto/go"
+ "gitlab.com/gitlab-org/gitaly/internal/testhelper"
+)
+
+func TestDeleteConfig(t *testing.T) {
+ server, serverSocketPath := runRepoServer(t)
+ defer server.Stop()
+
+ client, conn := newRepositoryClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testcases := []struct {
+ desc string
+ addKeys []string
+ reqKeys []string
+ }{
+ {
+ desc: "empty request",
+ },
+ {
+ desc: "keys that don't exist",
+ reqKeys: []string{"test.foo", "test.bar"},
+ },
+ {
+ desc: "mix of keys that do and do not exist",
+ addKeys: []string{"test.bar"},
+ reqKeys: []string{"test.foo", "test.bar", "test.baz"},
+ },
+ }
+
+ for _, tc := range testcases {
+ t.Run(tc.desc, func(t *testing.T) {
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ for _, k := range tc.addKeys {
+ testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "config", k, "blabla")
+ }
+
+ _, err := client.DeleteConfig(ctx, &pb.DeleteConfigRequest{Repository: testRepo, Keys: tc.reqKeys})
+ require.NoError(t, err)
+
+ actualConfig := testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "config", "-l")
+ scanner := bufio.NewScanner(bytes.NewReader(actualConfig))
+ for scanner.Scan() {
+ for _, k := range tc.reqKeys {
+ require.False(t, strings.HasPrefix(scanner.Text(), k+"="), "key %q must not occur in config", k)
+ }
+ }
+
+ require.NoError(t, scanner.Err())
+ })
+ }
+}
+
+func TestSetConfig(t *testing.T) {
+ server, serverSocketPath := runRepoServer(t)
+ defer server.Stop()
+
+ client, conn := newRepositoryClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testcases := []struct {
+ desc string
+ entries []*pb.SetConfigRequest_Entry
+ expected []string
+ }{
+ {
+ desc: "empty request",
+ },
+ {
+ desc: "mix of different types",
+ entries: []*pb.SetConfigRequest_Entry{
+ &pb.SetConfigRequest_Entry{Key: "test.foo1", Value: &pb.SetConfigRequest_Entry_ValueStr{"hello world"}},
+ &pb.SetConfigRequest_Entry{Key: "test.foo2", Value: &pb.SetConfigRequest_Entry_ValueInt32{1234}},
+ &pb.SetConfigRequest_Entry{Key: "test.foo3", Value: &pb.SetConfigRequest_Entry_ValueBool{true}},
+ },
+ expected: []string{
+ "test.foo1=hello world",
+ "test.foo2=1234",
+ "test.foo3=true",
+ },
+ },
+ }
+
+ for _, tc := range testcases {
+ t.Run(tc.desc, func(t *testing.T) {
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ _, err := client.SetConfig(ctx, &pb.SetConfigRequest{Repository: testRepo, Entries: tc.entries})
+ require.NoError(t, err)
+
+ actualConfigBytes := testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "config", "--local", "-l")
+ scanner := bufio.NewScanner(bytes.NewReader(actualConfigBytes))
+
+ var actualConfig []string
+ for scanner.Scan() {
+ actualConfig = append(actualConfig, scanner.Text())
+ }
+ require.NoError(t, scanner.Err())
+
+ for _, entry := range tc.expected {
+ require.Contains(t, actualConfig, entry)
+ }
+ })
+ }
+}
diff --git a/ruby/Gemfile b/ruby/Gemfile
index 7ad977550..561a920f8 100644
--- a/ruby/Gemfile
+++ b/ruby/Gemfile
@@ -3,7 +3,7 @@ source 'https://rubygems.org'
gem 'rugged', '~> 0.27.2'
gem 'github-linguist', '~> 5.3.3', require: 'linguist'
gem 'gitlab-markup', '~> 1.6.2'
-gem 'gitaly-proto', '~> 0.104.0', require: 'gitaly'
+gem 'gitaly-proto', '~> 0.105.0', require: 'gitaly'
gem 'activesupport', '~> 5.0.2'
gem 'rdoc', '~> 4.2'
gem 'gitlab-gollum-lib', '~> 4.2', require: false
diff --git a/ruby/Gemfile.lock b/ruby/Gemfile.lock
index 2f1b0d6f7..5070bece6 100644
--- a/ruby/Gemfile.lock
+++ b/ruby/Gemfile.lock
@@ -17,7 +17,7 @@ GEM
multipart-post (>= 1.2, < 3)
gemojione (3.3.0)
json
- gitaly-proto (0.104.0)
+ gitaly-proto (0.105.0)
google-protobuf (~> 3.1)
grpc (~> 1.10)
github-linguist (5.3.3)
@@ -142,7 +142,7 @@ PLATFORMS
DEPENDENCIES
activesupport (~> 5.0.2)
faraday (~> 0.12)
- gitaly-proto (~> 0.104.0)
+ gitaly-proto (~> 0.105.0)
github-linguist (~> 5.3.3)
gitlab-gollum-lib (~> 4.2)
gitlab-gollum-rugged_adapter (~> 0.4.4)
diff --git a/ruby/lib/gitaly_server/repository_service.rb b/ruby/lib/gitaly_server/repository_service.rb
index ec913c363..6a5a62882 100644
--- a/ruby/lib/gitaly_server/repository_service.rb
+++ b/ruby/lib/gitaly_server/repository_service.rb
@@ -106,6 +106,30 @@ module GitalyServer
end
end
+ def set_config(request, call)
+ bridge_exceptions do
+ repo = Gitlab::Git::Repository.from_gitaly(request.repository, call)
+
+ request.entries.each do |entry|
+ key = entry.key
+ value = case entry.value
+ when :value_str
+ entry.value_str
+ when :value_int32
+ entry.value_int32
+ when :value_bool
+ entry.value_bool
+ else
+ raise GRPC::InvalidArgument, "unknown entry type: #{entry.value}"
+ end
+
+ repo.rugged.config[key] = value
+ end
+
+ Gitaly::SetConfigResponse.new
+ end
+ end
+
def find_license(request, call)
bridge_exceptions do
repo = Gitlab::Git::Repository.from_gitaly(request.repository, call)
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/VERSION b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/VERSION
index e49057b33..f1b9cc4cd 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/VERSION
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/VERSION
@@ -1 +1 @@
-0.104.0
+0.105.0
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/blob.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/blob.pb.go
index 4a5e801a7..7a2527124 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/blob.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/blob.pb.go
@@ -216,6 +216,10 @@ It has these top-level messages:
CreateBundleResponse
WriteConfigRequest
WriteConfigResponse
+ SetConfigRequest
+ SetConfigResponse
+ DeleteConfigRequest
+ DeleteConfigResponse
RestoreCustomHooksRequest
RestoreCustomHooksResponse
BackupCustomHooksRequest
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/repository-service.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/repository-service.pb.go
index 5231a9901..4ef426a7b 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/repository-service.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/repository-service.pb.go
@@ -81,7 +81,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 fileDescriptor10, []int{59, 0, 0}
+ return fileDescriptor10, []int{63, 0, 0}
}
type RepositoryExistsRequest struct {
@@ -908,6 +908,218 @@ func (m *WriteConfigResponse) GetError() []byte {
return nil
}
+type SetConfigRequest struct {
+ Repository *Repository `protobuf:"bytes,1,opt,name=repository" json:"repository,omitempty"`
+ Entries []*SetConfigRequest_Entry `protobuf:"bytes,2,rep,name=entries" json:"entries,omitempty"`
+}
+
+func (m *SetConfigRequest) Reset() { *m = SetConfigRequest{} }
+func (m *SetConfigRequest) String() string { return proto.CompactTextString(m) }
+func (*SetConfigRequest) ProtoMessage() {}
+func (*SetConfigRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{42} }
+
+func (m *SetConfigRequest) GetRepository() *Repository {
+ if m != nil {
+ return m.Repository
+ }
+ return nil
+}
+
+func (m *SetConfigRequest) GetEntries() []*SetConfigRequest_Entry {
+ if m != nil {
+ return m.Entries
+ }
+ return nil
+}
+
+type SetConfigRequest_Entry struct {
+ Key string `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
+ // Types that are valid to be assigned to Value:
+ // *SetConfigRequest_Entry_ValueStr
+ // *SetConfigRequest_Entry_ValueInt32
+ // *SetConfigRequest_Entry_ValueBool
+ Value isSetConfigRequest_Entry_Value `protobuf_oneof:"value"`
+}
+
+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 fileDescriptor10, []int{42, 0} }
+
+type isSetConfigRequest_Entry_Value interface{ isSetConfigRequest_Entry_Value() }
+
+type SetConfigRequest_Entry_ValueStr struct {
+ ValueStr string `protobuf:"bytes,2,opt,name=value_str,json=valueStr,oneof"`
+}
+type SetConfigRequest_Entry_ValueInt32 struct {
+ ValueInt32 int32 `protobuf:"varint,3,opt,name=value_int32,json=valueInt32,oneof"`
+}
+type SetConfigRequest_Entry_ValueBool struct {
+ ValueBool bool `protobuf:"varint,4,opt,name=value_bool,json=valueBool,oneof"`
+}
+
+func (*SetConfigRequest_Entry_ValueStr) isSetConfigRequest_Entry_Value() {}
+func (*SetConfigRequest_Entry_ValueInt32) isSetConfigRequest_Entry_Value() {}
+func (*SetConfigRequest_Entry_ValueBool) isSetConfigRequest_Entry_Value() {}
+
+func (m *SetConfigRequest_Entry) GetValue() isSetConfigRequest_Entry_Value {
+ if m != nil {
+ return m.Value
+ }
+ return nil
+}
+
+func (m *SetConfigRequest_Entry) GetKey() string {
+ if m != nil {
+ return m.Key
+ }
+ return ""
+}
+
+func (m *SetConfigRequest_Entry) GetValueStr() string {
+ if x, ok := m.GetValue().(*SetConfigRequest_Entry_ValueStr); ok {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (m *SetConfigRequest_Entry) GetValueInt32() int32 {
+ if x, ok := m.GetValue().(*SetConfigRequest_Entry_ValueInt32); ok {
+ return x.ValueInt32
+ }
+ return 0
+}
+
+func (m *SetConfigRequest_Entry) GetValueBool() bool {
+ if x, ok := m.GetValue().(*SetConfigRequest_Entry_ValueBool); ok {
+ return x.ValueBool
+ }
+ return false
+}
+
+// XXX_OneofFuncs is for the internal use of the proto package.
+func (*SetConfigRequest_Entry) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
+ return _SetConfigRequest_Entry_OneofMarshaler, _SetConfigRequest_Entry_OneofUnmarshaler, _SetConfigRequest_Entry_OneofSizer, []interface{}{
+ (*SetConfigRequest_Entry_ValueStr)(nil),
+ (*SetConfigRequest_Entry_ValueInt32)(nil),
+ (*SetConfigRequest_Entry_ValueBool)(nil),
+ }
+}
+
+func _SetConfigRequest_Entry_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
+ m := msg.(*SetConfigRequest_Entry)
+ // value
+ switch x := m.Value.(type) {
+ case *SetConfigRequest_Entry_ValueStr:
+ b.EncodeVarint(2<<3 | proto.WireBytes)
+ b.EncodeStringBytes(x.ValueStr)
+ case *SetConfigRequest_Entry_ValueInt32:
+ b.EncodeVarint(3<<3 | proto.WireVarint)
+ b.EncodeVarint(uint64(x.ValueInt32))
+ case *SetConfigRequest_Entry_ValueBool:
+ t := uint64(0)
+ if x.ValueBool {
+ t = 1
+ }
+ b.EncodeVarint(4<<3 | proto.WireVarint)
+ b.EncodeVarint(t)
+ case nil:
+ default:
+ return fmt.Errorf("SetConfigRequest_Entry.Value has unexpected type %T", x)
+ }
+ return nil
+}
+
+func _SetConfigRequest_Entry_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
+ m := msg.(*SetConfigRequest_Entry)
+ switch tag {
+ case 2: // value.value_str
+ if wire != proto.WireBytes {
+ return true, proto.ErrInternalBadWireType
+ }
+ x, err := b.DecodeStringBytes()
+ m.Value = &SetConfigRequest_Entry_ValueStr{x}
+ return true, err
+ case 3: // value.value_int32
+ if wire != proto.WireVarint {
+ return true, proto.ErrInternalBadWireType
+ }
+ x, err := b.DecodeVarint()
+ m.Value = &SetConfigRequest_Entry_ValueInt32{int32(x)}
+ return true, err
+ case 4: // value.value_bool
+ if wire != proto.WireVarint {
+ return true, proto.ErrInternalBadWireType
+ }
+ x, err := b.DecodeVarint()
+ m.Value = &SetConfigRequest_Entry_ValueBool{x != 0}
+ return true, err
+ default:
+ return false, nil
+ }
+}
+
+func _SetConfigRequest_Entry_OneofSizer(msg proto.Message) (n int) {
+ m := msg.(*SetConfigRequest_Entry)
+ // value
+ switch x := m.Value.(type) {
+ case *SetConfigRequest_Entry_ValueStr:
+ n += proto.SizeVarint(2<<3 | proto.WireBytes)
+ n += proto.SizeVarint(uint64(len(x.ValueStr)))
+ n += len(x.ValueStr)
+ case *SetConfigRequest_Entry_ValueInt32:
+ n += proto.SizeVarint(3<<3 | proto.WireVarint)
+ n += proto.SizeVarint(uint64(x.ValueInt32))
+ case *SetConfigRequest_Entry_ValueBool:
+ n += proto.SizeVarint(4<<3 | proto.WireVarint)
+ n += 1
+ case nil:
+ default:
+ panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
+ }
+ return n
+}
+
+type SetConfigResponse struct {
+}
+
+func (m *SetConfigResponse) Reset() { *m = SetConfigResponse{} }
+func (m *SetConfigResponse) String() string { return proto.CompactTextString(m) }
+func (*SetConfigResponse) ProtoMessage() {}
+func (*SetConfigResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{43} }
+
+type DeleteConfigRequest struct {
+ Repository *Repository `protobuf:"bytes,1,opt,name=repository" json:"repository,omitempty"`
+ Keys []string `protobuf:"bytes,2,rep,name=keys" json:"keys,omitempty"`
+}
+
+func (m *DeleteConfigRequest) Reset() { *m = DeleteConfigRequest{} }
+func (m *DeleteConfigRequest) String() string { return proto.CompactTextString(m) }
+func (*DeleteConfigRequest) ProtoMessage() {}
+func (*DeleteConfigRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{44} }
+
+func (m *DeleteConfigRequest) GetRepository() *Repository {
+ if m != nil {
+ return m.Repository
+ }
+ return nil
+}
+
+func (m *DeleteConfigRequest) GetKeys() []string {
+ if m != nil {
+ return m.Keys
+ }
+ return nil
+}
+
+type DeleteConfigResponse struct {
+}
+
+func (m *DeleteConfigResponse) Reset() { *m = DeleteConfigResponse{} }
+func (m *DeleteConfigResponse) String() string { return proto.CompactTextString(m) }
+func (*DeleteConfigResponse) ProtoMessage() {}
+func (*DeleteConfigResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{45} }
+
type RestoreCustomHooksRequest struct {
Repository *Repository `protobuf:"bytes,1,opt,name=repository" json:"repository,omitempty"`
Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
@@ -916,7 +1128,7 @@ type RestoreCustomHooksRequest struct {
func (m *RestoreCustomHooksRequest) Reset() { *m = RestoreCustomHooksRequest{} }
func (m *RestoreCustomHooksRequest) String() string { return proto.CompactTextString(m) }
func (*RestoreCustomHooksRequest) ProtoMessage() {}
-func (*RestoreCustomHooksRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{42} }
+func (*RestoreCustomHooksRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{46} }
func (m *RestoreCustomHooksRequest) GetRepository() *Repository {
if m != nil {
@@ -938,7 +1150,7 @@ type RestoreCustomHooksResponse struct {
func (m *RestoreCustomHooksResponse) Reset() { *m = RestoreCustomHooksResponse{} }
func (m *RestoreCustomHooksResponse) String() string { return proto.CompactTextString(m) }
func (*RestoreCustomHooksResponse) ProtoMessage() {}
-func (*RestoreCustomHooksResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{43} }
+func (*RestoreCustomHooksResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{47} }
type BackupCustomHooksRequest struct {
Repository *Repository `protobuf:"bytes,1,opt,name=repository" json:"repository,omitempty"`
@@ -947,7 +1159,7 @@ type BackupCustomHooksRequest struct {
func (m *BackupCustomHooksRequest) Reset() { *m = BackupCustomHooksRequest{} }
func (m *BackupCustomHooksRequest) String() string { return proto.CompactTextString(m) }
func (*BackupCustomHooksRequest) ProtoMessage() {}
-func (*BackupCustomHooksRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{44} }
+func (*BackupCustomHooksRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{48} }
func (m *BackupCustomHooksRequest) GetRepository() *Repository {
if m != nil {
@@ -963,7 +1175,7 @@ type BackupCustomHooksResponse struct {
func (m *BackupCustomHooksResponse) Reset() { *m = BackupCustomHooksResponse{} }
func (m *BackupCustomHooksResponse) String() string { return proto.CompactTextString(m) }
func (*BackupCustomHooksResponse) ProtoMessage() {}
-func (*BackupCustomHooksResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{45} }
+func (*BackupCustomHooksResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{49} }
func (m *BackupCustomHooksResponse) GetData() []byte {
if m != nil {
@@ -982,7 +1194,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 fileDescriptor10, []int{46}
+ return fileDescriptor10, []int{50}
}
func (m *CreateRepositoryFromBundleRequest) GetRepository() *Repository {
@@ -1006,7 +1218,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 fileDescriptor10, []int{47}
+ return fileDescriptor10, []int{51}
}
type FindLicenseRequest struct {
@@ -1016,7 +1228,7 @@ type FindLicenseRequest struct {
func (m *FindLicenseRequest) Reset() { *m = FindLicenseRequest{} }
func (m *FindLicenseRequest) String() string { return proto.CompactTextString(m) }
func (*FindLicenseRequest) ProtoMessage() {}
-func (*FindLicenseRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{48} }
+func (*FindLicenseRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{52} }
func (m *FindLicenseRequest) GetRepository() *Repository {
if m != nil {
@@ -1032,7 +1244,7 @@ type FindLicenseResponse struct {
func (m *FindLicenseResponse) Reset() { *m = FindLicenseResponse{} }
func (m *FindLicenseResponse) String() string { return proto.CompactTextString(m) }
func (*FindLicenseResponse) ProtoMessage() {}
-func (*FindLicenseResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{49} }
+func (*FindLicenseResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{53} }
func (m *FindLicenseResponse) GetLicenseShortName() string {
if m != nil {
@@ -1048,7 +1260,7 @@ type GetInfoAttributesRequest struct {
func (m *GetInfoAttributesRequest) Reset() { *m = GetInfoAttributesRequest{} }
func (m *GetInfoAttributesRequest) String() string { return proto.CompactTextString(m) }
func (*GetInfoAttributesRequest) ProtoMessage() {}
-func (*GetInfoAttributesRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{50} }
+func (*GetInfoAttributesRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{54} }
func (m *GetInfoAttributesRequest) GetRepository() *Repository {
if m != nil {
@@ -1064,7 +1276,7 @@ type GetInfoAttributesResponse struct {
func (m *GetInfoAttributesResponse) Reset() { *m = GetInfoAttributesResponse{} }
func (m *GetInfoAttributesResponse) String() string { return proto.CompactTextString(m) }
func (*GetInfoAttributesResponse) ProtoMessage() {}
-func (*GetInfoAttributesResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{51} }
+func (*GetInfoAttributesResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{55} }
func (m *GetInfoAttributesResponse) GetAttributes() []byte {
if m != nil {
@@ -1080,7 +1292,7 @@ type CalculateChecksumRequest struct {
func (m *CalculateChecksumRequest) Reset() { *m = CalculateChecksumRequest{} }
func (m *CalculateChecksumRequest) String() string { return proto.CompactTextString(m) }
func (*CalculateChecksumRequest) ProtoMessage() {}
-func (*CalculateChecksumRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{52} }
+func (*CalculateChecksumRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{56} }
func (m *CalculateChecksumRequest) GetRepository() *Repository {
if m != nil {
@@ -1096,7 +1308,7 @@ type CalculateChecksumResponse struct {
func (m *CalculateChecksumResponse) Reset() { *m = CalculateChecksumResponse{} }
func (m *CalculateChecksumResponse) String() string { return proto.CompactTextString(m) }
func (*CalculateChecksumResponse) ProtoMessage() {}
-func (*CalculateChecksumResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{53} }
+func (*CalculateChecksumResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{57} }
func (m *CalculateChecksumResponse) GetChecksum() string {
if m != nil {
@@ -1112,7 +1324,7 @@ type GetSnapshotRequest struct {
func (m *GetSnapshotRequest) Reset() { *m = GetSnapshotRequest{} }
func (m *GetSnapshotRequest) String() string { return proto.CompactTextString(m) }
func (*GetSnapshotRequest) ProtoMessage() {}
-func (*GetSnapshotRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{54} }
+func (*GetSnapshotRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{58} }
func (m *GetSnapshotRequest) GetRepository() *Repository {
if m != nil {
@@ -1128,7 +1340,7 @@ type GetSnapshotResponse struct {
func (m *GetSnapshotResponse) Reset() { *m = GetSnapshotResponse{} }
func (m *GetSnapshotResponse) String() string { return proto.CompactTextString(m) }
func (*GetSnapshotResponse) ProtoMessage() {}
-func (*GetSnapshotResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{55} }
+func (*GetSnapshotResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{59} }
func (m *GetSnapshotResponse) GetData() []byte {
if m != nil {
@@ -1147,7 +1359,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 fileDescriptor10, []int{56}
+ return fileDescriptor10, []int{60}
}
func (m *CreateRepositoryFromSnapshotRequest) GetRepository() *Repository {
@@ -1178,7 +1390,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 fileDescriptor10, []int{57}
+ return fileDescriptor10, []int{61}
}
type GetRawChangesRequest struct {
@@ -1190,7 +1402,7 @@ type GetRawChangesRequest struct {
func (m *GetRawChangesRequest) Reset() { *m = GetRawChangesRequest{} }
func (m *GetRawChangesRequest) String() string { return proto.CompactTextString(m) }
func (*GetRawChangesRequest) ProtoMessage() {}
-func (*GetRawChangesRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{58} }
+func (*GetRawChangesRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{62} }
func (m *GetRawChangesRequest) GetRepository() *Repository {
if m != nil {
@@ -1220,7 +1432,7 @@ type GetRawChangesResponse struct {
func (m *GetRawChangesResponse) Reset() { *m = GetRawChangesResponse{} }
func (m *GetRawChangesResponse) String() string { return proto.CompactTextString(m) }
func (*GetRawChangesResponse) ProtoMessage() {}
-func (*GetRawChangesResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{59} }
+func (*GetRawChangesResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{63} }
func (m *GetRawChangesResponse) GetRawChanges() []*GetRawChangesResponse_RawChange {
if m != nil {
@@ -1242,7 +1454,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 fileDescriptor10, []int{59, 0}
+ return fileDescriptor10, []int{63, 0}
}
func (m *GetRawChangesResponse_RawChange) GetBlobId() string {
@@ -1296,7 +1508,7 @@ type SearchFilesByNameRequest struct {
func (m *SearchFilesByNameRequest) Reset() { *m = SearchFilesByNameRequest{} }
func (m *SearchFilesByNameRequest) String() string { return proto.CompactTextString(m) }
func (*SearchFilesByNameRequest) ProtoMessage() {}
-func (*SearchFilesByNameRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{60} }
+func (*SearchFilesByNameRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{64} }
func (m *SearchFilesByNameRequest) GetRepository() *Repository {
if m != nil {
@@ -1326,7 +1538,7 @@ type SearchFilesByNameResponse struct {
func (m *SearchFilesByNameResponse) Reset() { *m = SearchFilesByNameResponse{} }
func (m *SearchFilesByNameResponse) String() string { return proto.CompactTextString(m) }
func (*SearchFilesByNameResponse) ProtoMessage() {}
-func (*SearchFilesByNameResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{61} }
+func (*SearchFilesByNameResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{65} }
func (m *SearchFilesByNameResponse) GetFiles() [][]byte {
if m != nil {
@@ -1344,7 +1556,7 @@ type SearchFilesByContentRequest struct {
func (m *SearchFilesByContentRequest) Reset() { *m = SearchFilesByContentRequest{} }
func (m *SearchFilesByContentRequest) String() string { return proto.CompactTextString(m) }
func (*SearchFilesByContentRequest) ProtoMessage() {}
-func (*SearchFilesByContentRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{62} }
+func (*SearchFilesByContentRequest) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{66} }
func (m *SearchFilesByContentRequest) GetRepository() *Repository {
if m != nil {
@@ -1374,7 +1586,7 @@ type SearchFilesByContentResponse struct {
func (m *SearchFilesByContentResponse) Reset() { *m = SearchFilesByContentResponse{} }
func (m *SearchFilesByContentResponse) String() string { return proto.CompactTextString(m) }
func (*SearchFilesByContentResponse) ProtoMessage() {}
-func (*SearchFilesByContentResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{63} }
+func (*SearchFilesByContentResponse) Descriptor() ([]byte, []int) { return fileDescriptor10, []int{67} }
func (m *SearchFilesByContentResponse) GetMatches() [][]byte {
if m != nil {
@@ -1426,6 +1638,11 @@ func init() {
proto.RegisterType((*CreateBundleResponse)(nil), "gitaly.CreateBundleResponse")
proto.RegisterType((*WriteConfigRequest)(nil), "gitaly.WriteConfigRequest")
proto.RegisterType((*WriteConfigResponse)(nil), "gitaly.WriteConfigResponse")
+ proto.RegisterType((*SetConfigRequest)(nil), "gitaly.SetConfigRequest")
+ proto.RegisterType((*SetConfigRequest_Entry)(nil), "gitaly.SetConfigRequest.Entry")
+ proto.RegisterType((*SetConfigResponse)(nil), "gitaly.SetConfigResponse")
+ proto.RegisterType((*DeleteConfigRequest)(nil), "gitaly.DeleteConfigRequest")
+ proto.RegisterType((*DeleteConfigResponse)(nil), "gitaly.DeleteConfigResponse")
proto.RegisterType((*RestoreCustomHooksRequest)(nil), "gitaly.RestoreCustomHooksRequest")
proto.RegisterType((*RestoreCustomHooksResponse)(nil), "gitaly.RestoreCustomHooksResponse")
proto.RegisterType((*BackupCustomHooksRequest)(nil), "gitaly.BackupCustomHooksRequest")
@@ -1485,6 +1702,8 @@ type RepositoryServiceClient interface {
CreateBundle(ctx context.Context, in *CreateBundleRequest, opts ...grpc.CallOption) (RepositoryService_CreateBundleClient, error)
CreateRepositoryFromBundle(ctx context.Context, opts ...grpc.CallOption) (RepositoryService_CreateRepositoryFromBundleClient, error)
WriteConfig(ctx context.Context, in *WriteConfigRequest, opts ...grpc.CallOption) (*WriteConfigResponse, error)
+ SetConfig(ctx context.Context, in *SetConfigRequest, opts ...grpc.CallOption) (*SetConfigResponse, error)
+ DeleteConfig(ctx context.Context, in *DeleteConfigRequest, opts ...grpc.CallOption) (*DeleteConfigResponse, error)
FindLicense(ctx context.Context, in *FindLicenseRequest, opts ...grpc.CallOption) (*FindLicenseResponse, error)
GetInfoAttributes(ctx context.Context, in *GetInfoAttributesRequest, opts ...grpc.CallOption) (RepositoryService_GetInfoAttributesClient, error)
CalculateChecksum(ctx context.Context, in *CalculateChecksumRequest, opts ...grpc.CallOption) (*CalculateChecksumResponse, error)
@@ -1766,6 +1985,24 @@ func (c *repositoryServiceClient) WriteConfig(ctx context.Context, in *WriteConf
return out, nil
}
+func (c *repositoryServiceClient) SetConfig(ctx context.Context, in *SetConfigRequest, opts ...grpc.CallOption) (*SetConfigResponse, error) {
+ out := new(SetConfigResponse)
+ err := grpc.Invoke(ctx, "/gitaly.RepositoryService/SetConfig", in, out, c.cc, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *repositoryServiceClient) DeleteConfig(ctx context.Context, in *DeleteConfigRequest, opts ...grpc.CallOption) (*DeleteConfigResponse, error) {
+ out := new(DeleteConfigResponse)
+ err := grpc.Invoke(ctx, "/gitaly.RepositoryService/DeleteConfig", in, out, c.cc, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *repositoryServiceClient) FindLicense(ctx context.Context, in *FindLicenseRequest, opts ...grpc.CallOption) (*FindLicenseResponse, error) {
out := new(FindLicenseResponse)
err := grpc.Invoke(ctx, "/gitaly.RepositoryService/FindLicense", in, out, c.cc, opts...)
@@ -2052,6 +2289,8 @@ type RepositoryServiceServer interface {
CreateBundle(*CreateBundleRequest, RepositoryService_CreateBundleServer) error
CreateRepositoryFromBundle(RepositoryService_CreateRepositoryFromBundleServer) error
WriteConfig(context.Context, *WriteConfigRequest) (*WriteConfigResponse, error)
+ SetConfig(context.Context, *SetConfigRequest) (*SetConfigResponse, error)
+ DeleteConfig(context.Context, *DeleteConfigRequest) (*DeleteConfigResponse, error)
FindLicense(context.Context, *FindLicenseRequest) (*FindLicenseResponse, error)
GetInfoAttributes(*GetInfoAttributesRequest, RepositoryService_GetInfoAttributesServer) error
CalculateChecksum(context.Context, *CalculateChecksumRequest) (*CalculateChecksumResponse, error)
@@ -2461,6 +2700,42 @@ func _RepositoryService_WriteConfig_Handler(srv interface{}, ctx context.Context
return interceptor(ctx, in, info, handler)
}
+func _RepositoryService_SetConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SetConfigRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RepositoryServiceServer).SetConfig(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/gitaly.RepositoryService/SetConfig",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RepositoryServiceServer).SetConfig(ctx, req.(*SetConfigRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _RepositoryService_DeleteConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteConfigRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RepositoryServiceServer).DeleteConfig(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/gitaly.RepositoryService/DeleteConfig",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RepositoryServiceServer).DeleteConfig(ctx, req.(*DeleteConfigRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
func _RepositoryService_FindLicense_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindLicenseRequest)
if err := dec(in); err != nil {
@@ -2762,6 +3037,14 @@ var _RepositoryService_serviceDesc = grpc.ServiceDesc{
Handler: _RepositoryService_WriteConfig_Handler,
},
{
+ MethodName: "SetConfig",
+ Handler: _RepositoryService_SetConfig_Handler,
+ },
+ {
+ MethodName: "DeleteConfig",
+ Handler: _RepositoryService_DeleteConfig_Handler,
+ },
+ {
MethodName: "FindLicense",
Handler: _RepositoryService_FindLicense_Handler,
},
@@ -2836,141 +3119,152 @@ var _RepositoryService_serviceDesc = grpc.ServiceDesc{
func init() { proto.RegisterFile("repository-service.proto", fileDescriptor10) }
var fileDescriptor10 = []byte{
- // 2174 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0xef, 0x72, 0xdb, 0xb8,
- 0x11, 0xb7, 0x2c, 0xff, 0xd3, 0x4a, 0xc9, 0xc9, 0xb0, 0x9d, 0xd0, 0x8c, 0x93, 0x38, 0x4c, 0xe6,
- 0xce, 0x77, 0x49, 0xdd, 0x3b, 0xe7, 0x43, 0x6f, 0xa6, 0xed, 0xdc, 0xd8, 0xb2, 0x6c, 0xeb, 0x12,
- 0x3b, 0x2e, 0x9d, 0x4c, 0xa6, 0x99, 0xbb, 0xd1, 0xd0, 0x14, 0x64, 0x72, 0x44, 0x11, 0x0a, 0x08,
- 0xc6, 0xe7, 0xeb, 0xd7, 0x7e, 0xe8, 0xc7, 0xf6, 0x59, 0xfa, 0x06, 0x7d, 0x81, 0x7e, 0xe8, 0x03,
- 0xf4, 0x01, 0xfa, 0x12, 0x1d, 0x80, 0x20, 0x41, 0x8a, 0xa4, 0x9a, 0x19, 0xa6, 0xed, 0x37, 0x61,
- 0x01, 0xec, 0x2e, 0x76, 0x17, 0x4b, 0xfc, 0x7e, 0x36, 0x68, 0x14, 0x4f, 0x48, 0xe0, 0x32, 0x42,
- 0x6f, 0x7e, 0x11, 0x60, 0xfa, 0xc1, 0xb5, 0xf1, 0xee, 0x84, 0x12, 0x46, 0xd0, 0xd2, 0x95, 0xcb,
- 0x2c, 0xef, 0x46, 0x6f, 0x05, 0x8e, 0x45, 0xf1, 0x20, 0x92, 0x1a, 0xa7, 0x70, 0xd7, 0x4c, 0x76,
- 0x74, 0x7f, 0x72, 0x03, 0x16, 0x98, 0xf8, 0x7d, 0x88, 0x03, 0x86, 0xf6, 0x00, 0x94, 0x32, 0xad,
- 0xb6, 0x5d, 0xdb, 0x69, 0xee, 0xa1, 0xdd, 0x48, 0xcb, 0xae, 0xda, 0x64, 0xa6, 0x56, 0x19, 0x7b,
- 0xa0, 0xe5, 0xd5, 0x05, 0x13, 0xe2, 0x07, 0x18, 0xdd, 0x81, 0x25, 0x2c, 0x24, 0x42, 0xd7, 0x8a,
- 0x29, 0x47, 0xc6, 0x99, 0xd8, 0x63, 0xd9, 0xa3, 0x9e, 0x6f, 0x53, 0x3c, 0xc6, 0x3e, 0xb3, 0xbc,
- 0x2a, 0x3e, 0xdc, 0x83, 0xcd, 0x02, 0x7d, 0x91, 0x13, 0x86, 0x07, 0xab, 0xd1, 0xe4, 0x51, 0xe8,
- 0x55, 0xb1, 0x82, 0x1e, 0xc3, 0x2d, 0x9b, 0x62, 0x8b, 0xe1, 0xfe, 0xa5, 0xcb, 0xc6, 0xd6, 0x44,
- 0x9b, 0x17, 0x87, 0x6a, 0x45, 0xc2, 0x03, 0x21, 0x33, 0xd6, 0x01, 0xa5, 0xad, 0x49, 0x1f, 0x26,
- 0xb0, 0x71, 0x6c, 0xd1, 0x4b, 0xeb, 0x0a, 0x77, 0x88, 0xe7, 0x61, 0x9b, 0xfd, 0xd7, 0xfd, 0xd0,
- 0xe0, 0xce, 0xb4, 0x45, 0xe9, 0xcb, 0x21, 0xdc, 0xee, 0x78, 0xd8, 0xf2, 0xc3, 0x49, 0x95, 0x90,
- 0xaf, 0xc2, 0x67, 0x89, 0x16, 0xa9, 0xf8, 0x05, 0x6c, 0xa8, 0xc5, 0x17, 0xee, 0xcf, 0xb8, 0x8a,
- 0xfe, 0x67, 0x70, 0x67, 0x5a, 0x99, 0x2c, 0x2a, 0x04, 0x0b, 0x81, 0xfb, 0x33, 0x16, 0x7a, 0xea,
- 0xa6, 0xf8, 0x6d, 0x8c, 0x60, 0x73, 0x7f, 0x32, 0xf1, 0x6e, 0x8e, 0x5d, 0x66, 0x31, 0x46, 0xdd,
- 0xcb, 0x90, 0xe1, 0x2a, 0x55, 0x8d, 0x74, 0x58, 0xa1, 0xf8, 0x83, 0x1b, 0xb8, 0xc4, 0x17, 0xe1,
- 0x6d, 0x99, 0xc9, 0xd8, 0xd8, 0x02, 0xbd, 0xc8, 0x98, 0x8c, 0xc2, 0x1f, 0xe7, 0x01, 0x1d, 0x61,
- 0x66, 0x3b, 0x26, 0x1e, 0x13, 0x56, 0x25, 0x06, 0xfc, 0xfa, 0x50, 0xa1, 0x44, 0xb8, 0xd0, 0x30,
- 0xe5, 0x08, 0xad, 0xc3, 0xe2, 0x90, 0x50, 0x1b, 0x6b, 0x75, 0x91, 0xf8, 0x68, 0x80, 0xee, 0xc2,
- 0xb2, 0x4f, 0xfa, 0xcc, 0xba, 0x0a, 0xb4, 0x85, 0xe8, 0xb6, 0xf9, 0xe4, 0xb5, 0x75, 0x15, 0x20,
- 0x0d, 0x96, 0x99, 0x3b, 0xc6, 0x24, 0x64, 0xda, 0xe2, 0x76, 0x6d, 0x67, 0xd1, 0x8c, 0x87, 0x7c,
- 0x4b, 0x10, 0x38, 0xfd, 0x11, 0xbe, 0xd1, 0x96, 0x22, 0x0b, 0x41, 0xe0, 0xbc, 0xc0, 0x37, 0xe8,
- 0x21, 0x34, 0x47, 0x3e, 0xb9, 0xf6, 0xfb, 0x0e, 0xe1, 0xb7, 0x77, 0x59, 0x4c, 0x82, 0x10, 0x9d,
- 0x70, 0x09, 0xda, 0x84, 0x15, 0x9f, 0xf4, 0x27, 0x34, 0xf4, 0xb1, 0xd6, 0x10, 0xd6, 0x96, 0x7d,
- 0x72, 0xce, 0x87, 0xdf, 0x2f, 0xac, 0xac, 0xb4, 0x1b, 0xc6, 0x06, 0xac, 0x65, 0xa2, 0x20, 0xa3,
- 0x73, 0x0a, 0x77, 0x3b, 0xa2, 0x4c, 0x53, 0x47, 0xae, 0x50, 0x25, 0x3a, 0x68, 0x79, 0x75, 0xd2,
- 0xd4, 0xbf, 0x6a, 0xb0, 0x7a, 0x8c, 0xd9, 0x3e, 0xb5, 0x1d, 0xf7, 0x43, 0xa5, 0x3c, 0xdc, 0x83,
- 0x86, 0x4d, 0xc6, 0x63, 0x97, 0xf5, 0xdd, 0x81, 0x4c, 0xc5, 0x4a, 0x24, 0xe8, 0x0d, 0x78, 0x92,
- 0x26, 0x14, 0x0f, 0xdd, 0x9f, 0x44, 0x36, 0x1a, 0xa6, 0x1c, 0xa1, 0x6f, 0x61, 0x69, 0x48, 0xe8,
- 0xd8, 0x62, 0x22, 0x1b, 0xb7, 0xf7, 0xb6, 0x63, 0x23, 0x39, 0x9f, 0x76, 0x8f, 0xc4, 0x3a, 0x53,
- 0xae, 0x37, 0x9e, 0xc3, 0x52, 0x24, 0x41, 0xcb, 0x50, 0x7f, 0xd7, 0x3b, 0x6f, 0xcf, 0xf1, 0x1f,
- 0xaf, 0xf7, 0xcd, 0x76, 0x0d, 0x01, 0x2c, 0xbd, 0xde, 0x37, 0xfb, 0xc7, 0xef, 0xda, 0xf3, 0xa8,
- 0x09, 0xcb, 0xfc, 0xf7, 0xc1, 0xbb, 0xbd, 0x76, 0xdd, 0xd8, 0x01, 0x94, 0x56, 0xac, 0xee, 0xca,
- 0xc0, 0x62, 0x96, 0x38, 0x67, 0xcb, 0x14, 0xbf, 0x79, 0x0a, 0x4e, 0xac, 0xe0, 0x25, 0xb1, 0x2d,
- 0xef, 0x80, 0x5a, 0xbe, 0xed, 0x54, 0xba, 0x29, 0xc6, 0xd7, 0xa0, 0xe5, 0xd5, 0x49, 0xf3, 0xeb,
- 0xb0, 0xf8, 0xc1, 0xf2, 0x42, 0x2c, 0xdb, 0x7f, 0x34, 0x30, 0xfe, 0x51, 0x03, 0x4d, 0xd4, 0xc6,
- 0x05, 0x09, 0xa9, 0x8d, 0xa3, 0x5d, 0x55, 0xf2, 0xf3, 0x1d, 0xac, 0x06, 0x42, 0x55, 0x3f, 0xb5,
- 0x75, 0xbe, 0x74, 0x6b, 0x3b, 0x5a, 0x6c, 0x66, 0x3a, 0xaa, 0x54, 0x70, 0x29, 0x9c, 0x11, 0xa9,
- 0x6c, 0x99, 0xad, 0x20, 0xe5, 0x20, 0xba, 0x0f, 0xc0, 0x2c, 0x7a, 0x85, 0x59, 0x9f, 0xe2, 0xa1,
- 0x48, 0x6a, 0xcb, 0x6c, 0x44, 0x12, 0x13, 0x0f, 0x8d, 0xe7, 0xb0, 0x59, 0x70, 0x28, 0xf5, 0x21,
- 0xa4, 0x38, 0x08, 0x3d, 0x16, 0x7f, 0x08, 0xa3, 0x91, 0xb1, 0x0f, 0xcd, 0xa3, 0xc0, 0x1e, 0x55,
- 0x89, 0xff, 0x13, 0x68, 0x45, 0x2a, 0x54, 0xcc, 0x31, 0xa5, 0x84, 0xca, 0x9c, 0x47, 0x03, 0xe3,
- 0x6f, 0x35, 0xf8, 0xec, 0x2d, 0x75, 0xf9, 0x45, 0x19, 0x56, 0x09, 0x75, 0x1b, 0xea, 0xfc, 0xf4,
- 0x51, 0x4b, 0xe4, 0x3f, 0x33, 0x9d, 0xb2, 0x9e, 0xed, 0x94, 0xe8, 0x11, 0xb4, 0x88, 0x37, 0xe8,
- 0x27, 0xf3, 0x51, 0xd0, 0x9a, 0xc4, 0x1b, 0x98, 0xf1, 0x92, 0xa4, 0x97, 0x2d, 0xa6, 0x7b, 0xd9,
- 0x3a, 0x2c, 0x06, 0x0e, 0xf6, 0x3c, 0xd1, 0x96, 0x56, 0xcc, 0x68, 0x60, 0xec, 0x40, 0x5b, 0x9d,
- 0x61, 0xe6, 0x71, 0x1d, 0x58, 0x3f, 0x72, 0xfd, 0xc1, 0x29, 0xa6, 0x57, 0xf8, 0xc0, 0x0a, 0x2a,
- 0xdd, 0xfe, 0x2d, 0x68, 0xc4, 0x07, 0x08, 0xb4, 0xf9, 0xed, 0x3a, 0x4f, 0x7b, 0x22, 0x30, 0x9e,
- 0xc2, 0xc6, 0x94, 0x25, 0x75, 0xf5, 0x2e, 0xad, 0x20, 0x2a, 0xfd, 0x86, 0x29, 0x7e, 0x1b, 0x7f,
- 0xaa, 0xc1, 0x6a, 0xd4, 0xaf, 0x8e, 0x08, 0x1d, 0xfd, 0x3f, 0x4b, 0x9e, 0xbf, 0x53, 0xd2, 0x9e,
- 0x24, 0x6f, 0xa5, 0xcd, 0x5e, 0x60, 0x62, 0xee, 0x6c, 0xcf, 0x3f, 0xa7, 0xe4, 0x8a, 0xe2, 0x20,
- 0xa8, 0xd8, 0x3a, 0xa9, 0x50, 0x97, 0x6a, 0x9d, 0x91, 0xa0, 0x37, 0x30, 0x7e, 0x0b, 0x7a, 0x91,
- 0x35, 0x19, 0xc0, 0x87, 0xd0, 0x74, 0xfd, 0xfe, 0x44, 0x8a, 0xe5, 0xc5, 0x01, 0x37, 0x59, 0x18,
- 0x39, 0x7b, 0xf1, 0x3e, 0xb4, 0x02, 0xe7, 0x93, 0x39, 0x1b, 0x08, 0x75, 0x29, 0x67, 0x23, 0x41,
- 0xec, 0x6c, 0xde, 0xda, 0xc7, 0x3a, 0x3b, 0x84, 0x07, 0xd3, 0x5f, 0xaa, 0x23, 0x4a, 0xc6, 0x6f,
- 0xcc, 0x97, 0x15, 0xaf, 0x63, 0x48, 0x3d, 0xe9, 0x2b, 0xff, 0x69, 0x3c, 0x82, 0x87, 0xa5, 0x76,
- 0x64, 0x92, 0x7b, 0xb0, 0x16, 0x2d, 0x39, 0x08, 0xfd, 0x81, 0x57, 0xe9, 0x95, 0xf6, 0x15, 0xac,
- 0x67, 0x55, 0xcd, 0xf8, 0xee, 0x60, 0x40, 0xe2, 0xf6, 0x76, 0x88, 0x3f, 0x74, 0xaf, 0x2a, 0xe6,
- 0x69, 0x18, 0x7a, 0x5e, 0x7f, 0x62, 0x31, 0x27, 0xce, 0x13, 0x17, 0x9c, 0x5b, 0xcc, 0x31, 0x9e,
- 0xc2, 0x5a, 0xc6, 0xcc, 0xcc, 0x3e, 0x61, 0x73, 0xe0, 0x10, 0x30, 0x42, 0x71, 0x27, 0x0c, 0x18,
- 0x19, 0x9f, 0x10, 0x32, 0xaa, 0x54, 0x42, 0xf1, 0xc1, 0xe7, 0x53, 0x07, 0xdf, 0x02, 0xbd, 0xc8,
- 0x88, 0xcc, 0xc6, 0x19, 0x68, 0x07, 0x96, 0x3d, 0x0a, 0x27, 0x9f, 0xc6, 0x03, 0xe3, 0x97, 0xb0,
- 0x59, 0xa0, 0x6f, 0x46, 0x5e, 0x46, 0xf0, 0xa8, 0xa8, 0x62, 0x2a, 0x17, 0x47, 0x61, 0x2c, 0x9e,
- 0x80, 0x31, 0xcb, 0x98, 0x8c, 0xc9, 0x09, 0x20, 0xde, 0x54, 0x5f, 0xba, 0x36, 0xf6, 0x2b, 0x35,
- 0x6f, 0xa3, 0x03, 0x6b, 0x19, 0x4d, 0x32, 0x0e, 0xcf, 0x00, 0x79, 0x91, 0xa8, 0x1f, 0x38, 0x84,
- 0xb2, 0xbe, 0x6f, 0x8d, 0xe3, 0x56, 0xdd, 0x96, 0x33, 0x17, 0x7c, 0xe2, 0xcc, 0x1a, 0x8b, 0x14,
- 0x1d, 0x63, 0xd6, 0xf3, 0x87, 0x64, 0xff, 0x53, 0x80, 0x0b, 0xe3, 0xd7, 0xb0, 0x59, 0xa0, 0x4f,
- 0xba, 0xf6, 0x00, 0x40, 0xa1, 0x0a, 0x99, 0xa8, 0x94, 0x84, 0x3b, 0xd3, 0xb1, 0x3c, 0x3b, 0xf4,
- 0x2c, 0x86, 0x3b, 0x0e, 0xb6, 0x47, 0x41, 0x38, 0xae, 0xe2, 0xcc, 0xaf, 0x60, 0xb3, 0x40, 0x9f,
- 0x74, 0x46, 0x87, 0x15, 0x5b, 0xca, 0x64, 0x74, 0x92, 0x31, 0x4f, 0xd2, 0x31, 0x66, 0x17, 0xbe,
- 0x35, 0x09, 0x1c, 0x52, 0x05, 0xd0, 0x1a, 0x5f, 0xc2, 0x5a, 0x46, 0xd3, 0x8c, 0x62, 0xfd, 0x4b,
- 0x0d, 0x1e, 0x17, 0x15, 0xd0, 0x27, 0x70, 0x83, 0x63, 0x1a, 0x87, 0xb1, 0x49, 0x5f, 0x75, 0xd4,
- 0x65, 0x3e, 0x7e, 0x43, 0x3d, 0xde, 0x71, 0xc4, 0x94, 0x15, 0x32, 0x47, 0xbe, 0xf3, 0xc5, 0xda,
- 0xfd, 0x90, 0x39, 0xc6, 0xe7, 0xf0, 0x64, 0xb6, 0x4b, 0xb2, 0xaa, 0xff, 0x5c, 0x83, 0xf5, 0x63,
- 0xcc, 0x4c, 0xeb, 0xba, 0xe3, 0x58, 0xfe, 0x55, 0x35, 0x80, 0xfa, 0x18, 0x6e, 0x0d, 0x29, 0x19,
- 0xf7, 0x33, 0x28, 0xb5, 0x61, 0xb6, 0xb8, 0x30, 0x79, 0x5c, 0x3d, 0x84, 0x26, 0x23, 0xfd, 0xcc,
- 0xf3, 0xac, 0x61, 0x02, 0x23, 0xf1, 0x02, 0xe3, 0xaf, 0x75, 0xd8, 0x98, 0x72, 0x49, 0x06, 0xff,
- 0x04, 0x9a, 0xd4, 0xba, 0xee, 0xdb, 0x91, 0x58, 0xab, 0x6d, 0xd7, 0x77, 0x9a, 0x7b, 0x5f, 0xa4,
- 0x30, 0x4c, 0x7e, 0xcf, 0x6e, 0x22, 0x32, 0x81, 0x26, 0xb3, 0xfa, 0xdf, 0xe7, 0xa1, 0x91, 0xcc,
- 0x70, 0xc8, 0x79, 0xe9, 0x91, 0x4b, 0xfe, 0x85, 0x8d, 0x0a, 0x6a, 0x89, 0x0f, 0x7b, 0x83, 0x04,
- 0xd6, 0xcf, 0x2b, 0x58, 0x2f, 0x50, 0x26, 0xbe, 0x8e, 0xfa, 0x7c, 0xe4, 0xfc, 0xb2, 0x8f, 0xaf,
- 0x79, 0x9b, 0xe7, 0x53, 0xfc, 0x69, 0x29, 0xa6, 0x16, 0xa2, 0x29, 0xe2, 0x0d, 0xc4, 0xd4, 0x2b,
- 0x68, 0x90, 0x09, 0xa6, 0x16, 0xe3, 0x67, 0x5e, 0x14, 0xe0, 0xeb, 0x9b, 0x8f, 0x74, 0x7c, 0xf7,
- 0x55, 0xbc, 0xd1, 0x54, 0x3a, 0x78, 0xac, 0x79, 0x2c, 0x94, 0xd2, 0x08, 0x2c, 0xb7, 0xa8, 0x75,
- 0x9d, 0xac, 0x37, 0x5c, 0x68, 0x24, 0x03, 0x0e, 0xcd, 0xde, 0x9c, 0xbd, 0x38, 0x7b, 0xf5, 0xf6,
- 0xac, 0x3d, 0x87, 0x1a, 0xb0, 0xb8, 0x7f, 0x78, 0xd8, 0x3d, 0x8c, 0xe0, 0x5b, 0xe7, 0xd5, 0x79,
- 0xaf, 0x7b, 0x18, 0xc1, 0xb7, 0xc3, 0xee, 0xcb, 0xee, 0xeb, 0xee, 0x61, 0xbb, 0x8e, 0x5a, 0xb0,
- 0x72, 0xfa, 0xea, 0xb0, 0x77, 0xc4, 0xa7, 0x16, 0xf8, 0x94, 0xd9, 0x3d, 0xdb, 0x3f, 0xed, 0x1e,
- 0xb6, 0x17, 0x51, 0x1b, 0x5a, 0xaf, 0x7f, 0x7f, 0xde, 0xed, 0x77, 0x4e, 0xf6, 0xcf, 0x8e, 0xbb,
- 0x87, 0xed, 0x25, 0xe3, 0x03, 0x68, 0x17, 0xd8, 0xa2, 0xb6, 0x73, 0xe4, 0x7a, 0x38, 0x38, 0xb8,
- 0xe1, 0x4d, 0xaa, 0x4a, 0x2d, 0xad, 0xc3, 0xe2, 0xfb, 0x10, 0xcb, 0x07, 0x64, 0xc3, 0x8c, 0x06,
- 0xf1, 0x53, 0xbf, 0x9e, 0x3c, 0xf5, 0x8d, 0x6f, 0x60, 0xb3, 0xc0, 0xae, 0xfa, 0xc0, 0x0e, 0xb9,
- 0x58, 0x94, 0x4a, 0xcb, 0x8c, 0x06, 0xc6, 0x0d, 0xdc, 0xcb, 0x6c, 0xe9, 0x10, 0x9f, 0x61, 0x9f,
- 0xfd, 0x2f, 0xbc, 0xfd, 0x16, 0xb6, 0x8a, 0x4d, 0x4b, 0x87, 0x35, 0x58, 0x1e, 0x5b, 0x8c, 0xe3,
- 0x55, 0xe9, 0x72, 0x3c, 0xdc, 0xfb, 0xe7, 0x86, 0xa0, 0x0c, 0x63, 0xf2, 0x29, 0xe2, 0x54, 0xd1,
- 0x5b, 0x68, 0x4f, 0x13, 0x9d, 0xe8, 0x61, 0xde, 0xd7, 0x0c, 0xa3, 0xaa, 0x6f, 0x97, 0x2f, 0x90,
- 0x5d, 0x61, 0x0e, 0xbd, 0x8b, 0x09, 0xca, 0x14, 0x7b, 0x89, 0xd2, 0x1b, 0x0b, 0x89, 0x52, 0xfd,
- 0xd1, 0x8c, 0x15, 0x89, 0xee, 0x2e, 0x80, 0xa2, 0x23, 0xd1, 0x66, 0x76, 0x4b, 0x8a, 0x10, 0xd5,
- 0xf5, 0xa2, 0xa9, 0x44, 0xcd, 0xef, 0xe0, 0x76, 0x96, 0x4d, 0x44, 0xf7, 0x93, 0x1b, 0x55, 0xc4,
- 0x6b, 0xea, 0x0f, 0xca, 0xa6, 0xd3, 0x2a, 0xb3, 0x04, 0x9f, 0x52, 0x59, 0xc8, 0x22, 0x2a, 0x95,
- 0xc5, 0xbc, 0xa0, 0x31, 0x87, 0x7e, 0x04, 0x94, 0x27, 0xe6, 0x50, 0x12, 0xa7, 0x52, 0x86, 0x50,
- 0x37, 0x66, 0x2d, 0x49, 0xd4, 0x9f, 0x40, 0x33, 0x45, 0x69, 0xa1, 0x24, 0x62, 0x79, 0xb6, 0x4f,
- 0xbf, 0x57, 0x38, 0x97, 0x68, 0x7a, 0x0b, 0xed, 0xe9, 0x2f, 0x86, 0x2a, 0xa5, 0x12, 0x7e, 0x4c,
- 0x95, 0x52, 0x29, 0xe3, 0x35, 0x87, 0x8e, 0x01, 0x14, 0x0b, 0xa4, 0xd2, 0x9d, 0xa3, 0x9c, 0x54,
- 0xba, 0xf3, 0xa4, 0x91, 0x31, 0xf7, 0x75, 0x8d, 0x7b, 0x38, 0xcd, 0xea, 0x28, 0x0f, 0x4b, 0xe8,
- 0x23, 0xe5, 0x61, 0x19, 0x21, 0x14, 0x15, 0x7b, 0x8e, 0x26, 0x51, 0xc5, 0x5e, 0x46, 0x0b, 0xa9,
- 0x62, 0x2f, 0xe5, 0x58, 0x8c, 0x39, 0xf4, 0x1c, 0x16, 0x8e, 0x02, 0x7b, 0x84, 0xd6, 0x92, 0xc5,
- 0x8a, 0x5b, 0xd1, 0xd7, 0xb3, 0xc2, 0x64, 0xd3, 0x77, 0xb0, 0x12, 0x93, 0x0a, 0xe8, 0x6e, 0xbc,
- 0x66, 0x8a, 0x2a, 0xd1, 0xb5, 0xfc, 0x44, 0xa2, 0xe0, 0x0c, 0x6e, 0x65, 0x18, 0x00, 0xb4, 0x95,
- 0x58, 0x2a, 0xa0, 0x20, 0xf4, 0xfb, 0x25, 0xb3, 0xe9, 0x2b, 0xab, 0x90, 0xb9, 0xca, 0x61, 0x8e,
- 0x37, 0x50, 0x39, 0x2c, 0x00, 0xf2, 0xe2, 0x32, 0xe4, 0xc1, 0xb5, 0xba, 0x0c, 0xa5, 0x30, 0x5f,
- 0x5d, 0x86, 0x72, 0x6c, 0x1e, 0xab, 0x9f, 0x86, 0xc3, 0x69, 0xf5, 0x25, 0xc0, 0x3c, 0xad, 0xbe,
- 0x0c, 0x4d, 0x1b, 0x73, 0xc8, 0xcb, 0xf3, 0xc4, 0x12, 0xc6, 0xa2, 0xcf, 0xcb, 0xee, 0x41, 0x16,
- 0x4f, 0xeb, 0x5f, 0xfc, 0xc7, 0x75, 0x89, 0xb5, 0x53, 0x68, 0xa5, 0x61, 0x2c, 0xba, 0x97, 0xdd,
- 0x9a, 0x81, 0x42, 0xfa, 0x56, 0xf1, 0x64, 0xea, 0xf2, 0x5c, 0x83, 0x5e, 0x0e, 0x72, 0xd0, 0x97,
- 0xb3, 0xfc, 0xca, 0x9a, 0xfa, 0xea, 0x63, 0x96, 0xc6, 0x86, 0x77, 0x6a, 0xbc, 0x43, 0xa5, 0xb0,
- 0xaf, 0xea, 0x50, 0x79, 0xdc, 0xad, 0x3a, 0x54, 0x01, 0x58, 0x96, 0xbd, 0x4e, 0xe1, 0xa6, 0x54,
- 0xaf, 0xcb, 0xc1, 0xb2, 0x54, 0xaf, 0xcb, 0x03, 0x2d, 0x63, 0x0e, 0xfd, 0x20, 0x58, 0xf8, 0x2c,
- 0xd8, 0x41, 0x69, 0x32, 0xbc, 0x10, 0x57, 0xa9, 0x0b, 0x5f, 0x8a, 0x94, 0x44, 0xa8, 0xdf, 0xc1,
- 0x6a, 0x0e, 0xbd, 0x28, 0xed, 0x65, 0x40, 0x49, 0x69, 0x2f, 0x85, 0x3e, 0xc6, 0x1c, 0xfa, 0x0d,
- 0x2c, 0xcb, 0x3f, 0x71, 0xa1, 0x3b, 0xc9, 0xfa, 0xcc, 0x5f, 0xce, 0xf4, 0xbb, 0x39, 0x79, 0xb2,
- 0xfb, 0x7b, 0x68, 0xa6, 0x40, 0x0d, 0x4a, 0x37, 0xdc, 0x29, 0xb0, 0xa2, 0x22, 0x58, 0x80, 0x82,
- 0xc4, 0x29, 0xff, 0x00, 0x5b, 0xb3, 0x10, 0x06, 0x7a, 0x3a, 0xab, 0x4e, 0xa6, 0xad, 0x3d, 0xfb,
- 0xb8, 0xc5, 0xc9, 0x41, 0xce, 0xe1, 0x56, 0xe6, 0xd5, 0xac, 0xfa, 0x5b, 0x11, 0x98, 0x51, 0xfd,
- 0xad, 0xf0, 0xa9, 0x2d, 0x8e, 0x83, 0x61, 0xbd, 0xe8, 0x65, 0x86, 0x1e, 0xc7, 0x5b, 0x67, 0x3c,
- 0x19, 0xf5, 0x27, 0xb3, 0x17, 0xa5, 0xcc, 0xfc, 0x00, 0xab, 0xb9, 0xe7, 0xaa, 0xaa, 0x8d, 0xb2,
- 0x17, 0xb4, 0xaa, 0x8d, 0xd2, 0xb7, 0xae, 0xd0, 0xfe, 0x23, 0xa0, 0x3c, 0xab, 0x83, 0x52, 0x8f,
- 0xb2, 0x12, 0x5a, 0x49, 0x35, 0xc0, 0x72, 0x52, 0x68, 0x47, 0x38, 0x9f, 0xa3, 0x71, 0x94, 0xf3,
- 0x65, 0x8c, 0x91, 0x72, 0xbe, 0x94, 0x03, 0xe2, 0xce, 0x5f, 0x2e, 0x89, 0x7f, 0x05, 0x78, 0xfe,
- 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0x4a, 0x33, 0x66, 0x84, 0x3c, 0x20, 0x00, 0x00,
+ // 2344 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x51, 0x73, 0xdb, 0xb8,
+ 0x11, 0x96, 0x6c, 0xcb, 0xb2, 0x56, 0xca, 0x9d, 0x0c, 0x2b, 0xb6, 0xc4, 0x38, 0x71, 0xc2, 0x64,
+ 0xee, 0x7c, 0x97, 0xd4, 0xbd, 0x73, 0x1e, 0x9a, 0x99, 0xb6, 0x73, 0x63, 0x4b, 0xb2, 0xad, 0x4b,
+ 0xec, 0xb8, 0x74, 0x32, 0x99, 0x66, 0x2e, 0xa3, 0xa1, 0x29, 0xc8, 0xe4, 0x88, 0x22, 0x14, 0x10,
+ 0x8a, 0xcf, 0xd7, 0xd7, 0x76, 0xe6, 0x1e, 0xdb, 0xdf, 0xd2, 0x7f, 0xd0, 0x3f, 0xd0, 0x87, 0xfe,
+ 0x8c, 0xbe, 0xf4, 0x27, 0x74, 0x00, 0x50, 0x04, 0x29, 0x92, 0x6a, 0x66, 0x98, 0xb6, 0x6f, 0xc4,
+ 0x62, 0xb1, 0xbb, 0xd8, 0x5d, 0x2c, 0xb0, 0x9f, 0x04, 0x4d, 0x8a, 0x27, 0xc4, 0x77, 0x18, 0xa1,
+ 0x37, 0xbf, 0xf0, 0x31, 0xfd, 0xe0, 0x58, 0x78, 0x6f, 0x42, 0x09, 0x23, 0x68, 0xf5, 0xca, 0x61,
+ 0xa6, 0x7b, 0xa3, 0xd5, 0x7c, 0xdb, 0xa4, 0x78, 0x20, 0xa9, 0xfa, 0x29, 0x6c, 0x19, 0xe1, 0x8a,
+ 0xee, 0x8f, 0x8e, 0xcf, 0x7c, 0x03, 0xbf, 0x9f, 0x62, 0x9f, 0xa1, 0x7d, 0x00, 0x25, 0xac, 0x59,
+ 0xbc, 0x5f, 0xdc, 0xad, 0xee, 0xa3, 0x3d, 0x29, 0x65, 0x4f, 0x2d, 0x32, 0x22, 0x5c, 0xfa, 0x3e,
+ 0x34, 0x93, 0xe2, 0xfc, 0x09, 0xf1, 0x7c, 0x8c, 0x36, 0x61, 0x15, 0x0b, 0x8a, 0x90, 0xb5, 0x66,
+ 0x04, 0x23, 0xfd, 0x4c, 0xac, 0x31, 0xad, 0x51, 0xcf, 0xb3, 0x28, 0x1e, 0x63, 0x8f, 0x99, 0x6e,
+ 0x1e, 0x1b, 0xee, 0x40, 0x2b, 0x45, 0x9e, 0x34, 0x42, 0x77, 0x61, 0x5d, 0x4e, 0x1e, 0x4d, 0xdd,
+ 0x3c, 0x5a, 0xd0, 0x43, 0xb8, 0x65, 0x51, 0x6c, 0x32, 0xdc, 0xbf, 0x74, 0xd8, 0xd8, 0x9c, 0x34,
+ 0x97, 0xc4, 0xa6, 0x6a, 0x92, 0x78, 0x28, 0x68, 0x7a, 0x03, 0x50, 0x54, 0x5b, 0x60, 0xc3, 0x04,
+ 0x6e, 0x1f, 0x9b, 0xf4, 0xd2, 0xbc, 0xc2, 0x6d, 0xe2, 0xba, 0xd8, 0x62, 0xff, 0x75, 0x3b, 0x9a,
+ 0xb0, 0x39, 0xaf, 0x31, 0xb0, 0xa5, 0x03, 0x9f, 0xb5, 0x5d, 0x6c, 0x7a, 0xd3, 0x49, 0x1e, 0x97,
+ 0xaf, 0xc3, 0xe7, 0xa1, 0x94, 0x40, 0xf0, 0x73, 0xb8, 0xad, 0x98, 0x2f, 0x9c, 0x9f, 0x70, 0x1e,
+ 0xf9, 0x4f, 0x60, 0x73, 0x5e, 0x58, 0x90, 0x54, 0x08, 0x56, 0x7c, 0xe7, 0x27, 0x2c, 0xe4, 0x2c,
+ 0x1b, 0xe2, 0x5b, 0x1f, 0x41, 0xeb, 0x60, 0x32, 0x71, 0x6f, 0x8e, 0x1d, 0x66, 0x32, 0x46, 0x9d,
+ 0xcb, 0x29, 0xc3, 0x79, 0xb2, 0x1a, 0x69, 0xb0, 0x46, 0xf1, 0x07, 0xc7, 0x77, 0x88, 0x27, 0xdc,
+ 0x5b, 0x33, 0xc2, 0xb1, 0xbe, 0x0d, 0x5a, 0x9a, 0xb2, 0xc0, 0x0b, 0x7f, 0x5c, 0x02, 0x74, 0x84,
+ 0x99, 0x65, 0x1b, 0x78, 0x4c, 0x58, 0x1e, 0x1f, 0xf0, 0xe3, 0x43, 0x85, 0x10, 0x61, 0x42, 0xc5,
+ 0x08, 0x46, 0xa8, 0x01, 0xa5, 0x21, 0xa1, 0x16, 0x6e, 0x2e, 0x8b, 0xc0, 0xcb, 0x01, 0xda, 0x82,
+ 0xb2, 0x47, 0xfa, 0xcc, 0xbc, 0xf2, 0x9b, 0x2b, 0xf2, 0xb4, 0x79, 0xe4, 0x95, 0x79, 0xe5, 0xa3,
+ 0x26, 0x94, 0x99, 0x33, 0xc6, 0x64, 0xca, 0x9a, 0xa5, 0xfb, 0xc5, 0xdd, 0x92, 0x31, 0x1b, 0xf2,
+ 0x25, 0xbe, 0x6f, 0xf7, 0x47, 0xf8, 0xa6, 0xb9, 0x2a, 0x35, 0xf8, 0xbe, 0xfd, 0x1c, 0xdf, 0xa0,
+ 0x1d, 0xa8, 0x8e, 0x3c, 0x72, 0xed, 0xf5, 0x6d, 0xc2, 0x4f, 0x6f, 0x59, 0x4c, 0x82, 0x20, 0x9d,
+ 0x70, 0x0a, 0x6a, 0xc1, 0x9a, 0x47, 0xfa, 0x13, 0x3a, 0xf5, 0x70, 0xb3, 0x22, 0xb4, 0x95, 0x3d,
+ 0x72, 0xce, 0x87, 0xdf, 0xaf, 0xac, 0xad, 0xd5, 0x2b, 0xfa, 0x6d, 0xd8, 0x88, 0x79, 0x21, 0xf0,
+ 0xce, 0x29, 0x6c, 0xb5, 0x45, 0x9a, 0x46, 0xb6, 0x9c, 0x23, 0x4b, 0x34, 0x68, 0x26, 0xc5, 0x05,
+ 0xaa, 0xfe, 0x59, 0x84, 0xf5, 0x63, 0xcc, 0x0e, 0xa8, 0x65, 0x3b, 0x1f, 0x72, 0xc5, 0xe1, 0x0e,
+ 0x54, 0x2c, 0x32, 0x1e, 0x3b, 0xac, 0xef, 0x0c, 0x82, 0x50, 0xac, 0x49, 0x42, 0x6f, 0xc0, 0x83,
+ 0x34, 0xa1, 0x78, 0xe8, 0xfc, 0x28, 0xa2, 0x51, 0x31, 0x82, 0x11, 0x7a, 0x06, 0xab, 0x43, 0x42,
+ 0xc7, 0x26, 0x13, 0xd1, 0xf8, 0x6c, 0xff, 0xfe, 0x4c, 0x49, 0xc2, 0xa6, 0xbd, 0x23, 0xc1, 0x67,
+ 0x04, 0xfc, 0xfa, 0x53, 0x58, 0x95, 0x14, 0x54, 0x86, 0xe5, 0xb7, 0xbd, 0xf3, 0x7a, 0x81, 0x7f,
+ 0xbc, 0x3a, 0x30, 0xea, 0x45, 0x04, 0xb0, 0xfa, 0xea, 0xc0, 0xe8, 0x1f, 0xbf, 0xad, 0x2f, 0xa1,
+ 0x2a, 0x94, 0xf9, 0xf7, 0xe1, 0xdb, 0xfd, 0xfa, 0xb2, 0xbe, 0x0b, 0x28, 0x2a, 0x58, 0x9d, 0x95,
+ 0x81, 0xc9, 0x4c, 0xb1, 0xcf, 0x9a, 0x21, 0xbe, 0x79, 0x08, 0x4e, 0x4c, 0xff, 0x05, 0xb1, 0x4c,
+ 0xf7, 0x90, 0x9a, 0x9e, 0x65, 0xe7, 0x3a, 0x29, 0xfa, 0x37, 0xd0, 0x4c, 0x8a, 0x0b, 0xd4, 0x37,
+ 0xa0, 0xf4, 0xc1, 0x74, 0xa7, 0x38, 0x28, 0xff, 0x72, 0xa0, 0xff, 0xa3, 0x08, 0x4d, 0x91, 0x1b,
+ 0x17, 0x64, 0x4a, 0x2d, 0x2c, 0x57, 0xe5, 0x89, 0xcf, 0x77, 0xb0, 0xee, 0x0b, 0x51, 0xfd, 0xc8,
+ 0xd2, 0xa5, 0xcc, 0xa5, 0x75, 0xc9, 0x6c, 0xc4, 0x2a, 0x6a, 0x20, 0xe0, 0x52, 0x18, 0x23, 0x42,
+ 0x59, 0x33, 0x6a, 0x7e, 0xc4, 0x40, 0x74, 0x17, 0x80, 0x99, 0xf4, 0x0a, 0xb3, 0x3e, 0xc5, 0x43,
+ 0x11, 0xd4, 0x9a, 0x51, 0x91, 0x14, 0x03, 0x0f, 0xf5, 0xa7, 0xd0, 0x4a, 0xd9, 0x94, 0xba, 0x08,
+ 0x29, 0xf6, 0xa7, 0x2e, 0x9b, 0x5d, 0x84, 0x72, 0xa4, 0x1f, 0x40, 0xf5, 0xc8, 0xb7, 0x46, 0x79,
+ 0xfc, 0xff, 0x08, 0x6a, 0x52, 0x84, 0xf2, 0x39, 0xa6, 0x94, 0xd0, 0x20, 0xe6, 0x72, 0xa0, 0xff,
+ 0xad, 0x08, 0x9f, 0xbf, 0xa1, 0x0e, 0x3f, 0x28, 0xc3, 0x3c, 0xae, 0xae, 0xc3, 0x32, 0xdf, 0xbd,
+ 0x2c, 0x89, 0xfc, 0x33, 0x56, 0x29, 0x97, 0xe3, 0x95, 0x12, 0x3d, 0x80, 0x1a, 0x71, 0x07, 0xfd,
+ 0x70, 0x5e, 0x3a, 0xad, 0x4a, 0xdc, 0x81, 0x31, 0x63, 0x09, 0x6b, 0x59, 0x29, 0x5a, 0xcb, 0x1a,
+ 0x50, 0xf2, 0x6d, 0xec, 0xba, 0xa2, 0x2c, 0xad, 0x19, 0x72, 0xa0, 0xef, 0x42, 0x5d, 0xed, 0x61,
+ 0xe1, 0x76, 0x6d, 0x68, 0x1c, 0x39, 0xde, 0xe0, 0x14, 0xd3, 0x2b, 0x7c, 0x68, 0xfa, 0xb9, 0x4e,
+ 0xff, 0x36, 0x54, 0x66, 0x1b, 0xf0, 0x9b, 0x4b, 0xf7, 0x97, 0x79, 0xd8, 0x43, 0x82, 0xfe, 0x18,
+ 0x6e, 0xcf, 0x69, 0x52, 0x47, 0xef, 0xd2, 0xf4, 0x65, 0xea, 0x57, 0x0c, 0xf1, 0xad, 0xff, 0x5c,
+ 0x84, 0x75, 0x59, 0xaf, 0x8e, 0x08, 0x1d, 0xfd, 0x3f, 0x53, 0x9e, 0xbf, 0x53, 0xa2, 0x96, 0x84,
+ 0x6f, 0xa5, 0x56, 0xcf, 0x37, 0x30, 0x37, 0xb6, 0xe7, 0x9d, 0x53, 0x72, 0x45, 0xb1, 0xef, 0xe7,
+ 0x2c, 0x9d, 0x54, 0x88, 0x8b, 0x94, 0x4e, 0x49, 0xe8, 0x0d, 0xf4, 0xdf, 0x82, 0x96, 0xa6, 0x2d,
+ 0x70, 0xe0, 0x0e, 0x54, 0x1d, 0xaf, 0x3f, 0x09, 0xc8, 0xc1, 0xc1, 0x01, 0x27, 0x64, 0x94, 0xc6,
+ 0x5e, 0xbc, 0x9f, 0x9a, 0xbe, 0xfd, 0xc9, 0x8c, 0xf5, 0x85, 0xb8, 0x88, 0xb1, 0x92, 0x30, 0x33,
+ 0x36, 0xa9, 0xed, 0x63, 0x8d, 0x1d, 0xc2, 0xbd, 0xf9, 0x9b, 0xea, 0x88, 0x92, 0xf1, 0x6b, 0xe3,
+ 0x45, 0xce, 0xe3, 0x38, 0xa5, 0x6e, 0x60, 0x2b, 0xff, 0xd4, 0x1f, 0xc0, 0x4e, 0xa6, 0x9e, 0x20,
+ 0xc8, 0x3d, 0xd8, 0x90, 0x2c, 0x87, 0x53, 0x6f, 0xe0, 0xe6, 0x7a, 0xa5, 0x7d, 0x0d, 0x8d, 0xb8,
+ 0xa8, 0x05, 0xf7, 0x0e, 0x06, 0x24, 0x4e, 0x6f, 0x9b, 0x78, 0x43, 0xe7, 0x2a, 0x67, 0x9c, 0x86,
+ 0x53, 0xd7, 0xed, 0x4f, 0x4c, 0x66, 0xcf, 0xe2, 0xc4, 0x09, 0xe7, 0x26, 0xb3, 0xf5, 0xc7, 0xb0,
+ 0x11, 0x53, 0xb3, 0xb0, 0x4e, 0xfc, 0xbc, 0x04, 0xf5, 0x0b, 0xcc, 0xf2, 0x9b, 0xf4, 0x0c, 0xca,
+ 0xd8, 0x63, 0xd4, 0xc1, 0xb2, 0x44, 0x54, 0xf7, 0xef, 0xcd, 0x16, 0xcc, 0x8b, 0xdf, 0xeb, 0x7a,
+ 0x8c, 0xde, 0x18, 0x33, 0x76, 0xed, 0x4f, 0x45, 0x28, 0x09, 0x12, 0x0f, 0x26, 0x7f, 0x89, 0xc9,
+ 0x82, 0xc1, 0x3f, 0xd1, 0x5d, 0xa8, 0x88, 0x2b, 0xb3, 0xef, 0x33, 0x2a, 0x37, 0x7a, 0x52, 0x30,
+ 0xd6, 0x04, 0xe9, 0x82, 0x51, 0xf4, 0x00, 0xaa, 0x72, 0xda, 0xf1, 0xd8, 0xd3, 0x7d, 0x51, 0x7d,
+ 0x4b, 0x27, 0x05, 0x03, 0x04, 0xb1, 0xc7, 0x69, 0x68, 0x07, 0xe4, 0xa8, 0x7f, 0x49, 0x88, 0x2b,
+ 0xdf, 0x85, 0x27, 0x05, 0x43, 0x4a, 0x3d, 0x24, 0xc4, 0x3d, 0x2c, 0x07, 0x57, 0xb4, 0xbe, 0x01,
+ 0xeb, 0x11, 0x53, 0x83, 0x54, 0x79, 0x07, 0x1b, 0x1d, 0xec, 0xe2, 0x4f, 0x11, 0x34, 0x04, 0x2b,
+ 0x23, 0x7c, 0x23, 0xdd, 0x53, 0x31, 0xc4, 0xb7, 0xbe, 0x09, 0x8d, 0xb8, 0xf8, 0x40, 0xad, 0xc5,
+ 0xfb, 0x39, 0x9f, 0x11, 0x8a, 0xdb, 0x53, 0x9f, 0x91, 0xf1, 0x09, 0x21, 0x23, 0x3f, 0xa7, 0x72,
+ 0x91, 0x8f, 0x4b, 0x91, 0x7c, 0xdc, 0x06, 0x2d, 0x4d, 0x49, 0x60, 0xc2, 0x19, 0x34, 0x0f, 0x4d,
+ 0x6b, 0x34, 0x9d, 0x7c, 0x1a, 0x0b, 0xf4, 0x5f, 0x42, 0x2b, 0x45, 0xde, 0x82, 0xe3, 0x32, 0x82,
+ 0x07, 0x69, 0x07, 0x39, 0xf7, 0x99, 0x4d, 0xf5, 0xc5, 0x23, 0xd0, 0x17, 0x29, 0x0b, 0x7c, 0x72,
+ 0x02, 0x88, 0xdf, 0x75, 0x2f, 0x1c, 0x0b, 0x7b, 0xb9, 0xee, 0x54, 0xbd, 0x0d, 0x1b, 0x31, 0x49,
+ 0x81, 0x1f, 0x9e, 0x00, 0x72, 0x25, 0xa9, 0xef, 0xdb, 0x84, 0xb2, 0xbe, 0x67, 0x8e, 0x67, 0x37,
+ 0x68, 0x3d, 0x98, 0xb9, 0xe0, 0x13, 0x67, 0xe6, 0x58, 0x84, 0xe8, 0x18, 0xb3, 0x9e, 0x37, 0x24,
+ 0x07, 0x9f, 0xa2, 0xe7, 0xd3, 0x7f, 0x0d, 0xad, 0x14, 0x79, 0x81, 0x69, 0xf7, 0x00, 0x54, 0xb3,
+ 0x17, 0x04, 0x2a, 0x42, 0xe1, 0xc6, 0xb4, 0x4d, 0xd7, 0x9a, 0xba, 0x26, 0xc3, 0x6d, 0x1b, 0x5b,
+ 0x23, 0x7f, 0x3a, 0xce, 0x63, 0xcc, 0xaf, 0xa0, 0x95, 0x22, 0x2f, 0x30, 0x46, 0x83, 0x35, 0x2b,
+ 0xa0, 0x05, 0xde, 0x09, 0xc7, 0x3c, 0x48, 0xc7, 0x98, 0x5d, 0x78, 0xe6, 0xc4, 0xb7, 0x49, 0x1e,
+ 0x9c, 0x41, 0xff, 0x0a, 0x36, 0x62, 0x92, 0x16, 0x24, 0xeb, 0x5f, 0x8a, 0xf0, 0x30, 0x2d, 0x81,
+ 0x3e, 0x81, 0x19, 0xbc, 0xd5, 0xb4, 0x19, 0x9b, 0xf4, 0xd5, 0x45, 0x57, 0xe6, 0xe3, 0xd7, 0xd4,
+ 0xe5, 0x17, 0x81, 0x98, 0x32, 0xa7, 0xcc, 0x0e, 0xda, 0x2f, 0xc1, 0x7b, 0x30, 0x65, 0xb6, 0xfe,
+ 0x05, 0x3c, 0x5a, 0x6c, 0x52, 0x90, 0xd5, 0x7f, 0x2e, 0x42, 0xe3, 0x18, 0x33, 0xc3, 0xbc, 0x6e,
+ 0xdb, 0xa6, 0x77, 0x95, 0x0f, 0x37, 0x78, 0x08, 0xb7, 0x86, 0x94, 0x8c, 0xfb, 0x31, 0xf0, 0xa0,
+ 0x62, 0xd4, 0x38, 0x31, 0x7c, 0xf3, 0xee, 0x40, 0x95, 0x91, 0x7e, 0xec, 0xd5, 0x5c, 0x31, 0x80,
+ 0x91, 0x19, 0x83, 0xfe, 0xd7, 0x65, 0xb8, 0x3d, 0x67, 0x52, 0xe0, 0xfc, 0x13, 0xa8, 0x52, 0xf3,
+ 0xba, 0x6f, 0x49, 0x72, 0xb3, 0x28, 0xee, 0x9a, 0x2f, 0x23, 0xad, 0x65, 0x72, 0xcd, 0x5e, 0x48,
+ 0x32, 0x80, 0x86, 0xb3, 0xda, 0xdf, 0x97, 0xa0, 0x12, 0xce, 0xa0, 0x2d, 0x28, 0x5f, 0xba, 0xe4,
+ 0x92, 0x3f, 0x7c, 0x64, 0x42, 0xad, 0xf2, 0x61, 0x6f, 0x10, 0xa2, 0x2d, 0x4b, 0x0a, 0x6d, 0x11,
+ 0xcd, 0x3f, 0xbe, 0x96, 0xd7, 0xaf, 0x34, 0xbe, 0xec, 0xe1, 0x6b, 0x7e, 0xfb, 0xf2, 0x29, 0xfe,
+ 0xe2, 0x17, 0x53, 0x2b, 0x72, 0x8a, 0xb8, 0x03, 0x31, 0xf5, 0x12, 0x2a, 0x64, 0x82, 0xa9, 0xc9,
+ 0xf8, 0x9e, 0x4b, 0xa2, 0x27, 0xfe, 0xf6, 0x23, 0x0d, 0xdf, 0x7b, 0x39, 0x5b, 0x68, 0x28, 0x19,
+ 0xdc, 0xd7, 0xdc, 0x17, 0x4a, 0xa8, 0xc4, 0x30, 0x6a, 0xd4, 0xbc, 0x0e, 0xf9, 0x75, 0x07, 0x2a,
+ 0xe1, 0x80, 0x77, 0xcc, 0xaf, 0xcf, 0x9e, 0x9f, 0xbd, 0x7c, 0x73, 0x56, 0x2f, 0xa0, 0x0a, 0x94,
+ 0x0e, 0x3a, 0x9d, 0x6e, 0x47, 0x76, 0xd5, 0xed, 0x97, 0xe7, 0xbd, 0x6e, 0x47, 0x76, 0xd5, 0x9d,
+ 0xee, 0x8b, 0xee, 0xab, 0x6e, 0xa7, 0xbe, 0x8c, 0x6a, 0xb0, 0x76, 0xfa, 0xb2, 0xd3, 0x3b, 0xe2,
+ 0x53, 0x2b, 0x7c, 0xca, 0xe8, 0x9e, 0x1d, 0x9c, 0x76, 0x3b, 0xf5, 0x12, 0xaa, 0x43, 0xed, 0xd5,
+ 0xef, 0xcf, 0xbb, 0xfd, 0xf6, 0xc9, 0xc1, 0xd9, 0x71, 0xb7, 0x53, 0x5f, 0xd5, 0x3f, 0x40, 0xf3,
+ 0x02, 0x9b, 0xd4, 0xb2, 0x8f, 0x1c, 0x17, 0xfb, 0x87, 0x37, 0xbc, 0x48, 0xe5, 0xc9, 0xa5, 0x06,
+ 0x94, 0xde, 0x4f, 0x71, 0xf0, 0xae, 0xaf, 0x18, 0x72, 0x30, 0xeb, 0xc0, 0x96, 0xc3, 0x0e, 0x4c,
+ 0xff, 0x16, 0x5a, 0x29, 0x7a, 0xd5, 0xbb, 0x67, 0xc8, 0xc9, 0x22, 0x55, 0x6a, 0x86, 0x1c, 0xe8,
+ 0x37, 0x70, 0x27, 0xb6, 0xa4, 0x4d, 0x3c, 0x86, 0x3d, 0xf6, 0xbf, 0xb0, 0xf6, 0x19, 0x6c, 0xa7,
+ 0xab, 0x0e, 0x0c, 0x6e, 0x42, 0x79, 0x6c, 0x32, 0xcb, 0x0e, 0x4d, 0x9e, 0x0d, 0xf7, 0xff, 0xb5,
+ 0x29, 0x90, 0xdc, 0x19, 0x26, 0x28, 0xa1, 0x6e, 0xf4, 0x06, 0xea, 0xf3, 0xf8, 0x33, 0xda, 0x49,
+ 0xda, 0x1a, 0x03, 0xba, 0xb5, 0xfb, 0xd9, 0x0c, 0x41, 0x55, 0x28, 0xa0, 0xb7, 0x33, 0xdc, 0x38,
+ 0x02, 0x2a, 0xa3, 0xe8, 0xc2, 0x54, 0xfc, 0x5a, 0x7b, 0xb0, 0x80, 0x23, 0x94, 0xdd, 0x05, 0x50,
+ 0x28, 0x31, 0x6a, 0xc5, 0x97, 0x44, 0x70, 0x6a, 0x4d, 0x4b, 0x9b, 0x0a, 0xc5, 0xfc, 0x0e, 0x3e,
+ 0x8b, 0x83, 0xbc, 0xe8, 0x6e, 0x78, 0xa2, 0xd2, 0xe0, 0x66, 0xed, 0x5e, 0xd6, 0x74, 0x54, 0x64,
+ 0x1c, 0x77, 0x55, 0x22, 0x53, 0xc1, 0x5d, 0x25, 0x32, 0x1d, 0xae, 0xd5, 0x0b, 0xe8, 0x1d, 0xa0,
+ 0x24, 0x5e, 0x8a, 0x42, 0x3f, 0x65, 0x02, 0xb7, 0x9a, 0xbe, 0x88, 0x25, 0x14, 0x7f, 0x02, 0xd5,
+ 0x08, 0xd2, 0x88, 0x42, 0x8f, 0x25, 0x41, 0x58, 0xed, 0x4e, 0xea, 0x5c, 0x28, 0xe9, 0x0d, 0xd4,
+ 0xe7, 0x6f, 0x0c, 0x95, 0x4a, 0x19, 0xb0, 0xa5, 0x4a, 0xa5, 0x4c, 0x20, 0xb2, 0x80, 0x8e, 0x01,
+ 0x14, 0x38, 0xa7, 0xc2, 0x9d, 0x40, 0x02, 0x55, 0xb8, 0x93, 0x58, 0x9e, 0x5e, 0xf8, 0xa6, 0xc8,
+ 0x2d, 0x9c, 0x07, 0xdb, 0x94, 0x85, 0x19, 0xa8, 0x9e, 0xb2, 0x30, 0x0b, 0xa7, 0x93, 0xc9, 0x9e,
+ 0x40, 0xaf, 0x54, 0xb2, 0x67, 0xa1, 0x75, 0x2a, 0xd9, 0x33, 0xa1, 0x2f, 0xbd, 0x80, 0x9e, 0xc2,
+ 0xca, 0x91, 0x6f, 0x8d, 0xd0, 0x46, 0xc8, 0xac, 0x20, 0x2f, 0xad, 0x11, 0x27, 0x86, 0x8b, 0xbe,
+ 0x83, 0xb5, 0x19, 0xd6, 0x83, 0xb6, 0x66, 0x3c, 0x73, 0x08, 0x96, 0xd6, 0x4c, 0x4e, 0x84, 0x02,
+ 0xce, 0xe0, 0x56, 0x0c, 0x98, 0x41, 0xdb, 0xa1, 0xa6, 0x14, 0x64, 0x48, 0xbb, 0x9b, 0x31, 0x1b,
+ 0x3d, 0xb2, 0x0a, 0x30, 0x51, 0x31, 0x4c, 0xc0, 0x39, 0x2a, 0x86, 0x29, 0xf8, 0x8a, 0x38, 0x0c,
+ 0x49, 0xcc, 0x43, 0x1d, 0x86, 0x4c, 0xf4, 0x45, 0x1d, 0x86, 0x6c, 0xc8, 0x64, 0x26, 0x7e, 0x1e,
+ 0xa5, 0x88, 0x8a, 0xcf, 0xc0, 0x4b, 0xa2, 0xe2, 0xb3, 0x40, 0x0e, 0xbd, 0x80, 0xdc, 0x24, 0x7c,
+ 0x1f, 0xa0, 0x0b, 0xe8, 0x8b, 0xac, 0x73, 0x10, 0x87, 0x39, 0xb4, 0x2f, 0xff, 0x23, 0x5f, 0xa8,
+ 0xed, 0x14, 0x6a, 0x51, 0x74, 0x01, 0xdd, 0x89, 0x2f, 0x8d, 0xb5, 0x42, 0xda, 0x76, 0xfa, 0x64,
+ 0xe4, 0xf0, 0x5c, 0x83, 0x96, 0xdd, 0xe4, 0xa0, 0xaf, 0x16, 0xd9, 0x15, 0x57, 0xf5, 0xf5, 0xc7,
+ 0xb0, 0xce, 0x14, 0xef, 0x16, 0x79, 0x85, 0x8a, 0x40, 0x12, 0xaa, 0x42, 0x25, 0xe1, 0x10, 0x55,
+ 0xa1, 0x52, 0x30, 0x0c, 0xbd, 0x80, 0x0e, 0xa1, 0x12, 0x36, 0xe9, 0xa8, 0x99, 0x05, 0x31, 0x68,
+ 0xad, 0x94, 0x99, 0x50, 0xc6, 0x73, 0xa8, 0x45, 0x9b, 0x6e, 0xe5, 0xd5, 0x94, 0x4e, 0x5f, 0x79,
+ 0x35, 0xb5, 0x4f, 0x97, 0xc5, 0x57, 0x35, 0x72, 0x91, 0xe2, 0x9b, 0xe8, 0x13, 0x23, 0xc5, 0x37,
+ 0xd9, 0xf9, 0xe9, 0x05, 0xf4, 0x83, 0xf8, 0xb5, 0x26, 0xde, 0x7d, 0xa1, 0xe8, 0x8f, 0x26, 0xa9,
+ 0x8d, 0x9e, 0xaa, 0x40, 0x99, 0xad, 0x9b, 0x88, 0xfd, 0x5b, 0x58, 0x4f, 0xb4, 0x53, 0x4a, 0x7a,
+ 0x56, 0xe7, 0xa6, 0xa4, 0x67, 0xf6, 0x62, 0x7a, 0x01, 0xfd, 0x06, 0xca, 0xc1, 0x4f, 0xa1, 0x68,
+ 0x33, 0xe4, 0x8f, 0xfd, 0xc2, 0xaa, 0x6d, 0x25, 0xe8, 0xe1, 0xea, 0xef, 0xa1, 0x1a, 0xe9, 0xb2,
+ 0x50, 0xf4, 0x06, 0x98, 0xeb, 0x9e, 0x94, 0x07, 0x53, 0xda, 0x32, 0xb1, 0xcb, 0x3f, 0xc0, 0xf6,
+ 0xa2, 0x96, 0x07, 0x3d, 0x5e, 0x94, 0xb8, 0xf3, 0xda, 0x9e, 0x7c, 0x1c, 0x73, 0xb8, 0x91, 0x73,
+ 0xb8, 0x15, 0x7b, 0xc6, 0xab, 0x82, 0x9b, 0xd6, 0x5d, 0xa9, 0x82, 0x9b, 0xfa, 0xf6, 0x17, 0xdb,
+ 0xc1, 0xd0, 0x48, 0x7b, 0x2a, 0xa2, 0x87, 0x2a, 0xbd, 0x33, 0xdf, 0xb0, 0xda, 0xa3, 0xc5, 0x4c,
+ 0x11, 0x35, 0x3f, 0xc0, 0x7a, 0xe2, 0xfd, 0xac, 0x72, 0x23, 0xeb, 0x49, 0xaf, 0x72, 0x23, 0xf3,
+ 0xf1, 0x2d, 0xa4, 0xbf, 0x03, 0x94, 0x84, 0x99, 0x50, 0xe4, 0x95, 0x98, 0x81, 0x73, 0xa9, 0x8a,
+ 0x9c, 0x8d, 0x52, 0xed, 0x0a, 0xe3, 0x13, 0xb8, 0x92, 0x32, 0x3e, 0x0b, 0xc2, 0x52, 0xc6, 0x67,
+ 0x82, 0x52, 0xdc, 0xf8, 0xcb, 0x55, 0xf1, 0x97, 0x91, 0xa7, 0xff, 0x0e, 0x00, 0x00, 0xff, 0xff,
+ 0xcc, 0xc6, 0x1f, 0x98, 0x64, 0x22, 0x00, 0x00,
}
diff --git a/vendor/vendor.json b/vendor/vendor.json
index 3a345fa7b..dc8a5fcab 100644
--- a/vendor/vendor.json
+++ b/vendor/vendor.json
@@ -201,12 +201,12 @@
"revisionTime": "2017-12-31T12:27:32Z"
},
{
- "checksumSHA1": "+dHH1vrPnkaVFGkoiH1YF/X3wX8=",
+ "checksumSHA1": "e7B5BBSJHbUWmrToFLnwri6GM9g=",
"path": "gitlab.com/gitlab-org/gitaly-proto/go",
- "revision": "259c6614b4e66a8203610a94e62264b5b229cb25",
- "revisionTime": "2018-06-29T02:43:47Z",
- "version": "v0.104.0",
- "versionExact": "v0.104.0"
+ "revision": "8ccaaaeb92e3babf523d8f8a91d464ee42228e62",
+ "revisionTime": "2018-07-04T10:00:37Z",
+ "version": "v0.105.0",
+ "versionExact": "v0.105.0"
},
{
"checksumSHA1": "nqWNlnMmVpt628zzvyo6Yv2CX5Q=",