From 44019f4183a580ad1f5e0821482dc7663d38a0ac Mon Sep 17 00:00:00 2001 From: Femi Novia Lina Date: Wed, 2 Oct 2024 14:03:10 +0700 Subject: [PATCH 1/2] feat: soft delete user --- Makefile | 2 +- cmd/serve.go | 4 +- core/user/mocks/user_repository.go | 96 + core/user/service.go | 11 +- core/user/service_test.go | 118 +- core/user/user.go | 6 + internal/api/v1beta1/mocks/user_service.go | 47 + internal/api/v1beta1/relation.go | 24 + internal/api/v1beta1/user.go | 22 + internal/api/v1beta1/user_test.go | 58 + internal/server/config.go | 2 + internal/store/postgres/user_repository.go | 85 +- .../store/postgres/user_repository_test.go | 64 + proto/shield.swagger.yaml | 21 + proto/v1beta1/shield.pb.go | 4433 +++++++++-------- proto/v1beta1/shield.pb.gw.go | 103 + proto/v1beta1/shield.pb.validate.go | 206 + proto/v1beta1/shield_grpc.pb.go | 37 + 18 files changed, 3148 insertions(+), 2191 deletions(-) diff --git a/Makefile b/Makefile index 966b6bcf3..c05f23463 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ GOVERSION := $(shell go version | cut -d ' ' -f 3 | cut -d '.' -f 2) .PHONY: build check fmt lint test test-race vet test-cover-html help install proto .DEFAULT_GOAL := build -PROTON_COMMIT := "4165013edcadd3b5de3136e1ad93e6d4fbdfba44" +PROTON_COMMIT := "e0c6ae65649c06de6e3dd9af5028ea583a9ed999" install: @echo "Clean up imports..." diff --git a/cmd/serve.go b/cmd/serve.go index d32ce03d8..bba9ddf5c 100644 --- a/cmd/serve.go +++ b/cmd/serve.go @@ -122,7 +122,7 @@ func StartServer(logger *log.Zap, cfg *config.Shield) error { activityService := activity.NewService(appConfig, activityRepository) userRepository := postgres.NewUserRepository(dbClient) - userService := user.NewService(logger, userRepository, activityService) + userService := user.NewService(logger, user.Config{InactiveEmailTag: cfg.App.InactiveEmailTag}, userRepository, activityService) actionRepository := postgres.NewActionRepository(dbClient) actionService := action.NewService(logger, actionRepository, userService, activityService) @@ -231,7 +231,7 @@ func BuildAPIDependencies( activityService := activity.NewService(appConfig, activityRepository) userRepository := postgres.NewUserRepository(dbc) - userService := user.NewService(logger, userRepository, activityService) + userService := user.NewService(logger, user.Config{InactiveEmailTag: cfg.App.InactiveEmailTag}, userRepository, activityService) actionRepository := postgres.NewActionRepository(dbc) actionService := action.NewService(logger, actionRepository, userService, activityService) diff --git a/core/user/mocks/user_repository.go b/core/user/mocks/user_repository.go index 46ff91b7c..7e29afaa0 100644 --- a/core/user/mocks/user_repository.go +++ b/core/user/mocks/user_repository.go @@ -136,6 +136,102 @@ func (_c *Repository_CreateMetadataKey_Call) RunAndReturn(run func(context.Conte return _c } +// DeleteByEmail provides a mock function with given fields: ctx, email, emailTag +func (_m *Repository) DeleteByEmail(ctx context.Context, email string, emailTag string) error { + ret := _m.Called(ctx, email, emailTag) + + if len(ret) == 0 { + panic("no return value specified for DeleteByEmail") + } + + var r0 error + if rf, ok := ret.Get(0).(func(context.Context, string, string) error); ok { + r0 = rf(ctx, email, emailTag) + } else { + r0 = ret.Error(0) + } + + return r0 +} + +// Repository_DeleteByEmail_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'DeleteByEmail' +type Repository_DeleteByEmail_Call struct { + *mock.Call +} + +// DeleteByEmail is a helper method to define mock.On call +// - ctx context.Context +// - email string +// - emailTag string +func (_e *Repository_Expecter) DeleteByEmail(ctx interface{}, email interface{}, emailTag interface{}) *Repository_DeleteByEmail_Call { + return &Repository_DeleteByEmail_Call{Call: _e.mock.On("DeleteByEmail", ctx, email, emailTag)} +} + +func (_c *Repository_DeleteByEmail_Call) Run(run func(ctx context.Context, email string, emailTag string)) *Repository_DeleteByEmail_Call { + _c.Call.Run(func(args mock.Arguments) { + run(args[0].(context.Context), args[1].(string), args[2].(string)) + }) + return _c +} + +func (_c *Repository_DeleteByEmail_Call) Return(_a0 error) *Repository_DeleteByEmail_Call { + _c.Call.Return(_a0) + return _c +} + +func (_c *Repository_DeleteByEmail_Call) RunAndReturn(run func(context.Context, string, string) error) *Repository_DeleteByEmail_Call { + _c.Call.Return(run) + return _c +} + +// DeleteById provides a mock function with given fields: ctx, id, emailTag +func (_m *Repository) DeleteById(ctx context.Context, id string, emailTag string) error { + ret := _m.Called(ctx, id, emailTag) + + if len(ret) == 0 { + panic("no return value specified for DeleteById") + } + + var r0 error + if rf, ok := ret.Get(0).(func(context.Context, string, string) error); ok { + r0 = rf(ctx, id, emailTag) + } else { + r0 = ret.Error(0) + } + + return r0 +} + +// Repository_DeleteById_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'DeleteById' +type Repository_DeleteById_Call struct { + *mock.Call +} + +// DeleteById is a helper method to define mock.On call +// - ctx context.Context +// - id string +// - emailTag string +func (_e *Repository_Expecter) DeleteById(ctx interface{}, id interface{}, emailTag interface{}) *Repository_DeleteById_Call { + return &Repository_DeleteById_Call{Call: _e.mock.On("DeleteById", ctx, id, emailTag)} +} + +func (_c *Repository_DeleteById_Call) Run(run func(ctx context.Context, id string, emailTag string)) *Repository_DeleteById_Call { + _c.Call.Run(func(args mock.Arguments) { + run(args[0].(context.Context), args[1].(string), args[2].(string)) + }) + return _c +} + +func (_c *Repository_DeleteById_Call) Return(_a0 error) *Repository_DeleteById_Call { + _c.Call.Return(_a0) + return _c +} + +func (_c *Repository_DeleteById_Call) RunAndReturn(run func(context.Context, string, string) error) *Repository_DeleteById_Call { + _c.Call.Return(run) + return _c +} + // GetByEmail provides a mock function with given fields: ctx, email func (_m *Repository) GetByEmail(ctx context.Context, email string) (user.User, error) { ret := _m.Called(ctx, email) diff --git a/core/user/service.go b/core/user/service.go index f7df031ae..f4a0eab6a 100644 --- a/core/user/service.go +++ b/core/user/service.go @@ -23,13 +23,15 @@ type ActivityService interface { type Service struct { logger log.Logger + config Config repository Repository activityService ActivityService } -func NewService(logger log.Logger, repository Repository, activityService ActivityService) *Service { +func NewService(logger log.Logger, config Config, repository Repository, activityService ActivityService) *Service { return &Service{ logger: logger, + config: config, repository: repository, activityService: activityService, } @@ -210,3 +212,10 @@ func (s Service) FetchCurrentUser(ctx context.Context) (User, error) { return fetchedUser, nil } + +func (s Service) Delete(ctx context.Context, id string) error { + if uuid.IsValid(id) { + return s.repository.DeleteById(ctx, id, s.config.InactiveEmailTag) + } + return s.repository.DeleteByEmail(ctx, id, s.config.InactiveEmailTag) +} diff --git a/core/user/service_test.go b/core/user/service_test.go index f1c8f1320..b231ad959 100644 --- a/core/user/service_test.go +++ b/core/user/service_test.go @@ -11,8 +11,8 @@ import ( "github.com/goto/shield/core/activity" "github.com/goto/shield/core/user" "github.com/goto/shield/core/user/mocks" - "github.com/goto/shield/pkg/logger" shieldlogger "github.com/goto/shield/pkg/logger" + "github.com/goto/shield/pkg/uuid" ) func TestService_Create(t *testing.T) { @@ -38,7 +38,7 @@ func TestService_Create(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByEmail(mock.Anything, "jane.doe@gotocompany.com"). Return(user.User{ @@ -60,7 +60,7 @@ func TestService_Create(t *testing.T) { ID: "test-id", Email: "jane.doe@gotocompany.com", }, user.LogData{Entity: "user", Name: "John Doe", Email: "john.doe@gotocompany.com"}).Return(nil).Once() - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, want: user.User{ Name: "John Doe", @@ -79,7 +79,7 @@ func TestService_Create(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByEmail(mock.Anything, "jane.doe@gotocompany.com"). Return(user.User{}, user.ErrNotExist) @@ -97,7 +97,7 @@ func TestService_Create(t *testing.T) { Log(mock.Anything, user.AuditKeyUserCreate, activity.Actor{ Email: "jane.doe@gotocompany.com", }, user.LogData{Entity: "user", Name: "Jane Doe", Email: "jane.doe@gotocompany.com"}).Return(nil).Once() - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, want: user.User{ Name: "Jane Doe", @@ -116,11 +116,11 @@ func TestService_Create(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByEmail(mock.Anything, "jane.doe@gotocompany.com"). Return(user.User{}, user.ErrNotExist) - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, wantErr: user.ErrInvalidEmail, }, @@ -134,11 +134,11 @@ func TestService_Create(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByEmail(mock.Anything, ""). Return(user.User{}, user.ErrMissingEmail) - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, wantErr: user.ErrMissingEmail, }, @@ -187,7 +187,7 @@ func TestService_CreateMetadataKey(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByEmail(mock.Anything, "jane.doe@gotocompany.com"). Return(user.User{}, nil) @@ -206,7 +206,7 @@ func TestService_CreateMetadataKey(t *testing.T) { Key: "test-key", Description: "description for test-key", }).Return(nil).Once() - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, want: user.UserMetadataKey{ Key: "test-key", @@ -222,7 +222,7 @@ func TestService_CreateMetadataKey(t *testing.T) { }, setup: func(t *testing.T) *user.Service { t.Helper() - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) activityService := &mocks.ActivityService{} repository := &mocks.Repository{} repository.EXPECT(). @@ -234,7 +234,7 @@ func TestService_CreateMetadataKey(t *testing.T) { Description: "description for test-key", }). Return(user.UserMetadataKey{}, user.ErrConflict).Once() - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, wantErr: user.ErrConflict, }, @@ -279,7 +279,7 @@ func TestService_List(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByEmail(mock.Anything, "jane.doe@gotocompany.com"). Return(user.User{}, nil) @@ -294,7 +294,7 @@ func TestService_List(t *testing.T) { activityService.EXPECT(). Log(mock.Anything, user.AuditKeyUserCreate, activity.Actor{}, user.LogData{Entity: "user", Name: "John Doe", Email: "john.doe@gotocompany.com"}).Return(nil).Once() - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, want: user.PagedUsers{ Users: []user.User{ @@ -314,7 +314,7 @@ func TestService_List(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByEmail(mock.Anything, "jane.doe@gotocompany.com"). Return(user.User{}, nil) @@ -324,7 +324,7 @@ func TestService_List(t *testing.T) { activityService.EXPECT(). Log(mock.Anything, user.AuditKeyUserCreate, activity.Actor{}, user.LogData{Entity: "user", Name: "John Doe", Email: "john.doe@gotocompany.com"}).Return(nil).Once() - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, // Any error is directly returned by the function wantErr: user.ErrInvalidID, @@ -374,7 +374,7 @@ func TestService_UpdateByID(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByEmail(mock.Anything, "jane.doe@gotocompany.com"). Return(user.User{}, nil) @@ -392,7 +392,7 @@ func TestService_UpdateByID(t *testing.T) { activityService.EXPECT(). Log(mock.Anything, user.AuditKeyUserUpdate, activity.Actor{}, user.LogData{Entity: "user", Name: "John Doe", Email: "john.doe2@gotocompany.com"}).Return(nil).Once() - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, want: user.User{ ID: "1", @@ -445,7 +445,7 @@ func TestService_UpdateByEmail(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByEmail(mock.Anything, "jane.doe@gotocompany.com"). Return(user.User{}, nil) @@ -461,7 +461,7 @@ func TestService_UpdateByEmail(t *testing.T) { activityService.EXPECT(). Log(mock.Anything, user.AuditKeyUserUpdate, activity.Actor{}, user.LogData{Entity: "user", Name: "John Doe", Email: "john.doe2@gotocompany.com"}).Return(nil).Once() - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, want: user.User{ Name: "John Doe", @@ -510,7 +510,7 @@ func TestService_GetByEmail(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByEmail(mock.Anything, "john.doe@gotocompany.com"). Return(user.User{ @@ -521,7 +521,7 @@ func TestService_GetByEmail(t *testing.T) { activityService.EXPECT(). Log(mock.Anything, user.AuditKeyUserUpdate, "", user.LogData{Entity: "user", Name: "John Doe", Email: "john.doe2@gotocompany.com"}).Return(nil).Once() - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, want: user.User{ ID: "1", @@ -570,7 +570,7 @@ func TestService_GetByID(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByID(mock.Anything, "qwer-1234-tyui-5678-opas-90"). Return(user.User{ @@ -581,7 +581,7 @@ func TestService_GetByID(t *testing.T) { activityService.EXPECT(). Log(mock.Anything, user.AuditKeyUserUpdate, "", user.LogData{Entity: "user", Name: "John Doe", Email: "john.doe2@gotocompany.com"}).Return(nil).Once() - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, want: user.User{ ID: "qwer-1234-tyui-5678-opas-90", @@ -630,7 +630,7 @@ func TestService_FetchCurrentUser(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) repository.EXPECT(). GetByEmail(mock.Anything, "john.doe@gotocompany.com"). Return(user.User{ @@ -641,7 +641,7 @@ func TestService_FetchCurrentUser(t *testing.T) { activityService.EXPECT(). Log(mock.Anything, user.AuditKeyUserUpdate, "", user.LogData{Entity: "user", Name: "John Doe", Email: "john.doe2@gotocompany.com"}).Return(nil).Once() - return user.NewService(logger, repository, activityService) + return user.NewService(logger, user.Config{}, repository, activityService) }, want: user.User{ ID: "qwer-1234-tyui-5678-opas-90", @@ -656,8 +656,8 @@ func TestService_FetchCurrentUser(t *testing.T) { t.Helper() repository := &mocks.Repository{} activityService := &mocks.ActivityService{} - logger := shieldlogger.InitLogger(logger.Config{}) - return user.NewService(logger, repository, activityService) + logger := shieldlogger.InitLogger(shieldlogger.Config{}) + return user.NewService(logger, user.Config{}, repository, activityService) }, wantErr: user.ErrMissingEmail, }, @@ -684,3 +684,63 @@ func TestService_FetchCurrentUser(t *testing.T) { }) } } + +func TestService_DeleteUser(t *testing.T) { + t.Parallel() + + testUserID := uuid.NewString() + testUserEmail := "john.doe@gotocompany.com" + emailTag := "inactive" + tests := []struct { + name string + setup func(t *testing.T) *user.Service + id string + wantErr error + }{ + { + name: "return error from delete by id", + setup: func(t *testing.T) *user.Service { + t.Helper() + logger := shieldlogger.InitLogger(shieldlogger.Config{}) + repository := &mocks.Repository{} + activityService := &mocks.ActivityService{} + repository.EXPECT(). + DeleteById(mock.Anything, testUserID, emailTag). + Return(user.ErrNotExist) + return user.NewService(logger, user.Config{InactiveEmailTag: emailTag}, repository, activityService) + }, + id: testUserID, + wantErr: user.ErrNotExist, + }, + { + name: "return error from delete by email", + setup: func(t *testing.T) *user.Service { + t.Helper() + logger := shieldlogger.InitLogger(shieldlogger.Config{}) + repository := &mocks.Repository{} + activityService := &mocks.ActivityService{} + repository.EXPECT(). + DeleteByEmail(mock.Anything, testUserEmail, emailTag). + Return(user.ErrNotExist) + return user.NewService(logger, user.Config{InactiveEmailTag: emailTag}, repository, activityService) + }, + id: testUserEmail, + wantErr: user.ErrNotExist, + }, + } + for _, tt := range tests { + tt := tt + t.Run(tt.name, func(t *testing.T) { + t.Parallel() + svc := tt.setup(t) + + assert.NotNil(t, svc) + + ctx := context.Background() + + err := svc.Delete(ctx, tt.id) + assert.Error(t, err) + assert.True(t, errors.Is(err, tt.wantErr)) + }) + } +} diff --git a/core/user/user.go b/core/user/user.go index fdf8a0543..c4dd1c80e 100644 --- a/core/user/user.go +++ b/core/user/user.go @@ -21,6 +21,8 @@ type Repository interface { UpdateByID(ctx context.Context, toUpdate User) (User, error) UpdateByEmail(ctx context.Context, toUpdate User) (User, error) CreateMetadataKey(ctx context.Context, key UserMetadataKey) (UserMetadataKey, error) + DeleteByEmail(ctx context.Context, email string, emailTag string) error + DeleteById(ctx context.Context, id string, emailTag string) error } type User struct { @@ -39,6 +41,10 @@ type UserMetadataKey struct { UpdatedAt time.Time } +type Config struct { + InactiveEmailTag string +} + type PagedUsers struct { Count int32 Users []User diff --git a/internal/api/v1beta1/mocks/user_service.go b/internal/api/v1beta1/mocks/user_service.go index 57544a534..be0741cc5 100644 --- a/internal/api/v1beta1/mocks/user_service.go +++ b/internal/api/v1beta1/mocks/user_service.go @@ -136,6 +136,53 @@ func (_c *UserService_CreateMetadataKey_Call) RunAndReturn(run func(context.Cont return _c } +// Delete provides a mock function with given fields: ctx, id +func (_m *UserService) Delete(ctx context.Context, id string) error { + ret := _m.Called(ctx, id) + + if len(ret) == 0 { + panic("no return value specified for Delete") + } + + var r0 error + if rf, ok := ret.Get(0).(func(context.Context, string) error); ok { + r0 = rf(ctx, id) + } else { + r0 = ret.Error(0) + } + + return r0 +} + +// UserService_Delete_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'Delete' +type UserService_Delete_Call struct { + *mock.Call +} + +// Delete is a helper method to define mock.On call +// - ctx context.Context +// - id string +func (_e *UserService_Expecter) Delete(ctx interface{}, id interface{}) *UserService_Delete_Call { + return &UserService_Delete_Call{Call: _e.mock.On("Delete", ctx, id)} +} + +func (_c *UserService_Delete_Call) Run(run func(ctx context.Context, id string)) *UserService_Delete_Call { + _c.Call.Run(func(args mock.Arguments) { + run(args[0].(context.Context), args[1].(string)) + }) + return _c +} + +func (_c *UserService_Delete_Call) Return(_a0 error) *UserService_Delete_Call { + _c.Call.Return(_a0) + return _c +} + +func (_c *UserService_Delete_Call) RunAndReturn(run func(context.Context, string) error) *UserService_Delete_Call { + _c.Call.Return(run) + return _c +} + // FetchCurrentUser provides a mock function with given fields: ctx func (_m *UserService) FetchCurrentUser(ctx context.Context) (user.User, error) { ret := _m.Called(ctx) diff --git a/internal/api/v1beta1/relation.go b/internal/api/v1beta1/relation.go index f3b161fff..570455f6e 100644 --- a/internal/api/v1beta1/relation.go +++ b/internal/api/v1beta1/relation.go @@ -7,6 +7,7 @@ import ( "strings" "github.com/goto/shield/core/action" + "github.com/goto/shield/core/group" "github.com/goto/shield/core/namespace" "github.com/goto/shield/core/resource" "github.com/goto/shield/core/user" @@ -77,6 +78,9 @@ func (h Handler) CreateRelation(ctx context.Context, request *shieldv1beta1.Crea } principal, subjectID := extractSubjectFromPrincipal(request.GetBody().GetSubject()) + if err := h.verifyPrincipal(ctx, principal, subjectID); err != nil { + return nil, err + } result, err := h.resourceService.CheckAuthz(ctx, resource.Resource{ Name: request.GetBody().GetObjectId(), @@ -263,3 +267,23 @@ func extractSubjectFromPrincipal(principal string) (string, string) { func generateSubject(subjectId, principal string) string { return fmt.Sprintf("%s:%s", principal, subjectId) } + +func (h Handler) verifyPrincipal(ctx context.Context, principal, subjectID string) error { + var err error + switch principal { + case strings.Split(schema.UserPrincipal, "/")[1]: + _, err = h.userService.Get(ctx, subjectID) + case strings.Split(schema.GroupPrincipal, "/")[1]: + _, err = h.groupService.Get(ctx, subjectID) + } + if err != nil { + switch { + case errors.Is(err, user.ErrNotExist), errors.Is(err, group.ErrNotExist): + return grpcBadBodyError + default: + return grpcInternalServerError + } + } + + return nil +} diff --git a/internal/api/v1beta1/user.go b/internal/api/v1beta1/user.go index 3453b146a..6235c0197 100644 --- a/internal/api/v1beta1/user.go +++ b/internal/api/v1beta1/user.go @@ -40,6 +40,7 @@ type UserService interface { UpdateByEmail(ctx context.Context, toUpdate user.User) (user.User, error) FetchCurrentUser(ctx context.Context) (user.User, error) CreateMetadataKey(ctx context.Context, key user.UserMetadataKey) (user.UserMetadataKey, error) + Delete(ctx context.Context, id string) error } func (h Handler) ListUsers(ctx context.Context, request *shieldv1beta1.ListUsersRequest) (*shieldv1beta1.ListUsersResponse, error) { @@ -659,3 +660,24 @@ func (h Handler) createUser(ctx context.Context, name, email string) (user.User, return createdUser, nil } + +func (h Handler) DeleteUser(ctx context.Context, request *shieldv1beta1.DeleteUserRequest) (*shieldv1beta1.DeleteUserResponse, error) { + logger := grpczap.Extract(ctx) + + if _, err := h.userService.FetchCurrentUser(ctx); err != nil { + logger.Error(err.Error()) + return nil, grpcUnauthenticated + } + + if err := h.userService.Delete(ctx, request.Id); err != nil { + logger.Error(err.Error()) + switch { + case errors.Is(err, user.ErrNotExist): + return nil, grpcBadBodyError + default: + return nil, grpcInternalServerError + } + } + + return &shieldv1beta1.DeleteUserResponse{}, nil +} diff --git a/internal/api/v1beta1/user_test.go b/internal/api/v1beta1/user_test.go index 1fea02962..cab80678a 100644 --- a/internal/api/v1beta1/user_test.go +++ b/internal/api/v1beta1/user_test.go @@ -1321,3 +1321,61 @@ func TestCreateMetadataKey(t *testing.T) { }) } } + +func TestDeleteUser(t *testing.T) { + email := "user@gotocompany.com" + table := []struct { + title string + setup func(ctx context.Context, us *mocks.UserService) context.Context + req *shieldv1beta1.DeleteUserRequest + err error + }{ + { + title: "should return unauthorized if header email is invalid", + setup: func(ctx context.Context, us *mocks.UserService) context.Context { + us.EXPECT().FetchCurrentUser(mock.AnythingOfType("*context.valueCtx")).Return(user.User{}, user.ErrInvalidEmail) + return user.SetContextWithEmail(ctx, email) + }, + req: &shieldv1beta1.DeleteUserRequest{ + Id: "test-user-id", + }, + err: grpcUnauthenticated, + }, + { + title: "should return nil error if service not returning any error", + setup: func(ctx context.Context, us *mocks.UserService) context.Context { + us.EXPECT().FetchCurrentUser(mock.AnythingOfType("*context.valueCtx")).Return(user.User{}, nil) + us.EXPECT().Delete(mock.AnythingOfType("*context.valueCtx"), "test-user-id").Return(nil) + return user.SetContextWithEmail(ctx, email) + }, + req: &shieldv1beta1.DeleteUserRequest{ + Id: "test-user-id", + }, + err: nil, + }, + { + title: "should return bad body error if service return user not exist error", + setup: func(ctx context.Context, us *mocks.UserService) context.Context { + us.EXPECT().FetchCurrentUser(mock.AnythingOfType("*context.valueCtx")).Return(user.User{}, nil) + us.EXPECT().Delete(mock.AnythingOfType("*context.valueCtx"), "test-user-id").Return(user.ErrNotExist) + return user.SetContextWithEmail(ctx, email) + }, + req: &shieldv1beta1.DeleteUserRequest{ + Id: "test-user-id", + }, + err: grpcBadBodyError, + }, + } + for _, tt := range table { + t.Run(tt.title, func(t *testing.T) { + ctx := context.TODO() + mockUserSrv := new(mocks.UserService) + if tt.setup != nil { + ctx = tt.setup(ctx, mockUserSrv) + } + mockDep := Handler{userService: mockUserSrv} + _, err := mockDep.DeleteUser(ctx, tt.req) + assert.EqualValues(t, tt.err, err) + }) + } +} diff --git a/internal/server/config.go b/internal/server/config.go index 0e70ca3a6..2b8abe2e8 100644 --- a/internal/server/config.go +++ b/internal/server/config.go @@ -68,4 +68,6 @@ type Config struct { PublicAPIPrefix string `yaml:"public_api_prefix" mapstructure:"public_api_prefix" default:"/shield"` CacheConfig inmemory.Config `yaml:"cache" mapstructure:"cache"` + + InactiveEmailTag string `yaml:"inactive_email_tag" mapstructure:"inactive_email_tag" default:"inactive"` } diff --git a/internal/store/postgres/user_repository.go b/internal/store/postgres/user_repository.go index 7dd47d948..815632024 100644 --- a/internal/store/postgres/user_repository.go +++ b/internal/store/postgres/user_repository.go @@ -50,7 +50,8 @@ func (r UserRepository) GetByID(ctx context.Context, id string) (user.User, erro var fetchedUser User userQuery, params, err := dialect.From(TABLE_USERS). Where(goqu.Ex{ - "id": id, + "id": id, + "deleted_at": nil, }).ToSQL() if err != nil { return user.User{}, fmt.Errorf("%w: %s", queryErr, err) @@ -196,6 +197,7 @@ func (r UserRepository) List(ctx context.Context, flt user.Filter) ([]user.User, goqu.C("name").ILike(fmt.Sprintf("%%%s%%", flt.Keyword)), goqu.C("email").ILike(fmt.Sprintf("%%%s%%", flt.Keyword)), ), + goqu.Ex{"deleted_at": nil}, ).Limit(uint(flt.Limit)).Offset(uint(offset)).ToSQL() if err != nil { return []user.User{}, fmt.Errorf("%w: %s", queryErr, err) @@ -315,7 +317,8 @@ func (r UserRepository) GetByIDs(ctx context.Context, userIDs []string) ([]user. query, params, err := dialect.From(TABLE_USERS).Select("id", "name", "email").Where( goqu.Ex{ - "id": goqu.Op{"in": userIDs}, + "id": goqu.Op{"in": userIDs}, + "deleted_at": nil, }).ToSQL() if err != nil { return []user.User{}, fmt.Errorf("%w: %s", queryErr, err) @@ -389,7 +392,8 @@ func (r UserRepository) UpdateByEmail(ctx context.Context, usr user.User) (user. "updated_at": goqu.L("now()"), }).Where( goqu.Ex{ - "email": usr.Email, + "email": usr.Email, + "deleted_at": nil, }, ).Returning("created_at", "deleted_at", "email", "id", "name", "updated_at").ToSQL() if err != nil { @@ -464,7 +468,8 @@ func (r UserRepository) UpdateByID(ctx context.Context, usr user.User) (user.Use "updated_at": goqu.L("now()"), }).Where( goqu.Ex{ - "id": usr.ID, + "id": usr.ID, + "deleted_at": nil, }, ).Returning("created_at", "deleted_at", "email", "id", "name", "updated_at").ToSQL() if err != nil { @@ -525,7 +530,8 @@ func (r UserRepository) GetByEmail(ctx context.Context, email string) (user.User query, params, err := dialect.From(TABLE_USERS).Where( goqu.Ex{ - "email": email, + "email": email, + "deleted_at": nil, }).ToSQL() if err != nil { return user.User{}, fmt.Errorf("%w: %s", queryErr, err) @@ -616,3 +622,72 @@ func (r UserRepository) CreateMetadataKey(ctx context.Context, key user.UserMeta return metadataKey.tranformUserMetadataKey(), nil } + +func (r UserRepository) DeleteByEmail(ctx context.Context, email string, emailTag string) error { + emailSplit := strings.Split(email, "@") + + query, params, err := dialect.Update(TABLE_USERS).Set( + goqu.Record{ + "deleted_at": goqu.L("now()"), + "email": goqu.L("CONCAT(?, (SELECT COUNT(*) FROM users WHERE ? LIKE ?), ?)", + fmt.Sprintf("%s+%s", emailSplit[0], emailTag), + goqu.C("email"), + fmt.Sprintf("%s+%s%%@%s", emailSplit[0], emailTag, emailSplit[1]), + fmt.Sprintf("@%s", emailSplit[1]), + ), + }).Where( + goqu.Ex{ + "email": email, + "deleted_at": nil, + }).ToSQL() + if err != nil { + return fmt.Errorf("%w: %s", queryErr, err) + } + + ctx = otelsql.WithCustomAttributes( + ctx, + []attribute.KeyValue{ + attribute.String("db.repository.method", "DeleteUser"), + attribute.String(string(semconv.DBSQLTableKey), TABLE_METADATA_KEYS), + }..., + ) + + if err = r.dbc.WithTimeout(ctx, func(ctx context.Context) error { + nrCtx := newrelic.FromContext(ctx) + if nrCtx != nil { + nr := newrelic.DatastoreSegment{ + Product: newrelic.DatastorePostgres, + Collection: TABLE_USERS, + Operation: "Delete", + StartTime: nrCtx.StartSegmentNow(), + } + defer nr.End() + } + + res, err := r.dbc.ExecContext(ctx, query, params...) + if err != nil { + return err + } + rowCount, err := res.RowsAffected() + if err != nil { + return err + } + if rowCount == 0 { + return sql.ErrNoRows + } + return nil + }); err != nil { + err = checkPostgresError(err) + return err + } + return nil +} + +func (r UserRepository) DeleteById(ctx context.Context, id string, emailTag string) error { + user, err := r.GetByID(ctx, id) + if err != nil { + return err + } + + return r.DeleteByEmail(ctx, user.Email, emailTag) +} diff --git a/internal/store/postgres/user_repository_test.go b/internal/store/postgres/user_repository_test.go index 5369b843f..553bb4559 100644 --- a/internal/store/postgres/user_repository_test.go +++ b/internal/store/postgres/user_repository_test.go @@ -586,6 +586,70 @@ func (s *UserRepositoryTestSuite) TestUpdateByID() { } } +func (s *UserRepositoryTestSuite) TestDeleteByEmail() { + emailTag := "inactive" + type testCase struct { + Description string + Email string + Err error + } + + testCases := []testCase{ + { + Description: "return not exist error if email not found", + Email: "random-email@gotocompany.com", + Err: user.ErrNotExist, + }, + { + Description: "return no error on delete success", + Email: s.users[0].Email, + }, + } + + for _, tc := range testCases { + s.Run(tc.Description, func() { + err := s.repository.DeleteByEmail(s.ctx, tc.Email, emailTag) + if tc.Err != nil && tc.Err.Error() != "" { + if errors.Unwrap(err) == tc.Err { + s.T().Fatalf("got error %s, expected was %s", err.Error(), tc.Err) + } + } + }) + } +} + +func (s *UserRepositoryTestSuite) TestDeleteByID() { + emailTag := "inactive" + type testCase struct { + Description string + Email string + Err error + } + + testCases := []testCase{ + { + Description: "return not exist error if id not found", + Email: uuid.NewString(), + Err: user.ErrNotExist, + }, + { + Description: "return no error on delete success", + Email: s.users[1].ID, + }, + } + + for _, tc := range testCases { + s.Run(tc.Description, func() { + err := s.repository.DeleteById(s.ctx, tc.Email, emailTag) + if tc.Err != nil && tc.Err.Error() != "" { + if errors.Unwrap(err) == tc.Err { + s.T().Fatalf("got error %s, expected was %s", err.Error(), tc.Err) + } + } + }) + } +} + func TestUserRepository(t *testing.T) { suite.Run(t, new(UserRepositoryTestSuite)) } diff --git a/proto/shield.swagger.yaml b/proto/shield.swagger.yaml index 74affa107..92b92e2c5 100644 --- a/proto/shield.swagger.yaml +++ b/proto/shield.swagger.yaml @@ -1026,6 +1026,25 @@ paths: type: string tags: - User + delete: + summary: Remove a user + operationId: ShieldService_DeleteUser + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/DeleteUserResponse' + default: + description: An unexpected error response. + schema: + $ref: '#/definitions/Status' + parameters: + - name: id + in: path + required: true + type: string + tags: + - User put: summary: Update User by ID operationId: ShieldService_UpdateUser @@ -1404,6 +1423,8 @@ definitions: properties: message: type: string + DeleteUserResponse: + type: object GetCurrentUserResponse: type: object properties: diff --git a/proto/v1beta1/shield.pb.go b/proto/v1beta1/shield.pb.go index dc5548d9a..fa4816367 100644 --- a/proto/v1beta1/shield.pb.go +++ b/proto/v1beta1/shield.pb.go @@ -998,6 +998,91 @@ func (x *ListUsersResponse) GetUsers() []*User { return nil } +type DeleteUserRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` +} + +func (x *DeleteUserRequest) Reset() { + *x = DeleteUserRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteUserRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteUserRequest) ProtoMessage() {} + +func (x *DeleteUserRequest) ProtoReflect() protoreflect.Message { + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteUserRequest.ProtoReflect.Descriptor instead. +func (*DeleteUserRequest) Descriptor() ([]byte, []int) { + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{18} +} + +func (x *DeleteUserRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type DeleteUserResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *DeleteUserResponse) Reset() { + *x = DeleteUserResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteUserResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteUserResponse) ProtoMessage() {} + +func (x *DeleteUserResponse) ProtoReflect() protoreflect.Message { + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteUserResponse.ProtoReflect.Descriptor instead. +func (*DeleteUserResponse) Descriptor() ([]byte, []int) { + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{19} +} + type GroupRequestBody struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1012,7 +1097,7 @@ type GroupRequestBody struct { func (x *GroupRequestBody) Reset() { *x = GroupRequestBody{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[18] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1025,7 +1110,7 @@ func (x *GroupRequestBody) String() string { func (*GroupRequestBody) ProtoMessage() {} func (x *GroupRequestBody) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[18] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1038,7 +1123,7 @@ func (x *GroupRequestBody) ProtoReflect() protoreflect.Message { // Deprecated: Use GroupRequestBody.ProtoReflect.Descriptor instead. func (*GroupRequestBody) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{18} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{20} } func (x *GroupRequestBody) GetName() string { @@ -1080,7 +1165,7 @@ type CreateGroupRequest struct { func (x *CreateGroupRequest) Reset() { *x = CreateGroupRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[19] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1093,7 +1178,7 @@ func (x *CreateGroupRequest) String() string { func (*CreateGroupRequest) ProtoMessage() {} func (x *CreateGroupRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[19] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1106,7 +1191,7 @@ func (x *CreateGroupRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateGroupRequest.ProtoReflect.Descriptor instead. func (*CreateGroupRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{19} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{21} } func (x *CreateGroupRequest) GetBody() *GroupRequestBody { @@ -1127,7 +1212,7 @@ type ListUserGroupsResponse struct { func (x *ListUserGroupsResponse) Reset() { *x = ListUserGroupsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[20] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1140,7 +1225,7 @@ func (x *ListUserGroupsResponse) String() string { func (*ListUserGroupsResponse) ProtoMessage() {} func (x *ListUserGroupsResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[20] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1153,7 +1238,7 @@ func (x *ListUserGroupsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListUserGroupsResponse.ProtoReflect.Descriptor instead. func (*ListUserGroupsResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{20} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{22} } func (x *ListUserGroupsResponse) GetGroups() []*Group { @@ -1180,7 +1265,7 @@ type Group struct { func (x *Group) Reset() { *x = Group{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[21] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1193,7 +1278,7 @@ func (x *Group) String() string { func (*Group) ProtoMessage() {} func (x *Group) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[21] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1206,7 +1291,7 @@ func (x *Group) ProtoReflect() protoreflect.Message { // Deprecated: Use Group.ProtoReflect.Descriptor instead. func (*Group) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{21} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{23} } func (x *Group) GetId() string { @@ -1269,7 +1354,7 @@ type CreateGroupResponse struct { func (x *CreateGroupResponse) Reset() { *x = CreateGroupResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[22] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1282,7 +1367,7 @@ func (x *CreateGroupResponse) String() string { func (*CreateGroupResponse) ProtoMessage() {} func (x *CreateGroupResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[22] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1295,7 +1380,7 @@ func (x *CreateGroupResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateGroupResponse.ProtoReflect.Descriptor instead. func (*CreateGroupResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{22} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{24} } func (x *CreateGroupResponse) GetGroup() *Group { @@ -1316,7 +1401,7 @@ type GetGroupResponse struct { func (x *GetGroupResponse) Reset() { *x = GetGroupResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[23] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1329,7 +1414,7 @@ func (x *GetGroupResponse) String() string { func (*GetGroupResponse) ProtoMessage() {} func (x *GetGroupResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[23] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1342,7 +1427,7 @@ func (x *GetGroupResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGroupResponse.ProtoReflect.Descriptor instead. func (*GetGroupResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{23} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{25} } func (x *GetGroupResponse) GetGroup() *Group { @@ -1363,7 +1448,7 @@ type UpdateGroupResponse struct { func (x *UpdateGroupResponse) Reset() { *x = UpdateGroupResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[24] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1376,7 +1461,7 @@ func (x *UpdateGroupResponse) String() string { func (*UpdateGroupResponse) ProtoMessage() {} func (x *UpdateGroupResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[24] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1389,7 +1474,7 @@ func (x *UpdateGroupResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateGroupResponse.ProtoReflect.Descriptor instead. func (*UpdateGroupResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{24} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{26} } func (x *UpdateGroupResponse) GetGroup() *Group { @@ -1411,7 +1496,7 @@ type UpdateGroupRequest struct { func (x *UpdateGroupRequest) Reset() { *x = UpdateGroupRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[25] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1424,7 +1509,7 @@ func (x *UpdateGroupRequest) String() string { func (*UpdateGroupRequest) ProtoMessage() {} func (x *UpdateGroupRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[25] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1437,7 +1522,7 @@ func (x *UpdateGroupRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateGroupRequest.ProtoReflect.Descriptor instead. func (*UpdateGroupRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{25} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{27} } func (x *UpdateGroupRequest) GetId() string { @@ -1465,7 +1550,7 @@ type UpdateCurrentUserRequest struct { func (x *UpdateCurrentUserRequest) Reset() { *x = UpdateCurrentUserRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[26] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1478,7 +1563,7 @@ func (x *UpdateCurrentUserRequest) String() string { func (*UpdateCurrentUserRequest) ProtoMessage() {} func (x *UpdateCurrentUserRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[26] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1491,7 +1576,7 @@ func (x *UpdateCurrentUserRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateCurrentUserRequest.ProtoReflect.Descriptor instead. func (*UpdateCurrentUserRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{26} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{28} } func (x *UpdateCurrentUserRequest) GetBody() *UserRequestBody { @@ -1512,7 +1597,7 @@ type GetGroupRequest struct { func (x *GetGroupRequest) Reset() { *x = GetGroupRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[27] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1525,7 +1610,7 @@ func (x *GetGroupRequest) String() string { func (*GetGroupRequest) ProtoMessage() {} func (x *GetGroupRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[27] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1538,7 +1623,7 @@ func (x *GetGroupRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGroupRequest.ProtoReflect.Descriptor instead. func (*GetGroupRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{27} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{29} } func (x *GetGroupRequest) GetId() string { @@ -1561,7 +1646,7 @@ type ListGroupsRequest struct { func (x *ListGroupsRequest) Reset() { *x = ListGroupsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[28] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1574,7 +1659,7 @@ func (x *ListGroupsRequest) String() string { func (*ListGroupsRequest) ProtoMessage() {} func (x *ListGroupsRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[28] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1587,7 +1672,7 @@ func (x *ListGroupsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListGroupsRequest.ProtoReflect.Descriptor instead. func (*ListGroupsRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{28} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{30} } // Deprecated: Marked as deprecated in gotocompany/shield/v1beta1/shield.proto. @@ -1616,7 +1701,7 @@ type ListGroupsResponse struct { func (x *ListGroupsResponse) Reset() { *x = ListGroupsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[29] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1629,7 +1714,7 @@ func (x *ListGroupsResponse) String() string { func (*ListGroupsResponse) ProtoMessage() {} func (x *ListGroupsResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[29] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1642,7 +1727,7 @@ func (x *ListGroupsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListGroupsResponse.ProtoReflect.Descriptor instead. func (*ListGroupsResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{29} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{31} } func (x *ListGroupsResponse) GetGroups() []*Group { @@ -1671,7 +1756,7 @@ type Role struct { func (x *Role) Reset() { *x = Role{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[30] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1684,7 +1769,7 @@ func (x *Role) String() string { func (*Role) ProtoMessage() {} func (x *Role) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[30] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1697,7 +1782,7 @@ func (x *Role) ProtoReflect() protoreflect.Message { // Deprecated: Use Role.ProtoReflect.Descriptor instead. func (*Role) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{30} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{32} } func (x *Role) GetId() string { @@ -1772,7 +1857,7 @@ type RoleRequestBody struct { func (x *RoleRequestBody) Reset() { *x = RoleRequestBody{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[31] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1785,7 +1870,7 @@ func (x *RoleRequestBody) String() string { func (*RoleRequestBody) ProtoMessage() {} func (x *RoleRequestBody) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[31] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1798,7 +1883,7 @@ func (x *RoleRequestBody) ProtoReflect() protoreflect.Message { // Deprecated: Use RoleRequestBody.ProtoReflect.Descriptor instead. func (*RoleRequestBody) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{31} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{33} } func (x *RoleRequestBody) GetId() string { @@ -1847,7 +1932,7 @@ type CreateRoleRequest struct { func (x *CreateRoleRequest) Reset() { *x = CreateRoleRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[32] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1860,7 +1945,7 @@ func (x *CreateRoleRequest) String() string { func (*CreateRoleRequest) ProtoMessage() {} func (x *CreateRoleRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[32] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1873,7 +1958,7 @@ func (x *CreateRoleRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateRoleRequest.ProtoReflect.Descriptor instead. func (*CreateRoleRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{32} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{34} } func (x *CreateRoleRequest) GetBody() *RoleRequestBody { @@ -1894,7 +1979,7 @@ type CreateRoleResponse struct { func (x *CreateRoleResponse) Reset() { *x = CreateRoleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[33] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1907,7 +1992,7 @@ func (x *CreateRoleResponse) String() string { func (*CreateRoleResponse) ProtoMessage() {} func (x *CreateRoleResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[33] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1920,7 +2005,7 @@ func (x *CreateRoleResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateRoleResponse.ProtoReflect.Descriptor instead. func (*CreateRoleResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{33} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{35} } func (x *CreateRoleResponse) GetRole() *Role { @@ -1941,7 +2026,7 @@ type GetRoleResponse struct { func (x *GetRoleResponse) Reset() { *x = GetRoleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[34] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1954,7 +2039,7 @@ func (x *GetRoleResponse) String() string { func (*GetRoleResponse) ProtoMessage() {} func (x *GetRoleResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[34] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1967,7 +2052,7 @@ func (x *GetRoleResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRoleResponse.ProtoReflect.Descriptor instead. func (*GetRoleResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{34} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{36} } func (x *GetRoleResponse) GetRole() *Role { @@ -1988,7 +2073,7 @@ type UpdateRoleResponse struct { func (x *UpdateRoleResponse) Reset() { *x = UpdateRoleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[35] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2001,7 +2086,7 @@ func (x *UpdateRoleResponse) String() string { func (*UpdateRoleResponse) ProtoMessage() {} func (x *UpdateRoleResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[35] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2014,7 +2099,7 @@ func (x *UpdateRoleResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateRoleResponse.ProtoReflect.Descriptor instead. func (*UpdateRoleResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{35} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{37} } func (x *UpdateRoleResponse) GetRole() *Role { @@ -2035,7 +2120,7 @@ type GetRoleRequest struct { func (x *GetRoleRequest) Reset() { *x = GetRoleRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[36] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2048,7 +2133,7 @@ func (x *GetRoleRequest) String() string { func (*GetRoleRequest) ProtoMessage() {} func (x *GetRoleRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[36] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2061,7 +2146,7 @@ func (x *GetRoleRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRoleRequest.ProtoReflect.Descriptor instead. func (*GetRoleRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{36} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{38} } func (x *GetRoleRequest) GetId() string { @@ -2083,7 +2168,7 @@ type UpdateRoleRequest struct { func (x *UpdateRoleRequest) Reset() { *x = UpdateRoleRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[37] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2096,7 +2181,7 @@ func (x *UpdateRoleRequest) String() string { func (*UpdateRoleRequest) ProtoMessage() {} func (x *UpdateRoleRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[37] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2109,7 +2194,7 @@ func (x *UpdateRoleRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateRoleRequest.ProtoReflect.Descriptor instead. func (*UpdateRoleRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{37} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{39} } func (x *UpdateRoleRequest) GetId() string { @@ -2135,7 +2220,7 @@ type ListRolesRequest struct { func (x *ListRolesRequest) Reset() { *x = ListRolesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[38] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2148,7 +2233,7 @@ func (x *ListRolesRequest) String() string { func (*ListRolesRequest) ProtoMessage() {} func (x *ListRolesRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[38] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2161,7 +2246,7 @@ func (x *ListRolesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListRolesRequest.ProtoReflect.Descriptor instead. func (*ListRolesRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{38} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{40} } type ListRolesResponse struct { @@ -2175,7 +2260,7 @@ type ListRolesResponse struct { func (x *ListRolesResponse) Reset() { *x = ListRolesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[39] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2188,7 +2273,7 @@ func (x *ListRolesResponse) String() string { func (*ListRolesResponse) ProtoMessage() {} func (x *ListRolesResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[39] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2201,7 +2286,7 @@ func (x *ListRolesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListRolesResponse.ProtoReflect.Descriptor instead. func (*ListRolesResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{39} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{41} } func (x *ListRolesResponse) GetRoles() []*Role { @@ -2224,7 +2309,7 @@ type OrganizationRequestBody struct { func (x *OrganizationRequestBody) Reset() { *x = OrganizationRequestBody{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[40] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2237,7 +2322,7 @@ func (x *OrganizationRequestBody) String() string { func (*OrganizationRequestBody) ProtoMessage() {} func (x *OrganizationRequestBody) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[40] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2250,7 +2335,7 @@ func (x *OrganizationRequestBody) ProtoReflect() protoreflect.Message { // Deprecated: Use OrganizationRequestBody.ProtoReflect.Descriptor instead. func (*OrganizationRequestBody) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{40} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{42} } func (x *OrganizationRequestBody) GetName() string { @@ -2285,7 +2370,7 @@ type CreateOrganizationRequest struct { func (x *CreateOrganizationRequest) Reset() { *x = CreateOrganizationRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[41] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2298,7 +2383,7 @@ func (x *CreateOrganizationRequest) String() string { func (*CreateOrganizationRequest) ProtoMessage() {} func (x *CreateOrganizationRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[41] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2311,7 +2396,7 @@ func (x *CreateOrganizationRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateOrganizationRequest.ProtoReflect.Descriptor instead. func (*CreateOrganizationRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{41} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{43} } func (x *CreateOrganizationRequest) GetBody() *OrganizationRequestBody { @@ -2337,7 +2422,7 @@ type Organization struct { func (x *Organization) Reset() { *x = Organization{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[42] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2350,7 +2435,7 @@ func (x *Organization) String() string { func (*Organization) ProtoMessage() {} func (x *Organization) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[42] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2363,7 +2448,7 @@ func (x *Organization) ProtoReflect() protoreflect.Message { // Deprecated: Use Organization.ProtoReflect.Descriptor instead. func (*Organization) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{42} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{44} } func (x *Organization) GetId() string { @@ -2419,7 +2504,7 @@ type CreateOrganizationResponse struct { func (x *CreateOrganizationResponse) Reset() { *x = CreateOrganizationResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[43] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2432,7 +2517,7 @@ func (x *CreateOrganizationResponse) String() string { func (*CreateOrganizationResponse) ProtoMessage() {} func (x *CreateOrganizationResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[43] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2445,7 +2530,7 @@ func (x *CreateOrganizationResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateOrganizationResponse.ProtoReflect.Descriptor instead. func (*CreateOrganizationResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{43} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{45} } func (x *CreateOrganizationResponse) GetOrganization() *Organization { @@ -2466,7 +2551,7 @@ type GetOrganizationResponse struct { func (x *GetOrganizationResponse) Reset() { *x = GetOrganizationResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[44] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2479,7 +2564,7 @@ func (x *GetOrganizationResponse) String() string { func (*GetOrganizationResponse) ProtoMessage() {} func (x *GetOrganizationResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[44] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2492,7 +2577,7 @@ func (x *GetOrganizationResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetOrganizationResponse.ProtoReflect.Descriptor instead. func (*GetOrganizationResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{44} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{46} } func (x *GetOrganizationResponse) GetOrganization() *Organization { @@ -2513,7 +2598,7 @@ type UpdateOrganizationResponse struct { func (x *UpdateOrganizationResponse) Reset() { *x = UpdateOrganizationResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[45] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2526,7 +2611,7 @@ func (x *UpdateOrganizationResponse) String() string { func (*UpdateOrganizationResponse) ProtoMessage() {} func (x *UpdateOrganizationResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[45] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2539,7 +2624,7 @@ func (x *UpdateOrganizationResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateOrganizationResponse.ProtoReflect.Descriptor instead. func (*UpdateOrganizationResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{45} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{47} } func (x *UpdateOrganizationResponse) GetOrganization() *Organization { @@ -2558,7 +2643,7 @@ type ListOrganizationsRequest struct { func (x *ListOrganizationsRequest) Reset() { *x = ListOrganizationsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[46] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2571,7 +2656,7 @@ func (x *ListOrganizationsRequest) String() string { func (*ListOrganizationsRequest) ProtoMessage() {} func (x *ListOrganizationsRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[46] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2584,7 +2669,7 @@ func (x *ListOrganizationsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListOrganizationsRequest.ProtoReflect.Descriptor instead. func (*ListOrganizationsRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{46} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{48} } type ListOrganizationsResponse struct { @@ -2598,7 +2683,7 @@ type ListOrganizationsResponse struct { func (x *ListOrganizationsResponse) Reset() { *x = ListOrganizationsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[47] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2611,7 +2696,7 @@ func (x *ListOrganizationsResponse) String() string { func (*ListOrganizationsResponse) ProtoMessage() {} func (x *ListOrganizationsResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[47] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2624,7 +2709,7 @@ func (x *ListOrganizationsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListOrganizationsResponse.ProtoReflect.Descriptor instead. func (*ListOrganizationsResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{47} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{49} } func (x *ListOrganizationsResponse) GetOrganizations() []*Organization { @@ -2645,7 +2730,7 @@ type GetOrganizationRequest struct { func (x *GetOrganizationRequest) Reset() { *x = GetOrganizationRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[48] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2658,7 +2743,7 @@ func (x *GetOrganizationRequest) String() string { func (*GetOrganizationRequest) ProtoMessage() {} func (x *GetOrganizationRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[48] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2671,7 +2756,7 @@ func (x *GetOrganizationRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetOrganizationRequest.ProtoReflect.Descriptor instead. func (*GetOrganizationRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{48} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{50} } func (x *GetOrganizationRequest) GetId() string { @@ -2693,7 +2778,7 @@ type UpdateOrganizationRequest struct { func (x *UpdateOrganizationRequest) Reset() { *x = UpdateOrganizationRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[49] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2706,7 +2791,7 @@ func (x *UpdateOrganizationRequest) String() string { func (*UpdateOrganizationRequest) ProtoMessage() {} func (x *UpdateOrganizationRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[49] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2719,7 +2804,7 @@ func (x *UpdateOrganizationRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateOrganizationRequest.ProtoReflect.Descriptor instead. func (*UpdateOrganizationRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{49} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{51} } func (x *UpdateOrganizationRequest) GetId() string { @@ -2747,7 +2832,7 @@ type ListOrganizationAdminsRequest struct { func (x *ListOrganizationAdminsRequest) Reset() { *x = ListOrganizationAdminsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[50] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2760,7 +2845,7 @@ func (x *ListOrganizationAdminsRequest) String() string { func (*ListOrganizationAdminsRequest) ProtoMessage() {} func (x *ListOrganizationAdminsRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[50] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2773,7 +2858,7 @@ func (x *ListOrganizationAdminsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListOrganizationAdminsRequest.ProtoReflect.Descriptor instead. func (*ListOrganizationAdminsRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{50} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{52} } func (x *ListOrganizationAdminsRequest) GetId() string { @@ -2794,7 +2879,7 @@ type ListOrganizationAdminsResponse struct { func (x *ListOrganizationAdminsResponse) Reset() { *x = ListOrganizationAdminsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[51] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2807,7 +2892,7 @@ func (x *ListOrganizationAdminsResponse) String() string { func (*ListOrganizationAdminsResponse) ProtoMessage() {} func (x *ListOrganizationAdminsResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[51] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2820,7 +2905,7 @@ func (x *ListOrganizationAdminsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListOrganizationAdminsResponse.ProtoReflect.Descriptor instead. func (*ListOrganizationAdminsResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{51} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{53} } func (x *ListOrganizationAdminsResponse) GetUsers() []*User { @@ -2844,7 +2929,7 @@ type ProjectRequestBody struct { func (x *ProjectRequestBody) Reset() { *x = ProjectRequestBody{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[52] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2857,7 +2942,7 @@ func (x *ProjectRequestBody) String() string { func (*ProjectRequestBody) ProtoMessage() {} func (x *ProjectRequestBody) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[52] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2870,7 +2955,7 @@ func (x *ProjectRequestBody) ProtoReflect() protoreflect.Message { // Deprecated: Use ProjectRequestBody.ProtoReflect.Descriptor instead. func (*ProjectRequestBody) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{52} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{54} } func (x *ProjectRequestBody) GetName() string { @@ -2912,7 +2997,7 @@ type CreateProjectRequest struct { func (x *CreateProjectRequest) Reset() { *x = CreateProjectRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[53] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2925,7 +3010,7 @@ func (x *CreateProjectRequest) String() string { func (*CreateProjectRequest) ProtoMessage() {} func (x *CreateProjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[53] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2938,7 +3023,7 @@ func (x *CreateProjectRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateProjectRequest.ProtoReflect.Descriptor instead. func (*CreateProjectRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{53} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{55} } func (x *CreateProjectRequest) GetBody() *ProjectRequestBody { @@ -2965,7 +3050,7 @@ type Project struct { func (x *Project) Reset() { *x = Project{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[54] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2978,7 +3063,7 @@ func (x *Project) String() string { func (*Project) ProtoMessage() {} func (x *Project) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[54] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2991,7 +3076,7 @@ func (x *Project) ProtoReflect() protoreflect.Message { // Deprecated: Use Project.ProtoReflect.Descriptor instead. func (*Project) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{54} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{56} } func (x *Project) GetId() string { @@ -3054,7 +3139,7 @@ type CreateProjectResponse struct { func (x *CreateProjectResponse) Reset() { *x = CreateProjectResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[55] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3067,7 +3152,7 @@ func (x *CreateProjectResponse) String() string { func (*CreateProjectResponse) ProtoMessage() {} func (x *CreateProjectResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[55] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3080,7 +3165,7 @@ func (x *CreateProjectResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateProjectResponse.ProtoReflect.Descriptor instead. func (*CreateProjectResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{55} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{57} } func (x *CreateProjectResponse) GetProject() *Project { @@ -3101,7 +3186,7 @@ type GetProjectResponse struct { func (x *GetProjectResponse) Reset() { *x = GetProjectResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[56] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3114,7 +3199,7 @@ func (x *GetProjectResponse) String() string { func (*GetProjectResponse) ProtoMessage() {} func (x *GetProjectResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[56] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3127,7 +3212,7 @@ func (x *GetProjectResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetProjectResponse.ProtoReflect.Descriptor instead. func (*GetProjectResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{56} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{58} } func (x *GetProjectResponse) GetProject() *Project { @@ -3148,7 +3233,7 @@ type UpdateProjectResponse struct { func (x *UpdateProjectResponse) Reset() { *x = UpdateProjectResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[57] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3161,7 +3246,7 @@ func (x *UpdateProjectResponse) String() string { func (*UpdateProjectResponse) ProtoMessage() {} func (x *UpdateProjectResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[57] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3174,7 +3259,7 @@ func (x *UpdateProjectResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateProjectResponse.ProtoReflect.Descriptor instead. func (*UpdateProjectResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{57} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{59} } func (x *UpdateProjectResponse) GetProject() *Project { @@ -3193,7 +3278,7 @@ type ListProjectsRequest struct { func (x *ListProjectsRequest) Reset() { *x = ListProjectsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[58] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3206,7 +3291,7 @@ func (x *ListProjectsRequest) String() string { func (*ListProjectsRequest) ProtoMessage() {} func (x *ListProjectsRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[58] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3219,7 +3304,7 @@ func (x *ListProjectsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListProjectsRequest.ProtoReflect.Descriptor instead. func (*ListProjectsRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{58} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{60} } type ListProjectsResponse struct { @@ -3233,7 +3318,7 @@ type ListProjectsResponse struct { func (x *ListProjectsResponse) Reset() { *x = ListProjectsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[59] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3246,7 +3331,7 @@ func (x *ListProjectsResponse) String() string { func (*ListProjectsResponse) ProtoMessage() {} func (x *ListProjectsResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[59] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3259,7 +3344,7 @@ func (x *ListProjectsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListProjectsResponse.ProtoReflect.Descriptor instead. func (*ListProjectsResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{59} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{61} } func (x *ListProjectsResponse) GetProjects() []*Project { @@ -3280,7 +3365,7 @@ type GetProjectRequest struct { func (x *GetProjectRequest) Reset() { *x = GetProjectRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[60] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3293,7 +3378,7 @@ func (x *GetProjectRequest) String() string { func (*GetProjectRequest) ProtoMessage() {} func (x *GetProjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[60] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3306,7 +3391,7 @@ func (x *GetProjectRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetProjectRequest.ProtoReflect.Descriptor instead. func (*GetProjectRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{60} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{62} } func (x *GetProjectRequest) GetId() string { @@ -3328,7 +3413,7 @@ type UpdateProjectRequest struct { func (x *UpdateProjectRequest) Reset() { *x = UpdateProjectRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[61] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3341,7 +3426,7 @@ func (x *UpdateProjectRequest) String() string { func (*UpdateProjectRequest) ProtoMessage() {} func (x *UpdateProjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[61] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3354,7 +3439,7 @@ func (x *UpdateProjectRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateProjectRequest.ProtoReflect.Descriptor instead. func (*UpdateProjectRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{61} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{63} } func (x *UpdateProjectRequest) GetId() string { @@ -3382,7 +3467,7 @@ type ListProjectAdminsRequest struct { func (x *ListProjectAdminsRequest) Reset() { *x = ListProjectAdminsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[62] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3395,7 +3480,7 @@ func (x *ListProjectAdminsRequest) String() string { func (*ListProjectAdminsRequest) ProtoMessage() {} func (x *ListProjectAdminsRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[62] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3408,7 +3493,7 @@ func (x *ListProjectAdminsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListProjectAdminsRequest.ProtoReflect.Descriptor instead. func (*ListProjectAdminsRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{62} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{64} } func (x *ListProjectAdminsRequest) GetId() string { @@ -3429,7 +3514,7 @@ type ListProjectAdminsResponse struct { func (x *ListProjectAdminsResponse) Reset() { *x = ListProjectAdminsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[63] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3442,7 +3527,7 @@ func (x *ListProjectAdminsResponse) String() string { func (*ListProjectAdminsResponse) ProtoMessage() {} func (x *ListProjectAdminsResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[63] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3455,7 +3540,7 @@ func (x *ListProjectAdminsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListProjectAdminsResponse.ProtoReflect.Descriptor instead. func (*ListProjectAdminsResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{63} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{65} } func (x *ListProjectAdminsResponse) GetUsers() []*User { @@ -3482,7 +3567,7 @@ type Action struct { func (x *Action) Reset() { *x = Action{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[64] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3495,7 +3580,7 @@ func (x *Action) String() string { func (*Action) ProtoMessage() {} func (x *Action) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[64] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3508,7 +3593,7 @@ func (x *Action) ProtoReflect() protoreflect.Message { // Deprecated: Use Action.ProtoReflect.Descriptor instead. func (*Action) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{64} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{66} } func (x *Action) GetId() string { @@ -3568,7 +3653,7 @@ type Namespace struct { func (x *Namespace) Reset() { *x = Namespace{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[65] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3581,7 +3666,7 @@ func (x *Namespace) String() string { func (*Namespace) ProtoMessage() {} func (x *Namespace) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[65] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3594,7 +3679,7 @@ func (x *Namespace) ProtoReflect() protoreflect.Message { // Deprecated: Use Namespace.ProtoReflect.Descriptor instead. func (*Namespace) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{65} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{67} } func (x *Namespace) GetId() string { @@ -3647,7 +3732,7 @@ type Policy struct { func (x *Policy) Reset() { *x = Policy{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[66] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3660,7 +3745,7 @@ func (x *Policy) String() string { func (*Policy) ProtoMessage() {} func (x *Policy) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[66] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3673,7 +3758,7 @@ func (x *Policy) ProtoReflect() protoreflect.Message { // Deprecated: Use Policy.ProtoReflect.Descriptor instead. func (*Policy) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{66} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{68} } func (x *Policy) GetId() string { @@ -3755,7 +3840,7 @@ type ActionRequestBody struct { func (x *ActionRequestBody) Reset() { *x = ActionRequestBody{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[67] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3768,7 +3853,7 @@ func (x *ActionRequestBody) String() string { func (*ActionRequestBody) ProtoMessage() {} func (x *ActionRequestBody) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[67] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3781,7 +3866,7 @@ func (x *ActionRequestBody) ProtoReflect() protoreflect.Message { // Deprecated: Use ActionRequestBody.ProtoReflect.Descriptor instead. func (*ActionRequestBody) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{67} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{69} } func (x *ActionRequestBody) GetId() string { @@ -3817,7 +3902,7 @@ type NamespaceRequestBody struct { func (x *NamespaceRequestBody) Reset() { *x = NamespaceRequestBody{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[68] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3830,7 +3915,7 @@ func (x *NamespaceRequestBody) String() string { func (*NamespaceRequestBody) ProtoMessage() {} func (x *NamespaceRequestBody) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[68] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3843,7 +3928,7 @@ func (x *NamespaceRequestBody) ProtoReflect() protoreflect.Message { // Deprecated: Use NamespaceRequestBody.ProtoReflect.Descriptor instead. func (*NamespaceRequestBody) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{68} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{70} } func (x *NamespaceRequestBody) GetId() string { @@ -3873,7 +3958,7 @@ type PolicyRequestBody struct { func (x *PolicyRequestBody) Reset() { *x = PolicyRequestBody{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[69] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3886,7 +3971,7 @@ func (x *PolicyRequestBody) String() string { func (*PolicyRequestBody) ProtoMessage() {} func (x *PolicyRequestBody) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[69] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3899,7 +3984,7 @@ func (x *PolicyRequestBody) ProtoReflect() protoreflect.Message { // Deprecated: Use PolicyRequestBody.ProtoReflect.Descriptor instead. func (*PolicyRequestBody) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{69} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{71} } func (x *PolicyRequestBody) GetRoleId() string { @@ -3932,7 +4017,7 @@ type ListActionsRequest struct { func (x *ListActionsRequest) Reset() { *x = ListActionsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[70] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3945,7 +4030,7 @@ func (x *ListActionsRequest) String() string { func (*ListActionsRequest) ProtoMessage() {} func (x *ListActionsRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[70] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3958,7 +4043,7 @@ func (x *ListActionsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListActionsRequest.ProtoReflect.Descriptor instead. func (*ListActionsRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{70} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{72} } type ListActionsResponse struct { @@ -3972,7 +4057,7 @@ type ListActionsResponse struct { func (x *ListActionsResponse) Reset() { *x = ListActionsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[71] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3985,7 +4070,7 @@ func (x *ListActionsResponse) String() string { func (*ListActionsResponse) ProtoMessage() {} func (x *ListActionsResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[71] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3998,7 +4083,7 @@ func (x *ListActionsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListActionsResponse.ProtoReflect.Descriptor instead. func (*ListActionsResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{71} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{73} } func (x *ListActionsResponse) GetActions() []*Action { @@ -4019,7 +4104,7 @@ type CreateActionRequest struct { func (x *CreateActionRequest) Reset() { *x = CreateActionRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[72] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4032,7 +4117,7 @@ func (x *CreateActionRequest) String() string { func (*CreateActionRequest) ProtoMessage() {} func (x *CreateActionRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[72] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4045,7 +4130,7 @@ func (x *CreateActionRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateActionRequest.ProtoReflect.Descriptor instead. func (*CreateActionRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{72} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{74} } func (x *CreateActionRequest) GetBody() *ActionRequestBody { @@ -4066,7 +4151,7 @@ type CreateActionResponse struct { func (x *CreateActionResponse) Reset() { *x = CreateActionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[73] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4079,7 +4164,7 @@ func (x *CreateActionResponse) String() string { func (*CreateActionResponse) ProtoMessage() {} func (x *CreateActionResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[73] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4092,7 +4177,7 @@ func (x *CreateActionResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateActionResponse.ProtoReflect.Descriptor instead. func (*CreateActionResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{73} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{75} } func (x *CreateActionResponse) GetAction() *Action { @@ -4113,7 +4198,7 @@ type GetActionRequest struct { func (x *GetActionRequest) Reset() { *x = GetActionRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[74] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4126,7 +4211,7 @@ func (x *GetActionRequest) String() string { func (*GetActionRequest) ProtoMessage() {} func (x *GetActionRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[74] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4139,7 +4224,7 @@ func (x *GetActionRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetActionRequest.ProtoReflect.Descriptor instead. func (*GetActionRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{74} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{76} } func (x *GetActionRequest) GetId() string { @@ -4160,7 +4245,7 @@ type GetActionResponse struct { func (x *GetActionResponse) Reset() { *x = GetActionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[75] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4173,7 +4258,7 @@ func (x *GetActionResponse) String() string { func (*GetActionResponse) ProtoMessage() {} func (x *GetActionResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[75] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4186,7 +4271,7 @@ func (x *GetActionResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetActionResponse.ProtoReflect.Descriptor instead. func (*GetActionResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{75} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{77} } func (x *GetActionResponse) GetAction() *Action { @@ -4208,7 +4293,7 @@ type UpdateActionRequest struct { func (x *UpdateActionRequest) Reset() { *x = UpdateActionRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[76] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4221,7 +4306,7 @@ func (x *UpdateActionRequest) String() string { func (*UpdateActionRequest) ProtoMessage() {} func (x *UpdateActionRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[76] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4234,7 +4319,7 @@ func (x *UpdateActionRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateActionRequest.ProtoReflect.Descriptor instead. func (*UpdateActionRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{76} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{78} } func (x *UpdateActionRequest) GetId() string { @@ -4262,7 +4347,7 @@ type UpdateActionResponse struct { func (x *UpdateActionResponse) Reset() { *x = UpdateActionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[77] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4275,7 +4360,7 @@ func (x *UpdateActionResponse) String() string { func (*UpdateActionResponse) ProtoMessage() {} func (x *UpdateActionResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[77] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4288,7 +4373,7 @@ func (x *UpdateActionResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateActionResponse.ProtoReflect.Descriptor instead. func (*UpdateActionResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{77} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{79} } func (x *UpdateActionResponse) GetAction() *Action { @@ -4307,7 +4392,7 @@ type ListNamespacesRequest struct { func (x *ListNamespacesRequest) Reset() { *x = ListNamespacesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[78] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4320,7 +4405,7 @@ func (x *ListNamespacesRequest) String() string { func (*ListNamespacesRequest) ProtoMessage() {} func (x *ListNamespacesRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[78] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4333,7 +4418,7 @@ func (x *ListNamespacesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListNamespacesRequest.ProtoReflect.Descriptor instead. func (*ListNamespacesRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{78} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{80} } type ListNamespacesResponse struct { @@ -4347,7 +4432,7 @@ type ListNamespacesResponse struct { func (x *ListNamespacesResponse) Reset() { *x = ListNamespacesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[79] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4360,7 +4445,7 @@ func (x *ListNamespacesResponse) String() string { func (*ListNamespacesResponse) ProtoMessage() {} func (x *ListNamespacesResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[79] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4373,7 +4458,7 @@ func (x *ListNamespacesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListNamespacesResponse.ProtoReflect.Descriptor instead. func (*ListNamespacesResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{79} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{81} } func (x *ListNamespacesResponse) GetNamespaces() []*Namespace { @@ -4394,7 +4479,7 @@ type CreateNamespaceRequest struct { func (x *CreateNamespaceRequest) Reset() { *x = CreateNamespaceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[80] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4407,7 +4492,7 @@ func (x *CreateNamespaceRequest) String() string { func (*CreateNamespaceRequest) ProtoMessage() {} func (x *CreateNamespaceRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[80] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4420,7 +4505,7 @@ func (x *CreateNamespaceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateNamespaceRequest.ProtoReflect.Descriptor instead. func (*CreateNamespaceRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{80} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{82} } func (x *CreateNamespaceRequest) GetBody() *NamespaceRequestBody { @@ -4441,7 +4526,7 @@ type CreateNamespaceResponse struct { func (x *CreateNamespaceResponse) Reset() { *x = CreateNamespaceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[81] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4454,7 +4539,7 @@ func (x *CreateNamespaceResponse) String() string { func (*CreateNamespaceResponse) ProtoMessage() {} func (x *CreateNamespaceResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[81] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4467,7 +4552,7 @@ func (x *CreateNamespaceResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateNamespaceResponse.ProtoReflect.Descriptor instead. func (*CreateNamespaceResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{81} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{83} } func (x *CreateNamespaceResponse) GetNamespace() *Namespace { @@ -4488,7 +4573,7 @@ type GetNamespaceRequest struct { func (x *GetNamespaceRequest) Reset() { *x = GetNamespaceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[82] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4501,7 +4586,7 @@ func (x *GetNamespaceRequest) String() string { func (*GetNamespaceRequest) ProtoMessage() {} func (x *GetNamespaceRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[82] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4514,7 +4599,7 @@ func (x *GetNamespaceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetNamespaceRequest.ProtoReflect.Descriptor instead. func (*GetNamespaceRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{82} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{84} } func (x *GetNamespaceRequest) GetId() string { @@ -4535,7 +4620,7 @@ type GetNamespaceResponse struct { func (x *GetNamespaceResponse) Reset() { *x = GetNamespaceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[83] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4548,7 +4633,7 @@ func (x *GetNamespaceResponse) String() string { func (*GetNamespaceResponse) ProtoMessage() {} func (x *GetNamespaceResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[83] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4561,7 +4646,7 @@ func (x *GetNamespaceResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetNamespaceResponse.ProtoReflect.Descriptor instead. func (*GetNamespaceResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{83} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{85} } func (x *GetNamespaceResponse) GetNamespace() *Namespace { @@ -4583,7 +4668,7 @@ type UpdateNamespaceRequest struct { func (x *UpdateNamespaceRequest) Reset() { *x = UpdateNamespaceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[84] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4596,7 +4681,7 @@ func (x *UpdateNamespaceRequest) String() string { func (*UpdateNamespaceRequest) ProtoMessage() {} func (x *UpdateNamespaceRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[84] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4609,7 +4694,7 @@ func (x *UpdateNamespaceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateNamespaceRequest.ProtoReflect.Descriptor instead. func (*UpdateNamespaceRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{84} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{86} } func (x *UpdateNamespaceRequest) GetId() string { @@ -4637,7 +4722,7 @@ type UpdateNamespaceResponse struct { func (x *UpdateNamespaceResponse) Reset() { *x = UpdateNamespaceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[85] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4650,7 +4735,7 @@ func (x *UpdateNamespaceResponse) String() string { func (*UpdateNamespaceResponse) ProtoMessage() {} func (x *UpdateNamespaceResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[85] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4663,7 +4748,7 @@ func (x *UpdateNamespaceResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateNamespaceResponse.ProtoReflect.Descriptor instead. func (*UpdateNamespaceResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{85} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{87} } func (x *UpdateNamespaceResponse) GetNamespace() *Namespace { @@ -4682,7 +4767,7 @@ type ListPoliciesRequest struct { func (x *ListPoliciesRequest) Reset() { *x = ListPoliciesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[86] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4695,7 +4780,7 @@ func (x *ListPoliciesRequest) String() string { func (*ListPoliciesRequest) ProtoMessage() {} func (x *ListPoliciesRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[86] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4708,7 +4793,7 @@ func (x *ListPoliciesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListPoliciesRequest.ProtoReflect.Descriptor instead. func (*ListPoliciesRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{86} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{88} } type ListPoliciesResponse struct { @@ -4722,7 +4807,7 @@ type ListPoliciesResponse struct { func (x *ListPoliciesResponse) Reset() { *x = ListPoliciesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[87] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4735,7 +4820,7 @@ func (x *ListPoliciesResponse) String() string { func (*ListPoliciesResponse) ProtoMessage() {} func (x *ListPoliciesResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[87] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4748,7 +4833,7 @@ func (x *ListPoliciesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListPoliciesResponse.ProtoReflect.Descriptor instead. func (*ListPoliciesResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{87} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{89} } func (x *ListPoliciesResponse) GetPolicies() []*Policy { @@ -4769,7 +4854,7 @@ type CreatePolicyRequest struct { func (x *CreatePolicyRequest) Reset() { *x = CreatePolicyRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[88] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4782,7 +4867,7 @@ func (x *CreatePolicyRequest) String() string { func (*CreatePolicyRequest) ProtoMessage() {} func (x *CreatePolicyRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[88] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4795,7 +4880,7 @@ func (x *CreatePolicyRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreatePolicyRequest.ProtoReflect.Descriptor instead. func (*CreatePolicyRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{88} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{90} } func (x *CreatePolicyRequest) GetBody() *PolicyRequestBody { @@ -4816,7 +4901,7 @@ type CreatePolicyResponse struct { func (x *CreatePolicyResponse) Reset() { *x = CreatePolicyResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[89] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4829,7 +4914,7 @@ func (x *CreatePolicyResponse) String() string { func (*CreatePolicyResponse) ProtoMessage() {} func (x *CreatePolicyResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[89] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4842,7 +4927,7 @@ func (x *CreatePolicyResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreatePolicyResponse.ProtoReflect.Descriptor instead. func (*CreatePolicyResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{89} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{91} } func (x *CreatePolicyResponse) GetPolicies() []*Policy { @@ -4863,7 +4948,7 @@ type GetPolicyRequest struct { func (x *GetPolicyRequest) Reset() { *x = GetPolicyRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[90] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4876,7 +4961,7 @@ func (x *GetPolicyRequest) String() string { func (*GetPolicyRequest) ProtoMessage() {} func (x *GetPolicyRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[90] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4889,7 +4974,7 @@ func (x *GetPolicyRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetPolicyRequest.ProtoReflect.Descriptor instead. func (*GetPolicyRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{90} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{92} } func (x *GetPolicyRequest) GetId() string { @@ -4910,7 +4995,7 @@ type GetPolicyResponse struct { func (x *GetPolicyResponse) Reset() { *x = GetPolicyResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[91] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4923,7 +5008,7 @@ func (x *GetPolicyResponse) String() string { func (*GetPolicyResponse) ProtoMessage() {} func (x *GetPolicyResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[91] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[93] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4936,7 +5021,7 @@ func (x *GetPolicyResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetPolicyResponse.ProtoReflect.Descriptor instead. func (*GetPolicyResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{91} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{93} } func (x *GetPolicyResponse) GetPolicy() *Policy { @@ -4958,7 +5043,7 @@ type UpdatePolicyRequest struct { func (x *UpdatePolicyRequest) Reset() { *x = UpdatePolicyRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[92] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4971,7 +5056,7 @@ func (x *UpdatePolicyRequest) String() string { func (*UpdatePolicyRequest) ProtoMessage() {} func (x *UpdatePolicyRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[92] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4984,7 +5069,7 @@ func (x *UpdatePolicyRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdatePolicyRequest.ProtoReflect.Descriptor instead. func (*UpdatePolicyRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{92} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{94} } func (x *UpdatePolicyRequest) GetId() string { @@ -5012,7 +5097,7 @@ type UpdatePolicyResponse struct { func (x *UpdatePolicyResponse) Reset() { *x = UpdatePolicyResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[93] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5025,7 +5110,7 @@ func (x *UpdatePolicyResponse) String() string { func (*UpdatePolicyResponse) ProtoMessage() {} func (x *UpdatePolicyResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[93] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5038,7 +5123,7 @@ func (x *UpdatePolicyResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdatePolicyResponse.ProtoReflect.Descriptor instead. func (*UpdatePolicyResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{93} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{95} } func (x *UpdatePolicyResponse) GetPolicies() []*Policy { @@ -5065,7 +5150,7 @@ type Relation struct { func (x *Relation) Reset() { *x = Relation{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[94] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5078,7 +5163,7 @@ func (x *Relation) String() string { func (*Relation) ProtoMessage() {} func (x *Relation) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[94] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5091,7 +5176,7 @@ func (x *Relation) ProtoReflect() protoreflect.Message { // Deprecated: Use Relation.ProtoReflect.Descriptor instead. func (*Relation) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{94} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{96} } func (x *Relation) GetId() string { @@ -5162,7 +5247,7 @@ type Resource struct { func (x *Resource) Reset() { *x = Resource{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[95] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5175,7 +5260,7 @@ func (x *Resource) String() string { func (*Resource) ProtoMessage() {} func (x *Resource) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[95] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5188,7 +5273,7 @@ func (x *Resource) ProtoReflect() protoreflect.Message { // Deprecated: Use Resource.ProtoReflect.Descriptor instead. func (*Resource) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{95} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{97} } func (x *Resource) GetId() string { @@ -5271,7 +5356,7 @@ type GroupRelation struct { func (x *GroupRelation) Reset() { *x = GroupRelation{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[96] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5284,7 +5369,7 @@ func (x *GroupRelation) String() string { func (*GroupRelation) ProtoMessage() {} func (x *GroupRelation) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[96] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5297,7 +5382,7 @@ func (x *GroupRelation) ProtoReflect() protoreflect.Message { // Deprecated: Use GroupRelation.ProtoReflect.Descriptor instead. func (*GroupRelation) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{96} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{98} } func (x *GroupRelation) GetSubjectType() string { @@ -5360,7 +5445,7 @@ type ListRelationsRequest struct { func (x *ListRelationsRequest) Reset() { *x = ListRelationsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[97] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5373,7 +5458,7 @@ func (x *ListRelationsRequest) String() string { func (*ListRelationsRequest) ProtoMessage() {} func (x *ListRelationsRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[97] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5386,7 +5471,7 @@ func (x *ListRelationsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListRelationsRequest.ProtoReflect.Descriptor instead. func (*ListRelationsRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{97} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{99} } type ListRelationsResponse struct { @@ -5400,7 +5485,7 @@ type ListRelationsResponse struct { func (x *ListRelationsResponse) Reset() { *x = ListRelationsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[98] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5413,7 +5498,7 @@ func (x *ListRelationsResponse) String() string { func (*ListRelationsResponse) ProtoMessage() {} func (x *ListRelationsResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[98] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5426,7 +5511,7 @@ func (x *ListRelationsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListRelationsResponse.ProtoReflect.Descriptor instead. func (*ListRelationsResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{98} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{100} } func (x *ListRelationsResponse) GetRelations() []*Relation { @@ -5450,7 +5535,7 @@ type RelationRequestBody struct { func (x *RelationRequestBody) Reset() { *x = RelationRequestBody{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[99] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5463,7 +5548,7 @@ func (x *RelationRequestBody) String() string { func (*RelationRequestBody) ProtoMessage() {} func (x *RelationRequestBody) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[99] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5476,7 +5561,7 @@ func (x *RelationRequestBody) ProtoReflect() protoreflect.Message { // Deprecated: Use RelationRequestBody.ProtoReflect.Descriptor instead. func (*RelationRequestBody) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{99} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{101} } func (x *RelationRequestBody) GetObjectId() string { @@ -5518,7 +5603,7 @@ type CreateRelationRequest struct { func (x *CreateRelationRequest) Reset() { *x = CreateRelationRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[100] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5531,7 +5616,7 @@ func (x *CreateRelationRequest) String() string { func (*CreateRelationRequest) ProtoMessage() {} func (x *CreateRelationRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[100] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5544,7 +5629,7 @@ func (x *CreateRelationRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateRelationRequest.ProtoReflect.Descriptor instead. func (*CreateRelationRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{100} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{102} } func (x *CreateRelationRequest) GetBody() *RelationRequestBody { @@ -5565,7 +5650,7 @@ type CreateRelationResponse struct { func (x *CreateRelationResponse) Reset() { *x = CreateRelationResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[101] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5578,7 +5663,7 @@ func (x *CreateRelationResponse) String() string { func (*CreateRelationResponse) ProtoMessage() {} func (x *CreateRelationResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[101] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5591,7 +5676,7 @@ func (x *CreateRelationResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateRelationResponse.ProtoReflect.Descriptor instead. func (*CreateRelationResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{101} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{103} } func (x *CreateRelationResponse) GetRelation() *Relation { @@ -5612,7 +5697,7 @@ type GetRelationRequest struct { func (x *GetRelationRequest) Reset() { *x = GetRelationRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[102] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5625,7 +5710,7 @@ func (x *GetRelationRequest) String() string { func (*GetRelationRequest) ProtoMessage() {} func (x *GetRelationRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[102] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5638,7 +5723,7 @@ func (x *GetRelationRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRelationRequest.ProtoReflect.Descriptor instead. func (*GetRelationRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{102} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{104} } func (x *GetRelationRequest) GetId() string { @@ -5659,7 +5744,7 @@ type GetRelationResponse struct { func (x *GetRelationResponse) Reset() { *x = GetRelationResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[103] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5672,7 +5757,7 @@ func (x *GetRelationResponse) String() string { func (*GetRelationResponse) ProtoMessage() {} func (x *GetRelationResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[103] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5685,7 +5770,7 @@ func (x *GetRelationResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRelationResponse.ProtoReflect.Descriptor instead. func (*GetRelationResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{103} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{105} } func (x *GetRelationResponse) GetRelation() *Relation { @@ -5707,7 +5792,7 @@ type UpdateRelationRequest struct { func (x *UpdateRelationRequest) Reset() { *x = UpdateRelationRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[104] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5720,7 +5805,7 @@ func (x *UpdateRelationRequest) String() string { func (*UpdateRelationRequest) ProtoMessage() {} func (x *UpdateRelationRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[104] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5733,7 +5818,7 @@ func (x *UpdateRelationRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateRelationRequest.ProtoReflect.Descriptor instead. func (*UpdateRelationRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{104} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{106} } func (x *UpdateRelationRequest) GetId() string { @@ -5761,7 +5846,7 @@ type UpdateRelationResponse struct { func (x *UpdateRelationResponse) Reset() { *x = UpdateRelationResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[105] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5774,7 +5859,7 @@ func (x *UpdateRelationResponse) String() string { func (*UpdateRelationResponse) ProtoMessage() {} func (x *UpdateRelationResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[105] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5787,7 +5872,7 @@ func (x *UpdateRelationResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateRelationResponse.ProtoReflect.Descriptor instead. func (*UpdateRelationResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{105} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{107} } func (x *UpdateRelationResponse) GetRelation() *Relation { @@ -5810,7 +5895,7 @@ type ListGroupRelationsRequest struct { func (x *ListGroupRelationsRequest) Reset() { *x = ListGroupRelationsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[106] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5823,7 +5908,7 @@ func (x *ListGroupRelationsRequest) String() string { func (*ListGroupRelationsRequest) ProtoMessage() {} func (x *ListGroupRelationsRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[106] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5836,7 +5921,7 @@ func (x *ListGroupRelationsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListGroupRelationsRequest.ProtoReflect.Descriptor instead. func (*ListGroupRelationsRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{106} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{108} } func (x *ListGroupRelationsRequest) GetId() string { @@ -5871,7 +5956,7 @@ type ListGroupRelationsResponse struct { func (x *ListGroupRelationsResponse) Reset() { *x = ListGroupRelationsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[107] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5884,7 +5969,7 @@ func (x *ListGroupRelationsResponse) String() string { func (*ListGroupRelationsResponse) ProtoMessage() {} func (x *ListGroupRelationsResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[107] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5897,7 +5982,7 @@ func (x *ListGroupRelationsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListGroupRelationsResponse.ProtoReflect.Descriptor instead. func (*ListGroupRelationsResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{107} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{109} } func (x *ListGroupRelationsResponse) GetRelations() []*GroupRelation { @@ -5920,7 +6005,7 @@ type DeleteRelationRequest struct { func (x *DeleteRelationRequest) Reset() { *x = DeleteRelationRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[108] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5933,7 +6018,7 @@ func (x *DeleteRelationRequest) String() string { func (*DeleteRelationRequest) ProtoMessage() {} func (x *DeleteRelationRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[108] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5946,7 +6031,7 @@ func (x *DeleteRelationRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteRelationRequest.ProtoReflect.Descriptor instead. func (*DeleteRelationRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{108} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{110} } func (x *DeleteRelationRequest) GetObjectId() string { @@ -5981,7 +6066,7 @@ type DeleteRelationResponse struct { func (x *DeleteRelationResponse) Reset() { *x = DeleteRelationResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[109] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5994,7 +6079,7 @@ func (x *DeleteRelationResponse) String() string { func (*DeleteRelationResponse) ProtoMessage() {} func (x *DeleteRelationResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[109] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6007,7 +6092,7 @@ func (x *DeleteRelationResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteRelationResponse.ProtoReflect.Descriptor instead. func (*DeleteRelationResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{109} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{111} } func (x *DeleteRelationResponse) GetMessage() string { @@ -6033,7 +6118,7 @@ type ListResourcesRequest struct { func (x *ListResourcesRequest) Reset() { *x = ListResourcesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[110] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6046,7 +6131,7 @@ func (x *ListResourcesRequest) String() string { func (*ListResourcesRequest) ProtoMessage() {} func (x *ListResourcesRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[110] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6059,7 +6144,7 @@ func (x *ListResourcesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListResourcesRequest.ProtoReflect.Descriptor instead. func (*ListResourcesRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{110} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{112} } func (x *ListResourcesRequest) GetGroupId() string { @@ -6116,7 +6201,7 @@ type ListResourcesResponse struct { func (x *ListResourcesResponse) Reset() { *x = ListResourcesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[111] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6129,7 +6214,7 @@ func (x *ListResourcesResponse) String() string { func (*ListResourcesResponse) ProtoMessage() {} func (x *ListResourcesResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[111] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6142,7 +6227,7 @@ func (x *ListResourcesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListResourcesResponse.ProtoReflect.Descriptor instead. func (*ListResourcesResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{111} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{113} } func (x *ListResourcesResponse) GetResources() []*Resource { @@ -6173,7 +6258,7 @@ type ResourceRequestBody struct { func (x *ResourceRequestBody) Reset() { *x = ResourceRequestBody{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[112] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6186,7 +6271,7 @@ func (x *ResourceRequestBody) String() string { func (*ResourceRequestBody) ProtoMessage() {} func (x *ResourceRequestBody) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[112] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6199,7 +6284,7 @@ func (x *ResourceRequestBody) ProtoReflect() protoreflect.Message { // Deprecated: Use ResourceRequestBody.ProtoReflect.Descriptor instead. func (*ResourceRequestBody) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{112} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{114} } func (x *ResourceRequestBody) GetName() string { @@ -6241,7 +6326,7 @@ type CreateResourceRequest struct { func (x *CreateResourceRequest) Reset() { *x = CreateResourceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[113] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6254,7 +6339,7 @@ func (x *CreateResourceRequest) String() string { func (*CreateResourceRequest) ProtoMessage() {} func (x *CreateResourceRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[113] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[115] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6267,7 +6352,7 @@ func (x *CreateResourceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateResourceRequest.ProtoReflect.Descriptor instead. func (*CreateResourceRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{113} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{115} } func (x *CreateResourceRequest) GetBody() *ResourceRequestBody { @@ -6288,7 +6373,7 @@ type CreateResourceResponse struct { func (x *CreateResourceResponse) Reset() { *x = CreateResourceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[114] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[116] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6301,7 +6386,7 @@ func (x *CreateResourceResponse) String() string { func (*CreateResourceResponse) ProtoMessage() {} func (x *CreateResourceResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[114] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[116] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6314,7 +6399,7 @@ func (x *CreateResourceResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateResourceResponse.ProtoReflect.Descriptor instead. func (*CreateResourceResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{114} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{116} } func (x *CreateResourceResponse) GetResource() *Resource { @@ -6335,7 +6420,7 @@ type GetResourceRequest struct { func (x *GetResourceRequest) Reset() { *x = GetResourceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[115] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[117] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6348,7 +6433,7 @@ func (x *GetResourceRequest) String() string { func (*GetResourceRequest) ProtoMessage() {} func (x *GetResourceRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[115] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[117] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6361,7 +6446,7 @@ func (x *GetResourceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetResourceRequest.ProtoReflect.Descriptor instead. func (*GetResourceRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{115} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{117} } func (x *GetResourceRequest) GetId() string { @@ -6382,7 +6467,7 @@ type GetResourceResponse struct { func (x *GetResourceResponse) Reset() { *x = GetResourceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[116] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6395,7 +6480,7 @@ func (x *GetResourceResponse) String() string { func (*GetResourceResponse) ProtoMessage() {} func (x *GetResourceResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[116] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6408,7 +6493,7 @@ func (x *GetResourceResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetResourceResponse.ProtoReflect.Descriptor instead. func (*GetResourceResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{116} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{118} } func (x *GetResourceResponse) GetResource() *Resource { @@ -6430,7 +6515,7 @@ type UpdateResourceRequest struct { func (x *UpdateResourceRequest) Reset() { *x = UpdateResourceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[117] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6443,7 +6528,7 @@ func (x *UpdateResourceRequest) String() string { func (*UpdateResourceRequest) ProtoMessage() {} func (x *UpdateResourceRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[117] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[119] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6456,7 +6541,7 @@ func (x *UpdateResourceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateResourceRequest.ProtoReflect.Descriptor instead. func (*UpdateResourceRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{117} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{119} } func (x *UpdateResourceRequest) GetId() string { @@ -6484,7 +6569,7 @@ type UpdateResourceResponse struct { func (x *UpdateResourceResponse) Reset() { *x = UpdateResourceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[118] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6497,7 +6582,7 @@ func (x *UpdateResourceResponse) String() string { func (*UpdateResourceResponse) ProtoMessage() {} func (x *UpdateResourceResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[118] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[120] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6510,7 +6595,7 @@ func (x *UpdateResourceResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateResourceResponse.ProtoReflect.Descriptor instead. func (*UpdateResourceResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{118} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{120} } func (x *UpdateResourceResponse) GetResource() *Resource { @@ -6533,7 +6618,7 @@ type ResourcePermission struct { func (x *ResourcePermission) Reset() { *x = ResourcePermission{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[119] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6546,7 +6631,7 @@ func (x *ResourcePermission) String() string { func (*ResourcePermission) ProtoMessage() {} func (x *ResourcePermission) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[119] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[121] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6559,7 +6644,7 @@ func (x *ResourcePermission) ProtoReflect() protoreflect.Message { // Deprecated: Use ResourcePermission.ProtoReflect.Descriptor instead. func (*ResourcePermission) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{119} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{121} } func (x *ResourcePermission) GetObjectId() string { @@ -6600,7 +6685,7 @@ type CheckResourcePermissionRequest struct { func (x *CheckResourcePermissionRequest) Reset() { *x = CheckResourcePermissionRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[120] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6613,7 +6698,7 @@ func (x *CheckResourcePermissionRequest) String() string { func (*CheckResourcePermissionRequest) ProtoMessage() {} func (x *CheckResourcePermissionRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[120] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[122] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6626,7 +6711,7 @@ func (x *CheckResourcePermissionRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CheckResourcePermissionRequest.ProtoReflect.Descriptor instead. func (*CheckResourcePermissionRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{120} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{122} } // Deprecated: Marked as deprecated in gotocompany/shield/v1beta1/shield.proto. @@ -6673,7 +6758,7 @@ type CheckResourcePermissionResponse struct { func (x *CheckResourcePermissionResponse) Reset() { *x = CheckResourcePermissionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[121] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6686,7 +6771,7 @@ func (x *CheckResourcePermissionResponse) String() string { func (*CheckResourcePermissionResponse) ProtoMessage() {} func (x *CheckResourcePermissionResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[121] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[123] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6699,7 +6784,7 @@ func (x *CheckResourcePermissionResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CheckResourcePermissionResponse.ProtoReflect.Descriptor instead. func (*CheckResourcePermissionResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{121} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{123} } // Deprecated: Marked as deprecated in gotocompany/shield/v1beta1/shield.proto. @@ -6729,7 +6814,7 @@ type CheckResourceUserPermissionRequest struct { func (x *CheckResourceUserPermissionRequest) Reset() { *x = CheckResourceUserPermissionRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[122] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6742,7 +6827,7 @@ func (x *CheckResourceUserPermissionRequest) String() string { func (*CheckResourceUserPermissionRequest) ProtoMessage() {} func (x *CheckResourceUserPermissionRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[122] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[124] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6755,7 +6840,7 @@ func (x *CheckResourceUserPermissionRequest) ProtoReflect() protoreflect.Message // Deprecated: Use CheckResourceUserPermissionRequest.ProtoReflect.Descriptor instead. func (*CheckResourceUserPermissionRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{122} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{124} } func (x *CheckResourceUserPermissionRequest) GetId() string { @@ -6783,7 +6868,7 @@ type CheckResourceUserPermissionResponse struct { func (x *CheckResourceUserPermissionResponse) Reset() { *x = CheckResourceUserPermissionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[123] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6796,7 +6881,7 @@ func (x *CheckResourceUserPermissionResponse) String() string { func (*CheckResourceUserPermissionResponse) ProtoMessage() {} func (x *CheckResourceUserPermissionResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[123] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[125] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6809,7 +6894,7 @@ func (x *CheckResourceUserPermissionResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CheckResourceUserPermissionResponse.ProtoReflect.Descriptor instead. func (*CheckResourceUserPermissionResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{123} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{125} } func (x *CheckResourceUserPermissionResponse) GetResourcePermissions() []*CheckResourceUserPermissionResponse_ResourcePermissionResponse { @@ -6832,7 +6917,7 @@ type ListAllUserResourcesRequest struct { func (x *ListAllUserResourcesRequest) Reset() { *x = ListAllUserResourcesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[124] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[126] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6845,7 +6930,7 @@ func (x *ListAllUserResourcesRequest) String() string { func (*ListAllUserResourcesRequest) ProtoMessage() {} func (x *ListAllUserResourcesRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[124] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[126] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6858,7 +6943,7 @@ func (x *ListAllUserResourcesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListAllUserResourcesRequest.ProtoReflect.Descriptor instead. func (*ListAllUserResourcesRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{124} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{126} } func (x *ListAllUserResourcesRequest) GetUserId() string { @@ -6893,7 +6978,7 @@ type ListAllUserResourcesResponse struct { func (x *ListAllUserResourcesResponse) Reset() { *x = ListAllUserResourcesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[125] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6906,7 +6991,7 @@ func (x *ListAllUserResourcesResponse) String() string { func (*ListAllUserResourcesResponse) ProtoMessage() {} func (x *ListAllUserResourcesResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[125] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[127] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6919,7 +7004,7 @@ func (x *ListAllUserResourcesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListAllUserResourcesResponse.ProtoReflect.Descriptor instead. func (*ListAllUserResourcesResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{125} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{127} } func (x *ListAllUserResourcesResponse) GetResources() *structpb.Struct { @@ -6944,7 +7029,7 @@ type Activity struct { func (x *Activity) Reset() { *x = Activity{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[126] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[128] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6957,7 +7042,7 @@ func (x *Activity) String() string { func (*Activity) ProtoMessage() {} func (x *Activity) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[126] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[128] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6970,7 +7055,7 @@ func (x *Activity) ProtoReflect() protoreflect.Message { // Deprecated: Use Activity.ProtoReflect.Descriptor instead. func (*Activity) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{126} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{128} } func (x *Activity) GetActor() string { @@ -7026,7 +7111,7 @@ type ListActivitiesRequest struct { func (x *ListActivitiesRequest) Reset() { *x = ListActivitiesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[127] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[129] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7039,7 +7124,7 @@ func (x *ListActivitiesRequest) String() string { func (*ListActivitiesRequest) ProtoMessage() {} func (x *ListActivitiesRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[127] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[129] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7052,7 +7137,7 @@ func (x *ListActivitiesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListActivitiesRequest.ProtoReflect.Descriptor instead. func (*ListActivitiesRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{127} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{129} } func (x *ListActivitiesRequest) GetActor() string { @@ -7123,7 +7208,7 @@ type ListActivitiesResponse struct { func (x *ListActivitiesResponse) Reset() { *x = ListActivitiesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[128] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[130] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7136,7 +7221,7 @@ func (x *ListActivitiesResponse) String() string { func (*ListActivitiesResponse) ProtoMessage() {} func (x *ListActivitiesResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[128] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[130] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7149,7 +7234,7 @@ func (x *ListActivitiesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListActivitiesResponse.ProtoReflect.Descriptor instead. func (*ListActivitiesResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{128} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{130} } func (x *ListActivitiesResponse) GetCount() int32 { @@ -7178,7 +7263,7 @@ type UpsertResourcesConfigRequest struct { func (x *UpsertResourcesConfigRequest) Reset() { *x = UpsertResourcesConfigRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[129] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[131] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7191,7 +7276,7 @@ func (x *UpsertResourcesConfigRequest) String() string { func (*UpsertResourcesConfigRequest) ProtoMessage() {} func (x *UpsertResourcesConfigRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[129] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[131] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7204,7 +7289,7 @@ func (x *UpsertResourcesConfigRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertResourcesConfigRequest.ProtoReflect.Descriptor instead. func (*UpsertResourcesConfigRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{129} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{131} } func (x *UpsertResourcesConfigRequest) GetName() string { @@ -7236,7 +7321,7 @@ type UpsertResourcesConfigResponse struct { func (x *UpsertResourcesConfigResponse) Reset() { *x = UpsertResourcesConfigResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[130] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[132] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7249,7 +7334,7 @@ func (x *UpsertResourcesConfigResponse) String() string { func (*UpsertResourcesConfigResponse) ProtoMessage() {} func (x *UpsertResourcesConfigResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[130] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[132] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7262,7 +7347,7 @@ func (x *UpsertResourcesConfigResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertResourcesConfigResponse.ProtoReflect.Descriptor instead. func (*UpsertResourcesConfigResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{130} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{132} } func (x *UpsertResourcesConfigResponse) GetId() uint32 { @@ -7312,7 +7397,7 @@ type UpsertRulesConfigRequest struct { func (x *UpsertRulesConfigRequest) Reset() { *x = UpsertRulesConfigRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[131] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[133] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7325,7 +7410,7 @@ func (x *UpsertRulesConfigRequest) String() string { func (*UpsertRulesConfigRequest) ProtoMessage() {} func (x *UpsertRulesConfigRequest) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[131] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[133] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7338,7 +7423,7 @@ func (x *UpsertRulesConfigRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertRulesConfigRequest.ProtoReflect.Descriptor instead. func (*UpsertRulesConfigRequest) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{131} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{133} } func (x *UpsertRulesConfigRequest) GetName() string { @@ -7370,7 +7455,7 @@ type UpsertRulesConfigResponse struct { func (x *UpsertRulesConfigResponse) Reset() { *x = UpsertRulesConfigResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[132] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[134] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7383,7 +7468,7 @@ func (x *UpsertRulesConfigResponse) String() string { func (*UpsertRulesConfigResponse) ProtoMessage() {} func (x *UpsertRulesConfigResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[132] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[134] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7396,7 +7481,7 @@ func (x *UpsertRulesConfigResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertRulesConfigResponse.ProtoReflect.Descriptor instead. func (*UpsertRulesConfigResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{132} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{134} } func (x *UpsertRulesConfigResponse) GetId() uint32 { @@ -7448,7 +7533,7 @@ type CheckResourcePermissionResponse_ResourcePermissionResponse struct { func (x *CheckResourcePermissionResponse_ResourcePermissionResponse) Reset() { *x = CheckResourcePermissionResponse_ResourcePermissionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[133] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[135] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7461,7 +7546,7 @@ func (x *CheckResourcePermissionResponse_ResourcePermissionResponse) String() st func (*CheckResourcePermissionResponse_ResourcePermissionResponse) ProtoMessage() {} func (x *CheckResourcePermissionResponse_ResourcePermissionResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[133] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[135] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7474,7 +7559,7 @@ func (x *CheckResourcePermissionResponse_ResourcePermissionResponse) ProtoReflec // Deprecated: Use CheckResourcePermissionResponse_ResourcePermissionResponse.ProtoReflect.Descriptor instead. func (*CheckResourcePermissionResponse_ResourcePermissionResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{121, 0} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{123, 0} } func (x *CheckResourcePermissionResponse_ResourcePermissionResponse) GetObjectId() string { @@ -7519,7 +7604,7 @@ type CheckResourceUserPermissionResponse_ResourcePermissionResponse struct { func (x *CheckResourceUserPermissionResponse_ResourcePermissionResponse) Reset() { *x = CheckResourceUserPermissionResponse_ResourcePermissionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[134] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[136] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7532,7 +7617,7 @@ func (x *CheckResourceUserPermissionResponse_ResourcePermissionResponse) String( func (*CheckResourceUserPermissionResponse_ResourcePermissionResponse) ProtoMessage() {} func (x *CheckResourceUserPermissionResponse_ResourcePermissionResponse) ProtoReflect() protoreflect.Message { - mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[134] + mi := &file_gotocompany_shield_v1beta1_shield_proto_msgTypes[136] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7545,7 +7630,7 @@ func (x *CheckResourceUserPermissionResponse_ResourcePermissionResponse) ProtoRe // Deprecated: Use CheckResourceUserPermissionResponse_ResourcePermissionResponse.ProtoReflect.Descriptor instead. func (*CheckResourceUserPermissionResponse_ResourcePermissionResponse) Descriptor() ([]byte, []int) { - return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{123, 0} + return file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP(), []int{125, 0} } func (x *CheckResourceUserPermissionResponse_ResourcePermissionResponse) GetObjectId() string { @@ -7705,778 +7790,700 @@ var file_gotocompany_shield_v1beta1_shield_proto_rawDesc = []byte{ 0x36, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, - 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0x9f, 0x01, 0x0a, 0x10, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x2b, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, - 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, - 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x75, - 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x12, 0x33, 0x0a, - 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x6f, 0x72, 0x67, 0x49, 0x64, 0x22, 0x56, 0x0a, 0x12, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x40, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, - 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, - 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, - 0x79, 0x22, 0x53, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, - 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x22, 0x9a, 0x02, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, - 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, - 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, - 0x04, 0x73, 0x6c, 0x75, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6c, 0x75, - 0x67, 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x6f, 0x72, 0x67, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, + 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0x23, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x14, 0x0a, 0x12, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x10, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x39, 0x0a, - 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x64, 0x41, 0x74, 0x22, 0x4e, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x05, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x74, 0x6f, - 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x22, 0x4b, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, - 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x22, 0x4e, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x15, 0x0a, + 0x06, 0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, + 0x72, 0x67, 0x49, 0x64, 0x22, 0x56, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x04, 0x62, 0x6f, + 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x53, 0x0a, 0x16, + 0x4c, 0x69, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x22, 0x66, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x40, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x73, 0x22, 0x9a, 0x02, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, + 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, + 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x75, 0x67, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x12, 0x15, 0x0a, 0x06, + 0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x72, + 0x67, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, + 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, + 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x4e, + 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, - 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x5b, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, - 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, - 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x21, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x60, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, - 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, - 0x18, 0x01, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x06, 0x6f, 0x72, - 0x67, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, - 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, - 0x5d, 0x2b, 0x24, 0x52, 0x05, 0x6f, 0x72, 0x67, 0x49, 0x64, 0x22, 0x4f, 0x0a, 0x12, 0x4c, 0x69, - 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x39, 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x22, 0xf0, 0x02, 0x0a, 0x04, - 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x02, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x47, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, - 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, - 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, + 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x4b, + 0x0a, 0x10, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x37, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, + 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x4e, 0x0a, 0x13, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x37, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, + 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x66, 0x0a, 0x12, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x40, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2c, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, + 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, + 0x6f, 0x64, 0x79, 0x22, 0x5b, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x75, 0x72, + 0x72, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x3f, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, + 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, + 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, + 0x22, 0x21, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x22, 0x60, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x75, + 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x06, 0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x05, + 0x6f, 0x72, 0x67, 0x49, 0x64, 0x22, 0x4f, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, + 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x22, 0xf0, 0x02, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, + 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, + 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x12, 0x47, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x42, 0x02, 0x18, 0x01, + 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x33, 0x0a, 0x08, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6e, - 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x22, 0xbc, - 0x01, 0x0a, 0x0f, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, - 0x64, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, - 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x6d, - 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x54, 0x0a, - 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x6f, - 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, - 0x6f, 0x64, 0x79, 0x22, 0x4a, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x22, 0xbc, 0x01, 0x0a, 0x0f, 0x52, 0x6f, + 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2b, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, + 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, + 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x79, + 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, + 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, + 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x54, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, + 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, + 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x4a, + 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, + 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x47, 0x0a, 0x0f, 0x47, 0x65, + 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, + 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, + 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, + 0x6f, 0x6c, 0x65, 0x22, 0x4a, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, - 0x47, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x34, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x6f, - 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x4a, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, - 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, - 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, - 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x20, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x52, + 0x20, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x22, 0x64, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x64, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3f, 0x0a, 0x04, 0x62, - 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x74, 0x6f, - 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x12, 0x0a, 0x10, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x22, 0x4b, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3f, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x22, 0x8f, 0x01, - 0x0a, 0x17, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, - 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, - 0x64, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x04, - 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x74, + 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, + 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x12, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4b, 0x0a, 0x11, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x36, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, + 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, + 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x22, 0x8f, 0x01, 0x0a, 0x17, 0x4f, 0x72, 0x67, + 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x42, 0x6f, 0x64, 0x79, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, + 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x73, 0x6c, 0x75, 0x67, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x64, 0x0a, 0x19, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, + 0x22, 0x8a, 0x02, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6c, + 0x75, 0x67, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x6a, 0x0a, + 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, + 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, + 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x67, 0x0a, 0x17, 0x47, 0x65, 0x74, + 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, - 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x8a, 0x02, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, - 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, - 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x39, 0x0a, 0x0a, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x41, 0x74, 0x22, 0x6a, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x22, 0x6a, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x67, - 0x0a, 0x17, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x6f, 0x72, 0x67, - 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x28, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x72, 0x67, - 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, - 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6a, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, - 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x1a, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, - 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, - 0x6b, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x0d, - 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, - 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x6f, - 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x28, 0x0a, 0x16, - 0x47, 0x65, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x74, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x47, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, - 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, - 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x2f, 0x0a, 0x1d, - 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, - 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x58, 0x0a, - 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x36, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, + 0x52, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x1a, + 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x6b, 0x0a, 0x19, 0x4c, 0x69, + 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x0d, 0x6f, 0x72, 0x67, 0x61, 0x6e, + 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, - 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, - 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0xa1, 0x01, 0x0a, 0x12, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x2b, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, + 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, + 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x28, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x4f, 0x72, + 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x22, 0x74, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, + 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, + 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, + 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, + 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x2f, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x4f, + 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x6d, 0x69, 0x6e, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x58, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, + 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x6d, 0x69, + 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x05, 0x75, 0x73, + 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, + 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, + 0x72, 0x73, 0x22, 0xa1, 0x01, 0x0a, 0x12, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, + 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, + 0x15, 0x0a, 0x06, 0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x6f, 0x72, 0x67, 0x49, 0x64, 0x22, 0x5a, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, + 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, + 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, + 0x64, 0x79, 0x22, 0x9c, 0x02, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2b, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, - 0x6c, 0x75, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x12, - 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x72, 0x67, 0x49, 0x64, 0x22, 0x5a, 0x0a, 0x14, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x6c, 0x75, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x12, + 0x15, 0x0a, 0x06, 0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x6f, 0x72, 0x67, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x39, 0x0a, 0x0a, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x22, 0x56, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x07, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, + 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x53, 0x0a, 0x12, 0x47, 0x65, 0x74, + 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x3d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x56, + 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x15, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x57, 0x0a, + 0x14, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, + 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x08, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x22, 0x23, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x6a, 0x0a, 0x14, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x42, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, - 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x9c, 0x02, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x2a, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x50, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x22, 0x53, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x36, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, + 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, 0x65, + 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0xa7, 0x02, 0x0a, 0x06, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x73, 0x6c, 0x75, 0x67, 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x72, 0x67, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x08, 0x6d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x12, 0x47, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, + 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x56, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x3d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x53, - 0x0a, 0x12, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x22, 0x56, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x07, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, - 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, - 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x15, 0x0a, 0x13, 0x4c, - 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x22, 0x57, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, - 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x22, 0x23, 0x0a, 0x11, 0x47, - 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, + 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, + 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x49, 0x64, 0x22, 0xbe, 0x01, 0x0a, 0x09, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, - 0x22, 0x6a, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x42, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, - 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x2a, 0x0a, 0x18, - 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x53, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, - 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, - 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0xa7, 0x02, - 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, - 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x47, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, + 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, + 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, + 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x22, 0xaa, 0x03, 0x0a, 0x06, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x38, + 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, + 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x42, 0x02, + 0x18, 0x01, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x42, - 0x02, 0x18, 0x01, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x39, - 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x41, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x6d, 0x65, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x22, 0xbe, 0x01, 0x0a, 0x09, 0x4e, 0x61, 0x6d, 0x65, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x02, 0x18, 0x01, + 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x47, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, + 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, + 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6c, + 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x22, 0x73, 0x0a, 0x11, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, - 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0xaa, 0x03, 0x0a, 0x06, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x38, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, - 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, - 0x6f, 0x6c, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x3e, 0x0a, - 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, - 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, - 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x47, 0x0a, - 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, - 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x6e, 0x61, 0x6d, - 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, - 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x21, 0x0a, 0x0c, - 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, - 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, + 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x49, 0x64, 0x22, 0x53, 0x0a, 0x14, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2b, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, + 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, + 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x6c, 0x0a, 0x11, 0x50, 0x6f, + 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, + 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x73, 0x0a, 0x11, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, - 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, - 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, - 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x22, 0x53, 0x0a, 0x14, 0x4e, 0x61, - 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, - 0x64, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, - 0x6c, 0x0a, 0x11, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x42, 0x6f, 0x64, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, - 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, - 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x22, 0x14, 0x0a, - 0x12, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x22, 0x53, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x07, 0x61, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, - 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x58, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x41, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, - 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, - 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, - 0x64, 0x79, 0x22, 0x52, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x22, 0x14, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x53, + 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x22, 0x58, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x62, 0x6f, + 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x52, 0x0a, + 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0x22, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x4f, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x22, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x4f, 0x0a, 0x11, 0x47, 0x65, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x3a, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x68, 0x0a, 0x13, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x41, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, - 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x52, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, - 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, - 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, - 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x17, 0x0a, 0x15, 0x4c, 0x69, 0x73, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x22, 0x5f, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0a, - 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, - 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x73, 0x22, 0x5e, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, - 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, - 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x68, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x41, 0x0a, + 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, - 0x6f, 0x64, 0x79, 0x22, 0x5e, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, - 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, - 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, - 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, - 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x22, 0x25, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x5b, 0x0a, 0x14, 0x47, 0x65, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x43, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x09, 0x6e, 0x61, - 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x6e, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x44, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, - 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, - 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x5e, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x43, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x09, 0x6e, 0x61, - 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x15, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x50, - 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x56, - 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, - 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, + 0x22, 0x52, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x08, 0x70, 0x6f, - 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x22, 0x58, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, - 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x17, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x5f, 0x0a, + 0x16, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, - 0x22, 0x56, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x08, 0x70, 0x6f, 0x6c, 0x69, - 0x63, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x52, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x22, 0x5e, + 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x5e, + 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x09, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, + 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x25, + 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x5b, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, + 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x22, 0x6e, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x44, 0x0a, 0x04, + 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x08, - 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x22, 0x22, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x50, - 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x4f, 0x0a, 0x11, - 0x47, 0x65, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, - 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, - 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x68, 0x0a, - 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x02, 0x69, 0x64, 0x12, 0x41, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, - 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, - 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x56, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x3e, 0x0a, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, - 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, - 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x22, - 0x8f, 0x02, 0x0a, 0x08, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1b, - 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, - 0x74, 0x22, 0xbe, 0x03, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, + 0x64, 0x79, 0x22, 0x5e, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, + 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x22, 0x15, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, + 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x56, 0x0a, 0x14, 0x4c, 0x69, 0x73, + 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x3e, 0x0a, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x12, 0x4c, 0x0a, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, - 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x43, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, - 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, - 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, - 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, - 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x34, 0x0a, 0x04, 0x75, 0x73, - 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, - 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, - 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, - 0x72, 0x6e, 0x22, 0xc4, 0x01, 0x0a, 0x0d, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x36, 0x0a, 0x04, 0x75, - 0x73, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, - 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x48, 0x00, 0x52, 0x04, 0x75, - 0x73, 0x65, 0x72, 0x12, 0x39, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, - 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x48, 0x00, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x09, - 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x16, 0x0a, 0x14, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x22, 0x5b, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x09, 0x72, 0x65, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, + 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, + 0x73, 0x22, 0x58, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, + 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x56, 0x0a, 0x14, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, + 0x69, 0x65, 0x73, 0x22, 0x22, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x4f, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x50, 0x6f, + 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x06, + 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, + 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, + 0x52, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x68, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x41, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, - 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x94, - 0x01, 0x0a, 0x13, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6c, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, - 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, - 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, + 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, + 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, + 0x64, 0x79, 0x22, 0x56, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, + 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x08, 0x70, 0x6f, + 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, - 0x6f, 0x64, 0x79, 0x22, 0x5a, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, - 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, - 0x24, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x57, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x08, - 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, + 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, + 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x22, 0x8f, 0x02, 0x0a, 0x08, 0x52, + 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6c, + 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, + 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0xbe, 0x03, 0x0a, + 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3d, 0x0a, + 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, - 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6c, - 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x43, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x5a, 0x0a, 0x16, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, - 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, - 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x62, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x75, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x65, 0x0a, 0x1a, - 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x09, 0x72, 0x65, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, + 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x4c, 0x0a, 0x0c, + 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, + 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x43, 0x0a, 0x09, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, - 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x22, 0x67, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x75, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, - 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x32, 0x0a, 0x16, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x22, 0xd4, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x72, - 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, - 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, - 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x19, 0x0a, 0x08, - 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x22, 0x71, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x42, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, + 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x34, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xaf, 0x01, 0x0a, 0x13, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, - 0x64, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x6d, - 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x09, 0x72, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, - 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x5c, 0x0a, 0x15, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x75, + 0x72, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x22, 0xc4, 0x01, + 0x0a, 0x0d, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x36, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x48, 0x00, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x39, + 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, + 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, + 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x48, 0x00, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x09, 0x0a, 0x07, 0x73, 0x75, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x22, 0x16, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x5b, 0x0a, 0x15, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, + 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x94, 0x01, 0x0a, 0x13, 0x52, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, + 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x29, + 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x22, 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x04, 0x62, 0x6f, 0x64, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, + 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x5a, + 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, + 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x24, 0x0a, 0x12, 0x47, 0x65, + 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, + 0x22, 0x57, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, + 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6c, 0x0a, 0x15, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x43, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, + 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x5a, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x40, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x5a, 0x0a, 0x16, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x22, 0x62, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x65, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x67, + 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x32, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xd4, 0x01, 0x0a, 0x14, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, + 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x27, + 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, + 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, + 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x5f, + 0x6e, 0x75, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, + 0x75, 0x6d, 0x22, 0x71, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x09, 0x72, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, + 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, + 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, + 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xaf, 0x01, 0x0a, 0x13, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, + 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x08, 0x72, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x24, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x57, 0x0a, 0x13, - 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x6c, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x43, - 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, - 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, - 0x6f, 0x64, 0x79, 0x22, 0x5a, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, - 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, - 0xc7, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, - 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, - 0x2b, 0x24, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x10, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, - 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, - 0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, - 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x0a, 0x70, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xbc, 0x02, 0x0a, 0x1e, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x09, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x19, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x18, 0x01, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, - 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x18, 0x01, 0x52, 0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x70, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, - 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x18, 0x01, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x61, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, - 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xb5, 0x03, 0x0a, 0x1f, 0x43, 0x68, 0x65, - 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x89, 0x01, 0x0a, 0x14, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x56, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, - 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, - 0x13, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xe9, 0x01, 0x0a, 0x1a, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, - 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, - 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x10, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x0f, 0x6f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x37, 0x0a, - 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, - 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, - 0x22, 0x97, 0x01, 0x0a, 0x22, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x72, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x43, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, + 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, + 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, + 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x5a, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x40, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, + 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x22, 0x24, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x61, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xa1, 0x03, 0x0a, 0x23, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x8d, 0x01, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, - 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x5a, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, - 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x13, 0x72, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x57, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x52, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, + 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x22, 0x6c, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x43, 0x0a, 0x04, 0x62, 0x6f, 0x64, + 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, + 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x5a, + 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, + 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xc7, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x73, 0x1a, 0xe9, 0x01, 0x0a, 0x1a, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x34, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x6e, 0x12, 0x34, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, @@ -8487,691 +8494,783 @@ var file_gotocompany_shield_v1beta1_shield_proto_rawDesc = []byte{ 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x22, 0x6e, - 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, - 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, - 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x55, - 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, - 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0xfc, 0x02, 0x0a, 0x08, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, - 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x42, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, + 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xbc, 0x02, 0x0a, 0x1e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, 0xfa, 0x42, 0x14, 0x72, + 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, + 0x5d, 0x2b, 0x24, 0x18, 0x01, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, + 0x44, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, 0xfa, 0x42, 0x14, 0x72, 0x12, + 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, + 0x2b, 0x24, 0x18, 0x01, 0x52, 0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, 0xfa, 0x42, 0x14, 0x72, 0x12, + 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, + 0x2b, 0x24, 0x18, 0x01, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x61, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x72, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, - 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x69, 0x74, 0x79, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x12, 0x4e, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, - 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, 0x37, - 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, - 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x22, 0xdb, 0x03, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, - 0x63, 0x74, 0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4f, 0x0a, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x74, - 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x61, - 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x5b, 0x0a, - 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x3f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x6e, 0x64, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, - 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, - 0x65, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x1a, 0x37, 0x0a, 0x09, - 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x13, + 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x22, 0xb5, 0x03, 0x0a, 0x1f, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x89, 0x01, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x56, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, + 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x13, 0x72, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, + 0xe9, 0x01, 0x0a, 0x1a, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, + 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, + 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, + 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, + 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, + 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x22, 0x97, 0x01, 0x0a, 0x22, + 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, + 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x61, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x52, 0x13, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xa1, 0x03, 0x0a, 0x23, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8d, 0x01, + 0x0a, 0x14, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5a, 0x2e, 0x67, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, + 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x13, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xe9, 0x01, + 0x0a, 0x1a, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x09, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x17, 0xfa, 0x42, 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x49, 0x64, 0x12, 0x42, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, + 0x14, 0x72, 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, 0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x72, + 0x12, 0x32, 0x10, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, + 0x5d, 0x2b, 0x24, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, + 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x07, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x22, 0x6e, 0x0a, 0x1b, 0x4c, 0x69, 0x73, + 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x65, + 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x55, 0x0a, 0x1c, 0x4c, 0x69, 0x73, + 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x09, 0x72, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, + 0x22, 0xfc, 0x02, 0x0a, 0x08, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, + 0x05, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x63, + 0x74, 0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x42, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, + 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, + 0x4e, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, + 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, + 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, 0x37, 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0x74, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, - 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x44, 0x0a, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, - 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x61, 0x63, - 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x22, 0x4a, 0x0a, 0x1c, 0x55, 0x70, 0x73, 0x65, - 0x72, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x22, 0xd1, 0x01, 0x0a, 0x1d, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, - 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x38, 0x01, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, + 0xdb, 0x03, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x63, 0x74, + 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, + 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4f, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x5b, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x74, + 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x19, 0x0a, 0x08, + 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x1a, 0x37, 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, + 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x74, 0x0a, + 0x16, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x44, 0x0a, + 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, + 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x22, 0x4a, 0x0a, 0x1c, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, + 0xd1, 0x01, 0x0a, 0x1d, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x39, 0x0a, + 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x46, 0x0a, 0x18, 0x55, 0x70, 0x73, 0x65, - 0x72, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x22, 0xcd, 0x01, 0x0a, 0x19, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x22, 0x46, 0x0a, 0x18, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x75, 0x6c, + 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xcd, 0x01, 0x0a, 0x19, + 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, - 0x32, 0xc8, 0x46, 0x0a, 0x0d, 0x53, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x12, 0x98, 0x01, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, - 0x12, 0x2c, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, - 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, - 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x92, - 0x41, 0x15, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0d, 0x47, 0x65, 0x74, 0x20, 0x41, 0x6c, - 0x6c, 0x20, 0x55, 0x73, 0x65, 0x72, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x12, 0x0e, 0x2f, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x12, 0x9f, 0x01, - 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x2d, 0x2e, 0x67, - 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, - 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, - 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x92, 0x41, 0x13, - 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x55, - 0x73, 0x65, 0x72, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x16, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, - 0x0e, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x12, - 0x9a, 0x01, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x2a, 0x2e, 0x67, 0x6f, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x32, 0xeb, 0x47, 0x0a, 0x0d, + 0x53, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x98, 0x01, + 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x2c, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, + 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x92, 0x41, 0x15, 0x0a, 0x04, 0x55, + 0x73, 0x65, 0x72, 0x12, 0x0d, 0x47, 0x65, 0x74, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x55, 0x73, 0x65, + 0x72, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x12, 0x0e, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x12, 0x9f, 0x01, 0x0a, 0x0a, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x36, 0x92, 0x41, 0x18, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, - 0x10, 0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x55, 0x73, 0x65, 0x72, 0x20, 0x62, 0x79, 0x20, 0x69, - 0x64, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x12, 0x13, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xbb, 0x01, 0x0a, - 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, - 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x92, 0x41, 0x13, 0x0a, 0x04, 0x55, 0x73, 0x65, + 0x72, 0x12, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x55, 0x73, 0x65, 0x72, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x16, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x0e, 0x2f, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x12, 0x9a, 0x01, 0x0a, 0x07, 0x47, + 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x2a, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x4c, 0x69, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x42, 0x92, 0x41, 0x1d, 0x0a, 0x04, 0x55, 0x73, 0x65, - 0x72, 0x12, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x20, 0x6f, - 0x66, 0x20, 0x61, 0x20, 0x55, 0x73, 0x65, 0x72, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, - 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, - 0x69, 0x64, 0x7d, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0xaf, 0x01, 0x0a, 0x0e, 0x47, - 0x65, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x31, 0x2e, + 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x36, 0x92, 0x41, 0x18, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x10, 0x47, 0x65, 0x74, 0x20, + 0x61, 0x20, 0x55, 0x73, 0x65, 0x72, 0x20, 0x62, 0x79, 0x20, 0x69, 0x64, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x15, 0x12, 0x13, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, + 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xbb, 0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, + 0x55, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x74, + 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, - 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x75, - 0x72, 0x72, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, - 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x36, 0x92, 0x41, 0x18, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, - 0x10, 0x47, 0x65, 0x74, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x75, 0x73, 0x65, - 0x72, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x12, 0x13, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x73, 0x65, 0x6c, 0x66, 0x12, 0xaa, 0x01, 0x0a, - 0x0a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x2d, 0x2e, 0x67, 0x6f, + 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, + 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x42, 0x92, 0x41, 0x1d, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15, 0x4c, 0x69, + 0x73, 0x74, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x55, + 0x73, 0x65, 0x72, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0xaf, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x43, 0x75, 0x72, + 0x72, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, + 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, - 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x74, - 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3d, 0x92, 0x41, 0x19, 0x0a, - 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x55, 0x73, - 0x65, 0x72, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x3a, 0x04, - 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x13, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, - 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x84, 0x02, 0x0a, 0x1b, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, - 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, - 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x64, 0x92, 0x41, 0x3d, 0x0a, - 0x05, 0x41, 0x75, 0x74, 0x68, 0x7a, 0x12, 0x34, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x20, 0x70, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x20, 0x61, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x20, 0x62, 0x79, 0x20, 0x61, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x72, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x1e, 0x3a, 0x01, 0x2a, 0x22, 0x19, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, - 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x63, 0x68, 0x65, 0x63, 0x6b, - 0x12, 0xc1, 0x01, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x75, 0x72, 0x72, + 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x36, 0x92, 0x41, 0x18, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x10, 0x47, 0x65, 0x74, 0x20, + 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x75, 0x73, 0x65, 0x72, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x15, 0x12, 0x13, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, + 0x72, 0x73, 0x2f, 0x73, 0x65, 0x6c, 0x66, 0x12, 0xaa, 0x01, 0x0a, 0x0a, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, - 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, - 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x3f, 0x92, 0x41, 0x1b, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x13, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x55, - 0x73, 0x65, 0x72, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, + 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3d, 0x92, 0x41, 0x19, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, + 0x12, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x55, 0x73, 0x65, 0x72, 0x20, 0x62, 0x79, + 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x13, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, - 0x73, 0x65, 0x6c, 0x66, 0x12, 0xca, 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x74, - 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x48, 0x92, 0x41, 0x23, 0x0a, 0x0c, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x20, 0x4b, 0x65, 0x79, 0x12, 0x13, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x20, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x20, 0x4b, 0x65, 0x79, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x14, 0x2f, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x6b, 0x65, - 0x79, 0x12, 0x9e, 0x01, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, - 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x31, 0x92, 0x41, 0x17, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0e, 0x47, 0x65, 0x74, - 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x11, 0x12, 0x0f, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x73, 0x12, 0xa5, 0x01, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x12, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, - 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, - 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x35, 0x92, 0x41, 0x15, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, - 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x17, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x0f, 0x2f, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x9e, 0x01, 0x0a, 0x08, 0x47, - 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2b, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, - 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x84, 0x02, 0x0a, 0x1b, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x37, 0x92, 0x41, 0x18, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0f, - 0x47, 0x65, 0x74, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x16, 0x12, 0x14, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xb0, 0x01, 0x0a, 0x0b, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2e, 0x2e, 0x67, 0x6f, + 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, + 0x73, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, + 0x73, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x64, 0x92, 0x41, 0x3d, 0x0a, 0x05, 0x41, 0x75, 0x74, 0x68, + 0x7a, 0x12, 0x34, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, + 0x6e, 0x20, 0x61, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x62, 0x79, 0x20, + 0x61, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x72, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x3a, 0x01, 0x2a, + 0x22, 0x19, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, + 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x12, 0xc1, 0x01, 0x0a, 0x11, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, + 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, + 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x75, 0x72, 0x72, 0x65, + 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3f, + 0x92, 0x41, 0x1b, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x55, 0x73, 0x65, 0x72, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x1b, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x13, 0x2f, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x73, 0x65, 0x6c, 0x66, 0x12, + 0xca, 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x4b, 0x65, 0x79, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x6f, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x48, 0x92, 0x41, 0x23, 0x0a, 0x0c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x20, 0x4b, 0x65, 0x79, 0x12, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x20, 0x4b, 0x65, 0x79, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, + 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x14, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x6b, 0x65, 0x79, 0x12, 0xa0, 0x01, 0x0a, + 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x40, 0x92, 0x41, - 0x1b, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x1c, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x14, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xd4, - 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, - 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4f, 0x92, 0x41, 0x26, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x12, 0x1d, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x72, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x98, 0x01, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, - 0x6c, 0x65, 0x73, 0x12, 0x2c, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, - 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, - 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x2e, 0x92, 0x41, 0x15, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x0d, 0x47, 0x65, 0x74, - 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, - 0x12, 0x0e, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x6f, 0x6c, 0x65, 0x73, - 0x12, 0x9f, 0x01, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, - 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, - 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, - 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, - 0x92, 0x41, 0x13, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x16, 0x3a, 0x04, 0x62, 0x6f, - 0x64, 0x79, 0x22, 0x0e, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x6f, 0x6c, - 0x65, 0x73, 0x12, 0xc7, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, - 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, - 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, - 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, + 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x74, + 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, + 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x33, 0x92, 0x41, 0x15, 0x0a, + 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0d, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x61, 0x20, + 0x75, 0x73, 0x65, 0x72, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x2a, 0x13, 0x2f, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, + 0x9e, 0x01, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, - 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x45, 0x92, 0x41, 0x24, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, - 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, - 0x6c, 0x20, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x18, 0x12, 0x16, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6f, - 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xcf, 0x01, 0x0a, - 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, + 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, + 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x92, + 0x41, 0x17, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0e, 0x47, 0x65, 0x74, 0x20, 0x61, + 0x6c, 0x6c, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x11, 0x12, + 0x0f, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, + 0x12, 0xa5, 0x01, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x12, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x35, 0x92, 0x41, 0x15, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0c, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x17, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x0f, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x9e, 0x01, 0x0a, 0x08, 0x47, 0x65, 0x74, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2b, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, + 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x37, 0x92, 0x41, 0x18, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0f, 0x47, 0x65, + 0x74, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x16, 0x12, 0x14, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xb0, 0x01, 0x0a, 0x0b, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, + 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, + 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x40, 0x92, 0x41, 0x1b, 0x0a, + 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, + 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x14, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xd4, 0x01, 0x0a, + 0x12, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x74, + 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, - 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x4a, 0x92, 0x41, 0x23, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x4f, 0x72, - 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, - 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x16, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xc8, - 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, - 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x47, 0x65, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, - 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4c, 0x92, 0x41, 0x26, - 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, - 0x47, 0x65, 0x74, 0x20, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x12, 0x1b, 0x2f, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xda, 0x01, 0x0a, 0x12, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, - 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, - 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x55, 0x92, 0x41, 0x29, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x4f, 0x72, 0x67, 0x61, 0x6e, - 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x23, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x1b, 0x2f, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xef, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x4f, - 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x6d, 0x69, 0x6e, - 0x73, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x4f, 0x92, 0x41, 0x26, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1d, + 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x12, 0x98, 0x01, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, + 0x73, 0x12, 0x2c, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, - 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, - 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x67, + 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, + 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, + 0x92, 0x41, 0x15, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x0d, 0x47, 0x65, 0x74, 0x20, 0x61, + 0x6c, 0x6c, 0x20, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x12, 0x0e, + 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x9f, + 0x01, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x2d, 0x2e, + 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, + 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, - 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5e, 0x92, 0x41, 0x31, 0x0a, 0x0c, 0x4f, - 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x47, 0x65, 0x74, - 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x61, - 0x6e, 0x20, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x24, 0x12, 0x22, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6f, - 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x69, 0x64, - 0x7d, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x12, 0xa9, 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, - 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, - 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x74, - 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x36, 0x92, 0x41, - 0x1a, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x0f, 0x47, 0x65, 0x74, 0x20, - 0x61, 0x6c, 0x6c, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x13, 0x12, 0x11, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x73, 0x12, 0xb1, 0x01, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x92, 0x41, + 0x13, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, + 0x52, 0x6f, 0x6c, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x16, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, + 0x22, 0x0e, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x6f, 0x6c, 0x65, 0x73, + 0x12, 0xc7, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, + 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, + 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x45, 0x92, 0x41, 0x24, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, + 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x18, 0x12, 0x16, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xcf, 0x01, 0x0a, 0x12, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, + 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3b, 0x92, 0x41, 0x19, - 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x3a, - 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x11, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0xaa, 0x01, 0x0a, 0x0a, 0x47, 0x65, 0x74, - 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, + 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x4a, 0x92, 0x41, 0x23, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x4f, 0x72, 0x67, 0x61, + 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x3a, 0x04, + 0x62, 0x6f, 0x64, 0x79, 0x22, 0x16, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xc8, 0x01, 0x0a, + 0x0f, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, + 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4c, 0x92, 0x41, 0x26, 0x0a, 0x0c, + 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x47, 0x65, + 0x74, 0x20, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x12, 0x1b, 0x2f, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xda, 0x01, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, + 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, + 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x55, 0x92, + 0x41, 0x29, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x23, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x1b, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, + 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xef, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, + 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x12, + 0x39, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, + 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, + 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x6d, + 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x67, 0x6f, 0x74, + 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x67, 0x61, + 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5e, 0x92, 0x41, 0x31, 0x0a, 0x0c, 0x4f, 0x72, 0x67, + 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x47, 0x65, 0x74, 0x20, 0x61, + 0x6c, 0x6c, 0x20, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x6e, 0x20, + 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x24, 0x12, 0x22, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, + 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x12, 0xa9, 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x50, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x36, 0x92, 0x41, 0x1a, 0x0a, + 0x07, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x0f, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, + 0x6c, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x12, + 0x11, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x73, 0x12, 0xb1, 0x01, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3d, 0x92, 0x41, 0x1c, 0x0a, 0x07, 0x50, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x12, 0x11, 0x47, 0x65, 0x74, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x12, 0x16, 0x2f, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, - 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xbc, 0x01, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, + 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3b, 0x92, 0x41, 0x19, 0x0a, 0x07, + 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, + 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x3a, 0x04, 0x62, + 0x6f, 0x64, 0x79, 0x22, 0x11, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0xaa, 0x01, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3d, 0x92, 0x41, 0x1c, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x12, 0x11, 0x47, 0x65, 0x74, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x20, + 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x12, 0x16, 0x2f, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, + 0x69, 0x64, 0x7d, 0x12, 0xbc, 0x01, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, - 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x46, 0x92, 0x41, - 0x1f, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x14, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x16, 0x2f, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, - 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xd0, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x74, - 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4e, 0x92, 0x41, 0x26, 0x0a, 0x07, 0x50, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x41, - 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, - 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x12, 0xa4, 0x01, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, - 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, - 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, - 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x34, 0x92, 0x41, 0x19, 0x0a, 0x06, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0f, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12, 0x12, 0x10, 0x2f, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xab, - 0x01, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x38, 0x92, 0x41, 0x17, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x18, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x10, 0x2f, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xb6, 0x01, 0x0a, - 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, - 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, - 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3d, 0x92, 0x41, 0x1f, 0x0a, 0x09, 0x4e, 0x61, 0x6d, - 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, - 0x12, 0x13, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0xbd, 0x01, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, - 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, - 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, + 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x46, 0x92, 0x41, 0x1f, 0x0a, + 0x07, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x1e, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x16, 0x2f, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x69, + 0x64, 0x7d, 0x12, 0xd0, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, + 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, + 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4e, 0x92, 0x41, 0x26, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x12, 0x1b, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x41, 0x64, 0x6d, + 0x69, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x61, + 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x12, 0xa4, 0x01, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x34, 0x92, 0x41, 0x19, 0x0a, 0x06, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x0f, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12, 0x12, 0x10, 0x2f, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xab, 0x01, 0x0a, + 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x41, 0x92, 0x41, 0x1d, 0x0a, 0x09, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x12, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, - 0x22, 0x13, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0xb6, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, - 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, - 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, + 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, + 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, + 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x38, 0x92, 0x41, 0x17, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0d, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x18, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x10, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xb6, 0x01, 0x0a, 0x0e, 0x4c, + 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x31, 0x2e, + 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, + 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, + 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3d, 0x92, 0x41, 0x1f, 0x0a, 0x09, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x4e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x12, 0x13, + 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x73, 0x12, 0xbd, 0x01, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x43, 0x92, 0x41, 0x20, 0x0a, 0x09, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x13, 0x47, 0x65, 0x74, 0x20, 0x4e, - 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6e, - 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xc8, - 0x01, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, - 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, - 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4c, 0x92, 0x41, 0x23, - 0x0a, 0x09, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x16, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x62, 0x79, - 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, - 0x18, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xa7, 0x01, 0x0a, 0x0c, 0x4c, 0x69, - 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x74, - 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, - 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x34, 0x92, - 0x41, 0x18, 0x0a, 0x06, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x0e, 0x47, 0x65, 0x74, 0x20, - 0x61, 0x6c, 0x6c, 0x20, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, - 0x12, 0x11, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x6f, 0x6c, 0x69, 0x63, - 0x69, 0x65, 0x73, 0x12, 0xac, 0x01, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, - 0x6c, 0x69, 0x63, 0x79, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x41, 0x92, 0x41, 0x1d, 0x0a, 0x09, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x12, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x13, + 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x73, 0x12, 0xb6, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, + 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x39, 0x92, 0x41, 0x17, 0x0a, 0x06, 0x50, 0x6f, - 0x6c, 0x69, 0x63, 0x79, 0x12, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, - 0x11, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, - 0x65, 0x73, 0x12, 0xb0, 0x01, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x43, 0x92, 0x41, 0x20, 0x0a, 0x09, 0x4e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x13, 0x47, 0x65, 0x74, 0x20, 0x4e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xc8, 0x01, 0x0a, + 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4c, 0x92, 0x41, 0x23, 0x0a, 0x09, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x62, 0x79, 0x20, 0x49, + 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x18, 0x2f, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xa7, 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, + 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, + 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, + 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, + 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, + 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x34, 0x92, 0x41, 0x18, + 0x0a, 0x06, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x0e, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, + 0x6c, 0x20, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x12, 0x11, + 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, + 0x73, 0x12, 0xac, 0x01, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, + 0x63, 0x79, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, + 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x39, 0x92, 0x41, 0x17, 0x0a, 0x06, 0x50, 0x6f, 0x6c, 0x69, + 0x63, 0x79, 0x12, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x50, 0x6f, 0x6c, 0x69, 0x63, + 0x79, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x11, 0x2f, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, + 0x12, 0xb0, 0x01, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, + 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x92, 0x41, 0x1d, 0x0a, 0x08, 0x52, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x11, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, + 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x12, + 0x12, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x12, 0xb7, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x92, 0x41, 0x1d, 0x0a, 0x08, - 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x11, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, - 0x6c, 0x20, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x14, 0x12, 0x12, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xb7, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, - 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, - 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, - 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x3e, 0x92, 0x41, 0x1b, 0x0a, 0x08, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0f, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x12, 0x2f, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0xb0, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x2e, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, - 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x2f, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, - 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x40, 0x92, 0x41, 0x1e, 0x0a, 0x08, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x12, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x79, - 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x69, - 0x64, 0x7d, 0x12, 0xfa, 0x01, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, - 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x80, 0x01, 0x92, - 0x41, 0x39, 0x0a, 0x08, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2d, 0x52, 0x65, - 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x61, 0x20, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x68, - 0x61, 0x76, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x20, 0x66, 0x72, 0x6f, - 0x6d, 0x20, 0x61, 0x6e, 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x3e, 0x2a, 0x3c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x2f, 0x7b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x73, - 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2f, 0x7b, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, - 0x69, 0x64, 0x7d, 0x2f, 0x72, 0x6f, 0x6c, 0x65, 0x2f, 0x7b, 0x72, 0x6f, 0x6c, 0x65, 0x7d, 0x12, - 0xb0, 0x01, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x73, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, + 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, + 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x92, + 0x41, 0x1b, 0x0a, 0x08, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0f, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x20, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x1a, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x12, 0x2f, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xb0, 0x01, + 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x2e, + 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, + 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, + 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, + 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x40, + 0x92, 0x41, 0x1e, 0x0a, 0x08, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x47, + 0x65, 0x74, 0x20, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x79, 0x20, 0x49, + 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, + 0x12, 0xfa, 0x01, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x80, 0x01, 0x92, 0x41, 0x39, + 0x0a, 0x08, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2d, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x20, 0x61, 0x20, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x68, 0x61, 0x76, + 0x69, 0x6e, 0x67, 0x20, 0x61, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, + 0x61, 0x6e, 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3e, 0x2a, + 0x3c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x2f, 0x7b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x73, 0x75, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x2f, 0x7b, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, + 0x7d, 0x2f, 0x72, 0x6f, 0x6c, 0x65, 0x2f, 0x7b, 0x72, 0x6f, 0x6c, 0x65, 0x7d, 0x12, 0xb0, 0x01, + 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, + 0x30, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, + 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x92, 0x41, 0x1d, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x12, 0x11, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x52, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x12, 0x12, 0x2f, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, + 0x12, 0xb7, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x92, 0x41, 0x1d, 0x0a, 0x08, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x11, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x12, 0x12, - 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x73, 0x12, 0xb7, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, - 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x92, 0x41, - 0x1b, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0f, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x1a, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x12, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0xb0, 0x01, 0x0a, - 0x0b, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2e, 0x2e, 0x67, - 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, - 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x40, 0x92, - 0x41, 0x1e, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x12, 0x47, 0x65, - 0x74, 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, - 0xc2, 0x01, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, - 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x49, 0x92, 0x41, 0x21, 0x0a, 0x08, - 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x17, 0x2f, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2f, - 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x82, 0x02, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, - 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x37, 0x2e, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, + 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x92, 0x41, 0x1b, 0x0a, + 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, + 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x12, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0xb0, 0x01, 0x0a, 0x0b, 0x47, + 0x65, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2e, 0x2e, 0x67, 0x6f, 0x74, + 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x74, + 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x40, 0x92, 0x41, 0x1e, + 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x12, 0x47, 0x65, 0x74, 0x20, + 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0xc2, 0x01, + 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, + 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x49, 0x92, 0x41, 0x21, 0x0a, 0x08, 0x52, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x1f, 0x3a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x17, 0x2f, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, + 0x64, 0x7d, 0x12, 0x82, 0x02, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, + 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x37, 0x2e, 0x67, 0x6f, + 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, + 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x77, + 0x92, 0x41, 0x4a, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3e, 0x47, + 0x65, 0x74, 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x77, 0x69, 0x74, + 0x68, 0x20, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x20, 0x55, 0x73, 0x65, + 0x72, 0x20, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x20, 0x6f, 0x6e, 0x20, 0x41, 0x6e, 0x79, 0x20, + 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x54, 0x79, 0x70, 0x65, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x24, 0x12, 0x22, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x75, 0x73, + 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x72, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0xed, 0x01, 0x0a, 0x17, 0x43, 0x68, 0x65, 0x63, + 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, + 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x3b, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, + 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x68, 0x65, + 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x59, 0x92, 0x41, + 0x3d, 0x0a, 0x05, 0x41, 0x75, 0x74, 0x68, 0x7a, 0x12, 0x34, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x20, + 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x20, 0x61, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x20, 0x62, 0x79, 0x20, 0x61, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x72, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x13, 0x3a, 0x01, 0x2a, 0x22, 0x0e, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x12, 0xb5, 0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x74, + 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, - 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, - 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x77, 0x92, 0x41, 0x4a, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, - 0x3e, 0x47, 0x65, 0x74, 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x77, - 0x69, 0x74, 0x68, 0x20, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x20, 0x55, - 0x73, 0x65, 0x72, 0x20, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x20, 0x6f, 0x6e, 0x20, 0x41, 0x6e, - 0x79, 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x54, 0x79, 0x70, 0x65, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x12, 0x22, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, - 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x7d, 0x2f, - 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0xed, 0x01, 0x0a, 0x17, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, + 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x3c, 0x92, 0x41, 0x1e, 0x0a, 0x08, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, + 0x12, 0x12, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x12, 0x13, 0x2f, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, + 0xed, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x38, 0x2e, 0x67, 0x6f, 0x74, 0x6f, + 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5f, + 0x92, 0x41, 0x30, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x52, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x3a, 0x01, 0x2a, 0x1a, 0x21, 0x2f, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x2f, 0x72, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x12, + 0xd7, 0x01, 0x0a, 0x11, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x3b, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, - 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x59, - 0x92, 0x41, 0x3d, 0x0a, 0x05, 0x41, 0x75, 0x74, 0x68, 0x7a, 0x12, 0x34, 0x63, 0x68, 0x65, 0x63, - 0x6b, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, - 0x20, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x20, 0x61, 0x20, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x62, 0x79, 0x20, 0x61, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x72, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x3a, 0x01, 0x2a, 0x22, 0x0e, 0x2f, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x12, 0xb5, 0x01, 0x0a, 0x0e, 0x4c, 0x69, - 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x31, 0x2e, 0x67, - 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x32, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x3c, 0x92, 0x41, 0x1e, 0x0a, 0x08, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, - 0x74, 0x79, 0x12, 0x12, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x69, 0x74, 0x69, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x12, 0x13, 0x2f, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69, 0x65, - 0x73, 0x12, 0xed, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x38, 0x2e, 0x67, 0x6f, + 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x5f, 0x92, 0x41, 0x30, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x3a, 0x01, 0x2a, 0x1a, 0x21, - 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, - 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, - 0x7d, 0x12, 0xd7, 0x01, 0x0a, 0x11, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x75, 0x6c, 0x65, - 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, - 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, - 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x73, 0x68, 0x69, 0x65, - 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, - 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x55, 0x92, 0x41, 0x2a, 0x0a, 0x0c, 0x52, 0x75, 0x6c, 0x65, 0x73, - 0x20, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, - 0x52, 0x75, 0x6c, 0x65, 0x73, 0x20, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x3a, 0x01, 0x2a, 0x1a, 0x1d, 0x2f, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x2f, 0x72, - 0x75, 0x6c, 0x65, 0x73, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x42, 0x7f, 0x92, 0x41, 0x1e, - 0x12, 0x19, 0x0a, 0x10, 0x53, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x41, 0x64, 0x6d, 0x69, 0x6e, - 0x20, 0x41, 0x50, 0x49, 0x32, 0x05, 0x30, 0x2e, 0x31, 0x2e, 0x31, 0x2a, 0x01, 0x01, 0x0a, 0x25, - 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x6e, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x05, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x5a, 0x2e, 0x67, 0x69, - 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x6e, 0x2f, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x3b, 0x73, - 0x68, 0x69, 0x65, 0x6c, 0x64, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, + 0x75, 0x6c, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x55, 0x92, 0x41, 0x2a, 0x0a, 0x0c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x20, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x52, 0x75, + 0x6c, 0x65, 0x73, 0x20, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x3a, 0x01, 0x2a, 0x1a, 0x1d, 0x2f, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x2f, 0x72, 0x75, 0x6c, + 0x65, 0x73, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x42, 0x7f, 0x92, 0x41, 0x1e, 0x12, 0x19, + 0x0a, 0x10, 0x53, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x20, 0x41, + 0x50, 0x49, 0x32, 0x05, 0x30, 0x2e, 0x31, 0x2e, 0x31, 0x2a, 0x01, 0x01, 0x0a, 0x25, 0x63, 0x6f, + 0x6d, 0x2e, 0x67, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x6e, 0x2e, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x42, 0x05, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, + 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x6e, 0x2f, 0x73, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x3b, 0x73, 0x68, 0x69, + 0x65, 0x6c, 0x64, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, } var ( @@ -9186,7 +9285,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_rawDescGZIP() []byte { return file_gotocompany_shield_v1beta1_shield_proto_rawDescData } -var file_gotocompany_shield_v1beta1_shield_proto_msgTypes = make([]protoimpl.MessageInfo, 139) +var file_gotocompany_shield_v1beta1_shield_proto_msgTypes = make([]protoimpl.MessageInfo, 141) var file_gotocompany_shield_v1beta1_shield_proto_goTypes = []interface{}{ (*UserRequestBody)(nil), // 0: gotocompany.shield.v1beta1.UserRequestBody (*CreateUserRequest)(nil), // 1: gotocompany.shield.v1beta1.CreateUserRequest @@ -9206,136 +9305,138 @@ var file_gotocompany_shield_v1beta1_shield_proto_goTypes = []interface{}{ (*GetCurrentUserRequest)(nil), // 15: gotocompany.shield.v1beta1.GetCurrentUserRequest (*ListUsersRequest)(nil), // 16: gotocompany.shield.v1beta1.ListUsersRequest (*ListUsersResponse)(nil), // 17: gotocompany.shield.v1beta1.ListUsersResponse - (*GroupRequestBody)(nil), // 18: gotocompany.shield.v1beta1.GroupRequestBody - (*CreateGroupRequest)(nil), // 19: gotocompany.shield.v1beta1.CreateGroupRequest - (*ListUserGroupsResponse)(nil), // 20: gotocompany.shield.v1beta1.ListUserGroupsResponse - (*Group)(nil), // 21: gotocompany.shield.v1beta1.Group - (*CreateGroupResponse)(nil), // 22: gotocompany.shield.v1beta1.CreateGroupResponse - (*GetGroupResponse)(nil), // 23: gotocompany.shield.v1beta1.GetGroupResponse - (*UpdateGroupResponse)(nil), // 24: gotocompany.shield.v1beta1.UpdateGroupResponse - (*UpdateGroupRequest)(nil), // 25: gotocompany.shield.v1beta1.UpdateGroupRequest - (*UpdateCurrentUserRequest)(nil), // 26: gotocompany.shield.v1beta1.UpdateCurrentUserRequest - (*GetGroupRequest)(nil), // 27: gotocompany.shield.v1beta1.GetGroupRequest - (*ListGroupsRequest)(nil), // 28: gotocompany.shield.v1beta1.ListGroupsRequest - (*ListGroupsResponse)(nil), // 29: gotocompany.shield.v1beta1.ListGroupsResponse - (*Role)(nil), // 30: gotocompany.shield.v1beta1.Role - (*RoleRequestBody)(nil), // 31: gotocompany.shield.v1beta1.RoleRequestBody - (*CreateRoleRequest)(nil), // 32: gotocompany.shield.v1beta1.CreateRoleRequest - (*CreateRoleResponse)(nil), // 33: gotocompany.shield.v1beta1.CreateRoleResponse - (*GetRoleResponse)(nil), // 34: gotocompany.shield.v1beta1.GetRoleResponse - (*UpdateRoleResponse)(nil), // 35: gotocompany.shield.v1beta1.UpdateRoleResponse - (*GetRoleRequest)(nil), // 36: gotocompany.shield.v1beta1.GetRoleRequest - (*UpdateRoleRequest)(nil), // 37: gotocompany.shield.v1beta1.UpdateRoleRequest - (*ListRolesRequest)(nil), // 38: gotocompany.shield.v1beta1.ListRolesRequest - (*ListRolesResponse)(nil), // 39: gotocompany.shield.v1beta1.ListRolesResponse - (*OrganizationRequestBody)(nil), // 40: gotocompany.shield.v1beta1.OrganizationRequestBody - (*CreateOrganizationRequest)(nil), // 41: gotocompany.shield.v1beta1.CreateOrganizationRequest - (*Organization)(nil), // 42: gotocompany.shield.v1beta1.Organization - (*CreateOrganizationResponse)(nil), // 43: gotocompany.shield.v1beta1.CreateOrganizationResponse - (*GetOrganizationResponse)(nil), // 44: gotocompany.shield.v1beta1.GetOrganizationResponse - (*UpdateOrganizationResponse)(nil), // 45: gotocompany.shield.v1beta1.UpdateOrganizationResponse - (*ListOrganizationsRequest)(nil), // 46: gotocompany.shield.v1beta1.ListOrganizationsRequest - (*ListOrganizationsResponse)(nil), // 47: gotocompany.shield.v1beta1.ListOrganizationsResponse - (*GetOrganizationRequest)(nil), // 48: gotocompany.shield.v1beta1.GetOrganizationRequest - (*UpdateOrganizationRequest)(nil), // 49: gotocompany.shield.v1beta1.UpdateOrganizationRequest - (*ListOrganizationAdminsRequest)(nil), // 50: gotocompany.shield.v1beta1.ListOrganizationAdminsRequest - (*ListOrganizationAdminsResponse)(nil), // 51: gotocompany.shield.v1beta1.ListOrganizationAdminsResponse - (*ProjectRequestBody)(nil), // 52: gotocompany.shield.v1beta1.ProjectRequestBody - (*CreateProjectRequest)(nil), // 53: gotocompany.shield.v1beta1.CreateProjectRequest - (*Project)(nil), // 54: gotocompany.shield.v1beta1.Project - (*CreateProjectResponse)(nil), // 55: gotocompany.shield.v1beta1.CreateProjectResponse - (*GetProjectResponse)(nil), // 56: gotocompany.shield.v1beta1.GetProjectResponse - (*UpdateProjectResponse)(nil), // 57: gotocompany.shield.v1beta1.UpdateProjectResponse - (*ListProjectsRequest)(nil), // 58: gotocompany.shield.v1beta1.ListProjectsRequest - (*ListProjectsResponse)(nil), // 59: gotocompany.shield.v1beta1.ListProjectsResponse - (*GetProjectRequest)(nil), // 60: gotocompany.shield.v1beta1.GetProjectRequest - (*UpdateProjectRequest)(nil), // 61: gotocompany.shield.v1beta1.UpdateProjectRequest - (*ListProjectAdminsRequest)(nil), // 62: gotocompany.shield.v1beta1.ListProjectAdminsRequest - (*ListProjectAdminsResponse)(nil), // 63: gotocompany.shield.v1beta1.ListProjectAdminsResponse - (*Action)(nil), // 64: gotocompany.shield.v1beta1.Action - (*Namespace)(nil), // 65: gotocompany.shield.v1beta1.Namespace - (*Policy)(nil), // 66: gotocompany.shield.v1beta1.Policy - (*ActionRequestBody)(nil), // 67: gotocompany.shield.v1beta1.ActionRequestBody - (*NamespaceRequestBody)(nil), // 68: gotocompany.shield.v1beta1.NamespaceRequestBody - (*PolicyRequestBody)(nil), // 69: gotocompany.shield.v1beta1.PolicyRequestBody - (*ListActionsRequest)(nil), // 70: gotocompany.shield.v1beta1.ListActionsRequest - (*ListActionsResponse)(nil), // 71: gotocompany.shield.v1beta1.ListActionsResponse - (*CreateActionRequest)(nil), // 72: gotocompany.shield.v1beta1.CreateActionRequest - (*CreateActionResponse)(nil), // 73: gotocompany.shield.v1beta1.CreateActionResponse - (*GetActionRequest)(nil), // 74: gotocompany.shield.v1beta1.GetActionRequest - (*GetActionResponse)(nil), // 75: gotocompany.shield.v1beta1.GetActionResponse - (*UpdateActionRequest)(nil), // 76: gotocompany.shield.v1beta1.UpdateActionRequest - (*UpdateActionResponse)(nil), // 77: gotocompany.shield.v1beta1.UpdateActionResponse - (*ListNamespacesRequest)(nil), // 78: gotocompany.shield.v1beta1.ListNamespacesRequest - (*ListNamespacesResponse)(nil), // 79: gotocompany.shield.v1beta1.ListNamespacesResponse - (*CreateNamespaceRequest)(nil), // 80: gotocompany.shield.v1beta1.CreateNamespaceRequest - (*CreateNamespaceResponse)(nil), // 81: gotocompany.shield.v1beta1.CreateNamespaceResponse - (*GetNamespaceRequest)(nil), // 82: gotocompany.shield.v1beta1.GetNamespaceRequest - (*GetNamespaceResponse)(nil), // 83: gotocompany.shield.v1beta1.GetNamespaceResponse - (*UpdateNamespaceRequest)(nil), // 84: gotocompany.shield.v1beta1.UpdateNamespaceRequest - (*UpdateNamespaceResponse)(nil), // 85: gotocompany.shield.v1beta1.UpdateNamespaceResponse - (*ListPoliciesRequest)(nil), // 86: gotocompany.shield.v1beta1.ListPoliciesRequest - (*ListPoliciesResponse)(nil), // 87: gotocompany.shield.v1beta1.ListPoliciesResponse - (*CreatePolicyRequest)(nil), // 88: gotocompany.shield.v1beta1.CreatePolicyRequest - (*CreatePolicyResponse)(nil), // 89: gotocompany.shield.v1beta1.CreatePolicyResponse - (*GetPolicyRequest)(nil), // 90: gotocompany.shield.v1beta1.GetPolicyRequest - (*GetPolicyResponse)(nil), // 91: gotocompany.shield.v1beta1.GetPolicyResponse - (*UpdatePolicyRequest)(nil), // 92: gotocompany.shield.v1beta1.UpdatePolicyRequest - (*UpdatePolicyResponse)(nil), // 93: gotocompany.shield.v1beta1.UpdatePolicyResponse - (*Relation)(nil), // 94: gotocompany.shield.v1beta1.Relation - (*Resource)(nil), // 95: gotocompany.shield.v1beta1.Resource - (*GroupRelation)(nil), // 96: gotocompany.shield.v1beta1.GroupRelation - (*ListRelationsRequest)(nil), // 97: gotocompany.shield.v1beta1.ListRelationsRequest - (*ListRelationsResponse)(nil), // 98: gotocompany.shield.v1beta1.ListRelationsResponse - (*RelationRequestBody)(nil), // 99: gotocompany.shield.v1beta1.RelationRequestBody - (*CreateRelationRequest)(nil), // 100: gotocompany.shield.v1beta1.CreateRelationRequest - (*CreateRelationResponse)(nil), // 101: gotocompany.shield.v1beta1.CreateRelationResponse - (*GetRelationRequest)(nil), // 102: gotocompany.shield.v1beta1.GetRelationRequest - (*GetRelationResponse)(nil), // 103: gotocompany.shield.v1beta1.GetRelationResponse - (*UpdateRelationRequest)(nil), // 104: gotocompany.shield.v1beta1.UpdateRelationRequest - (*UpdateRelationResponse)(nil), // 105: gotocompany.shield.v1beta1.UpdateRelationResponse - (*ListGroupRelationsRequest)(nil), // 106: gotocompany.shield.v1beta1.ListGroupRelationsRequest - (*ListGroupRelationsResponse)(nil), // 107: gotocompany.shield.v1beta1.ListGroupRelationsResponse - (*DeleteRelationRequest)(nil), // 108: gotocompany.shield.v1beta1.DeleteRelationRequest - (*DeleteRelationResponse)(nil), // 109: gotocompany.shield.v1beta1.DeleteRelationResponse - (*ListResourcesRequest)(nil), // 110: gotocompany.shield.v1beta1.ListResourcesRequest - (*ListResourcesResponse)(nil), // 111: gotocompany.shield.v1beta1.ListResourcesResponse - (*ResourceRequestBody)(nil), // 112: gotocompany.shield.v1beta1.ResourceRequestBody - (*CreateResourceRequest)(nil), // 113: gotocompany.shield.v1beta1.CreateResourceRequest - (*CreateResourceResponse)(nil), // 114: gotocompany.shield.v1beta1.CreateResourceResponse - (*GetResourceRequest)(nil), // 115: gotocompany.shield.v1beta1.GetResourceRequest - (*GetResourceResponse)(nil), // 116: gotocompany.shield.v1beta1.GetResourceResponse - (*UpdateResourceRequest)(nil), // 117: gotocompany.shield.v1beta1.UpdateResourceRequest - (*UpdateResourceResponse)(nil), // 118: gotocompany.shield.v1beta1.UpdateResourceResponse - (*ResourcePermission)(nil), // 119: gotocompany.shield.v1beta1.ResourcePermission - (*CheckResourcePermissionRequest)(nil), // 120: gotocompany.shield.v1beta1.CheckResourcePermissionRequest - (*CheckResourcePermissionResponse)(nil), // 121: gotocompany.shield.v1beta1.CheckResourcePermissionResponse - (*CheckResourceUserPermissionRequest)(nil), // 122: gotocompany.shield.v1beta1.CheckResourceUserPermissionRequest - (*CheckResourceUserPermissionResponse)(nil), // 123: gotocompany.shield.v1beta1.CheckResourceUserPermissionResponse - (*ListAllUserResourcesRequest)(nil), // 124: gotocompany.shield.v1beta1.ListAllUserResourcesRequest - (*ListAllUserResourcesResponse)(nil), // 125: gotocompany.shield.v1beta1.ListAllUserResourcesResponse - (*Activity)(nil), // 126: gotocompany.shield.v1beta1.Activity - (*ListActivitiesRequest)(nil), // 127: gotocompany.shield.v1beta1.ListActivitiesRequest - (*ListActivitiesResponse)(nil), // 128: gotocompany.shield.v1beta1.ListActivitiesResponse - (*UpsertResourcesConfigRequest)(nil), // 129: gotocompany.shield.v1beta1.UpsertResourcesConfigRequest - (*UpsertResourcesConfigResponse)(nil), // 130: gotocompany.shield.v1beta1.UpsertResourcesConfigResponse - (*UpsertRulesConfigRequest)(nil), // 131: gotocompany.shield.v1beta1.UpsertRulesConfigRequest - (*UpsertRulesConfigResponse)(nil), // 132: gotocompany.shield.v1beta1.UpsertRulesConfigResponse - (*CheckResourcePermissionResponse_ResourcePermissionResponse)(nil), // 133: gotocompany.shield.v1beta1.CheckResourcePermissionResponse.ResourcePermissionResponse - (*CheckResourceUserPermissionResponse_ResourcePermissionResponse)(nil), // 134: gotocompany.shield.v1beta1.CheckResourceUserPermissionResponse.ResourcePermissionResponse - nil, // 135: gotocompany.shield.v1beta1.Activity.DataEntry - nil, // 136: gotocompany.shield.v1beta1.Activity.MetadataEntry - nil, // 137: gotocompany.shield.v1beta1.ListActivitiesRequest.DataEntry - nil, // 138: gotocompany.shield.v1beta1.ListActivitiesRequest.MetadataEntry - (*structpb.Struct)(nil), // 139: google.protobuf.Struct - (*timestamppb.Timestamp)(nil), // 140: google.protobuf.Timestamp + (*DeleteUserRequest)(nil), // 18: gotocompany.shield.v1beta1.DeleteUserRequest + (*DeleteUserResponse)(nil), // 19: gotocompany.shield.v1beta1.DeleteUserResponse + (*GroupRequestBody)(nil), // 20: gotocompany.shield.v1beta1.GroupRequestBody + (*CreateGroupRequest)(nil), // 21: gotocompany.shield.v1beta1.CreateGroupRequest + (*ListUserGroupsResponse)(nil), // 22: gotocompany.shield.v1beta1.ListUserGroupsResponse + (*Group)(nil), // 23: gotocompany.shield.v1beta1.Group + (*CreateGroupResponse)(nil), // 24: gotocompany.shield.v1beta1.CreateGroupResponse + (*GetGroupResponse)(nil), // 25: gotocompany.shield.v1beta1.GetGroupResponse + (*UpdateGroupResponse)(nil), // 26: gotocompany.shield.v1beta1.UpdateGroupResponse + (*UpdateGroupRequest)(nil), // 27: gotocompany.shield.v1beta1.UpdateGroupRequest + (*UpdateCurrentUserRequest)(nil), // 28: gotocompany.shield.v1beta1.UpdateCurrentUserRequest + (*GetGroupRequest)(nil), // 29: gotocompany.shield.v1beta1.GetGroupRequest + (*ListGroupsRequest)(nil), // 30: gotocompany.shield.v1beta1.ListGroupsRequest + (*ListGroupsResponse)(nil), // 31: gotocompany.shield.v1beta1.ListGroupsResponse + (*Role)(nil), // 32: gotocompany.shield.v1beta1.Role + (*RoleRequestBody)(nil), // 33: gotocompany.shield.v1beta1.RoleRequestBody + (*CreateRoleRequest)(nil), // 34: gotocompany.shield.v1beta1.CreateRoleRequest + (*CreateRoleResponse)(nil), // 35: gotocompany.shield.v1beta1.CreateRoleResponse + (*GetRoleResponse)(nil), // 36: gotocompany.shield.v1beta1.GetRoleResponse + (*UpdateRoleResponse)(nil), // 37: gotocompany.shield.v1beta1.UpdateRoleResponse + (*GetRoleRequest)(nil), // 38: gotocompany.shield.v1beta1.GetRoleRequest + (*UpdateRoleRequest)(nil), // 39: gotocompany.shield.v1beta1.UpdateRoleRequest + (*ListRolesRequest)(nil), // 40: gotocompany.shield.v1beta1.ListRolesRequest + (*ListRolesResponse)(nil), // 41: gotocompany.shield.v1beta1.ListRolesResponse + (*OrganizationRequestBody)(nil), // 42: gotocompany.shield.v1beta1.OrganizationRequestBody + (*CreateOrganizationRequest)(nil), // 43: gotocompany.shield.v1beta1.CreateOrganizationRequest + (*Organization)(nil), // 44: gotocompany.shield.v1beta1.Organization + (*CreateOrganizationResponse)(nil), // 45: gotocompany.shield.v1beta1.CreateOrganizationResponse + (*GetOrganizationResponse)(nil), // 46: gotocompany.shield.v1beta1.GetOrganizationResponse + (*UpdateOrganizationResponse)(nil), // 47: gotocompany.shield.v1beta1.UpdateOrganizationResponse + (*ListOrganizationsRequest)(nil), // 48: gotocompany.shield.v1beta1.ListOrganizationsRequest + (*ListOrganizationsResponse)(nil), // 49: gotocompany.shield.v1beta1.ListOrganizationsResponse + (*GetOrganizationRequest)(nil), // 50: gotocompany.shield.v1beta1.GetOrganizationRequest + (*UpdateOrganizationRequest)(nil), // 51: gotocompany.shield.v1beta1.UpdateOrganizationRequest + (*ListOrganizationAdminsRequest)(nil), // 52: gotocompany.shield.v1beta1.ListOrganizationAdminsRequest + (*ListOrganizationAdminsResponse)(nil), // 53: gotocompany.shield.v1beta1.ListOrganizationAdminsResponse + (*ProjectRequestBody)(nil), // 54: gotocompany.shield.v1beta1.ProjectRequestBody + (*CreateProjectRequest)(nil), // 55: gotocompany.shield.v1beta1.CreateProjectRequest + (*Project)(nil), // 56: gotocompany.shield.v1beta1.Project + (*CreateProjectResponse)(nil), // 57: gotocompany.shield.v1beta1.CreateProjectResponse + (*GetProjectResponse)(nil), // 58: gotocompany.shield.v1beta1.GetProjectResponse + (*UpdateProjectResponse)(nil), // 59: gotocompany.shield.v1beta1.UpdateProjectResponse + (*ListProjectsRequest)(nil), // 60: gotocompany.shield.v1beta1.ListProjectsRequest + (*ListProjectsResponse)(nil), // 61: gotocompany.shield.v1beta1.ListProjectsResponse + (*GetProjectRequest)(nil), // 62: gotocompany.shield.v1beta1.GetProjectRequest + (*UpdateProjectRequest)(nil), // 63: gotocompany.shield.v1beta1.UpdateProjectRequest + (*ListProjectAdminsRequest)(nil), // 64: gotocompany.shield.v1beta1.ListProjectAdminsRequest + (*ListProjectAdminsResponse)(nil), // 65: gotocompany.shield.v1beta1.ListProjectAdminsResponse + (*Action)(nil), // 66: gotocompany.shield.v1beta1.Action + (*Namespace)(nil), // 67: gotocompany.shield.v1beta1.Namespace + (*Policy)(nil), // 68: gotocompany.shield.v1beta1.Policy + (*ActionRequestBody)(nil), // 69: gotocompany.shield.v1beta1.ActionRequestBody + (*NamespaceRequestBody)(nil), // 70: gotocompany.shield.v1beta1.NamespaceRequestBody + (*PolicyRequestBody)(nil), // 71: gotocompany.shield.v1beta1.PolicyRequestBody + (*ListActionsRequest)(nil), // 72: gotocompany.shield.v1beta1.ListActionsRequest + (*ListActionsResponse)(nil), // 73: gotocompany.shield.v1beta1.ListActionsResponse + (*CreateActionRequest)(nil), // 74: gotocompany.shield.v1beta1.CreateActionRequest + (*CreateActionResponse)(nil), // 75: gotocompany.shield.v1beta1.CreateActionResponse + (*GetActionRequest)(nil), // 76: gotocompany.shield.v1beta1.GetActionRequest + (*GetActionResponse)(nil), // 77: gotocompany.shield.v1beta1.GetActionResponse + (*UpdateActionRequest)(nil), // 78: gotocompany.shield.v1beta1.UpdateActionRequest + (*UpdateActionResponse)(nil), // 79: gotocompany.shield.v1beta1.UpdateActionResponse + (*ListNamespacesRequest)(nil), // 80: gotocompany.shield.v1beta1.ListNamespacesRequest + (*ListNamespacesResponse)(nil), // 81: gotocompany.shield.v1beta1.ListNamespacesResponse + (*CreateNamespaceRequest)(nil), // 82: gotocompany.shield.v1beta1.CreateNamespaceRequest + (*CreateNamespaceResponse)(nil), // 83: gotocompany.shield.v1beta1.CreateNamespaceResponse + (*GetNamespaceRequest)(nil), // 84: gotocompany.shield.v1beta1.GetNamespaceRequest + (*GetNamespaceResponse)(nil), // 85: gotocompany.shield.v1beta1.GetNamespaceResponse + (*UpdateNamespaceRequest)(nil), // 86: gotocompany.shield.v1beta1.UpdateNamespaceRequest + (*UpdateNamespaceResponse)(nil), // 87: gotocompany.shield.v1beta1.UpdateNamespaceResponse + (*ListPoliciesRequest)(nil), // 88: gotocompany.shield.v1beta1.ListPoliciesRequest + (*ListPoliciesResponse)(nil), // 89: gotocompany.shield.v1beta1.ListPoliciesResponse + (*CreatePolicyRequest)(nil), // 90: gotocompany.shield.v1beta1.CreatePolicyRequest + (*CreatePolicyResponse)(nil), // 91: gotocompany.shield.v1beta1.CreatePolicyResponse + (*GetPolicyRequest)(nil), // 92: gotocompany.shield.v1beta1.GetPolicyRequest + (*GetPolicyResponse)(nil), // 93: gotocompany.shield.v1beta1.GetPolicyResponse + (*UpdatePolicyRequest)(nil), // 94: gotocompany.shield.v1beta1.UpdatePolicyRequest + (*UpdatePolicyResponse)(nil), // 95: gotocompany.shield.v1beta1.UpdatePolicyResponse + (*Relation)(nil), // 96: gotocompany.shield.v1beta1.Relation + (*Resource)(nil), // 97: gotocompany.shield.v1beta1.Resource + (*GroupRelation)(nil), // 98: gotocompany.shield.v1beta1.GroupRelation + (*ListRelationsRequest)(nil), // 99: gotocompany.shield.v1beta1.ListRelationsRequest + (*ListRelationsResponse)(nil), // 100: gotocompany.shield.v1beta1.ListRelationsResponse + (*RelationRequestBody)(nil), // 101: gotocompany.shield.v1beta1.RelationRequestBody + (*CreateRelationRequest)(nil), // 102: gotocompany.shield.v1beta1.CreateRelationRequest + (*CreateRelationResponse)(nil), // 103: gotocompany.shield.v1beta1.CreateRelationResponse + (*GetRelationRequest)(nil), // 104: gotocompany.shield.v1beta1.GetRelationRequest + (*GetRelationResponse)(nil), // 105: gotocompany.shield.v1beta1.GetRelationResponse + (*UpdateRelationRequest)(nil), // 106: gotocompany.shield.v1beta1.UpdateRelationRequest + (*UpdateRelationResponse)(nil), // 107: gotocompany.shield.v1beta1.UpdateRelationResponse + (*ListGroupRelationsRequest)(nil), // 108: gotocompany.shield.v1beta1.ListGroupRelationsRequest + (*ListGroupRelationsResponse)(nil), // 109: gotocompany.shield.v1beta1.ListGroupRelationsResponse + (*DeleteRelationRequest)(nil), // 110: gotocompany.shield.v1beta1.DeleteRelationRequest + (*DeleteRelationResponse)(nil), // 111: gotocompany.shield.v1beta1.DeleteRelationResponse + (*ListResourcesRequest)(nil), // 112: gotocompany.shield.v1beta1.ListResourcesRequest + (*ListResourcesResponse)(nil), // 113: gotocompany.shield.v1beta1.ListResourcesResponse + (*ResourceRequestBody)(nil), // 114: gotocompany.shield.v1beta1.ResourceRequestBody + (*CreateResourceRequest)(nil), // 115: gotocompany.shield.v1beta1.CreateResourceRequest + (*CreateResourceResponse)(nil), // 116: gotocompany.shield.v1beta1.CreateResourceResponse + (*GetResourceRequest)(nil), // 117: gotocompany.shield.v1beta1.GetResourceRequest + (*GetResourceResponse)(nil), // 118: gotocompany.shield.v1beta1.GetResourceResponse + (*UpdateResourceRequest)(nil), // 119: gotocompany.shield.v1beta1.UpdateResourceRequest + (*UpdateResourceResponse)(nil), // 120: gotocompany.shield.v1beta1.UpdateResourceResponse + (*ResourcePermission)(nil), // 121: gotocompany.shield.v1beta1.ResourcePermission + (*CheckResourcePermissionRequest)(nil), // 122: gotocompany.shield.v1beta1.CheckResourcePermissionRequest + (*CheckResourcePermissionResponse)(nil), // 123: gotocompany.shield.v1beta1.CheckResourcePermissionResponse + (*CheckResourceUserPermissionRequest)(nil), // 124: gotocompany.shield.v1beta1.CheckResourceUserPermissionRequest + (*CheckResourceUserPermissionResponse)(nil), // 125: gotocompany.shield.v1beta1.CheckResourceUserPermissionResponse + (*ListAllUserResourcesRequest)(nil), // 126: gotocompany.shield.v1beta1.ListAllUserResourcesRequest + (*ListAllUserResourcesResponse)(nil), // 127: gotocompany.shield.v1beta1.ListAllUserResourcesResponse + (*Activity)(nil), // 128: gotocompany.shield.v1beta1.Activity + (*ListActivitiesRequest)(nil), // 129: gotocompany.shield.v1beta1.ListActivitiesRequest + (*ListActivitiesResponse)(nil), // 130: gotocompany.shield.v1beta1.ListActivitiesResponse + (*UpsertResourcesConfigRequest)(nil), // 131: gotocompany.shield.v1beta1.UpsertResourcesConfigRequest + (*UpsertResourcesConfigResponse)(nil), // 132: gotocompany.shield.v1beta1.UpsertResourcesConfigResponse + (*UpsertRulesConfigRequest)(nil), // 133: gotocompany.shield.v1beta1.UpsertRulesConfigRequest + (*UpsertRulesConfigResponse)(nil), // 134: gotocompany.shield.v1beta1.UpsertRulesConfigResponse + (*CheckResourcePermissionResponse_ResourcePermissionResponse)(nil), // 135: gotocompany.shield.v1beta1.CheckResourcePermissionResponse.ResourcePermissionResponse + (*CheckResourceUserPermissionResponse_ResourcePermissionResponse)(nil), // 136: gotocompany.shield.v1beta1.CheckResourceUserPermissionResponse.ResourcePermissionResponse + nil, // 137: gotocompany.shield.v1beta1.Activity.DataEntry + nil, // 138: gotocompany.shield.v1beta1.Activity.MetadataEntry + nil, // 139: gotocompany.shield.v1beta1.ListActivitiesRequest.DataEntry + nil, // 140: gotocompany.shield.v1beta1.ListActivitiesRequest.MetadataEntry + (*structpb.Struct)(nil), // 141: google.protobuf.Struct + (*timestamppb.Timestamp)(nil), // 142: google.protobuf.Timestamp } var file_gotocompany_shield_v1beta1_shield_proto_depIdxs = []int32{ - 139, // 0: gotocompany.shield.v1beta1.UserRequestBody.metadata:type_name -> google.protobuf.Struct + 141, // 0: gotocompany.shield.v1beta1.UserRequestBody.metadata:type_name -> google.protobuf.Struct 0, // 1: gotocompany.shield.v1beta1.CreateUserRequest.body:type_name -> gotocompany.shield.v1beta1.UserRequestBody - 139, // 2: gotocompany.shield.v1beta1.User.metadata:type_name -> google.protobuf.Struct - 140, // 3: gotocompany.shield.v1beta1.User.created_at:type_name -> google.protobuf.Timestamp - 140, // 4: gotocompany.shield.v1beta1.User.updated_at:type_name -> google.protobuf.Timestamp + 141, // 2: gotocompany.shield.v1beta1.User.metadata:type_name -> google.protobuf.Struct + 142, // 3: gotocompany.shield.v1beta1.User.created_at:type_name -> google.protobuf.Timestamp + 142, // 4: gotocompany.shield.v1beta1.User.updated_at:type_name -> google.protobuf.Timestamp 2, // 5: gotocompany.shield.v1beta1.CreateUserResponse.user:type_name -> gotocompany.shield.v1beta1.User 4, // 6: gotocompany.shield.v1beta1.CreateMetadataKeyRequest.body:type_name -> gotocompany.shield.v1beta1.MetadataKeyRequestBody 6, // 7: gotocompany.shield.v1beta1.CreateMetadataKeyResponse.metadatakey:type_name -> gotocompany.shield.v1beta1.MetadataKey @@ -9345,214 +9446,216 @@ var file_gotocompany_shield_v1beta1_shield_proto_depIdxs = []int32{ 2, // 11: gotocompany.shield.v1beta1.UpdateCurrentUserResponse.user:type_name -> gotocompany.shield.v1beta1.User 0, // 12: gotocompany.shield.v1beta1.UpdateUserRequest.body:type_name -> gotocompany.shield.v1beta1.UserRequestBody 2, // 13: gotocompany.shield.v1beta1.ListUsersResponse.users:type_name -> gotocompany.shield.v1beta1.User - 139, // 14: gotocompany.shield.v1beta1.GroupRequestBody.metadata:type_name -> google.protobuf.Struct - 18, // 15: gotocompany.shield.v1beta1.CreateGroupRequest.body:type_name -> gotocompany.shield.v1beta1.GroupRequestBody - 21, // 16: gotocompany.shield.v1beta1.ListUserGroupsResponse.groups:type_name -> gotocompany.shield.v1beta1.Group - 139, // 17: gotocompany.shield.v1beta1.Group.metadata:type_name -> google.protobuf.Struct - 140, // 18: gotocompany.shield.v1beta1.Group.created_at:type_name -> google.protobuf.Timestamp - 140, // 19: gotocompany.shield.v1beta1.Group.updated_at:type_name -> google.protobuf.Timestamp - 21, // 20: gotocompany.shield.v1beta1.CreateGroupResponse.group:type_name -> gotocompany.shield.v1beta1.Group - 21, // 21: gotocompany.shield.v1beta1.GetGroupResponse.group:type_name -> gotocompany.shield.v1beta1.Group - 21, // 22: gotocompany.shield.v1beta1.UpdateGroupResponse.group:type_name -> gotocompany.shield.v1beta1.Group - 18, // 23: gotocompany.shield.v1beta1.UpdateGroupRequest.body:type_name -> gotocompany.shield.v1beta1.GroupRequestBody + 141, // 14: gotocompany.shield.v1beta1.GroupRequestBody.metadata:type_name -> google.protobuf.Struct + 20, // 15: gotocompany.shield.v1beta1.CreateGroupRequest.body:type_name -> gotocompany.shield.v1beta1.GroupRequestBody + 23, // 16: gotocompany.shield.v1beta1.ListUserGroupsResponse.groups:type_name -> gotocompany.shield.v1beta1.Group + 141, // 17: gotocompany.shield.v1beta1.Group.metadata:type_name -> google.protobuf.Struct + 142, // 18: gotocompany.shield.v1beta1.Group.created_at:type_name -> google.protobuf.Timestamp + 142, // 19: gotocompany.shield.v1beta1.Group.updated_at:type_name -> google.protobuf.Timestamp + 23, // 20: gotocompany.shield.v1beta1.CreateGroupResponse.group:type_name -> gotocompany.shield.v1beta1.Group + 23, // 21: gotocompany.shield.v1beta1.GetGroupResponse.group:type_name -> gotocompany.shield.v1beta1.Group + 23, // 22: gotocompany.shield.v1beta1.UpdateGroupResponse.group:type_name -> gotocompany.shield.v1beta1.Group + 20, // 23: gotocompany.shield.v1beta1.UpdateGroupRequest.body:type_name -> gotocompany.shield.v1beta1.GroupRequestBody 0, // 24: gotocompany.shield.v1beta1.UpdateCurrentUserRequest.body:type_name -> gotocompany.shield.v1beta1.UserRequestBody - 21, // 25: gotocompany.shield.v1beta1.ListGroupsResponse.groups:type_name -> gotocompany.shield.v1beta1.Group - 65, // 26: gotocompany.shield.v1beta1.Role.namespace:type_name -> gotocompany.shield.v1beta1.Namespace - 139, // 27: gotocompany.shield.v1beta1.Role.metadata:type_name -> google.protobuf.Struct - 140, // 28: gotocompany.shield.v1beta1.Role.created_at:type_name -> google.protobuf.Timestamp - 140, // 29: gotocompany.shield.v1beta1.Role.updated_at:type_name -> google.protobuf.Timestamp - 139, // 30: gotocompany.shield.v1beta1.RoleRequestBody.metadata:type_name -> google.protobuf.Struct - 31, // 31: gotocompany.shield.v1beta1.CreateRoleRequest.body:type_name -> gotocompany.shield.v1beta1.RoleRequestBody - 30, // 32: gotocompany.shield.v1beta1.CreateRoleResponse.role:type_name -> gotocompany.shield.v1beta1.Role - 30, // 33: gotocompany.shield.v1beta1.GetRoleResponse.role:type_name -> gotocompany.shield.v1beta1.Role - 30, // 34: gotocompany.shield.v1beta1.UpdateRoleResponse.role:type_name -> gotocompany.shield.v1beta1.Role - 31, // 35: gotocompany.shield.v1beta1.UpdateRoleRequest.body:type_name -> gotocompany.shield.v1beta1.RoleRequestBody - 30, // 36: gotocompany.shield.v1beta1.ListRolesResponse.roles:type_name -> gotocompany.shield.v1beta1.Role - 139, // 37: gotocompany.shield.v1beta1.OrganizationRequestBody.metadata:type_name -> google.protobuf.Struct - 40, // 38: gotocompany.shield.v1beta1.CreateOrganizationRequest.body:type_name -> gotocompany.shield.v1beta1.OrganizationRequestBody - 139, // 39: gotocompany.shield.v1beta1.Organization.metadata:type_name -> google.protobuf.Struct - 140, // 40: gotocompany.shield.v1beta1.Organization.created_at:type_name -> google.protobuf.Timestamp - 140, // 41: gotocompany.shield.v1beta1.Organization.updated_at:type_name -> google.protobuf.Timestamp - 42, // 42: gotocompany.shield.v1beta1.CreateOrganizationResponse.organization:type_name -> gotocompany.shield.v1beta1.Organization - 42, // 43: gotocompany.shield.v1beta1.GetOrganizationResponse.organization:type_name -> gotocompany.shield.v1beta1.Organization - 42, // 44: gotocompany.shield.v1beta1.UpdateOrganizationResponse.organization:type_name -> gotocompany.shield.v1beta1.Organization - 42, // 45: gotocompany.shield.v1beta1.ListOrganizationsResponse.organizations:type_name -> gotocompany.shield.v1beta1.Organization - 40, // 46: gotocompany.shield.v1beta1.UpdateOrganizationRequest.body:type_name -> gotocompany.shield.v1beta1.OrganizationRequestBody + 23, // 25: gotocompany.shield.v1beta1.ListGroupsResponse.groups:type_name -> gotocompany.shield.v1beta1.Group + 67, // 26: gotocompany.shield.v1beta1.Role.namespace:type_name -> gotocompany.shield.v1beta1.Namespace + 141, // 27: gotocompany.shield.v1beta1.Role.metadata:type_name -> google.protobuf.Struct + 142, // 28: gotocompany.shield.v1beta1.Role.created_at:type_name -> google.protobuf.Timestamp + 142, // 29: gotocompany.shield.v1beta1.Role.updated_at:type_name -> google.protobuf.Timestamp + 141, // 30: gotocompany.shield.v1beta1.RoleRequestBody.metadata:type_name -> google.protobuf.Struct + 33, // 31: gotocompany.shield.v1beta1.CreateRoleRequest.body:type_name -> gotocompany.shield.v1beta1.RoleRequestBody + 32, // 32: gotocompany.shield.v1beta1.CreateRoleResponse.role:type_name -> gotocompany.shield.v1beta1.Role + 32, // 33: gotocompany.shield.v1beta1.GetRoleResponse.role:type_name -> gotocompany.shield.v1beta1.Role + 32, // 34: gotocompany.shield.v1beta1.UpdateRoleResponse.role:type_name -> gotocompany.shield.v1beta1.Role + 33, // 35: gotocompany.shield.v1beta1.UpdateRoleRequest.body:type_name -> gotocompany.shield.v1beta1.RoleRequestBody + 32, // 36: gotocompany.shield.v1beta1.ListRolesResponse.roles:type_name -> gotocompany.shield.v1beta1.Role + 141, // 37: gotocompany.shield.v1beta1.OrganizationRequestBody.metadata:type_name -> google.protobuf.Struct + 42, // 38: gotocompany.shield.v1beta1.CreateOrganizationRequest.body:type_name -> gotocompany.shield.v1beta1.OrganizationRequestBody + 141, // 39: gotocompany.shield.v1beta1.Organization.metadata:type_name -> google.protobuf.Struct + 142, // 40: gotocompany.shield.v1beta1.Organization.created_at:type_name -> google.protobuf.Timestamp + 142, // 41: gotocompany.shield.v1beta1.Organization.updated_at:type_name -> google.protobuf.Timestamp + 44, // 42: gotocompany.shield.v1beta1.CreateOrganizationResponse.organization:type_name -> gotocompany.shield.v1beta1.Organization + 44, // 43: gotocompany.shield.v1beta1.GetOrganizationResponse.organization:type_name -> gotocompany.shield.v1beta1.Organization + 44, // 44: gotocompany.shield.v1beta1.UpdateOrganizationResponse.organization:type_name -> gotocompany.shield.v1beta1.Organization + 44, // 45: gotocompany.shield.v1beta1.ListOrganizationsResponse.organizations:type_name -> gotocompany.shield.v1beta1.Organization + 42, // 46: gotocompany.shield.v1beta1.UpdateOrganizationRequest.body:type_name -> gotocompany.shield.v1beta1.OrganizationRequestBody 2, // 47: gotocompany.shield.v1beta1.ListOrganizationAdminsResponse.users:type_name -> gotocompany.shield.v1beta1.User - 139, // 48: gotocompany.shield.v1beta1.ProjectRequestBody.metadata:type_name -> google.protobuf.Struct - 52, // 49: gotocompany.shield.v1beta1.CreateProjectRequest.body:type_name -> gotocompany.shield.v1beta1.ProjectRequestBody - 139, // 50: gotocompany.shield.v1beta1.Project.metadata:type_name -> google.protobuf.Struct - 140, // 51: gotocompany.shield.v1beta1.Project.created_at:type_name -> google.protobuf.Timestamp - 140, // 52: gotocompany.shield.v1beta1.Project.updated_at:type_name -> google.protobuf.Timestamp - 54, // 53: gotocompany.shield.v1beta1.CreateProjectResponse.project:type_name -> gotocompany.shield.v1beta1.Project - 54, // 54: gotocompany.shield.v1beta1.GetProjectResponse.project:type_name -> gotocompany.shield.v1beta1.Project - 54, // 55: gotocompany.shield.v1beta1.UpdateProjectResponse.project:type_name -> gotocompany.shield.v1beta1.Project - 54, // 56: gotocompany.shield.v1beta1.ListProjectsResponse.projects:type_name -> gotocompany.shield.v1beta1.Project - 52, // 57: gotocompany.shield.v1beta1.UpdateProjectRequest.body:type_name -> gotocompany.shield.v1beta1.ProjectRequestBody + 141, // 48: gotocompany.shield.v1beta1.ProjectRequestBody.metadata:type_name -> google.protobuf.Struct + 54, // 49: gotocompany.shield.v1beta1.CreateProjectRequest.body:type_name -> gotocompany.shield.v1beta1.ProjectRequestBody + 141, // 50: gotocompany.shield.v1beta1.Project.metadata:type_name -> google.protobuf.Struct + 142, // 51: gotocompany.shield.v1beta1.Project.created_at:type_name -> google.protobuf.Timestamp + 142, // 52: gotocompany.shield.v1beta1.Project.updated_at:type_name -> google.protobuf.Timestamp + 56, // 53: gotocompany.shield.v1beta1.CreateProjectResponse.project:type_name -> gotocompany.shield.v1beta1.Project + 56, // 54: gotocompany.shield.v1beta1.GetProjectResponse.project:type_name -> gotocompany.shield.v1beta1.Project + 56, // 55: gotocompany.shield.v1beta1.UpdateProjectResponse.project:type_name -> gotocompany.shield.v1beta1.Project + 56, // 56: gotocompany.shield.v1beta1.ListProjectsResponse.projects:type_name -> gotocompany.shield.v1beta1.Project + 54, // 57: gotocompany.shield.v1beta1.UpdateProjectRequest.body:type_name -> gotocompany.shield.v1beta1.ProjectRequestBody 2, // 58: gotocompany.shield.v1beta1.ListProjectAdminsResponse.users:type_name -> gotocompany.shield.v1beta1.User - 65, // 59: gotocompany.shield.v1beta1.Action.namespace:type_name -> gotocompany.shield.v1beta1.Namespace - 140, // 60: gotocompany.shield.v1beta1.Action.created_at:type_name -> google.protobuf.Timestamp - 140, // 61: gotocompany.shield.v1beta1.Action.updated_at:type_name -> google.protobuf.Timestamp - 140, // 62: gotocompany.shield.v1beta1.Namespace.created_at:type_name -> google.protobuf.Timestamp - 140, // 63: gotocompany.shield.v1beta1.Namespace.updated_at:type_name -> google.protobuf.Timestamp - 30, // 64: gotocompany.shield.v1beta1.Policy.role:type_name -> gotocompany.shield.v1beta1.Role - 64, // 65: gotocompany.shield.v1beta1.Policy.action:type_name -> gotocompany.shield.v1beta1.Action - 65, // 66: gotocompany.shield.v1beta1.Policy.namespace:type_name -> gotocompany.shield.v1beta1.Namespace - 140, // 67: gotocompany.shield.v1beta1.Policy.created_at:type_name -> google.protobuf.Timestamp - 140, // 68: gotocompany.shield.v1beta1.Policy.updated_at:type_name -> google.protobuf.Timestamp - 64, // 69: gotocompany.shield.v1beta1.ListActionsResponse.actions:type_name -> gotocompany.shield.v1beta1.Action - 67, // 70: gotocompany.shield.v1beta1.CreateActionRequest.body:type_name -> gotocompany.shield.v1beta1.ActionRequestBody - 64, // 71: gotocompany.shield.v1beta1.CreateActionResponse.action:type_name -> gotocompany.shield.v1beta1.Action - 64, // 72: gotocompany.shield.v1beta1.GetActionResponse.action:type_name -> gotocompany.shield.v1beta1.Action - 67, // 73: gotocompany.shield.v1beta1.UpdateActionRequest.body:type_name -> gotocompany.shield.v1beta1.ActionRequestBody - 64, // 74: gotocompany.shield.v1beta1.UpdateActionResponse.action:type_name -> gotocompany.shield.v1beta1.Action - 65, // 75: gotocompany.shield.v1beta1.ListNamespacesResponse.namespaces:type_name -> gotocompany.shield.v1beta1.Namespace - 68, // 76: gotocompany.shield.v1beta1.CreateNamespaceRequest.body:type_name -> gotocompany.shield.v1beta1.NamespaceRequestBody - 65, // 77: gotocompany.shield.v1beta1.CreateNamespaceResponse.namespace:type_name -> gotocompany.shield.v1beta1.Namespace - 65, // 78: gotocompany.shield.v1beta1.GetNamespaceResponse.namespace:type_name -> gotocompany.shield.v1beta1.Namespace - 68, // 79: gotocompany.shield.v1beta1.UpdateNamespaceRequest.body:type_name -> gotocompany.shield.v1beta1.NamespaceRequestBody - 65, // 80: gotocompany.shield.v1beta1.UpdateNamespaceResponse.namespace:type_name -> gotocompany.shield.v1beta1.Namespace - 66, // 81: gotocompany.shield.v1beta1.ListPoliciesResponse.policies:type_name -> gotocompany.shield.v1beta1.Policy - 69, // 82: gotocompany.shield.v1beta1.CreatePolicyRequest.body:type_name -> gotocompany.shield.v1beta1.PolicyRequestBody - 66, // 83: gotocompany.shield.v1beta1.CreatePolicyResponse.policies:type_name -> gotocompany.shield.v1beta1.Policy - 66, // 84: gotocompany.shield.v1beta1.GetPolicyResponse.policy:type_name -> gotocompany.shield.v1beta1.Policy - 69, // 85: gotocompany.shield.v1beta1.UpdatePolicyRequest.body:type_name -> gotocompany.shield.v1beta1.PolicyRequestBody - 66, // 86: gotocompany.shield.v1beta1.UpdatePolicyResponse.policies:type_name -> gotocompany.shield.v1beta1.Policy - 140, // 87: gotocompany.shield.v1beta1.Relation.created_at:type_name -> google.protobuf.Timestamp - 140, // 88: gotocompany.shield.v1beta1.Relation.updated_at:type_name -> google.protobuf.Timestamp - 54, // 89: gotocompany.shield.v1beta1.Resource.project:type_name -> gotocompany.shield.v1beta1.Project - 42, // 90: gotocompany.shield.v1beta1.Resource.organization:type_name -> gotocompany.shield.v1beta1.Organization - 65, // 91: gotocompany.shield.v1beta1.Resource.namespace:type_name -> gotocompany.shield.v1beta1.Namespace - 140, // 92: gotocompany.shield.v1beta1.Resource.created_at:type_name -> google.protobuf.Timestamp - 140, // 93: gotocompany.shield.v1beta1.Resource.updated_at:type_name -> google.protobuf.Timestamp + 67, // 59: gotocompany.shield.v1beta1.Action.namespace:type_name -> gotocompany.shield.v1beta1.Namespace + 142, // 60: gotocompany.shield.v1beta1.Action.created_at:type_name -> google.protobuf.Timestamp + 142, // 61: gotocompany.shield.v1beta1.Action.updated_at:type_name -> google.protobuf.Timestamp + 142, // 62: gotocompany.shield.v1beta1.Namespace.created_at:type_name -> google.protobuf.Timestamp + 142, // 63: gotocompany.shield.v1beta1.Namespace.updated_at:type_name -> google.protobuf.Timestamp + 32, // 64: gotocompany.shield.v1beta1.Policy.role:type_name -> gotocompany.shield.v1beta1.Role + 66, // 65: gotocompany.shield.v1beta1.Policy.action:type_name -> gotocompany.shield.v1beta1.Action + 67, // 66: gotocompany.shield.v1beta1.Policy.namespace:type_name -> gotocompany.shield.v1beta1.Namespace + 142, // 67: gotocompany.shield.v1beta1.Policy.created_at:type_name -> google.protobuf.Timestamp + 142, // 68: gotocompany.shield.v1beta1.Policy.updated_at:type_name -> google.protobuf.Timestamp + 66, // 69: gotocompany.shield.v1beta1.ListActionsResponse.actions:type_name -> gotocompany.shield.v1beta1.Action + 69, // 70: gotocompany.shield.v1beta1.CreateActionRequest.body:type_name -> gotocompany.shield.v1beta1.ActionRequestBody + 66, // 71: gotocompany.shield.v1beta1.CreateActionResponse.action:type_name -> gotocompany.shield.v1beta1.Action + 66, // 72: gotocompany.shield.v1beta1.GetActionResponse.action:type_name -> gotocompany.shield.v1beta1.Action + 69, // 73: gotocompany.shield.v1beta1.UpdateActionRequest.body:type_name -> gotocompany.shield.v1beta1.ActionRequestBody + 66, // 74: gotocompany.shield.v1beta1.UpdateActionResponse.action:type_name -> gotocompany.shield.v1beta1.Action + 67, // 75: gotocompany.shield.v1beta1.ListNamespacesResponse.namespaces:type_name -> gotocompany.shield.v1beta1.Namespace + 70, // 76: gotocompany.shield.v1beta1.CreateNamespaceRequest.body:type_name -> gotocompany.shield.v1beta1.NamespaceRequestBody + 67, // 77: gotocompany.shield.v1beta1.CreateNamespaceResponse.namespace:type_name -> gotocompany.shield.v1beta1.Namespace + 67, // 78: gotocompany.shield.v1beta1.GetNamespaceResponse.namespace:type_name -> gotocompany.shield.v1beta1.Namespace + 70, // 79: gotocompany.shield.v1beta1.UpdateNamespaceRequest.body:type_name -> gotocompany.shield.v1beta1.NamespaceRequestBody + 67, // 80: gotocompany.shield.v1beta1.UpdateNamespaceResponse.namespace:type_name -> gotocompany.shield.v1beta1.Namespace + 68, // 81: gotocompany.shield.v1beta1.ListPoliciesResponse.policies:type_name -> gotocompany.shield.v1beta1.Policy + 71, // 82: gotocompany.shield.v1beta1.CreatePolicyRequest.body:type_name -> gotocompany.shield.v1beta1.PolicyRequestBody + 68, // 83: gotocompany.shield.v1beta1.CreatePolicyResponse.policies:type_name -> gotocompany.shield.v1beta1.Policy + 68, // 84: gotocompany.shield.v1beta1.GetPolicyResponse.policy:type_name -> gotocompany.shield.v1beta1.Policy + 71, // 85: gotocompany.shield.v1beta1.UpdatePolicyRequest.body:type_name -> gotocompany.shield.v1beta1.PolicyRequestBody + 68, // 86: gotocompany.shield.v1beta1.UpdatePolicyResponse.policies:type_name -> gotocompany.shield.v1beta1.Policy + 142, // 87: gotocompany.shield.v1beta1.Relation.created_at:type_name -> google.protobuf.Timestamp + 142, // 88: gotocompany.shield.v1beta1.Relation.updated_at:type_name -> google.protobuf.Timestamp + 56, // 89: gotocompany.shield.v1beta1.Resource.project:type_name -> gotocompany.shield.v1beta1.Project + 44, // 90: gotocompany.shield.v1beta1.Resource.organization:type_name -> gotocompany.shield.v1beta1.Organization + 67, // 91: gotocompany.shield.v1beta1.Resource.namespace:type_name -> gotocompany.shield.v1beta1.Namespace + 142, // 92: gotocompany.shield.v1beta1.Resource.created_at:type_name -> google.protobuf.Timestamp + 142, // 93: gotocompany.shield.v1beta1.Resource.updated_at:type_name -> google.protobuf.Timestamp 2, // 94: gotocompany.shield.v1beta1.Resource.user:type_name -> gotocompany.shield.v1beta1.User 2, // 95: gotocompany.shield.v1beta1.GroupRelation.user:type_name -> gotocompany.shield.v1beta1.User - 21, // 96: gotocompany.shield.v1beta1.GroupRelation.group:type_name -> gotocompany.shield.v1beta1.Group - 94, // 97: gotocompany.shield.v1beta1.ListRelationsResponse.relations:type_name -> gotocompany.shield.v1beta1.Relation - 99, // 98: gotocompany.shield.v1beta1.CreateRelationRequest.body:type_name -> gotocompany.shield.v1beta1.RelationRequestBody - 94, // 99: gotocompany.shield.v1beta1.CreateRelationResponse.relation:type_name -> gotocompany.shield.v1beta1.Relation - 94, // 100: gotocompany.shield.v1beta1.GetRelationResponse.relation:type_name -> gotocompany.shield.v1beta1.Relation - 99, // 101: gotocompany.shield.v1beta1.UpdateRelationRequest.body:type_name -> gotocompany.shield.v1beta1.RelationRequestBody - 94, // 102: gotocompany.shield.v1beta1.UpdateRelationResponse.relation:type_name -> gotocompany.shield.v1beta1.Relation - 96, // 103: gotocompany.shield.v1beta1.ListGroupRelationsResponse.relations:type_name -> gotocompany.shield.v1beta1.GroupRelation - 95, // 104: gotocompany.shield.v1beta1.ListResourcesResponse.resources:type_name -> gotocompany.shield.v1beta1.Resource - 94, // 105: gotocompany.shield.v1beta1.ResourceRequestBody.relations:type_name -> gotocompany.shield.v1beta1.Relation - 112, // 106: gotocompany.shield.v1beta1.CreateResourceRequest.body:type_name -> gotocompany.shield.v1beta1.ResourceRequestBody - 95, // 107: gotocompany.shield.v1beta1.CreateResourceResponse.resource:type_name -> gotocompany.shield.v1beta1.Resource - 95, // 108: gotocompany.shield.v1beta1.GetResourceResponse.resource:type_name -> gotocompany.shield.v1beta1.Resource - 112, // 109: gotocompany.shield.v1beta1.UpdateResourceRequest.body:type_name -> gotocompany.shield.v1beta1.ResourceRequestBody - 95, // 110: gotocompany.shield.v1beta1.UpdateResourceResponse.resource:type_name -> gotocompany.shield.v1beta1.Resource - 119, // 111: gotocompany.shield.v1beta1.CheckResourcePermissionRequest.resource_permissions:type_name -> gotocompany.shield.v1beta1.ResourcePermission - 133, // 112: gotocompany.shield.v1beta1.CheckResourcePermissionResponse.resource_permissions:type_name -> gotocompany.shield.v1beta1.CheckResourcePermissionResponse.ResourcePermissionResponse - 119, // 113: gotocompany.shield.v1beta1.CheckResourceUserPermissionRequest.resource_permissions:type_name -> gotocompany.shield.v1beta1.ResourcePermission - 134, // 114: gotocompany.shield.v1beta1.CheckResourceUserPermissionResponse.resource_permissions:type_name -> gotocompany.shield.v1beta1.CheckResourceUserPermissionResponse.ResourcePermissionResponse - 139, // 115: gotocompany.shield.v1beta1.ListAllUserResourcesResponse.resources:type_name -> google.protobuf.Struct - 135, // 116: gotocompany.shield.v1beta1.Activity.data:type_name -> gotocompany.shield.v1beta1.Activity.DataEntry - 136, // 117: gotocompany.shield.v1beta1.Activity.metadata:type_name -> gotocompany.shield.v1beta1.Activity.MetadataEntry - 140, // 118: gotocompany.shield.v1beta1.Activity.timestamp:type_name -> google.protobuf.Timestamp - 137, // 119: gotocompany.shield.v1beta1.ListActivitiesRequest.data:type_name -> gotocompany.shield.v1beta1.ListActivitiesRequest.DataEntry - 138, // 120: gotocompany.shield.v1beta1.ListActivitiesRequest.metadata:type_name -> gotocompany.shield.v1beta1.ListActivitiesRequest.MetadataEntry - 126, // 121: gotocompany.shield.v1beta1.ListActivitiesResponse.activities:type_name -> gotocompany.shield.v1beta1.Activity - 140, // 122: gotocompany.shield.v1beta1.UpsertResourcesConfigResponse.created_at:type_name -> google.protobuf.Timestamp - 140, // 123: gotocompany.shield.v1beta1.UpsertResourcesConfigResponse.updated_at:type_name -> google.protobuf.Timestamp - 140, // 124: gotocompany.shield.v1beta1.UpsertRulesConfigResponse.created_at:type_name -> google.protobuf.Timestamp - 140, // 125: gotocompany.shield.v1beta1.UpsertRulesConfigResponse.updated_at:type_name -> google.protobuf.Timestamp + 23, // 96: gotocompany.shield.v1beta1.GroupRelation.group:type_name -> gotocompany.shield.v1beta1.Group + 96, // 97: gotocompany.shield.v1beta1.ListRelationsResponse.relations:type_name -> gotocompany.shield.v1beta1.Relation + 101, // 98: gotocompany.shield.v1beta1.CreateRelationRequest.body:type_name -> gotocompany.shield.v1beta1.RelationRequestBody + 96, // 99: gotocompany.shield.v1beta1.CreateRelationResponse.relation:type_name -> gotocompany.shield.v1beta1.Relation + 96, // 100: gotocompany.shield.v1beta1.GetRelationResponse.relation:type_name -> gotocompany.shield.v1beta1.Relation + 101, // 101: gotocompany.shield.v1beta1.UpdateRelationRequest.body:type_name -> gotocompany.shield.v1beta1.RelationRequestBody + 96, // 102: gotocompany.shield.v1beta1.UpdateRelationResponse.relation:type_name -> gotocompany.shield.v1beta1.Relation + 98, // 103: gotocompany.shield.v1beta1.ListGroupRelationsResponse.relations:type_name -> gotocompany.shield.v1beta1.GroupRelation + 97, // 104: gotocompany.shield.v1beta1.ListResourcesResponse.resources:type_name -> gotocompany.shield.v1beta1.Resource + 96, // 105: gotocompany.shield.v1beta1.ResourceRequestBody.relations:type_name -> gotocompany.shield.v1beta1.Relation + 114, // 106: gotocompany.shield.v1beta1.CreateResourceRequest.body:type_name -> gotocompany.shield.v1beta1.ResourceRequestBody + 97, // 107: gotocompany.shield.v1beta1.CreateResourceResponse.resource:type_name -> gotocompany.shield.v1beta1.Resource + 97, // 108: gotocompany.shield.v1beta1.GetResourceResponse.resource:type_name -> gotocompany.shield.v1beta1.Resource + 114, // 109: gotocompany.shield.v1beta1.UpdateResourceRequest.body:type_name -> gotocompany.shield.v1beta1.ResourceRequestBody + 97, // 110: gotocompany.shield.v1beta1.UpdateResourceResponse.resource:type_name -> gotocompany.shield.v1beta1.Resource + 121, // 111: gotocompany.shield.v1beta1.CheckResourcePermissionRequest.resource_permissions:type_name -> gotocompany.shield.v1beta1.ResourcePermission + 135, // 112: gotocompany.shield.v1beta1.CheckResourcePermissionResponse.resource_permissions:type_name -> gotocompany.shield.v1beta1.CheckResourcePermissionResponse.ResourcePermissionResponse + 121, // 113: gotocompany.shield.v1beta1.CheckResourceUserPermissionRequest.resource_permissions:type_name -> gotocompany.shield.v1beta1.ResourcePermission + 136, // 114: gotocompany.shield.v1beta1.CheckResourceUserPermissionResponse.resource_permissions:type_name -> gotocompany.shield.v1beta1.CheckResourceUserPermissionResponse.ResourcePermissionResponse + 141, // 115: gotocompany.shield.v1beta1.ListAllUserResourcesResponse.resources:type_name -> google.protobuf.Struct + 137, // 116: gotocompany.shield.v1beta1.Activity.data:type_name -> gotocompany.shield.v1beta1.Activity.DataEntry + 138, // 117: gotocompany.shield.v1beta1.Activity.metadata:type_name -> gotocompany.shield.v1beta1.Activity.MetadataEntry + 142, // 118: gotocompany.shield.v1beta1.Activity.timestamp:type_name -> google.protobuf.Timestamp + 139, // 119: gotocompany.shield.v1beta1.ListActivitiesRequest.data:type_name -> gotocompany.shield.v1beta1.ListActivitiesRequest.DataEntry + 140, // 120: gotocompany.shield.v1beta1.ListActivitiesRequest.metadata:type_name -> gotocompany.shield.v1beta1.ListActivitiesRequest.MetadataEntry + 128, // 121: gotocompany.shield.v1beta1.ListActivitiesResponse.activities:type_name -> gotocompany.shield.v1beta1.Activity + 142, // 122: gotocompany.shield.v1beta1.UpsertResourcesConfigResponse.created_at:type_name -> google.protobuf.Timestamp + 142, // 123: gotocompany.shield.v1beta1.UpsertResourcesConfigResponse.updated_at:type_name -> google.protobuf.Timestamp + 142, // 124: gotocompany.shield.v1beta1.UpsertRulesConfigResponse.created_at:type_name -> google.protobuf.Timestamp + 142, // 125: gotocompany.shield.v1beta1.UpsertRulesConfigResponse.updated_at:type_name -> google.protobuf.Timestamp 16, // 126: gotocompany.shield.v1beta1.ShieldService.ListUsers:input_type -> gotocompany.shield.v1beta1.ListUsersRequest 1, // 127: gotocompany.shield.v1beta1.ShieldService.CreateUser:input_type -> gotocompany.shield.v1beta1.CreateUserRequest 13, // 128: gotocompany.shield.v1beta1.ShieldService.GetUser:input_type -> gotocompany.shield.v1beta1.GetUserRequest 14, // 129: gotocompany.shield.v1beta1.ShieldService.ListUserGroups:input_type -> gotocompany.shield.v1beta1.ListUserGroupsRequest 15, // 130: gotocompany.shield.v1beta1.ShieldService.GetCurrentUser:input_type -> gotocompany.shield.v1beta1.GetCurrentUserRequest 12, // 131: gotocompany.shield.v1beta1.ShieldService.UpdateUser:input_type -> gotocompany.shield.v1beta1.UpdateUserRequest - 122, // 132: gotocompany.shield.v1beta1.ShieldService.CheckResourceUserPermission:input_type -> gotocompany.shield.v1beta1.CheckResourceUserPermissionRequest - 26, // 133: gotocompany.shield.v1beta1.ShieldService.UpdateCurrentUser:input_type -> gotocompany.shield.v1beta1.UpdateCurrentUserRequest + 124, // 132: gotocompany.shield.v1beta1.ShieldService.CheckResourceUserPermission:input_type -> gotocompany.shield.v1beta1.CheckResourceUserPermissionRequest + 28, // 133: gotocompany.shield.v1beta1.ShieldService.UpdateCurrentUser:input_type -> gotocompany.shield.v1beta1.UpdateCurrentUserRequest 5, // 134: gotocompany.shield.v1beta1.ShieldService.CreateMetadataKey:input_type -> gotocompany.shield.v1beta1.CreateMetadataKeyRequest - 28, // 135: gotocompany.shield.v1beta1.ShieldService.ListGroups:input_type -> gotocompany.shield.v1beta1.ListGroupsRequest - 19, // 136: gotocompany.shield.v1beta1.ShieldService.CreateGroup:input_type -> gotocompany.shield.v1beta1.CreateGroupRequest - 27, // 137: gotocompany.shield.v1beta1.ShieldService.GetGroup:input_type -> gotocompany.shield.v1beta1.GetGroupRequest - 25, // 138: gotocompany.shield.v1beta1.ShieldService.UpdateGroup:input_type -> gotocompany.shield.v1beta1.UpdateGroupRequest - 106, // 139: gotocompany.shield.v1beta1.ShieldService.ListGroupRelations:input_type -> gotocompany.shield.v1beta1.ListGroupRelationsRequest - 38, // 140: gotocompany.shield.v1beta1.ShieldService.ListRoles:input_type -> gotocompany.shield.v1beta1.ListRolesRequest - 32, // 141: gotocompany.shield.v1beta1.ShieldService.CreateRole:input_type -> gotocompany.shield.v1beta1.CreateRoleRequest - 46, // 142: gotocompany.shield.v1beta1.ShieldService.ListOrganizations:input_type -> gotocompany.shield.v1beta1.ListOrganizationsRequest - 41, // 143: gotocompany.shield.v1beta1.ShieldService.CreateOrganization:input_type -> gotocompany.shield.v1beta1.CreateOrganizationRequest - 48, // 144: gotocompany.shield.v1beta1.ShieldService.GetOrganization:input_type -> gotocompany.shield.v1beta1.GetOrganizationRequest - 49, // 145: gotocompany.shield.v1beta1.ShieldService.UpdateOrganization:input_type -> gotocompany.shield.v1beta1.UpdateOrganizationRequest - 50, // 146: gotocompany.shield.v1beta1.ShieldService.ListOrganizationAdmins:input_type -> gotocompany.shield.v1beta1.ListOrganizationAdminsRequest - 58, // 147: gotocompany.shield.v1beta1.ShieldService.ListProjects:input_type -> gotocompany.shield.v1beta1.ListProjectsRequest - 53, // 148: gotocompany.shield.v1beta1.ShieldService.CreateProject:input_type -> gotocompany.shield.v1beta1.CreateProjectRequest - 60, // 149: gotocompany.shield.v1beta1.ShieldService.GetProject:input_type -> gotocompany.shield.v1beta1.GetProjectRequest - 61, // 150: gotocompany.shield.v1beta1.ShieldService.UpdateProject:input_type -> gotocompany.shield.v1beta1.UpdateProjectRequest - 62, // 151: gotocompany.shield.v1beta1.ShieldService.ListProjectAdmins:input_type -> gotocompany.shield.v1beta1.ListProjectAdminsRequest - 70, // 152: gotocompany.shield.v1beta1.ShieldService.ListActions:input_type -> gotocompany.shield.v1beta1.ListActionsRequest - 72, // 153: gotocompany.shield.v1beta1.ShieldService.CreateAction:input_type -> gotocompany.shield.v1beta1.CreateActionRequest - 78, // 154: gotocompany.shield.v1beta1.ShieldService.ListNamespaces:input_type -> gotocompany.shield.v1beta1.ListNamespacesRequest - 80, // 155: gotocompany.shield.v1beta1.ShieldService.CreateNamespace:input_type -> gotocompany.shield.v1beta1.CreateNamespaceRequest - 82, // 156: gotocompany.shield.v1beta1.ShieldService.GetNamespace:input_type -> gotocompany.shield.v1beta1.GetNamespaceRequest - 84, // 157: gotocompany.shield.v1beta1.ShieldService.UpdateNamespace:input_type -> gotocompany.shield.v1beta1.UpdateNamespaceRequest - 86, // 158: gotocompany.shield.v1beta1.ShieldService.ListPolicies:input_type -> gotocompany.shield.v1beta1.ListPoliciesRequest - 88, // 159: gotocompany.shield.v1beta1.ShieldService.CreatePolicy:input_type -> gotocompany.shield.v1beta1.CreatePolicyRequest - 97, // 160: gotocompany.shield.v1beta1.ShieldService.ListRelations:input_type -> gotocompany.shield.v1beta1.ListRelationsRequest - 100, // 161: gotocompany.shield.v1beta1.ShieldService.CreateRelation:input_type -> gotocompany.shield.v1beta1.CreateRelationRequest - 102, // 162: gotocompany.shield.v1beta1.ShieldService.GetRelation:input_type -> gotocompany.shield.v1beta1.GetRelationRequest - 108, // 163: gotocompany.shield.v1beta1.ShieldService.DeleteRelation:input_type -> gotocompany.shield.v1beta1.DeleteRelationRequest - 110, // 164: gotocompany.shield.v1beta1.ShieldService.ListResources:input_type -> gotocompany.shield.v1beta1.ListResourcesRequest - 113, // 165: gotocompany.shield.v1beta1.ShieldService.CreateResource:input_type -> gotocompany.shield.v1beta1.CreateResourceRequest - 115, // 166: gotocompany.shield.v1beta1.ShieldService.GetResource:input_type -> gotocompany.shield.v1beta1.GetResourceRequest - 117, // 167: gotocompany.shield.v1beta1.ShieldService.UpdateResource:input_type -> gotocompany.shield.v1beta1.UpdateResourceRequest - 124, // 168: gotocompany.shield.v1beta1.ShieldService.ListAllUserResources:input_type -> gotocompany.shield.v1beta1.ListAllUserResourcesRequest - 120, // 169: gotocompany.shield.v1beta1.ShieldService.CheckResourcePermission:input_type -> gotocompany.shield.v1beta1.CheckResourcePermissionRequest - 127, // 170: gotocompany.shield.v1beta1.ShieldService.ListActivities:input_type -> gotocompany.shield.v1beta1.ListActivitiesRequest - 129, // 171: gotocompany.shield.v1beta1.ShieldService.UpsertResourcesConfig:input_type -> gotocompany.shield.v1beta1.UpsertResourcesConfigRequest - 131, // 172: gotocompany.shield.v1beta1.ShieldService.UpsertRulesConfig:input_type -> gotocompany.shield.v1beta1.UpsertRulesConfigRequest - 17, // 173: gotocompany.shield.v1beta1.ShieldService.ListUsers:output_type -> gotocompany.shield.v1beta1.ListUsersResponse - 3, // 174: gotocompany.shield.v1beta1.ShieldService.CreateUser:output_type -> gotocompany.shield.v1beta1.CreateUserResponse - 8, // 175: gotocompany.shield.v1beta1.ShieldService.GetUser:output_type -> gotocompany.shield.v1beta1.GetUserResponse - 20, // 176: gotocompany.shield.v1beta1.ShieldService.ListUserGroups:output_type -> gotocompany.shield.v1beta1.ListUserGroupsResponse - 9, // 177: gotocompany.shield.v1beta1.ShieldService.GetCurrentUser:output_type -> gotocompany.shield.v1beta1.GetCurrentUserResponse - 10, // 178: gotocompany.shield.v1beta1.ShieldService.UpdateUser:output_type -> gotocompany.shield.v1beta1.UpdateUserResponse - 123, // 179: gotocompany.shield.v1beta1.ShieldService.CheckResourceUserPermission:output_type -> gotocompany.shield.v1beta1.CheckResourceUserPermissionResponse - 11, // 180: gotocompany.shield.v1beta1.ShieldService.UpdateCurrentUser:output_type -> gotocompany.shield.v1beta1.UpdateCurrentUserResponse - 7, // 181: gotocompany.shield.v1beta1.ShieldService.CreateMetadataKey:output_type -> gotocompany.shield.v1beta1.CreateMetadataKeyResponse - 29, // 182: gotocompany.shield.v1beta1.ShieldService.ListGroups:output_type -> gotocompany.shield.v1beta1.ListGroupsResponse - 22, // 183: gotocompany.shield.v1beta1.ShieldService.CreateGroup:output_type -> gotocompany.shield.v1beta1.CreateGroupResponse - 23, // 184: gotocompany.shield.v1beta1.ShieldService.GetGroup:output_type -> gotocompany.shield.v1beta1.GetGroupResponse - 24, // 185: gotocompany.shield.v1beta1.ShieldService.UpdateGroup:output_type -> gotocompany.shield.v1beta1.UpdateGroupResponse - 107, // 186: gotocompany.shield.v1beta1.ShieldService.ListGroupRelations:output_type -> gotocompany.shield.v1beta1.ListGroupRelationsResponse - 39, // 187: gotocompany.shield.v1beta1.ShieldService.ListRoles:output_type -> gotocompany.shield.v1beta1.ListRolesResponse - 33, // 188: gotocompany.shield.v1beta1.ShieldService.CreateRole:output_type -> gotocompany.shield.v1beta1.CreateRoleResponse - 47, // 189: gotocompany.shield.v1beta1.ShieldService.ListOrganizations:output_type -> gotocompany.shield.v1beta1.ListOrganizationsResponse - 43, // 190: gotocompany.shield.v1beta1.ShieldService.CreateOrganization:output_type -> gotocompany.shield.v1beta1.CreateOrganizationResponse - 44, // 191: gotocompany.shield.v1beta1.ShieldService.GetOrganization:output_type -> gotocompany.shield.v1beta1.GetOrganizationResponse - 45, // 192: gotocompany.shield.v1beta1.ShieldService.UpdateOrganization:output_type -> gotocompany.shield.v1beta1.UpdateOrganizationResponse - 51, // 193: gotocompany.shield.v1beta1.ShieldService.ListOrganizationAdmins:output_type -> gotocompany.shield.v1beta1.ListOrganizationAdminsResponse - 59, // 194: gotocompany.shield.v1beta1.ShieldService.ListProjects:output_type -> gotocompany.shield.v1beta1.ListProjectsResponse - 55, // 195: gotocompany.shield.v1beta1.ShieldService.CreateProject:output_type -> gotocompany.shield.v1beta1.CreateProjectResponse - 56, // 196: gotocompany.shield.v1beta1.ShieldService.GetProject:output_type -> gotocompany.shield.v1beta1.GetProjectResponse - 57, // 197: gotocompany.shield.v1beta1.ShieldService.UpdateProject:output_type -> gotocompany.shield.v1beta1.UpdateProjectResponse - 63, // 198: gotocompany.shield.v1beta1.ShieldService.ListProjectAdmins:output_type -> gotocompany.shield.v1beta1.ListProjectAdminsResponse - 71, // 199: gotocompany.shield.v1beta1.ShieldService.ListActions:output_type -> gotocompany.shield.v1beta1.ListActionsResponse - 73, // 200: gotocompany.shield.v1beta1.ShieldService.CreateAction:output_type -> gotocompany.shield.v1beta1.CreateActionResponse - 79, // 201: gotocompany.shield.v1beta1.ShieldService.ListNamespaces:output_type -> gotocompany.shield.v1beta1.ListNamespacesResponse - 81, // 202: gotocompany.shield.v1beta1.ShieldService.CreateNamespace:output_type -> gotocompany.shield.v1beta1.CreateNamespaceResponse - 83, // 203: gotocompany.shield.v1beta1.ShieldService.GetNamespace:output_type -> gotocompany.shield.v1beta1.GetNamespaceResponse - 85, // 204: gotocompany.shield.v1beta1.ShieldService.UpdateNamespace:output_type -> gotocompany.shield.v1beta1.UpdateNamespaceResponse - 87, // 205: gotocompany.shield.v1beta1.ShieldService.ListPolicies:output_type -> gotocompany.shield.v1beta1.ListPoliciesResponse - 89, // 206: gotocompany.shield.v1beta1.ShieldService.CreatePolicy:output_type -> gotocompany.shield.v1beta1.CreatePolicyResponse - 98, // 207: gotocompany.shield.v1beta1.ShieldService.ListRelations:output_type -> gotocompany.shield.v1beta1.ListRelationsResponse - 101, // 208: gotocompany.shield.v1beta1.ShieldService.CreateRelation:output_type -> gotocompany.shield.v1beta1.CreateRelationResponse - 103, // 209: gotocompany.shield.v1beta1.ShieldService.GetRelation:output_type -> gotocompany.shield.v1beta1.GetRelationResponse - 109, // 210: gotocompany.shield.v1beta1.ShieldService.DeleteRelation:output_type -> gotocompany.shield.v1beta1.DeleteRelationResponse - 111, // 211: gotocompany.shield.v1beta1.ShieldService.ListResources:output_type -> gotocompany.shield.v1beta1.ListResourcesResponse - 114, // 212: gotocompany.shield.v1beta1.ShieldService.CreateResource:output_type -> gotocompany.shield.v1beta1.CreateResourceResponse - 116, // 213: gotocompany.shield.v1beta1.ShieldService.GetResource:output_type -> gotocompany.shield.v1beta1.GetResourceResponse - 118, // 214: gotocompany.shield.v1beta1.ShieldService.UpdateResource:output_type -> gotocompany.shield.v1beta1.UpdateResourceResponse - 125, // 215: gotocompany.shield.v1beta1.ShieldService.ListAllUserResources:output_type -> gotocompany.shield.v1beta1.ListAllUserResourcesResponse - 121, // 216: gotocompany.shield.v1beta1.ShieldService.CheckResourcePermission:output_type -> gotocompany.shield.v1beta1.CheckResourcePermissionResponse - 128, // 217: gotocompany.shield.v1beta1.ShieldService.ListActivities:output_type -> gotocompany.shield.v1beta1.ListActivitiesResponse - 130, // 218: gotocompany.shield.v1beta1.ShieldService.UpsertResourcesConfig:output_type -> gotocompany.shield.v1beta1.UpsertResourcesConfigResponse - 132, // 219: gotocompany.shield.v1beta1.ShieldService.UpsertRulesConfig:output_type -> gotocompany.shield.v1beta1.UpsertRulesConfigResponse - 173, // [173:220] is the sub-list for method output_type - 126, // [126:173] is the sub-list for method input_type + 18, // 135: gotocompany.shield.v1beta1.ShieldService.DeleteUser:input_type -> gotocompany.shield.v1beta1.DeleteUserRequest + 30, // 136: gotocompany.shield.v1beta1.ShieldService.ListGroups:input_type -> gotocompany.shield.v1beta1.ListGroupsRequest + 21, // 137: gotocompany.shield.v1beta1.ShieldService.CreateGroup:input_type -> gotocompany.shield.v1beta1.CreateGroupRequest + 29, // 138: gotocompany.shield.v1beta1.ShieldService.GetGroup:input_type -> gotocompany.shield.v1beta1.GetGroupRequest + 27, // 139: gotocompany.shield.v1beta1.ShieldService.UpdateGroup:input_type -> gotocompany.shield.v1beta1.UpdateGroupRequest + 108, // 140: gotocompany.shield.v1beta1.ShieldService.ListGroupRelations:input_type -> gotocompany.shield.v1beta1.ListGroupRelationsRequest + 40, // 141: gotocompany.shield.v1beta1.ShieldService.ListRoles:input_type -> gotocompany.shield.v1beta1.ListRolesRequest + 34, // 142: gotocompany.shield.v1beta1.ShieldService.CreateRole:input_type -> gotocompany.shield.v1beta1.CreateRoleRequest + 48, // 143: gotocompany.shield.v1beta1.ShieldService.ListOrganizations:input_type -> gotocompany.shield.v1beta1.ListOrganizationsRequest + 43, // 144: gotocompany.shield.v1beta1.ShieldService.CreateOrganization:input_type -> gotocompany.shield.v1beta1.CreateOrganizationRequest + 50, // 145: gotocompany.shield.v1beta1.ShieldService.GetOrganization:input_type -> gotocompany.shield.v1beta1.GetOrganizationRequest + 51, // 146: gotocompany.shield.v1beta1.ShieldService.UpdateOrganization:input_type -> gotocompany.shield.v1beta1.UpdateOrganizationRequest + 52, // 147: gotocompany.shield.v1beta1.ShieldService.ListOrganizationAdmins:input_type -> gotocompany.shield.v1beta1.ListOrganizationAdminsRequest + 60, // 148: gotocompany.shield.v1beta1.ShieldService.ListProjects:input_type -> gotocompany.shield.v1beta1.ListProjectsRequest + 55, // 149: gotocompany.shield.v1beta1.ShieldService.CreateProject:input_type -> gotocompany.shield.v1beta1.CreateProjectRequest + 62, // 150: gotocompany.shield.v1beta1.ShieldService.GetProject:input_type -> gotocompany.shield.v1beta1.GetProjectRequest + 63, // 151: gotocompany.shield.v1beta1.ShieldService.UpdateProject:input_type -> gotocompany.shield.v1beta1.UpdateProjectRequest + 64, // 152: gotocompany.shield.v1beta1.ShieldService.ListProjectAdmins:input_type -> gotocompany.shield.v1beta1.ListProjectAdminsRequest + 72, // 153: gotocompany.shield.v1beta1.ShieldService.ListActions:input_type -> gotocompany.shield.v1beta1.ListActionsRequest + 74, // 154: gotocompany.shield.v1beta1.ShieldService.CreateAction:input_type -> gotocompany.shield.v1beta1.CreateActionRequest + 80, // 155: gotocompany.shield.v1beta1.ShieldService.ListNamespaces:input_type -> gotocompany.shield.v1beta1.ListNamespacesRequest + 82, // 156: gotocompany.shield.v1beta1.ShieldService.CreateNamespace:input_type -> gotocompany.shield.v1beta1.CreateNamespaceRequest + 84, // 157: gotocompany.shield.v1beta1.ShieldService.GetNamespace:input_type -> gotocompany.shield.v1beta1.GetNamespaceRequest + 86, // 158: gotocompany.shield.v1beta1.ShieldService.UpdateNamespace:input_type -> gotocompany.shield.v1beta1.UpdateNamespaceRequest + 88, // 159: gotocompany.shield.v1beta1.ShieldService.ListPolicies:input_type -> gotocompany.shield.v1beta1.ListPoliciesRequest + 90, // 160: gotocompany.shield.v1beta1.ShieldService.CreatePolicy:input_type -> gotocompany.shield.v1beta1.CreatePolicyRequest + 99, // 161: gotocompany.shield.v1beta1.ShieldService.ListRelations:input_type -> gotocompany.shield.v1beta1.ListRelationsRequest + 102, // 162: gotocompany.shield.v1beta1.ShieldService.CreateRelation:input_type -> gotocompany.shield.v1beta1.CreateRelationRequest + 104, // 163: gotocompany.shield.v1beta1.ShieldService.GetRelation:input_type -> gotocompany.shield.v1beta1.GetRelationRequest + 110, // 164: gotocompany.shield.v1beta1.ShieldService.DeleteRelation:input_type -> gotocompany.shield.v1beta1.DeleteRelationRequest + 112, // 165: gotocompany.shield.v1beta1.ShieldService.ListResources:input_type -> gotocompany.shield.v1beta1.ListResourcesRequest + 115, // 166: gotocompany.shield.v1beta1.ShieldService.CreateResource:input_type -> gotocompany.shield.v1beta1.CreateResourceRequest + 117, // 167: gotocompany.shield.v1beta1.ShieldService.GetResource:input_type -> gotocompany.shield.v1beta1.GetResourceRequest + 119, // 168: gotocompany.shield.v1beta1.ShieldService.UpdateResource:input_type -> gotocompany.shield.v1beta1.UpdateResourceRequest + 126, // 169: gotocompany.shield.v1beta1.ShieldService.ListAllUserResources:input_type -> gotocompany.shield.v1beta1.ListAllUserResourcesRequest + 122, // 170: gotocompany.shield.v1beta1.ShieldService.CheckResourcePermission:input_type -> gotocompany.shield.v1beta1.CheckResourcePermissionRequest + 129, // 171: gotocompany.shield.v1beta1.ShieldService.ListActivities:input_type -> gotocompany.shield.v1beta1.ListActivitiesRequest + 131, // 172: gotocompany.shield.v1beta1.ShieldService.UpsertResourcesConfig:input_type -> gotocompany.shield.v1beta1.UpsertResourcesConfigRequest + 133, // 173: gotocompany.shield.v1beta1.ShieldService.UpsertRulesConfig:input_type -> gotocompany.shield.v1beta1.UpsertRulesConfigRequest + 17, // 174: gotocompany.shield.v1beta1.ShieldService.ListUsers:output_type -> gotocompany.shield.v1beta1.ListUsersResponse + 3, // 175: gotocompany.shield.v1beta1.ShieldService.CreateUser:output_type -> gotocompany.shield.v1beta1.CreateUserResponse + 8, // 176: gotocompany.shield.v1beta1.ShieldService.GetUser:output_type -> gotocompany.shield.v1beta1.GetUserResponse + 22, // 177: gotocompany.shield.v1beta1.ShieldService.ListUserGroups:output_type -> gotocompany.shield.v1beta1.ListUserGroupsResponse + 9, // 178: gotocompany.shield.v1beta1.ShieldService.GetCurrentUser:output_type -> gotocompany.shield.v1beta1.GetCurrentUserResponse + 10, // 179: gotocompany.shield.v1beta1.ShieldService.UpdateUser:output_type -> gotocompany.shield.v1beta1.UpdateUserResponse + 125, // 180: gotocompany.shield.v1beta1.ShieldService.CheckResourceUserPermission:output_type -> gotocompany.shield.v1beta1.CheckResourceUserPermissionResponse + 11, // 181: gotocompany.shield.v1beta1.ShieldService.UpdateCurrentUser:output_type -> gotocompany.shield.v1beta1.UpdateCurrentUserResponse + 7, // 182: gotocompany.shield.v1beta1.ShieldService.CreateMetadataKey:output_type -> gotocompany.shield.v1beta1.CreateMetadataKeyResponse + 19, // 183: gotocompany.shield.v1beta1.ShieldService.DeleteUser:output_type -> gotocompany.shield.v1beta1.DeleteUserResponse + 31, // 184: gotocompany.shield.v1beta1.ShieldService.ListGroups:output_type -> gotocompany.shield.v1beta1.ListGroupsResponse + 24, // 185: gotocompany.shield.v1beta1.ShieldService.CreateGroup:output_type -> gotocompany.shield.v1beta1.CreateGroupResponse + 25, // 186: gotocompany.shield.v1beta1.ShieldService.GetGroup:output_type -> gotocompany.shield.v1beta1.GetGroupResponse + 26, // 187: gotocompany.shield.v1beta1.ShieldService.UpdateGroup:output_type -> gotocompany.shield.v1beta1.UpdateGroupResponse + 109, // 188: gotocompany.shield.v1beta1.ShieldService.ListGroupRelations:output_type -> gotocompany.shield.v1beta1.ListGroupRelationsResponse + 41, // 189: gotocompany.shield.v1beta1.ShieldService.ListRoles:output_type -> gotocompany.shield.v1beta1.ListRolesResponse + 35, // 190: gotocompany.shield.v1beta1.ShieldService.CreateRole:output_type -> gotocompany.shield.v1beta1.CreateRoleResponse + 49, // 191: gotocompany.shield.v1beta1.ShieldService.ListOrganizations:output_type -> gotocompany.shield.v1beta1.ListOrganizationsResponse + 45, // 192: gotocompany.shield.v1beta1.ShieldService.CreateOrganization:output_type -> gotocompany.shield.v1beta1.CreateOrganizationResponse + 46, // 193: gotocompany.shield.v1beta1.ShieldService.GetOrganization:output_type -> gotocompany.shield.v1beta1.GetOrganizationResponse + 47, // 194: gotocompany.shield.v1beta1.ShieldService.UpdateOrganization:output_type -> gotocompany.shield.v1beta1.UpdateOrganizationResponse + 53, // 195: gotocompany.shield.v1beta1.ShieldService.ListOrganizationAdmins:output_type -> gotocompany.shield.v1beta1.ListOrganizationAdminsResponse + 61, // 196: gotocompany.shield.v1beta1.ShieldService.ListProjects:output_type -> gotocompany.shield.v1beta1.ListProjectsResponse + 57, // 197: gotocompany.shield.v1beta1.ShieldService.CreateProject:output_type -> gotocompany.shield.v1beta1.CreateProjectResponse + 58, // 198: gotocompany.shield.v1beta1.ShieldService.GetProject:output_type -> gotocompany.shield.v1beta1.GetProjectResponse + 59, // 199: gotocompany.shield.v1beta1.ShieldService.UpdateProject:output_type -> gotocompany.shield.v1beta1.UpdateProjectResponse + 65, // 200: gotocompany.shield.v1beta1.ShieldService.ListProjectAdmins:output_type -> gotocompany.shield.v1beta1.ListProjectAdminsResponse + 73, // 201: gotocompany.shield.v1beta1.ShieldService.ListActions:output_type -> gotocompany.shield.v1beta1.ListActionsResponse + 75, // 202: gotocompany.shield.v1beta1.ShieldService.CreateAction:output_type -> gotocompany.shield.v1beta1.CreateActionResponse + 81, // 203: gotocompany.shield.v1beta1.ShieldService.ListNamespaces:output_type -> gotocompany.shield.v1beta1.ListNamespacesResponse + 83, // 204: gotocompany.shield.v1beta1.ShieldService.CreateNamespace:output_type -> gotocompany.shield.v1beta1.CreateNamespaceResponse + 85, // 205: gotocompany.shield.v1beta1.ShieldService.GetNamespace:output_type -> gotocompany.shield.v1beta1.GetNamespaceResponse + 87, // 206: gotocompany.shield.v1beta1.ShieldService.UpdateNamespace:output_type -> gotocompany.shield.v1beta1.UpdateNamespaceResponse + 89, // 207: gotocompany.shield.v1beta1.ShieldService.ListPolicies:output_type -> gotocompany.shield.v1beta1.ListPoliciesResponse + 91, // 208: gotocompany.shield.v1beta1.ShieldService.CreatePolicy:output_type -> gotocompany.shield.v1beta1.CreatePolicyResponse + 100, // 209: gotocompany.shield.v1beta1.ShieldService.ListRelations:output_type -> gotocompany.shield.v1beta1.ListRelationsResponse + 103, // 210: gotocompany.shield.v1beta1.ShieldService.CreateRelation:output_type -> gotocompany.shield.v1beta1.CreateRelationResponse + 105, // 211: gotocompany.shield.v1beta1.ShieldService.GetRelation:output_type -> gotocompany.shield.v1beta1.GetRelationResponse + 111, // 212: gotocompany.shield.v1beta1.ShieldService.DeleteRelation:output_type -> gotocompany.shield.v1beta1.DeleteRelationResponse + 113, // 213: gotocompany.shield.v1beta1.ShieldService.ListResources:output_type -> gotocompany.shield.v1beta1.ListResourcesResponse + 116, // 214: gotocompany.shield.v1beta1.ShieldService.CreateResource:output_type -> gotocompany.shield.v1beta1.CreateResourceResponse + 118, // 215: gotocompany.shield.v1beta1.ShieldService.GetResource:output_type -> gotocompany.shield.v1beta1.GetResourceResponse + 120, // 216: gotocompany.shield.v1beta1.ShieldService.UpdateResource:output_type -> gotocompany.shield.v1beta1.UpdateResourceResponse + 127, // 217: gotocompany.shield.v1beta1.ShieldService.ListAllUserResources:output_type -> gotocompany.shield.v1beta1.ListAllUserResourcesResponse + 123, // 218: gotocompany.shield.v1beta1.ShieldService.CheckResourcePermission:output_type -> gotocompany.shield.v1beta1.CheckResourcePermissionResponse + 130, // 219: gotocompany.shield.v1beta1.ShieldService.ListActivities:output_type -> gotocompany.shield.v1beta1.ListActivitiesResponse + 132, // 220: gotocompany.shield.v1beta1.ShieldService.UpsertResourcesConfig:output_type -> gotocompany.shield.v1beta1.UpsertResourcesConfigResponse + 134, // 221: gotocompany.shield.v1beta1.ShieldService.UpsertRulesConfig:output_type -> gotocompany.shield.v1beta1.UpsertRulesConfigResponse + 174, // [174:222] is the sub-list for method output_type + 126, // [126:174] is the sub-list for method input_type 126, // [126:126] is the sub-list for extension type_name 126, // [126:126] is the sub-list for extension extendee 0, // [0:126] is the sub-list for field type_name @@ -9781,7 +9884,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupRequestBody); i { + switch v := v.(*DeleteUserRequest); i { case 0: return &v.state case 1: @@ -9793,7 +9896,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateGroupRequest); i { + switch v := v.(*DeleteUserResponse); i { case 0: return &v.state case 1: @@ -9805,7 +9908,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListUserGroupsResponse); i { + switch v := v.(*GroupRequestBody); i { case 0: return &v.state case 1: @@ -9817,7 +9920,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Group); i { + switch v := v.(*CreateGroupRequest); i { case 0: return &v.state case 1: @@ -9829,7 +9932,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateGroupResponse); i { + switch v := v.(*ListUserGroupsResponse); i { case 0: return &v.state case 1: @@ -9841,7 +9944,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupResponse); i { + switch v := v.(*Group); i { case 0: return &v.state case 1: @@ -9853,7 +9956,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateGroupResponse); i { + switch v := v.(*CreateGroupResponse); i { case 0: return &v.state case 1: @@ -9865,7 +9968,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateGroupRequest); i { + switch v := v.(*GetGroupResponse); i { case 0: return &v.state case 1: @@ -9877,7 +9980,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateCurrentUserRequest); i { + switch v := v.(*UpdateGroupResponse); i { case 0: return &v.state case 1: @@ -9889,7 +9992,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupRequest); i { + switch v := v.(*UpdateGroupRequest); i { case 0: return &v.state case 1: @@ -9901,7 +10004,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListGroupsRequest); i { + switch v := v.(*UpdateCurrentUserRequest); i { case 0: return &v.state case 1: @@ -9913,7 +10016,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListGroupsResponse); i { + switch v := v.(*GetGroupRequest); i { case 0: return &v.state case 1: @@ -9925,7 +10028,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Role); i { + switch v := v.(*ListGroupsRequest); i { case 0: return &v.state case 1: @@ -9937,7 +10040,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RoleRequestBody); i { + switch v := v.(*ListGroupsResponse); i { case 0: return &v.state case 1: @@ -9949,7 +10052,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateRoleRequest); i { + switch v := v.(*Role); i { case 0: return &v.state case 1: @@ -9961,7 +10064,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateRoleResponse); i { + switch v := v.(*RoleRequestBody); i { case 0: return &v.state case 1: @@ -9973,7 +10076,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetRoleResponse); i { + switch v := v.(*CreateRoleRequest); i { case 0: return &v.state case 1: @@ -9985,7 +10088,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateRoleResponse); i { + switch v := v.(*CreateRoleResponse); i { case 0: return &v.state case 1: @@ -9997,7 +10100,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetRoleRequest); i { + switch v := v.(*GetRoleResponse); i { case 0: return &v.state case 1: @@ -10009,7 +10112,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateRoleRequest); i { + switch v := v.(*UpdateRoleResponse); i { case 0: return &v.state case 1: @@ -10021,7 +10124,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListRolesRequest); i { + switch v := v.(*GetRoleRequest); i { case 0: return &v.state case 1: @@ -10033,7 +10136,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListRolesResponse); i { + switch v := v.(*UpdateRoleRequest); i { case 0: return &v.state case 1: @@ -10045,7 +10148,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OrganizationRequestBody); i { + switch v := v.(*ListRolesRequest); i { case 0: return &v.state case 1: @@ -10057,7 +10160,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateOrganizationRequest); i { + switch v := v.(*ListRolesResponse); i { case 0: return &v.state case 1: @@ -10069,7 +10172,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Organization); i { + switch v := v.(*OrganizationRequestBody); i { case 0: return &v.state case 1: @@ -10081,7 +10184,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateOrganizationResponse); i { + switch v := v.(*CreateOrganizationRequest); i { case 0: return &v.state case 1: @@ -10093,7 +10196,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetOrganizationResponse); i { + switch v := v.(*Organization); i { case 0: return &v.state case 1: @@ -10105,7 +10208,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateOrganizationResponse); i { + switch v := v.(*CreateOrganizationResponse); i { case 0: return &v.state case 1: @@ -10117,7 +10220,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListOrganizationsRequest); i { + switch v := v.(*GetOrganizationResponse); i { case 0: return &v.state case 1: @@ -10129,7 +10232,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListOrganizationsResponse); i { + switch v := v.(*UpdateOrganizationResponse); i { case 0: return &v.state case 1: @@ -10141,7 +10244,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetOrganizationRequest); i { + switch v := v.(*ListOrganizationsRequest); i { case 0: return &v.state case 1: @@ -10153,7 +10256,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateOrganizationRequest); i { + switch v := v.(*ListOrganizationsResponse); i { case 0: return &v.state case 1: @@ -10165,7 +10268,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListOrganizationAdminsRequest); i { + switch v := v.(*GetOrganizationRequest); i { case 0: return &v.state case 1: @@ -10177,7 +10280,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListOrganizationAdminsResponse); i { + switch v := v.(*UpdateOrganizationRequest); i { case 0: return &v.state case 1: @@ -10189,7 +10292,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ProjectRequestBody); i { + switch v := v.(*ListOrganizationAdminsRequest); i { case 0: return &v.state case 1: @@ -10201,7 +10304,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateProjectRequest); i { + switch v := v.(*ListOrganizationAdminsResponse); i { case 0: return &v.state case 1: @@ -10213,7 +10316,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Project); i { + switch v := v.(*ProjectRequestBody); i { case 0: return &v.state case 1: @@ -10225,7 +10328,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateProjectResponse); i { + switch v := v.(*CreateProjectRequest); i { case 0: return &v.state case 1: @@ -10237,7 +10340,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetProjectResponse); i { + switch v := v.(*Project); i { case 0: return &v.state case 1: @@ -10249,7 +10352,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateProjectResponse); i { + switch v := v.(*CreateProjectResponse); i { case 0: return &v.state case 1: @@ -10261,7 +10364,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListProjectsRequest); i { + switch v := v.(*GetProjectResponse); i { case 0: return &v.state case 1: @@ -10273,7 +10376,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListProjectsResponse); i { + switch v := v.(*UpdateProjectResponse); i { case 0: return &v.state case 1: @@ -10285,7 +10388,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetProjectRequest); i { + switch v := v.(*ListProjectsRequest); i { case 0: return &v.state case 1: @@ -10297,7 +10400,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateProjectRequest); i { + switch v := v.(*ListProjectsResponse); i { case 0: return &v.state case 1: @@ -10309,7 +10412,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListProjectAdminsRequest); i { + switch v := v.(*GetProjectRequest); i { case 0: return &v.state case 1: @@ -10321,7 +10424,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListProjectAdminsResponse); i { + switch v := v.(*UpdateProjectRequest); i { case 0: return &v.state case 1: @@ -10333,7 +10436,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Action); i { + switch v := v.(*ListProjectAdminsRequest); i { case 0: return &v.state case 1: @@ -10345,7 +10448,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Namespace); i { + switch v := v.(*ListProjectAdminsResponse); i { case 0: return &v.state case 1: @@ -10357,7 +10460,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Policy); i { + switch v := v.(*Action); i { case 0: return &v.state case 1: @@ -10369,7 +10472,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ActionRequestBody); i { + switch v := v.(*Namespace); i { case 0: return &v.state case 1: @@ -10381,7 +10484,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*NamespaceRequestBody); i { + switch v := v.(*Policy); i { case 0: return &v.state case 1: @@ -10393,7 +10496,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PolicyRequestBody); i { + switch v := v.(*ActionRequestBody); i { case 0: return &v.state case 1: @@ -10405,7 +10508,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListActionsRequest); i { + switch v := v.(*NamespaceRequestBody); i { case 0: return &v.state case 1: @@ -10417,7 +10520,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListActionsResponse); i { + switch v := v.(*PolicyRequestBody); i { case 0: return &v.state case 1: @@ -10429,7 +10532,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateActionRequest); i { + switch v := v.(*ListActionsRequest); i { case 0: return &v.state case 1: @@ -10441,7 +10544,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateActionResponse); i { + switch v := v.(*ListActionsResponse); i { case 0: return &v.state case 1: @@ -10453,7 +10556,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetActionRequest); i { + switch v := v.(*CreateActionRequest); i { case 0: return &v.state case 1: @@ -10465,7 +10568,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetActionResponse); i { + switch v := v.(*CreateActionResponse); i { case 0: return &v.state case 1: @@ -10477,7 +10580,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateActionRequest); i { + switch v := v.(*GetActionRequest); i { case 0: return &v.state case 1: @@ -10489,7 +10592,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateActionResponse); i { + switch v := v.(*GetActionResponse); i { case 0: return &v.state case 1: @@ -10501,7 +10604,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListNamespacesRequest); i { + switch v := v.(*UpdateActionRequest); i { case 0: return &v.state case 1: @@ -10513,7 +10616,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListNamespacesResponse); i { + switch v := v.(*UpdateActionResponse); i { case 0: return &v.state case 1: @@ -10525,7 +10628,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateNamespaceRequest); i { + switch v := v.(*ListNamespacesRequest); i { case 0: return &v.state case 1: @@ -10537,7 +10640,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateNamespaceResponse); i { + switch v := v.(*ListNamespacesResponse); i { case 0: return &v.state case 1: @@ -10549,7 +10652,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetNamespaceRequest); i { + switch v := v.(*CreateNamespaceRequest); i { case 0: return &v.state case 1: @@ -10561,7 +10664,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetNamespaceResponse); i { + switch v := v.(*CreateNamespaceResponse); i { case 0: return &v.state case 1: @@ -10573,7 +10676,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateNamespaceRequest); i { + switch v := v.(*GetNamespaceRequest); i { case 0: return &v.state case 1: @@ -10585,7 +10688,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateNamespaceResponse); i { + switch v := v.(*GetNamespaceResponse); i { case 0: return &v.state case 1: @@ -10597,7 +10700,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListPoliciesRequest); i { + switch v := v.(*UpdateNamespaceRequest); i { case 0: return &v.state case 1: @@ -10609,7 +10712,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListPoliciesResponse); i { + switch v := v.(*UpdateNamespaceResponse); i { case 0: return &v.state case 1: @@ -10621,7 +10724,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreatePolicyRequest); i { + switch v := v.(*ListPoliciesRequest); i { case 0: return &v.state case 1: @@ -10633,7 +10736,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreatePolicyResponse); i { + switch v := v.(*ListPoliciesResponse); i { case 0: return &v.state case 1: @@ -10645,7 +10748,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPolicyRequest); i { + switch v := v.(*CreatePolicyRequest); i { case 0: return &v.state case 1: @@ -10657,7 +10760,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPolicyResponse); i { + switch v := v.(*CreatePolicyResponse); i { case 0: return &v.state case 1: @@ -10669,7 +10772,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdatePolicyRequest); i { + switch v := v.(*GetPolicyRequest); i { case 0: return &v.state case 1: @@ -10681,7 +10784,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdatePolicyResponse); i { + switch v := v.(*GetPolicyResponse); i { case 0: return &v.state case 1: @@ -10693,7 +10796,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Relation); i { + switch v := v.(*UpdatePolicyRequest); i { case 0: return &v.state case 1: @@ -10705,7 +10808,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Resource); i { + switch v := v.(*UpdatePolicyResponse); i { case 0: return &v.state case 1: @@ -10717,7 +10820,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupRelation); i { + switch v := v.(*Relation); i { case 0: return &v.state case 1: @@ -10729,7 +10832,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListRelationsRequest); i { + switch v := v.(*Resource); i { case 0: return &v.state case 1: @@ -10741,7 +10844,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListRelationsResponse); i { + switch v := v.(*GroupRelation); i { case 0: return &v.state case 1: @@ -10753,7 +10856,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RelationRequestBody); i { + switch v := v.(*ListRelationsRequest); i { case 0: return &v.state case 1: @@ -10765,7 +10868,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateRelationRequest); i { + switch v := v.(*ListRelationsResponse); i { case 0: return &v.state case 1: @@ -10777,7 +10880,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateRelationResponse); i { + switch v := v.(*RelationRequestBody); i { case 0: return &v.state case 1: @@ -10789,7 +10892,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetRelationRequest); i { + switch v := v.(*CreateRelationRequest); i { case 0: return &v.state case 1: @@ -10801,7 +10904,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetRelationResponse); i { + switch v := v.(*CreateRelationResponse); i { case 0: return &v.state case 1: @@ -10813,7 +10916,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateRelationRequest); i { + switch v := v.(*GetRelationRequest); i { case 0: return &v.state case 1: @@ -10825,7 +10928,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateRelationResponse); i { + switch v := v.(*GetRelationResponse); i { case 0: return &v.state case 1: @@ -10837,7 +10940,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListGroupRelationsRequest); i { + switch v := v.(*UpdateRelationRequest); i { case 0: return &v.state case 1: @@ -10849,7 +10952,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListGroupRelationsResponse); i { + switch v := v.(*UpdateRelationResponse); i { case 0: return &v.state case 1: @@ -10861,7 +10964,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteRelationRequest); i { + switch v := v.(*ListGroupRelationsRequest); i { case 0: return &v.state case 1: @@ -10873,7 +10976,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteRelationResponse); i { + switch v := v.(*ListGroupRelationsResponse); i { case 0: return &v.state case 1: @@ -10885,7 +10988,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListResourcesRequest); i { + switch v := v.(*DeleteRelationRequest); i { case 0: return &v.state case 1: @@ -10897,7 +11000,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListResourcesResponse); i { + switch v := v.(*DeleteRelationResponse); i { case 0: return &v.state case 1: @@ -10909,7 +11012,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ResourceRequestBody); i { + switch v := v.(*ListResourcesRequest); i { case 0: return &v.state case 1: @@ -10921,7 +11024,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateResourceRequest); i { + switch v := v.(*ListResourcesResponse); i { case 0: return &v.state case 1: @@ -10933,7 +11036,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateResourceResponse); i { + switch v := v.(*ResourceRequestBody); i { case 0: return &v.state case 1: @@ -10945,7 +11048,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetResourceRequest); i { + switch v := v.(*CreateResourceRequest); i { case 0: return &v.state case 1: @@ -10957,7 +11060,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetResourceResponse); i { + switch v := v.(*CreateResourceResponse); i { case 0: return &v.state case 1: @@ -10969,7 +11072,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateResourceRequest); i { + switch v := v.(*GetResourceRequest); i { case 0: return &v.state case 1: @@ -10981,7 +11084,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateResourceResponse); i { + switch v := v.(*GetResourceResponse); i { case 0: return &v.state case 1: @@ -10993,7 +11096,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ResourcePermission); i { + switch v := v.(*UpdateResourceRequest); i { case 0: return &v.state case 1: @@ -11005,7 +11108,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CheckResourcePermissionRequest); i { + switch v := v.(*UpdateResourceResponse); i { case 0: return &v.state case 1: @@ -11017,7 +11120,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CheckResourcePermissionResponse); i { + switch v := v.(*ResourcePermission); i { case 0: return &v.state case 1: @@ -11029,7 +11132,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CheckResourceUserPermissionRequest); i { + switch v := v.(*CheckResourcePermissionRequest); i { case 0: return &v.state case 1: @@ -11041,7 +11144,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CheckResourceUserPermissionResponse); i { + switch v := v.(*CheckResourcePermissionResponse); i { case 0: return &v.state case 1: @@ -11053,7 +11156,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListAllUserResourcesRequest); i { + switch v := v.(*CheckResourceUserPermissionRequest); i { case 0: return &v.state case 1: @@ -11065,7 +11168,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListAllUserResourcesResponse); i { + switch v := v.(*CheckResourceUserPermissionResponse); i { case 0: return &v.state case 1: @@ -11077,7 +11180,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Activity); i { + switch v := v.(*ListAllUserResourcesRequest); i { case 0: return &v.state case 1: @@ -11089,7 +11192,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListActivitiesRequest); i { + switch v := v.(*ListAllUserResourcesResponse); i { case 0: return &v.state case 1: @@ -11101,7 +11204,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListActivitiesResponse); i { + switch v := v.(*Activity); i { case 0: return &v.state case 1: @@ -11113,7 +11216,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpsertResourcesConfigRequest); i { + switch v := v.(*ListActivitiesRequest); i { case 0: return &v.state case 1: @@ -11125,7 +11228,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpsertResourcesConfigResponse); i { + switch v := v.(*ListActivitiesResponse); i { case 0: return &v.state case 1: @@ -11137,7 +11240,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpsertRulesConfigRequest); i { + switch v := v.(*UpsertResourcesConfigRequest); i { case 0: return &v.state case 1: @@ -11149,7 +11252,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpsertRulesConfigResponse); i { + switch v := v.(*UpsertResourcesConfigResponse); i { case 0: return &v.state case 1: @@ -11161,7 +11264,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CheckResourcePermissionResponse_ResourcePermissionResponse); i { + switch v := v.(*UpsertRulesConfigRequest); i { case 0: return &v.state case 1: @@ -11173,6 +11276,30 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } file_gotocompany_shield_v1beta1_shield_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertRulesConfigResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_gotocompany_shield_v1beta1_shield_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CheckResourcePermissionResponse_ResourcePermissionResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_gotocompany_shield_v1beta1_shield_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CheckResourceUserPermissionResponse_ResourcePermissionResponse); i { case 0: return &v.state @@ -11185,7 +11312,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { } } } - file_gotocompany_shield_v1beta1_shield_proto_msgTypes[96].OneofWrappers = []interface{}{ + file_gotocompany_shield_v1beta1_shield_proto_msgTypes[98].OneofWrappers = []interface{}{ (*GroupRelation_User)(nil), (*GroupRelation_Group)(nil), } @@ -11195,7 +11322,7 @@ func file_gotocompany_shield_v1beta1_shield_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_gotocompany_shield_v1beta1_shield_proto_rawDesc, NumEnums: 0, - NumMessages: 139, + NumMessages: 141, NumExtensions: 0, NumServices: 1, }, diff --git a/proto/v1beta1/shield.pb.gw.go b/proto/v1beta1/shield.pb.gw.go index 6b5b87feb..6649ef26d 100644 --- a/proto/v1beta1/shield.pb.gw.go +++ b/proto/v1beta1/shield.pb.gw.go @@ -405,6 +405,58 @@ func local_request_ShieldService_CreateMetadataKey_0(ctx context.Context, marsha } +func request_ShieldService_DeleteUser_0(ctx context.Context, marshaler runtime.Marshaler, client ShieldServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteUserRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") + } + + protoReq.Id, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) + } + + msg, err := client.DeleteUser(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_ShieldService_DeleteUser_0(ctx context.Context, marshaler runtime.Marshaler, server ShieldServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteUserRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") + } + + protoReq.Id, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) + } + + msg, err := server.DeleteUser(ctx, &protoReq) + return msg, metadata, err + +} + var ( filter_ShieldService_ListGroups_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} ) @@ -2198,6 +2250,31 @@ func RegisterShieldServiceHandlerServer(ctx context.Context, mux *runtime.ServeM }) + mux.Handle("DELETE", pattern_ShieldService_DeleteUser_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/gotocompany.shield.v1beta1.ShieldService/DeleteUser", runtime.WithHTTPPathPattern("/v1beta1/users/{id}")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_ShieldService_DeleteUser_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_ShieldService_DeleteUser_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("GET", pattern_ShieldService_ListGroups_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -3387,6 +3464,28 @@ func RegisterShieldServiceHandlerClient(ctx context.Context, mux *runtime.ServeM }) + mux.Handle("DELETE", pattern_ShieldService_DeleteUser_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/gotocompany.shield.v1beta1.ShieldService/DeleteUser", runtime.WithHTTPPathPattern("/v1beta1/users/{id}")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_ShieldService_DeleteUser_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_ShieldService_DeleteUser_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("GET", pattern_ShieldService_ListGroups_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -4245,6 +4344,8 @@ var ( pattern_ShieldService_CreateMetadataKey_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1beta1", "metadatakey"}, "")) + pattern_ShieldService_DeleteUser_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1beta1", "users", "id"}, "")) + pattern_ShieldService_ListGroups_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1beta1", "groups"}, "")) pattern_ShieldService_CreateGroup_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1beta1", "groups"}, "")) @@ -4341,6 +4442,8 @@ var ( forward_ShieldService_CreateMetadataKey_0 = runtime.ForwardResponseMessage + forward_ShieldService_DeleteUser_0 = runtime.ForwardResponseMessage + forward_ShieldService_ListGroups_0 = runtime.ForwardResponseMessage forward_ShieldService_CreateGroup_0 = runtime.ForwardResponseMessage diff --git a/proto/v1beta1/shield.pb.validate.go b/proto/v1beta1/shield.pb.validate.go index ec616adfe..c964be550 100644 --- a/proto/v1beta1/shield.pb.validate.go +++ b/proto/v1beta1/shield.pb.validate.go @@ -2471,6 +2471,212 @@ var _ interface { ErrorName() string } = ListUsersResponseValidationError{} +// Validate checks the field values on DeleteUserRequest with the rules defined +// in the proto definition for this message. If any rules are violated, the +// first error encountered is returned, or nil if there are no violations. +func (m *DeleteUserRequest) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on DeleteUserRequest with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// DeleteUserRequestMultiError, or nil if none found. +func (m *DeleteUserRequest) ValidateAll() error { + return m.validate(true) +} + +func (m *DeleteUserRequest) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Id + + if len(errors) > 0 { + return DeleteUserRequestMultiError(errors) + } + + return nil +} + +// DeleteUserRequestMultiError is an error wrapping multiple validation errors +// returned by DeleteUserRequest.ValidateAll() if the designated constraints +// aren't met. +type DeleteUserRequestMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m DeleteUserRequestMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m DeleteUserRequestMultiError) AllErrors() []error { return m } + +// DeleteUserRequestValidationError is the validation error returned by +// DeleteUserRequest.Validate if the designated constraints aren't met. +type DeleteUserRequestValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e DeleteUserRequestValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e DeleteUserRequestValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e DeleteUserRequestValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e DeleteUserRequestValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e DeleteUserRequestValidationError) ErrorName() string { + return "DeleteUserRequestValidationError" +} + +// Error satisfies the builtin error interface +func (e DeleteUserRequestValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sDeleteUserRequest.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = DeleteUserRequestValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = DeleteUserRequestValidationError{} + +// Validate checks the field values on DeleteUserResponse with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *DeleteUserResponse) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on DeleteUserResponse with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// DeleteUserResponseMultiError, or nil if none found. +func (m *DeleteUserResponse) ValidateAll() error { + return m.validate(true) +} + +func (m *DeleteUserResponse) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + if len(errors) > 0 { + return DeleteUserResponseMultiError(errors) + } + + return nil +} + +// DeleteUserResponseMultiError is an error wrapping multiple validation errors +// returned by DeleteUserResponse.ValidateAll() if the designated constraints +// aren't met. +type DeleteUserResponseMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m DeleteUserResponseMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m DeleteUserResponseMultiError) AllErrors() []error { return m } + +// DeleteUserResponseValidationError is the validation error returned by +// DeleteUserResponse.Validate if the designated constraints aren't met. +type DeleteUserResponseValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e DeleteUserResponseValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e DeleteUserResponseValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e DeleteUserResponseValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e DeleteUserResponseValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e DeleteUserResponseValidationError) ErrorName() string { + return "DeleteUserResponseValidationError" +} + +// Error satisfies the builtin error interface +func (e DeleteUserResponseValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sDeleteUserResponse.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = DeleteUserResponseValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = DeleteUserResponseValidationError{} + // Validate checks the field values on GroupRequestBody with the rules defined // in the proto definition for this message. If any rules are violated, the // first error encountered is returned, or nil if there are no violations. diff --git a/proto/v1beta1/shield_grpc.pb.go b/proto/v1beta1/shield_grpc.pb.go index f45f73416..fd5e2f9e2 100644 --- a/proto/v1beta1/shield_grpc.pb.go +++ b/proto/v1beta1/shield_grpc.pb.go @@ -28,6 +28,7 @@ const ( ShieldService_CheckResourceUserPermission_FullMethodName = "/gotocompany.shield.v1beta1.ShieldService/CheckResourceUserPermission" ShieldService_UpdateCurrentUser_FullMethodName = "/gotocompany.shield.v1beta1.ShieldService/UpdateCurrentUser" ShieldService_CreateMetadataKey_FullMethodName = "/gotocompany.shield.v1beta1.ShieldService/CreateMetadataKey" + ShieldService_DeleteUser_FullMethodName = "/gotocompany.shield.v1beta1.ShieldService/DeleteUser" ShieldService_ListGroups_FullMethodName = "/gotocompany.shield.v1beta1.ShieldService/ListGroups" ShieldService_CreateGroup_FullMethodName = "/gotocompany.shield.v1beta1.ShieldService/CreateGroup" ShieldService_GetGroup_FullMethodName = "/gotocompany.shield.v1beta1.ShieldService/GetGroup" @@ -82,6 +83,7 @@ type ShieldServiceClient interface { CheckResourceUserPermission(ctx context.Context, in *CheckResourceUserPermissionRequest, opts ...grpc.CallOption) (*CheckResourceUserPermissionResponse, error) UpdateCurrentUser(ctx context.Context, in *UpdateCurrentUserRequest, opts ...grpc.CallOption) (*UpdateCurrentUserResponse, error) CreateMetadataKey(ctx context.Context, in *CreateMetadataKeyRequest, opts ...grpc.CallOption) (*CreateMetadataKeyResponse, error) + DeleteUser(ctx context.Context, in *DeleteUserRequest, opts ...grpc.CallOption) (*DeleteUserResponse, error) // Group ListGroups(ctx context.Context, in *ListGroupsRequest, opts ...grpc.CallOption) (*ListGroupsResponse, error) CreateGroup(ctx context.Context, in *CreateGroupRequest, opts ...grpc.CallOption) (*CreateGroupResponse, error) @@ -222,6 +224,15 @@ func (c *shieldServiceClient) CreateMetadataKey(ctx context.Context, in *CreateM return out, nil } +func (c *shieldServiceClient) DeleteUser(ctx context.Context, in *DeleteUserRequest, opts ...grpc.CallOption) (*DeleteUserResponse, error) { + out := new(DeleteUserResponse) + err := c.cc.Invoke(ctx, ShieldService_DeleteUser_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *shieldServiceClient) ListGroups(ctx context.Context, in *ListGroupsRequest, opts ...grpc.CallOption) (*ListGroupsResponse, error) { out := new(ListGroupsResponse) err := c.cc.Invoke(ctx, ShieldService_ListGroups_FullMethodName, in, out, opts...) @@ -578,6 +589,7 @@ type ShieldServiceServer interface { CheckResourceUserPermission(context.Context, *CheckResourceUserPermissionRequest) (*CheckResourceUserPermissionResponse, error) UpdateCurrentUser(context.Context, *UpdateCurrentUserRequest) (*UpdateCurrentUserResponse, error) CreateMetadataKey(context.Context, *CreateMetadataKeyRequest) (*CreateMetadataKeyResponse, error) + DeleteUser(context.Context, *DeleteUserRequest) (*DeleteUserResponse, error) // Group ListGroups(context.Context, *ListGroupsRequest) (*ListGroupsResponse, error) CreateGroup(context.Context, *CreateGroupRequest) (*CreateGroupResponse, error) @@ -661,6 +673,9 @@ func (UnimplementedShieldServiceServer) UpdateCurrentUser(context.Context, *Upda func (UnimplementedShieldServiceServer) CreateMetadataKey(context.Context, *CreateMetadataKeyRequest) (*CreateMetadataKeyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method CreateMetadataKey not implemented") } +func (UnimplementedShieldServiceServer) DeleteUser(context.Context, *DeleteUserRequest) (*DeleteUserResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteUser not implemented") +} func (UnimplementedShieldServiceServer) ListGroups(context.Context, *ListGroupsRequest) (*ListGroupsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ListGroups not implemented") } @@ -950,6 +965,24 @@ func _ShieldService_CreateMetadataKey_Handler(srv interface{}, ctx context.Conte return interceptor(ctx, in, info, handler) } +func _ShieldService_DeleteUser_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteUserRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ShieldServiceServer).DeleteUser(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ShieldService_DeleteUser_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ShieldServiceServer).DeleteUser(ctx, req.(*DeleteUserRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _ShieldService_ListGroups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ListGroupsRequest) if err := dec(in); err != nil { @@ -1677,6 +1710,10 @@ var ShieldService_ServiceDesc = grpc.ServiceDesc{ MethodName: "CreateMetadataKey", Handler: _ShieldService_CreateMetadataKey_Handler, }, + { + MethodName: "DeleteUser", + Handler: _ShieldService_DeleteUser_Handler, + }, { MethodName: "ListGroups", Handler: _ShieldService_ListGroups_Handler, From 3214d874a9c9fbf9fed1d54a88ab0eb594e97e8b Mon Sep 17 00:00:00 2001 From: Femi Novia Lina Date: Tue, 8 Oct 2024 13:19:24 +0700 Subject: [PATCH 2/2] fix: naming --- core/user/mocks/user_repository.go | 22 +++++++++---------- core/user/service.go | 2 +- core/user/service_test.go | 2 +- core/user/user.go | 2 +- internal/store/postgres/user_repository.go | 2 +- .../store/postgres/user_repository_test.go | 2 +- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/core/user/mocks/user_repository.go b/core/user/mocks/user_repository.go index 7e29afaa0..74aaab769 100644 --- a/core/user/mocks/user_repository.go +++ b/core/user/mocks/user_repository.go @@ -184,12 +184,12 @@ func (_c *Repository_DeleteByEmail_Call) RunAndReturn(run func(context.Context, return _c } -// DeleteById provides a mock function with given fields: ctx, id, emailTag -func (_m *Repository) DeleteById(ctx context.Context, id string, emailTag string) error { +// DeleteByID provides a mock function with given fields: ctx, id, emailTag +func (_m *Repository) DeleteByID(ctx context.Context, id string, emailTag string) error { ret := _m.Called(ctx, id, emailTag) if len(ret) == 0 { - panic("no return value specified for DeleteById") + panic("no return value specified for DeleteByID") } var r0 error @@ -202,32 +202,32 @@ func (_m *Repository) DeleteById(ctx context.Context, id string, emailTag string return r0 } -// Repository_DeleteById_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'DeleteById' -type Repository_DeleteById_Call struct { +// Repository_DeleteByID_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'DeleteByID' +type Repository_DeleteByID_Call struct { *mock.Call } -// DeleteById is a helper method to define mock.On call +// DeleteByID is a helper method to define mock.On call // - ctx context.Context // - id string // - emailTag string -func (_e *Repository_Expecter) DeleteById(ctx interface{}, id interface{}, emailTag interface{}) *Repository_DeleteById_Call { - return &Repository_DeleteById_Call{Call: _e.mock.On("DeleteById", ctx, id, emailTag)} +func (_e *Repository_Expecter) DeleteByID(ctx interface{}, id interface{}, emailTag interface{}) *Repository_DeleteByID_Call { + return &Repository_DeleteByID_Call{Call: _e.mock.On("DeleteByID", ctx, id, emailTag)} } -func (_c *Repository_DeleteById_Call) Run(run func(ctx context.Context, id string, emailTag string)) *Repository_DeleteById_Call { +func (_c *Repository_DeleteByID_Call) Run(run func(ctx context.Context, id string, emailTag string)) *Repository_DeleteByID_Call { _c.Call.Run(func(args mock.Arguments) { run(args[0].(context.Context), args[1].(string), args[2].(string)) }) return _c } -func (_c *Repository_DeleteById_Call) Return(_a0 error) *Repository_DeleteById_Call { +func (_c *Repository_DeleteByID_Call) Return(_a0 error) *Repository_DeleteByID_Call { _c.Call.Return(_a0) return _c } -func (_c *Repository_DeleteById_Call) RunAndReturn(run func(context.Context, string, string) error) *Repository_DeleteById_Call { +func (_c *Repository_DeleteByID_Call) RunAndReturn(run func(context.Context, string, string) error) *Repository_DeleteByID_Call { _c.Call.Return(run) return _c } diff --git a/core/user/service.go b/core/user/service.go index f4a0eab6a..782430e3e 100644 --- a/core/user/service.go +++ b/core/user/service.go @@ -215,7 +215,7 @@ func (s Service) FetchCurrentUser(ctx context.Context) (User, error) { func (s Service) Delete(ctx context.Context, id string) error { if uuid.IsValid(id) { - return s.repository.DeleteById(ctx, id, s.config.InactiveEmailTag) + return s.repository.DeleteByID(ctx, id, s.config.InactiveEmailTag) } return s.repository.DeleteByEmail(ctx, id, s.config.InactiveEmailTag) } diff --git a/core/user/service_test.go b/core/user/service_test.go index b231ad959..d2f9515ed 100644 --- a/core/user/service_test.go +++ b/core/user/service_test.go @@ -705,7 +705,7 @@ func TestService_DeleteUser(t *testing.T) { repository := &mocks.Repository{} activityService := &mocks.ActivityService{} repository.EXPECT(). - DeleteById(mock.Anything, testUserID, emailTag). + DeleteByID(mock.Anything, testUserID, emailTag). Return(user.ErrNotExist) return user.NewService(logger, user.Config{InactiveEmailTag: emailTag}, repository, activityService) }, diff --git a/core/user/user.go b/core/user/user.go index c4dd1c80e..2edfec874 100644 --- a/core/user/user.go +++ b/core/user/user.go @@ -22,7 +22,7 @@ type Repository interface { UpdateByEmail(ctx context.Context, toUpdate User) (User, error) CreateMetadataKey(ctx context.Context, key UserMetadataKey) (UserMetadataKey, error) DeleteByEmail(ctx context.Context, email string, emailTag string) error - DeleteById(ctx context.Context, id string, emailTag string) error + DeleteByID(ctx context.Context, id string, emailTag string) error } type User struct { diff --git a/internal/store/postgres/user_repository.go b/internal/store/postgres/user_repository.go index 815632024..21955b962 100644 --- a/internal/store/postgres/user_repository.go +++ b/internal/store/postgres/user_repository.go @@ -683,7 +683,7 @@ func (r UserRepository) DeleteByEmail(ctx context.Context, email string, emailTa return nil } -func (r UserRepository) DeleteById(ctx context.Context, id string, emailTag string) error { +func (r UserRepository) DeleteByID(ctx context.Context, id string, emailTag string) error { user, err := r.GetByID(ctx, id) if err != nil { return err diff --git a/internal/store/postgres/user_repository_test.go b/internal/store/postgres/user_repository_test.go index 553bb4559..e5a6c0004 100644 --- a/internal/store/postgres/user_repository_test.go +++ b/internal/store/postgres/user_repository_test.go @@ -640,7 +640,7 @@ func (s *UserRepositoryTestSuite) TestDeleteByID() { for _, tc := range testCases { s.Run(tc.Description, func() { - err := s.repository.DeleteById(s.ctx, tc.Email, emailTag) + err := s.repository.DeleteByID(s.ctx, tc.Email, emailTag) if tc.Err != nil && tc.Err.Error() != "" { if errors.Unwrap(err) == tc.Err { s.T().Fatalf("got error %s, expected was %s", err.Error(), tc.Err)