diff --git a/backend/schemaservice/changesetstate_test.go b/backend/schemaservice/changesetstate_test.go index 3a53f6c08..3c7cafa69 100644 --- a/backend/schemaservice/changesetstate_test.go +++ b/backend/schemaservice/changesetstate_test.go @@ -87,10 +87,9 @@ func TestChangesetState(t *testing.T) { t.Run("test update module schema", func(t *testing.T) { newState := reflect.DeepCopy(module) newState.ModRuntime().ModRunner().Endpoint = "http://localhost:8080" - err = state.Publish(ctx, schemaservice.EventWrapper{Event: &schema.DeploymentSchemaUpdatedEvent{ - Key: module.Runtime.Deployment.DeploymentKey, - Schema: newState, - Changeset: changesetKey, + err = state.Publish(ctx, schemaservice.EventWrapper{Event: &schema.DeploymentRuntimeEvent{ + Payload: &schema.RuntimeElement{Deployment: module.Runtime.Deployment.DeploymentKey, Element: &schema.ModuleRuntimeRunner{Endpoint: "http://localhost:8080"}}, + Changeset: &changesetKey, }}) assert.NoError(t, err) view, err = state.View(ctx) @@ -126,11 +125,9 @@ func TestChangesetState(t *testing.T) { t.Run("test prepare changeset", func(t *testing.T) { newState := reflect.DeepCopy(module) newState.Runtime.Deployment.State = schema.DeploymentStateReady - newState.ModRuntime().ModRunner().Endpoint = "http://localhost:8080" - err = state.Publish(ctx, schemaservice.EventWrapper{Event: &schema.DeploymentSchemaUpdatedEvent{ - Key: module.Runtime.Deployment.DeploymentKey, - Schema: newState, - Changeset: changesetKey, + err = state.Publish(ctx, schemaservice.EventWrapper{Event: &schema.DeploymentRuntimeEvent{ + Payload: &schema.RuntimeElement{Deployment: module.Runtime.Deployment.DeploymentKey, Element: &schema.ModuleRuntimeDeployment{State: schema.DeploymentStateReady}}, + Changeset: &changesetKey, }}) assert.NoError(t, err) view, err = state.View(ctx) diff --git a/backend/schemaservice/events.go b/backend/schemaservice/events.go index 73eb9aa5c..936afab7d 100644 --- a/backend/schemaservice/events.go +++ b/backend/schemaservice/events.go @@ -11,7 +11,6 @@ import ( "github.com/block/ftl/common/errors" "github.com/block/ftl/common/reflect" "github.com/block/ftl/common/schema" - "github.com/block/ftl/common/slices" "github.com/block/ftl/internal/key" "github.com/block/ftl/internal/log" ) @@ -26,18 +25,8 @@ func (r SchemaState) ApplyEvent(ctx context.Context, event schema.Event) error { return fmt.Errorf("invalid event: %w", err) } switch e := event.(type) { - case *schema.DeploymentSchemaUpdatedEvent: - return handleDeploymentSchemaUpdatedEvent(r, e) - case *schema.DeploymentReplicasUpdatedEvent: - return handleDeploymentReplicasUpdatedEvent(r, e) - case *schema.VerbRuntimeEvent: - return handleVerbRuntimeEvent(r, e) - case *schema.TopicRuntimeEvent: - return handleTopicRuntimeEvent(r, e) - case *schema.DatabaseRuntimeEvent: - return handleDatabaseRuntimeEvent(r, e) - case *schema.ModuleRuntimeEvent: - return handleModuleRuntimeEvent(ctx, r, e) + case *schema.DeploymentRuntimeEvent: + return handleDeploymentRuntimeEvent(r, e) case *schema.ChangesetCreatedEvent: return handleChangesetCreatedEvent(r, e) case *schema.ChangesetPreparedEvent: @@ -55,116 +44,35 @@ func (r SchemaState) ApplyEvent(ctx context.Context, event schema.Event) error { } } -func handleDeploymentSchemaUpdatedEvent(t SchemaState, e *schema.DeploymentSchemaUpdatedEvent) error { - if e.Changeset.IsZero() { - // The only reason this is optional is for event extract reasons that should change when it is refactored - return fmt.Errorf("changeset is required") - } - cs, ok := t.changesets[e.Changeset] - if !ok { - return fmt.Errorf("changeset %s not found", e.Key) - } - for i, m := range cs.Modules { - if m.Name == e.Schema.Name { - cs.Modules[i] = e.Schema - return nil - } - } - - return fmt.Errorf("module %s not found in changeset %s", e.Schema.Name, e.Changeset) -} - -func handleDeploymentReplicasUpdatedEvent(t SchemaState, e *schema.DeploymentReplicasUpdatedEvent) error { - existing, ok := t.deployments[e.Key.Payload.Module] - if !ok { - return fmt.Errorf("deployment %s not found", e.Key) - } - existing.ModRuntime().ModScaling().MinReplicas = int32(e.Replicas) - return nil -} - -func handleVerbRuntimeEvent(t SchemaState, e *schema.VerbRuntimeEvent) error { - m, storeEvent, err := t.handleRuntimeEvent(e) - if err != nil { - return err - } - for verb := range slices.FilterVariants[*schema.Verb](m.Decls) { - if verb.Name == e.ID { - if verb.Runtime == nil { - verb.Runtime = &schema.VerbRuntime{} - } - - if subscription, ok := e.Subscription.Get(); ok { - verb.Runtime.Subscription = &subscription +func handleDeploymentRuntimeEvent(t SchemaState, e *schema.DeploymentRuntimeEvent) error { + if cs, ok := e.ChangesetKey().Get(); ok { + c, ok := t.changesets[cs] + if !ok { + return fmt.Errorf("changeset %s not found", cs.String()) + } + module := e.DeploymentKey().Payload.Module + for _, m := range c.Modules { + if m.Name == module { + err := e.Payload.ApplyToModule(m) + if err != nil { + return fmt.Errorf("error applying runtime event to module %s: %w", module, err) + } + t.changesetEvents[cs] = append(t.changesetEvents[cs], e) + return nil } } } - storeEvent() - return nil -} - -func handleTopicRuntimeEvent(t SchemaState, e *schema.TopicRuntimeEvent) error { - m, storeEvent, err := t.handleRuntimeEvent(e) - if err != nil { - return err - } - for topic := range slices.FilterVariants[*schema.Topic](m.Decls) { - if topic.Name == e.ID { - topic.Runtime = e.Payload - storeEvent() - return nil - } - } - return fmt.Errorf("topic %s not found", e.ID) -} - -func handleDatabaseRuntimeEvent(t SchemaState, e *schema.DatabaseRuntimeEvent) error { - m, storeEvent, err := t.handleRuntimeEvent(e) - if err != nil { - return err - } - for _, decl := range m.Decls { - if db, ok := decl.(*schema.Database); ok && db.Name == e.ID { - if db.Runtime == nil { - db.Runtime = &schema.DatabaseRuntime{} + for k, m := range t.deployments { + if m.Runtime.Deployment.DeploymentKey == e.DeploymentKey() { + err := e.Payload.ApplyToModule(m) + if err != nil { + return fmt.Errorf("error applying runtime event to module %s: %w", m, err) } - db.Runtime.Connections = e.Connections - storeEvent() + t.deploymentEvents[k] = append(t.deploymentEvents[k], e) return nil } } - return fmt.Errorf("database %s not found", e.ID) -} - -func handleModuleRuntimeEvent(ctx context.Context, t SchemaState, e *schema.ModuleRuntimeEvent) error { - module, storeEvent, err := t.handleRuntimeEvent(e) - if err != nil { - return err - } - - if base, ok := e.Base.Get(); ok { - module.ModRuntime().Base = base - } - if scaling, ok := e.Scaling.Get(); ok { - module.ModRuntime().Scaling = &scaling - } - if runner, ok := e.Runner.Get(); ok { - module.ModRuntime().Runner = &runner - } - if deployment, ok := e.Deployment.Get(); ok { - if deployment.State == schema.DeploymentStateUnspecified { - deployment.State = module.Runtime.Deployment.State - } else if deployment.State != module.Runtime.Deployment.State { - // We only allow a few different externally driven state changes - if !(module.Runtime.Deployment.State == schema.DeploymentStateProvisioning && deployment.State == schema.DeploymentStateReady) { - return fmt.Errorf("invalid state transition from %d to %d", module.Runtime.Deployment.State, deployment.State) - } - } - log.FromContext(ctx).Debugf("deployment %s state change %v -> %v", module.Name, module.Runtime.Deployment, deployment) - module.ModRuntime().Deployment = &deployment - } - storeEvent() - return nil + return fmt.Errorf("deployment %s not found", e.DeploymentKey().String()) } func handleChangesetCreatedEvent(t SchemaState, e *schema.ChangesetCreatedEvent) error { diff --git a/backend/schemaservice/schemaservice.go b/backend/schemaservice/schemaservice.go index cf0a6b48a..81d88aa4c 100644 --- a/backend/schemaservice/schemaservice.go +++ b/backend/schemaservice/schemaservice.go @@ -6,7 +6,6 @@ import ( "net/url" "connectrpc.com/connect" - "github.com/alecthomas/types/optional" "golang.org/x/sync/errgroup" ftlv1 "github.com/block/ftl/backend/protos/xyz/block/ftl/v1" @@ -135,34 +134,7 @@ func (s *Service) UpdateDeploymentRuntime(ctx context.Context, req *connect.Requ } changeset = &cs } - var re schema.Event - switch e := event.Element.(type) { - case *schema.ModuleRuntimeScaling: - re = &schema.ModuleRuntimeEvent{Changeset: changeset, Key: event.Deployment, Scaling: optional.Ptr(e)} - case *schema.ModuleRuntimeDeployment: - re = &schema.ModuleRuntimeEvent{Changeset: changeset, Key: event.Deployment, Deployment: optional.Ptr(e)} - case *schema.ModuleRuntimeRunner: - re = &schema.ModuleRuntimeEvent{Changeset: changeset, Key: event.Deployment, Runner: optional.Ptr(e)} - case *schema.VerbRuntime: - id, ok := event.Name.Get() - if !ok { - return nil, fmt.Errorf("missing name in event") - } - re = &schema.VerbRuntimeEvent{ID: id, Changeset: changeset, Deployment: event.Deployment, Subscription: optional.Ptr(e.Subscription)} - case *schema.TopicRuntime: - id, ok := event.Name.Get() - if !ok { - return nil, fmt.Errorf("missing name in event") - } - re = &schema.TopicRuntimeEvent{ID: id, Changeset: changeset, Deployment: event.Deployment, Payload: e} - case *schema.DatabaseRuntime: - id, ok := event.Name.Get() - if !ok { - return nil, fmt.Errorf("missing name in event") - } - re = &schema.DatabaseRuntimeEvent{ID: id, Changeset: changeset, Deployment: event.Deployment, Connections: e.Connections} - } - err = s.State.Publish(ctx, EventWrapper{Event: re}) + err = s.State.Publish(ctx, EventWrapper{Event: &schema.DeploymentRuntimeEvent{Changeset: changeset, Payload: event}}) if err != nil { return nil, fmt.Errorf("could not apply event: %w", err) } diff --git a/backend/schemaservice/state.go b/backend/schemaservice/state.go index 48b20e2b3..966be3698 100644 --- a/backend/schemaservice/state.go +++ b/backend/schemaservice/state.go @@ -24,8 +24,8 @@ import ( type SchemaState struct { deployments map[string]*schema.Module changesets map[key.Changeset]*schema.Changeset - changesetEvents map[key.Changeset][]schema.RuntimeEvent - deploymentEvents map[string][]schema.RuntimeEvent + changesetEvents map[key.Changeset][]*schema.DeploymentRuntimeEvent + deploymentEvents map[string][]*schema.DeploymentRuntimeEvent validationEnabled bool // Huge hack to allow provisioner to use this for a single module archivedChangesets []*schema.Changeset } @@ -34,8 +34,8 @@ func NewSchemaState(validationEnabled bool) SchemaState { return SchemaState{ deployments: map[string]*schema.Module{}, changesets: map[key.Changeset]*schema.Changeset{}, - deploymentEvents: map[string][]schema.RuntimeEvent{}, - changesetEvents: map[key.Changeset][]schema.RuntimeEvent{}, + deploymentEvents: map[string][]*schema.DeploymentRuntimeEvent{}, + changesetEvents: map[key.Changeset][]*schema.DeploymentRuntimeEvent{}, archivedChangesets: []*schema.Changeset{}, validationEnabled: validationEnabled, } @@ -58,7 +58,7 @@ func newStateMachine(ctx context.Context) *schemaStateMachine { func (r *SchemaState) Marshal() ([]byte, error) { changesets := slices.Collect(maps.Values(r.changesets)) changesets = append(changesets, r.archivedChangesets...) - events := []schema.RuntimeEvent{} + events := []*schema.DeploymentRuntimeEvent{} for _, e := range r.changesetEvents { events = append(events, e...) } @@ -208,35 +208,6 @@ func (r *SchemaState) GetProvisioning(module string, cs key.Changeset) (*schema. return nil, fmt.Errorf("provisioning for module %s not found", module) } -func (r *SchemaState) handleRuntimeEvent(e schema.RuntimeEvent) (*schema.Module, func(), error) { - if cs, ok := e.ChangesetKey().Get(); ok { - c, ok := r.changesets[cs] - if !ok { - return nil, func() { - - }, fmt.Errorf("changeset %s not found", cs.String()) - } - module := e.DeploymentKey().Payload.Module - for _, m := range c.Modules { - if m.Name == module { - return m, func() { - r.changesetEvents[cs] = append(r.changesetEvents[cs], e) - }, nil - } - } - } - for k, m := range r.deployments { - if m.Runtime.Deployment.DeploymentKey == e.DeploymentKey() { - return m, func() { - r.deploymentEvents[k] = append(r.deploymentEvents[k], e) - }, nil - } - } - return nil, func() { - - }, fmt.Errorf("deployment %s not found", e.DeploymentKey().String()) -} - type EventWrapper struct { Event schema.Event } diff --git a/backend/schemaservice/state_test.go b/backend/schemaservice/state_test.go index 4633464e9..2163b07dc 100644 --- a/backend/schemaservice/state_test.go +++ b/backend/schemaservice/state_test.go @@ -5,7 +5,6 @@ import ( "testing" "github.com/alecthomas/assert/v2" - "github.com/alecthomas/types/optional" "github.com/block/ftl/common/schema" "github.com/block/ftl/internal/key" @@ -50,11 +49,13 @@ func TestStateMarshallingAfterCommonEvents(t *testing.T) { }, }, })) - assert.NoError(t, state.ApplyEvent(ctx, &schema.ModuleRuntimeEvent{ - Key: deploymentKey, - Changeset: &changesetKey, - Deployment: optional.Some(schema.ModuleRuntimeDeployment{DeploymentKey: deploymentKey, State: schema.DeploymentStateReady}), - Runner: optional.Some(schema.ModuleRuntimeRunner{Endpoint: "http://localhost:6734"}), + assert.NoError(t, state.ApplyEvent(ctx, &schema.DeploymentRuntimeEvent{ + Payload: &schema.RuntimeElement{Deployment: deploymentKey, Element: &schema.ModuleRuntimeRunner{Endpoint: "http://localhost:8080"}}, + Changeset: &changesetKey, + })) + assert.NoError(t, state.ApplyEvent(ctx, &schema.DeploymentRuntimeEvent{ + Payload: &schema.RuntimeElement{Deployment: deploymentKey, Element: &schema.ModuleRuntimeDeployment{State: schema.DeploymentStateReady}}, + Changeset: &changesetKey, })) assert.NoError(t, state.ApplyEvent(ctx, &schema.ChangesetPreparedEvent{ Key: changesetKey, diff --git a/common/protos/xyz/block/ftl/schema/v1/schema.pb.go b/common/protos/xyz/block/ftl/schema/v1/schema.pb.go index 1c4259506..36c341a78 100644 --- a/common/protos/xyz/block/ftl/schema/v1/schema.pb.go +++ b/common/protos/xyz/block/ftl/schema/v1/schema.pb.go @@ -1341,74 +1341,6 @@ func (x *DatabaseRuntimeConnections) GetWrite() *DatabaseConnector { return nil } -type DatabaseRuntimeEvent struct { - state protoimpl.MessageState `protogen:"open.v1"` - Deployment string `protobuf:"bytes,1,opt,name=deployment,proto3" json:"deployment,omitempty"` - Changeset string `protobuf:"bytes,2,opt,name=changeset,proto3" json:"changeset,omitempty"` - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - Connections *DatabaseRuntimeConnections `protobuf:"bytes,4,opt,name=connections,proto3" json:"connections,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *DatabaseRuntimeEvent) Reset() { - *x = DatabaseRuntimeEvent{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *DatabaseRuntimeEvent) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DatabaseRuntimeEvent) ProtoMessage() {} - -func (x *DatabaseRuntimeEvent) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[19] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DatabaseRuntimeEvent.ProtoReflect.Descriptor instead. -func (*DatabaseRuntimeEvent) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{19} -} - -func (x *DatabaseRuntimeEvent) GetDeployment() string { - if x != nil { - return x.Deployment - } - return "" -} - -func (x *DatabaseRuntimeEvent) GetChangeset() string { - if x != nil { - return x.Changeset - } - return "" -} - -func (x *DatabaseRuntimeEvent) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *DatabaseRuntimeEvent) GetConnections() *DatabaseRuntimeConnections { - if x != nil { - return x.Connections - } - return nil -} - // Decl represents user-defined data types in the schema grammar. type Decl struct { state protoimpl.MessageState `protogen:"open.v1"` @@ -1429,7 +1361,7 @@ type Decl struct { func (x *Decl) Reset() { *x = Decl{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[20] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1441,7 +1373,7 @@ func (x *Decl) String() string { func (*Decl) ProtoMessage() {} func (x *Decl) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[20] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[19] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1454,7 +1386,7 @@ func (x *Decl) ProtoReflect() protoreflect.Message { // Deprecated: Use Decl.ProtoReflect.Descriptor instead. func (*Decl) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{20} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{19} } func (x *Decl) GetValue() isDecl_Value { @@ -1588,74 +1520,6 @@ func (*Decl_TypeAlias) isDecl_Value() {} func (*Decl_Verb) isDecl_Value() {} -type DeploymentActivatedEvent struct { - state protoimpl.MessageState `protogen:"open.v1"` - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` - ActivatedAt *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=activated_at,json=activatedAt,proto3" json:"activated_at,omitempty"` - MinReplicas int64 `protobuf:"varint,3,opt,name=min_replicas,json=minReplicas,proto3" json:"min_replicas,omitempty"` - Changeset string `protobuf:"bytes,4,opt,name=changeset,proto3" json:"changeset,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *DeploymentActivatedEvent) Reset() { - *x = DeploymentActivatedEvent{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *DeploymentActivatedEvent) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeploymentActivatedEvent) ProtoMessage() {} - -func (x *DeploymentActivatedEvent) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[21] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeploymentActivatedEvent.ProtoReflect.Descriptor instead. -func (*DeploymentActivatedEvent) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{21} -} - -func (x *DeploymentActivatedEvent) GetKey() string { - if x != nil { - return x.Key - } - return "" -} - -func (x *DeploymentActivatedEvent) GetActivatedAt() *timestamppb.Timestamp { - if x != nil { - return x.ActivatedAt - } - return nil -} - -func (x *DeploymentActivatedEvent) GetMinReplicas() int64 { - if x != nil { - return x.MinReplicas - } - return 0 -} - -func (x *DeploymentActivatedEvent) GetChangeset() string { - if x != nil { - return x.Changeset - } - return "" -} - type DeploymentCreatedEvent struct { state protoimpl.MessageState `protogen:"open.v1"` Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` @@ -1667,7 +1531,7 @@ type DeploymentCreatedEvent struct { func (x *DeploymentCreatedEvent) Reset() { *x = DeploymentCreatedEvent{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[22] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1679,7 +1543,7 @@ func (x *DeploymentCreatedEvent) String() string { func (*DeploymentCreatedEvent) ProtoMessage() {} func (x *DeploymentCreatedEvent) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[22] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[20] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1692,7 +1556,7 @@ func (x *DeploymentCreatedEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use DeploymentCreatedEvent.ProtoReflect.Descriptor instead. func (*DeploymentCreatedEvent) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{22} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{20} } func (x *DeploymentCreatedEvent) GetKey() string { @@ -1716,150 +1580,29 @@ func (x *DeploymentCreatedEvent) GetChangeset() string { return "" } -type DeploymentDeactivatedEvent struct { - state protoimpl.MessageState `protogen:"open.v1"` - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` - ModuleRemoved bool `protobuf:"varint,2,opt,name=module_removed,json=moduleRemoved,proto3" json:"module_removed,omitempty"` - Changeset string `protobuf:"bytes,3,opt,name=changeset,proto3" json:"changeset,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *DeploymentDeactivatedEvent) Reset() { - *x = DeploymentDeactivatedEvent{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *DeploymentDeactivatedEvent) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeploymentDeactivatedEvent) ProtoMessage() {} - -func (x *DeploymentDeactivatedEvent) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[23] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeploymentDeactivatedEvent.ProtoReflect.Descriptor instead. -func (*DeploymentDeactivatedEvent) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{23} -} - -func (x *DeploymentDeactivatedEvent) GetKey() string { - if x != nil { - return x.Key - } - return "" -} - -func (x *DeploymentDeactivatedEvent) GetModuleRemoved() bool { - if x != nil { - return x.ModuleRemoved - } - return false -} - -func (x *DeploymentDeactivatedEvent) GetChangeset() string { - if x != nil { - return x.Changeset - } - return "" -} - -type DeploymentReplicasUpdatedEvent struct { - state protoimpl.MessageState `protogen:"open.v1"` - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` - Replicas int64 `protobuf:"varint,2,opt,name=replicas,proto3" json:"replicas,omitempty"` - Changeset string `protobuf:"bytes,3,opt,name=changeset,proto3" json:"changeset,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *DeploymentReplicasUpdatedEvent) Reset() { - *x = DeploymentReplicasUpdatedEvent{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *DeploymentReplicasUpdatedEvent) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeploymentReplicasUpdatedEvent) ProtoMessage() {} - -func (x *DeploymentReplicasUpdatedEvent) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[24] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeploymentReplicasUpdatedEvent.ProtoReflect.Descriptor instead. -func (*DeploymentReplicasUpdatedEvent) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{24} -} - -func (x *DeploymentReplicasUpdatedEvent) GetKey() string { - if x != nil { - return x.Key - } - return "" -} - -func (x *DeploymentReplicasUpdatedEvent) GetReplicas() int64 { - if x != nil { - return x.Replicas - } - return 0 -} - -func (x *DeploymentReplicasUpdatedEvent) GetChangeset() string { - if x != nil { - return x.Changeset - } - return "" -} - -type DeploymentSchemaUpdatedEvent struct { +type DeploymentRuntimeEvent struct { state protoimpl.MessageState `protogen:"open.v1"` - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` - Schema *Module `protobuf:"bytes,2,opt,name=schema,proto3" json:"schema,omitempty"` - Changeset string `protobuf:"bytes,3,opt,name=changeset,proto3" json:"changeset,omitempty"` + Payload *RuntimeElement `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` + Changeset string `protobuf:"bytes,2,opt,name=changeset,proto3" json:"changeset,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } -func (x *DeploymentSchemaUpdatedEvent) Reset() { - *x = DeploymentSchemaUpdatedEvent{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[25] +func (x *DeploymentRuntimeEvent) Reset() { + *x = DeploymentRuntimeEvent{} + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *DeploymentSchemaUpdatedEvent) String() string { +func (x *DeploymentRuntimeEvent) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DeploymentSchemaUpdatedEvent) ProtoMessage() {} +func (*DeploymentRuntimeEvent) ProtoMessage() {} -func (x *DeploymentSchemaUpdatedEvent) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[25] +func (x *DeploymentRuntimeEvent) ProtoReflect() protoreflect.Message { + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[21] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1870,26 +1613,19 @@ func (x *DeploymentSchemaUpdatedEvent) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DeploymentSchemaUpdatedEvent.ProtoReflect.Descriptor instead. -func (*DeploymentSchemaUpdatedEvent) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{25} -} - -func (x *DeploymentSchemaUpdatedEvent) GetKey() string { - if x != nil { - return x.Key - } - return "" +// Deprecated: Use DeploymentRuntimeEvent.ProtoReflect.Descriptor instead. +func (*DeploymentRuntimeEvent) Descriptor() ([]byte, []int) { + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{21} } -func (x *DeploymentSchemaUpdatedEvent) GetSchema() *Module { +func (x *DeploymentRuntimeEvent) GetPayload() *RuntimeElement { if x != nil { - return x.Schema + return x.Payload } return nil } -func (x *DeploymentSchemaUpdatedEvent) GetChangeset() string { +func (x *DeploymentRuntimeEvent) GetChangeset() string { if x != nil { return x.Changeset } @@ -1910,7 +1646,7 @@ type Enum struct { func (x *Enum) Reset() { *x = Enum{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[26] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1922,7 +1658,7 @@ func (x *Enum) String() string { func (*Enum) ProtoMessage() {} func (x *Enum) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[26] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[22] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1935,7 +1671,7 @@ func (x *Enum) ProtoReflect() protoreflect.Message { // Deprecated: Use Enum.ProtoReflect.Descriptor instead. func (*Enum) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{26} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{22} } func (x *Enum) GetPos() *Position { @@ -1992,7 +1728,7 @@ type EnumVariant struct { func (x *EnumVariant) Reset() { *x = EnumVariant{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[27] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2004,7 +1740,7 @@ func (x *EnumVariant) String() string { func (*EnumVariant) ProtoMessage() {} func (x *EnumVariant) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[27] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[23] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2017,7 +1753,7 @@ func (x *EnumVariant) ProtoReflect() protoreflect.Message { // Deprecated: Use EnumVariant.ProtoReflect.Descriptor instead. func (*EnumVariant) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{27} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{23} } func (x *EnumVariant) GetPos() *Position { @@ -2058,15 +1794,8 @@ type Event struct { // *Event_ChangesetFailedEvent // *Event_ChangesetFinalizedEvent // *Event_ChangesetPreparedEvent - // *Event_DatabaseRuntimeEvent - // *Event_DeploymentActivatedEvent // *Event_DeploymentCreatedEvent - // *Event_DeploymentDeactivatedEvent - // *Event_DeploymentReplicasUpdatedEvent - // *Event_DeploymentSchemaUpdatedEvent - // *Event_ModuleRuntimeEvent - // *Event_TopicRuntimeEvent - // *Event_VerbRuntimeEvent + // *Event_DeploymentRuntimeEvent Value isEvent_Value `protobuf_oneof:"value"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache @@ -2074,7 +1803,7 @@ type Event struct { func (x *Event) Reset() { *x = Event{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[28] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2086,7 +1815,7 @@ func (x *Event) String() string { func (*Event) ProtoMessage() {} func (x *Event) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[28] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[24] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2099,7 +1828,7 @@ func (x *Event) ProtoReflect() protoreflect.Message { // Deprecated: Use Event.ProtoReflect.Descriptor instead. func (*Event) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{28} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{24} } func (x *Event) GetValue() isEvent_Value { @@ -2163,82 +1892,19 @@ func (x *Event) GetChangesetPreparedEvent() *ChangesetPreparedEvent { return nil } -func (x *Event) GetDatabaseRuntimeEvent() *DatabaseRuntimeEvent { +func (x *Event) GetDeploymentCreatedEvent() *DeploymentCreatedEvent { if x != nil { - if x, ok := x.Value.(*Event_DatabaseRuntimeEvent); ok { - return x.DatabaseRuntimeEvent + if x, ok := x.Value.(*Event_DeploymentCreatedEvent); ok { + return x.DeploymentCreatedEvent } } return nil } -func (x *Event) GetDeploymentActivatedEvent() *DeploymentActivatedEvent { +func (x *Event) GetDeploymentRuntimeEvent() *DeploymentRuntimeEvent { if x != nil { - if x, ok := x.Value.(*Event_DeploymentActivatedEvent); ok { - return x.DeploymentActivatedEvent - } - } - return nil -} - -func (x *Event) GetDeploymentCreatedEvent() *DeploymentCreatedEvent { - if x != nil { - if x, ok := x.Value.(*Event_DeploymentCreatedEvent); ok { - return x.DeploymentCreatedEvent - } - } - return nil -} - -func (x *Event) GetDeploymentDeactivatedEvent() *DeploymentDeactivatedEvent { - if x != nil { - if x, ok := x.Value.(*Event_DeploymentDeactivatedEvent); ok { - return x.DeploymentDeactivatedEvent - } - } - return nil -} - -func (x *Event) GetDeploymentReplicasUpdatedEvent() *DeploymentReplicasUpdatedEvent { - if x != nil { - if x, ok := x.Value.(*Event_DeploymentReplicasUpdatedEvent); ok { - return x.DeploymentReplicasUpdatedEvent - } - } - return nil -} - -func (x *Event) GetDeploymentSchemaUpdatedEvent() *DeploymentSchemaUpdatedEvent { - if x != nil { - if x, ok := x.Value.(*Event_DeploymentSchemaUpdatedEvent); ok { - return x.DeploymentSchemaUpdatedEvent - } - } - return nil -} - -func (x *Event) GetModuleRuntimeEvent() *ModuleRuntimeEvent { - if x != nil { - if x, ok := x.Value.(*Event_ModuleRuntimeEvent); ok { - return x.ModuleRuntimeEvent - } - } - return nil -} - -func (x *Event) GetTopicRuntimeEvent() *TopicRuntimeEvent { - if x != nil { - if x, ok := x.Value.(*Event_TopicRuntimeEvent); ok { - return x.TopicRuntimeEvent - } - } - return nil -} - -func (x *Event) GetVerbRuntimeEvent() *VerbRuntimeEvent { - if x != nil { - if x, ok := x.Value.(*Event_VerbRuntimeEvent); ok { - return x.VerbRuntimeEvent + if x, ok := x.Value.(*Event_DeploymentRuntimeEvent); ok { + return x.DeploymentRuntimeEvent } } return nil @@ -2249,63 +1915,35 @@ type isEvent_Value interface { } type Event_ChangesetCommittedEvent struct { - ChangesetCommittedEvent *ChangesetCommittedEvent `protobuf:"bytes,12,opt,name=changeset_committed_event,json=changesetCommittedEvent,proto3,oneof"` + ChangesetCommittedEvent *ChangesetCommittedEvent `protobuf:"bytes,5,opt,name=changeset_committed_event,json=changesetCommittedEvent,proto3,oneof"` } type Event_ChangesetCreatedEvent struct { - ChangesetCreatedEvent *ChangesetCreatedEvent `protobuf:"bytes,10,opt,name=changeset_created_event,json=changesetCreatedEvent,proto3,oneof"` + ChangesetCreatedEvent *ChangesetCreatedEvent `protobuf:"bytes,3,opt,name=changeset_created_event,json=changesetCreatedEvent,proto3,oneof"` } type Event_ChangesetDrainedEvent struct { - ChangesetDrainedEvent *ChangesetDrainedEvent `protobuf:"bytes,13,opt,name=changeset_drained_event,json=changesetDrainedEvent,proto3,oneof"` + ChangesetDrainedEvent *ChangesetDrainedEvent `protobuf:"bytes,6,opt,name=changeset_drained_event,json=changesetDrainedEvent,proto3,oneof"` } type Event_ChangesetFailedEvent struct { - ChangesetFailedEvent *ChangesetFailedEvent `protobuf:"bytes,15,opt,name=changeset_failed_event,json=changesetFailedEvent,proto3,oneof"` + ChangesetFailedEvent *ChangesetFailedEvent `protobuf:"bytes,8,opt,name=changeset_failed_event,json=changesetFailedEvent,proto3,oneof"` } type Event_ChangesetFinalizedEvent struct { - ChangesetFinalizedEvent *ChangesetFinalizedEvent `protobuf:"bytes,14,opt,name=changeset_finalized_event,json=changesetFinalizedEvent,proto3,oneof"` + ChangesetFinalizedEvent *ChangesetFinalizedEvent `protobuf:"bytes,7,opt,name=changeset_finalized_event,json=changesetFinalizedEvent,proto3,oneof"` } type Event_ChangesetPreparedEvent struct { - ChangesetPreparedEvent *ChangesetPreparedEvent `protobuf:"bytes,11,opt,name=changeset_prepared_event,json=changesetPreparedEvent,proto3,oneof"` -} - -type Event_DatabaseRuntimeEvent struct { - DatabaseRuntimeEvent *DatabaseRuntimeEvent `protobuf:"bytes,8,opt,name=database_runtime_event,json=databaseRuntimeEvent,proto3,oneof"` -} - -type Event_DeploymentActivatedEvent struct { - DeploymentActivatedEvent *DeploymentActivatedEvent `protobuf:"bytes,4,opt,name=deployment_activated_event,json=deploymentActivatedEvent,proto3,oneof"` + ChangesetPreparedEvent *ChangesetPreparedEvent `protobuf:"bytes,4,opt,name=changeset_prepared_event,json=changesetPreparedEvent,proto3,oneof"` } type Event_DeploymentCreatedEvent struct { DeploymentCreatedEvent *DeploymentCreatedEvent `protobuf:"bytes,1,opt,name=deployment_created_event,json=deploymentCreatedEvent,proto3,oneof"` } -type Event_DeploymentDeactivatedEvent struct { - DeploymentDeactivatedEvent *DeploymentDeactivatedEvent `protobuf:"bytes,5,opt,name=deployment_deactivated_event,json=deploymentDeactivatedEvent,proto3,oneof"` -} - -type Event_DeploymentReplicasUpdatedEvent struct { - DeploymentReplicasUpdatedEvent *DeploymentReplicasUpdatedEvent `protobuf:"bytes,3,opt,name=deployment_replicas_updated_event,json=deploymentReplicasUpdatedEvent,proto3,oneof"` -} - -type Event_DeploymentSchemaUpdatedEvent struct { - DeploymentSchemaUpdatedEvent *DeploymentSchemaUpdatedEvent `protobuf:"bytes,2,opt,name=deployment_schema_updated_event,json=deploymentSchemaUpdatedEvent,proto3,oneof"` -} - -type Event_ModuleRuntimeEvent struct { - ModuleRuntimeEvent *ModuleRuntimeEvent `protobuf:"bytes,9,opt,name=module_runtime_event,json=moduleRuntimeEvent,proto3,oneof"` -} - -type Event_TopicRuntimeEvent struct { - TopicRuntimeEvent *TopicRuntimeEvent `protobuf:"bytes,7,opt,name=topic_runtime_event,json=topicRuntimeEvent,proto3,oneof"` -} - -type Event_VerbRuntimeEvent struct { - VerbRuntimeEvent *VerbRuntimeEvent `protobuf:"bytes,6,opt,name=verb_runtime_event,json=verbRuntimeEvent,proto3,oneof"` +type Event_DeploymentRuntimeEvent struct { + DeploymentRuntimeEvent *DeploymentRuntimeEvent `protobuf:"bytes,2,opt,name=deployment_runtime_event,json=deploymentRuntimeEvent,proto3,oneof"` } func (*Event_ChangesetCommittedEvent) isEvent_Value() {} @@ -2320,23 +1958,9 @@ func (*Event_ChangesetFinalizedEvent) isEvent_Value() {} func (*Event_ChangesetPreparedEvent) isEvent_Value() {} -func (*Event_DatabaseRuntimeEvent) isEvent_Value() {} - -func (*Event_DeploymentActivatedEvent) isEvent_Value() {} - func (*Event_DeploymentCreatedEvent) isEvent_Value() {} -func (*Event_DeploymentDeactivatedEvent) isEvent_Value() {} - -func (*Event_DeploymentReplicasUpdatedEvent) isEvent_Value() {} - -func (*Event_DeploymentSchemaUpdatedEvent) isEvent_Value() {} - -func (*Event_ModuleRuntimeEvent) isEvent_Value() {} - -func (*Event_TopicRuntimeEvent) isEvent_Value() {} - -func (*Event_VerbRuntimeEvent) isEvent_Value() {} +func (*Event_DeploymentRuntimeEvent) isEvent_Value() {} type Field struct { state protoimpl.MessageState `protogen:"open.v1"` @@ -2351,7 +1975,7 @@ type Field struct { func (x *Field) Reset() { *x = Field{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[29] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2363,7 +1987,7 @@ func (x *Field) String() string { func (*Field) ProtoMessage() {} func (x *Field) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[29] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[25] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2376,7 +2000,7 @@ func (x *Field) ProtoReflect() protoreflect.Message { // Deprecated: Use Field.ProtoReflect.Descriptor instead. func (*Field) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{29} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{25} } func (x *Field) GetPos() *Position { @@ -2423,7 +2047,7 @@ type Float struct { func (x *Float) Reset() { *x = Float{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[30] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2435,7 +2059,7 @@ func (x *Float) String() string { func (*Float) ProtoMessage() {} func (x *Float) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[30] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[26] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2448,7 +2072,7 @@ func (x *Float) ProtoReflect() protoreflect.Message { // Deprecated: Use Float.ProtoReflect.Descriptor instead. func (*Float) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{30} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{26} } func (x *Float) GetPos() *Position { @@ -2471,7 +2095,7 @@ type IngressPathComponent struct { func (x *IngressPathComponent) Reset() { *x = IngressPathComponent{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[31] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2483,7 +2107,7 @@ func (x *IngressPathComponent) String() string { func (*IngressPathComponent) ProtoMessage() {} func (x *IngressPathComponent) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[31] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[27] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2496,7 +2120,7 @@ func (x *IngressPathComponent) ProtoReflect() protoreflect.Message { // Deprecated: Use IngressPathComponent.ProtoReflect.Descriptor instead. func (*IngressPathComponent) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{31} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{27} } func (x *IngressPathComponent) GetValue() isIngressPathComponent_Value { @@ -2550,7 +2174,7 @@ type IngressPathLiteral struct { func (x *IngressPathLiteral) Reset() { *x = IngressPathLiteral{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[32] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2562,7 +2186,7 @@ func (x *IngressPathLiteral) String() string { func (*IngressPathLiteral) ProtoMessage() {} func (x *IngressPathLiteral) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[32] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[28] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2575,7 +2199,7 @@ func (x *IngressPathLiteral) ProtoReflect() protoreflect.Message { // Deprecated: Use IngressPathLiteral.ProtoReflect.Descriptor instead. func (*IngressPathLiteral) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{32} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{28} } func (x *IngressPathLiteral) GetPos() *Position { @@ -2602,7 +2226,7 @@ type IngressPathParameter struct { func (x *IngressPathParameter) Reset() { *x = IngressPathParameter{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[33] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2614,7 +2238,7 @@ func (x *IngressPathParameter) String() string { func (*IngressPathParameter) ProtoMessage() {} func (x *IngressPathParameter) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[33] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[29] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2627,7 +2251,7 @@ func (x *IngressPathParameter) ProtoReflect() protoreflect.Message { // Deprecated: Use IngressPathParameter.ProtoReflect.Descriptor instead. func (*IngressPathParameter) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{33} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{29} } func (x *IngressPathParameter) GetPos() *Position { @@ -2653,7 +2277,7 @@ type Int struct { func (x *Int) Reset() { *x = Int{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[34] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2665,7 +2289,7 @@ func (x *Int) String() string { func (*Int) ProtoMessage() {} func (x *Int) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[34] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[30] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2678,7 +2302,7 @@ func (x *Int) ProtoReflect() protoreflect.Message { // Deprecated: Use Int.ProtoReflect.Descriptor instead. func (*Int) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{34} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{30} } func (x *Int) GetPos() *Position { @@ -2698,7 +2322,7 @@ type IntValue struct { func (x *IntValue) Reset() { *x = IntValue{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[35] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2710,7 +2334,7 @@ func (x *IntValue) String() string { func (*IntValue) ProtoMessage() {} func (x *IntValue) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[35] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[31] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2723,7 +2347,7 @@ func (x *IntValue) ProtoReflect() protoreflect.Message { // Deprecated: Use IntValue.ProtoReflect.Descriptor instead. func (*IntValue) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{35} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{31} } func (x *IntValue) GetPos() *Position { @@ -2751,7 +2375,7 @@ type Map struct { func (x *Map) Reset() { *x = Map{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[36] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2763,7 +2387,7 @@ func (x *Map) String() string { func (*Map) ProtoMessage() {} func (x *Map) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[36] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[32] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2776,7 +2400,7 @@ func (x *Map) ProtoReflect() protoreflect.Message { // Deprecated: Use Map.ProtoReflect.Descriptor instead. func (*Map) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{36} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{32} } func (x *Map) GetPos() *Position { @@ -2829,7 +2453,7 @@ type Metadata struct { func (x *Metadata) Reset() { *x = Metadata{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[37] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2841,7 +2465,7 @@ func (x *Metadata) String() string { func (*Metadata) ProtoMessage() {} func (x *Metadata) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[37] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[33] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2854,7 +2478,7 @@ func (x *Metadata) ProtoReflect() protoreflect.Message { // Deprecated: Use Metadata.ProtoReflect.Descriptor instead. func (*Metadata) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{37} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{33} } func (x *Metadata) GetValue() isMetadata_Value { @@ -3134,7 +2758,7 @@ type MetadataAlias struct { func (x *MetadataAlias) Reset() { *x = MetadataAlias{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[38] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3146,7 +2770,7 @@ func (x *MetadataAlias) String() string { func (*MetadataAlias) ProtoMessage() {} func (x *MetadataAlias) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[38] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[34] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3159,7 +2783,7 @@ func (x *MetadataAlias) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataAlias.ProtoReflect.Descriptor instead. func (*MetadataAlias) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{38} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{34} } func (x *MetadataAlias) GetPos() *Position { @@ -3195,7 +2819,7 @@ type MetadataArtefact struct { func (x *MetadataArtefact) Reset() { *x = MetadataArtefact{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[39] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3207,7 +2831,7 @@ func (x *MetadataArtefact) String() string { func (*MetadataArtefact) ProtoMessage() {} func (x *MetadataArtefact) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[39] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[35] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3220,7 +2844,7 @@ func (x *MetadataArtefact) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataArtefact.ProtoReflect.Descriptor instead. func (*MetadataArtefact) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{39} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{35} } func (x *MetadataArtefact) GetPos() *Position { @@ -3262,7 +2886,7 @@ type MetadataCalls struct { func (x *MetadataCalls) Reset() { *x = MetadataCalls{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[40] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3274,7 +2898,7 @@ func (x *MetadataCalls) String() string { func (*MetadataCalls) ProtoMessage() {} func (x *MetadataCalls) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[40] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[36] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3287,7 +2911,7 @@ func (x *MetadataCalls) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataCalls.ProtoReflect.Descriptor instead. func (*MetadataCalls) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{40} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{36} } func (x *MetadataCalls) GetPos() *Position { @@ -3315,7 +2939,7 @@ type MetadataConfig struct { func (x *MetadataConfig) Reset() { *x = MetadataConfig{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[41] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3327,7 +2951,7 @@ func (x *MetadataConfig) String() string { func (*MetadataConfig) ProtoMessage() {} func (x *MetadataConfig) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[41] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[37] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3340,7 +2964,7 @@ func (x *MetadataConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataConfig.ProtoReflect.Descriptor instead. func (*MetadataConfig) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{41} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{37} } func (x *MetadataConfig) GetPos() *Position { @@ -3367,7 +2991,7 @@ type MetadataCronJob struct { func (x *MetadataCronJob) Reset() { *x = MetadataCronJob{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[42] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3379,7 +3003,7 @@ func (x *MetadataCronJob) String() string { func (*MetadataCronJob) ProtoMessage() {} func (x *MetadataCronJob) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[42] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[38] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3392,7 +3016,7 @@ func (x *MetadataCronJob) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataCronJob.ProtoReflect.Descriptor instead. func (*MetadataCronJob) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{42} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{38} } func (x *MetadataCronJob) GetPos() *Position { @@ -3419,7 +3043,7 @@ type MetadataDatabases struct { func (x *MetadataDatabases) Reset() { *x = MetadataDatabases{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[43] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3431,7 +3055,7 @@ func (x *MetadataDatabases) String() string { func (*MetadataDatabases) ProtoMessage() {} func (x *MetadataDatabases) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[43] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[39] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3444,7 +3068,7 @@ func (x *MetadataDatabases) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataDatabases.ProtoReflect.Descriptor instead. func (*MetadataDatabases) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{43} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{39} } func (x *MetadataDatabases) GetPos() *Position { @@ -3472,7 +3096,7 @@ type MetadataEncoding struct { func (x *MetadataEncoding) Reset() { *x = MetadataEncoding{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[44] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3484,7 +3108,7 @@ func (x *MetadataEncoding) String() string { func (*MetadataEncoding) ProtoMessage() {} func (x *MetadataEncoding) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[44] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[40] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3497,7 +3121,7 @@ func (x *MetadataEncoding) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataEncoding.ProtoReflect.Descriptor instead. func (*MetadataEncoding) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{44} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{40} } func (x *MetadataEncoding) GetPos() *Position { @@ -3533,7 +3157,7 @@ type MetadataIngress struct { func (x *MetadataIngress) Reset() { *x = MetadataIngress{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[45] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3545,7 +3169,7 @@ func (x *MetadataIngress) String() string { func (*MetadataIngress) ProtoMessage() {} func (x *MetadataIngress) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[45] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[41] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3558,7 +3182,7 @@ func (x *MetadataIngress) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataIngress.ProtoReflect.Descriptor instead. func (*MetadataIngress) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{45} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{41} } func (x *MetadataIngress) GetPos() *Position { @@ -3599,7 +3223,7 @@ type MetadataPartitions struct { func (x *MetadataPartitions) Reset() { *x = MetadataPartitions{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[46] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3611,7 +3235,7 @@ func (x *MetadataPartitions) String() string { func (*MetadataPartitions) ProtoMessage() {} func (x *MetadataPartitions) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[46] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[42] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3624,7 +3248,7 @@ func (x *MetadataPartitions) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataPartitions.ProtoReflect.Descriptor instead. func (*MetadataPartitions) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{46} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{42} } func (x *MetadataPartitions) GetPos() *Position { @@ -3651,7 +3275,7 @@ type MetadataPublisher struct { func (x *MetadataPublisher) Reset() { *x = MetadataPublisher{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[47] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3663,7 +3287,7 @@ func (x *MetadataPublisher) String() string { func (*MetadataPublisher) ProtoMessage() {} func (x *MetadataPublisher) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[47] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[43] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3676,7 +3300,7 @@ func (x *MetadataPublisher) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataPublisher.ProtoReflect.Descriptor instead. func (*MetadataPublisher) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{47} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{43} } func (x *MetadataPublisher) GetPos() *Position { @@ -3706,7 +3330,7 @@ type MetadataRetry struct { func (x *MetadataRetry) Reset() { *x = MetadataRetry{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[48] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3718,7 +3342,7 @@ func (x *MetadataRetry) String() string { func (*MetadataRetry) ProtoMessage() {} func (x *MetadataRetry) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[48] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[44] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3731,7 +3355,7 @@ func (x *MetadataRetry) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataRetry.ProtoReflect.Descriptor instead. func (*MetadataRetry) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{48} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{44} } func (x *MetadataRetry) GetPos() *Position { @@ -3781,7 +3405,7 @@ type MetadataSQLColumn struct { func (x *MetadataSQLColumn) Reset() { *x = MetadataSQLColumn{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[49] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3793,7 +3417,7 @@ func (x *MetadataSQLColumn) String() string { func (*MetadataSQLColumn) ProtoMessage() {} func (x *MetadataSQLColumn) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[49] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[45] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3806,7 +3430,7 @@ func (x *MetadataSQLColumn) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataSQLColumn.ProtoReflect.Descriptor instead. func (*MetadataSQLColumn) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{49} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{45} } func (x *MetadataSQLColumn) GetPos() *Position { @@ -3840,7 +3464,7 @@ type MetadataSQLMigration struct { func (x *MetadataSQLMigration) Reset() { *x = MetadataSQLMigration{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[50] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3852,7 +3476,7 @@ func (x *MetadataSQLMigration) String() string { func (*MetadataSQLMigration) ProtoMessage() {} func (x *MetadataSQLMigration) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[50] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[46] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3865,7 +3489,7 @@ func (x *MetadataSQLMigration) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataSQLMigration.ProtoReflect.Descriptor instead. func (*MetadataSQLMigration) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{50} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{46} } func (x *MetadataSQLMigration) GetPos() *Position { @@ -3894,7 +3518,7 @@ type MetadataSQLQuery struct { func (x *MetadataSQLQuery) Reset() { *x = MetadataSQLQuery{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[51] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3906,7 +3530,7 @@ func (x *MetadataSQLQuery) String() string { func (*MetadataSQLQuery) ProtoMessage() {} func (x *MetadataSQLQuery) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[51] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[47] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3919,7 +3543,7 @@ func (x *MetadataSQLQuery) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataSQLQuery.ProtoReflect.Descriptor instead. func (*MetadataSQLQuery) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{51} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{47} } func (x *MetadataSQLQuery) GetPos() *Position { @@ -3954,7 +3578,7 @@ type MetadataSecrets struct { func (x *MetadataSecrets) Reset() { *x = MetadataSecrets{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[52] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3966,7 +3590,7 @@ func (x *MetadataSecrets) String() string { func (*MetadataSecrets) ProtoMessage() {} func (x *MetadataSecrets) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[52] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[48] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3979,7 +3603,7 @@ func (x *MetadataSecrets) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataSecrets.ProtoReflect.Descriptor instead. func (*MetadataSecrets) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{52} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{48} } func (x *MetadataSecrets) GetPos() *Position { @@ -4008,7 +3632,7 @@ type MetadataSubscriber struct { func (x *MetadataSubscriber) Reset() { *x = MetadataSubscriber{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[53] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4020,7 +3644,7 @@ func (x *MetadataSubscriber) String() string { func (*MetadataSubscriber) ProtoMessage() {} func (x *MetadataSubscriber) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[53] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[49] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4033,7 +3657,7 @@ func (x *MetadataSubscriber) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataSubscriber.ProtoReflect.Descriptor instead. func (*MetadataSubscriber) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{53} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{49} } func (x *MetadataSubscriber) GetPos() *Position { @@ -4075,7 +3699,7 @@ type MetadataTypeMap struct { func (x *MetadataTypeMap) Reset() { *x = MetadataTypeMap{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[54] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4087,7 +3711,7 @@ func (x *MetadataTypeMap) String() string { func (*MetadataTypeMap) ProtoMessage() {} func (x *MetadataTypeMap) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[54] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[50] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4100,7 +3724,7 @@ func (x *MetadataTypeMap) ProtoReflect() protoreflect.Message { // Deprecated: Use MetadataTypeMap.ProtoReflect.Descriptor instead. func (*MetadataTypeMap) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{54} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{50} } func (x *MetadataTypeMap) GetPos() *Position { @@ -4139,7 +3763,7 @@ type Module struct { func (x *Module) Reset() { *x = Module{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[55] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4151,7 +3775,7 @@ func (x *Module) String() string { func (*Module) ProtoMessage() {} func (x *Module) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[55] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[51] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4164,7 +3788,7 @@ func (x *Module) ProtoReflect() protoreflect.Message { // Deprecated: Use Module.ProtoReflect.Descriptor instead. func (*Module) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{55} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{51} } func (x *Module) GetPos() *Position { @@ -4229,7 +3853,7 @@ type ModuleRuntime struct { func (x *ModuleRuntime) Reset() { *x = ModuleRuntime{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[56] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4241,7 +3865,7 @@ func (x *ModuleRuntime) String() string { func (*ModuleRuntime) ProtoMessage() {} func (x *ModuleRuntime) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[56] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[52] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4254,7 +3878,7 @@ func (x *ModuleRuntime) ProtoReflect() protoreflect.Message { // Deprecated: Use ModuleRuntime.ProtoReflect.Descriptor instead. func (*ModuleRuntime) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{56} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{52} } func (x *ModuleRuntime) GetBase() *ModuleRuntimeBase { @@ -4298,7 +3922,7 @@ type ModuleRuntimeBase struct { func (x *ModuleRuntimeBase) Reset() { *x = ModuleRuntimeBase{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[57] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4310,7 +3934,7 @@ func (x *ModuleRuntimeBase) String() string { func (*ModuleRuntimeBase) ProtoMessage() {} func (x *ModuleRuntimeBase) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[57] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[53] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4323,7 +3947,7 @@ func (x *ModuleRuntimeBase) ProtoReflect() protoreflect.Message { // Deprecated: Use ModuleRuntimeBase.ProtoReflect.Descriptor instead. func (*ModuleRuntimeBase) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{57} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{53} } func (x *ModuleRuntimeBase) GetCreateTime() *timestamppb.Timestamp { @@ -4373,7 +3997,7 @@ type ModuleRuntimeDeployment struct { func (x *ModuleRuntimeDeployment) Reset() { *x = ModuleRuntimeDeployment{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[58] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4385,7 +4009,7 @@ func (x *ModuleRuntimeDeployment) String() string { func (*ModuleRuntimeDeployment) ProtoMessage() {} func (x *ModuleRuntimeDeployment) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[58] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[54] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4398,7 +4022,7 @@ func (x *ModuleRuntimeDeployment) ProtoReflect() protoreflect.Message { // Deprecated: Use ModuleRuntimeDeployment.ProtoReflect.Descriptor instead. func (*ModuleRuntimeDeployment) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{58} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{54} } func (x *ModuleRuntimeDeployment) GetDeploymentKey() string { @@ -4429,33 +4053,28 @@ func (x *ModuleRuntimeDeployment) GetState() DeploymentState { return DeploymentState_DEPLOYMENT_STATE_UNSPECIFIED } -type ModuleRuntimeEvent struct { - state protoimpl.MessageState `protogen:"open.v1"` - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` - Changeset string `protobuf:"bytes,2,opt,name=changeset,proto3" json:"changeset,omitempty"` - Base *ModuleRuntimeBase `protobuf:"bytes,3,opt,name=base,proto3,oneof" json:"base,omitempty"` - Scaling *ModuleRuntimeScaling `protobuf:"bytes,4,opt,name=scaling,proto3,oneof" json:"scaling,omitempty"` - Deployment *ModuleRuntimeDeployment `protobuf:"bytes,5,opt,name=deployment,proto3,oneof" json:"deployment,omitempty"` - Runner *ModuleRuntimeRunner `protobuf:"bytes,6,opt,name=runner,proto3,oneof" json:"runner,omitempty"` +type ModuleRuntimeRunner struct { + state protoimpl.MessageState `protogen:"open.v1"` + Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } -func (x *ModuleRuntimeEvent) Reset() { - *x = ModuleRuntimeEvent{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[59] +func (x *ModuleRuntimeRunner) Reset() { + *x = ModuleRuntimeRunner{} + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *ModuleRuntimeEvent) String() string { +func (x *ModuleRuntimeRunner) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ModuleRuntimeEvent) ProtoMessage() {} +func (*ModuleRuntimeRunner) ProtoMessage() {} -func (x *ModuleRuntimeEvent) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[59] +func (x *ModuleRuntimeRunner) ProtoReflect() protoreflect.Message { + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[55] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4466,88 +4085,9 @@ func (x *ModuleRuntimeEvent) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ModuleRuntimeEvent.ProtoReflect.Descriptor instead. -func (*ModuleRuntimeEvent) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{59} -} - -func (x *ModuleRuntimeEvent) GetKey() string { - if x != nil { - return x.Key - } - return "" -} - -func (x *ModuleRuntimeEvent) GetChangeset() string { - if x != nil { - return x.Changeset - } - return "" -} - -func (x *ModuleRuntimeEvent) GetBase() *ModuleRuntimeBase { - if x != nil { - return x.Base - } - return nil -} - -func (x *ModuleRuntimeEvent) GetScaling() *ModuleRuntimeScaling { - if x != nil { - return x.Scaling - } - return nil -} - -func (x *ModuleRuntimeEvent) GetDeployment() *ModuleRuntimeDeployment { - if x != nil { - return x.Deployment - } - return nil -} - -func (x *ModuleRuntimeEvent) GetRunner() *ModuleRuntimeRunner { - if x != nil { - return x.Runner - } - return nil -} - -type ModuleRuntimeRunner struct { - state protoimpl.MessageState `protogen:"open.v1"` - Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *ModuleRuntimeRunner) Reset() { - *x = ModuleRuntimeRunner{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[60] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *ModuleRuntimeRunner) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ModuleRuntimeRunner) ProtoMessage() {} - -func (x *ModuleRuntimeRunner) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[60] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ModuleRuntimeRunner.ProtoReflect.Descriptor instead. -func (*ModuleRuntimeRunner) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{60} +// Deprecated: Use ModuleRuntimeRunner.ProtoReflect.Descriptor instead. +func (*ModuleRuntimeRunner) Descriptor() ([]byte, []int) { + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{55} } func (x *ModuleRuntimeRunner) GetEndpoint() string { @@ -4566,7 +4106,7 @@ type ModuleRuntimeScaling struct { func (x *ModuleRuntimeScaling) Reset() { *x = ModuleRuntimeScaling{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[61] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4578,7 +4118,7 @@ func (x *ModuleRuntimeScaling) String() string { func (*ModuleRuntimeScaling) ProtoMessage() {} func (x *ModuleRuntimeScaling) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[61] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[56] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4591,7 +4131,7 @@ func (x *ModuleRuntimeScaling) ProtoReflect() protoreflect.Message { // Deprecated: Use ModuleRuntimeScaling.ProtoReflect.Descriptor instead. func (*ModuleRuntimeScaling) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{61} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{56} } func (x *ModuleRuntimeScaling) GetMinReplicas() int32 { @@ -4612,7 +4152,7 @@ type Optional struct { func (x *Optional) Reset() { *x = Optional{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[62] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4624,7 +4164,7 @@ func (x *Optional) String() string { func (*Optional) ProtoMessage() {} func (x *Optional) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[62] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[57] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4637,7 +4177,7 @@ func (x *Optional) ProtoReflect() protoreflect.Message { // Deprecated: Use Optional.ProtoReflect.Descriptor instead. func (*Optional) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{62} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{57} } func (x *Optional) GetPos() *Position { @@ -4665,7 +4205,7 @@ type Position struct { func (x *Position) Reset() { *x = Position{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[63] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4677,7 +4217,7 @@ func (x *Position) String() string { func (*Position) ProtoMessage() {} func (x *Position) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[63] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[58] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4690,7 +4230,7 @@ func (x *Position) ProtoReflect() protoreflect.Message { // Deprecated: Use Position.ProtoReflect.Descriptor instead. func (*Position) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{63} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{58} } func (x *Position) GetFilename() string { @@ -4727,7 +4267,7 @@ type Ref struct { func (x *Ref) Reset() { *x = Ref{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[64] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4739,7 +4279,7 @@ func (x *Ref) String() string { func (*Ref) ProtoMessage() {} func (x *Ref) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[64] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[59] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4752,7 +4292,7 @@ func (x *Ref) ProtoReflect() protoreflect.Message { // Deprecated: Use Ref.ProtoReflect.Descriptor instead. func (*Ref) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{64} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{59} } func (x *Ref) GetPos() *Position { @@ -4800,7 +4340,7 @@ type Runtime struct { func (x *Runtime) Reset() { *x = Runtime{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[65] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4812,7 +4352,7 @@ func (x *Runtime) String() string { func (*Runtime) ProtoMessage() {} func (x *Runtime) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[65] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[60] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4825,7 +4365,7 @@ func (x *Runtime) ProtoReflect() protoreflect.Message { // Deprecated: Use Runtime.ProtoReflect.Descriptor instead. func (*Runtime) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{65} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{60} } func (x *Runtime) GetValue() isRuntime_Value { @@ -4940,7 +4480,7 @@ type RuntimeElement struct { func (x *RuntimeElement) Reset() { *x = RuntimeElement{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[66] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4952,7 +4492,7 @@ func (x *RuntimeElement) String() string { func (*RuntimeElement) ProtoMessage() {} func (x *RuntimeElement) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[66] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[61] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4965,7 +4505,7 @@ func (x *RuntimeElement) ProtoReflect() protoreflect.Message { // Deprecated: Use RuntimeElement.ProtoReflect.Descriptor instead. func (*RuntimeElement) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{66} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{61} } func (x *RuntimeElement) GetElement() *Runtime { @@ -4989,120 +4529,6 @@ func (x *RuntimeElement) GetName() string { return "" } -type RuntimeEvent struct { - state protoimpl.MessageState `protogen:"open.v1"` - // Types that are valid to be assigned to Value: - // - // *RuntimeEvent_DatabaseRuntimeEvent - // *RuntimeEvent_ModuleRuntimeEvent - // *RuntimeEvent_TopicRuntimeEvent - // *RuntimeEvent_VerbRuntimeEvent - Value isRuntimeEvent_Value `protobuf_oneof:"value"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *RuntimeEvent) Reset() { - *x = RuntimeEvent{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[67] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *RuntimeEvent) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RuntimeEvent) ProtoMessage() {} - -func (x *RuntimeEvent) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[67] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use RuntimeEvent.ProtoReflect.Descriptor instead. -func (*RuntimeEvent) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{67} -} - -func (x *RuntimeEvent) GetValue() isRuntimeEvent_Value { - if x != nil { - return x.Value - } - return nil -} - -func (x *RuntimeEvent) GetDatabaseRuntimeEvent() *DatabaseRuntimeEvent { - if x != nil { - if x, ok := x.Value.(*RuntimeEvent_DatabaseRuntimeEvent); ok { - return x.DatabaseRuntimeEvent - } - } - return nil -} - -func (x *RuntimeEvent) GetModuleRuntimeEvent() *ModuleRuntimeEvent { - if x != nil { - if x, ok := x.Value.(*RuntimeEvent_ModuleRuntimeEvent); ok { - return x.ModuleRuntimeEvent - } - } - return nil -} - -func (x *RuntimeEvent) GetTopicRuntimeEvent() *TopicRuntimeEvent { - if x != nil { - if x, ok := x.Value.(*RuntimeEvent_TopicRuntimeEvent); ok { - return x.TopicRuntimeEvent - } - } - return nil -} - -func (x *RuntimeEvent) GetVerbRuntimeEvent() *VerbRuntimeEvent { - if x != nil { - if x, ok := x.Value.(*RuntimeEvent_VerbRuntimeEvent); ok { - return x.VerbRuntimeEvent - } - } - return nil -} - -type isRuntimeEvent_Value interface { - isRuntimeEvent_Value() -} - -type RuntimeEvent_DatabaseRuntimeEvent struct { - DatabaseRuntimeEvent *DatabaseRuntimeEvent `protobuf:"bytes,8,opt,name=database_runtime_event,json=databaseRuntimeEvent,proto3,oneof"` -} - -type RuntimeEvent_ModuleRuntimeEvent struct { - ModuleRuntimeEvent *ModuleRuntimeEvent `protobuf:"bytes,9,opt,name=module_runtime_event,json=moduleRuntimeEvent,proto3,oneof"` -} - -type RuntimeEvent_TopicRuntimeEvent struct { - TopicRuntimeEvent *TopicRuntimeEvent `protobuf:"bytes,7,opt,name=topic_runtime_event,json=topicRuntimeEvent,proto3,oneof"` -} - -type RuntimeEvent_VerbRuntimeEvent struct { - VerbRuntimeEvent *VerbRuntimeEvent `protobuf:"bytes,6,opt,name=verb_runtime_event,json=verbRuntimeEvent,proto3,oneof"` -} - -func (*RuntimeEvent_DatabaseRuntimeEvent) isRuntimeEvent_Value() {} - -func (*RuntimeEvent_ModuleRuntimeEvent) isRuntimeEvent_Value() {} - -func (*RuntimeEvent_TopicRuntimeEvent) isRuntimeEvent_Value() {} - -func (*RuntimeEvent_VerbRuntimeEvent) isRuntimeEvent_Value() {} - type Schema struct { state protoimpl.MessageState `protogen:"open.v1"` Pos *Position `protobuf:"bytes,1,opt,name=pos,proto3,oneof" json:"pos,omitempty"` @@ -5113,7 +4539,7 @@ type Schema struct { func (x *Schema) Reset() { *x = Schema{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[68] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5125,7 +4551,7 @@ func (x *Schema) String() string { func (*Schema) ProtoMessage() {} func (x *Schema) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[68] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[62] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5138,7 +4564,7 @@ func (x *Schema) ProtoReflect() protoreflect.Message { // Deprecated: Use Schema.ProtoReflect.Descriptor instead. func (*Schema) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{68} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{62} } func (x *Schema) GetPos() *Position { @@ -5157,17 +4583,17 @@ func (x *Schema) GetModules() []*Module { // SchemaState is the schema service state as persisted in Raft type SchemaState struct { - state protoimpl.MessageState `protogen:"open.v1"` - Modules []*Module `protobuf:"bytes,1,rep,name=modules,proto3" json:"modules,omitempty"` - Changesets []*Changeset `protobuf:"bytes,2,rep,name=changesets,proto3" json:"changesets,omitempty"` - RuntimeEvents []*RuntimeEvent `protobuf:"bytes,3,rep,name=runtime_events,json=runtimeEvents,proto3" json:"runtime_events,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + Modules []*Module `protobuf:"bytes,1,rep,name=modules,proto3" json:"modules,omitempty"` + Changesets []*Changeset `protobuf:"bytes,2,rep,name=changesets,proto3" json:"changesets,omitempty"` + RuntimeEvents []*DeploymentRuntimeEvent `protobuf:"bytes,3,rep,name=runtime_events,json=runtimeEvents,proto3" json:"runtime_events,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SchemaState) Reset() { *x = SchemaState{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[69] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5179,7 +4605,7 @@ func (x *SchemaState) String() string { func (*SchemaState) ProtoMessage() {} func (x *SchemaState) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[69] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[63] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5192,7 +4618,7 @@ func (x *SchemaState) ProtoReflect() protoreflect.Message { // Deprecated: Use SchemaState.ProtoReflect.Descriptor instead. func (*SchemaState) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{69} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{63} } func (x *SchemaState) GetModules() []*Module { @@ -5209,7 +4635,7 @@ func (x *SchemaState) GetChangesets() []*Changeset { return nil } -func (x *SchemaState) GetRuntimeEvents() []*RuntimeEvent { +func (x *SchemaState) GetRuntimeEvents() []*DeploymentRuntimeEvent { if x != nil { return x.RuntimeEvents } @@ -5228,7 +4654,7 @@ type Secret struct { func (x *Secret) Reset() { *x = Secret{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[70] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5240,7 +4666,7 @@ func (x *Secret) String() string { func (*Secret) ProtoMessage() {} func (x *Secret) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[70] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[64] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5253,7 +4679,7 @@ func (x *Secret) ProtoReflect() protoreflect.Message { // Deprecated: Use Secret.ProtoReflect.Descriptor instead. func (*Secret) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{70} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{64} } func (x *Secret) GetPos() *Position { @@ -5293,7 +4719,7 @@ type String struct { func (x *String) Reset() { *x = String{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[71] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5305,7 +4731,7 @@ func (x *String) String() string { func (*String) ProtoMessage() {} func (x *String) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[71] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[65] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5318,7 +4744,7 @@ func (x *String) ProtoReflect() protoreflect.Message { // Deprecated: Use String.ProtoReflect.Descriptor instead. func (*String) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{71} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{65} } func (x *String) GetPos() *Position { @@ -5338,7 +4764,7 @@ type StringValue struct { func (x *StringValue) Reset() { *x = StringValue{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[72] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5350,7 +4776,7 @@ func (x *StringValue) String() string { func (*StringValue) ProtoMessage() {} func (x *StringValue) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[72] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[66] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5363,7 +4789,7 @@ func (x *StringValue) ProtoReflect() protoreflect.Message { // Deprecated: Use StringValue.ProtoReflect.Descriptor instead. func (*StringValue) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{72} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{66} } func (x *StringValue) GetPos() *Position { @@ -5389,7 +4815,7 @@ type Time struct { func (x *Time) Reset() { *x = Time{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[73] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5401,7 +4827,7 @@ func (x *Time) String() string { func (*Time) ProtoMessage() {} func (x *Time) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[73] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[67] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5414,7 +4840,7 @@ func (x *Time) ProtoReflect() protoreflect.Message { // Deprecated: Use Time.ProtoReflect.Descriptor instead. func (*Time) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{73} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{67} } func (x *Time) GetPos() *Position { @@ -5439,7 +4865,7 @@ type Topic struct { func (x *Topic) Reset() { *x = Topic{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[74] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5451,7 +4877,7 @@ func (x *Topic) String() string { func (*Topic) ProtoMessage() {} func (x *Topic) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[74] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[68] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5464,7 +4890,7 @@ func (x *Topic) ProtoReflect() protoreflect.Message { // Deprecated: Use Topic.ProtoReflect.Descriptor instead. func (*Topic) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{74} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{68} } func (x *Topic) GetPos() *Position { @@ -5526,7 +4952,7 @@ type TopicRuntime struct { func (x *TopicRuntime) Reset() { *x = TopicRuntime{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[75] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5538,7 +4964,7 @@ func (x *TopicRuntime) String() string { func (*TopicRuntime) ProtoMessage() {} func (x *TopicRuntime) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[75] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[69] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5551,7 +4977,7 @@ func (x *TopicRuntime) ProtoReflect() protoreflect.Message { // Deprecated: Use TopicRuntime.ProtoReflect.Descriptor instead. func (*TopicRuntime) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{75} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{69} } func (x *TopicRuntime) GetKafkaBrokers() []string { @@ -5568,99 +4994,31 @@ func (x *TopicRuntime) GetTopicId() string { return "" } -type TopicRuntimeEvent struct { - state protoimpl.MessageState `protogen:"open.v1"` - Deployment string `protobuf:"bytes,1,opt,name=deployment,proto3" json:"deployment,omitempty"` - Changeset string `protobuf:"bytes,2,opt,name=changeset,proto3" json:"changeset,omitempty"` - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - Payload *TopicRuntime `protobuf:"bytes,4,opt,name=payload,proto3" json:"payload,omitempty"` +// Type represents a Type Node in the schema grammar. +type Type struct { + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Value: + // + // *Type_Any + // *Type_Array + // *Type_Bool + // *Type_Bytes + // *Type_Float + // *Type_Int + // *Type_Map + // *Type_Optional + // *Type_Ref + // *Type_String_ + // *Type_Time + // *Type_Unit + Value isType_Value `protobuf_oneof:"value"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } -func (x *TopicRuntimeEvent) Reset() { - *x = TopicRuntimeEvent{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[76] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *TopicRuntimeEvent) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*TopicRuntimeEvent) ProtoMessage() {} - -func (x *TopicRuntimeEvent) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[76] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use TopicRuntimeEvent.ProtoReflect.Descriptor instead. -func (*TopicRuntimeEvent) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{76} -} - -func (x *TopicRuntimeEvent) GetDeployment() string { - if x != nil { - return x.Deployment - } - return "" -} - -func (x *TopicRuntimeEvent) GetChangeset() string { - if x != nil { - return x.Changeset - } - return "" -} - -func (x *TopicRuntimeEvent) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *TopicRuntimeEvent) GetPayload() *TopicRuntime { - if x != nil { - return x.Payload - } - return nil -} - -// Type represents a Type Node in the schema grammar. -type Type struct { - state protoimpl.MessageState `protogen:"open.v1"` - // Types that are valid to be assigned to Value: - // - // *Type_Any - // *Type_Array - // *Type_Bool - // *Type_Bytes - // *Type_Float - // *Type_Int - // *Type_Map - // *Type_Optional - // *Type_Ref - // *Type_String_ - // *Type_Time - // *Type_Unit - Value isType_Value `protobuf_oneof:"value"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *Type) Reset() { - *x = Type{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[77] +func (x *Type) Reset() { + *x = Type{} + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5672,7 +5030,7 @@ func (x *Type) String() string { func (*Type) ProtoMessage() {} func (x *Type) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[77] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[70] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5685,7 +5043,7 @@ func (x *Type) ProtoReflect() protoreflect.Message { // Deprecated: Use Type.ProtoReflect.Descriptor instead. func (*Type) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{77} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{70} } func (x *Type) GetValue() isType_Value { @@ -5893,7 +5251,7 @@ type TypeAlias struct { func (x *TypeAlias) Reset() { *x = TypeAlias{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[78] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5905,7 +5263,7 @@ func (x *TypeAlias) String() string { func (*TypeAlias) ProtoMessage() {} func (x *TypeAlias) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[78] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[71] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5918,7 +5276,7 @@ func (x *TypeAlias) ProtoReflect() protoreflect.Message { // Deprecated: Use TypeAlias.ProtoReflect.Descriptor instead. func (*TypeAlias) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{78} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{71} } func (x *TypeAlias) GetPos() *Position { @@ -5973,7 +5331,7 @@ type TypeParameter struct { func (x *TypeParameter) Reset() { *x = TypeParameter{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[79] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5985,7 +5343,7 @@ func (x *TypeParameter) String() string { func (*TypeParameter) ProtoMessage() {} func (x *TypeParameter) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[79] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[72] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5998,7 +5356,7 @@ func (x *TypeParameter) ProtoReflect() protoreflect.Message { // Deprecated: Use TypeParameter.ProtoReflect.Descriptor instead. func (*TypeParameter) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{79} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{72} } func (x *TypeParameter) GetPos() *Position { @@ -6025,7 +5383,7 @@ type TypeValue struct { func (x *TypeValue) Reset() { *x = TypeValue{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[80] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6037,7 +5395,7 @@ func (x *TypeValue) String() string { func (*TypeValue) ProtoMessage() {} func (x *TypeValue) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[80] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[73] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6050,7 +5408,7 @@ func (x *TypeValue) ProtoReflect() protoreflect.Message { // Deprecated: Use TypeValue.ProtoReflect.Descriptor instead. func (*TypeValue) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{80} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{73} } func (x *TypeValue) GetPos() *Position { @@ -6076,7 +5434,7 @@ type Unit struct { func (x *Unit) Reset() { *x = Unit{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[81] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6088,7 +5446,7 @@ func (x *Unit) String() string { func (*Unit) ProtoMessage() {} func (x *Unit) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[81] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[74] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6101,7 +5459,7 @@ func (x *Unit) ProtoReflect() protoreflect.Message { // Deprecated: Use Unit.ProtoReflect.Descriptor instead. func (*Unit) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{81} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{74} } func (x *Unit) GetPos() *Position { @@ -6126,7 +5484,7 @@ type Value struct { func (x *Value) Reset() { *x = Value{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[82] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6138,7 +5496,7 @@ func (x *Value) String() string { func (*Value) ProtoMessage() {} func (x *Value) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[82] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[75] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6151,7 +5509,7 @@ func (x *Value) ProtoReflect() protoreflect.Message { // Deprecated: Use Value.ProtoReflect.Descriptor instead. func (*Value) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{82} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{75} } func (x *Value) GetValue() isValue_Value { @@ -6226,7 +5584,7 @@ type Verb struct { func (x *Verb) Reset() { *x = Verb{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[83] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6238,7 +5596,7 @@ func (x *Verb) String() string { func (*Verb) ProtoMessage() {} func (x *Verb) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[83] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[76] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6251,7 +5609,7 @@ func (x *Verb) ProtoReflect() protoreflect.Message { // Deprecated: Use Verb.ProtoReflect.Descriptor instead. func (*Verb) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{83} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{76} } func (x *Verb) GetPos() *Position { @@ -6319,7 +5677,7 @@ type VerbRuntime struct { func (x *VerbRuntime) Reset() { *x = VerbRuntime{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[84] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6331,7 +5689,7 @@ func (x *VerbRuntime) String() string { func (*VerbRuntime) ProtoMessage() {} func (x *VerbRuntime) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[84] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[77] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6344,7 +5702,7 @@ func (x *VerbRuntime) ProtoReflect() protoreflect.Message { // Deprecated: Use VerbRuntime.ProtoReflect.Descriptor instead. func (*VerbRuntime) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{84} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{77} } func (x *VerbRuntime) GetSubscription() *VerbRuntimeSubscription { @@ -6354,74 +5712,6 @@ func (x *VerbRuntime) GetSubscription() *VerbRuntimeSubscription { return nil } -type VerbRuntimeEvent struct { - state protoimpl.MessageState `protogen:"open.v1"` - Deployment string `protobuf:"bytes,1,opt,name=deployment,proto3" json:"deployment,omitempty"` - Changeset string `protobuf:"bytes,2,opt,name=changeset,proto3" json:"changeset,omitempty"` - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - Subscription *VerbRuntimeSubscription `protobuf:"bytes,4,opt,name=subscription,proto3,oneof" json:"subscription,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *VerbRuntimeEvent) Reset() { - *x = VerbRuntimeEvent{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[85] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *VerbRuntimeEvent) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*VerbRuntimeEvent) ProtoMessage() {} - -func (x *VerbRuntimeEvent) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[85] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use VerbRuntimeEvent.ProtoReflect.Descriptor instead. -func (*VerbRuntimeEvent) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{85} -} - -func (x *VerbRuntimeEvent) GetDeployment() string { - if x != nil { - return x.Deployment - } - return "" -} - -func (x *VerbRuntimeEvent) GetChangeset() string { - if x != nil { - return x.Changeset - } - return "" -} - -func (x *VerbRuntimeEvent) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *VerbRuntimeEvent) GetSubscription() *VerbRuntimeSubscription { - if x != nil { - return x.Subscription - } - return nil -} - type VerbRuntimeSubscription struct { state protoimpl.MessageState `protogen:"open.v1"` KafkaBrokers []string `protobuf:"bytes,1,rep,name=kafka_brokers,json=kafkaBrokers,proto3" json:"kafka_brokers,omitempty"` @@ -6431,7 +5721,7 @@ type VerbRuntimeSubscription struct { func (x *VerbRuntimeSubscription) Reset() { *x = VerbRuntimeSubscription{} - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[86] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6443,7 +5733,7 @@ func (x *VerbRuntimeSubscription) String() string { func (*VerbRuntimeSubscription) ProtoMessage() {} func (x *VerbRuntimeSubscription) ProtoReflect() protoreflect.Message { - mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[86] + mi := &file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[78] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6456,7 +5746,7 @@ func (x *VerbRuntimeSubscription) ProtoReflect() protoreflect.Message { // Deprecated: Use VerbRuntimeSubscription.ProtoReflect.Descriptor instead. func (*VerbRuntimeSubscription) Descriptor() ([]byte, []int) { - return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{86} + return file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP(), []int{78} } func (x *VerbRuntimeSubscription) GetKafkaBrokers() []string { @@ -6643,1018 +5933,856 @@ var file_xyz_block_ftl_schema_v1_schema_proto_rawDesc = []byte{ 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x52, 0x05, 0x77, 0x72, 0x69, 0x74, 0x65, 0x22, 0xbb, 0x01, 0x0a, 0x14, - 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, - 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, - 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, - 0x65, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x55, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, - 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x63, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xe2, 0x03, 0x0a, 0x04, 0x44, 0x65, - 0x63, 0x6c, 0x12, 0x39, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x33, 0x0a, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, - 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x12, 0x3f, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x48, 0x00, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, - 0x61, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x04, 0x65, 0x6e, 0x75, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, - 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x75, 0x6d, - 0x48, 0x00, 0x52, 0x04, 0x65, 0x6e, 0x75, 0x6d, 0x12, 0x39, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, - 0x76, 0x31, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x48, 0x00, 0x52, 0x06, 0x73, 0x65, 0x63, - 0x72, 0x65, 0x74, 0x12, 0x36, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x70, - 0x69, 0x63, 0x48, 0x00, 0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x43, 0x0a, 0x0a, 0x74, - 0x79, 0x70, 0x65, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x22, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x41, 0x6c, - 0x69, 0x61, 0x73, 0x48, 0x00, 0x52, 0x09, 0x74, 0x79, 0x70, 0x65, 0x41, 0x6c, 0x69, 0x61, 0x73, - 0x12, 0x33, 0x0a, 0x04, 0x76, 0x65, 0x72, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, - 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x62, 0x48, 0x00, 0x52, - 0x04, 0x76, 0x65, 0x72, 0x62, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xac, - 0x01, 0x0a, 0x18, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, - 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3d, 0x0a, - 0x0c, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 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, - 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x21, 0x0a, 0x0c, - 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x12, - 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x22, 0x81, 0x01, - 0x0a, 0x16, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x37, 0x0a, 0x06, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x79, 0x7a, - 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x06, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, - 0x74, 0x22, 0x73, 0x0a, 0x1a, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, - 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, - 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, - 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, - 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x22, 0x6c, 0x0a, 0x1e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, - 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x72, 0x65, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x73, 0x65, 0x74, 0x22, 0x87, 0x01, 0x0a, 0x1c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, - 0x65, 0x6e, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x37, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x22, 0x93, - 0x02, 0x0a, 0x04, 0x45, 0x6e, 0x75, 0x6d, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, - 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, - 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, - 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x04, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x48, 0x01, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x88, 0x01, - 0x01, 0x12, 0x40, 0x0a, 0x08, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x06, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, - 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, - 0x75, 0x6d, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x52, 0x08, 0x76, 0x61, 0x72, 0x69, 0x61, - 0x6e, 0x74, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x22, 0xb5, 0x01, 0x0a, 0x0b, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x72, - 0x69, 0x61, 0x6e, 0x74, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, - 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1a, - 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x34, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, - 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xf9, 0x0c, 0x0a, - 0x05, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x6e, 0x0a, 0x19, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x73, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2e, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6d, - 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x17, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, - 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x68, 0x0a, 0x17, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x73, 0x65, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x73, 0x65, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x12, 0x68, 0x0a, 0x17, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x64, 0x72, - 0x61, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x2e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, - 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x73, 0x65, 0x74, 0x44, 0x72, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x48, 0x00, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x44, 0x72, - 0x61, 0x69, 0x6e, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x65, 0x0a, 0x16, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, 0x79, 0x7a, - 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x46, 0x61, - 0x69, 0x6c, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x14, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x12, 0x6e, 0x0a, 0x19, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x66, - 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x0e, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x63, 0x74, 0x6f, 0x72, 0x52, 0x05, 0x77, 0x72, 0x69, 0x74, 0x65, 0x22, 0xe2, 0x03, 0x0a, 0x04, + 0x44, 0x65, 0x63, 0x6c, 0x12, 0x39, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, - 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x17, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x73, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x12, 0x6b, 0x0a, 0x18, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x70, - 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, - 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x64, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x16, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, - 0x74, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x65, - 0x0a, 0x16, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, - 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, - 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, - 0x14, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x71, 0x0a, 0x1a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, - 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x78, 0x79, 0x7a, 0x2e, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x18, - 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, - 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x6b, 0x0a, 0x18, 0x64, 0x65, 0x70, 0x6c, - 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x78, 0x79, 0x7a, - 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x16, 0x64, - 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x77, 0x0a, 0x1c, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, - 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x5f, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x78, 0x79, - 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, - 0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x48, 0x00, 0x52, 0x1a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, - 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x84, - 0x01, 0x0a, 0x21, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x78, 0x79, 0x7a, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x33, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, + 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x12, 0x3f, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, + 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x48, 0x00, 0x52, 0x08, 0x64, 0x61, 0x74, + 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x04, 0x65, 0x6e, 0x75, 0x6d, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, + 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, + 0x75, 0x6d, 0x48, 0x00, 0x52, 0x04, 0x65, 0x6e, 0x75, 0x6d, 0x12, 0x39, 0x0a, 0x06, 0x73, 0x65, + 0x63, 0x72, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x7e, 0x0a, 0x1f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, - 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, + 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x48, 0x00, 0x52, 0x06, 0x73, + 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x36, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, + 0x6f, 0x70, 0x69, 0x63, 0x48, 0x00, 0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x43, 0x0a, + 0x0a, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x22, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, + 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, + 0x41, 0x6c, 0x69, 0x61, 0x73, 0x48, 0x00, 0x52, 0x09, 0x74, 0x79, 0x70, 0x65, 0x41, 0x6c, 0x69, + 0x61, 0x73, 0x12, 0x33, 0x0a, 0x04, 0x76, 0x65, 0x72, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, + 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x62, 0x48, + 0x00, 0x52, 0x04, 0x76, 0x65, 0x72, 0x62, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x22, 0x81, 0x01, 0x0a, 0x16, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x37, 0x0a, + 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, + 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x06, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x73, 0x65, 0x74, 0x22, 0x79, 0x0a, 0x16, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x41, + 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x27, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, + 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, + 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x22, + 0x93, 0x02, 0x0a, 0x04, 0x45, 0x6e, 0x75, 0x6d, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, + 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, + 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, + 0x0a, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, + 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, + 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x48, 0x01, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x88, + 0x01, 0x01, 0x12, 0x40, 0x0a, 0x08, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x06, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x45, + 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x52, 0x08, 0x76, 0x61, 0x72, 0x69, + 0x61, 0x6e, 0x74, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x42, 0x07, 0x0a, 0x05, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0xb5, 0x01, 0x0a, 0x0b, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, + 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, + 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, + 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x34, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, - 0x65, 0x6e, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1c, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, - 0x65, 0x6e, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x5f, 0x0a, 0x14, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, - 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, - 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, - 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x48, 0x00, 0x52, 0x12, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, - 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x5c, 0x0a, 0x13, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, - 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, - 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, - 0x70, 0x69, 0x63, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, - 0x00, 0x52, 0x11, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x12, 0x59, 0x0a, 0x12, 0x76, 0x65, 0x72, 0x62, 0x5f, 0x72, 0x75, 0x6e, - 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x29, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, - 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x62, 0x52, - 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x10, 0x76, - 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, - 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xeb, 0x01, 0x0a, 0x05, 0x46, 0x69, 0x65, - 0x6c, 0x64, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x04, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xf2, 0x06, + 0x0a, 0x05, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x6e, 0x0a, 0x19, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, - 0x3d, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, - 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x06, - 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x49, 0x0a, 0x05, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, - 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, - 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, - 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, - 0x73, 0x22, 0xe7, 0x01, 0x0a, 0x14, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, - 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x5f, 0x0a, 0x14, 0x69, 0x6e, - 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x6c, 0x69, 0x74, 0x65, 0x72, - 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, + 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x17, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, + 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x68, 0x0a, 0x17, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, - 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, 0x68, 0x4c, 0x69, - 0x74, 0x65, 0x72, 0x61, 0x6c, 0x48, 0x00, 0x52, 0x12, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x50, 0x61, 0x74, 0x68, 0x4c, 0x69, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x65, 0x0a, 0x16, 0x69, - 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, 0x79, + 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x73, 0x65, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x12, 0x68, 0x0a, 0x17, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x64, + 0x72, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, + 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x44, 0x72, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x48, 0x00, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x44, + 0x72, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x65, 0x0a, 0x16, 0x63, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, - 0x68, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x14, 0x69, 0x6e, - 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, 0x68, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, - 0x65, 0x72, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x6a, 0x0a, 0x12, 0x49, - 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, 0x68, 0x4c, 0x69, 0x74, 0x65, 0x72, 0x61, - 0x6c, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, + 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x46, + 0x61, 0x69, 0x6c, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x14, 0x63, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x12, 0x6e, 0x0a, 0x19, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x5f, + 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, + 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x17, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x73, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x12, 0x6b, 0x0a, 0x18, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x5f, + 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x43, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x64, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x16, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, + 0x65, 0x74, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, + 0x6b, 0x0a, 0x18, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, + 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, + 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x48, 0x00, 0x52, 0x16, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x6b, 0x0a, 0x18, + 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, + 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x74, - 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x42, - 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x6c, 0x0a, 0x14, 0x49, 0x6e, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x50, 0x61, 0x74, 0x68, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, - 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, - 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, - 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x06, 0x0a, - 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x47, 0x0a, 0x03, 0x49, 0x6e, 0x74, 0x12, 0x38, 0x0a, 0x03, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, + 0x00, 0x52, 0x16, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x22, 0xeb, 0x01, 0x0a, 0x05, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, - 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x62, - 0x0a, 0x08, 0x49, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, - 0x73, 0x88, 0x01, 0x01, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, - 0x6f, 0x73, 0x22, 0xad, 0x01, 0x0a, 0x03, 0x4d, 0x61, 0x70, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, - 0x73, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, - 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, - 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, + 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, - 0x6f, 0x73, 0x22, 0xe5, 0x09, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, - 0x3e, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x48, 0x00, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, - 0x47, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x65, 0x66, 0x61, 0x63, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x29, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, - 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x41, 0x72, 0x74, 0x65, 0x66, 0x61, 0x63, 0x74, 0x48, 0x00, 0x52, 0x08, - 0x61, 0x72, 0x74, 0x65, 0x66, 0x61, 0x63, 0x74, 0x12, 0x3e, 0x0a, 0x05, 0x63, 0x61, 0x6c, 0x6c, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x48, - 0x00, 0x52, 0x05, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x12, 0x41, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x45, 0x0a, 0x08, 0x63, - 0x72, 0x6f, 0x6e, 0x5f, 0x6a, 0x6f, 0x62, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, - 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x43, 0x72, 0x6f, 0x6e, 0x4a, 0x6f, 0x62, 0x48, 0x00, 0x52, 0x07, 0x63, 0x72, 0x6f, 0x6e, 0x4a, - 0x6f, 0x62, 0x12, 0x4a, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, + 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x3d, 0x0a, 0x08, 0x6d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, + 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, + 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, + 0x22, 0x49, 0x0a, 0x05, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, + 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, + 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xe7, 0x01, 0x0a, 0x14, + 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x5f, 0x0a, 0x14, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, + 0x70, 0x61, 0x74, 0x68, 0x5f, 0x6c, 0x69, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, + 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, 0x68, 0x4c, 0x69, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x48, + 0x00, 0x52, 0x12, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, 0x68, 0x4c, 0x69, + 0x74, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x65, 0x0a, 0x16, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, + 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, - 0x73, 0x48, 0x00, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0x47, - 0x0a, 0x08, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x29, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, - 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x08, 0x65, - 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x44, 0x0a, 0x07, 0x69, 0x6e, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, 0x68, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x65, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x14, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, + 0x61, 0x74, 0x68, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x42, 0x07, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x6a, 0x0a, 0x12, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, + 0x50, 0x61, 0x74, 0x68, 0x4c, 0x69, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x38, 0x0a, 0x03, 0x70, + 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, + 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, + 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, + 0x73, 0x22, 0x6c, 0x0a, 0x14, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, 0x68, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, + 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, + 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, + 0x47, 0x0a, 0x03, 0x49, 0x6e, 0x74, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, + 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, + 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, + 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x62, 0x0a, 0x08, 0x49, 0x6e, 0x74, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, + 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xad, 0x01, 0x0a, + 0x03, 0x4d, 0x61, 0x70, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, + 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2f, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, + 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x33, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, + 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xe5, 0x09, 0x0a, + 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3e, 0x0a, 0x05, 0x61, 0x6c, 0x69, + 0x61, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x49, 0x6e, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x48, 0x00, 0x52, 0x07, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x4d, 0x0a, - 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x2b, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, + 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6c, 0x69, 0x61, 0x73, + 0x48, 0x00, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x47, 0x0a, 0x08, 0x61, 0x72, 0x74, + 0x65, 0x66, 0x61, 0x63, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x78, 0x79, + 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x41, 0x72, + 0x74, 0x65, 0x66, 0x61, 0x63, 0x74, 0x48, 0x00, 0x52, 0x08, 0x61, 0x72, 0x74, 0x65, 0x66, 0x61, + 0x63, 0x74, 0x12, 0x3e, 0x0a, 0x05, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x26, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, - 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4a, 0x0a, 0x09, - 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x64, 0x61, 0x74, 0x61, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x48, 0x00, 0x52, 0x05, 0x63, 0x61, 0x6c, + 0x6c, 0x73, 0x12, 0x41, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, + 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x06, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x45, 0x0a, 0x08, 0x63, 0x72, 0x6f, 0x6e, 0x5f, 0x6a, 0x6f, + 0x62, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x43, 0x72, 0x6f, 0x6e, 0x4a, 0x6f, + 0x62, 0x48, 0x00, 0x52, 0x07, 0x63, 0x72, 0x6f, 0x6e, 0x4a, 0x6f, 0x62, 0x12, 0x4a, 0x0a, 0x09, + 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x48, 0x00, 0x52, 0x09, 0x70, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x12, 0x3e, 0x0a, 0x05, 0x72, 0x65, 0x74, 0x72, - 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x74, 0x72, 0x79, 0x48, - 0x00, 0x52, 0x05, 0x72, 0x65, 0x74, 0x72, 0x79, 0x12, 0x4b, 0x0a, 0x0a, 0x73, 0x71, 0x6c, 0x5f, - 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, - 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, - 0x51, 0x4c, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x48, 0x00, 0x52, 0x09, 0x73, 0x71, 0x6c, 0x43, - 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x54, 0x0a, 0x0d, 0x73, 0x71, 0x6c, 0x5f, 0x6d, 0x69, 0x67, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, - 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, - 0x51, 0x4c, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0c, 0x73, - 0x71, 0x6c, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x09, 0x73, - 0x71, 0x6c, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, - 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x53, 0x51, 0x4c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x48, 0x00, 0x52, 0x08, 0x73, 0x71, 0x6c, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x44, 0x0a, 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, + 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x48, 0x00, 0x52, 0x09, 0x64, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0x47, 0x0a, 0x08, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x78, 0x79, 0x7a, + 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x63, + 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x08, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, + 0x67, 0x12, 0x44, 0x0a, 0x07, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, + 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x48, 0x00, 0x52, 0x07, + 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x4d, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x78, 0x79, + 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x50, 0x61, + 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4a, 0x0a, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x79, 0x7a, 0x2e, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x65, 0x72, 0x48, 0x00, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x65, 0x72, 0x12, 0x3e, 0x0a, 0x05, 0x72, 0x65, 0x74, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x26, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, + 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x74, 0x72, 0x79, 0x48, 0x00, 0x52, 0x05, 0x72, 0x65, 0x74, + 0x72, 0x79, 0x12, 0x4b, 0x0a, 0x0a, 0x73, 0x71, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, + 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, - 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, - 0x48, 0x00, 0x52, 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x12, 0x4d, 0x0a, 0x0a, 0x73, - 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2b, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0a, - 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, 0x45, 0x0a, 0x08, 0x74, 0x79, - 0x70, 0x65, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x78, - 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x54, - 0x79, 0x70, 0x65, 0x4d, 0x61, 0x70, 0x48, 0x00, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, 0x4d, 0x61, - 0x70, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x0d, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x38, 0x0a, 0x03, - 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, + 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x51, 0x4c, 0x43, 0x6f, 0x6c, 0x75, + 0x6d, 0x6e, 0x48, 0x00, 0x52, 0x09, 0x73, 0x71, 0x6c, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, + 0x54, 0x0a, 0x0d, 0x73, 0x71, 0x6c, 0x5f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, + 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x51, 0x4c, 0x4d, 0x69, 0x67, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0c, 0x73, 0x71, 0x6c, 0x4d, 0x69, 0x67, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x09, 0x73, 0x71, 0x6c, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, + 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x51, 0x4c, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x48, 0x00, 0x52, 0x08, 0x73, 0x71, 0x6c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, + 0x44, 0x0a, 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x28, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, + 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x48, 0x00, 0x52, 0x07, 0x73, 0x65, + 0x63, 0x72, 0x65, 0x74, 0x73, 0x12, 0x4d, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, + 0x62, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, - 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x41, - 0x6c, 0x69, 0x61, 0x73, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x14, - 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, - 0x6c, 0x69, 0x61, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xa0, 0x01, 0x0a, - 0x10, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x41, 0x72, 0x74, 0x65, 0x66, 0x61, 0x63, - 0x74, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, + 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, + 0x69, 0x62, 0x65, 0x72, 0x12, 0x45, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6d, 0x61, 0x70, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, + 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x4d, 0x61, 0x70, + 0x48, 0x00, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, 0x4d, 0x61, 0x70, 0x42, 0x07, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, + 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, + 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, + 0x12, 0x36, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x70, - 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, - 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, - 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x78, 0x65, - 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, - 0x85, 0x01, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x43, 0x61, 0x6c, 0x6c, - 0x73, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x4b, 0x69, + 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, + 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x06, + 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xa0, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x41, 0x72, 0x74, 0x65, 0x66, 0x61, 0x63, 0x74, 0x12, 0x38, 0x0a, 0x03, 0x70, + 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, + 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, + 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, + 0x65, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, + 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x85, 0x01, 0x0a, 0x0d, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x12, 0x38, 0x0a, 0x03, 0x70, + 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, + 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, + 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x05, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, + 0x65, 0x66, 0x52, 0x05, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, + 0x73, 0x22, 0x88, 0x01, 0x0a, 0x0e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, + 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x34, + 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x05, 0x63, - 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, - 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x52, 0x05, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x42, - 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x0e, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x52, 0x06, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x67, 0x0a, 0x0f, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x43, 0x72, 0x6f, 0x6e, 0x4a, 0x6f, 0x62, 0x12, + 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, + 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, + 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x72, 0x6f, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x72, 0x6f, 0x6e, 0x42, 0x06, 0x0a, + 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x89, 0x01, 0x0a, 0x11, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x03, 0x70, + 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, + 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, + 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x05, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, + 0x65, 0x66, 0x52, 0x05, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, + 0x73, 0x22, 0x82, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, + 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, + 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, + 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, + 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x6e, 0x69, 0x65, 0x6e, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6c, 0x65, 0x6e, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x06, + 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xc2, 0x01, 0x0a, 0x0f, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, - 0x73, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, - 0x65, 0x66, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, - 0x6f, 0x73, 0x22, 0x67, 0x0a, 0x0f, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x43, 0x72, - 0x6f, 0x6e, 0x4a, 0x6f, 0x62, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, - 0x12, 0x0a, 0x04, 0x63, 0x72, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, - 0x72, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x89, 0x01, 0x0a, 0x11, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, + 0x73, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, + 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, + 0x12, 0x41, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, + 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, + 0x50, 0x61, 0x74, 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x70, + 0x61, 0x74, 0x68, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x76, 0x0a, 0x12, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x05, 0x63, - 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, - 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x52, 0x05, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x42, - 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x82, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x38, 0x0a, 0x03, - 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, - 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, - 0x6e, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6c, 0x65, 0x6e, - 0x69, 0x65, 0x6e, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xc2, 0x01, 0x0a, - 0x0f, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, - 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, - 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x41, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x49, - 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, - 0x65, 0x6e, 0x74, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, - 0x73, 0x22, 0x76, 0x0a, 0x12, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, - 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, - 0x01, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x8b, 0x01, 0x0a, 0x11, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x12, - 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, - 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, - 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x06, 0x74, 0x6f, 0x70, - 0x69, 0x63, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x52, 0x06, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x42, - 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xfb, 0x01, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x74, 0x72, 0x79, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, + 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, + 0x70, 0x6f, 0x73, 0x22, 0x8b, 0x01, 0x0a, 0x11, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, - 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x03, 0x48, 0x01, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1f, - 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x69, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x12, - 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x42, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, - 0x12, 0x37, 0x0a, 0x05, 0x63, 0x61, 0x74, 0x63, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x48, 0x02, 0x52, - 0x05, 0x63, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, - 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, - 0x63, 0x61, 0x74, 0x63, 0x68, 0x22, 0x7f, 0x0a, 0x11, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x53, 0x51, 0x4c, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, - 0x73, 0x88, 0x01, 0x01, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x06, - 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x70, 0x0a, 0x14, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x53, 0x51, 0x4c, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x38, - 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, - 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, - 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, - 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, - 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x84, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x51, 0x4c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x38, 0x0a, - 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, - 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, - 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, - 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, - 0x64, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, - 0x8b, 0x01, 0x0a, 0x0f, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x73, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x06, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, + 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, + 0x66, 0x52, 0x06, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, + 0x73, 0x22, 0xfb, 0x01, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, + 0x74, 0x72, 0x79, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, - 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, - 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x52, 0x07, 0x73, 0x65, - 0x63, 0x72, 0x65, 0x74, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xf1, 0x01, - 0x0a, 0x12, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x62, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, + 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x48, 0x01, 0x52, 0x05, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x5f, + 0x62, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, + 0x69, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, + 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x6d, 0x61, 0x78, 0x42, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x12, 0x37, 0x0a, 0x05, 0x63, 0x61, + 0x74, 0x63, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x48, 0x02, 0x52, 0x05, 0x63, 0x61, 0x74, 0x63, 0x68, + 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x63, 0x61, 0x74, 0x63, 0x68, 0x22, + 0x7f, 0x0a, 0x11, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x51, 0x4c, 0x43, 0x6f, + 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x32, - 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, - 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x52, 0x05, 0x74, 0x6f, 0x70, - 0x69, 0x63, 0x12, 0x44, 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x52, 0x0a, 0x66, 0x72, - 0x6f, 0x6d, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x61, 0x64, - 0x5f, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, - 0x65, 0x61, 0x64, 0x4c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, - 0x73, 0x22, 0x8e, 0x01, 0x0a, 0x0f, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79, - 0x70, 0x65, 0x4d, 0x61, 0x70, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, - 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x61, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, - 0x6f, 0x73, 0x22, 0xcc, 0x02, 0x0a, 0x06, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x38, 0x0a, + 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x14, + 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, + 0x22, 0x70, 0x0a, 0x14, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x51, 0x4c, 0x4d, + 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, + 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, + 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, + 0x6f, 0x73, 0x22, 0x84, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, + 0x51, 0x4c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, + 0x01, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x8b, 0x01, 0x0a, 0x0f, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, - 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x69, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x69, 0x6e, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x3d, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, - 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x12, 0x33, 0x0a, 0x05, 0x64, 0x65, 0x63, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x63, 0x6c, 0x52, 0x05, - 0x64, 0x65, 0x63, 0x6c, 0x73, 0x12, 0x42, 0x0a, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x92, 0xf7, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, - 0x52, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, - 0x73, 0x22, 0xe5, 0x02, 0x0a, 0x0d, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, - 0x69, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x04, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, - 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, - 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04, 0x62, - 0x61, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x07, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, - 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x63, 0x61, 0x6c, - 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x88, 0x01, - 0x01, 0x12, 0x55, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x65, 0x70, - 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a, 0x06, 0x72, 0x75, 0x6e, 0x6e, - 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, - 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x48, 0x02, 0x52, 0x06, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, - 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x42, - 0x0d, 0x0a, 0x0b, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x09, - 0x0a, 0x07, 0x5f, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x22, 0xcf, 0x01, 0x0a, 0x11, 0x4d, 0x6f, - 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, - 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, - 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, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x13, 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x02, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, - 0x04, 0x61, 0x72, 0x63, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x04, 0x61, - 0x72, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, - 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x6f, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x61, 0x72, 0x63, - 0x68, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x90, 0x02, 0x0a, 0x17, - 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x65, 0x70, - 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65, 0x70, 0x6c, 0x6f, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x39, - 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 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, 0x42, 0x0a, 0x0c, 0x61, 0x63, 0x74, - 0x69, 0x76, 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, 0x48, 0x00, 0x52, 0x0b, 0x61, - 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, - 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x78, + 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x52, 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x42, + 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xf1, 0x01, 0x0a, 0x12, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, 0x38, + 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, + 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, + 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, + 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, + 0x31, 0x2e, 0x52, 0x65, 0x66, 0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x44, 0x0a, 0x0b, + 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x23, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, + 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x72, 0x6f, 0x6d, + 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x4f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x61, 0x64, 0x5f, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x65, 0x61, 0x64, 0x4c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x8e, 0x01, 0x0a, 0x0f, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x4d, 0x61, 0x70, 0x12, + 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, - 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x42, 0x0f, 0x0a, - 0x0d, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x22, 0xa8, - 0x03, 0x0a, 0x12, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x73, 0x65, 0x74, 0x12, 0x43, 0x0a, 0x04, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, - 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, - 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x61, 0x73, 0x65, 0x48, - 0x00, 0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x4c, 0x0a, 0x07, 0x73, 0x63, - 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, 0x79, + 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, + 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x75, 0x6e, 0x74, + 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xcc, 0x02, 0x0a, + 0x06, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, + 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, + 0x07, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x62, 0x75, 0x69, 0x6c, 0x74, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x08, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, + 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x33, 0x0a, 0x05, 0x64, 0x65, + 0x63, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x63, 0x6c, 0x52, 0x05, 0x64, 0x65, 0x63, 0x6c, 0x73, 0x12, + 0x42, 0x0a, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x92, 0xf7, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, + 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x07, 0x72, 0x75, 0x6e, 0x74, + 0x69, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xe5, 0x02, 0x0a, 0x0d, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x3e, 0x0a, + 0x04, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, - 0x69, 0x6d, 0x65, 0x53, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x48, 0x01, 0x52, 0x07, 0x73, 0x63, - 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x55, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x6c, - 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x78, - 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, - 0x74, 0x69, 0x6d, 0x65, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x02, - 0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, - 0x49, 0x0a, 0x06, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, + 0x69, 0x6d, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x12, 0x4c, 0x0a, + 0x07, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, + 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, + 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, + 0x07, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x55, 0x0a, 0x0a, 0x64, + 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, - 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x48, 0x03, 0x52, - 0x06, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x62, - 0x61, 0x73, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x42, - 0x0d, 0x0a, 0x0b, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x09, - 0x0a, 0x07, 0x5f, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x22, 0x31, 0x0a, 0x13, 0x4d, 0x6f, 0x64, + 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, + 0x74, 0x48, 0x01, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x88, + 0x01, 0x01, 0x12, 0x49, 0x0a, 0x06, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, + 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, - 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x39, 0x0a, 0x14, - 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x63, 0x61, - 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x52, - 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x22, 0x8d, 0x01, 0x0a, 0x08, 0x4f, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, - 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x36, - 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, - 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x48, 0x01, 0x52, 0x04, 0x74, - 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x42, 0x07, - 0x0a, 0x05, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x52, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x6c, - 0x69, 0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x06, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x22, 0xbb, 0x01, 0x0a, 0x03, - 0x52, 0x65, 0x66, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x48, 0x02, 0x52, 0x06, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, + 0x08, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x64, 0x65, + 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x75, 0x6e, + 0x6e, 0x65, 0x72, 0x22, 0xcf, 0x01, 0x0a, 0x11, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, + 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 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, 0x0a, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, + 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, + 0x67, 0x65, 0x12, 0x13, 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, + 0x52, 0x02, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x61, 0x72, 0x63, 0x68, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x04, 0x61, 0x72, 0x63, 0x68, 0x88, 0x01, 0x01, + 0x12, 0x19, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, + 0x02, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, + 0x6f, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x42, 0x08, 0x0a, 0x06, 0x5f, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x90, 0x02, 0x0a, 0x17, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, + 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, + 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x65, 0x70, 0x6c, 0x6f, + 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 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, 0x42, 0x0a, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x76, 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, 0x48, 0x00, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, + 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x61, 0x63, 0x74, 0x69, + 0x76, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x22, 0x31, 0x0a, 0x13, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x12, + 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x39, 0x0a, 0x14, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x63, 0x61, 0x6c, + 0x69, 0x6e, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x52, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x22, 0x8d, 0x01, 0x0a, 0x08, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, - 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, - 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x0f, 0x74, 0x79, 0x70, - 0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, - 0x65, 0x52, 0x0e, 0x74, 0x79, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, - 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xbd, 0x04, 0x0a, 0x07, 0x52, 0x75, - 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x55, 0x0a, 0x10, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x28, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, - 0x73, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x64, 0x61, 0x74, - 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x6e, 0x0a, 0x19, - 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x64, - 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, - 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, - 0x74, 0x48, 0x00, 0x52, 0x17, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, - 0x6d, 0x65, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x62, 0x0a, 0x15, - 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x72, - 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x79, + 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, - 0x69, 0x6d, 0x65, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x48, 0x00, 0x52, 0x13, 0x6d, 0x6f, 0x64, - 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, - 0x12, 0x65, 0x0a, 0x16, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, - 0x6d, 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, - 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, - 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x48, - 0x00, 0x52, 0x14, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, - 0x53, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x4c, 0x0a, 0x0d, 0x74, 0x6f, 0x70, 0x69, 0x63, - 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, + 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x48, 0x01, 0x52, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x42, 0x07, 0x0a, + 0x05, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x52, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x6c, 0x69, + 0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x06, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x22, 0xbb, 0x01, 0x0a, 0x03, 0x52, + 0x65, 0x66, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x0f, 0x74, 0x79, 0x70, 0x65, + 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, + 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, + 0x52, 0x0e, 0x74, 0x79, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, + 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xbd, 0x04, 0x0a, 0x07, 0x52, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x12, 0x55, 0x0a, 0x10, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, + 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, - 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x48, 0x00, 0x52, 0x0c, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, - 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x0c, 0x76, 0x65, 0x72, 0x62, 0x5f, 0x72, 0x75, - 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x78, 0x79, - 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, - 0x65, 0x48, 0x00, 0x52, 0x0b, 0x76, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, - 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x8e, 0x01, 0x0a, 0x0e, 0x52, 0x75, - 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x07, - 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, - 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, - 0x07, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x6c, - 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, - 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, - 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x98, 0x03, 0x0a, 0x0c, 0x52, - 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x65, 0x0a, 0x16, 0x64, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, 0x79, - 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x75, - 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x14, 0x64, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x12, 0x5f, 0x0a, 0x14, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x72, 0x75, 0x6e, - 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2b, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, - 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, - 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, - 0x12, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x12, 0x5c, 0x0a, 0x13, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, 0x72, 0x75, 0x6e, - 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2a, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, - 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, - 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x11, - 0x74, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x12, 0x59, 0x0a, 0x12, 0x76, 0x65, 0x72, 0x62, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, - 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, - 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, - 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x10, 0x76, 0x65, 0x72, 0x62, - 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x85, 0x01, 0x0a, 0x06, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, - 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x07, 0x6d, 0x6f, - 0x64, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x79, - 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x07, 0x6d, 0x6f, - 0x64, 0x75, 0x6c, 0x65, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xda, 0x01, - 0x0a, 0x0b, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x39, 0x0a, - 0x07, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, + 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x64, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x6e, 0x0a, 0x19, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x64, 0x65, + 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, - 0x07, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x73, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x78, - 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, - 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x73, 0x12, 0x4c, 0x0a, 0x0e, - 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, - 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0d, 0x72, 0x75, 0x6e, - 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xad, 0x01, 0x0a, 0x06, 0x53, - 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, - 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x31, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, + 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x17, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, + 0x65, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x62, 0x0a, 0x15, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x72, 0x75, + 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x79, 0x7a, + 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, + 0x6d, 0x65, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x48, 0x00, 0x52, 0x13, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x12, + 0x65, 0x0a, 0x16, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, + 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x48, 0x00, + 0x52, 0x14, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, + 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x4c, 0x0a, 0x0d, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, + 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x4a, 0x0a, 0x06, 0x53, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x48, 0x00, 0x52, 0x0c, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x0c, 0x76, 0x65, 0x72, 0x62, 0x5f, 0x72, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x78, 0x79, 0x7a, + 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, + 0x48, 0x00, 0x52, 0x0b, 0x76, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x42, + 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x8e, 0x01, 0x0a, 0x0e, 0x52, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x07, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x78, + 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x07, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, + 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x70, + 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, + 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x85, 0x01, 0x0a, 0x06, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x42, 0x06, - 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x65, 0x0a, 0x0b, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, - 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x48, 0x0a, - 0x04, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x42, - 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xd9, 0x02, 0x0a, 0x05, 0x54, 0x6f, 0x70, 0x69, - 0x63, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, - 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x46, 0x0a, 0x07, 0x72, - 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x92, 0xf7, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, - 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, - 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x48, 0x01, 0x52, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, - 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, - 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x33, 0x0a, 0x05, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, - 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x12, 0x3d, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, - 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x75, 0x6e, 0x74, - 0x69, 0x6d, 0x65, 0x22, 0x4e, 0x0a, 0x0c, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, 0x6e, 0x74, - 0x69, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6b, 0x61, 0x66, 0x6b, 0x61, 0x5f, 0x62, 0x72, 0x6f, - 0x6b, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x6b, 0x61, 0x66, 0x6b, - 0x61, 0x42, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6f, 0x70, 0x69, - 0x63, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6f, 0x70, 0x69, - 0x63, 0x49, 0x64, 0x22, 0xa2, 0x01, 0x0a, 0x11, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, 0x6e, - 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x70, - 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, - 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3f, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, - 0x61, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x39, + 0x0a, 0x07, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x52, 0x07, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, + 0x73, 0x22, 0xe4, 0x01, 0x0a, 0x0b, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x12, 0x39, 0x0a, 0x07, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, + 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x52, 0x07, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0a, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x22, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, + 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x73, 0x65, 0x74, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x73, + 0x12, 0x56, 0x0a, 0x0e, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, - 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, - 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x9a, 0x05, 0x0a, 0x04, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x30, 0x0a, 0x03, 0x61, 0x6e, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, - 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6e, 0x79, 0x48, 0x00, 0x52, 0x03, - 0x61, 0x6e, 0x79, 0x12, 0x36, 0x0a, 0x05, 0x61, 0x72, 0x72, 0x61, 0x79, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72, 0x72, - 0x61, 0x79, 0x48, 0x00, 0x52, 0x05, 0x61, 0x72, 0x72, 0x61, 0x79, 0x12, 0x33, 0x0a, 0x04, 0x62, - 0x6f, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x48, 0x00, 0x52, 0x04, 0x62, 0x6f, 0x6f, 0x6c, - 0x12, 0x36, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x48, - 0x00, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x61, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6c, 0x6f, 0x61, 0x74, - 0x12, 0x30, 0x0a, 0x03, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, - 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x03, 0x69, - 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x03, 0x6d, 0x61, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x61, 0x70, 0x48, 0x00, 0x52, - 0x03, 0x6d, 0x61, 0x70, 0x12, 0x3f, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, - 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, - 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x48, 0x00, 0x52, 0x08, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x30, 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, - 0x48, 0x00, 0x52, 0x03, 0x72, 0x65, 0x66, 0x12, 0x39, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x12, 0x33, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, - 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x48, - 0x00, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x33, 0x0a, 0x04, 0x75, 0x6e, 0x69, 0x74, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, - 0x55, 0x6e, 0x69, 0x74, 0x48, 0x00, 0x52, 0x04, 0x75, 0x6e, 0x69, 0x74, 0x42, 0x07, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x87, 0x02, 0x0a, 0x09, 0x54, 0x79, 0x70, 0x65, 0x41, 0x6c, - 0x69, 0x61, 0x73, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x76, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0d, 0x72, 0x75, 0x6e, 0x74, 0x69, + 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xad, 0x01, 0x0a, 0x06, 0x53, 0x65, 0x63, + 0x72, 0x65, 0x74, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, - 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, - 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x3d, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, - 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, - 0x65, 0x0a, 0x0d, 0x54, 0x79, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, - 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, - 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x06, - 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x82, 0x01, 0x0a, 0x09, 0x54, 0x79, 0x70, 0x65, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, - 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x33, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, - 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x48, 0x0a, 0x04, 0x55, - 0x6e, 0x69, 0x74, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, + 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x4a, 0x0a, 0x06, 0x53, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, + 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x65, 0x0a, 0x0b, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, - 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xe2, 0x01, 0x0a, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, - 0x40, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, - 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x74, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x12, 0x49, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, - 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x43, 0x0a, 0x0a, - 0x74, 0x79, 0x70, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x22, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, - 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, 0x09, 0x74, 0x79, 0x70, 0x65, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x96, 0x03, 0x0a, 0x04, 0x56, - 0x65, 0x72, 0x62, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x14, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x48, 0x0a, 0x04, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, - 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, + 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, + 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xd9, 0x02, 0x0a, 0x05, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x12, + 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, + 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, + 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x46, 0x0a, 0x07, 0x72, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x92, 0xf7, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x78, + 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, 0x6e, 0x74, + 0x69, 0x6d, 0x65, 0x48, 0x01, 0x52, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, + 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, + 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x33, 0x0a, 0x05, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, + 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3d, + 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, + 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x06, 0x0a, + 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, + 0x65, 0x22, 0x4e, 0x0a, 0x0c, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, + 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6b, 0x61, 0x66, 0x6b, 0x61, 0x5f, 0x62, 0x72, 0x6f, 0x6b, 0x65, + 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x6b, 0x61, 0x66, 0x6b, 0x61, 0x42, + 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x49, + 0x64, 0x22, 0x9a, 0x05, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x30, 0x0a, 0x03, 0x61, 0x6e, + 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, + 0x31, 0x2e, 0x41, 0x6e, 0x79, 0x48, 0x00, 0x52, 0x03, 0x61, 0x6e, 0x79, 0x12, 0x36, 0x0a, 0x05, + 0x61, 0x72, 0x72, 0x61, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x78, 0x79, + 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x48, 0x00, 0x52, 0x05, 0x61, + 0x72, 0x72, 0x61, 0x79, 0x12, 0x33, 0x0a, 0x04, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, + 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x6f, 0x6f, + 0x6c, 0x48, 0x00, 0x52, 0x04, 0x62, 0x6f, 0x6f, 0x6c, 0x12, 0x36, 0x0a, 0x05, 0x62, 0x79, 0x74, + 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, + 0x76, 0x31, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x48, 0x00, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, + 0x73, 0x12, 0x36, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1e, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, + 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, + 0x48, 0x00, 0x52, 0x05, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x30, 0x0a, 0x03, 0x69, 0x6e, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, - 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x39, - 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, - 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, - 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x08, 0x6d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, + 0x2e, 0x49, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x03, 0x69, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x03, 0x6d, + 0x61, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, + 0x76, 0x31, 0x2e, 0x4d, 0x61, 0x70, 0x48, 0x00, 0x52, 0x03, 0x6d, 0x61, 0x70, 0x12, 0x3f, 0x0a, + 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x48, 0x00, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x30, + 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, - 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x45, 0x0a, 0x07, 0x72, 0x75, 0x6e, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x92, 0xf7, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x78, 0x79, + 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x48, 0x00, 0x52, 0x03, 0x72, 0x65, 0x66, + 0x12, 0x39, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, + 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x33, 0x0a, 0x04, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x48, 0x00, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, + 0x12, 0x33, 0x0a, 0x04, 0x75, 0x6e, 0x69, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, + 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x6e, 0x69, 0x74, 0x48, 0x00, 0x52, + 0x04, 0x75, 0x6e, 0x69, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x87, + 0x02, 0x0a, 0x09, 0x54, 0x79, 0x70, 0x65, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x38, 0x0a, 0x03, + 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, + 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x31, + 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, + 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x12, 0x3d, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, + 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x65, 0x0a, 0x0d, 0x54, 0x79, 0x70, 0x65, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x03, 0x70, 0x6f, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, + 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6f, 0x73, + 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, + 0x82, 0x01, 0x0a, 0x09, 0x54, 0x79, 0x70, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x38, 0x0a, + 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, + 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, + 0x03, 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, + 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x06, 0x0a, 0x04, + 0x5f, 0x70, 0x6f, 0x73, 0x22, 0x48, 0x0a, 0x04, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x38, 0x0a, 0x03, + 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, + 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x22, 0xe2, + 0x01, 0x0a, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x5f, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, - 0x65, 0x48, 0x01, 0x52, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x42, - 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x75, 0x6e, 0x74, - 0x69, 0x6d, 0x65, 0x22, 0x79, 0x0a, 0x0b, 0x56, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, - 0x6d, 0x65, 0x12, 0x59, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, - 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0c, 0x73, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, - 0x0d, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xcc, - 0x01, 0x0a, 0x10, 0x56, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, - 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, - 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x59, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, - 0x31, 0x2e, 0x56, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0c, 0x73, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, - 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x0a, - 0x17, 0x56, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x6b, 0x61, 0x66, 0x6b, - 0x61, 0x5f, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x0c, 0x6b, 0x61, 0x66, 0x6b, 0x61, 0x42, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x73, 0x2a, 0x3c, 0x0a, - 0x09, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x4c, - 0x49, 0x41, 0x53, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, - 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x4c, 0x49, 0x41, 0x53, 0x5f, - 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 0x01, 0x2a, 0x87, 0x02, 0x0a, 0x0e, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1f, - 0x0a, 0x1b, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, - 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, - 0x54, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1c, - 0x0a, 0x18, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x45, 0x5f, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x44, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, - 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, - 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x43, - 0x48, 0x41, 0x4e, 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, - 0x52, 0x41, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x4e, - 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x49, 0x4e, 0x41, - 0x4c, 0x49, 0x5a, 0x45, 0x44, 0x10, 0x05, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x4e, 0x47, - 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x4f, 0x4c, 0x4c, 0x49, - 0x4e, 0x47, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x06, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, - 0x4e, 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x41, 0x49, - 0x4c, 0x45, 0x44, 0x10, 0x07, 0x2a, 0xaf, 0x02, 0x0a, 0x0f, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, - 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x45, 0x50, - 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, - 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x44, - 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, - 0x50, 0x52, 0x4f, 0x56, 0x49, 0x53, 0x49, 0x4f, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1a, - 0x0a, 0x16, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, - 0x54, 0x45, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x45, - 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, - 0x41, 0x4e, 0x41, 0x52, 0x59, 0x10, 0x03, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x45, 0x50, 0x4c, 0x4f, - 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x41, 0x4e, 0x4f, - 0x4e, 0x49, 0x43, 0x41, 0x4c, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x45, 0x50, 0x4c, 0x4f, - 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x52, 0x41, 0x49, - 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x24, 0x0a, 0x20, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, - 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x45, 0x5f, 0x50, 0x52, - 0x4f, 0x56, 0x49, 0x53, 0x49, 0x4f, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x06, 0x12, 0x1c, 0x0a, 0x18, - 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, - 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x07, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x45, - 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x46, - 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x08, 0x2a, 0x5c, 0x0a, 0x0a, 0x46, 0x72, 0x6f, 0x6d, 0x4f, - 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x17, 0x46, 0x52, 0x4f, 0x4d, 0x5f, 0x4f, 0x46, - 0x46, 0x53, 0x45, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, - 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x46, 0x52, 0x4f, 0x4d, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, - 0x54, 0x5f, 0x42, 0x45, 0x47, 0x49, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x16, 0x0a, - 0x12, 0x46, 0x52, 0x4f, 0x4d, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x5f, 0x4c, 0x41, 0x54, - 0x45, 0x53, 0x54, 0x10, 0x02, 0x42, 0x47, 0x50, 0x01, 0x5a, 0x43, 0x67, 0x69, 0x74, 0x68, 0x75, - 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2f, 0x66, 0x74, 0x6c, 0x2f, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2f, 0x78, 0x79, - 0x7a, 0x2f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2f, 0x66, 0x74, 0x6c, 0x2f, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2f, 0x76, 0x31, 0x3b, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x70, 0x62, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, + 0x52, 0x08, 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x49, 0x0a, 0x0c, 0x73, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x24, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, + 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x78, 0x79, 0x7a, 0x2e, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, + 0x09, 0x74, 0x79, 0x70, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x22, 0x96, 0x03, 0x0a, 0x04, 0x56, 0x65, 0x72, 0x62, 0x12, 0x38, 0x0a, 0x03, + 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, + 0x70, 0x6f, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x37, + 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x78, 0x79, 0x7a, 0x2e, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x12, 0x45, 0x0a, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x92, 0xf7, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x2e, 0x66, 0x74, 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x56, + 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x48, 0x01, 0x52, 0x07, 0x72, 0x75, + 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x70, 0x6f, 0x73, + 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x79, 0x0a, 0x0b, + 0x56, 0x65, 0x72, 0x62, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x59, 0x0a, 0x0c, 0x73, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x66, 0x74, + 0x6c, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x62, + 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x0a, 0x17, 0x56, 0x65, 0x72, 0x62, 0x52, + 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x6b, 0x61, 0x66, 0x6b, 0x61, 0x5f, 0x62, 0x72, 0x6f, 0x6b, + 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x6b, 0x61, 0x66, 0x6b, 0x61, + 0x42, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x73, 0x2a, 0x3c, 0x0a, 0x09, 0x41, 0x6c, 0x69, 0x61, 0x73, + 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x4c, 0x49, 0x41, 0x53, 0x5f, 0x4b, 0x49, + 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, + 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x4c, 0x49, 0x41, 0x53, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4a, + 0x53, 0x4f, 0x4e, 0x10, 0x01, 0x2a, 0x87, 0x02, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x43, 0x48, 0x41, 0x4e, + 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, + 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, + 0x4e, 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50, 0x52, 0x45, + 0x50, 0x41, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x4e, + 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x50, + 0x41, 0x52, 0x45, 0x44, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, + 0x53, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, + 0x54, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x53, + 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x52, 0x41, 0x49, 0x4e, 0x45, 0x44, + 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, + 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x44, 0x10, + 0x05, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, + 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x4f, 0x4c, 0x4c, 0x49, 0x4e, 0x47, 0x5f, 0x42, 0x41, 0x43, + 0x4b, 0x10, 0x06, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x53, 0x45, 0x54, + 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x07, 0x2a, + 0xaf, 0x02, 0x0a, 0x0f, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, + 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, + 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, + 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x53, + 0x49, 0x4f, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x45, 0x50, 0x4c, + 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x41, + 0x44, 0x59, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, + 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x41, 0x4e, 0x41, 0x52, 0x59, 0x10, + 0x03, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, + 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x41, 0x4e, 0x4f, 0x4e, 0x49, 0x43, 0x41, 0x4c, 0x10, + 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, + 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x52, 0x41, 0x49, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x05, + 0x12, 0x24, 0x0a, 0x20, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, + 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x53, 0x49, 0x4f, + 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x06, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, + 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, + 0x45, 0x44, 0x10, 0x07, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, + 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, + 0x08, 0x2a, 0x5c, 0x0a, 0x0a, 0x46, 0x72, 0x6f, 0x6d, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, + 0x1b, 0x0a, 0x17, 0x46, 0x52, 0x4f, 0x4d, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x5f, 0x55, + 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, + 0x46, 0x52, 0x4f, 0x4d, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x5f, 0x42, 0x45, 0x47, 0x49, + 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x52, 0x4f, 0x4d, 0x5f, + 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x5f, 0x4c, 0x41, 0x54, 0x45, 0x53, 0x54, 0x10, 0x02, 0x42, + 0x47, 0x50, 0x01, 0x5a, 0x43, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2f, 0x66, 0x74, 0x6c, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2f, 0x78, 0x79, 0x7a, 0x2f, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x2f, 0x66, 0x74, 0x6c, 0x2f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2f, 0x76, 0x31, 0x3b, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -7670,297 +6798,270 @@ func file_xyz_block_ftl_schema_v1_schema_proto_rawDescGZIP() []byte { } var file_xyz_block_ftl_schema_v1_schema_proto_enumTypes = make([]protoimpl.EnumInfo, 4) -var file_xyz_block_ftl_schema_v1_schema_proto_msgTypes = make([]protoimpl.MessageInfo, 87) +var file_xyz_block_ftl_schema_v1_schema_proto_msgTypes = make([]protoimpl.MessageInfo, 79) var file_xyz_block_ftl_schema_v1_schema_proto_goTypes = []any{ - (AliasKind)(0), // 0: xyz.block.ftl.schema.v1.AliasKind - (ChangesetState)(0), // 1: xyz.block.ftl.schema.v1.ChangesetState - (DeploymentState)(0), // 2: xyz.block.ftl.schema.v1.DeploymentState - (FromOffset)(0), // 3: xyz.block.ftl.schema.v1.FromOffset - (*AWSIAMAuthDatabaseConnector)(nil), // 4: xyz.block.ftl.schema.v1.AWSIAMAuthDatabaseConnector - (*Any)(nil), // 5: xyz.block.ftl.schema.v1.Any - (*Array)(nil), // 6: xyz.block.ftl.schema.v1.Array - (*Bool)(nil), // 7: xyz.block.ftl.schema.v1.Bool - (*Bytes)(nil), // 8: xyz.block.ftl.schema.v1.Bytes - (*Changeset)(nil), // 9: xyz.block.ftl.schema.v1.Changeset - (*ChangesetCommittedEvent)(nil), // 10: xyz.block.ftl.schema.v1.ChangesetCommittedEvent - (*ChangesetCreatedEvent)(nil), // 11: xyz.block.ftl.schema.v1.ChangesetCreatedEvent - (*ChangesetDrainedEvent)(nil), // 12: xyz.block.ftl.schema.v1.ChangesetDrainedEvent - (*ChangesetFailedEvent)(nil), // 13: xyz.block.ftl.schema.v1.ChangesetFailedEvent - (*ChangesetFinalizedEvent)(nil), // 14: xyz.block.ftl.schema.v1.ChangesetFinalizedEvent - (*ChangesetPreparedEvent)(nil), // 15: xyz.block.ftl.schema.v1.ChangesetPreparedEvent - (*Config)(nil), // 16: xyz.block.ftl.schema.v1.Config - (*DSNDatabaseConnector)(nil), // 17: xyz.block.ftl.schema.v1.DSNDatabaseConnector - (*Data)(nil), // 18: xyz.block.ftl.schema.v1.Data - (*Database)(nil), // 19: xyz.block.ftl.schema.v1.Database - (*DatabaseConnector)(nil), // 20: xyz.block.ftl.schema.v1.DatabaseConnector - (*DatabaseRuntime)(nil), // 21: xyz.block.ftl.schema.v1.DatabaseRuntime - (*DatabaseRuntimeConnections)(nil), // 22: xyz.block.ftl.schema.v1.DatabaseRuntimeConnections - (*DatabaseRuntimeEvent)(nil), // 23: xyz.block.ftl.schema.v1.DatabaseRuntimeEvent - (*Decl)(nil), // 24: xyz.block.ftl.schema.v1.Decl - (*DeploymentActivatedEvent)(nil), // 25: xyz.block.ftl.schema.v1.DeploymentActivatedEvent - (*DeploymentCreatedEvent)(nil), // 26: xyz.block.ftl.schema.v1.DeploymentCreatedEvent - (*DeploymentDeactivatedEvent)(nil), // 27: xyz.block.ftl.schema.v1.DeploymentDeactivatedEvent - (*DeploymentReplicasUpdatedEvent)(nil), // 28: xyz.block.ftl.schema.v1.DeploymentReplicasUpdatedEvent - (*DeploymentSchemaUpdatedEvent)(nil), // 29: xyz.block.ftl.schema.v1.DeploymentSchemaUpdatedEvent - (*Enum)(nil), // 30: xyz.block.ftl.schema.v1.Enum - (*EnumVariant)(nil), // 31: xyz.block.ftl.schema.v1.EnumVariant - (*Event)(nil), // 32: xyz.block.ftl.schema.v1.Event - (*Field)(nil), // 33: xyz.block.ftl.schema.v1.Field - (*Float)(nil), // 34: xyz.block.ftl.schema.v1.Float - (*IngressPathComponent)(nil), // 35: xyz.block.ftl.schema.v1.IngressPathComponent - (*IngressPathLiteral)(nil), // 36: xyz.block.ftl.schema.v1.IngressPathLiteral - (*IngressPathParameter)(nil), // 37: xyz.block.ftl.schema.v1.IngressPathParameter - (*Int)(nil), // 38: xyz.block.ftl.schema.v1.Int - (*IntValue)(nil), // 39: xyz.block.ftl.schema.v1.IntValue - (*Map)(nil), // 40: xyz.block.ftl.schema.v1.Map - (*Metadata)(nil), // 41: xyz.block.ftl.schema.v1.Metadata - (*MetadataAlias)(nil), // 42: xyz.block.ftl.schema.v1.MetadataAlias - (*MetadataArtefact)(nil), // 43: xyz.block.ftl.schema.v1.MetadataArtefact - (*MetadataCalls)(nil), // 44: xyz.block.ftl.schema.v1.MetadataCalls - (*MetadataConfig)(nil), // 45: xyz.block.ftl.schema.v1.MetadataConfig - (*MetadataCronJob)(nil), // 46: xyz.block.ftl.schema.v1.MetadataCronJob - (*MetadataDatabases)(nil), // 47: xyz.block.ftl.schema.v1.MetadataDatabases - (*MetadataEncoding)(nil), // 48: xyz.block.ftl.schema.v1.MetadataEncoding - (*MetadataIngress)(nil), // 49: xyz.block.ftl.schema.v1.MetadataIngress - (*MetadataPartitions)(nil), // 50: xyz.block.ftl.schema.v1.MetadataPartitions - (*MetadataPublisher)(nil), // 51: xyz.block.ftl.schema.v1.MetadataPublisher - (*MetadataRetry)(nil), // 52: xyz.block.ftl.schema.v1.MetadataRetry - (*MetadataSQLColumn)(nil), // 53: xyz.block.ftl.schema.v1.MetadataSQLColumn - (*MetadataSQLMigration)(nil), // 54: xyz.block.ftl.schema.v1.MetadataSQLMigration - (*MetadataSQLQuery)(nil), // 55: xyz.block.ftl.schema.v1.MetadataSQLQuery - (*MetadataSecrets)(nil), // 56: xyz.block.ftl.schema.v1.MetadataSecrets - (*MetadataSubscriber)(nil), // 57: xyz.block.ftl.schema.v1.MetadataSubscriber - (*MetadataTypeMap)(nil), // 58: xyz.block.ftl.schema.v1.MetadataTypeMap - (*Module)(nil), // 59: xyz.block.ftl.schema.v1.Module - (*ModuleRuntime)(nil), // 60: xyz.block.ftl.schema.v1.ModuleRuntime - (*ModuleRuntimeBase)(nil), // 61: xyz.block.ftl.schema.v1.ModuleRuntimeBase - (*ModuleRuntimeDeployment)(nil), // 62: xyz.block.ftl.schema.v1.ModuleRuntimeDeployment - (*ModuleRuntimeEvent)(nil), // 63: xyz.block.ftl.schema.v1.ModuleRuntimeEvent - (*ModuleRuntimeRunner)(nil), // 64: xyz.block.ftl.schema.v1.ModuleRuntimeRunner - (*ModuleRuntimeScaling)(nil), // 65: xyz.block.ftl.schema.v1.ModuleRuntimeScaling - (*Optional)(nil), // 66: xyz.block.ftl.schema.v1.Optional - (*Position)(nil), // 67: xyz.block.ftl.schema.v1.Position - (*Ref)(nil), // 68: xyz.block.ftl.schema.v1.Ref - (*Runtime)(nil), // 69: xyz.block.ftl.schema.v1.Runtime - (*RuntimeElement)(nil), // 70: xyz.block.ftl.schema.v1.RuntimeElement - (*RuntimeEvent)(nil), // 71: xyz.block.ftl.schema.v1.RuntimeEvent - (*Schema)(nil), // 72: xyz.block.ftl.schema.v1.Schema - (*SchemaState)(nil), // 73: xyz.block.ftl.schema.v1.SchemaState - (*Secret)(nil), // 74: xyz.block.ftl.schema.v1.Secret - (*String)(nil), // 75: xyz.block.ftl.schema.v1.String - (*StringValue)(nil), // 76: xyz.block.ftl.schema.v1.StringValue - (*Time)(nil), // 77: xyz.block.ftl.schema.v1.Time - (*Topic)(nil), // 78: xyz.block.ftl.schema.v1.Topic - (*TopicRuntime)(nil), // 79: xyz.block.ftl.schema.v1.TopicRuntime - (*TopicRuntimeEvent)(nil), // 80: xyz.block.ftl.schema.v1.TopicRuntimeEvent - (*Type)(nil), // 81: xyz.block.ftl.schema.v1.Type - (*TypeAlias)(nil), // 82: xyz.block.ftl.schema.v1.TypeAlias - (*TypeParameter)(nil), // 83: xyz.block.ftl.schema.v1.TypeParameter - (*TypeValue)(nil), // 84: xyz.block.ftl.schema.v1.TypeValue - (*Unit)(nil), // 85: xyz.block.ftl.schema.v1.Unit - (*Value)(nil), // 86: xyz.block.ftl.schema.v1.Value - (*Verb)(nil), // 87: xyz.block.ftl.schema.v1.Verb - (*VerbRuntime)(nil), // 88: xyz.block.ftl.schema.v1.VerbRuntime - (*VerbRuntimeEvent)(nil), // 89: xyz.block.ftl.schema.v1.VerbRuntimeEvent - (*VerbRuntimeSubscription)(nil), // 90: xyz.block.ftl.schema.v1.VerbRuntimeSubscription - (*timestamppb.Timestamp)(nil), // 91: google.protobuf.Timestamp + (AliasKind)(0), // 0: xyz.block.ftl.schema.v1.AliasKind + (ChangesetState)(0), // 1: xyz.block.ftl.schema.v1.ChangesetState + (DeploymentState)(0), // 2: xyz.block.ftl.schema.v1.DeploymentState + (FromOffset)(0), // 3: xyz.block.ftl.schema.v1.FromOffset + (*AWSIAMAuthDatabaseConnector)(nil), // 4: xyz.block.ftl.schema.v1.AWSIAMAuthDatabaseConnector + (*Any)(nil), // 5: xyz.block.ftl.schema.v1.Any + (*Array)(nil), // 6: xyz.block.ftl.schema.v1.Array + (*Bool)(nil), // 7: xyz.block.ftl.schema.v1.Bool + (*Bytes)(nil), // 8: xyz.block.ftl.schema.v1.Bytes + (*Changeset)(nil), // 9: xyz.block.ftl.schema.v1.Changeset + (*ChangesetCommittedEvent)(nil), // 10: xyz.block.ftl.schema.v1.ChangesetCommittedEvent + (*ChangesetCreatedEvent)(nil), // 11: xyz.block.ftl.schema.v1.ChangesetCreatedEvent + (*ChangesetDrainedEvent)(nil), // 12: xyz.block.ftl.schema.v1.ChangesetDrainedEvent + (*ChangesetFailedEvent)(nil), // 13: xyz.block.ftl.schema.v1.ChangesetFailedEvent + (*ChangesetFinalizedEvent)(nil), // 14: xyz.block.ftl.schema.v1.ChangesetFinalizedEvent + (*ChangesetPreparedEvent)(nil), // 15: xyz.block.ftl.schema.v1.ChangesetPreparedEvent + (*Config)(nil), // 16: xyz.block.ftl.schema.v1.Config + (*DSNDatabaseConnector)(nil), // 17: xyz.block.ftl.schema.v1.DSNDatabaseConnector + (*Data)(nil), // 18: xyz.block.ftl.schema.v1.Data + (*Database)(nil), // 19: xyz.block.ftl.schema.v1.Database + (*DatabaseConnector)(nil), // 20: xyz.block.ftl.schema.v1.DatabaseConnector + (*DatabaseRuntime)(nil), // 21: xyz.block.ftl.schema.v1.DatabaseRuntime + (*DatabaseRuntimeConnections)(nil), // 22: xyz.block.ftl.schema.v1.DatabaseRuntimeConnections + (*Decl)(nil), // 23: xyz.block.ftl.schema.v1.Decl + (*DeploymentCreatedEvent)(nil), // 24: xyz.block.ftl.schema.v1.DeploymentCreatedEvent + (*DeploymentRuntimeEvent)(nil), // 25: xyz.block.ftl.schema.v1.DeploymentRuntimeEvent + (*Enum)(nil), // 26: xyz.block.ftl.schema.v1.Enum + (*EnumVariant)(nil), // 27: xyz.block.ftl.schema.v1.EnumVariant + (*Event)(nil), // 28: xyz.block.ftl.schema.v1.Event + (*Field)(nil), // 29: xyz.block.ftl.schema.v1.Field + (*Float)(nil), // 30: xyz.block.ftl.schema.v1.Float + (*IngressPathComponent)(nil), // 31: xyz.block.ftl.schema.v1.IngressPathComponent + (*IngressPathLiteral)(nil), // 32: xyz.block.ftl.schema.v1.IngressPathLiteral + (*IngressPathParameter)(nil), // 33: xyz.block.ftl.schema.v1.IngressPathParameter + (*Int)(nil), // 34: xyz.block.ftl.schema.v1.Int + (*IntValue)(nil), // 35: xyz.block.ftl.schema.v1.IntValue + (*Map)(nil), // 36: xyz.block.ftl.schema.v1.Map + (*Metadata)(nil), // 37: xyz.block.ftl.schema.v1.Metadata + (*MetadataAlias)(nil), // 38: xyz.block.ftl.schema.v1.MetadataAlias + (*MetadataArtefact)(nil), // 39: xyz.block.ftl.schema.v1.MetadataArtefact + (*MetadataCalls)(nil), // 40: xyz.block.ftl.schema.v1.MetadataCalls + (*MetadataConfig)(nil), // 41: xyz.block.ftl.schema.v1.MetadataConfig + (*MetadataCronJob)(nil), // 42: xyz.block.ftl.schema.v1.MetadataCronJob + (*MetadataDatabases)(nil), // 43: xyz.block.ftl.schema.v1.MetadataDatabases + (*MetadataEncoding)(nil), // 44: xyz.block.ftl.schema.v1.MetadataEncoding + (*MetadataIngress)(nil), // 45: xyz.block.ftl.schema.v1.MetadataIngress + (*MetadataPartitions)(nil), // 46: xyz.block.ftl.schema.v1.MetadataPartitions + (*MetadataPublisher)(nil), // 47: xyz.block.ftl.schema.v1.MetadataPublisher + (*MetadataRetry)(nil), // 48: xyz.block.ftl.schema.v1.MetadataRetry + (*MetadataSQLColumn)(nil), // 49: xyz.block.ftl.schema.v1.MetadataSQLColumn + (*MetadataSQLMigration)(nil), // 50: xyz.block.ftl.schema.v1.MetadataSQLMigration + (*MetadataSQLQuery)(nil), // 51: xyz.block.ftl.schema.v1.MetadataSQLQuery + (*MetadataSecrets)(nil), // 52: xyz.block.ftl.schema.v1.MetadataSecrets + (*MetadataSubscriber)(nil), // 53: xyz.block.ftl.schema.v1.MetadataSubscriber + (*MetadataTypeMap)(nil), // 54: xyz.block.ftl.schema.v1.MetadataTypeMap + (*Module)(nil), // 55: xyz.block.ftl.schema.v1.Module + (*ModuleRuntime)(nil), // 56: xyz.block.ftl.schema.v1.ModuleRuntime + (*ModuleRuntimeBase)(nil), // 57: xyz.block.ftl.schema.v1.ModuleRuntimeBase + (*ModuleRuntimeDeployment)(nil), // 58: xyz.block.ftl.schema.v1.ModuleRuntimeDeployment + (*ModuleRuntimeRunner)(nil), // 59: xyz.block.ftl.schema.v1.ModuleRuntimeRunner + (*ModuleRuntimeScaling)(nil), // 60: xyz.block.ftl.schema.v1.ModuleRuntimeScaling + (*Optional)(nil), // 61: xyz.block.ftl.schema.v1.Optional + (*Position)(nil), // 62: xyz.block.ftl.schema.v1.Position + (*Ref)(nil), // 63: xyz.block.ftl.schema.v1.Ref + (*Runtime)(nil), // 64: xyz.block.ftl.schema.v1.Runtime + (*RuntimeElement)(nil), // 65: xyz.block.ftl.schema.v1.RuntimeElement + (*Schema)(nil), // 66: xyz.block.ftl.schema.v1.Schema + (*SchemaState)(nil), // 67: xyz.block.ftl.schema.v1.SchemaState + (*Secret)(nil), // 68: xyz.block.ftl.schema.v1.Secret + (*String)(nil), // 69: xyz.block.ftl.schema.v1.String + (*StringValue)(nil), // 70: xyz.block.ftl.schema.v1.StringValue + (*Time)(nil), // 71: xyz.block.ftl.schema.v1.Time + (*Topic)(nil), // 72: xyz.block.ftl.schema.v1.Topic + (*TopicRuntime)(nil), // 73: xyz.block.ftl.schema.v1.TopicRuntime + (*Type)(nil), // 74: xyz.block.ftl.schema.v1.Type + (*TypeAlias)(nil), // 75: xyz.block.ftl.schema.v1.TypeAlias + (*TypeParameter)(nil), // 76: xyz.block.ftl.schema.v1.TypeParameter + (*TypeValue)(nil), // 77: xyz.block.ftl.schema.v1.TypeValue + (*Unit)(nil), // 78: xyz.block.ftl.schema.v1.Unit + (*Value)(nil), // 79: xyz.block.ftl.schema.v1.Value + (*Verb)(nil), // 80: xyz.block.ftl.schema.v1.Verb + (*VerbRuntime)(nil), // 81: xyz.block.ftl.schema.v1.VerbRuntime + (*VerbRuntimeSubscription)(nil), // 82: xyz.block.ftl.schema.v1.VerbRuntimeSubscription + (*timestamppb.Timestamp)(nil), // 83: google.protobuf.Timestamp } var file_xyz_block_ftl_schema_v1_schema_proto_depIdxs = []int32{ - 67, // 0: xyz.block.ftl.schema.v1.AWSIAMAuthDatabaseConnector.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 1: xyz.block.ftl.schema.v1.Any.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 2: xyz.block.ftl.schema.v1.Array.pos:type_name -> xyz.block.ftl.schema.v1.Position - 81, // 3: xyz.block.ftl.schema.v1.Array.element:type_name -> xyz.block.ftl.schema.v1.Type - 67, // 4: xyz.block.ftl.schema.v1.Bool.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 5: xyz.block.ftl.schema.v1.Bytes.pos:type_name -> xyz.block.ftl.schema.v1.Position - 91, // 6: xyz.block.ftl.schema.v1.Changeset.created_at:type_name -> google.protobuf.Timestamp - 59, // 7: xyz.block.ftl.schema.v1.Changeset.modules:type_name -> xyz.block.ftl.schema.v1.Module - 59, // 8: xyz.block.ftl.schema.v1.Changeset.removing_modules:type_name -> xyz.block.ftl.schema.v1.Module + 62, // 0: xyz.block.ftl.schema.v1.AWSIAMAuthDatabaseConnector.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 1: xyz.block.ftl.schema.v1.Any.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 2: xyz.block.ftl.schema.v1.Array.pos:type_name -> xyz.block.ftl.schema.v1.Position + 74, // 3: xyz.block.ftl.schema.v1.Array.element:type_name -> xyz.block.ftl.schema.v1.Type + 62, // 4: xyz.block.ftl.schema.v1.Bool.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 5: xyz.block.ftl.schema.v1.Bytes.pos:type_name -> xyz.block.ftl.schema.v1.Position + 83, // 6: xyz.block.ftl.schema.v1.Changeset.created_at:type_name -> google.protobuf.Timestamp + 55, // 7: xyz.block.ftl.schema.v1.Changeset.modules:type_name -> xyz.block.ftl.schema.v1.Module + 55, // 8: xyz.block.ftl.schema.v1.Changeset.removing_modules:type_name -> xyz.block.ftl.schema.v1.Module 1, // 9: xyz.block.ftl.schema.v1.Changeset.state:type_name -> xyz.block.ftl.schema.v1.ChangesetState 9, // 10: xyz.block.ftl.schema.v1.ChangesetCreatedEvent.changeset:type_name -> xyz.block.ftl.schema.v1.Changeset - 67, // 11: xyz.block.ftl.schema.v1.Config.pos:type_name -> xyz.block.ftl.schema.v1.Position - 81, // 12: xyz.block.ftl.schema.v1.Config.type:type_name -> xyz.block.ftl.schema.v1.Type - 67, // 13: xyz.block.ftl.schema.v1.DSNDatabaseConnector.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 14: xyz.block.ftl.schema.v1.Data.pos:type_name -> xyz.block.ftl.schema.v1.Position - 83, // 15: xyz.block.ftl.schema.v1.Data.type_parameters:type_name -> xyz.block.ftl.schema.v1.TypeParameter - 33, // 16: xyz.block.ftl.schema.v1.Data.fields:type_name -> xyz.block.ftl.schema.v1.Field - 41, // 17: xyz.block.ftl.schema.v1.Data.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata - 67, // 18: xyz.block.ftl.schema.v1.Database.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 11: xyz.block.ftl.schema.v1.Config.pos:type_name -> xyz.block.ftl.schema.v1.Position + 74, // 12: xyz.block.ftl.schema.v1.Config.type:type_name -> xyz.block.ftl.schema.v1.Type + 62, // 13: xyz.block.ftl.schema.v1.DSNDatabaseConnector.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 14: xyz.block.ftl.schema.v1.Data.pos:type_name -> xyz.block.ftl.schema.v1.Position + 76, // 15: xyz.block.ftl.schema.v1.Data.type_parameters:type_name -> xyz.block.ftl.schema.v1.TypeParameter + 29, // 16: xyz.block.ftl.schema.v1.Data.fields:type_name -> xyz.block.ftl.schema.v1.Field + 37, // 17: xyz.block.ftl.schema.v1.Data.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata + 62, // 18: xyz.block.ftl.schema.v1.Database.pos:type_name -> xyz.block.ftl.schema.v1.Position 21, // 19: xyz.block.ftl.schema.v1.Database.runtime:type_name -> xyz.block.ftl.schema.v1.DatabaseRuntime - 41, // 20: xyz.block.ftl.schema.v1.Database.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata + 37, // 20: xyz.block.ftl.schema.v1.Database.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata 4, // 21: xyz.block.ftl.schema.v1.DatabaseConnector.awsiam_auth_database_connector:type_name -> xyz.block.ftl.schema.v1.AWSIAMAuthDatabaseConnector 17, // 22: xyz.block.ftl.schema.v1.DatabaseConnector.dsn_database_connector:type_name -> xyz.block.ftl.schema.v1.DSNDatabaseConnector 22, // 23: xyz.block.ftl.schema.v1.DatabaseRuntime.connections:type_name -> xyz.block.ftl.schema.v1.DatabaseRuntimeConnections 20, // 24: xyz.block.ftl.schema.v1.DatabaseRuntimeConnections.read:type_name -> xyz.block.ftl.schema.v1.DatabaseConnector 20, // 25: xyz.block.ftl.schema.v1.DatabaseRuntimeConnections.write:type_name -> xyz.block.ftl.schema.v1.DatabaseConnector - 22, // 26: xyz.block.ftl.schema.v1.DatabaseRuntimeEvent.connections:type_name -> xyz.block.ftl.schema.v1.DatabaseRuntimeConnections - 16, // 27: xyz.block.ftl.schema.v1.Decl.config:type_name -> xyz.block.ftl.schema.v1.Config - 18, // 28: xyz.block.ftl.schema.v1.Decl.data:type_name -> xyz.block.ftl.schema.v1.Data - 19, // 29: xyz.block.ftl.schema.v1.Decl.database:type_name -> xyz.block.ftl.schema.v1.Database - 30, // 30: xyz.block.ftl.schema.v1.Decl.enum:type_name -> xyz.block.ftl.schema.v1.Enum - 74, // 31: xyz.block.ftl.schema.v1.Decl.secret:type_name -> xyz.block.ftl.schema.v1.Secret - 78, // 32: xyz.block.ftl.schema.v1.Decl.topic:type_name -> xyz.block.ftl.schema.v1.Topic - 82, // 33: xyz.block.ftl.schema.v1.Decl.type_alias:type_name -> xyz.block.ftl.schema.v1.TypeAlias - 87, // 34: xyz.block.ftl.schema.v1.Decl.verb:type_name -> xyz.block.ftl.schema.v1.Verb - 91, // 35: xyz.block.ftl.schema.v1.DeploymentActivatedEvent.activated_at:type_name -> google.protobuf.Timestamp - 59, // 36: xyz.block.ftl.schema.v1.DeploymentCreatedEvent.schema:type_name -> xyz.block.ftl.schema.v1.Module - 59, // 37: xyz.block.ftl.schema.v1.DeploymentSchemaUpdatedEvent.schema:type_name -> xyz.block.ftl.schema.v1.Module - 67, // 38: xyz.block.ftl.schema.v1.Enum.pos:type_name -> xyz.block.ftl.schema.v1.Position - 81, // 39: xyz.block.ftl.schema.v1.Enum.type:type_name -> xyz.block.ftl.schema.v1.Type - 31, // 40: xyz.block.ftl.schema.v1.Enum.variants:type_name -> xyz.block.ftl.schema.v1.EnumVariant - 67, // 41: xyz.block.ftl.schema.v1.EnumVariant.pos:type_name -> xyz.block.ftl.schema.v1.Position - 86, // 42: xyz.block.ftl.schema.v1.EnumVariant.value:type_name -> xyz.block.ftl.schema.v1.Value - 10, // 43: xyz.block.ftl.schema.v1.Event.changeset_committed_event:type_name -> xyz.block.ftl.schema.v1.ChangesetCommittedEvent - 11, // 44: xyz.block.ftl.schema.v1.Event.changeset_created_event:type_name -> xyz.block.ftl.schema.v1.ChangesetCreatedEvent - 12, // 45: xyz.block.ftl.schema.v1.Event.changeset_drained_event:type_name -> xyz.block.ftl.schema.v1.ChangesetDrainedEvent - 13, // 46: xyz.block.ftl.schema.v1.Event.changeset_failed_event:type_name -> xyz.block.ftl.schema.v1.ChangesetFailedEvent - 14, // 47: xyz.block.ftl.schema.v1.Event.changeset_finalized_event:type_name -> xyz.block.ftl.schema.v1.ChangesetFinalizedEvent - 15, // 48: xyz.block.ftl.schema.v1.Event.changeset_prepared_event:type_name -> xyz.block.ftl.schema.v1.ChangesetPreparedEvent - 23, // 49: xyz.block.ftl.schema.v1.Event.database_runtime_event:type_name -> xyz.block.ftl.schema.v1.DatabaseRuntimeEvent - 25, // 50: xyz.block.ftl.schema.v1.Event.deployment_activated_event:type_name -> xyz.block.ftl.schema.v1.DeploymentActivatedEvent - 26, // 51: xyz.block.ftl.schema.v1.Event.deployment_created_event:type_name -> xyz.block.ftl.schema.v1.DeploymentCreatedEvent - 27, // 52: xyz.block.ftl.schema.v1.Event.deployment_deactivated_event:type_name -> xyz.block.ftl.schema.v1.DeploymentDeactivatedEvent - 28, // 53: xyz.block.ftl.schema.v1.Event.deployment_replicas_updated_event:type_name -> xyz.block.ftl.schema.v1.DeploymentReplicasUpdatedEvent - 29, // 54: xyz.block.ftl.schema.v1.Event.deployment_schema_updated_event:type_name -> xyz.block.ftl.schema.v1.DeploymentSchemaUpdatedEvent - 63, // 55: xyz.block.ftl.schema.v1.Event.module_runtime_event:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeEvent - 80, // 56: xyz.block.ftl.schema.v1.Event.topic_runtime_event:type_name -> xyz.block.ftl.schema.v1.TopicRuntimeEvent - 89, // 57: xyz.block.ftl.schema.v1.Event.verb_runtime_event:type_name -> xyz.block.ftl.schema.v1.VerbRuntimeEvent - 67, // 58: xyz.block.ftl.schema.v1.Field.pos:type_name -> xyz.block.ftl.schema.v1.Position - 81, // 59: xyz.block.ftl.schema.v1.Field.type:type_name -> xyz.block.ftl.schema.v1.Type - 41, // 60: xyz.block.ftl.schema.v1.Field.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata - 67, // 61: xyz.block.ftl.schema.v1.Float.pos:type_name -> xyz.block.ftl.schema.v1.Position - 36, // 62: xyz.block.ftl.schema.v1.IngressPathComponent.ingress_path_literal:type_name -> xyz.block.ftl.schema.v1.IngressPathLiteral - 37, // 63: xyz.block.ftl.schema.v1.IngressPathComponent.ingress_path_parameter:type_name -> xyz.block.ftl.schema.v1.IngressPathParameter - 67, // 64: xyz.block.ftl.schema.v1.IngressPathLiteral.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 65: xyz.block.ftl.schema.v1.IngressPathParameter.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 66: xyz.block.ftl.schema.v1.Int.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 67: xyz.block.ftl.schema.v1.IntValue.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 68: xyz.block.ftl.schema.v1.Map.pos:type_name -> xyz.block.ftl.schema.v1.Position - 81, // 69: xyz.block.ftl.schema.v1.Map.key:type_name -> xyz.block.ftl.schema.v1.Type - 81, // 70: xyz.block.ftl.schema.v1.Map.value:type_name -> xyz.block.ftl.schema.v1.Type - 42, // 71: xyz.block.ftl.schema.v1.Metadata.alias:type_name -> xyz.block.ftl.schema.v1.MetadataAlias - 43, // 72: xyz.block.ftl.schema.v1.Metadata.artefact:type_name -> xyz.block.ftl.schema.v1.MetadataArtefact - 44, // 73: xyz.block.ftl.schema.v1.Metadata.calls:type_name -> xyz.block.ftl.schema.v1.MetadataCalls - 45, // 74: xyz.block.ftl.schema.v1.Metadata.config:type_name -> xyz.block.ftl.schema.v1.MetadataConfig - 46, // 75: xyz.block.ftl.schema.v1.Metadata.cron_job:type_name -> xyz.block.ftl.schema.v1.MetadataCronJob - 47, // 76: xyz.block.ftl.schema.v1.Metadata.databases:type_name -> xyz.block.ftl.schema.v1.MetadataDatabases - 48, // 77: xyz.block.ftl.schema.v1.Metadata.encoding:type_name -> xyz.block.ftl.schema.v1.MetadataEncoding - 49, // 78: xyz.block.ftl.schema.v1.Metadata.ingress:type_name -> xyz.block.ftl.schema.v1.MetadataIngress - 50, // 79: xyz.block.ftl.schema.v1.Metadata.partitions:type_name -> xyz.block.ftl.schema.v1.MetadataPartitions - 51, // 80: xyz.block.ftl.schema.v1.Metadata.publisher:type_name -> xyz.block.ftl.schema.v1.MetadataPublisher - 52, // 81: xyz.block.ftl.schema.v1.Metadata.retry:type_name -> xyz.block.ftl.schema.v1.MetadataRetry - 53, // 82: xyz.block.ftl.schema.v1.Metadata.sql_column:type_name -> xyz.block.ftl.schema.v1.MetadataSQLColumn - 54, // 83: xyz.block.ftl.schema.v1.Metadata.sql_migration:type_name -> xyz.block.ftl.schema.v1.MetadataSQLMigration - 55, // 84: xyz.block.ftl.schema.v1.Metadata.sql_query:type_name -> xyz.block.ftl.schema.v1.MetadataSQLQuery - 56, // 85: xyz.block.ftl.schema.v1.Metadata.secrets:type_name -> xyz.block.ftl.schema.v1.MetadataSecrets - 57, // 86: xyz.block.ftl.schema.v1.Metadata.subscriber:type_name -> xyz.block.ftl.schema.v1.MetadataSubscriber - 58, // 87: xyz.block.ftl.schema.v1.Metadata.type_map:type_name -> xyz.block.ftl.schema.v1.MetadataTypeMap - 67, // 88: xyz.block.ftl.schema.v1.MetadataAlias.pos:type_name -> xyz.block.ftl.schema.v1.Position - 0, // 89: xyz.block.ftl.schema.v1.MetadataAlias.kind:type_name -> xyz.block.ftl.schema.v1.AliasKind - 67, // 90: xyz.block.ftl.schema.v1.MetadataArtefact.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 91: xyz.block.ftl.schema.v1.MetadataCalls.pos:type_name -> xyz.block.ftl.schema.v1.Position - 68, // 92: xyz.block.ftl.schema.v1.MetadataCalls.calls:type_name -> xyz.block.ftl.schema.v1.Ref - 67, // 93: xyz.block.ftl.schema.v1.MetadataConfig.pos:type_name -> xyz.block.ftl.schema.v1.Position - 68, // 94: xyz.block.ftl.schema.v1.MetadataConfig.config:type_name -> xyz.block.ftl.schema.v1.Ref - 67, // 95: xyz.block.ftl.schema.v1.MetadataCronJob.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 96: xyz.block.ftl.schema.v1.MetadataDatabases.pos:type_name -> xyz.block.ftl.schema.v1.Position - 68, // 97: xyz.block.ftl.schema.v1.MetadataDatabases.calls:type_name -> xyz.block.ftl.schema.v1.Ref - 67, // 98: xyz.block.ftl.schema.v1.MetadataEncoding.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 99: xyz.block.ftl.schema.v1.MetadataIngress.pos:type_name -> xyz.block.ftl.schema.v1.Position - 35, // 100: xyz.block.ftl.schema.v1.MetadataIngress.path:type_name -> xyz.block.ftl.schema.v1.IngressPathComponent - 67, // 101: xyz.block.ftl.schema.v1.MetadataPartitions.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 102: xyz.block.ftl.schema.v1.MetadataPublisher.pos:type_name -> xyz.block.ftl.schema.v1.Position - 68, // 103: xyz.block.ftl.schema.v1.MetadataPublisher.topics:type_name -> xyz.block.ftl.schema.v1.Ref - 67, // 104: xyz.block.ftl.schema.v1.MetadataRetry.pos:type_name -> xyz.block.ftl.schema.v1.Position - 68, // 105: xyz.block.ftl.schema.v1.MetadataRetry.catch:type_name -> xyz.block.ftl.schema.v1.Ref - 67, // 106: xyz.block.ftl.schema.v1.MetadataSQLColumn.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 107: xyz.block.ftl.schema.v1.MetadataSQLMigration.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 108: xyz.block.ftl.schema.v1.MetadataSQLQuery.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 109: xyz.block.ftl.schema.v1.MetadataSecrets.pos:type_name -> xyz.block.ftl.schema.v1.Position - 68, // 110: xyz.block.ftl.schema.v1.MetadataSecrets.secrets:type_name -> xyz.block.ftl.schema.v1.Ref - 67, // 111: xyz.block.ftl.schema.v1.MetadataSubscriber.pos:type_name -> xyz.block.ftl.schema.v1.Position - 68, // 112: xyz.block.ftl.schema.v1.MetadataSubscriber.topic:type_name -> xyz.block.ftl.schema.v1.Ref - 3, // 113: xyz.block.ftl.schema.v1.MetadataSubscriber.from_offset:type_name -> xyz.block.ftl.schema.v1.FromOffset - 67, // 114: xyz.block.ftl.schema.v1.MetadataTypeMap.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 115: xyz.block.ftl.schema.v1.Module.pos:type_name -> xyz.block.ftl.schema.v1.Position - 41, // 116: xyz.block.ftl.schema.v1.Module.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata - 24, // 117: xyz.block.ftl.schema.v1.Module.decls:type_name -> xyz.block.ftl.schema.v1.Decl - 60, // 118: xyz.block.ftl.schema.v1.Module.runtime:type_name -> xyz.block.ftl.schema.v1.ModuleRuntime - 61, // 119: xyz.block.ftl.schema.v1.ModuleRuntime.base:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeBase - 65, // 120: xyz.block.ftl.schema.v1.ModuleRuntime.scaling:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeScaling - 62, // 121: xyz.block.ftl.schema.v1.ModuleRuntime.deployment:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeDeployment - 64, // 122: xyz.block.ftl.schema.v1.ModuleRuntime.runner:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeRunner - 91, // 123: xyz.block.ftl.schema.v1.ModuleRuntimeBase.create_time:type_name -> google.protobuf.Timestamp - 91, // 124: xyz.block.ftl.schema.v1.ModuleRuntimeDeployment.created_at:type_name -> google.protobuf.Timestamp - 91, // 125: xyz.block.ftl.schema.v1.ModuleRuntimeDeployment.activated_at:type_name -> google.protobuf.Timestamp - 2, // 126: xyz.block.ftl.schema.v1.ModuleRuntimeDeployment.state:type_name -> xyz.block.ftl.schema.v1.DeploymentState - 61, // 127: xyz.block.ftl.schema.v1.ModuleRuntimeEvent.base:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeBase - 65, // 128: xyz.block.ftl.schema.v1.ModuleRuntimeEvent.scaling:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeScaling - 62, // 129: xyz.block.ftl.schema.v1.ModuleRuntimeEvent.deployment:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeDeployment - 64, // 130: xyz.block.ftl.schema.v1.ModuleRuntimeEvent.runner:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeRunner - 67, // 131: xyz.block.ftl.schema.v1.Optional.pos:type_name -> xyz.block.ftl.schema.v1.Position - 81, // 132: xyz.block.ftl.schema.v1.Optional.type:type_name -> xyz.block.ftl.schema.v1.Type - 67, // 133: xyz.block.ftl.schema.v1.Ref.pos:type_name -> xyz.block.ftl.schema.v1.Position - 81, // 134: xyz.block.ftl.schema.v1.Ref.type_parameters:type_name -> xyz.block.ftl.schema.v1.Type - 21, // 135: xyz.block.ftl.schema.v1.Runtime.database_runtime:type_name -> xyz.block.ftl.schema.v1.DatabaseRuntime - 62, // 136: xyz.block.ftl.schema.v1.Runtime.module_runtime_deployment:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeDeployment - 64, // 137: xyz.block.ftl.schema.v1.Runtime.module_runtime_runner:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeRunner - 65, // 138: xyz.block.ftl.schema.v1.Runtime.module_runtime_scaling:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeScaling - 79, // 139: xyz.block.ftl.schema.v1.Runtime.topic_runtime:type_name -> xyz.block.ftl.schema.v1.TopicRuntime - 88, // 140: xyz.block.ftl.schema.v1.Runtime.verb_runtime:type_name -> xyz.block.ftl.schema.v1.VerbRuntime - 69, // 141: xyz.block.ftl.schema.v1.RuntimeElement.element:type_name -> xyz.block.ftl.schema.v1.Runtime - 23, // 142: xyz.block.ftl.schema.v1.RuntimeEvent.database_runtime_event:type_name -> xyz.block.ftl.schema.v1.DatabaseRuntimeEvent - 63, // 143: xyz.block.ftl.schema.v1.RuntimeEvent.module_runtime_event:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeEvent - 80, // 144: xyz.block.ftl.schema.v1.RuntimeEvent.topic_runtime_event:type_name -> xyz.block.ftl.schema.v1.TopicRuntimeEvent - 89, // 145: xyz.block.ftl.schema.v1.RuntimeEvent.verb_runtime_event:type_name -> xyz.block.ftl.schema.v1.VerbRuntimeEvent - 67, // 146: xyz.block.ftl.schema.v1.Schema.pos:type_name -> xyz.block.ftl.schema.v1.Position - 59, // 147: xyz.block.ftl.schema.v1.Schema.modules:type_name -> xyz.block.ftl.schema.v1.Module - 59, // 148: xyz.block.ftl.schema.v1.SchemaState.modules:type_name -> xyz.block.ftl.schema.v1.Module - 9, // 149: xyz.block.ftl.schema.v1.SchemaState.changesets:type_name -> xyz.block.ftl.schema.v1.Changeset - 71, // 150: xyz.block.ftl.schema.v1.SchemaState.runtime_events:type_name -> xyz.block.ftl.schema.v1.RuntimeEvent - 67, // 151: xyz.block.ftl.schema.v1.Secret.pos:type_name -> xyz.block.ftl.schema.v1.Position - 81, // 152: xyz.block.ftl.schema.v1.Secret.type:type_name -> xyz.block.ftl.schema.v1.Type - 67, // 153: xyz.block.ftl.schema.v1.String.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 154: xyz.block.ftl.schema.v1.StringValue.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 155: xyz.block.ftl.schema.v1.Time.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 156: xyz.block.ftl.schema.v1.Topic.pos:type_name -> xyz.block.ftl.schema.v1.Position - 79, // 157: xyz.block.ftl.schema.v1.Topic.runtime:type_name -> xyz.block.ftl.schema.v1.TopicRuntime - 81, // 158: xyz.block.ftl.schema.v1.Topic.event:type_name -> xyz.block.ftl.schema.v1.Type - 41, // 159: xyz.block.ftl.schema.v1.Topic.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata - 79, // 160: xyz.block.ftl.schema.v1.TopicRuntimeEvent.payload:type_name -> xyz.block.ftl.schema.v1.TopicRuntime - 5, // 161: xyz.block.ftl.schema.v1.Type.any:type_name -> xyz.block.ftl.schema.v1.Any - 6, // 162: xyz.block.ftl.schema.v1.Type.array:type_name -> xyz.block.ftl.schema.v1.Array - 7, // 163: xyz.block.ftl.schema.v1.Type.bool:type_name -> xyz.block.ftl.schema.v1.Bool - 8, // 164: xyz.block.ftl.schema.v1.Type.bytes:type_name -> xyz.block.ftl.schema.v1.Bytes - 34, // 165: xyz.block.ftl.schema.v1.Type.float:type_name -> xyz.block.ftl.schema.v1.Float - 38, // 166: xyz.block.ftl.schema.v1.Type.int:type_name -> xyz.block.ftl.schema.v1.Int - 40, // 167: xyz.block.ftl.schema.v1.Type.map:type_name -> xyz.block.ftl.schema.v1.Map - 66, // 168: xyz.block.ftl.schema.v1.Type.optional:type_name -> xyz.block.ftl.schema.v1.Optional - 68, // 169: xyz.block.ftl.schema.v1.Type.ref:type_name -> xyz.block.ftl.schema.v1.Ref - 75, // 170: xyz.block.ftl.schema.v1.Type.string:type_name -> xyz.block.ftl.schema.v1.String - 77, // 171: xyz.block.ftl.schema.v1.Type.time:type_name -> xyz.block.ftl.schema.v1.Time - 85, // 172: xyz.block.ftl.schema.v1.Type.unit:type_name -> xyz.block.ftl.schema.v1.Unit - 67, // 173: xyz.block.ftl.schema.v1.TypeAlias.pos:type_name -> xyz.block.ftl.schema.v1.Position - 81, // 174: xyz.block.ftl.schema.v1.TypeAlias.type:type_name -> xyz.block.ftl.schema.v1.Type - 41, // 175: xyz.block.ftl.schema.v1.TypeAlias.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata - 67, // 176: xyz.block.ftl.schema.v1.TypeParameter.pos:type_name -> xyz.block.ftl.schema.v1.Position - 67, // 177: xyz.block.ftl.schema.v1.TypeValue.pos:type_name -> xyz.block.ftl.schema.v1.Position - 81, // 178: xyz.block.ftl.schema.v1.TypeValue.value:type_name -> xyz.block.ftl.schema.v1.Type - 67, // 179: xyz.block.ftl.schema.v1.Unit.pos:type_name -> xyz.block.ftl.schema.v1.Position - 39, // 180: xyz.block.ftl.schema.v1.Value.int_value:type_name -> xyz.block.ftl.schema.v1.IntValue - 76, // 181: xyz.block.ftl.schema.v1.Value.string_value:type_name -> xyz.block.ftl.schema.v1.StringValue - 84, // 182: xyz.block.ftl.schema.v1.Value.type_value:type_name -> xyz.block.ftl.schema.v1.TypeValue - 67, // 183: xyz.block.ftl.schema.v1.Verb.pos:type_name -> xyz.block.ftl.schema.v1.Position - 81, // 184: xyz.block.ftl.schema.v1.Verb.request:type_name -> xyz.block.ftl.schema.v1.Type - 81, // 185: xyz.block.ftl.schema.v1.Verb.response:type_name -> xyz.block.ftl.schema.v1.Type - 41, // 186: xyz.block.ftl.schema.v1.Verb.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata - 88, // 187: xyz.block.ftl.schema.v1.Verb.runtime:type_name -> xyz.block.ftl.schema.v1.VerbRuntime - 90, // 188: xyz.block.ftl.schema.v1.VerbRuntime.subscription:type_name -> xyz.block.ftl.schema.v1.VerbRuntimeSubscription - 90, // 189: xyz.block.ftl.schema.v1.VerbRuntimeEvent.subscription:type_name -> xyz.block.ftl.schema.v1.VerbRuntimeSubscription - 190, // [190:190] is the sub-list for method output_type - 190, // [190:190] is the sub-list for method input_type - 190, // [190:190] is the sub-list for extension type_name - 190, // [190:190] is the sub-list for extension extendee - 0, // [0:190] is the sub-list for field type_name + 16, // 26: xyz.block.ftl.schema.v1.Decl.config:type_name -> xyz.block.ftl.schema.v1.Config + 18, // 27: xyz.block.ftl.schema.v1.Decl.data:type_name -> xyz.block.ftl.schema.v1.Data + 19, // 28: xyz.block.ftl.schema.v1.Decl.database:type_name -> xyz.block.ftl.schema.v1.Database + 26, // 29: xyz.block.ftl.schema.v1.Decl.enum:type_name -> xyz.block.ftl.schema.v1.Enum + 68, // 30: xyz.block.ftl.schema.v1.Decl.secret:type_name -> xyz.block.ftl.schema.v1.Secret + 72, // 31: xyz.block.ftl.schema.v1.Decl.topic:type_name -> xyz.block.ftl.schema.v1.Topic + 75, // 32: xyz.block.ftl.schema.v1.Decl.type_alias:type_name -> xyz.block.ftl.schema.v1.TypeAlias + 80, // 33: xyz.block.ftl.schema.v1.Decl.verb:type_name -> xyz.block.ftl.schema.v1.Verb + 55, // 34: xyz.block.ftl.schema.v1.DeploymentCreatedEvent.schema:type_name -> xyz.block.ftl.schema.v1.Module + 65, // 35: xyz.block.ftl.schema.v1.DeploymentRuntimeEvent.payload:type_name -> xyz.block.ftl.schema.v1.RuntimeElement + 62, // 36: xyz.block.ftl.schema.v1.Enum.pos:type_name -> xyz.block.ftl.schema.v1.Position + 74, // 37: xyz.block.ftl.schema.v1.Enum.type:type_name -> xyz.block.ftl.schema.v1.Type + 27, // 38: xyz.block.ftl.schema.v1.Enum.variants:type_name -> xyz.block.ftl.schema.v1.EnumVariant + 62, // 39: xyz.block.ftl.schema.v1.EnumVariant.pos:type_name -> xyz.block.ftl.schema.v1.Position + 79, // 40: xyz.block.ftl.schema.v1.EnumVariant.value:type_name -> xyz.block.ftl.schema.v1.Value + 10, // 41: xyz.block.ftl.schema.v1.Event.changeset_committed_event:type_name -> xyz.block.ftl.schema.v1.ChangesetCommittedEvent + 11, // 42: xyz.block.ftl.schema.v1.Event.changeset_created_event:type_name -> xyz.block.ftl.schema.v1.ChangesetCreatedEvent + 12, // 43: xyz.block.ftl.schema.v1.Event.changeset_drained_event:type_name -> xyz.block.ftl.schema.v1.ChangesetDrainedEvent + 13, // 44: xyz.block.ftl.schema.v1.Event.changeset_failed_event:type_name -> xyz.block.ftl.schema.v1.ChangesetFailedEvent + 14, // 45: xyz.block.ftl.schema.v1.Event.changeset_finalized_event:type_name -> xyz.block.ftl.schema.v1.ChangesetFinalizedEvent + 15, // 46: xyz.block.ftl.schema.v1.Event.changeset_prepared_event:type_name -> xyz.block.ftl.schema.v1.ChangesetPreparedEvent + 24, // 47: xyz.block.ftl.schema.v1.Event.deployment_created_event:type_name -> xyz.block.ftl.schema.v1.DeploymentCreatedEvent + 25, // 48: xyz.block.ftl.schema.v1.Event.deployment_runtime_event:type_name -> xyz.block.ftl.schema.v1.DeploymentRuntimeEvent + 62, // 49: xyz.block.ftl.schema.v1.Field.pos:type_name -> xyz.block.ftl.schema.v1.Position + 74, // 50: xyz.block.ftl.schema.v1.Field.type:type_name -> xyz.block.ftl.schema.v1.Type + 37, // 51: xyz.block.ftl.schema.v1.Field.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata + 62, // 52: xyz.block.ftl.schema.v1.Float.pos:type_name -> xyz.block.ftl.schema.v1.Position + 32, // 53: xyz.block.ftl.schema.v1.IngressPathComponent.ingress_path_literal:type_name -> xyz.block.ftl.schema.v1.IngressPathLiteral + 33, // 54: xyz.block.ftl.schema.v1.IngressPathComponent.ingress_path_parameter:type_name -> xyz.block.ftl.schema.v1.IngressPathParameter + 62, // 55: xyz.block.ftl.schema.v1.IngressPathLiteral.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 56: xyz.block.ftl.schema.v1.IngressPathParameter.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 57: xyz.block.ftl.schema.v1.Int.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 58: xyz.block.ftl.schema.v1.IntValue.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 59: xyz.block.ftl.schema.v1.Map.pos:type_name -> xyz.block.ftl.schema.v1.Position + 74, // 60: xyz.block.ftl.schema.v1.Map.key:type_name -> xyz.block.ftl.schema.v1.Type + 74, // 61: xyz.block.ftl.schema.v1.Map.value:type_name -> xyz.block.ftl.schema.v1.Type + 38, // 62: xyz.block.ftl.schema.v1.Metadata.alias:type_name -> xyz.block.ftl.schema.v1.MetadataAlias + 39, // 63: xyz.block.ftl.schema.v1.Metadata.artefact:type_name -> xyz.block.ftl.schema.v1.MetadataArtefact + 40, // 64: xyz.block.ftl.schema.v1.Metadata.calls:type_name -> xyz.block.ftl.schema.v1.MetadataCalls + 41, // 65: xyz.block.ftl.schema.v1.Metadata.config:type_name -> xyz.block.ftl.schema.v1.MetadataConfig + 42, // 66: xyz.block.ftl.schema.v1.Metadata.cron_job:type_name -> xyz.block.ftl.schema.v1.MetadataCronJob + 43, // 67: xyz.block.ftl.schema.v1.Metadata.databases:type_name -> xyz.block.ftl.schema.v1.MetadataDatabases + 44, // 68: xyz.block.ftl.schema.v1.Metadata.encoding:type_name -> xyz.block.ftl.schema.v1.MetadataEncoding + 45, // 69: xyz.block.ftl.schema.v1.Metadata.ingress:type_name -> xyz.block.ftl.schema.v1.MetadataIngress + 46, // 70: xyz.block.ftl.schema.v1.Metadata.partitions:type_name -> xyz.block.ftl.schema.v1.MetadataPartitions + 47, // 71: xyz.block.ftl.schema.v1.Metadata.publisher:type_name -> xyz.block.ftl.schema.v1.MetadataPublisher + 48, // 72: xyz.block.ftl.schema.v1.Metadata.retry:type_name -> xyz.block.ftl.schema.v1.MetadataRetry + 49, // 73: xyz.block.ftl.schema.v1.Metadata.sql_column:type_name -> xyz.block.ftl.schema.v1.MetadataSQLColumn + 50, // 74: xyz.block.ftl.schema.v1.Metadata.sql_migration:type_name -> xyz.block.ftl.schema.v1.MetadataSQLMigration + 51, // 75: xyz.block.ftl.schema.v1.Metadata.sql_query:type_name -> xyz.block.ftl.schema.v1.MetadataSQLQuery + 52, // 76: xyz.block.ftl.schema.v1.Metadata.secrets:type_name -> xyz.block.ftl.schema.v1.MetadataSecrets + 53, // 77: xyz.block.ftl.schema.v1.Metadata.subscriber:type_name -> xyz.block.ftl.schema.v1.MetadataSubscriber + 54, // 78: xyz.block.ftl.schema.v1.Metadata.type_map:type_name -> xyz.block.ftl.schema.v1.MetadataTypeMap + 62, // 79: xyz.block.ftl.schema.v1.MetadataAlias.pos:type_name -> xyz.block.ftl.schema.v1.Position + 0, // 80: xyz.block.ftl.schema.v1.MetadataAlias.kind:type_name -> xyz.block.ftl.schema.v1.AliasKind + 62, // 81: xyz.block.ftl.schema.v1.MetadataArtefact.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 82: xyz.block.ftl.schema.v1.MetadataCalls.pos:type_name -> xyz.block.ftl.schema.v1.Position + 63, // 83: xyz.block.ftl.schema.v1.MetadataCalls.calls:type_name -> xyz.block.ftl.schema.v1.Ref + 62, // 84: xyz.block.ftl.schema.v1.MetadataConfig.pos:type_name -> xyz.block.ftl.schema.v1.Position + 63, // 85: xyz.block.ftl.schema.v1.MetadataConfig.config:type_name -> xyz.block.ftl.schema.v1.Ref + 62, // 86: xyz.block.ftl.schema.v1.MetadataCronJob.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 87: xyz.block.ftl.schema.v1.MetadataDatabases.pos:type_name -> xyz.block.ftl.schema.v1.Position + 63, // 88: xyz.block.ftl.schema.v1.MetadataDatabases.calls:type_name -> xyz.block.ftl.schema.v1.Ref + 62, // 89: xyz.block.ftl.schema.v1.MetadataEncoding.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 90: xyz.block.ftl.schema.v1.MetadataIngress.pos:type_name -> xyz.block.ftl.schema.v1.Position + 31, // 91: xyz.block.ftl.schema.v1.MetadataIngress.path:type_name -> xyz.block.ftl.schema.v1.IngressPathComponent + 62, // 92: xyz.block.ftl.schema.v1.MetadataPartitions.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 93: xyz.block.ftl.schema.v1.MetadataPublisher.pos:type_name -> xyz.block.ftl.schema.v1.Position + 63, // 94: xyz.block.ftl.schema.v1.MetadataPublisher.topics:type_name -> xyz.block.ftl.schema.v1.Ref + 62, // 95: xyz.block.ftl.schema.v1.MetadataRetry.pos:type_name -> xyz.block.ftl.schema.v1.Position + 63, // 96: xyz.block.ftl.schema.v1.MetadataRetry.catch:type_name -> xyz.block.ftl.schema.v1.Ref + 62, // 97: xyz.block.ftl.schema.v1.MetadataSQLColumn.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 98: xyz.block.ftl.schema.v1.MetadataSQLMigration.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 99: xyz.block.ftl.schema.v1.MetadataSQLQuery.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 100: xyz.block.ftl.schema.v1.MetadataSecrets.pos:type_name -> xyz.block.ftl.schema.v1.Position + 63, // 101: xyz.block.ftl.schema.v1.MetadataSecrets.secrets:type_name -> xyz.block.ftl.schema.v1.Ref + 62, // 102: xyz.block.ftl.schema.v1.MetadataSubscriber.pos:type_name -> xyz.block.ftl.schema.v1.Position + 63, // 103: xyz.block.ftl.schema.v1.MetadataSubscriber.topic:type_name -> xyz.block.ftl.schema.v1.Ref + 3, // 104: xyz.block.ftl.schema.v1.MetadataSubscriber.from_offset:type_name -> xyz.block.ftl.schema.v1.FromOffset + 62, // 105: xyz.block.ftl.schema.v1.MetadataTypeMap.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 106: xyz.block.ftl.schema.v1.Module.pos:type_name -> xyz.block.ftl.schema.v1.Position + 37, // 107: xyz.block.ftl.schema.v1.Module.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata + 23, // 108: xyz.block.ftl.schema.v1.Module.decls:type_name -> xyz.block.ftl.schema.v1.Decl + 56, // 109: xyz.block.ftl.schema.v1.Module.runtime:type_name -> xyz.block.ftl.schema.v1.ModuleRuntime + 57, // 110: xyz.block.ftl.schema.v1.ModuleRuntime.base:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeBase + 60, // 111: xyz.block.ftl.schema.v1.ModuleRuntime.scaling:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeScaling + 58, // 112: xyz.block.ftl.schema.v1.ModuleRuntime.deployment:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeDeployment + 59, // 113: xyz.block.ftl.schema.v1.ModuleRuntime.runner:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeRunner + 83, // 114: xyz.block.ftl.schema.v1.ModuleRuntimeBase.create_time:type_name -> google.protobuf.Timestamp + 83, // 115: xyz.block.ftl.schema.v1.ModuleRuntimeDeployment.created_at:type_name -> google.protobuf.Timestamp + 83, // 116: xyz.block.ftl.schema.v1.ModuleRuntimeDeployment.activated_at:type_name -> google.protobuf.Timestamp + 2, // 117: xyz.block.ftl.schema.v1.ModuleRuntimeDeployment.state:type_name -> xyz.block.ftl.schema.v1.DeploymentState + 62, // 118: xyz.block.ftl.schema.v1.Optional.pos:type_name -> xyz.block.ftl.schema.v1.Position + 74, // 119: xyz.block.ftl.schema.v1.Optional.type:type_name -> xyz.block.ftl.schema.v1.Type + 62, // 120: xyz.block.ftl.schema.v1.Ref.pos:type_name -> xyz.block.ftl.schema.v1.Position + 74, // 121: xyz.block.ftl.schema.v1.Ref.type_parameters:type_name -> xyz.block.ftl.schema.v1.Type + 21, // 122: xyz.block.ftl.schema.v1.Runtime.database_runtime:type_name -> xyz.block.ftl.schema.v1.DatabaseRuntime + 58, // 123: xyz.block.ftl.schema.v1.Runtime.module_runtime_deployment:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeDeployment + 59, // 124: xyz.block.ftl.schema.v1.Runtime.module_runtime_runner:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeRunner + 60, // 125: xyz.block.ftl.schema.v1.Runtime.module_runtime_scaling:type_name -> xyz.block.ftl.schema.v1.ModuleRuntimeScaling + 73, // 126: xyz.block.ftl.schema.v1.Runtime.topic_runtime:type_name -> xyz.block.ftl.schema.v1.TopicRuntime + 81, // 127: xyz.block.ftl.schema.v1.Runtime.verb_runtime:type_name -> xyz.block.ftl.schema.v1.VerbRuntime + 64, // 128: xyz.block.ftl.schema.v1.RuntimeElement.element:type_name -> xyz.block.ftl.schema.v1.Runtime + 62, // 129: xyz.block.ftl.schema.v1.Schema.pos:type_name -> xyz.block.ftl.schema.v1.Position + 55, // 130: xyz.block.ftl.schema.v1.Schema.modules:type_name -> xyz.block.ftl.schema.v1.Module + 55, // 131: xyz.block.ftl.schema.v1.SchemaState.modules:type_name -> xyz.block.ftl.schema.v1.Module + 9, // 132: xyz.block.ftl.schema.v1.SchemaState.changesets:type_name -> xyz.block.ftl.schema.v1.Changeset + 25, // 133: xyz.block.ftl.schema.v1.SchemaState.runtime_events:type_name -> xyz.block.ftl.schema.v1.DeploymentRuntimeEvent + 62, // 134: xyz.block.ftl.schema.v1.Secret.pos:type_name -> xyz.block.ftl.schema.v1.Position + 74, // 135: xyz.block.ftl.schema.v1.Secret.type:type_name -> xyz.block.ftl.schema.v1.Type + 62, // 136: xyz.block.ftl.schema.v1.String.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 137: xyz.block.ftl.schema.v1.StringValue.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 138: xyz.block.ftl.schema.v1.Time.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 139: xyz.block.ftl.schema.v1.Topic.pos:type_name -> xyz.block.ftl.schema.v1.Position + 73, // 140: xyz.block.ftl.schema.v1.Topic.runtime:type_name -> xyz.block.ftl.schema.v1.TopicRuntime + 74, // 141: xyz.block.ftl.schema.v1.Topic.event:type_name -> xyz.block.ftl.schema.v1.Type + 37, // 142: xyz.block.ftl.schema.v1.Topic.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata + 5, // 143: xyz.block.ftl.schema.v1.Type.any:type_name -> xyz.block.ftl.schema.v1.Any + 6, // 144: xyz.block.ftl.schema.v1.Type.array:type_name -> xyz.block.ftl.schema.v1.Array + 7, // 145: xyz.block.ftl.schema.v1.Type.bool:type_name -> xyz.block.ftl.schema.v1.Bool + 8, // 146: xyz.block.ftl.schema.v1.Type.bytes:type_name -> xyz.block.ftl.schema.v1.Bytes + 30, // 147: xyz.block.ftl.schema.v1.Type.float:type_name -> xyz.block.ftl.schema.v1.Float + 34, // 148: xyz.block.ftl.schema.v1.Type.int:type_name -> xyz.block.ftl.schema.v1.Int + 36, // 149: xyz.block.ftl.schema.v1.Type.map:type_name -> xyz.block.ftl.schema.v1.Map + 61, // 150: xyz.block.ftl.schema.v1.Type.optional:type_name -> xyz.block.ftl.schema.v1.Optional + 63, // 151: xyz.block.ftl.schema.v1.Type.ref:type_name -> xyz.block.ftl.schema.v1.Ref + 69, // 152: xyz.block.ftl.schema.v1.Type.string:type_name -> xyz.block.ftl.schema.v1.String + 71, // 153: xyz.block.ftl.schema.v1.Type.time:type_name -> xyz.block.ftl.schema.v1.Time + 78, // 154: xyz.block.ftl.schema.v1.Type.unit:type_name -> xyz.block.ftl.schema.v1.Unit + 62, // 155: xyz.block.ftl.schema.v1.TypeAlias.pos:type_name -> xyz.block.ftl.schema.v1.Position + 74, // 156: xyz.block.ftl.schema.v1.TypeAlias.type:type_name -> xyz.block.ftl.schema.v1.Type + 37, // 157: xyz.block.ftl.schema.v1.TypeAlias.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata + 62, // 158: xyz.block.ftl.schema.v1.TypeParameter.pos:type_name -> xyz.block.ftl.schema.v1.Position + 62, // 159: xyz.block.ftl.schema.v1.TypeValue.pos:type_name -> xyz.block.ftl.schema.v1.Position + 74, // 160: xyz.block.ftl.schema.v1.TypeValue.value:type_name -> xyz.block.ftl.schema.v1.Type + 62, // 161: xyz.block.ftl.schema.v1.Unit.pos:type_name -> xyz.block.ftl.schema.v1.Position + 35, // 162: xyz.block.ftl.schema.v1.Value.int_value:type_name -> xyz.block.ftl.schema.v1.IntValue + 70, // 163: xyz.block.ftl.schema.v1.Value.string_value:type_name -> xyz.block.ftl.schema.v1.StringValue + 77, // 164: xyz.block.ftl.schema.v1.Value.type_value:type_name -> xyz.block.ftl.schema.v1.TypeValue + 62, // 165: xyz.block.ftl.schema.v1.Verb.pos:type_name -> xyz.block.ftl.schema.v1.Position + 74, // 166: xyz.block.ftl.schema.v1.Verb.request:type_name -> xyz.block.ftl.schema.v1.Type + 74, // 167: xyz.block.ftl.schema.v1.Verb.response:type_name -> xyz.block.ftl.schema.v1.Type + 37, // 168: xyz.block.ftl.schema.v1.Verb.metadata:type_name -> xyz.block.ftl.schema.v1.Metadata + 81, // 169: xyz.block.ftl.schema.v1.Verb.runtime:type_name -> xyz.block.ftl.schema.v1.VerbRuntime + 82, // 170: xyz.block.ftl.schema.v1.VerbRuntime.subscription:type_name -> xyz.block.ftl.schema.v1.VerbRuntimeSubscription + 171, // [171:171] is the sub-list for method output_type + 171, // [171:171] is the sub-list for method input_type + 171, // [171:171] is the sub-list for extension type_name + 171, // [171:171] is the sub-list for extension extendee + 0, // [0:171] is the sub-list for field type_name } func init() { file_xyz_block_ftl_schema_v1_schema_proto_init() } @@ -7983,7 +7084,7 @@ func file_xyz_block_ftl_schema_v1_schema_proto_init() { (*DatabaseConnector_DsnDatabaseConnector)(nil), } file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[17].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[20].OneofWrappers = []any{ + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[19].OneofWrappers = []any{ (*Decl_Config)(nil), (*Decl_Data)(nil), (*Decl_Database)(nil), @@ -7993,37 +7094,30 @@ func file_xyz_block_ftl_schema_v1_schema_proto_init() { (*Decl_TypeAlias)(nil), (*Decl_Verb)(nil), } - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[26].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[27].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[28].OneofWrappers = []any{ + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[22].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[23].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[24].OneofWrappers = []any{ (*Event_ChangesetCommittedEvent)(nil), (*Event_ChangesetCreatedEvent)(nil), (*Event_ChangesetDrainedEvent)(nil), (*Event_ChangesetFailedEvent)(nil), (*Event_ChangesetFinalizedEvent)(nil), (*Event_ChangesetPreparedEvent)(nil), - (*Event_DatabaseRuntimeEvent)(nil), - (*Event_DeploymentActivatedEvent)(nil), (*Event_DeploymentCreatedEvent)(nil), - (*Event_DeploymentDeactivatedEvent)(nil), - (*Event_DeploymentReplicasUpdatedEvent)(nil), - (*Event_DeploymentSchemaUpdatedEvent)(nil), - (*Event_ModuleRuntimeEvent)(nil), - (*Event_TopicRuntimeEvent)(nil), - (*Event_VerbRuntimeEvent)(nil), + (*Event_DeploymentRuntimeEvent)(nil), } - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[29].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[30].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[31].OneofWrappers = []any{ + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[25].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[26].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[27].OneofWrappers = []any{ (*IngressPathComponent_IngressPathLiteral)(nil), (*IngressPathComponent_IngressPathParameter)(nil), } + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[28].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[29].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[30].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[31].OneofWrappers = []any{} file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[32].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[33].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[34].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[35].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[36].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[37].OneofWrappers = []any{ + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[33].OneofWrappers = []any{ (*Metadata_Alias)(nil), (*Metadata_Artefact)(nil), (*Metadata_Calls)(nil), @@ -8042,6 +7136,10 @@ func file_xyz_block_ftl_schema_v1_schema_proto_init() { (*Metadata_Subscriber)(nil), (*Metadata_TypeMap)(nil), } + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[34].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[35].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[36].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[37].OneofWrappers = []any{} file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[38].OneofWrappers = []any{} file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[39].OneofWrappers = []any{} file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[40].OneofWrappers = []any{} @@ -8059,14 +7157,9 @@ func file_xyz_block_ftl_schema_v1_schema_proto_init() { file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[52].OneofWrappers = []any{} file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[53].OneofWrappers = []any{} file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[54].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[55].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[56].OneofWrappers = []any{} file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[57].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[58].OneofWrappers = []any{} file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[59].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[62].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[64].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[65].OneofWrappers = []any{ + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[60].OneofWrappers = []any{ (*Runtime_DatabaseRuntime)(nil), (*Runtime_ModuleRuntimeDeployment)(nil), (*Runtime_ModuleRuntimeRunner)(nil), @@ -8074,20 +7167,14 @@ func file_xyz_block_ftl_schema_v1_schema_proto_init() { (*Runtime_TopicRuntime)(nil), (*Runtime_VerbRuntime)(nil), } + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[61].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[62].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[64].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[65].OneofWrappers = []any{} file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[66].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[67].OneofWrappers = []any{ - (*RuntimeEvent_DatabaseRuntimeEvent)(nil), - (*RuntimeEvent_ModuleRuntimeEvent)(nil), - (*RuntimeEvent_TopicRuntimeEvent)(nil), - (*RuntimeEvent_VerbRuntimeEvent)(nil), - } + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[67].OneofWrappers = []any{} file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[68].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[70].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[71].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[72].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[73].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[74].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[77].OneofWrappers = []any{ + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[70].OneofWrappers = []any{ (*Type_Any)(nil), (*Type_Array)(nil), (*Type_Bool)(nil), @@ -8101,25 +7188,24 @@ func file_xyz_block_ftl_schema_v1_schema_proto_init() { (*Type_Time)(nil), (*Type_Unit)(nil), } - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[78].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[79].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[80].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[81].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[82].OneofWrappers = []any{ + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[71].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[72].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[73].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[74].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[75].OneofWrappers = []any{ (*Value_IntValue)(nil), (*Value_StringValue)(nil), (*Value_TypeValue)(nil), } - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[83].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[84].OneofWrappers = []any{} - file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[85].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[76].OneofWrappers = []any{} + file_xyz_block_ftl_schema_v1_schema_proto_msgTypes[77].OneofWrappers = []any{} type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_xyz_block_ftl_schema_v1_schema_proto_rawDesc, NumEnums: 4, - NumMessages: 87, + NumMessages: 79, NumExtensions: 0, NumServices: 0, }, diff --git a/common/protos/xyz/block/ftl/schema/v1/schema.proto b/common/protos/xyz/block/ftl/schema/v1/schema.proto index 1984ac56c..b65a1729c 100644 --- a/common/protos/xyz/block/ftl/schema/v1/schema.proto +++ b/common/protos/xyz/block/ftl/schema/v1/schema.proto @@ -132,13 +132,6 @@ message DatabaseRuntimeConnections { DatabaseConnector write = 2; } -message DatabaseRuntimeEvent { - string deployment = 1; - string changeset = 2; - string id = 3; - DatabaseRuntimeConnections connections = 4; -} - // Decl represents user-defined data types in the schema grammar. message Decl { oneof value { @@ -153,35 +146,15 @@ message Decl { } } -message DeploymentActivatedEvent { - string key = 1; - google.protobuf.Timestamp activated_at = 2; - int64 min_replicas = 3; - string changeset = 4; -} - message DeploymentCreatedEvent { string key = 1; Module schema = 2; string changeset = 3; } -message DeploymentDeactivatedEvent { - string key = 1; - bool module_removed = 2; - string changeset = 3; -} - -message DeploymentReplicasUpdatedEvent { - string key = 1; - int64 replicas = 2; - string changeset = 3; -} - -message DeploymentSchemaUpdatedEvent { - string key = 1; - Module schema = 2; - string changeset = 3; +message DeploymentRuntimeEvent { + RuntimeElement payload = 1; + string changeset = 2; } enum DeploymentState { @@ -214,21 +187,14 @@ message EnumVariant { message Event { oneof value { - ChangesetCommittedEvent changeset_committed_event = 12; - ChangesetCreatedEvent changeset_created_event = 10; - ChangesetDrainedEvent changeset_drained_event = 13; - ChangesetFailedEvent changeset_failed_event = 15; - ChangesetFinalizedEvent changeset_finalized_event = 14; - ChangesetPreparedEvent changeset_prepared_event = 11; - DatabaseRuntimeEvent database_runtime_event = 8; - DeploymentActivatedEvent deployment_activated_event = 4; + ChangesetCommittedEvent changeset_committed_event = 5; + ChangesetCreatedEvent changeset_created_event = 3; + ChangesetDrainedEvent changeset_drained_event = 6; + ChangesetFailedEvent changeset_failed_event = 8; + ChangesetFinalizedEvent changeset_finalized_event = 7; + ChangesetPreparedEvent changeset_prepared_event = 4; DeploymentCreatedEvent deployment_created_event = 1; - DeploymentDeactivatedEvent deployment_deactivated_event = 5; - DeploymentReplicasUpdatedEvent deployment_replicas_updated_event = 3; - DeploymentSchemaUpdatedEvent deployment_schema_updated_event = 2; - ModuleRuntimeEvent module_runtime_event = 9; - TopicRuntimeEvent topic_runtime_event = 7; - VerbRuntimeEvent verb_runtime_event = 6; + DeploymentRuntimeEvent deployment_runtime_event = 2; } } @@ -442,15 +408,6 @@ message ModuleRuntimeDeployment { DeploymentState state = 5; } -message ModuleRuntimeEvent { - string key = 1; - string changeset = 2; - optional ModuleRuntimeBase base = 3; - optional ModuleRuntimeScaling scaling = 4; - optional ModuleRuntimeDeployment deployment = 5; - optional ModuleRuntimeRunner runner = 6; -} - message ModuleRuntimeRunner { string endpoint = 1; } @@ -496,15 +453,6 @@ message RuntimeElement { optional string name = 3; } -message RuntimeEvent { - oneof value { - DatabaseRuntimeEvent database_runtime_event = 8; - ModuleRuntimeEvent module_runtime_event = 9; - TopicRuntimeEvent topic_runtime_event = 7; - VerbRuntimeEvent verb_runtime_event = 6; - } -} - message Schema { optional Position pos = 1; repeated Module modules = 2; @@ -514,7 +462,7 @@ message Schema { message SchemaState { repeated Module modules = 1; repeated Changeset changesets = 2; - repeated RuntimeEvent runtime_events = 3; + repeated DeploymentRuntimeEvent runtime_events = 3; } message Secret { @@ -552,13 +500,6 @@ message TopicRuntime { string topic_id = 2; } -message TopicRuntimeEvent { - string deployment = 1; - string changeset = 2; - string id = 3; - TopicRuntime payload = 4; -} - // Type represents a Type Node in the schema grammar. message Type { oneof value { @@ -624,13 +565,6 @@ message VerbRuntime { optional VerbRuntimeSubscription subscription = 1; } -message VerbRuntimeEvent { - string deployment = 1; - string changeset = 2; - string id = 3; - optional VerbRuntimeSubscription subscription = 4; -} - message VerbRuntimeSubscription { repeated string kafka_brokers = 1; } diff --git a/common/schema/go2proto.to.go b/common/schema/go2proto.to.go index cfddd9aa3..3bfa9db75 100644 --- a/common/schema/go2proto.to.go +++ b/common/schema/go2proto.to.go @@ -707,42 +707,6 @@ func DatabaseRuntimeConnectionsFromProto(v *destpb.DatabaseRuntimeConnections) ( return out, nil } -func (x *DatabaseRuntimeEvent) ToProto() *destpb.DatabaseRuntimeEvent { - if x == nil { - return nil - } - return &destpb.DatabaseRuntimeEvent{ - Deployment: orZero(ptr(string(protoMust(x.Deployment.MarshalText())))), - Changeset: orZero(ptr(string(protoMust(x.Changeset.MarshalText())))), - Id: orZero(ptr(string(x.ID))), - Connections: x.Connections.ToProto(), - } -} - -func DatabaseRuntimeEventFromProto(v *destpb.DatabaseRuntimeEvent) (out *DatabaseRuntimeEvent, err error) { - if v == nil { - return nil, nil - } - - out = &DatabaseRuntimeEvent{} - if out.Deployment, err = orZeroR(unmarshallText([]byte(v.Deployment), &out.Deployment)).Result(); err != nil { - return nil, fmt.Errorf("Deployment: %w", err) - } - if out.Changeset, err = unmarshallText([]byte(v.Changeset), out.Changeset).Result(); err != nil { - return nil, fmt.Errorf("Changeset: %w", err) - } - if out.ID, err = orZeroR(result.From(ptr(string(v.Id)), nil)).Result(); err != nil { - return nil, fmt.Errorf("ID: %w", err) - } - if out.Connections, err = result.From(DatabaseRuntimeConnectionsFromProto(v.Connections)).Result(); err != nil { - return nil, fmt.Errorf("Connections: %w", err) - } - if err := out.Validate(); err != nil { - return nil, err - } - return out, nil -} - // DeclToProto converts a Decl sum type to a protobuf message. func DeclToProto(value Decl) *destpb.Decl { switch value := value.(type) { @@ -811,42 +775,6 @@ func DeclFromProto(v *destpb.Decl) (Decl, error) { } } -func (x *DeploymentActivatedEvent) ToProto() *destpb.DeploymentActivatedEvent { - if x == nil { - return nil - } - return &destpb.DeploymentActivatedEvent{ - Key: orZero(ptr(string(protoMust(x.Key.MarshalText())))), - ActivatedAt: timestamppb.New(x.ActivatedAt), - MinReplicas: orZero(ptr(int64(x.MinReplicas))), - Changeset: orZero(ptr(string(protoMust(x.Changeset.MarshalText())))), - } -} - -func DeploymentActivatedEventFromProto(v *destpb.DeploymentActivatedEvent) (out *DeploymentActivatedEvent, err error) { - if v == nil { - return nil, nil - } - - out = &DeploymentActivatedEvent{} - if out.Key, err = orZeroR(unmarshallText([]byte(v.Key), &out.Key)).Result(); err != nil { - return nil, fmt.Errorf("Key: %w", err) - } - if out.ActivatedAt, err = orZeroR(result.From(setNil(ptr(v.ActivatedAt.AsTime()), v.ActivatedAt), nil)).Result(); err != nil { - return nil, fmt.Errorf("ActivatedAt: %w", err) - } - if out.MinReplicas, err = orZeroR(result.From(ptr(int(v.MinReplicas)), nil)).Result(); err != nil { - return nil, fmt.Errorf("MinReplicas: %w", err) - } - if out.Changeset, err = unmarshallText([]byte(v.Changeset), out.Changeset).Result(); err != nil { - return nil, fmt.Errorf("Changeset: %w", err) - } - if err := out.Validate(); err != nil { - return nil, err - } - return out, nil -} - func (x *DeploymentCreatedEvent) ToProto() *destpb.DeploymentCreatedEvent { if x == nil { return nil @@ -879,60 +807,24 @@ func DeploymentCreatedEventFromProto(v *destpb.DeploymentCreatedEvent) (out *Dep return out, nil } -func (x *DeploymentDeactivatedEvent) ToProto() *destpb.DeploymentDeactivatedEvent { - if x == nil { - return nil - } - return &destpb.DeploymentDeactivatedEvent{ - Key: orZero(ptr(string(protoMust(x.Key.MarshalText())))), - ModuleRemoved: orZero(ptr(bool(x.ModuleRemoved))), - Changeset: orZero(ptr(string(protoMust(x.Changeset.MarshalText())))), - } -} - -func DeploymentDeactivatedEventFromProto(v *destpb.DeploymentDeactivatedEvent) (out *DeploymentDeactivatedEvent, err error) { - if v == nil { - return nil, nil - } - - out = &DeploymentDeactivatedEvent{} - if out.Key, err = orZeroR(unmarshallText([]byte(v.Key), &out.Key)).Result(); err != nil { - return nil, fmt.Errorf("Key: %w", err) - } - if out.ModuleRemoved, err = orZeroR(result.From(ptr(bool(v.ModuleRemoved)), nil)).Result(); err != nil { - return nil, fmt.Errorf("ModuleRemoved: %w", err) - } - if out.Changeset, err = unmarshallText([]byte(v.Changeset), out.Changeset).Result(); err != nil { - return nil, fmt.Errorf("Changeset: %w", err) - } - if err := out.Validate(); err != nil { - return nil, err - } - return out, nil -} - -func (x *DeploymentReplicasUpdatedEvent) ToProto() *destpb.DeploymentReplicasUpdatedEvent { +func (x *DeploymentRuntimeEvent) ToProto() *destpb.DeploymentRuntimeEvent { if x == nil { return nil } - return &destpb.DeploymentReplicasUpdatedEvent{ - Key: orZero(ptr(string(protoMust(x.Key.MarshalText())))), - Replicas: orZero(ptr(int64(x.Replicas))), + return &destpb.DeploymentRuntimeEvent{ + Payload: x.Payload.ToProto(), Changeset: orZero(ptr(string(protoMust(x.Changeset.MarshalText())))), } } -func DeploymentReplicasUpdatedEventFromProto(v *destpb.DeploymentReplicasUpdatedEvent) (out *DeploymentReplicasUpdatedEvent, err error) { +func DeploymentRuntimeEventFromProto(v *destpb.DeploymentRuntimeEvent) (out *DeploymentRuntimeEvent, err error) { if v == nil { return nil, nil } - out = &DeploymentReplicasUpdatedEvent{} - if out.Key, err = orZeroR(unmarshallText([]byte(v.Key), &out.Key)).Result(); err != nil { - return nil, fmt.Errorf("Key: %w", err) - } - if out.Replicas, err = orZeroR(result.From(ptr(int(v.Replicas)), nil)).Result(); err != nil { - return nil, fmt.Errorf("Replicas: %w", err) + out = &DeploymentRuntimeEvent{} + if out.Payload, err = result.From(RuntimeElementFromProto(v.Payload)).Result(); err != nil { + return nil, fmt.Errorf("Payload: %w", err) } if out.Changeset, err = unmarshallText([]byte(v.Changeset), out.Changeset).Result(); err != nil { return nil, fmt.Errorf("Changeset: %w", err) @@ -943,38 +835,6 @@ func DeploymentReplicasUpdatedEventFromProto(v *destpb.DeploymentReplicasUpdated return out, nil } -func (x *DeploymentSchemaUpdatedEvent) ToProto() *destpb.DeploymentSchemaUpdatedEvent { - if x == nil { - return nil - } - return &destpb.DeploymentSchemaUpdatedEvent{ - Key: orZero(ptr(string(protoMust(x.Key.MarshalText())))), - Schema: x.Schema.ToProto(), - Changeset: orZero(ptr(string(protoMust(x.Changeset.MarshalText())))), - } -} - -func DeploymentSchemaUpdatedEventFromProto(v *destpb.DeploymentSchemaUpdatedEvent) (out *DeploymentSchemaUpdatedEvent, err error) { - if v == nil { - return nil, nil - } - - out = &DeploymentSchemaUpdatedEvent{} - if out.Key, err = orZeroR(unmarshallText([]byte(v.Key), &out.Key)).Result(); err != nil { - return nil, fmt.Errorf("Key: %w", err) - } - if out.Schema, err = result.From(ModuleFromProto(v.Schema)).Result(); err != nil { - return nil, fmt.Errorf("Schema: %w", err) - } - if out.Changeset, err = orZeroR(unmarshallText([]byte(v.Changeset), &out.Changeset)).Result(); err != nil { - return nil, fmt.Errorf("Changeset: %w", err) - } - if err := out.Validate(); err != nil { - return nil, err - } - return out, nil -} - func (x DeploymentState) ToProto() destpb.DeploymentState { return destpb.DeploymentState(x) } @@ -1087,41 +947,13 @@ func EventToProto(value Event) *destpb.Event { return &destpb.Event{ Value: &destpb.Event_ChangesetPreparedEvent{value.ToProto()}, } - case *DatabaseRuntimeEvent: - return &destpb.Event{ - Value: &destpb.Event_DatabaseRuntimeEvent{value.ToProto()}, - } - case *DeploymentActivatedEvent: - return &destpb.Event{ - Value: &destpb.Event_DeploymentActivatedEvent{value.ToProto()}, - } case *DeploymentCreatedEvent: return &destpb.Event{ Value: &destpb.Event_DeploymentCreatedEvent{value.ToProto()}, } - case *DeploymentDeactivatedEvent: + case *DeploymentRuntimeEvent: return &destpb.Event{ - Value: &destpb.Event_DeploymentDeactivatedEvent{value.ToProto()}, - } - case *DeploymentReplicasUpdatedEvent: - return &destpb.Event{ - Value: &destpb.Event_DeploymentReplicasUpdatedEvent{value.ToProto()}, - } - case *DeploymentSchemaUpdatedEvent: - return &destpb.Event{ - Value: &destpb.Event_DeploymentSchemaUpdatedEvent{value.ToProto()}, - } - case *ModuleRuntimeEvent: - return &destpb.Event{ - Value: &destpb.Event_ModuleRuntimeEvent{value.ToProto()}, - } - case *TopicRuntimeEvent: - return &destpb.Event{ - Value: &destpb.Event_TopicRuntimeEvent{value.ToProto()}, - } - case *VerbRuntimeEvent: - return &destpb.Event{ - Value: &destpb.Event_VerbRuntimeEvent{value.ToProto()}, + Value: &destpb.Event_DeploymentRuntimeEvent{value.ToProto()}, } default: panic(fmt.Sprintf("unknown variant: %T", value)) @@ -1145,24 +977,10 @@ func EventFromProto(v *destpb.Event) (Event, error) { return ChangesetFinalizedEventFromProto(v.GetChangesetFinalizedEvent()) case *destpb.Event_ChangesetPreparedEvent: return ChangesetPreparedEventFromProto(v.GetChangesetPreparedEvent()) - case *destpb.Event_DatabaseRuntimeEvent: - return DatabaseRuntimeEventFromProto(v.GetDatabaseRuntimeEvent()) - case *destpb.Event_DeploymentActivatedEvent: - return DeploymentActivatedEventFromProto(v.GetDeploymentActivatedEvent()) case *destpb.Event_DeploymentCreatedEvent: return DeploymentCreatedEventFromProto(v.GetDeploymentCreatedEvent()) - case *destpb.Event_DeploymentDeactivatedEvent: - return DeploymentDeactivatedEventFromProto(v.GetDeploymentDeactivatedEvent()) - case *destpb.Event_DeploymentReplicasUpdatedEvent: - return DeploymentReplicasUpdatedEventFromProto(v.GetDeploymentReplicasUpdatedEvent()) - case *destpb.Event_DeploymentSchemaUpdatedEvent: - return DeploymentSchemaUpdatedEventFromProto(v.GetDeploymentSchemaUpdatedEvent()) - case *destpb.Event_ModuleRuntimeEvent: - return ModuleRuntimeEventFromProto(v.GetModuleRuntimeEvent()) - case *destpb.Event_TopicRuntimeEvent: - return TopicRuntimeEventFromProto(v.GetTopicRuntimeEvent()) - case *destpb.Event_VerbRuntimeEvent: - return VerbRuntimeEventFromProto(v.GetVerbRuntimeEvent()) + case *destpb.Event_DeploymentRuntimeEvent: + return DeploymentRuntimeEventFromProto(v.GetDeploymentRuntimeEvent()) default: panic(fmt.Sprintf("unknown variant: %T", v.Value)) } @@ -2152,50 +1970,6 @@ func ModuleRuntimeDeploymentFromProto(v *destpb.ModuleRuntimeDeployment) (out *M return out, nil } -func (x *ModuleRuntimeEvent) ToProto() *destpb.ModuleRuntimeEvent { - if x == nil { - return nil - } - return &destpb.ModuleRuntimeEvent{ - Key: orZero(ptr(string(protoMust(x.Key.MarshalText())))), - Changeset: orZero(ptr(string(protoMust(x.Changeset.MarshalText())))), - Base: x.Base.Ptr().ToProto(), - Scaling: x.Scaling.Ptr().ToProto(), - Deployment: x.Deployment.Ptr().ToProto(), - Runner: x.Runner.Ptr().ToProto(), - } -} - -func ModuleRuntimeEventFromProto(v *destpb.ModuleRuntimeEvent) (out *ModuleRuntimeEvent, err error) { - if v == nil { - return nil, nil - } - - out = &ModuleRuntimeEvent{} - if out.Key, err = orZeroR(unmarshallText([]byte(v.Key), &out.Key)).Result(); err != nil { - return nil, fmt.Errorf("Key: %w", err) - } - if out.Changeset, err = unmarshallText([]byte(v.Changeset), out.Changeset).Result(); err != nil { - return nil, fmt.Errorf("Changeset: %w", err) - } - if out.Base, err = optionalR(result.From(ModuleRuntimeBaseFromProto(v.Base))).Result(); err != nil { - return nil, fmt.Errorf("Base: %w", err) - } - if out.Scaling, err = optionalR(result.From(ModuleRuntimeScalingFromProto(v.Scaling))).Result(); err != nil { - return nil, fmt.Errorf("Scaling: %w", err) - } - if out.Deployment, err = optionalR(result.From(ModuleRuntimeDeploymentFromProto(v.Deployment))).Result(); err != nil { - return nil, fmt.Errorf("Deployment: %w", err) - } - if out.Runner, err = optionalR(result.From(ModuleRuntimeRunnerFromProto(v.Runner))).Result(); err != nil { - return nil, fmt.Errorf("Runner: %w", err) - } - if err := out.Validate(); err != nil { - return nil, err - } - return out, nil -} - func (x *ModuleRuntimeRunner) ToProto() *destpb.ModuleRuntimeRunner { if x == nil { return nil @@ -2410,50 +2184,6 @@ func RuntimeElementFromProto(v *destpb.RuntimeElement) (out *RuntimeElement, err return out, nil } -// RuntimeEventToProto converts a RuntimeEvent sum type to a protobuf message. -func RuntimeEventToProto(value RuntimeEvent) *destpb.RuntimeEvent { - switch value := value.(type) { - case nil: - return nil - case *DatabaseRuntimeEvent: - return &destpb.RuntimeEvent{ - Value: &destpb.RuntimeEvent_DatabaseRuntimeEvent{value.ToProto()}, - } - case *ModuleRuntimeEvent: - return &destpb.RuntimeEvent{ - Value: &destpb.RuntimeEvent_ModuleRuntimeEvent{value.ToProto()}, - } - case *TopicRuntimeEvent: - return &destpb.RuntimeEvent{ - Value: &destpb.RuntimeEvent_TopicRuntimeEvent{value.ToProto()}, - } - case *VerbRuntimeEvent: - return &destpb.RuntimeEvent{ - Value: &destpb.RuntimeEvent_VerbRuntimeEvent{value.ToProto()}, - } - default: - panic(fmt.Sprintf("unknown variant: %T", value)) - } -} - -func RuntimeEventFromProto(v *destpb.RuntimeEvent) (RuntimeEvent, error) { - if v == nil { - return nil, nil - } - switch v.Value.(type) { - case *destpb.RuntimeEvent_DatabaseRuntimeEvent: - return DatabaseRuntimeEventFromProto(v.GetDatabaseRuntimeEvent()) - case *destpb.RuntimeEvent_ModuleRuntimeEvent: - return ModuleRuntimeEventFromProto(v.GetModuleRuntimeEvent()) - case *destpb.RuntimeEvent_TopicRuntimeEvent: - return TopicRuntimeEventFromProto(v.GetTopicRuntimeEvent()) - case *destpb.RuntimeEvent_VerbRuntimeEvent: - return VerbRuntimeEventFromProto(v.GetVerbRuntimeEvent()) - default: - panic(fmt.Sprintf("unknown variant: %T", v.Value)) - } -} - func (x *Schema) ToProto() *destpb.Schema { if x == nil { return nil @@ -2486,7 +2216,7 @@ func (x *SchemaState) ToProto() *destpb.SchemaState { return &destpb.SchemaState{ Modules: sliceMap(x.Modules, func(v *Module) *destpb.Module { return v.ToProto() }), Changesets: sliceMap(x.Changesets, func(v *Changeset) *destpb.Changeset { return v.ToProto() }), - RuntimeEvents: sliceMap(x.RuntimeEvents, func(v RuntimeEvent) *destpb.RuntimeEvent { return RuntimeEventToProto(v) }), + RuntimeEvents: sliceMap(x.RuntimeEvents, func(v *DeploymentRuntimeEvent) *destpb.DeploymentRuntimeEvent { return v.ToProto() }), } } @@ -2502,8 +2232,8 @@ func SchemaStateFromProto(v *destpb.SchemaState) (out *SchemaState, err error) { if out.Changesets, err = sliceMapR(v.Changesets, func(v *destpb.Changeset) result.Result[*Changeset] { return result.From(ChangesetFromProto(v)) }).Result(); err != nil { return nil, fmt.Errorf("Changesets: %w", err) } - if out.RuntimeEvents, err = sliceMapR(v.RuntimeEvents, func(v *destpb.RuntimeEvent) result.Result[RuntimeEvent] { - return orZeroR(ptrR(result.From(RuntimeEventFromProto(v)))) + if out.RuntimeEvents, err = sliceMapR(v.RuntimeEvents, func(v *destpb.DeploymentRuntimeEvent) result.Result[*DeploymentRuntimeEvent] { + return result.From(DeploymentRuntimeEventFromProto(v)) }).Result(); err != nil { return nil, fmt.Errorf("RuntimeEvents: %w", err) } @@ -2682,42 +2412,6 @@ func TopicRuntimeFromProto(v *destpb.TopicRuntime) (out *TopicRuntime, err error return out, nil } -func (x *TopicRuntimeEvent) ToProto() *destpb.TopicRuntimeEvent { - if x == nil { - return nil - } - return &destpb.TopicRuntimeEvent{ - Deployment: orZero(ptr(string(protoMust(x.Deployment.MarshalText())))), - Changeset: orZero(ptr(string(protoMust(x.Changeset.MarshalText())))), - Id: orZero(ptr(string(x.ID))), - Payload: x.Payload.ToProto(), - } -} - -func TopicRuntimeEventFromProto(v *destpb.TopicRuntimeEvent) (out *TopicRuntimeEvent, err error) { - if v == nil { - return nil, nil - } - - out = &TopicRuntimeEvent{} - if out.Deployment, err = orZeroR(unmarshallText([]byte(v.Deployment), &out.Deployment)).Result(); err != nil { - return nil, fmt.Errorf("Deployment: %w", err) - } - if out.Changeset, err = unmarshallText([]byte(v.Changeset), out.Changeset).Result(); err != nil { - return nil, fmt.Errorf("Changeset: %w", err) - } - if out.ID, err = orZeroR(result.From(ptr(string(v.Id)), nil)).Result(); err != nil { - return nil, fmt.Errorf("ID: %w", err) - } - if out.Payload, err = result.From(TopicRuntimeFromProto(v.Payload)).Result(); err != nil { - return nil, fmt.Errorf("Payload: %w", err) - } - if err := out.Validate(); err != nil { - return nil, err - } - return out, nil -} - // TypeToProto converts a Type sum type to a protobuf message. func TypeToProto(value Type) *destpb.Type { switch value := value.(type) { @@ -3034,42 +2728,6 @@ func VerbRuntimeFromProto(v *destpb.VerbRuntime) (out *VerbRuntime, err error) { return out, nil } -func (x *VerbRuntimeEvent) ToProto() *destpb.VerbRuntimeEvent { - if x == nil { - return nil - } - return &destpb.VerbRuntimeEvent{ - Deployment: orZero(ptr(string(protoMust(x.Deployment.MarshalText())))), - Changeset: orZero(ptr(string(protoMust(x.Changeset.MarshalText())))), - Id: orZero(ptr(string(x.ID))), - Subscription: x.Subscription.Ptr().ToProto(), - } -} - -func VerbRuntimeEventFromProto(v *destpb.VerbRuntimeEvent) (out *VerbRuntimeEvent, err error) { - if v == nil { - return nil, nil - } - - out = &VerbRuntimeEvent{} - if out.Deployment, err = orZeroR(unmarshallText([]byte(v.Deployment), &out.Deployment)).Result(); err != nil { - return nil, fmt.Errorf("Deployment: %w", err) - } - if out.Changeset, err = unmarshallText([]byte(v.Changeset), out.Changeset).Result(); err != nil { - return nil, fmt.Errorf("Changeset: %w", err) - } - if out.ID, err = orZeroR(result.From(ptr(string(v.Id)), nil)).Result(); err != nil { - return nil, fmt.Errorf("ID: %w", err) - } - if out.Subscription, err = optionalR(result.From(VerbRuntimeSubscriptionFromProto(v.Subscription))).Result(); err != nil { - return nil, fmt.Errorf("Subscription: %w", err) - } - if err := out.Validate(); err != nil { - return nil, err - } - return out, nil -} - func (x *VerbRuntimeSubscription) ToProto() *destpb.VerbRuntimeSubscription { if x == nil { return nil diff --git a/common/schema/raftevents.go b/common/schema/raftevents.go index 70dc2a5c8..dc3d18a1e 100644 --- a/common/schema/raftevents.go +++ b/common/schema/raftevents.go @@ -2,7 +2,6 @@ package schema import ( "fmt" - "time" "github.com/alecthomas/types/optional" @@ -20,33 +19,9 @@ type Event interface { DebugString() string } -//sumtype:decl -//protobuf:export -type RuntimeEvent interface { - runtimeEvent() - Validate() error - // DebugString returns a string representation of the event for debugging purposes - DebugString() string - DeploymentKey() key.Deployment - ChangesetKey() optional.Option[key.Changeset] -} - // deployment events var _ Event = (*DeploymentCreatedEvent)(nil) -var _ Event = (*DeploymentActivatedEvent)(nil) -var _ Event = (*DeploymentDeactivatedEvent)(nil) -var _ Event = (*DeploymentSchemaUpdatedEvent)(nil) -var _ Event = (*DeploymentReplicasUpdatedEvent)(nil) - -// provisioner events -var _ Event = (*VerbRuntimeEvent)(nil) -var _ RuntimeEvent = (*VerbRuntimeEvent)(nil) -var _ Event = (*TopicRuntimeEvent)(nil) -var _ RuntimeEvent = (*TopicRuntimeEvent)(nil) -var _ Event = (*DatabaseRuntimeEvent)(nil) -var _ RuntimeEvent = (*DatabaseRuntimeEvent)(nil) -var _ Event = (*ModuleRuntimeEvent)(nil) -var _ RuntimeEvent = (*ModuleRuntimeEvent)(nil) +var _ Event = (*DeploymentRuntimeEvent)(nil) var _ Event = (*ChangesetCreatedEvent)(nil) var _ Event = (*ChangesetPreparedEvent)(nil) @@ -74,194 +49,30 @@ func (r *DeploymentCreatedEvent) Validate() error { } //protobuf:2 -type DeploymentSchemaUpdatedEvent struct { - Key key.Deployment `protobuf:"1"` - Schema *Module `protobuf:"2"` - Changeset key.Changeset `protobuf:"3"` -} - -func (r *DeploymentSchemaUpdatedEvent) DebugString() string { - return fmt.Sprintf("DeploymentSchemaUpdatedEvent{key: %s, changeset: %s}", r.Key.String(), r.Changeset.String()) -} - -func (r *DeploymentSchemaUpdatedEvent) event() {} - -func (r *DeploymentSchemaUpdatedEvent) Validate() error { - return nil -} - -//protobuf:3 -type DeploymentReplicasUpdatedEvent struct { - Key key.Deployment `protobuf:"1"` - Replicas int `protobuf:"2"` - Changeset *key.Changeset `protobuf:"3"` -} - -func (r *DeploymentReplicasUpdatedEvent) DebugString() string { - return fmt.Sprintf("DeploymentReplicasUpdatedEvent{key: %s, changeset: %s, replicas: %d}", r.Key.String(), r.Changeset.String(), r.Replicas) -} - -func (r *DeploymentReplicasUpdatedEvent) event() {} - -func (r *DeploymentReplicasUpdatedEvent) Validate() error { - return nil +type DeploymentRuntimeEvent struct { + Payload *RuntimeElement `protobuf:"1"` + Changeset *key.Changeset `protobuf:"2"` } -//protobuf:4 -type DeploymentActivatedEvent struct { - Key key.Deployment `protobuf:"1"` - ActivatedAt time.Time `protobuf:"2"` - MinReplicas int `protobuf:"3"` - Changeset *key.Changeset `protobuf:"4"` -} - -func (r *DeploymentActivatedEvent) DebugString() string { - return fmt.Sprintf("DeploymentActivatedEvent{key: %s, changeset: %s, minReplicas: %d}", r.Key.String(), r.Changeset.String(), r.MinReplicas) -} - -func (r *DeploymentActivatedEvent) event() {} - -func (r *DeploymentActivatedEvent) Validate() error { - return nil -} - -//protobuf:5 -type DeploymentDeactivatedEvent struct { - Key key.Deployment `protobuf:"1"` - ModuleRemoved bool `protobuf:"2"` - Changeset *key.Changeset `protobuf:"3"` -} - -func (r *DeploymentDeactivatedEvent) DebugString() string { - return fmt.Sprintf("DeploymentDeactivatedEvent{key: %s, changeset: %s, moduleRemoved: %v}", r.Key.String(), r.Changeset.String(), r.ModuleRemoved) -} - -func (r *DeploymentDeactivatedEvent) event() {} - -func (r *DeploymentDeactivatedEvent) Validate() error { - return nil +func (e *DeploymentRuntimeEvent) DeploymentKey() key.Deployment { + return e.Payload.Deployment } -//protobuf:6 -type VerbRuntimeEvent struct { - Deployment key.Deployment `protobuf:"1"` - Changeset *key.Changeset `protobuf:"2"` - ID string `protobuf:"3"` - Subscription optional.Option[VerbRuntimeSubscription] `protobuf:"4"` -} - -func (e *VerbRuntimeEvent) DeploymentKey() key.Deployment { - return e.Deployment -} - -func (e *VerbRuntimeEvent) ChangesetKey() optional.Option[key.Changeset] { +func (e *DeploymentRuntimeEvent) ChangesetKey() optional.Option[key.Changeset] { return optional.Ptr(e.Changeset) } -func (e *VerbRuntimeEvent) runtimeEvent() { - -} - -func (e *VerbRuntimeEvent) DebugString() string { - return fmt.Sprintf("VerbRuntimeEvent{module: %s, changeset: %s, id: %v, subscription: %v}", e.Deployment.String(), e.Changeset.String(), e.ID, e.Subscription) +func (e *DeploymentRuntimeEvent) DebugString() string { + return fmt.Sprintf("DeploymentRuntimeEvent{module: %s, changeset: %s, id: %v, data: %v}", e.DeploymentKey().String(), e.Changeset.String(), e.Payload.Name, e.Payload.Element) } -func (e *VerbRuntimeEvent) event() {} +func (e *DeploymentRuntimeEvent) event() {} -func (e *VerbRuntimeEvent) Validate() error { +func (e *DeploymentRuntimeEvent) Validate() error { return nil } -//protobuf:7 -type TopicRuntimeEvent struct { - Deployment key.Deployment `protobuf:"1"` - Changeset *key.Changeset `protobuf:"2"` - ID string `protobuf:"3"` - Payload *TopicRuntime `protobuf:"4"` -} - -func (e *TopicRuntimeEvent) DeploymentKey() key.Deployment { - return e.Deployment -} - -func (e *TopicRuntimeEvent) ChangesetKey() optional.Option[key.Changeset] { - return optional.Ptr(e.Changeset) -} - -func (e *TopicRuntimeEvent) runtimeEvent() { -} - -func (e *TopicRuntimeEvent) DebugString() string { - return fmt.Sprintf("TopicRuntimeEvent{module: %s, changeset: %s, id: %v, payload: %v}", e.Deployment.String(), e.Changeset.String(), e.ID, e.Payload) -} - -func (e *TopicRuntimeEvent) event() {} - -func (e *TopicRuntimeEvent) Validate() error { - return nil -} - -//protobuf:8 -type DatabaseRuntimeEvent struct { - Deployment key.Deployment `protobuf:"1"` - Changeset *key.Changeset `protobuf:"2"` - ID string `protobuf:"3"` - Connections *DatabaseRuntimeConnections `protobuf:"4"` -} - -func (e *DatabaseRuntimeEvent) DeploymentKey() key.Deployment { - return e.Deployment -} - -func (e *DatabaseRuntimeEvent) ChangesetKey() optional.Option[key.Changeset] { - return optional.Ptr(e.Changeset) -} - -func (e *DatabaseRuntimeEvent) runtimeEvent() { -} - -func (e *DatabaseRuntimeEvent) DebugString() string { - return fmt.Sprintf("DatabaseRuntimeEvent{module: %s, changeset: %s, id: %v, connections: %v}", e.Deployment, e.Changeset.String(), e.ID, e.Connections) -} - -func (e *DatabaseRuntimeEvent) event() {} - -func (e *DatabaseRuntimeEvent) Validate() error { - return nil -} - -//protobuf:9 -type ModuleRuntimeEvent struct { - Key key.Deployment `protobuf:"1"` - Changeset *key.Changeset `protobuf:"2"` - Base optional.Option[ModuleRuntimeBase] `protobuf:"3"` - Scaling optional.Option[ModuleRuntimeScaling] `protobuf:"4"` - Deployment optional.Option[ModuleRuntimeDeployment] `protobuf:"5"` - Runner optional.Option[ModuleRuntimeRunner] `protobuf:"6"` -} - -func (e *ModuleRuntimeEvent) DeploymentKey() key.Deployment { - return e.Key -} - -func (e *ModuleRuntimeEvent) ChangesetKey() optional.Option[key.Changeset] { - return optional.Ptr(e.Changeset) -} - -func (e *ModuleRuntimeEvent) runtimeEvent() { -} - -func (e *ModuleRuntimeEvent) DebugString() string { - return fmt.Sprintf("ModuleRuntimeEvent{deployment: %s, changeset: %s, deployment %v}", e.Key.String(), e.Changeset.String(), e.Deployment) -} - -func (e *ModuleRuntimeEvent) event() {} - -func (e *ModuleRuntimeEvent) Validate() error { - return nil -} - -//protobuf:10 +//protobuf:3 type ChangesetCreatedEvent struct { Changeset *Changeset `protobuf:"1"` } @@ -287,7 +98,7 @@ func (e *ChangesetCreatedEvent) Validate() error { return nil } -//protobuf:11 +//protobuf:4 type ChangesetPreparedEvent struct { Key key.Changeset `protobuf:"1"` } @@ -302,7 +113,7 @@ func (e *ChangesetPreparedEvent) Validate() error { return nil } -//protobuf:12 +//protobuf:5 type ChangesetCommittedEvent struct { Key key.Changeset `protobuf:"1"` } @@ -317,7 +128,7 @@ func (e *ChangesetCommittedEvent) Validate() error { return nil } -//protobuf:13 +//protobuf:6 type ChangesetDrainedEvent struct { Key key.Changeset `protobuf:"1"` } @@ -332,7 +143,7 @@ func (e *ChangesetDrainedEvent) Validate() error { return nil } -//protobuf:14 +//protobuf:7 type ChangesetFinalizedEvent struct { Key key.Changeset `protobuf:"1"` } @@ -347,7 +158,7 @@ func (e *ChangesetFinalizedEvent) Validate() error { return nil } -//protobuf:15 +//protobuf:8 type ChangesetFailedEvent struct { Key key.Changeset `protobuf:"1"` Error string `protobuf:"2"` diff --git a/common/schema/runtimeelement.go b/common/schema/runtimeelement.go index 8ba9a1eb6..596eab343 100644 --- a/common/schema/runtimeelement.go +++ b/common/schema/runtimeelement.go @@ -18,6 +18,9 @@ type RuntimeElement struct { func (x *RuntimeElement) ApplyToModule(state *Module) error { switch v := x.Element.(type) { case *ModuleRuntimeDeployment: + if v.DeploymentKey.IsZero() { + v.DeploymentKey = state.Runtime.Deployment.DeploymentKey + } state.Runtime.Deployment = v case *ModuleRuntimeScaling: state.Runtime.Scaling = v diff --git a/common/schema/schema.go b/common/schema/schema.go index 7ea256b97..a363b27c1 100644 --- a/common/schema/schema.go +++ b/common/schema/schema.go @@ -279,7 +279,7 @@ func ValidatedModuleFromProto(v *schemapb.Module) (*Module, error) { // //protobuf:export type SchemaState struct { - Modules []*Module `protobuf:"1"` - Changesets []*Changeset `protobuf:"2"` - RuntimeEvents []RuntimeEvent `protobuf:"3"` + Modules []*Module `protobuf:"1"` + Changesets []*Changeset `protobuf:"2"` + RuntimeEvents []*DeploymentRuntimeEvent `protobuf:"3"` } diff --git a/frontend/console/src/protos/xyz/block/ftl/schema/v1/schema_pb.ts b/frontend/console/src/protos/xyz/block/ftl/schema/v1/schema_pb.ts index 3cfd65361..813617fd9 100644 --- a/frontend/console/src/protos/xyz/block/ftl/schema/v1/schema_pb.ts +++ b/frontend/console/src/protos/xyz/block/ftl/schema/v1/schema_pb.ts @@ -1054,61 +1054,6 @@ export class DatabaseRuntimeConnections extends Message { - /** - * @generated from field: string deployment = 1; - */ - deployment = ""; - - /** - * @generated from field: string changeset = 2; - */ - changeset = ""; - - /** - * @generated from field: string id = 3; - */ - id = ""; - - /** - * @generated from field: xyz.block.ftl.schema.v1.DatabaseRuntimeConnections connections = 4; - */ - connections?: DatabaseRuntimeConnections; - - constructor(data?: PartialMessage) { - super(); - proto3.util.initPartial(data, this); - } - - static readonly runtime: typeof proto3 = proto3; - static readonly typeName = "xyz.block.ftl.schema.v1.DatabaseRuntimeEvent"; - static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "deployment", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 2, name: "changeset", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 3, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 4, name: "connections", kind: "message", T: DatabaseRuntimeConnections }, - ]); - - static fromBinary(bytes: Uint8Array, options?: Partial): DatabaseRuntimeEvent { - return new DatabaseRuntimeEvent().fromBinary(bytes, options); - } - - static fromJson(jsonValue: JsonValue, options?: Partial): DatabaseRuntimeEvent { - return new DatabaseRuntimeEvent().fromJson(jsonValue, options); - } - - static fromJsonString(jsonString: string, options?: Partial): DatabaseRuntimeEvent { - return new DatabaseRuntimeEvent().fromJsonString(jsonString, options); - } - - static equals(a: DatabaseRuntimeEvent | PlainMessage | undefined, b: DatabaseRuntimeEvent | PlainMessage | undefined): boolean { - return proto3.util.equals(DatabaseRuntimeEvent, a, b); - } -} - /** * Decl represents user-defined data types in the schema grammar. * @@ -1203,61 +1148,6 @@ export class Decl extends Message { } } -/** - * @generated from message xyz.block.ftl.schema.v1.DeploymentActivatedEvent - */ -export class DeploymentActivatedEvent extends Message { - /** - * @generated from field: string key = 1; - */ - key = ""; - - /** - * @generated from field: google.protobuf.Timestamp activated_at = 2; - */ - activatedAt?: Timestamp; - - /** - * @generated from field: int64 min_replicas = 3; - */ - minReplicas = protoInt64.zero; - - /** - * @generated from field: string changeset = 4; - */ - changeset = ""; - - constructor(data?: PartialMessage) { - super(); - proto3.util.initPartial(data, this); - } - - static readonly runtime: typeof proto3 = proto3; - static readonly typeName = "xyz.block.ftl.schema.v1.DeploymentActivatedEvent"; - static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "key", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 2, name: "activated_at", kind: "message", T: Timestamp }, - { no: 3, name: "min_replicas", kind: "scalar", T: 3 /* ScalarType.INT64 */ }, - { no: 4, name: "changeset", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - ]); - - static fromBinary(bytes: Uint8Array, options?: Partial): DeploymentActivatedEvent { - return new DeploymentActivatedEvent().fromBinary(bytes, options); - } - - static fromJson(jsonValue: JsonValue, options?: Partial): DeploymentActivatedEvent { - return new DeploymentActivatedEvent().fromJson(jsonValue, options); - } - - static fromJsonString(jsonString: string, options?: Partial): DeploymentActivatedEvent { - return new DeploymentActivatedEvent().fromJsonString(jsonString, options); - } - - static equals(a: DeploymentActivatedEvent | PlainMessage | undefined, b: DeploymentActivatedEvent | PlainMessage | undefined): boolean { - return proto3.util.equals(DeploymentActivatedEvent, a, b); - } -} - /** * @generated from message xyz.block.ftl.schema.v1.DeploymentCreatedEvent */ @@ -1308,149 +1198,45 @@ export class DeploymentCreatedEvent extends Message { } /** - * @generated from message xyz.block.ftl.schema.v1.DeploymentDeactivatedEvent - */ -export class DeploymentDeactivatedEvent extends Message { - /** - * @generated from field: string key = 1; - */ - key = ""; - - /** - * @generated from field: bool module_removed = 2; - */ - moduleRemoved = false; - - /** - * @generated from field: string changeset = 3; - */ - changeset = ""; - - constructor(data?: PartialMessage) { - super(); - proto3.util.initPartial(data, this); - } - - static readonly runtime: typeof proto3 = proto3; - static readonly typeName = "xyz.block.ftl.schema.v1.DeploymentDeactivatedEvent"; - static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "key", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 2, name: "module_removed", kind: "scalar", T: 8 /* ScalarType.BOOL */ }, - { no: 3, name: "changeset", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - ]); - - static fromBinary(bytes: Uint8Array, options?: Partial): DeploymentDeactivatedEvent { - return new DeploymentDeactivatedEvent().fromBinary(bytes, options); - } - - static fromJson(jsonValue: JsonValue, options?: Partial): DeploymentDeactivatedEvent { - return new DeploymentDeactivatedEvent().fromJson(jsonValue, options); - } - - static fromJsonString(jsonString: string, options?: Partial): DeploymentDeactivatedEvent { - return new DeploymentDeactivatedEvent().fromJsonString(jsonString, options); - } - - static equals(a: DeploymentDeactivatedEvent | PlainMessage | undefined, b: DeploymentDeactivatedEvent | PlainMessage | undefined): boolean { - return proto3.util.equals(DeploymentDeactivatedEvent, a, b); - } -} - -/** - * @generated from message xyz.block.ftl.schema.v1.DeploymentReplicasUpdatedEvent - */ -export class DeploymentReplicasUpdatedEvent extends Message { - /** - * @generated from field: string key = 1; - */ - key = ""; - - /** - * @generated from field: int64 replicas = 2; - */ - replicas = protoInt64.zero; - - /** - * @generated from field: string changeset = 3; - */ - changeset = ""; - - constructor(data?: PartialMessage) { - super(); - proto3.util.initPartial(data, this); - } - - static readonly runtime: typeof proto3 = proto3; - static readonly typeName = "xyz.block.ftl.schema.v1.DeploymentReplicasUpdatedEvent"; - static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "key", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 2, name: "replicas", kind: "scalar", T: 3 /* ScalarType.INT64 */ }, - { no: 3, name: "changeset", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - ]); - - static fromBinary(bytes: Uint8Array, options?: Partial): DeploymentReplicasUpdatedEvent { - return new DeploymentReplicasUpdatedEvent().fromBinary(bytes, options); - } - - static fromJson(jsonValue: JsonValue, options?: Partial): DeploymentReplicasUpdatedEvent { - return new DeploymentReplicasUpdatedEvent().fromJson(jsonValue, options); - } - - static fromJsonString(jsonString: string, options?: Partial): DeploymentReplicasUpdatedEvent { - return new DeploymentReplicasUpdatedEvent().fromJsonString(jsonString, options); - } - - static equals(a: DeploymentReplicasUpdatedEvent | PlainMessage | undefined, b: DeploymentReplicasUpdatedEvent | PlainMessage | undefined): boolean { - return proto3.util.equals(DeploymentReplicasUpdatedEvent, a, b); - } -} - -/** - * @generated from message xyz.block.ftl.schema.v1.DeploymentSchemaUpdatedEvent + * @generated from message xyz.block.ftl.schema.v1.DeploymentRuntimeEvent */ -export class DeploymentSchemaUpdatedEvent extends Message { +export class DeploymentRuntimeEvent extends Message { /** - * @generated from field: string key = 1; + * @generated from field: xyz.block.ftl.schema.v1.RuntimeElement payload = 1; */ - key = ""; + payload?: RuntimeElement; /** - * @generated from field: xyz.block.ftl.schema.v1.Module schema = 2; - */ - schema?: Module; - - /** - * @generated from field: string changeset = 3; + * @generated from field: string changeset = 2; */ changeset = ""; - constructor(data?: PartialMessage) { + constructor(data?: PartialMessage) { super(); proto3.util.initPartial(data, this); } static readonly runtime: typeof proto3 = proto3; - static readonly typeName = "xyz.block.ftl.schema.v1.DeploymentSchemaUpdatedEvent"; + static readonly typeName = "xyz.block.ftl.schema.v1.DeploymentRuntimeEvent"; static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "key", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 2, name: "schema", kind: "message", T: Module }, - { no: 3, name: "changeset", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 1, name: "payload", kind: "message", T: RuntimeElement }, + { no: 2, name: "changeset", kind: "scalar", T: 9 /* ScalarType.STRING */ }, ]); - static fromBinary(bytes: Uint8Array, options?: Partial): DeploymentSchemaUpdatedEvent { - return new DeploymentSchemaUpdatedEvent().fromBinary(bytes, options); + static fromBinary(bytes: Uint8Array, options?: Partial): DeploymentRuntimeEvent { + return new DeploymentRuntimeEvent().fromBinary(bytes, options); } - static fromJson(jsonValue: JsonValue, options?: Partial): DeploymentSchemaUpdatedEvent { - return new DeploymentSchemaUpdatedEvent().fromJson(jsonValue, options); + static fromJson(jsonValue: JsonValue, options?: Partial): DeploymentRuntimeEvent { + return new DeploymentRuntimeEvent().fromJson(jsonValue, options); } - static fromJsonString(jsonString: string, options?: Partial): DeploymentSchemaUpdatedEvent { - return new DeploymentSchemaUpdatedEvent().fromJsonString(jsonString, options); + static fromJsonString(jsonString: string, options?: Partial): DeploymentRuntimeEvent { + return new DeploymentRuntimeEvent().fromJsonString(jsonString, options); } - static equals(a: DeploymentSchemaUpdatedEvent | PlainMessage | undefined, b: DeploymentSchemaUpdatedEvent | PlainMessage | undefined): boolean { - return proto3.util.equals(DeploymentSchemaUpdatedEvent, a, b); + static equals(a: DeploymentRuntimeEvent | PlainMessage | undefined, b: DeploymentRuntimeEvent | PlainMessage | undefined): boolean { + return proto3.util.equals(DeploymentRuntimeEvent, a, b); } } @@ -1585,52 +1371,40 @@ export class Event extends Message { */ value: { /** - * @generated from field: xyz.block.ftl.schema.v1.ChangesetCommittedEvent changeset_committed_event = 12; + * @generated from field: xyz.block.ftl.schema.v1.ChangesetCommittedEvent changeset_committed_event = 5; */ value: ChangesetCommittedEvent; case: "changesetCommittedEvent"; } | { /** - * @generated from field: xyz.block.ftl.schema.v1.ChangesetCreatedEvent changeset_created_event = 10; + * @generated from field: xyz.block.ftl.schema.v1.ChangesetCreatedEvent changeset_created_event = 3; */ value: ChangesetCreatedEvent; case: "changesetCreatedEvent"; } | { /** - * @generated from field: xyz.block.ftl.schema.v1.ChangesetDrainedEvent changeset_drained_event = 13; + * @generated from field: xyz.block.ftl.schema.v1.ChangesetDrainedEvent changeset_drained_event = 6; */ value: ChangesetDrainedEvent; case: "changesetDrainedEvent"; } | { /** - * @generated from field: xyz.block.ftl.schema.v1.ChangesetFailedEvent changeset_failed_event = 15; + * @generated from field: xyz.block.ftl.schema.v1.ChangesetFailedEvent changeset_failed_event = 8; */ value: ChangesetFailedEvent; case: "changesetFailedEvent"; } | { /** - * @generated from field: xyz.block.ftl.schema.v1.ChangesetFinalizedEvent changeset_finalized_event = 14; + * @generated from field: xyz.block.ftl.schema.v1.ChangesetFinalizedEvent changeset_finalized_event = 7; */ value: ChangesetFinalizedEvent; case: "changesetFinalizedEvent"; } | { /** - * @generated from field: xyz.block.ftl.schema.v1.ChangesetPreparedEvent changeset_prepared_event = 11; + * @generated from field: xyz.block.ftl.schema.v1.ChangesetPreparedEvent changeset_prepared_event = 4; */ value: ChangesetPreparedEvent; case: "changesetPreparedEvent"; - } | { - /** - * @generated from field: xyz.block.ftl.schema.v1.DatabaseRuntimeEvent database_runtime_event = 8; - */ - value: DatabaseRuntimeEvent; - case: "databaseRuntimeEvent"; - } | { - /** - * @generated from field: xyz.block.ftl.schema.v1.DeploymentActivatedEvent deployment_activated_event = 4; - */ - value: DeploymentActivatedEvent; - case: "deploymentActivatedEvent"; } | { /** * @generated from field: xyz.block.ftl.schema.v1.DeploymentCreatedEvent deployment_created_event = 1; @@ -1639,40 +1413,10 @@ export class Event extends Message { case: "deploymentCreatedEvent"; } | { /** - * @generated from field: xyz.block.ftl.schema.v1.DeploymentDeactivatedEvent deployment_deactivated_event = 5; + * @generated from field: xyz.block.ftl.schema.v1.DeploymentRuntimeEvent deployment_runtime_event = 2; */ - value: DeploymentDeactivatedEvent; - case: "deploymentDeactivatedEvent"; - } | { - /** - * @generated from field: xyz.block.ftl.schema.v1.DeploymentReplicasUpdatedEvent deployment_replicas_updated_event = 3; - */ - value: DeploymentReplicasUpdatedEvent; - case: "deploymentReplicasUpdatedEvent"; - } | { - /** - * @generated from field: xyz.block.ftl.schema.v1.DeploymentSchemaUpdatedEvent deployment_schema_updated_event = 2; - */ - value: DeploymentSchemaUpdatedEvent; - case: "deploymentSchemaUpdatedEvent"; - } | { - /** - * @generated from field: xyz.block.ftl.schema.v1.ModuleRuntimeEvent module_runtime_event = 9; - */ - value: ModuleRuntimeEvent; - case: "moduleRuntimeEvent"; - } | { - /** - * @generated from field: xyz.block.ftl.schema.v1.TopicRuntimeEvent topic_runtime_event = 7; - */ - value: TopicRuntimeEvent; - case: "topicRuntimeEvent"; - } | { - /** - * @generated from field: xyz.block.ftl.schema.v1.VerbRuntimeEvent verb_runtime_event = 6; - */ - value: VerbRuntimeEvent; - case: "verbRuntimeEvent"; + value: DeploymentRuntimeEvent; + case: "deploymentRuntimeEvent"; } | { case: undefined; value?: undefined } = { case: undefined }; constructor(data?: PartialMessage) { @@ -1683,21 +1427,14 @@ export class Event extends Message { static readonly runtime: typeof proto3 = proto3; static readonly typeName = "xyz.block.ftl.schema.v1.Event"; static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 12, name: "changeset_committed_event", kind: "message", T: ChangesetCommittedEvent, oneof: "value" }, - { no: 10, name: "changeset_created_event", kind: "message", T: ChangesetCreatedEvent, oneof: "value" }, - { no: 13, name: "changeset_drained_event", kind: "message", T: ChangesetDrainedEvent, oneof: "value" }, - { no: 15, name: "changeset_failed_event", kind: "message", T: ChangesetFailedEvent, oneof: "value" }, - { no: 14, name: "changeset_finalized_event", kind: "message", T: ChangesetFinalizedEvent, oneof: "value" }, - { no: 11, name: "changeset_prepared_event", kind: "message", T: ChangesetPreparedEvent, oneof: "value" }, - { no: 8, name: "database_runtime_event", kind: "message", T: DatabaseRuntimeEvent, oneof: "value" }, - { no: 4, name: "deployment_activated_event", kind: "message", T: DeploymentActivatedEvent, oneof: "value" }, + { no: 5, name: "changeset_committed_event", kind: "message", T: ChangesetCommittedEvent, oneof: "value" }, + { no: 3, name: "changeset_created_event", kind: "message", T: ChangesetCreatedEvent, oneof: "value" }, + { no: 6, name: "changeset_drained_event", kind: "message", T: ChangesetDrainedEvent, oneof: "value" }, + { no: 8, name: "changeset_failed_event", kind: "message", T: ChangesetFailedEvent, oneof: "value" }, + { no: 7, name: "changeset_finalized_event", kind: "message", T: ChangesetFinalizedEvent, oneof: "value" }, + { no: 4, name: "changeset_prepared_event", kind: "message", T: ChangesetPreparedEvent, oneof: "value" }, { no: 1, name: "deployment_created_event", kind: "message", T: DeploymentCreatedEvent, oneof: "value" }, - { no: 5, name: "deployment_deactivated_event", kind: "message", T: DeploymentDeactivatedEvent, oneof: "value" }, - { no: 3, name: "deployment_replicas_updated_event", kind: "message", T: DeploymentReplicasUpdatedEvent, oneof: "value" }, - { no: 2, name: "deployment_schema_updated_event", kind: "message", T: DeploymentSchemaUpdatedEvent, oneof: "value" }, - { no: 9, name: "module_runtime_event", kind: "message", T: ModuleRuntimeEvent, oneof: "value" }, - { no: 7, name: "topic_runtime_event", kind: "message", T: TopicRuntimeEvent, oneof: "value" }, - { no: 6, name: "verb_runtime_event", kind: "message", T: VerbRuntimeEvent, oneof: "value" }, + { no: 2, name: "deployment_runtime_event", kind: "message", T: DeploymentRuntimeEvent, oneof: "value" }, ]); static fromBinary(bytes: Uint8Array, options?: Partial): Event { @@ -3308,73 +3045,6 @@ export class ModuleRuntimeDeployment extends Message { } } -/** - * @generated from message xyz.block.ftl.schema.v1.ModuleRuntimeEvent - */ -export class ModuleRuntimeEvent extends Message { - /** - * @generated from field: string key = 1; - */ - key = ""; - - /** - * @generated from field: string changeset = 2; - */ - changeset = ""; - - /** - * @generated from field: optional xyz.block.ftl.schema.v1.ModuleRuntimeBase base = 3; - */ - base?: ModuleRuntimeBase; - - /** - * @generated from field: optional xyz.block.ftl.schema.v1.ModuleRuntimeScaling scaling = 4; - */ - scaling?: ModuleRuntimeScaling; - - /** - * @generated from field: optional xyz.block.ftl.schema.v1.ModuleRuntimeDeployment deployment = 5; - */ - deployment?: ModuleRuntimeDeployment; - - /** - * @generated from field: optional xyz.block.ftl.schema.v1.ModuleRuntimeRunner runner = 6; - */ - runner?: ModuleRuntimeRunner; - - constructor(data?: PartialMessage) { - super(); - proto3.util.initPartial(data, this); - } - - static readonly runtime: typeof proto3 = proto3; - static readonly typeName = "xyz.block.ftl.schema.v1.ModuleRuntimeEvent"; - static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "key", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 2, name: "changeset", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 3, name: "base", kind: "message", T: ModuleRuntimeBase, opt: true }, - { no: 4, name: "scaling", kind: "message", T: ModuleRuntimeScaling, opt: true }, - { no: 5, name: "deployment", kind: "message", T: ModuleRuntimeDeployment, opt: true }, - { no: 6, name: "runner", kind: "message", T: ModuleRuntimeRunner, opt: true }, - ]); - - static fromBinary(bytes: Uint8Array, options?: Partial): ModuleRuntimeEvent { - return new ModuleRuntimeEvent().fromBinary(bytes, options); - } - - static fromJson(jsonValue: JsonValue, options?: Partial): ModuleRuntimeEvent { - return new ModuleRuntimeEvent().fromJson(jsonValue, options); - } - - static fromJsonString(jsonString: string, options?: Partial): ModuleRuntimeEvent { - return new ModuleRuntimeEvent().fromJsonString(jsonString, options); - } - - static equals(a: ModuleRuntimeEvent | PlainMessage | undefined, b: ModuleRuntimeEvent | PlainMessage | undefined): boolean { - return proto3.util.equals(ModuleRuntimeEvent, a, b); - } -} - /** * @generated from message xyz.block.ftl.schema.v1.ModuleRuntimeRunner */ @@ -3727,70 +3397,6 @@ export class RuntimeElement extends Message { } } -/** - * @generated from message xyz.block.ftl.schema.v1.RuntimeEvent - */ -export class RuntimeEvent extends Message { - /** - * @generated from oneof xyz.block.ftl.schema.v1.RuntimeEvent.value - */ - value: { - /** - * @generated from field: xyz.block.ftl.schema.v1.DatabaseRuntimeEvent database_runtime_event = 8; - */ - value: DatabaseRuntimeEvent; - case: "databaseRuntimeEvent"; - } | { - /** - * @generated from field: xyz.block.ftl.schema.v1.ModuleRuntimeEvent module_runtime_event = 9; - */ - value: ModuleRuntimeEvent; - case: "moduleRuntimeEvent"; - } | { - /** - * @generated from field: xyz.block.ftl.schema.v1.TopicRuntimeEvent topic_runtime_event = 7; - */ - value: TopicRuntimeEvent; - case: "topicRuntimeEvent"; - } | { - /** - * @generated from field: xyz.block.ftl.schema.v1.VerbRuntimeEvent verb_runtime_event = 6; - */ - value: VerbRuntimeEvent; - case: "verbRuntimeEvent"; - } | { case: undefined; value?: undefined } = { case: undefined }; - - constructor(data?: PartialMessage) { - super(); - proto3.util.initPartial(data, this); - } - - static readonly runtime: typeof proto3 = proto3; - static readonly typeName = "xyz.block.ftl.schema.v1.RuntimeEvent"; - static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 8, name: "database_runtime_event", kind: "message", T: DatabaseRuntimeEvent, oneof: "value" }, - { no: 9, name: "module_runtime_event", kind: "message", T: ModuleRuntimeEvent, oneof: "value" }, - { no: 7, name: "topic_runtime_event", kind: "message", T: TopicRuntimeEvent, oneof: "value" }, - { no: 6, name: "verb_runtime_event", kind: "message", T: VerbRuntimeEvent, oneof: "value" }, - ]); - - static fromBinary(bytes: Uint8Array, options?: Partial): RuntimeEvent { - return new RuntimeEvent().fromBinary(bytes, options); - } - - static fromJson(jsonValue: JsonValue, options?: Partial): RuntimeEvent { - return new RuntimeEvent().fromJson(jsonValue, options); - } - - static fromJsonString(jsonString: string, options?: Partial): RuntimeEvent { - return new RuntimeEvent().fromJsonString(jsonString, options); - } - - static equals(a: RuntimeEvent | PlainMessage | undefined, b: RuntimeEvent | PlainMessage | undefined): boolean { - return proto3.util.equals(RuntimeEvent, a, b); - } -} - /** * @generated from message xyz.block.ftl.schema.v1.Schema */ @@ -3851,9 +3457,9 @@ export class SchemaState extends Message { changesets: Changeset[] = []; /** - * @generated from field: repeated xyz.block.ftl.schema.v1.RuntimeEvent runtime_events = 3; + * @generated from field: repeated xyz.block.ftl.schema.v1.DeploymentRuntimeEvent runtime_events = 3; */ - runtimeEvents: RuntimeEvent[] = []; + runtimeEvents: DeploymentRuntimeEvent[] = []; constructor(data?: PartialMessage) { super(); @@ -3865,7 +3471,7 @@ export class SchemaState extends Message { static readonly fields: FieldList = proto3.util.newFieldList(() => [ { no: 1, name: "modules", kind: "message", T: Module, repeated: true }, { no: 2, name: "changesets", kind: "message", T: Changeset, repeated: true }, - { no: 3, name: "runtime_events", kind: "message", T: RuntimeEvent, repeated: true }, + { no: 3, name: "runtime_events", kind: "message", T: DeploymentRuntimeEvent, repeated: true }, ]); static fromBinary(bytes: Uint8Array, options?: Partial): SchemaState { @@ -4173,61 +3779,6 @@ export class TopicRuntime extends Message { } } -/** - * @generated from message xyz.block.ftl.schema.v1.TopicRuntimeEvent - */ -export class TopicRuntimeEvent extends Message { - /** - * @generated from field: string deployment = 1; - */ - deployment = ""; - - /** - * @generated from field: string changeset = 2; - */ - changeset = ""; - - /** - * @generated from field: string id = 3; - */ - id = ""; - - /** - * @generated from field: xyz.block.ftl.schema.v1.TopicRuntime payload = 4; - */ - payload?: TopicRuntime; - - constructor(data?: PartialMessage) { - super(); - proto3.util.initPartial(data, this); - } - - static readonly runtime: typeof proto3 = proto3; - static readonly typeName = "xyz.block.ftl.schema.v1.TopicRuntimeEvent"; - static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "deployment", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 2, name: "changeset", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 3, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 4, name: "payload", kind: "message", T: TopicRuntime }, - ]); - - static fromBinary(bytes: Uint8Array, options?: Partial): TopicRuntimeEvent { - return new TopicRuntimeEvent().fromBinary(bytes, options); - } - - static fromJson(jsonValue: JsonValue, options?: Partial): TopicRuntimeEvent { - return new TopicRuntimeEvent().fromJson(jsonValue, options); - } - - static fromJsonString(jsonString: string, options?: Partial): TopicRuntimeEvent { - return new TopicRuntimeEvent().fromJsonString(jsonString, options); - } - - static equals(a: TopicRuntimeEvent | PlainMessage | undefined, b: TopicRuntimeEvent | PlainMessage | undefined): boolean { - return proto3.util.equals(TopicRuntimeEvent, a, b); - } -} - /** * Type represents a Type Node in the schema grammar. * @@ -4715,61 +4266,6 @@ export class VerbRuntime extends Message { } } -/** - * @generated from message xyz.block.ftl.schema.v1.VerbRuntimeEvent - */ -export class VerbRuntimeEvent extends Message { - /** - * @generated from field: string deployment = 1; - */ - deployment = ""; - - /** - * @generated from field: string changeset = 2; - */ - changeset = ""; - - /** - * @generated from field: string id = 3; - */ - id = ""; - - /** - * @generated from field: optional xyz.block.ftl.schema.v1.VerbRuntimeSubscription subscription = 4; - */ - subscription?: VerbRuntimeSubscription; - - constructor(data?: PartialMessage) { - super(); - proto3.util.initPartial(data, this); - } - - static readonly runtime: typeof proto3 = proto3; - static readonly typeName = "xyz.block.ftl.schema.v1.VerbRuntimeEvent"; - static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "deployment", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 2, name: "changeset", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 3, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 4, name: "subscription", kind: "message", T: VerbRuntimeSubscription, opt: true }, - ]); - - static fromBinary(bytes: Uint8Array, options?: Partial): VerbRuntimeEvent { - return new VerbRuntimeEvent().fromBinary(bytes, options); - } - - static fromJson(jsonValue: JsonValue, options?: Partial): VerbRuntimeEvent { - return new VerbRuntimeEvent().fromJson(jsonValue, options); - } - - static fromJsonString(jsonString: string, options?: Partial): VerbRuntimeEvent { - return new VerbRuntimeEvent().fromJsonString(jsonString, options); - } - - static equals(a: VerbRuntimeEvent | PlainMessage | undefined, b: VerbRuntimeEvent | PlainMessage | undefined): boolean { - return proto3.util.equals(VerbRuntimeEvent, a, b); - } -} - /** * @generated from message xyz.block.ftl.schema.v1.VerbRuntimeSubscription */ diff --git a/python-runtime/ftl/src/ftl/protos/xyz/block/ftl/schema/v1/schema_pb2.py b/python-runtime/ftl/src/ftl/protos/xyz/block/ftl/schema/v1/schema_pb2.py index 3e596ad01..a2620e56c 100644 --- a/python-runtime/ftl/src/ftl/protos/xyz/block/ftl/schema/v1/schema_pb2.py +++ b/python-runtime/ftl/src/ftl/protos/xyz/block/ftl/schema/v1/schema_pb2.py @@ -25,7 +25,7 @@ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$xyz/block/ftl/schema/v1/schema.proto\x12\x17xyz.block.ftl.schema.v1\x1a\x1fgoogle/protobuf/timestamp.proto\"\xb3\x01\n\x1b\x41WSIAMAuthDatabaseConnector\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08username\x18\x02 \x01(\tR\x08username\x12\x1a\n\x08\x65ndpoint\x18\x03 \x01(\tR\x08\x65ndpoint\x12\x1a\n\x08\x64\x61tabase\x18\x04 \x01(\tR\x08\x64\x61tabaseB\x06\n\x04_pos\"G\n\x03\x41ny\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"\x82\x01\n\x05\x41rray\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x37\n\x07\x65lement\x18\x02 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x07\x65lementB\x06\n\x04_pos\"H\n\x04\x42ool\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"I\n\x05\x42ytes\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"\xe0\x02\n\tChangeset\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x39\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\x07modules\x18\x03 \x03(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ModuleR\x07modules\x12\x1b\n\tto_remove\x18\x04 \x03(\tR\x08toRemove\x12J\n\x10removing_modules\x18\x05 \x03(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ModuleR\x0fremovingModules\x12=\n\x05state\x18\x06 \x01(\x0e\x32\'.xyz.block.ftl.schema.v1.ChangesetStateR\x05state\x12\x19\n\x05\x65rror\x18\x07 \x01(\tH\x00R\x05\x65rror\x88\x01\x01\x42\x08\n\x06_error\"+\n\x17\x43hangesetCommittedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\"Y\n\x15\x43hangesetCreatedEvent\x12@\n\tchangeset\x18\x01 \x01(\x0b\x32\".xyz.block.ftl.schema.v1.ChangesetR\tchangeset\")\n\x15\x43hangesetDrainedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\">\n\x14\x43hangesetFailedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05\x65rror\x18\x02 \x01(\tR\x05\x65rror\"+\n\x17\x43hangesetFinalizedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\"*\n\x16\x43hangesetPreparedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\"\xad\x01\n\x06\x43onfig\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x31\n\x04type\x18\x04 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x04typeB\x06\n\x04_pos\"j\n\x14\x44SNDatabaseConnector\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x10\n\x03\x64sn\x18\x02 \x01(\tR\x03\x64snB\x06\n\x04_pos\"\xd8\x02\n\x04\x44\x61ta\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x16\n\x06\x65xport\x18\x03 \x01(\x08R\x06\x65xport\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12O\n\x0ftype_parameters\x18\x05 \x03(\x0b\x32&.xyz.block.ftl.schema.v1.TypeParameterR\x0etypeParameters\x12\x36\n\x06\x66ields\x18\x06 \x03(\x0b\x32\x1e.xyz.block.ftl.schema.v1.FieldR\x06\x66ields\x12=\n\x08metadata\x18\x07 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadataB\x06\n\x04_pos\"\xa6\x02\n\x08\x44\x61tabase\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12I\n\x07runtime\x18\x92\xf7\x01 \x01(\x0b\x32(.xyz.block.ftl.schema.v1.DatabaseRuntimeH\x01R\x07runtime\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x12\n\x04type\x18\x04 \x01(\tR\x04type\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12=\n\x08metadata\x18\x05 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadataB\x06\n\x04_posB\n\n\x08_runtime\"\x80\x02\n\x11\x44\x61tabaseConnector\x12{\n\x1e\x61wsiam_auth_database_connector\x18\x02 \x01(\x0b\x32\x34.xyz.block.ftl.schema.v1.AWSIAMAuthDatabaseConnectorH\x00R\x1b\x61wsiamAuthDatabaseConnector\x12\x65\n\x16\x64sn_database_connector\x18\x01 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.DSNDatabaseConnectorH\x00R\x14\x64snDatabaseConnectorB\x07\n\x05value\"}\n\x0f\x44\x61tabaseRuntime\x12Z\n\x0b\x63onnections\x18\x01 \x01(\x0b\x32\x33.xyz.block.ftl.schema.v1.DatabaseRuntimeConnectionsH\x00R\x0b\x63onnections\x88\x01\x01\x42\x0e\n\x0c_connections\"\x9e\x01\n\x1a\x44\x61tabaseRuntimeConnections\x12>\n\x04read\x18\x01 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.DatabaseConnectorR\x04read\x12@\n\x05write\x18\x02 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.DatabaseConnectorR\x05write\"\xbb\x01\n\x14\x44\x61tabaseRuntimeEvent\x12\x1e\n\ndeployment\x18\x01 \x01(\tR\ndeployment\x12\x1c\n\tchangeset\x18\x02 \x01(\tR\tchangeset\x12\x0e\n\x02id\x18\x03 \x01(\tR\x02id\x12U\n\x0b\x63onnections\x18\x04 \x01(\x0b\x32\x33.xyz.block.ftl.schema.v1.DatabaseRuntimeConnectionsR\x0b\x63onnections\"\xe2\x03\n\x04\x44\x65\x63l\x12\x39\n\x06\x63onfig\x18\x06 \x01(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ConfigH\x00R\x06\x63onfig\x12\x33\n\x04\x64\x61ta\x18\x01 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.DataH\x00R\x04\x64\x61ta\x12?\n\x08\x64\x61tabase\x18\x03 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.DatabaseH\x00R\x08\x64\x61tabase\x12\x33\n\x04\x65num\x18\x04 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.EnumH\x00R\x04\x65num\x12\x39\n\x06secret\x18\x07 \x01(\x0b\x32\x1f.xyz.block.ftl.schema.v1.SecretH\x00R\x06secret\x12\x36\n\x05topic\x18\t \x01(\x0b\x32\x1e.xyz.block.ftl.schema.v1.TopicH\x00R\x05topic\x12\x43\n\ntype_alias\x18\x05 \x01(\x0b\x32\".xyz.block.ftl.schema.v1.TypeAliasH\x00R\ttypeAlias\x12\x33\n\x04verb\x18\x02 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.VerbH\x00R\x04verbB\x07\n\x05value\"\xac\x01\n\x18\x44\x65ploymentActivatedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12=\n\x0c\x61\x63tivated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0b\x61\x63tivatedAt\x12!\n\x0cmin_replicas\x18\x03 \x01(\x03R\x0bminReplicas\x12\x1c\n\tchangeset\x18\x04 \x01(\tR\tchangeset\"\x81\x01\n\x16\x44\x65ploymentCreatedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x37\n\x06schema\x18\x02 \x01(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ModuleR\x06schema\x12\x1c\n\tchangeset\x18\x03 \x01(\tR\tchangeset\"s\n\x1a\x44\x65ploymentDeactivatedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12%\n\x0emodule_removed\x18\x02 \x01(\x08R\rmoduleRemoved\x12\x1c\n\tchangeset\x18\x03 \x01(\tR\tchangeset\"l\n\x1e\x44\x65ploymentReplicasUpdatedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x1a\n\x08replicas\x18\x02 \x01(\x03R\x08replicas\x12\x1c\n\tchangeset\x18\x03 \x01(\tR\tchangeset\"\x87\x01\n\x1c\x44\x65ploymentSchemaUpdatedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x37\n\x06schema\x18\x02 \x01(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ModuleR\x06schema\x12\x1c\n\tchangeset\x18\x03 \x01(\tR\tchangeset\"\x93\x02\n\x04\x45num\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x16\n\x06\x65xport\x18\x03 \x01(\x08R\x06\x65xport\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x36\n\x04type\x18\x05 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeH\x01R\x04type\x88\x01\x01\x12@\n\x08variants\x18\x06 \x03(\x0b\x32$.xyz.block.ftl.schema.v1.EnumVariantR\x08variantsB\x06\n\x04_posB\x07\n\x05_type\"\xb5\x01\n\x0b\x45numVariant\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x34\n\x05value\x18\x04 \x01(\x0b\x32\x1e.xyz.block.ftl.schema.v1.ValueR\x05valueB\x06\n\x04_pos\"\xf9\x0c\n\x05\x45vent\x12n\n\x19\x63hangeset_committed_event\x18\x0c \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.ChangesetCommittedEventH\x00R\x17\x63hangesetCommittedEvent\x12h\n\x17\x63hangeset_created_event\x18\n \x01(\x0b\x32..xyz.block.ftl.schema.v1.ChangesetCreatedEventH\x00R\x15\x63hangesetCreatedEvent\x12h\n\x17\x63hangeset_drained_event\x18\r \x01(\x0b\x32..xyz.block.ftl.schema.v1.ChangesetDrainedEventH\x00R\x15\x63hangesetDrainedEvent\x12\x65\n\x16\x63hangeset_failed_event\x18\x0f \x01(\x0b\x32-.xyz.block.ftl.schema.v1.ChangesetFailedEventH\x00R\x14\x63hangesetFailedEvent\x12n\n\x19\x63hangeset_finalized_event\x18\x0e \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.ChangesetFinalizedEventH\x00R\x17\x63hangesetFinalizedEvent\x12k\n\x18\x63hangeset_prepared_event\x18\x0b \x01(\x0b\x32/.xyz.block.ftl.schema.v1.ChangesetPreparedEventH\x00R\x16\x63hangesetPreparedEvent\x12\x65\n\x16\x64\x61tabase_runtime_event\x18\x08 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.DatabaseRuntimeEventH\x00R\x14\x64\x61tabaseRuntimeEvent\x12q\n\x1a\x64\x65ployment_activated_event\x18\x04 \x01(\x0b\x32\x31.xyz.block.ftl.schema.v1.DeploymentActivatedEventH\x00R\x18\x64\x65ploymentActivatedEvent\x12k\n\x18\x64\x65ployment_created_event\x18\x01 \x01(\x0b\x32/.xyz.block.ftl.schema.v1.DeploymentCreatedEventH\x00R\x16\x64\x65ploymentCreatedEvent\x12w\n\x1c\x64\x65ployment_deactivated_event\x18\x05 \x01(\x0b\x32\x33.xyz.block.ftl.schema.v1.DeploymentDeactivatedEventH\x00R\x1a\x64\x65ploymentDeactivatedEvent\x12\x84\x01\n!deployment_replicas_updated_event\x18\x03 \x01(\x0b\x32\x37.xyz.block.ftl.schema.v1.DeploymentReplicasUpdatedEventH\x00R\x1e\x64\x65ploymentReplicasUpdatedEvent\x12~\n\x1f\x64\x65ployment_schema_updated_event\x18\x02 \x01(\x0b\x32\x35.xyz.block.ftl.schema.v1.DeploymentSchemaUpdatedEventH\x00R\x1c\x64\x65ploymentSchemaUpdatedEvent\x12_\n\x14module_runtime_event\x18\t \x01(\x0b\x32+.xyz.block.ftl.schema.v1.ModuleRuntimeEventH\x00R\x12moduleRuntimeEvent\x12\\\n\x13topic_runtime_event\x18\x07 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.TopicRuntimeEventH\x00R\x11topicRuntimeEvent\x12Y\n\x12verb_runtime_event\x18\x06 \x01(\x0b\x32).xyz.block.ftl.schema.v1.VerbRuntimeEventH\x00R\x10verbRuntimeEventB\x07\n\x05value\"\xeb\x01\n\x05\x46ield\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x03 \x03(\tR\x08\x63omments\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x31\n\x04type\x18\x04 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x04type\x12=\n\x08metadata\x18\x05 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadataB\x06\n\x04_pos\"I\n\x05\x46loat\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"\xe7\x01\n\x14IngressPathComponent\x12_\n\x14ingress_path_literal\x18\x01 \x01(\x0b\x32+.xyz.block.ftl.schema.v1.IngressPathLiteralH\x00R\x12ingressPathLiteral\x12\x65\n\x16ingress_path_parameter\x18\x02 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.IngressPathParameterH\x00R\x14ingressPathParameterB\x07\n\x05value\"j\n\x12IngressPathLiteral\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04text\x18\x02 \x01(\tR\x04textB\x06\n\x04_pos\"l\n\x14IngressPathParameter\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04name\x18\x02 \x01(\tR\x04nameB\x06\n\x04_pos\"G\n\x03Int\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"b\n\x08IntValue\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x14\n\x05value\x18\x02 \x01(\x03R\x05valueB\x06\n\x04_pos\"\xad\x01\n\x03Map\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12/\n\x03key\x18\x02 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x03key\x12\x33\n\x05value\x18\x03 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x05valueB\x06\n\x04_pos\"\xe5\t\n\x08Metadata\x12>\n\x05\x61lias\x18\x05 \x01(\x0b\x32&.xyz.block.ftl.schema.v1.MetadataAliasH\x00R\x05\x61lias\x12G\n\x08\x61rtefact\x18\x0e \x01(\x0b\x32).xyz.block.ftl.schema.v1.MetadataArtefactH\x00R\x08\x61rtefact\x12>\n\x05\x63\x61lls\x18\x01 \x01(\x0b\x32&.xyz.block.ftl.schema.v1.MetadataCallsH\x00R\x05\x63\x61lls\x12\x41\n\x06\x63onfig\x18\n \x01(\x0b\x32\'.xyz.block.ftl.schema.v1.MetadataConfigH\x00R\x06\x63onfig\x12\x45\n\x08\x63ron_job\x18\x03 \x01(\x0b\x32(.xyz.block.ftl.schema.v1.MetadataCronJobH\x00R\x07\x63ronJob\x12J\n\tdatabases\x18\x04 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.MetadataDatabasesH\x00R\tdatabases\x12G\n\x08\x65ncoding\x18\t \x01(\x0b\x32).xyz.block.ftl.schema.v1.MetadataEncodingH\x00R\x08\x65ncoding\x12\x44\n\x07ingress\x18\x02 \x01(\x0b\x32(.xyz.block.ftl.schema.v1.MetadataIngressH\x00R\x07ingress\x12M\n\npartitions\x18\x0f \x01(\x0b\x32+.xyz.block.ftl.schema.v1.MetadataPartitionsH\x00R\npartitions\x12J\n\tpublisher\x18\x0c \x01(\x0b\x32*.xyz.block.ftl.schema.v1.MetadataPublisherH\x00R\tpublisher\x12>\n\x05retry\x18\x06 \x01(\x0b\x32&.xyz.block.ftl.schema.v1.MetadataRetryH\x00R\x05retry\x12K\n\nsql_column\x18\x11 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.MetadataSQLColumnH\x00R\tsqlColumn\x12T\n\rsql_migration\x18\r \x01(\x0b\x32-.xyz.block.ftl.schema.v1.MetadataSQLMigrationH\x00R\x0csqlMigration\x12H\n\tsql_query\x18\x10 \x01(\x0b\x32).xyz.block.ftl.schema.v1.MetadataSQLQueryH\x00R\x08sqlQuery\x12\x44\n\x07secrets\x18\x0b \x01(\x0b\x32(.xyz.block.ftl.schema.v1.MetadataSecretsH\x00R\x07secrets\x12M\n\nsubscriber\x18\x07 \x01(\x0b\x32+.xyz.block.ftl.schema.v1.MetadataSubscriberH\x00R\nsubscriber\x12\x45\n\x08type_map\x18\x08 \x01(\x0b\x32(.xyz.block.ftl.schema.v1.MetadataTypeMapH\x00R\x07typeMapB\x07\n\x05value\"\x9f\x01\n\rMetadataAlias\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x36\n\x04kind\x18\x02 \x01(\x0e\x32\".xyz.block.ftl.schema.v1.AliasKindR\x04kind\x12\x14\n\x05\x61lias\x18\x03 \x01(\tR\x05\x61liasB\x06\n\x04_pos\"\xa0\x01\n\x10MetadataArtefact\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04path\x18\x02 \x01(\tR\x04path\x12\x16\n\x06\x64igest\x18\x03 \x01(\tR\x06\x64igest\x12\x1e\n\nexecutable\x18\x04 \x01(\x08R\nexecutableB\x06\n\x04_pos\"\x85\x01\n\rMetadataCalls\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x32\n\x05\x63\x61lls\x18\x02 \x03(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x05\x63\x61llsB\x06\n\x04_pos\"\x88\x01\n\x0eMetadataConfig\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x34\n\x06\x63onfig\x18\x02 \x03(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x06\x63onfigB\x06\n\x04_pos\"g\n\x0fMetadataCronJob\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04\x63ron\x18\x02 \x01(\tR\x04\x63ronB\x06\n\x04_pos\"\x89\x01\n\x11MetadataDatabases\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x32\n\x05\x63\x61lls\x18\x02 \x03(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x05\x63\x61llsB\x06\n\x04_pos\"\x82\x01\n\x10MetadataEncoding\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04type\x18\x02 \x01(\tR\x04type\x12\x18\n\x07lenient\x18\x03 \x01(\x08R\x07lenientB\x06\n\x04_pos\"\xc2\x01\n\x0fMetadataIngress\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04type\x18\x02 \x01(\tR\x04type\x12\x16\n\x06method\x18\x03 \x01(\tR\x06method\x12\x41\n\x04path\x18\x04 \x03(\x0b\x32-.xyz.block.ftl.schema.v1.IngressPathComponentR\x04pathB\x06\n\x04_pos\"v\n\x12MetadataPartitions\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1e\n\npartitions\x18\x02 \x01(\x03R\npartitionsB\x06\n\x04_pos\"\x8b\x01\n\x11MetadataPublisher\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x34\n\x06topics\x18\x02 \x03(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x06topicsB\x06\n\x04_pos\"\xfb\x01\n\rMetadataRetry\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x19\n\x05\x63ount\x18\x02 \x01(\x03H\x01R\x05\x63ount\x88\x01\x01\x12\x1f\n\x0bmin_backoff\x18\x03 \x01(\tR\nminBackoff\x12\x1f\n\x0bmax_backoff\x18\x04 \x01(\tR\nmaxBackoff\x12\x37\n\x05\x63\x61tch\x18\x05 \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefH\x02R\x05\x63\x61tch\x88\x01\x01\x42\x06\n\x04_posB\x08\n\x06_countB\x08\n\x06_catch\"\x7f\n\x11MetadataSQLColumn\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x14\n\x05table\x18\x02 \x01(\tR\x05table\x12\x12\n\x04name\x18\x03 \x01(\tR\x04nameB\x06\n\x04_pos\"p\n\x14MetadataSQLMigration\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x16\n\x06\x64igest\x18\x02 \x01(\tR\x06\x64igestB\x06\n\x04_pos\"\x84\x01\n\x10MetadataSQLQuery\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x18\n\x07\x63ommand\x18\x02 \x01(\tR\x07\x63ommand\x12\x14\n\x05query\x18\x03 \x01(\tR\x05queryB\x06\n\x04_pos\"\x8b\x01\n\x0fMetadataSecrets\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x36\n\x07secrets\x18\x02 \x03(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x07secretsB\x06\n\x04_pos\"\xf1\x01\n\x12MetadataSubscriber\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x32\n\x05topic\x18\x02 \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x05topic\x12\x44\n\x0b\x66rom_offset\x18\x03 \x01(\x0e\x32#.xyz.block.ftl.schema.v1.FromOffsetR\nfromOffset\x12\x1f\n\x0b\x64\x65\x61\x64_letter\x18\x04 \x01(\x08R\ndeadLetterB\x06\n\x04_pos\"\x8e\x01\n\x0fMetadataTypeMap\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x18\n\x07runtime\x18\x02 \x01(\tR\x07runtime\x12\x1f\n\x0bnative_name\x18\x03 \x01(\tR\nnativeNameB\x06\n\x04_pos\"\xcc\x02\n\x06Module\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x18\n\x07\x62uiltin\x18\x03 \x01(\x08R\x07\x62uiltin\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12=\n\x08metadata\x18\x06 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadata\x12\x33\n\x05\x64\x65\x63ls\x18\x05 \x03(\x0b\x32\x1d.xyz.block.ftl.schema.v1.DeclR\x05\x64\x65\x63ls\x12\x42\n\x07runtime\x18\x92\xf7\x01 \x01(\x0b\x32&.xyz.block.ftl.schema.v1.ModuleRuntimeR\x07runtimeB\x06\n\x04_pos\"\xe5\x02\n\rModuleRuntime\x12>\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.ModuleRuntimeBaseR\x04\x62\x61se\x12L\n\x07scaling\x18\x02 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.ModuleRuntimeScalingH\x00R\x07scaling\x88\x01\x01\x12U\n\ndeployment\x18\x03 \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.ModuleRuntimeDeploymentH\x01R\ndeployment\x88\x01\x01\x12I\n\x06runner\x18\x04 \x01(\x0b\x32,.xyz.block.ftl.schema.v1.ModuleRuntimeRunnerH\x02R\x06runner\x88\x01\x01\x42\n\n\x08_scalingB\r\n\x0b_deploymentB\t\n\x07_runner\"\xcf\x01\n\x11ModuleRuntimeBase\x12;\n\x0b\x63reate_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\ncreateTime\x12\x1a\n\x08language\x18\x02 \x01(\tR\x08language\x12\x13\n\x02os\x18\x03 \x01(\tH\x00R\x02os\x88\x01\x01\x12\x17\n\x04\x61rch\x18\x04 \x01(\tH\x01R\x04\x61rch\x88\x01\x01\x12\x19\n\x05image\x18\x05 \x01(\tH\x02R\x05image\x88\x01\x01\x42\x05\n\x03_osB\x07\n\x05_archB\x08\n\x06_image\"\x90\x02\n\x17ModuleRuntimeDeployment\x12%\n\x0e\x64\x65ployment_key\x18\x02 \x01(\tR\rdeploymentKey\x12\x39\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x42\n\x0c\x61\x63tivated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\x0b\x61\x63tivatedAt\x88\x01\x01\x12>\n\x05state\x18\x05 \x01(\x0e\x32(.xyz.block.ftl.schema.v1.DeploymentStateR\x05stateB\x0f\n\r_activated_at\"\xa8\x03\n\x12ModuleRuntimeEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x1c\n\tchangeset\x18\x02 \x01(\tR\tchangeset\x12\x43\n\x04\x62\x61se\x18\x03 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.ModuleRuntimeBaseH\x00R\x04\x62\x61se\x88\x01\x01\x12L\n\x07scaling\x18\x04 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.ModuleRuntimeScalingH\x01R\x07scaling\x88\x01\x01\x12U\n\ndeployment\x18\x05 \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.ModuleRuntimeDeploymentH\x02R\ndeployment\x88\x01\x01\x12I\n\x06runner\x18\x06 \x01(\x0b\x32,.xyz.block.ftl.schema.v1.ModuleRuntimeRunnerH\x03R\x06runner\x88\x01\x01\x42\x07\n\x05_baseB\n\n\x08_scalingB\r\n\x0b_deploymentB\t\n\x07_runner\"1\n\x13ModuleRuntimeRunner\x12\x1a\n\x08\x65ndpoint\x18\x01 \x01(\tR\x08\x65ndpoint\"9\n\x14ModuleRuntimeScaling\x12!\n\x0cmin_replicas\x18\x01 \x01(\x05R\x0bminReplicas\"\x8d\x01\n\x08Optional\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x36\n\x04type\x18\x02 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeH\x01R\x04type\x88\x01\x01\x42\x06\n\x04_posB\x07\n\x05_type\"R\n\x08Position\x12\x1a\n\x08\x66ilename\x18\x01 \x01(\tR\x08\x66ilename\x12\x12\n\x04line\x18\x02 \x01(\x03R\x04line\x12\x16\n\x06\x63olumn\x18\x03 \x01(\x03R\x06\x63olumn\"\xbb\x01\n\x03Ref\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x16\n\x06module\x18\x03 \x01(\tR\x06module\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x46\n\x0ftype_parameters\x18\x04 \x03(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x0etypeParametersB\x06\n\x04_pos\"\xbd\x04\n\x07Runtime\x12U\n\x10\x64\x61tabase_runtime\x18\x06 \x01(\x0b\x32(.xyz.block.ftl.schema.v1.DatabaseRuntimeH\x00R\x0f\x64\x61tabaseRuntime\x12n\n\x19module_runtime_deployment\x18\x01 \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.ModuleRuntimeDeploymentH\x00R\x17moduleRuntimeDeployment\x12\x62\n\x15module_runtime_runner\x18\x03 \x01(\x0b\x32,.xyz.block.ftl.schema.v1.ModuleRuntimeRunnerH\x00R\x13moduleRuntimeRunner\x12\x65\n\x16module_runtime_scaling\x18\x02 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.ModuleRuntimeScalingH\x00R\x14moduleRuntimeScaling\x12L\n\rtopic_runtime\x18\x05 \x01(\x0b\x32%.xyz.block.ftl.schema.v1.TopicRuntimeH\x00R\x0ctopicRuntime\x12I\n\x0cverb_runtime\x18\x04 \x01(\x0b\x32$.xyz.block.ftl.schema.v1.VerbRuntimeH\x00R\x0bverbRuntimeB\x07\n\x05value\"\x8e\x01\n\x0eRuntimeElement\x12:\n\x07\x65lement\x18\x01 \x01(\x0b\x32 .xyz.block.ftl.schema.v1.RuntimeR\x07\x65lement\x12\x1e\n\ndeployment\x18\x02 \x01(\tR\ndeployment\x12\x17\n\x04name\x18\x03 \x01(\tH\x00R\x04name\x88\x01\x01\x42\x07\n\x05_name\"\x98\x03\n\x0cRuntimeEvent\x12\x65\n\x16\x64\x61tabase_runtime_event\x18\x08 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.DatabaseRuntimeEventH\x00R\x14\x64\x61tabaseRuntimeEvent\x12_\n\x14module_runtime_event\x18\t \x01(\x0b\x32+.xyz.block.ftl.schema.v1.ModuleRuntimeEventH\x00R\x12moduleRuntimeEvent\x12\\\n\x13topic_runtime_event\x18\x07 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.TopicRuntimeEventH\x00R\x11topicRuntimeEvent\x12Y\n\x12verb_runtime_event\x18\x06 \x01(\x0b\x32).xyz.block.ftl.schema.v1.VerbRuntimeEventH\x00R\x10verbRuntimeEventB\x07\n\x05value\"\x85\x01\n\x06Schema\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x39\n\x07modules\x18\x02 \x03(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ModuleR\x07modulesB\x06\n\x04_pos\"\xda\x01\n\x0bSchemaState\x12\x39\n\x07modules\x18\x01 \x03(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ModuleR\x07modules\x12\x42\n\nchangesets\x18\x02 \x03(\x0b\x32\".xyz.block.ftl.schema.v1.ChangesetR\nchangesets\x12L\n\x0eruntime_events\x18\x03 \x03(\x0b\x32%.xyz.block.ftl.schema.v1.RuntimeEventR\rruntimeEvents\"\xad\x01\n\x06Secret\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x31\n\x04type\x18\x04 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x04typeB\x06\n\x04_pos\"J\n\x06String\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"e\n\x0bStringValue\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x14\n\x05value\x18\x02 \x01(\tR\x05valueB\x06\n\x04_pos\"H\n\x04Time\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"\xd9\x02\n\x05Topic\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x46\n\x07runtime\x18\x92\xf7\x01 \x01(\x0b\x32%.xyz.block.ftl.schema.v1.TopicRuntimeH\x01R\x07runtime\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x16\n\x06\x65xport\x18\x03 \x01(\x08R\x06\x65xport\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x33\n\x05\x65vent\x18\x05 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x05\x65vent\x12=\n\x08metadata\x18\x06 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadataB\x06\n\x04_posB\n\n\x08_runtime\"N\n\x0cTopicRuntime\x12#\n\rkafka_brokers\x18\x01 \x03(\tR\x0ckafkaBrokers\x12\x19\n\x08topic_id\x18\x02 \x01(\tR\x07topicId\"\xa2\x01\n\x11TopicRuntimeEvent\x12\x1e\n\ndeployment\x18\x01 \x01(\tR\ndeployment\x12\x1c\n\tchangeset\x18\x02 \x01(\tR\tchangeset\x12\x0e\n\x02id\x18\x03 \x01(\tR\x02id\x12?\n\x07payload\x18\x04 \x01(\x0b\x32%.xyz.block.ftl.schema.v1.TopicRuntimeR\x07payload\"\x9a\x05\n\x04Type\x12\x30\n\x03\x61ny\x18\t \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.AnyH\x00R\x03\x61ny\x12\x36\n\x05\x61rray\x18\x07 \x01(\x0b\x32\x1e.xyz.block.ftl.schema.v1.ArrayH\x00R\x05\x61rray\x12\x33\n\x04\x62ool\x18\x05 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.BoolH\x00R\x04\x62ool\x12\x36\n\x05\x62ytes\x18\x04 \x01(\x0b\x32\x1e.xyz.block.ftl.schema.v1.BytesH\x00R\x05\x62ytes\x12\x36\n\x05\x66loat\x18\x02 \x01(\x0b\x32\x1e.xyz.block.ftl.schema.v1.FloatH\x00R\x05\x66loat\x12\x30\n\x03int\x18\x01 \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.IntH\x00R\x03int\x12\x30\n\x03map\x18\x08 \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.MapH\x00R\x03map\x12?\n\x08optional\x18\x0c \x01(\x0b\x32!.xyz.block.ftl.schema.v1.OptionalH\x00R\x08optional\x12\x30\n\x03ref\x18\x0b \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefH\x00R\x03ref\x12\x39\n\x06string\x18\x03 \x01(\x0b\x32\x1f.xyz.block.ftl.schema.v1.StringH\x00R\x06string\x12\x33\n\x04time\x18\x06 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TimeH\x00R\x04time\x12\x33\n\x04unit\x18\n \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.UnitH\x00R\x04unitB\x07\n\x05value\"\x87\x02\n\tTypeAlias\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x16\n\x06\x65xport\x18\x03 \x01(\x08R\x06\x65xport\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x31\n\x04type\x18\x05 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x04type\x12=\n\x08metadata\x18\x06 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadataB\x06\n\x04_pos\"e\n\rTypeParameter\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04name\x18\x02 \x01(\tR\x04nameB\x06\n\x04_pos\"\x82\x01\n\tTypeValue\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x33\n\x05value\x18\x02 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x05valueB\x06\n\x04_pos\"H\n\x04Unit\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"\xe2\x01\n\x05Value\x12@\n\tint_value\x18\x02 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.IntValueH\x00R\x08intValue\x12I\n\x0cstring_value\x18\x01 \x01(\x0b\x32$.xyz.block.ftl.schema.v1.StringValueH\x00R\x0bstringValue\x12\x43\n\ntype_value\x18\x03 \x01(\x0b\x32\".xyz.block.ftl.schema.v1.TypeValueH\x00R\ttypeValueB\x07\n\x05value\"\x96\x03\n\x04Verb\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x16\n\x06\x65xport\x18\x03 \x01(\x08R\x06\x65xport\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x37\n\x07request\x18\x05 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x07request\x12\x39\n\x08response\x18\x06 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x08response\x12=\n\x08metadata\x18\x07 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadata\x12\x45\n\x07runtime\x18\x92\xf7\x01 \x01(\x0b\x32$.xyz.block.ftl.schema.v1.VerbRuntimeH\x01R\x07runtime\x88\x01\x01\x42\x06\n\x04_posB\n\n\x08_runtime\"y\n\x0bVerbRuntime\x12Y\n\x0csubscription\x18\x01 \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.VerbRuntimeSubscriptionH\x00R\x0csubscription\x88\x01\x01\x42\x0f\n\r_subscription\"\xcc\x01\n\x10VerbRuntimeEvent\x12\x1e\n\ndeployment\x18\x01 \x01(\tR\ndeployment\x12\x1c\n\tchangeset\x18\x02 \x01(\tR\tchangeset\x12\x0e\n\x02id\x18\x03 \x01(\tR\x02id\x12Y\n\x0csubscription\x18\x04 \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.VerbRuntimeSubscriptionH\x00R\x0csubscription\x88\x01\x01\x42\x0f\n\r_subscription\">\n\x17VerbRuntimeSubscription\x12#\n\rkafka_brokers\x18\x01 \x03(\tR\x0ckafkaBrokers*<\n\tAliasKind\x12\x1a\n\x16\x41LIAS_KIND_UNSPECIFIED\x10\x00\x12\x13\n\x0f\x41LIAS_KIND_JSON\x10\x01*\x87\x02\n\x0e\x43hangesetState\x12\x1f\n\x1b\x43HANGESET_STATE_UNSPECIFIED\x10\x00\x12\x1d\n\x19\x43HANGESET_STATE_PREPARING\x10\x01\x12\x1c\n\x18\x43HANGESET_STATE_PREPARED\x10\x02\x12\x1d\n\x19\x43HANGESET_STATE_COMMITTED\x10\x03\x12\x1b\n\x17\x43HANGESET_STATE_DRAINED\x10\x04\x12\x1d\n\x19\x43HANGESET_STATE_FINALIZED\x10\x05\x12 \n\x1c\x43HANGESET_STATE_ROLLING_BACK\x10\x06\x12\x1a\n\x16\x43HANGESET_STATE_FAILED\x10\x07*\xaf\x02\n\x0f\x44\x65ploymentState\x12 \n\x1c\x44\x45PLOYMENT_STATE_UNSPECIFIED\x10\x00\x12!\n\x1d\x44\x45PLOYMENT_STATE_PROVISIONING\x10\x01\x12\x1a\n\x16\x44\x45PLOYMENT_STATE_READY\x10\x02\x12\x1b\n\x17\x44\x45PLOYMENT_STATE_CANARY\x10\x03\x12\x1e\n\x1a\x44\x45PLOYMENT_STATE_CANONICAL\x10\x04\x12\x1d\n\x19\x44\x45PLOYMENT_STATE_DRAINING\x10\x05\x12$\n DEPLOYMENT_STATE_DE_PROVISIONING\x10\x06\x12\x1c\n\x18\x44\x45PLOYMENT_STATE_DELETED\x10\x07\x12\x1b\n\x17\x44\x45PLOYMENT_STATE_FAILED\x10\x08*\\\n\nFromOffset\x12\x1b\n\x17\x46ROM_OFFSET_UNSPECIFIED\x10\x00\x12\x19\n\x15\x46ROM_OFFSET_BEGINNING\x10\x01\x12\x16\n\x12\x46ROM_OFFSET_LATEST\x10\x02\x42GP\x01ZCgithub.com/block/ftl/common/protos/xyz/block/ftl/schema/v1;schemapbb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$xyz/block/ftl/schema/v1/schema.proto\x12\x17xyz.block.ftl.schema.v1\x1a\x1fgoogle/protobuf/timestamp.proto\"\xb3\x01\n\x1b\x41WSIAMAuthDatabaseConnector\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08username\x18\x02 \x01(\tR\x08username\x12\x1a\n\x08\x65ndpoint\x18\x03 \x01(\tR\x08\x65ndpoint\x12\x1a\n\x08\x64\x61tabase\x18\x04 \x01(\tR\x08\x64\x61tabaseB\x06\n\x04_pos\"G\n\x03\x41ny\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"\x82\x01\n\x05\x41rray\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x37\n\x07\x65lement\x18\x02 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x07\x65lementB\x06\n\x04_pos\"H\n\x04\x42ool\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"I\n\x05\x42ytes\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"\xe0\x02\n\tChangeset\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x39\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\x07modules\x18\x03 \x03(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ModuleR\x07modules\x12\x1b\n\tto_remove\x18\x04 \x03(\tR\x08toRemove\x12J\n\x10removing_modules\x18\x05 \x03(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ModuleR\x0fremovingModules\x12=\n\x05state\x18\x06 \x01(\x0e\x32\'.xyz.block.ftl.schema.v1.ChangesetStateR\x05state\x12\x19\n\x05\x65rror\x18\x07 \x01(\tH\x00R\x05\x65rror\x88\x01\x01\x42\x08\n\x06_error\"+\n\x17\x43hangesetCommittedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\"Y\n\x15\x43hangesetCreatedEvent\x12@\n\tchangeset\x18\x01 \x01(\x0b\x32\".xyz.block.ftl.schema.v1.ChangesetR\tchangeset\")\n\x15\x43hangesetDrainedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\">\n\x14\x43hangesetFailedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05\x65rror\x18\x02 \x01(\tR\x05\x65rror\"+\n\x17\x43hangesetFinalizedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\"*\n\x16\x43hangesetPreparedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\"\xad\x01\n\x06\x43onfig\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x31\n\x04type\x18\x04 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x04typeB\x06\n\x04_pos\"j\n\x14\x44SNDatabaseConnector\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x10\n\x03\x64sn\x18\x02 \x01(\tR\x03\x64snB\x06\n\x04_pos\"\xd8\x02\n\x04\x44\x61ta\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x16\n\x06\x65xport\x18\x03 \x01(\x08R\x06\x65xport\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12O\n\x0ftype_parameters\x18\x05 \x03(\x0b\x32&.xyz.block.ftl.schema.v1.TypeParameterR\x0etypeParameters\x12\x36\n\x06\x66ields\x18\x06 \x03(\x0b\x32\x1e.xyz.block.ftl.schema.v1.FieldR\x06\x66ields\x12=\n\x08metadata\x18\x07 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadataB\x06\n\x04_pos\"\xa6\x02\n\x08\x44\x61tabase\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12I\n\x07runtime\x18\x92\xf7\x01 \x01(\x0b\x32(.xyz.block.ftl.schema.v1.DatabaseRuntimeH\x01R\x07runtime\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x12\n\x04type\x18\x04 \x01(\tR\x04type\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12=\n\x08metadata\x18\x05 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadataB\x06\n\x04_posB\n\n\x08_runtime\"\x80\x02\n\x11\x44\x61tabaseConnector\x12{\n\x1e\x61wsiam_auth_database_connector\x18\x02 \x01(\x0b\x32\x34.xyz.block.ftl.schema.v1.AWSIAMAuthDatabaseConnectorH\x00R\x1b\x61wsiamAuthDatabaseConnector\x12\x65\n\x16\x64sn_database_connector\x18\x01 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.DSNDatabaseConnectorH\x00R\x14\x64snDatabaseConnectorB\x07\n\x05value\"}\n\x0f\x44\x61tabaseRuntime\x12Z\n\x0b\x63onnections\x18\x01 \x01(\x0b\x32\x33.xyz.block.ftl.schema.v1.DatabaseRuntimeConnectionsH\x00R\x0b\x63onnections\x88\x01\x01\x42\x0e\n\x0c_connections\"\x9e\x01\n\x1a\x44\x61tabaseRuntimeConnections\x12>\n\x04read\x18\x01 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.DatabaseConnectorR\x04read\x12@\n\x05write\x18\x02 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.DatabaseConnectorR\x05write\"\xe2\x03\n\x04\x44\x65\x63l\x12\x39\n\x06\x63onfig\x18\x06 \x01(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ConfigH\x00R\x06\x63onfig\x12\x33\n\x04\x64\x61ta\x18\x01 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.DataH\x00R\x04\x64\x61ta\x12?\n\x08\x64\x61tabase\x18\x03 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.DatabaseH\x00R\x08\x64\x61tabase\x12\x33\n\x04\x65num\x18\x04 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.EnumH\x00R\x04\x65num\x12\x39\n\x06secret\x18\x07 \x01(\x0b\x32\x1f.xyz.block.ftl.schema.v1.SecretH\x00R\x06secret\x12\x36\n\x05topic\x18\t \x01(\x0b\x32\x1e.xyz.block.ftl.schema.v1.TopicH\x00R\x05topic\x12\x43\n\ntype_alias\x18\x05 \x01(\x0b\x32\".xyz.block.ftl.schema.v1.TypeAliasH\x00R\ttypeAlias\x12\x33\n\x04verb\x18\x02 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.VerbH\x00R\x04verbB\x07\n\x05value\"\x81\x01\n\x16\x44\x65ploymentCreatedEvent\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x37\n\x06schema\x18\x02 \x01(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ModuleR\x06schema\x12\x1c\n\tchangeset\x18\x03 \x01(\tR\tchangeset\"y\n\x16\x44\x65ploymentRuntimeEvent\x12\x41\n\x07payload\x18\x01 \x01(\x0b\x32\'.xyz.block.ftl.schema.v1.RuntimeElementR\x07payload\x12\x1c\n\tchangeset\x18\x02 \x01(\tR\tchangeset\"\x93\x02\n\x04\x45num\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x16\n\x06\x65xport\x18\x03 \x01(\x08R\x06\x65xport\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x36\n\x04type\x18\x05 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeH\x01R\x04type\x88\x01\x01\x12@\n\x08variants\x18\x06 \x03(\x0b\x32$.xyz.block.ftl.schema.v1.EnumVariantR\x08variantsB\x06\n\x04_posB\x07\n\x05_type\"\xb5\x01\n\x0b\x45numVariant\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x34\n\x05value\x18\x04 \x01(\x0b\x32\x1e.xyz.block.ftl.schema.v1.ValueR\x05valueB\x06\n\x04_pos\"\xf2\x06\n\x05\x45vent\x12n\n\x19\x63hangeset_committed_event\x18\x05 \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.ChangesetCommittedEventH\x00R\x17\x63hangesetCommittedEvent\x12h\n\x17\x63hangeset_created_event\x18\x03 \x01(\x0b\x32..xyz.block.ftl.schema.v1.ChangesetCreatedEventH\x00R\x15\x63hangesetCreatedEvent\x12h\n\x17\x63hangeset_drained_event\x18\x06 \x01(\x0b\x32..xyz.block.ftl.schema.v1.ChangesetDrainedEventH\x00R\x15\x63hangesetDrainedEvent\x12\x65\n\x16\x63hangeset_failed_event\x18\x08 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.ChangesetFailedEventH\x00R\x14\x63hangesetFailedEvent\x12n\n\x19\x63hangeset_finalized_event\x18\x07 \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.ChangesetFinalizedEventH\x00R\x17\x63hangesetFinalizedEvent\x12k\n\x18\x63hangeset_prepared_event\x18\x04 \x01(\x0b\x32/.xyz.block.ftl.schema.v1.ChangesetPreparedEventH\x00R\x16\x63hangesetPreparedEvent\x12k\n\x18\x64\x65ployment_created_event\x18\x01 \x01(\x0b\x32/.xyz.block.ftl.schema.v1.DeploymentCreatedEventH\x00R\x16\x64\x65ploymentCreatedEvent\x12k\n\x18\x64\x65ployment_runtime_event\x18\x02 \x01(\x0b\x32/.xyz.block.ftl.schema.v1.DeploymentRuntimeEventH\x00R\x16\x64\x65ploymentRuntimeEventB\x07\n\x05value\"\xeb\x01\n\x05\x46ield\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x03 \x03(\tR\x08\x63omments\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x31\n\x04type\x18\x04 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x04type\x12=\n\x08metadata\x18\x05 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadataB\x06\n\x04_pos\"I\n\x05\x46loat\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"\xe7\x01\n\x14IngressPathComponent\x12_\n\x14ingress_path_literal\x18\x01 \x01(\x0b\x32+.xyz.block.ftl.schema.v1.IngressPathLiteralH\x00R\x12ingressPathLiteral\x12\x65\n\x16ingress_path_parameter\x18\x02 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.IngressPathParameterH\x00R\x14ingressPathParameterB\x07\n\x05value\"j\n\x12IngressPathLiteral\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04text\x18\x02 \x01(\tR\x04textB\x06\n\x04_pos\"l\n\x14IngressPathParameter\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04name\x18\x02 \x01(\tR\x04nameB\x06\n\x04_pos\"G\n\x03Int\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"b\n\x08IntValue\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x14\n\x05value\x18\x02 \x01(\x03R\x05valueB\x06\n\x04_pos\"\xad\x01\n\x03Map\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12/\n\x03key\x18\x02 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x03key\x12\x33\n\x05value\x18\x03 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x05valueB\x06\n\x04_pos\"\xe5\t\n\x08Metadata\x12>\n\x05\x61lias\x18\x05 \x01(\x0b\x32&.xyz.block.ftl.schema.v1.MetadataAliasH\x00R\x05\x61lias\x12G\n\x08\x61rtefact\x18\x0e \x01(\x0b\x32).xyz.block.ftl.schema.v1.MetadataArtefactH\x00R\x08\x61rtefact\x12>\n\x05\x63\x61lls\x18\x01 \x01(\x0b\x32&.xyz.block.ftl.schema.v1.MetadataCallsH\x00R\x05\x63\x61lls\x12\x41\n\x06\x63onfig\x18\n \x01(\x0b\x32\'.xyz.block.ftl.schema.v1.MetadataConfigH\x00R\x06\x63onfig\x12\x45\n\x08\x63ron_job\x18\x03 \x01(\x0b\x32(.xyz.block.ftl.schema.v1.MetadataCronJobH\x00R\x07\x63ronJob\x12J\n\tdatabases\x18\x04 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.MetadataDatabasesH\x00R\tdatabases\x12G\n\x08\x65ncoding\x18\t \x01(\x0b\x32).xyz.block.ftl.schema.v1.MetadataEncodingH\x00R\x08\x65ncoding\x12\x44\n\x07ingress\x18\x02 \x01(\x0b\x32(.xyz.block.ftl.schema.v1.MetadataIngressH\x00R\x07ingress\x12M\n\npartitions\x18\x0f \x01(\x0b\x32+.xyz.block.ftl.schema.v1.MetadataPartitionsH\x00R\npartitions\x12J\n\tpublisher\x18\x0c \x01(\x0b\x32*.xyz.block.ftl.schema.v1.MetadataPublisherH\x00R\tpublisher\x12>\n\x05retry\x18\x06 \x01(\x0b\x32&.xyz.block.ftl.schema.v1.MetadataRetryH\x00R\x05retry\x12K\n\nsql_column\x18\x11 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.MetadataSQLColumnH\x00R\tsqlColumn\x12T\n\rsql_migration\x18\r \x01(\x0b\x32-.xyz.block.ftl.schema.v1.MetadataSQLMigrationH\x00R\x0csqlMigration\x12H\n\tsql_query\x18\x10 \x01(\x0b\x32).xyz.block.ftl.schema.v1.MetadataSQLQueryH\x00R\x08sqlQuery\x12\x44\n\x07secrets\x18\x0b \x01(\x0b\x32(.xyz.block.ftl.schema.v1.MetadataSecretsH\x00R\x07secrets\x12M\n\nsubscriber\x18\x07 \x01(\x0b\x32+.xyz.block.ftl.schema.v1.MetadataSubscriberH\x00R\nsubscriber\x12\x45\n\x08type_map\x18\x08 \x01(\x0b\x32(.xyz.block.ftl.schema.v1.MetadataTypeMapH\x00R\x07typeMapB\x07\n\x05value\"\x9f\x01\n\rMetadataAlias\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x36\n\x04kind\x18\x02 \x01(\x0e\x32\".xyz.block.ftl.schema.v1.AliasKindR\x04kind\x12\x14\n\x05\x61lias\x18\x03 \x01(\tR\x05\x61liasB\x06\n\x04_pos\"\xa0\x01\n\x10MetadataArtefact\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04path\x18\x02 \x01(\tR\x04path\x12\x16\n\x06\x64igest\x18\x03 \x01(\tR\x06\x64igest\x12\x1e\n\nexecutable\x18\x04 \x01(\x08R\nexecutableB\x06\n\x04_pos\"\x85\x01\n\rMetadataCalls\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x32\n\x05\x63\x61lls\x18\x02 \x03(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x05\x63\x61llsB\x06\n\x04_pos\"\x88\x01\n\x0eMetadataConfig\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x34\n\x06\x63onfig\x18\x02 \x03(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x06\x63onfigB\x06\n\x04_pos\"g\n\x0fMetadataCronJob\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04\x63ron\x18\x02 \x01(\tR\x04\x63ronB\x06\n\x04_pos\"\x89\x01\n\x11MetadataDatabases\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x32\n\x05\x63\x61lls\x18\x02 \x03(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x05\x63\x61llsB\x06\n\x04_pos\"\x82\x01\n\x10MetadataEncoding\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04type\x18\x02 \x01(\tR\x04type\x12\x18\n\x07lenient\x18\x03 \x01(\x08R\x07lenientB\x06\n\x04_pos\"\xc2\x01\n\x0fMetadataIngress\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04type\x18\x02 \x01(\tR\x04type\x12\x16\n\x06method\x18\x03 \x01(\tR\x06method\x12\x41\n\x04path\x18\x04 \x03(\x0b\x32-.xyz.block.ftl.schema.v1.IngressPathComponentR\x04pathB\x06\n\x04_pos\"v\n\x12MetadataPartitions\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1e\n\npartitions\x18\x02 \x01(\x03R\npartitionsB\x06\n\x04_pos\"\x8b\x01\n\x11MetadataPublisher\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x34\n\x06topics\x18\x02 \x03(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x06topicsB\x06\n\x04_pos\"\xfb\x01\n\rMetadataRetry\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x19\n\x05\x63ount\x18\x02 \x01(\x03H\x01R\x05\x63ount\x88\x01\x01\x12\x1f\n\x0bmin_backoff\x18\x03 \x01(\tR\nminBackoff\x12\x1f\n\x0bmax_backoff\x18\x04 \x01(\tR\nmaxBackoff\x12\x37\n\x05\x63\x61tch\x18\x05 \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefH\x02R\x05\x63\x61tch\x88\x01\x01\x42\x06\n\x04_posB\x08\n\x06_countB\x08\n\x06_catch\"\x7f\n\x11MetadataSQLColumn\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x14\n\x05table\x18\x02 \x01(\tR\x05table\x12\x12\n\x04name\x18\x03 \x01(\tR\x04nameB\x06\n\x04_pos\"p\n\x14MetadataSQLMigration\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x16\n\x06\x64igest\x18\x02 \x01(\tR\x06\x64igestB\x06\n\x04_pos\"\x84\x01\n\x10MetadataSQLQuery\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x18\n\x07\x63ommand\x18\x02 \x01(\tR\x07\x63ommand\x12\x14\n\x05query\x18\x03 \x01(\tR\x05queryB\x06\n\x04_pos\"\x8b\x01\n\x0fMetadataSecrets\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x36\n\x07secrets\x18\x02 \x03(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x07secretsB\x06\n\x04_pos\"\xf1\x01\n\x12MetadataSubscriber\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x32\n\x05topic\x18\x02 \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefR\x05topic\x12\x44\n\x0b\x66rom_offset\x18\x03 \x01(\x0e\x32#.xyz.block.ftl.schema.v1.FromOffsetR\nfromOffset\x12\x1f\n\x0b\x64\x65\x61\x64_letter\x18\x04 \x01(\x08R\ndeadLetterB\x06\n\x04_pos\"\x8e\x01\n\x0fMetadataTypeMap\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x18\n\x07runtime\x18\x02 \x01(\tR\x07runtime\x12\x1f\n\x0bnative_name\x18\x03 \x01(\tR\nnativeNameB\x06\n\x04_pos\"\xcc\x02\n\x06Module\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x18\n\x07\x62uiltin\x18\x03 \x01(\x08R\x07\x62uiltin\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12=\n\x08metadata\x18\x06 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadata\x12\x33\n\x05\x64\x65\x63ls\x18\x05 \x03(\x0b\x32\x1d.xyz.block.ftl.schema.v1.DeclR\x05\x64\x65\x63ls\x12\x42\n\x07runtime\x18\x92\xf7\x01 \x01(\x0b\x32&.xyz.block.ftl.schema.v1.ModuleRuntimeR\x07runtimeB\x06\n\x04_pos\"\xe5\x02\n\rModuleRuntime\x12>\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32*.xyz.block.ftl.schema.v1.ModuleRuntimeBaseR\x04\x62\x61se\x12L\n\x07scaling\x18\x02 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.ModuleRuntimeScalingH\x00R\x07scaling\x88\x01\x01\x12U\n\ndeployment\x18\x03 \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.ModuleRuntimeDeploymentH\x01R\ndeployment\x88\x01\x01\x12I\n\x06runner\x18\x04 \x01(\x0b\x32,.xyz.block.ftl.schema.v1.ModuleRuntimeRunnerH\x02R\x06runner\x88\x01\x01\x42\n\n\x08_scalingB\r\n\x0b_deploymentB\t\n\x07_runner\"\xcf\x01\n\x11ModuleRuntimeBase\x12;\n\x0b\x63reate_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\ncreateTime\x12\x1a\n\x08language\x18\x02 \x01(\tR\x08language\x12\x13\n\x02os\x18\x03 \x01(\tH\x00R\x02os\x88\x01\x01\x12\x17\n\x04\x61rch\x18\x04 \x01(\tH\x01R\x04\x61rch\x88\x01\x01\x12\x19\n\x05image\x18\x05 \x01(\tH\x02R\x05image\x88\x01\x01\x42\x05\n\x03_osB\x07\n\x05_archB\x08\n\x06_image\"\x90\x02\n\x17ModuleRuntimeDeployment\x12%\n\x0e\x64\x65ployment_key\x18\x02 \x01(\tR\rdeploymentKey\x12\x39\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x42\n\x0c\x61\x63tivated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\x0b\x61\x63tivatedAt\x88\x01\x01\x12>\n\x05state\x18\x05 \x01(\x0e\x32(.xyz.block.ftl.schema.v1.DeploymentStateR\x05stateB\x0f\n\r_activated_at\"1\n\x13ModuleRuntimeRunner\x12\x1a\n\x08\x65ndpoint\x18\x01 \x01(\tR\x08\x65ndpoint\"9\n\x14ModuleRuntimeScaling\x12!\n\x0cmin_replicas\x18\x01 \x01(\x05R\x0bminReplicas\"\x8d\x01\n\x08Optional\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x36\n\x04type\x18\x02 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeH\x01R\x04type\x88\x01\x01\x42\x06\n\x04_posB\x07\n\x05_type\"R\n\x08Position\x12\x1a\n\x08\x66ilename\x18\x01 \x01(\tR\x08\x66ilename\x12\x12\n\x04line\x18\x02 \x01(\x03R\x04line\x12\x16\n\x06\x63olumn\x18\x03 \x01(\x03R\x06\x63olumn\"\xbb\x01\n\x03Ref\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x16\n\x06module\x18\x03 \x01(\tR\x06module\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x46\n\x0ftype_parameters\x18\x04 \x03(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x0etypeParametersB\x06\n\x04_pos\"\xbd\x04\n\x07Runtime\x12U\n\x10\x64\x61tabase_runtime\x18\x06 \x01(\x0b\x32(.xyz.block.ftl.schema.v1.DatabaseRuntimeH\x00R\x0f\x64\x61tabaseRuntime\x12n\n\x19module_runtime_deployment\x18\x01 \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.ModuleRuntimeDeploymentH\x00R\x17moduleRuntimeDeployment\x12\x62\n\x15module_runtime_runner\x18\x03 \x01(\x0b\x32,.xyz.block.ftl.schema.v1.ModuleRuntimeRunnerH\x00R\x13moduleRuntimeRunner\x12\x65\n\x16module_runtime_scaling\x18\x02 \x01(\x0b\x32-.xyz.block.ftl.schema.v1.ModuleRuntimeScalingH\x00R\x14moduleRuntimeScaling\x12L\n\rtopic_runtime\x18\x05 \x01(\x0b\x32%.xyz.block.ftl.schema.v1.TopicRuntimeH\x00R\x0ctopicRuntime\x12I\n\x0cverb_runtime\x18\x04 \x01(\x0b\x32$.xyz.block.ftl.schema.v1.VerbRuntimeH\x00R\x0bverbRuntimeB\x07\n\x05value\"\x8e\x01\n\x0eRuntimeElement\x12:\n\x07\x65lement\x18\x01 \x01(\x0b\x32 .xyz.block.ftl.schema.v1.RuntimeR\x07\x65lement\x12\x1e\n\ndeployment\x18\x02 \x01(\tR\ndeployment\x12\x17\n\x04name\x18\x03 \x01(\tH\x00R\x04name\x88\x01\x01\x42\x07\n\x05_name\"\x85\x01\n\x06Schema\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x39\n\x07modules\x18\x02 \x03(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ModuleR\x07modulesB\x06\n\x04_pos\"\xe4\x01\n\x0bSchemaState\x12\x39\n\x07modules\x18\x01 \x03(\x0b\x32\x1f.xyz.block.ftl.schema.v1.ModuleR\x07modules\x12\x42\n\nchangesets\x18\x02 \x03(\x0b\x32\".xyz.block.ftl.schema.v1.ChangesetR\nchangesets\x12V\n\x0eruntime_events\x18\x03 \x03(\x0b\x32/.xyz.block.ftl.schema.v1.DeploymentRuntimeEventR\rruntimeEvents\"\xad\x01\n\x06Secret\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x31\n\x04type\x18\x04 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x04typeB\x06\n\x04_pos\"J\n\x06String\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"e\n\x0bStringValue\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x14\n\x05value\x18\x02 \x01(\tR\x05valueB\x06\n\x04_pos\"H\n\x04Time\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"\xd9\x02\n\x05Topic\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x46\n\x07runtime\x18\x92\xf7\x01 \x01(\x0b\x32%.xyz.block.ftl.schema.v1.TopicRuntimeH\x01R\x07runtime\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x16\n\x06\x65xport\x18\x03 \x01(\x08R\x06\x65xport\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x33\n\x05\x65vent\x18\x05 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x05\x65vent\x12=\n\x08metadata\x18\x06 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadataB\x06\n\x04_posB\n\n\x08_runtime\"N\n\x0cTopicRuntime\x12#\n\rkafka_brokers\x18\x01 \x03(\tR\x0ckafkaBrokers\x12\x19\n\x08topic_id\x18\x02 \x01(\tR\x07topicId\"\x9a\x05\n\x04Type\x12\x30\n\x03\x61ny\x18\t \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.AnyH\x00R\x03\x61ny\x12\x36\n\x05\x61rray\x18\x07 \x01(\x0b\x32\x1e.xyz.block.ftl.schema.v1.ArrayH\x00R\x05\x61rray\x12\x33\n\x04\x62ool\x18\x05 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.BoolH\x00R\x04\x62ool\x12\x36\n\x05\x62ytes\x18\x04 \x01(\x0b\x32\x1e.xyz.block.ftl.schema.v1.BytesH\x00R\x05\x62ytes\x12\x36\n\x05\x66loat\x18\x02 \x01(\x0b\x32\x1e.xyz.block.ftl.schema.v1.FloatH\x00R\x05\x66loat\x12\x30\n\x03int\x18\x01 \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.IntH\x00R\x03int\x12\x30\n\x03map\x18\x08 \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.MapH\x00R\x03map\x12?\n\x08optional\x18\x0c \x01(\x0b\x32!.xyz.block.ftl.schema.v1.OptionalH\x00R\x08optional\x12\x30\n\x03ref\x18\x0b \x01(\x0b\x32\x1c.xyz.block.ftl.schema.v1.RefH\x00R\x03ref\x12\x39\n\x06string\x18\x03 \x01(\x0b\x32\x1f.xyz.block.ftl.schema.v1.StringH\x00R\x06string\x12\x33\n\x04time\x18\x06 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TimeH\x00R\x04time\x12\x33\n\x04unit\x18\n \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.UnitH\x00R\x04unitB\x07\n\x05value\"\x87\x02\n\tTypeAlias\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x16\n\x06\x65xport\x18\x03 \x01(\x08R\x06\x65xport\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x31\n\x04type\x18\x05 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x04type\x12=\n\x08metadata\x18\x06 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadataB\x06\n\x04_pos\"e\n\rTypeParameter\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x12\n\x04name\x18\x02 \x01(\tR\x04nameB\x06\n\x04_pos\"\x82\x01\n\tTypeValue\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x33\n\x05value\x18\x02 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x05valueB\x06\n\x04_pos\"H\n\x04Unit\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x42\x06\n\x04_pos\"\xe2\x01\n\x05Value\x12@\n\tint_value\x18\x02 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.IntValueH\x00R\x08intValue\x12I\n\x0cstring_value\x18\x01 \x01(\x0b\x32$.xyz.block.ftl.schema.v1.StringValueH\x00R\x0bstringValue\x12\x43\n\ntype_value\x18\x03 \x01(\x0b\x32\".xyz.block.ftl.schema.v1.TypeValueH\x00R\ttypeValueB\x07\n\x05value\"\x96\x03\n\x04Verb\x12\x38\n\x03pos\x18\x01 \x01(\x0b\x32!.xyz.block.ftl.schema.v1.PositionH\x00R\x03pos\x88\x01\x01\x12\x1a\n\x08\x63omments\x18\x02 \x03(\tR\x08\x63omments\x12\x16\n\x06\x65xport\x18\x03 \x01(\x08R\x06\x65xport\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x37\n\x07request\x18\x05 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x07request\x12\x39\n\x08response\x18\x06 \x01(\x0b\x32\x1d.xyz.block.ftl.schema.v1.TypeR\x08response\x12=\n\x08metadata\x18\x07 \x03(\x0b\x32!.xyz.block.ftl.schema.v1.MetadataR\x08metadata\x12\x45\n\x07runtime\x18\x92\xf7\x01 \x01(\x0b\x32$.xyz.block.ftl.schema.v1.VerbRuntimeH\x01R\x07runtime\x88\x01\x01\x42\x06\n\x04_posB\n\n\x08_runtime\"y\n\x0bVerbRuntime\x12Y\n\x0csubscription\x18\x01 \x01(\x0b\x32\x30.xyz.block.ftl.schema.v1.VerbRuntimeSubscriptionH\x00R\x0csubscription\x88\x01\x01\x42\x0f\n\r_subscription\">\n\x17VerbRuntimeSubscription\x12#\n\rkafka_brokers\x18\x01 \x03(\tR\x0ckafkaBrokers*<\n\tAliasKind\x12\x1a\n\x16\x41LIAS_KIND_UNSPECIFIED\x10\x00\x12\x13\n\x0f\x41LIAS_KIND_JSON\x10\x01*\x87\x02\n\x0e\x43hangesetState\x12\x1f\n\x1b\x43HANGESET_STATE_UNSPECIFIED\x10\x00\x12\x1d\n\x19\x43HANGESET_STATE_PREPARING\x10\x01\x12\x1c\n\x18\x43HANGESET_STATE_PREPARED\x10\x02\x12\x1d\n\x19\x43HANGESET_STATE_COMMITTED\x10\x03\x12\x1b\n\x17\x43HANGESET_STATE_DRAINED\x10\x04\x12\x1d\n\x19\x43HANGESET_STATE_FINALIZED\x10\x05\x12 \n\x1c\x43HANGESET_STATE_ROLLING_BACK\x10\x06\x12\x1a\n\x16\x43HANGESET_STATE_FAILED\x10\x07*\xaf\x02\n\x0f\x44\x65ploymentState\x12 \n\x1c\x44\x45PLOYMENT_STATE_UNSPECIFIED\x10\x00\x12!\n\x1d\x44\x45PLOYMENT_STATE_PROVISIONING\x10\x01\x12\x1a\n\x16\x44\x45PLOYMENT_STATE_READY\x10\x02\x12\x1b\n\x17\x44\x45PLOYMENT_STATE_CANARY\x10\x03\x12\x1e\n\x1a\x44\x45PLOYMENT_STATE_CANONICAL\x10\x04\x12\x1d\n\x19\x44\x45PLOYMENT_STATE_DRAINING\x10\x05\x12$\n DEPLOYMENT_STATE_DE_PROVISIONING\x10\x06\x12\x1c\n\x18\x44\x45PLOYMENT_STATE_DELETED\x10\x07\x12\x1b\n\x17\x44\x45PLOYMENT_STATE_FAILED\x10\x08*\\\n\nFromOffset\x12\x1b\n\x17\x46ROM_OFFSET_UNSPECIFIED\x10\x00\x12\x19\n\x15\x46ROM_OFFSET_BEGINNING\x10\x01\x12\x16\n\x12\x46ROM_OFFSET_LATEST\x10\x02\x42GP\x01ZCgithub.com/block/ftl/common/protos/xyz/block/ftl/schema/v1;schemapbb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -33,14 +33,14 @@ if not _descriptor._USE_C_DESCRIPTORS: _globals['DESCRIPTOR']._loaded_options = None _globals['DESCRIPTOR']._serialized_options = b'P\001ZCgithub.com/block/ftl/common/protos/xyz/block/ftl/schema/v1;schemapb' - _globals['_ALIASKIND']._serialized_start=18159 - _globals['_ALIASKIND']._serialized_end=18219 - _globals['_CHANGESETSTATE']._serialized_start=18222 - _globals['_CHANGESETSTATE']._serialized_end=18485 - _globals['_DEPLOYMENTSTATE']._serialized_start=18488 - _globals['_DEPLOYMENTSTATE']._serialized_end=18791 - _globals['_FROMOFFSET']._serialized_start=18793 - _globals['_FROMOFFSET']._serialized_end=18885 + _globals['_ALIASKIND']._serialized_start=15577 + _globals['_ALIASKIND']._serialized_end=15637 + _globals['_CHANGESETSTATE']._serialized_start=15640 + _globals['_CHANGESETSTATE']._serialized_end=15903 + _globals['_DEPLOYMENTSTATE']._serialized_start=15906 + _globals['_DEPLOYMENTSTATE']._serialized_end=16209 + _globals['_FROMOFFSET']._serialized_start=16211 + _globals['_FROMOFFSET']._serialized_end=16303 _globals['_AWSIAMAUTHDATABASECONNECTOR']._serialized_start=99 _globals['_AWSIAMAUTHDATABASECONNECTOR']._serialized_end=278 _globals['_ANY']._serialized_start=280 @@ -79,140 +79,124 @@ _globals['_DATABASERUNTIME']._serialized_end=2634 _globals['_DATABASERUNTIMECONNECTIONS']._serialized_start=2637 _globals['_DATABASERUNTIMECONNECTIONS']._serialized_end=2795 - _globals['_DATABASERUNTIMEEVENT']._serialized_start=2798 - _globals['_DATABASERUNTIMEEVENT']._serialized_end=2985 - _globals['_DECL']._serialized_start=2988 - _globals['_DECL']._serialized_end=3470 - _globals['_DEPLOYMENTACTIVATEDEVENT']._serialized_start=3473 - _globals['_DEPLOYMENTACTIVATEDEVENT']._serialized_end=3645 - _globals['_DEPLOYMENTCREATEDEVENT']._serialized_start=3648 - _globals['_DEPLOYMENTCREATEDEVENT']._serialized_end=3777 - _globals['_DEPLOYMENTDEACTIVATEDEVENT']._serialized_start=3779 - _globals['_DEPLOYMENTDEACTIVATEDEVENT']._serialized_end=3894 - _globals['_DEPLOYMENTREPLICASUPDATEDEVENT']._serialized_start=3896 - _globals['_DEPLOYMENTREPLICASUPDATEDEVENT']._serialized_end=4004 - _globals['_DEPLOYMENTSCHEMAUPDATEDEVENT']._serialized_start=4007 - _globals['_DEPLOYMENTSCHEMAUPDATEDEVENT']._serialized_end=4142 - _globals['_ENUM']._serialized_start=4145 - _globals['_ENUM']._serialized_end=4420 - _globals['_ENUMVARIANT']._serialized_start=4423 - _globals['_ENUMVARIANT']._serialized_end=4604 - _globals['_EVENT']._serialized_start=4607 - _globals['_EVENT']._serialized_end=6264 - _globals['_FIELD']._serialized_start=6267 - _globals['_FIELD']._serialized_end=6502 - _globals['_FLOAT']._serialized_start=6504 - _globals['_FLOAT']._serialized_end=6577 - _globals['_INGRESSPATHCOMPONENT']._serialized_start=6580 - _globals['_INGRESSPATHCOMPONENT']._serialized_end=6811 - _globals['_INGRESSPATHLITERAL']._serialized_start=6813 - _globals['_INGRESSPATHLITERAL']._serialized_end=6919 - _globals['_INGRESSPATHPARAMETER']._serialized_start=6921 - _globals['_INGRESSPATHPARAMETER']._serialized_end=7029 - _globals['_INT']._serialized_start=7031 - _globals['_INT']._serialized_end=7102 - _globals['_INTVALUE']._serialized_start=7104 - _globals['_INTVALUE']._serialized_end=7202 - _globals['_MAP']._serialized_start=7205 - _globals['_MAP']._serialized_end=7378 - _globals['_METADATA']._serialized_start=7381 - _globals['_METADATA']._serialized_end=8634 - _globals['_METADATAALIAS']._serialized_start=8637 - _globals['_METADATAALIAS']._serialized_end=8796 - _globals['_METADATAARTEFACT']._serialized_start=8799 - _globals['_METADATAARTEFACT']._serialized_end=8959 - _globals['_METADATACALLS']._serialized_start=8962 - _globals['_METADATACALLS']._serialized_end=9095 - _globals['_METADATACONFIG']._serialized_start=9098 - _globals['_METADATACONFIG']._serialized_end=9234 - _globals['_METADATACRONJOB']._serialized_start=9236 - _globals['_METADATACRONJOB']._serialized_end=9339 - _globals['_METADATADATABASES']._serialized_start=9342 - _globals['_METADATADATABASES']._serialized_end=9479 - _globals['_METADATAENCODING']._serialized_start=9482 - _globals['_METADATAENCODING']._serialized_end=9612 - _globals['_METADATAINGRESS']._serialized_start=9615 - _globals['_METADATAINGRESS']._serialized_end=9809 - _globals['_METADATAPARTITIONS']._serialized_start=9811 - _globals['_METADATAPARTITIONS']._serialized_end=9929 - _globals['_METADATAPUBLISHER']._serialized_start=9932 - _globals['_METADATAPUBLISHER']._serialized_end=10071 - _globals['_METADATARETRY']._serialized_start=10074 - _globals['_METADATARETRY']._serialized_end=10325 - _globals['_METADATASQLCOLUMN']._serialized_start=10327 - _globals['_METADATASQLCOLUMN']._serialized_end=10454 - _globals['_METADATASQLMIGRATION']._serialized_start=10456 - _globals['_METADATASQLMIGRATION']._serialized_end=10568 - _globals['_METADATASQLQUERY']._serialized_start=10571 - _globals['_METADATASQLQUERY']._serialized_end=10703 - _globals['_METADATASECRETS']._serialized_start=10706 - _globals['_METADATASECRETS']._serialized_end=10845 - _globals['_METADATASUBSCRIBER']._serialized_start=10848 - _globals['_METADATASUBSCRIBER']._serialized_end=11089 - _globals['_METADATATYPEMAP']._serialized_start=11092 - _globals['_METADATATYPEMAP']._serialized_end=11234 - _globals['_MODULE']._serialized_start=11237 - _globals['_MODULE']._serialized_end=11569 - _globals['_MODULERUNTIME']._serialized_start=11572 - _globals['_MODULERUNTIME']._serialized_end=11929 - _globals['_MODULERUNTIMEBASE']._serialized_start=11932 - _globals['_MODULERUNTIMEBASE']._serialized_end=12139 - _globals['_MODULERUNTIMEDEPLOYMENT']._serialized_start=12142 - _globals['_MODULERUNTIMEDEPLOYMENT']._serialized_end=12414 - _globals['_MODULERUNTIMEEVENT']._serialized_start=12417 - _globals['_MODULERUNTIMEEVENT']._serialized_end=12841 - _globals['_MODULERUNTIMERUNNER']._serialized_start=12843 - _globals['_MODULERUNTIMERUNNER']._serialized_end=12892 - _globals['_MODULERUNTIMESCALING']._serialized_start=12894 - _globals['_MODULERUNTIMESCALING']._serialized_end=12951 - _globals['_OPTIONAL']._serialized_start=12954 - _globals['_OPTIONAL']._serialized_end=13095 - _globals['_POSITION']._serialized_start=13097 - _globals['_POSITION']._serialized_end=13179 - _globals['_REF']._serialized_start=13182 - _globals['_REF']._serialized_end=13369 - _globals['_RUNTIME']._serialized_start=13372 - _globals['_RUNTIME']._serialized_end=13945 - _globals['_RUNTIMEELEMENT']._serialized_start=13948 - _globals['_RUNTIMEELEMENT']._serialized_end=14090 - _globals['_RUNTIMEEVENT']._serialized_start=14093 - _globals['_RUNTIMEEVENT']._serialized_end=14501 - _globals['_SCHEMA']._serialized_start=14504 - _globals['_SCHEMA']._serialized_end=14637 - _globals['_SCHEMASTATE']._serialized_start=14640 - _globals['_SCHEMASTATE']._serialized_end=14858 - _globals['_SECRET']._serialized_start=14861 - _globals['_SECRET']._serialized_end=15034 - _globals['_STRING']._serialized_start=15036 - _globals['_STRING']._serialized_end=15110 - _globals['_STRINGVALUE']._serialized_start=15112 - _globals['_STRINGVALUE']._serialized_end=15213 - _globals['_TIME']._serialized_start=15215 - _globals['_TIME']._serialized_end=15287 - _globals['_TOPIC']._serialized_start=15290 - _globals['_TOPIC']._serialized_end=15635 - _globals['_TOPICRUNTIME']._serialized_start=15637 - _globals['_TOPICRUNTIME']._serialized_end=15715 - _globals['_TOPICRUNTIMEEVENT']._serialized_start=15718 - _globals['_TOPICRUNTIMEEVENT']._serialized_end=15880 - _globals['_TYPE']._serialized_start=15883 - _globals['_TYPE']._serialized_end=16549 - _globals['_TYPEALIAS']._serialized_start=16552 - _globals['_TYPEALIAS']._serialized_end=16815 - _globals['_TYPEPARAMETER']._serialized_start=16817 - _globals['_TYPEPARAMETER']._serialized_end=16918 - _globals['_TYPEVALUE']._serialized_start=16921 - _globals['_TYPEVALUE']._serialized_end=17051 - _globals['_UNIT']._serialized_start=17053 - _globals['_UNIT']._serialized_end=17125 - _globals['_VALUE']._serialized_start=17128 - _globals['_VALUE']._serialized_end=17354 - _globals['_VERB']._serialized_start=17357 - _globals['_VERB']._serialized_end=17763 - _globals['_VERBRUNTIME']._serialized_start=17765 - _globals['_VERBRUNTIME']._serialized_end=17886 - _globals['_VERBRUNTIMEEVENT']._serialized_start=17889 - _globals['_VERBRUNTIMEEVENT']._serialized_end=18093 - _globals['_VERBRUNTIMESUBSCRIPTION']._serialized_start=18095 - _globals['_VERBRUNTIMESUBSCRIPTION']._serialized_end=18157 + _globals['_DECL']._serialized_start=2798 + _globals['_DECL']._serialized_end=3280 + _globals['_DEPLOYMENTCREATEDEVENT']._serialized_start=3283 + _globals['_DEPLOYMENTCREATEDEVENT']._serialized_end=3412 + _globals['_DEPLOYMENTRUNTIMEEVENT']._serialized_start=3414 + _globals['_DEPLOYMENTRUNTIMEEVENT']._serialized_end=3535 + _globals['_ENUM']._serialized_start=3538 + _globals['_ENUM']._serialized_end=3813 + _globals['_ENUMVARIANT']._serialized_start=3816 + _globals['_ENUMVARIANT']._serialized_end=3997 + _globals['_EVENT']._serialized_start=4000 + _globals['_EVENT']._serialized_end=4882 + _globals['_FIELD']._serialized_start=4885 + _globals['_FIELD']._serialized_end=5120 + _globals['_FLOAT']._serialized_start=5122 + _globals['_FLOAT']._serialized_end=5195 + _globals['_INGRESSPATHCOMPONENT']._serialized_start=5198 + _globals['_INGRESSPATHCOMPONENT']._serialized_end=5429 + _globals['_INGRESSPATHLITERAL']._serialized_start=5431 + _globals['_INGRESSPATHLITERAL']._serialized_end=5537 + _globals['_INGRESSPATHPARAMETER']._serialized_start=5539 + _globals['_INGRESSPATHPARAMETER']._serialized_end=5647 + _globals['_INT']._serialized_start=5649 + _globals['_INT']._serialized_end=5720 + _globals['_INTVALUE']._serialized_start=5722 + _globals['_INTVALUE']._serialized_end=5820 + _globals['_MAP']._serialized_start=5823 + _globals['_MAP']._serialized_end=5996 + _globals['_METADATA']._serialized_start=5999 + _globals['_METADATA']._serialized_end=7252 + _globals['_METADATAALIAS']._serialized_start=7255 + _globals['_METADATAALIAS']._serialized_end=7414 + _globals['_METADATAARTEFACT']._serialized_start=7417 + _globals['_METADATAARTEFACT']._serialized_end=7577 + _globals['_METADATACALLS']._serialized_start=7580 + _globals['_METADATACALLS']._serialized_end=7713 + _globals['_METADATACONFIG']._serialized_start=7716 + _globals['_METADATACONFIG']._serialized_end=7852 + _globals['_METADATACRONJOB']._serialized_start=7854 + _globals['_METADATACRONJOB']._serialized_end=7957 + _globals['_METADATADATABASES']._serialized_start=7960 + _globals['_METADATADATABASES']._serialized_end=8097 + _globals['_METADATAENCODING']._serialized_start=8100 + _globals['_METADATAENCODING']._serialized_end=8230 + _globals['_METADATAINGRESS']._serialized_start=8233 + _globals['_METADATAINGRESS']._serialized_end=8427 + _globals['_METADATAPARTITIONS']._serialized_start=8429 + _globals['_METADATAPARTITIONS']._serialized_end=8547 + _globals['_METADATAPUBLISHER']._serialized_start=8550 + _globals['_METADATAPUBLISHER']._serialized_end=8689 + _globals['_METADATARETRY']._serialized_start=8692 + _globals['_METADATARETRY']._serialized_end=8943 + _globals['_METADATASQLCOLUMN']._serialized_start=8945 + _globals['_METADATASQLCOLUMN']._serialized_end=9072 + _globals['_METADATASQLMIGRATION']._serialized_start=9074 + _globals['_METADATASQLMIGRATION']._serialized_end=9186 + _globals['_METADATASQLQUERY']._serialized_start=9189 + _globals['_METADATASQLQUERY']._serialized_end=9321 + _globals['_METADATASECRETS']._serialized_start=9324 + _globals['_METADATASECRETS']._serialized_end=9463 + _globals['_METADATASUBSCRIBER']._serialized_start=9466 + _globals['_METADATASUBSCRIBER']._serialized_end=9707 + _globals['_METADATATYPEMAP']._serialized_start=9710 + _globals['_METADATATYPEMAP']._serialized_end=9852 + _globals['_MODULE']._serialized_start=9855 + _globals['_MODULE']._serialized_end=10187 + _globals['_MODULERUNTIME']._serialized_start=10190 + _globals['_MODULERUNTIME']._serialized_end=10547 + _globals['_MODULERUNTIMEBASE']._serialized_start=10550 + _globals['_MODULERUNTIMEBASE']._serialized_end=10757 + _globals['_MODULERUNTIMEDEPLOYMENT']._serialized_start=10760 + _globals['_MODULERUNTIMEDEPLOYMENT']._serialized_end=11032 + _globals['_MODULERUNTIMERUNNER']._serialized_start=11034 + _globals['_MODULERUNTIMERUNNER']._serialized_end=11083 + _globals['_MODULERUNTIMESCALING']._serialized_start=11085 + _globals['_MODULERUNTIMESCALING']._serialized_end=11142 + _globals['_OPTIONAL']._serialized_start=11145 + _globals['_OPTIONAL']._serialized_end=11286 + _globals['_POSITION']._serialized_start=11288 + _globals['_POSITION']._serialized_end=11370 + _globals['_REF']._serialized_start=11373 + _globals['_REF']._serialized_end=11560 + _globals['_RUNTIME']._serialized_start=11563 + _globals['_RUNTIME']._serialized_end=12136 + _globals['_RUNTIMEELEMENT']._serialized_start=12139 + _globals['_RUNTIMEELEMENT']._serialized_end=12281 + _globals['_SCHEMA']._serialized_start=12284 + _globals['_SCHEMA']._serialized_end=12417 + _globals['_SCHEMASTATE']._serialized_start=12420 + _globals['_SCHEMASTATE']._serialized_end=12648 + _globals['_SECRET']._serialized_start=12651 + _globals['_SECRET']._serialized_end=12824 + _globals['_STRING']._serialized_start=12826 + _globals['_STRING']._serialized_end=12900 + _globals['_STRINGVALUE']._serialized_start=12902 + _globals['_STRINGVALUE']._serialized_end=13003 + _globals['_TIME']._serialized_start=13005 + _globals['_TIME']._serialized_end=13077 + _globals['_TOPIC']._serialized_start=13080 + _globals['_TOPIC']._serialized_end=13425 + _globals['_TOPICRUNTIME']._serialized_start=13427 + _globals['_TOPICRUNTIME']._serialized_end=13505 + _globals['_TYPE']._serialized_start=13508 + _globals['_TYPE']._serialized_end=14174 + _globals['_TYPEALIAS']._serialized_start=14177 + _globals['_TYPEALIAS']._serialized_end=14440 + _globals['_TYPEPARAMETER']._serialized_start=14442 + _globals['_TYPEPARAMETER']._serialized_end=14543 + _globals['_TYPEVALUE']._serialized_start=14546 + _globals['_TYPEVALUE']._serialized_end=14676 + _globals['_UNIT']._serialized_start=14678 + _globals['_UNIT']._serialized_end=14750 + _globals['_VALUE']._serialized_start=14753 + _globals['_VALUE']._serialized_end=14979 + _globals['_VERB']._serialized_start=14982 + _globals['_VERB']._serialized_end=15388 + _globals['_VERBRUNTIME']._serialized_start=15390 + _globals['_VERBRUNTIME']._serialized_end=15511 + _globals['_VERBRUNTIMESUBSCRIPTION']._serialized_start=15513 + _globals['_VERBRUNTIMESUBSCRIPTION']._serialized_end=15575 # @@protoc_insertion_point(module_scope) diff --git a/python-runtime/ftl/src/ftl/protos/xyz/block/ftl/schema/v1/schema_pb2.pyi b/python-runtime/ftl/src/ftl/protos/xyz/block/ftl/schema/v1/schema_pb2.pyi index 0638d9f98..c02276434 100644 --- a/python-runtime/ftl/src/ftl/protos/xyz/block/ftl/schema/v1/schema_pb2.pyi +++ b/python-runtime/ftl/src/ftl/protos/xyz/block/ftl/schema/v1/schema_pb2.pyi @@ -233,18 +233,6 @@ class DatabaseRuntimeConnections(_message.Message): write: DatabaseConnector def __init__(self, read: _Optional[_Union[DatabaseConnector, _Mapping]] = ..., write: _Optional[_Union[DatabaseConnector, _Mapping]] = ...) -> None: ... -class DatabaseRuntimeEvent(_message.Message): - __slots__ = ("deployment", "changeset", "id", "connections") - DEPLOYMENT_FIELD_NUMBER: _ClassVar[int] - CHANGESET_FIELD_NUMBER: _ClassVar[int] - ID_FIELD_NUMBER: _ClassVar[int] - CONNECTIONS_FIELD_NUMBER: _ClassVar[int] - deployment: str - changeset: str - id: str - connections: DatabaseRuntimeConnections - def __init__(self, deployment: _Optional[str] = ..., changeset: _Optional[str] = ..., id: _Optional[str] = ..., connections: _Optional[_Union[DatabaseRuntimeConnections, _Mapping]] = ...) -> None: ... - class Decl(_message.Message): __slots__ = ("config", "data", "database", "enum", "secret", "topic", "type_alias", "verb") CONFIG_FIELD_NUMBER: _ClassVar[int] @@ -265,18 +253,6 @@ class Decl(_message.Message): verb: Verb def __init__(self, config: _Optional[_Union[Config, _Mapping]] = ..., data: _Optional[_Union[Data, _Mapping]] = ..., database: _Optional[_Union[Database, _Mapping]] = ..., enum: _Optional[_Union[Enum, _Mapping]] = ..., secret: _Optional[_Union[Secret, _Mapping]] = ..., topic: _Optional[_Union[Topic, _Mapping]] = ..., type_alias: _Optional[_Union[TypeAlias, _Mapping]] = ..., verb: _Optional[_Union[Verb, _Mapping]] = ...) -> None: ... -class DeploymentActivatedEvent(_message.Message): - __slots__ = ("key", "activated_at", "min_replicas", "changeset") - KEY_FIELD_NUMBER: _ClassVar[int] - ACTIVATED_AT_FIELD_NUMBER: _ClassVar[int] - MIN_REPLICAS_FIELD_NUMBER: _ClassVar[int] - CHANGESET_FIELD_NUMBER: _ClassVar[int] - key: str - activated_at: _timestamp_pb2.Timestamp - min_replicas: int - changeset: str - def __init__(self, key: _Optional[str] = ..., activated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., min_replicas: _Optional[int] = ..., changeset: _Optional[str] = ...) -> None: ... - class DeploymentCreatedEvent(_message.Message): __slots__ = ("key", "schema", "changeset") KEY_FIELD_NUMBER: _ClassVar[int] @@ -287,35 +263,13 @@ class DeploymentCreatedEvent(_message.Message): changeset: str def __init__(self, key: _Optional[str] = ..., schema: _Optional[_Union[Module, _Mapping]] = ..., changeset: _Optional[str] = ...) -> None: ... -class DeploymentDeactivatedEvent(_message.Message): - __slots__ = ("key", "module_removed", "changeset") - KEY_FIELD_NUMBER: _ClassVar[int] - MODULE_REMOVED_FIELD_NUMBER: _ClassVar[int] - CHANGESET_FIELD_NUMBER: _ClassVar[int] - key: str - module_removed: bool - changeset: str - def __init__(self, key: _Optional[str] = ..., module_removed: bool = ..., changeset: _Optional[str] = ...) -> None: ... - -class DeploymentReplicasUpdatedEvent(_message.Message): - __slots__ = ("key", "replicas", "changeset") - KEY_FIELD_NUMBER: _ClassVar[int] - REPLICAS_FIELD_NUMBER: _ClassVar[int] - CHANGESET_FIELD_NUMBER: _ClassVar[int] - key: str - replicas: int - changeset: str - def __init__(self, key: _Optional[str] = ..., replicas: _Optional[int] = ..., changeset: _Optional[str] = ...) -> None: ... - -class DeploymentSchemaUpdatedEvent(_message.Message): - __slots__ = ("key", "schema", "changeset") - KEY_FIELD_NUMBER: _ClassVar[int] - SCHEMA_FIELD_NUMBER: _ClassVar[int] +class DeploymentRuntimeEvent(_message.Message): + __slots__ = ("payload", "changeset") + PAYLOAD_FIELD_NUMBER: _ClassVar[int] CHANGESET_FIELD_NUMBER: _ClassVar[int] - key: str - schema: Module + payload: RuntimeElement changeset: str - def __init__(self, key: _Optional[str] = ..., schema: _Optional[_Union[Module, _Mapping]] = ..., changeset: _Optional[str] = ...) -> None: ... + def __init__(self, payload: _Optional[_Union[RuntimeElement, _Mapping]] = ..., changeset: _Optional[str] = ...) -> None: ... class Enum(_message.Message): __slots__ = ("pos", "comments", "export", "name", "type", "variants") @@ -346,38 +300,24 @@ class EnumVariant(_message.Message): def __init__(self, pos: _Optional[_Union[Position, _Mapping]] = ..., comments: _Optional[_Iterable[str]] = ..., name: _Optional[str] = ..., value: _Optional[_Union[Value, _Mapping]] = ...) -> None: ... class Event(_message.Message): - __slots__ = ("changeset_committed_event", "changeset_created_event", "changeset_drained_event", "changeset_failed_event", "changeset_finalized_event", "changeset_prepared_event", "database_runtime_event", "deployment_activated_event", "deployment_created_event", "deployment_deactivated_event", "deployment_replicas_updated_event", "deployment_schema_updated_event", "module_runtime_event", "topic_runtime_event", "verb_runtime_event") + __slots__ = ("changeset_committed_event", "changeset_created_event", "changeset_drained_event", "changeset_failed_event", "changeset_finalized_event", "changeset_prepared_event", "deployment_created_event", "deployment_runtime_event") CHANGESET_COMMITTED_EVENT_FIELD_NUMBER: _ClassVar[int] CHANGESET_CREATED_EVENT_FIELD_NUMBER: _ClassVar[int] CHANGESET_DRAINED_EVENT_FIELD_NUMBER: _ClassVar[int] CHANGESET_FAILED_EVENT_FIELD_NUMBER: _ClassVar[int] CHANGESET_FINALIZED_EVENT_FIELD_NUMBER: _ClassVar[int] CHANGESET_PREPARED_EVENT_FIELD_NUMBER: _ClassVar[int] - DATABASE_RUNTIME_EVENT_FIELD_NUMBER: _ClassVar[int] - DEPLOYMENT_ACTIVATED_EVENT_FIELD_NUMBER: _ClassVar[int] DEPLOYMENT_CREATED_EVENT_FIELD_NUMBER: _ClassVar[int] - DEPLOYMENT_DEACTIVATED_EVENT_FIELD_NUMBER: _ClassVar[int] - DEPLOYMENT_REPLICAS_UPDATED_EVENT_FIELD_NUMBER: _ClassVar[int] - DEPLOYMENT_SCHEMA_UPDATED_EVENT_FIELD_NUMBER: _ClassVar[int] - MODULE_RUNTIME_EVENT_FIELD_NUMBER: _ClassVar[int] - TOPIC_RUNTIME_EVENT_FIELD_NUMBER: _ClassVar[int] - VERB_RUNTIME_EVENT_FIELD_NUMBER: _ClassVar[int] + DEPLOYMENT_RUNTIME_EVENT_FIELD_NUMBER: _ClassVar[int] changeset_committed_event: ChangesetCommittedEvent changeset_created_event: ChangesetCreatedEvent changeset_drained_event: ChangesetDrainedEvent changeset_failed_event: ChangesetFailedEvent changeset_finalized_event: ChangesetFinalizedEvent changeset_prepared_event: ChangesetPreparedEvent - database_runtime_event: DatabaseRuntimeEvent - deployment_activated_event: DeploymentActivatedEvent deployment_created_event: DeploymentCreatedEvent - deployment_deactivated_event: DeploymentDeactivatedEvent - deployment_replicas_updated_event: DeploymentReplicasUpdatedEvent - deployment_schema_updated_event: DeploymentSchemaUpdatedEvent - module_runtime_event: ModuleRuntimeEvent - topic_runtime_event: TopicRuntimeEvent - verb_runtime_event: VerbRuntimeEvent - def __init__(self, changeset_committed_event: _Optional[_Union[ChangesetCommittedEvent, _Mapping]] = ..., changeset_created_event: _Optional[_Union[ChangesetCreatedEvent, _Mapping]] = ..., changeset_drained_event: _Optional[_Union[ChangesetDrainedEvent, _Mapping]] = ..., changeset_failed_event: _Optional[_Union[ChangesetFailedEvent, _Mapping]] = ..., changeset_finalized_event: _Optional[_Union[ChangesetFinalizedEvent, _Mapping]] = ..., changeset_prepared_event: _Optional[_Union[ChangesetPreparedEvent, _Mapping]] = ..., database_runtime_event: _Optional[_Union[DatabaseRuntimeEvent, _Mapping]] = ..., deployment_activated_event: _Optional[_Union[DeploymentActivatedEvent, _Mapping]] = ..., deployment_created_event: _Optional[_Union[DeploymentCreatedEvent, _Mapping]] = ..., deployment_deactivated_event: _Optional[_Union[DeploymentDeactivatedEvent, _Mapping]] = ..., deployment_replicas_updated_event: _Optional[_Union[DeploymentReplicasUpdatedEvent, _Mapping]] = ..., deployment_schema_updated_event: _Optional[_Union[DeploymentSchemaUpdatedEvent, _Mapping]] = ..., module_runtime_event: _Optional[_Union[ModuleRuntimeEvent, _Mapping]] = ..., topic_runtime_event: _Optional[_Union[TopicRuntimeEvent, _Mapping]] = ..., verb_runtime_event: _Optional[_Union[VerbRuntimeEvent, _Mapping]] = ...) -> None: ... + deployment_runtime_event: DeploymentRuntimeEvent + def __init__(self, changeset_committed_event: _Optional[_Union[ChangesetCommittedEvent, _Mapping]] = ..., changeset_created_event: _Optional[_Union[ChangesetCreatedEvent, _Mapping]] = ..., changeset_drained_event: _Optional[_Union[ChangesetDrainedEvent, _Mapping]] = ..., changeset_failed_event: _Optional[_Union[ChangesetFailedEvent, _Mapping]] = ..., changeset_finalized_event: _Optional[_Union[ChangesetFinalizedEvent, _Mapping]] = ..., changeset_prepared_event: _Optional[_Union[ChangesetPreparedEvent, _Mapping]] = ..., deployment_created_event: _Optional[_Union[DeploymentCreatedEvent, _Mapping]] = ..., deployment_runtime_event: _Optional[_Union[DeploymentRuntimeEvent, _Mapping]] = ...) -> None: ... class Field(_message.Message): __slots__ = ("pos", "comments", "name", "type", "metadata") @@ -705,22 +645,6 @@ class ModuleRuntimeDeployment(_message.Message): state: DeploymentState def __init__(self, deployment_key: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., activated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., state: _Optional[_Union[DeploymentState, str]] = ...) -> None: ... -class ModuleRuntimeEvent(_message.Message): - __slots__ = ("key", "changeset", "base", "scaling", "deployment", "runner") - KEY_FIELD_NUMBER: _ClassVar[int] - CHANGESET_FIELD_NUMBER: _ClassVar[int] - BASE_FIELD_NUMBER: _ClassVar[int] - SCALING_FIELD_NUMBER: _ClassVar[int] - DEPLOYMENT_FIELD_NUMBER: _ClassVar[int] - RUNNER_FIELD_NUMBER: _ClassVar[int] - key: str - changeset: str - base: ModuleRuntimeBase - scaling: ModuleRuntimeScaling - deployment: ModuleRuntimeDeployment - runner: ModuleRuntimeRunner - def __init__(self, key: _Optional[str] = ..., changeset: _Optional[str] = ..., base: _Optional[_Union[ModuleRuntimeBase, _Mapping]] = ..., scaling: _Optional[_Union[ModuleRuntimeScaling, _Mapping]] = ..., deployment: _Optional[_Union[ModuleRuntimeDeployment, _Mapping]] = ..., runner: _Optional[_Union[ModuleRuntimeRunner, _Mapping]] = ...) -> None: ... - class ModuleRuntimeRunner(_message.Message): __slots__ = ("endpoint",) ENDPOINT_FIELD_NUMBER: _ClassVar[int] @@ -789,18 +713,6 @@ class RuntimeElement(_message.Message): name: str def __init__(self, element: _Optional[_Union[Runtime, _Mapping]] = ..., deployment: _Optional[str] = ..., name: _Optional[str] = ...) -> None: ... -class RuntimeEvent(_message.Message): - __slots__ = ("database_runtime_event", "module_runtime_event", "topic_runtime_event", "verb_runtime_event") - DATABASE_RUNTIME_EVENT_FIELD_NUMBER: _ClassVar[int] - MODULE_RUNTIME_EVENT_FIELD_NUMBER: _ClassVar[int] - TOPIC_RUNTIME_EVENT_FIELD_NUMBER: _ClassVar[int] - VERB_RUNTIME_EVENT_FIELD_NUMBER: _ClassVar[int] - database_runtime_event: DatabaseRuntimeEvent - module_runtime_event: ModuleRuntimeEvent - topic_runtime_event: TopicRuntimeEvent - verb_runtime_event: VerbRuntimeEvent - def __init__(self, database_runtime_event: _Optional[_Union[DatabaseRuntimeEvent, _Mapping]] = ..., module_runtime_event: _Optional[_Union[ModuleRuntimeEvent, _Mapping]] = ..., topic_runtime_event: _Optional[_Union[TopicRuntimeEvent, _Mapping]] = ..., verb_runtime_event: _Optional[_Union[VerbRuntimeEvent, _Mapping]] = ...) -> None: ... - class Schema(_message.Message): __slots__ = ("pos", "modules") POS_FIELD_NUMBER: _ClassVar[int] @@ -816,8 +728,8 @@ class SchemaState(_message.Message): RUNTIME_EVENTS_FIELD_NUMBER: _ClassVar[int] modules: _containers.RepeatedCompositeFieldContainer[Module] changesets: _containers.RepeatedCompositeFieldContainer[Changeset] - runtime_events: _containers.RepeatedCompositeFieldContainer[RuntimeEvent] - def __init__(self, modules: _Optional[_Iterable[_Union[Module, _Mapping]]] = ..., changesets: _Optional[_Iterable[_Union[Changeset, _Mapping]]] = ..., runtime_events: _Optional[_Iterable[_Union[RuntimeEvent, _Mapping]]] = ...) -> None: ... + runtime_events: _containers.RepeatedCompositeFieldContainer[DeploymentRuntimeEvent] + def __init__(self, modules: _Optional[_Iterable[_Union[Module, _Mapping]]] = ..., changesets: _Optional[_Iterable[_Union[Changeset, _Mapping]]] = ..., runtime_events: _Optional[_Iterable[_Union[DeploymentRuntimeEvent, _Mapping]]] = ...) -> None: ... class Secret(_message.Message): __slots__ = ("pos", "comments", "name", "type") @@ -877,18 +789,6 @@ class TopicRuntime(_message.Message): topic_id: str def __init__(self, kafka_brokers: _Optional[_Iterable[str]] = ..., topic_id: _Optional[str] = ...) -> None: ... -class TopicRuntimeEvent(_message.Message): - __slots__ = ("deployment", "changeset", "id", "payload") - DEPLOYMENT_FIELD_NUMBER: _ClassVar[int] - CHANGESET_FIELD_NUMBER: _ClassVar[int] - ID_FIELD_NUMBER: _ClassVar[int] - PAYLOAD_FIELD_NUMBER: _ClassVar[int] - deployment: str - changeset: str - id: str - payload: TopicRuntime - def __init__(self, deployment: _Optional[str] = ..., changeset: _Optional[str] = ..., id: _Optional[str] = ..., payload: _Optional[_Union[TopicRuntime, _Mapping]] = ...) -> None: ... - class Type(_message.Message): __slots__ = ("any", "array", "bool", "bytes", "float", "int", "map", "optional", "ref", "string", "time", "unit") ANY_FIELD_NUMBER: _ClassVar[int] @@ -991,18 +891,6 @@ class VerbRuntime(_message.Message): subscription: VerbRuntimeSubscription def __init__(self, subscription: _Optional[_Union[VerbRuntimeSubscription, _Mapping]] = ...) -> None: ... -class VerbRuntimeEvent(_message.Message): - __slots__ = ("deployment", "changeset", "id", "subscription") - DEPLOYMENT_FIELD_NUMBER: _ClassVar[int] - CHANGESET_FIELD_NUMBER: _ClassVar[int] - ID_FIELD_NUMBER: _ClassVar[int] - SUBSCRIPTION_FIELD_NUMBER: _ClassVar[int] - deployment: str - changeset: str - id: str - subscription: VerbRuntimeSubscription - def __init__(self, deployment: _Optional[str] = ..., changeset: _Optional[str] = ..., id: _Optional[str] = ..., subscription: _Optional[_Union[VerbRuntimeSubscription, _Mapping]] = ...) -> None: ... - class VerbRuntimeSubscription(_message.Message): __slots__ = ("kafka_brokers",) KAFKA_BROKERS_FIELD_NUMBER: _ClassVar[int]