// Copyright 2025 The Bucketeer Authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.26.0
// 	protoc        v4.23.4
// source: proto/gateway/service.proto

package gateway

import (
	context "context"
	account "github.com/bucketeer-io/bucketeer/v2/proto/account"
	auditlog "github.com/bucketeer-io/bucketeer/v2/proto/auditlog"
	autoops "github.com/bucketeer-io/bucketeer/v2/proto/autoops"
	coderef "github.com/bucketeer-io/bucketeer/v2/proto/coderef"
	common "github.com/bucketeer-io/bucketeer/v2/proto/common"
	environment "github.com/bucketeer-io/bucketeer/v2/proto/environment"
	client "github.com/bucketeer-io/bucketeer/v2/proto/event/client"
	eventcounter "github.com/bucketeer-io/bucketeer/v2/proto/eventcounter"
	experiment "github.com/bucketeer-io/bucketeer/v2/proto/experiment"
	feature "github.com/bucketeer-io/bucketeer/v2/proto/feature"
	notification "github.com/bucketeer-io/bucketeer/v2/proto/notification"
	push "github.com/bucketeer-io/bucketeer/v2/proto/push"
	tag "github.com/bucketeer-io/bucketeer/v2/proto/tag"
	team "github.com/bucketeer-io/bucketeer/v2/proto/team"
	user "github.com/bucketeer-io/bucketeer/v2/proto/user"
	_ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	grpc "google.golang.org/grpc"
	codes "google.golang.org/grpc/codes"
	status "google.golang.org/grpc/status"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
	reflect "reflect"
	sync "sync"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type PingRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *PingRequest) Reset() {
	*x = PingRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PingRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PingRequest) ProtoMessage() {}

func (x *PingRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PingRequest.ProtoReflect.Descriptor instead.
func (*PingRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{0}
}

type PingResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Time int64 `protobuf:"varint,1,opt,name=time,proto3" json:"time"`
}

func (x *PingResponse) Reset() {
	*x = PingResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PingResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PingResponse) ProtoMessage() {}

func (x *PingResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PingResponse.ProtoReflect.Descriptor instead.
func (*PingResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{1}
}

func (x *PingResponse) GetTime() int64 {
	if x != nil {
		return x.Time
	}
	return 0
}

type GetFeatureFlagsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tag            string          `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag"`
	FeatureFlagsId string          `protobuf:"bytes,2,opt,name=feature_flags_id,json=featureFlagsId,proto3" json:"feature_flags_id"`
	RequestedAt    int64           `protobuf:"varint,3,opt,name=requested_at,json=requestedAt,proto3" json:"requested_at"`
	SourceId       client.SourceId `protobuf:"varint,4,opt,name=source_id,json=sourceId,proto3,enum=bucketeer.event.client.SourceId" json:"source_id"`
	SdkVersion     string          `protobuf:"bytes,5,opt,name=sdk_version,json=sdkVersion,proto3" json:"sdk_version"`
}

func (x *GetFeatureFlagsRequest) Reset() {
	*x = GetFeatureFlagsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetFeatureFlagsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetFeatureFlagsRequest) ProtoMessage() {}

func (x *GetFeatureFlagsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetFeatureFlagsRequest.ProtoReflect.Descriptor instead.
func (*GetFeatureFlagsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{2}
}

func (x *GetFeatureFlagsRequest) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

func (x *GetFeatureFlagsRequest) GetFeatureFlagsId() string {
	if x != nil {
		return x.FeatureFlagsId
	}
	return ""
}

func (x *GetFeatureFlagsRequest) GetRequestedAt() int64 {
	if x != nil {
		return x.RequestedAt
	}
	return 0
}

func (x *GetFeatureFlagsRequest) GetSourceId() client.SourceId {
	if x != nil {
		return x.SourceId
	}
	return client.SourceId_UNKNOWN
}

func (x *GetFeatureFlagsRequest) GetSdkVersion() string {
	if x != nil {
		return x.SdkVersion
	}
	return ""
}

type GetFeatureFlagsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureFlagsId         string             `protobuf:"bytes,1,opt,name=feature_flags_id,json=featureFlagsId,proto3" json:"feature_flags_id"`
	Features               []*feature.Feature `protobuf:"bytes,2,rep,name=features,proto3" json:"features"`
	ArchivedFeatureFlagIds []string           `protobuf:"bytes,3,rep,name=archived_feature_flag_ids,json=archivedFeatureFlagIds,proto3" json:"archived_feature_flag_ids"`
	RequestedAt            int64              `protobuf:"varint,4,opt,name=requested_at,json=requestedAt,proto3" json:"requested_at"`
	ForceUpdate            bool               `protobuf:"varint,5,opt,name=force_update,json=forceUpdate,proto3" json:"force_update"`
}

func (x *GetFeatureFlagsResponse) Reset() {
	*x = GetFeatureFlagsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetFeatureFlagsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetFeatureFlagsResponse) ProtoMessage() {}

func (x *GetFeatureFlagsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetFeatureFlagsResponse.ProtoReflect.Descriptor instead.
func (*GetFeatureFlagsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{3}
}

func (x *GetFeatureFlagsResponse) GetFeatureFlagsId() string {
	if x != nil {
		return x.FeatureFlagsId
	}
	return ""
}

func (x *GetFeatureFlagsResponse) GetFeatures() []*feature.Feature {
	if x != nil {
		return x.Features
	}
	return nil
}

func (x *GetFeatureFlagsResponse) GetArchivedFeatureFlagIds() []string {
	if x != nil {
		return x.ArchivedFeatureFlagIds
	}
	return nil
}

func (x *GetFeatureFlagsResponse) GetRequestedAt() int64 {
	if x != nil {
		return x.RequestedAt
	}
	return 0
}

func (x *GetFeatureFlagsResponse) GetForceUpdate() bool {
	if x != nil {
		return x.ForceUpdate
	}
	return false
}

type GetSegmentUsersRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	SegmentIds  []string        `protobuf:"bytes,1,rep,name=segment_ids,json=segmentIds,proto3" json:"segment_ids"`
	RequestedAt int64           `protobuf:"varint,2,opt,name=requested_at,json=requestedAt,proto3" json:"requested_at"`
	SourceId    client.SourceId `protobuf:"varint,3,opt,name=source_id,json=sourceId,proto3,enum=bucketeer.event.client.SourceId" json:"source_id"`
	SdkVersion  string          `protobuf:"bytes,4,opt,name=sdk_version,json=sdkVersion,proto3" json:"sdk_version"`
}

func (x *GetSegmentUsersRequest) Reset() {
	*x = GetSegmentUsersRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetSegmentUsersRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetSegmentUsersRequest) ProtoMessage() {}

func (x *GetSegmentUsersRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetSegmentUsersRequest.ProtoReflect.Descriptor instead.
func (*GetSegmentUsersRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{4}
}

func (x *GetSegmentUsersRequest) GetSegmentIds() []string {
	if x != nil {
		return x.SegmentIds
	}
	return nil
}

func (x *GetSegmentUsersRequest) GetRequestedAt() int64 {
	if x != nil {
		return x.RequestedAt
	}
	return 0
}

func (x *GetSegmentUsersRequest) GetSourceId() client.SourceId {
	if x != nil {
		return x.SourceId
	}
	return client.SourceId_UNKNOWN
}

func (x *GetSegmentUsersRequest) GetSdkVersion() string {
	if x != nil {
		return x.SdkVersion
	}
	return ""
}

type GetSegmentUsersResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	SegmentUsers      []*feature.SegmentUsers `protobuf:"bytes,1,rep,name=segment_users,json=segmentUsers,proto3" json:"segment_users"`
	DeletedSegmentIds []string                `protobuf:"bytes,2,rep,name=deleted_segment_ids,json=deletedSegmentIds,proto3" json:"deleted_segment_ids"`
	RequestedAt       int64                   `protobuf:"varint,3,opt,name=requested_at,json=requestedAt,proto3" json:"requested_at"`
	ForceUpdate       bool                    `protobuf:"varint,4,opt,name=force_update,json=forceUpdate,proto3" json:"force_update"`
}

func (x *GetSegmentUsersResponse) Reset() {
	*x = GetSegmentUsersResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetSegmentUsersResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetSegmentUsersResponse) ProtoMessage() {}

func (x *GetSegmentUsersResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[5]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetSegmentUsersResponse.ProtoReflect.Descriptor instead.
func (*GetSegmentUsersResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{5}
}

func (x *GetSegmentUsersResponse) GetSegmentUsers() []*feature.SegmentUsers {
	if x != nil {
		return x.SegmentUsers
	}
	return nil
}

func (x *GetSegmentUsersResponse) GetDeletedSegmentIds() []string {
	if x != nil {
		return x.DeletedSegmentIds
	}
	return nil
}

func (x *GetSegmentUsersResponse) GetRequestedAt() int64 {
	if x != nil {
		return x.RequestedAt
	}
	return 0
}

func (x *GetSegmentUsersResponse) GetForceUpdate() bool {
	if x != nil {
		return x.ForceUpdate
	}
	return false
}

type GetEvaluationsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tag               string     `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag"`
	User              *user.User `protobuf:"bytes,2,opt,name=user,proto3" json:"user"`
	UserEvaluationsId string     `protobuf:"bytes,3,opt,name=user_evaluations_id,json=userEvaluationsId,proto3" json:"user_evaluations_id"`
	// Deprecated: Do not use.
	FeatureId               string                                         `protobuf:"bytes,4,opt,name=feature_id,json=featureId,proto3" json:"feature_id"` // instead, use GetEvaluation API
	SourceId                client.SourceId                                `protobuf:"varint,5,opt,name=source_id,json=sourceId,proto3,enum=bucketeer.event.client.SourceId" json:"source_id"`
	UserEvaluationCondition *GetEvaluationsRequest_UserEvaluationCondition `protobuf:"bytes,6,opt,name=user_evaluation_condition,json=userEvaluationCondition,proto3" json:"user_evaluation_condition"`
	SdkVersion              string                                         `protobuf:"bytes,7,opt,name=sdk_version,json=sdkVersion,proto3" json:"sdk_version"`
}

func (x *GetEvaluationsRequest) Reset() {
	*x = GetEvaluationsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetEvaluationsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetEvaluationsRequest) ProtoMessage() {}

func (x *GetEvaluationsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[6]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetEvaluationsRequest.ProtoReflect.Descriptor instead.
func (*GetEvaluationsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{6}
}

func (x *GetEvaluationsRequest) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

func (x *GetEvaluationsRequest) GetUser() *user.User {
	if x != nil {
		return x.User
	}
	return nil
}

func (x *GetEvaluationsRequest) GetUserEvaluationsId() string {
	if x != nil {
		return x.UserEvaluationsId
	}
	return ""
}

// Deprecated: Do not use.
func (x *GetEvaluationsRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *GetEvaluationsRequest) GetSourceId() client.SourceId {
	if x != nil {
		return x.SourceId
	}
	return client.SourceId_UNKNOWN
}

func (x *GetEvaluationsRequest) GetUserEvaluationCondition() *GetEvaluationsRequest_UserEvaluationCondition {
	if x != nil {
		return x.UserEvaluationCondition
	}
	return nil
}

func (x *GetEvaluationsRequest) GetSdkVersion() string {
	if x != nil {
		return x.SdkVersion
	}
	return ""
}

type GetEvaluationsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	State             feature.UserEvaluations_State `protobuf:"varint,1,opt,name=state,proto3,enum=bucketeer.feature.UserEvaluations_State" json:"state"`
	Evaluations       *feature.UserEvaluations      `protobuf:"bytes,2,opt,name=evaluations,proto3" json:"evaluations"`
	UserEvaluationsId string                        `protobuf:"bytes,3,opt,name=user_evaluations_id,json=userEvaluationsId,proto3" json:"user_evaluations_id"`
}

func (x *GetEvaluationsResponse) Reset() {
	*x = GetEvaluationsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetEvaluationsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetEvaluationsResponse) ProtoMessage() {}

func (x *GetEvaluationsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[7]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetEvaluationsResponse.ProtoReflect.Descriptor instead.
func (*GetEvaluationsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{7}
}

func (x *GetEvaluationsResponse) GetState() feature.UserEvaluations_State {
	if x != nil {
		return x.State
	}
	return feature.UserEvaluations_QUEUED
}

func (x *GetEvaluationsResponse) GetEvaluations() *feature.UserEvaluations {
	if x != nil {
		return x.Evaluations
	}
	return nil
}

func (x *GetEvaluationsResponse) GetUserEvaluationsId() string {
	if x != nil {
		return x.UserEvaluationsId
	}
	return ""
}

type GetEvaluationRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tag        string          `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag"`
	User       *user.User      `protobuf:"bytes,2,opt,name=user,proto3" json:"user"`
	FeatureId  string          `protobuf:"bytes,3,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	SourceId   client.SourceId `protobuf:"varint,4,opt,name=source_id,json=sourceId,proto3,enum=bucketeer.event.client.SourceId" json:"source_id"`
	SdkVersion string          `protobuf:"bytes,5,opt,name=sdk_version,json=sdkVersion,proto3" json:"sdk_version"`
}

func (x *GetEvaluationRequest) Reset() {
	*x = GetEvaluationRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetEvaluationRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetEvaluationRequest) ProtoMessage() {}

func (x *GetEvaluationRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[8]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetEvaluationRequest.ProtoReflect.Descriptor instead.
func (*GetEvaluationRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{8}
}

func (x *GetEvaluationRequest) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

func (x *GetEvaluationRequest) GetUser() *user.User {
	if x != nil {
		return x.User
	}
	return nil
}

func (x *GetEvaluationRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *GetEvaluationRequest) GetSourceId() client.SourceId {
	if x != nil {
		return x.SourceId
	}
	return client.SourceId_UNKNOWN
}

func (x *GetEvaluationRequest) GetSdkVersion() string {
	if x != nil {
		return x.SdkVersion
	}
	return ""
}

type GetEvaluationResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Evaluation *feature.Evaluation `protobuf:"bytes,1,opt,name=evaluation,proto3" json:"evaluation"`
}

func (x *GetEvaluationResponse) Reset() {
	*x = GetEvaluationResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetEvaluationResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetEvaluationResponse) ProtoMessage() {}

func (x *GetEvaluationResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[9]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetEvaluationResponse.ProtoReflect.Descriptor instead.
func (*GetEvaluationResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{9}
}

func (x *GetEvaluationResponse) GetEvaluation() *feature.Evaluation {
	if x != nil {
		return x.Evaluation
	}
	return nil
}

type RegisterEventsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Events     []*client.Event `protobuf:"bytes,1,rep,name=events,proto3" json:"events"`
	SdkVersion string          `protobuf:"bytes,2,opt,name=sdk_version,json=sdkVersion,proto3" json:"sdk_version"`
	SourceId   client.SourceId `protobuf:"varint,3,opt,name=source_id,json=sourceId,proto3,enum=bucketeer.event.client.SourceId" json:"source_id"`
}

func (x *RegisterEventsRequest) Reset() {
	*x = RegisterEventsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[10]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RegisterEventsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RegisterEventsRequest) ProtoMessage() {}

func (x *RegisterEventsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[10]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RegisterEventsRequest.ProtoReflect.Descriptor instead.
func (*RegisterEventsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{10}
}

func (x *RegisterEventsRequest) GetEvents() []*client.Event {
	if x != nil {
		return x.Events
	}
	return nil
}

func (x *RegisterEventsRequest) GetSdkVersion() string {
	if x != nil {
		return x.SdkVersion
	}
	return ""
}

func (x *RegisterEventsRequest) GetSourceId() client.SourceId {
	if x != nil {
		return x.SourceId
	}
	return client.SourceId_UNKNOWN
}

type RegisterEventsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Errors map[string]*RegisterEventsResponse_Error `protobuf:"bytes,1,rep,name=errors,proto3" json:"errors" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}

func (x *RegisterEventsResponse) Reset() {
	*x = RegisterEventsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[11]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RegisterEventsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RegisterEventsResponse) ProtoMessage() {}

func (x *RegisterEventsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[11]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RegisterEventsResponse.ProtoReflect.Descriptor instead.
func (*RegisterEventsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{11}
}

func (x *RegisterEventsResponse) GetErrors() map[string]*RegisterEventsResponse_Error {
	if x != nil {
		return x.Errors
	}
	return nil
}

type TrackRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Apikey    string  `protobuf:"bytes,1,opt,name=apikey,proto3" json:"apikey"`
	Userid    string  `protobuf:"bytes,2,opt,name=userid,proto3" json:"userid"`
	Goalid    string  `protobuf:"bytes,3,opt,name=goalid,proto3" json:"goalid"`
	Tag       string  `protobuf:"bytes,4,opt,name=tag,proto3" json:"tag"`
	Timestamp int64   `protobuf:"varint,5,opt,name=timestamp,proto3" json:"timestamp"`
	Value     float64 `protobuf:"fixed64,6,opt,name=value,proto3" json:"value"`
}

func (x *TrackRequest) Reset() {
	*x = TrackRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[12]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TrackRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TrackRequest) ProtoMessage() {}

func (x *TrackRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[12]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TrackRequest.ProtoReflect.Descriptor instead.
func (*TrackRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{12}
}

func (x *TrackRequest) GetApikey() string {
	if x != nil {
		return x.Apikey
	}
	return ""
}

func (x *TrackRequest) GetUserid() string {
	if x != nil {
		return x.Userid
	}
	return ""
}

func (x *TrackRequest) GetGoalid() string {
	if x != nil {
		return x.Goalid
	}
	return ""
}

func (x *TrackRequest) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

func (x *TrackRequest) GetTimestamp() int64 {
	if x != nil {
		return x.Timestamp
	}
	return 0
}

func (x *TrackRequest) GetValue() float64 {
	if x != nil {
		return x.Value
	}
	return 0
}

type TrackResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *TrackResponse) Reset() {
	*x = TrackResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[13]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TrackResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TrackResponse) ProtoMessage() {}

func (x *TrackResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[13]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TrackResponse.ProtoReflect.Descriptor instead.
func (*TrackResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{13}
}

type DebugEvaluateFeaturesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Users      []*user.User `protobuf:"bytes,1,rep,name=users,proto3" json:"users"`
	FeatureIds []string     `protobuf:"bytes,3,rep,name=feature_ids,json=featureIds,proto3" json:"feature_ids"`
}

func (x *DebugEvaluateFeaturesRequest) Reset() {
	*x = DebugEvaluateFeaturesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[14]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DebugEvaluateFeaturesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DebugEvaluateFeaturesRequest) ProtoMessage() {}

func (x *DebugEvaluateFeaturesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[14]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DebugEvaluateFeaturesRequest.ProtoReflect.Descriptor instead.
func (*DebugEvaluateFeaturesRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{14}
}

func (x *DebugEvaluateFeaturesRequest) GetUsers() []*user.User {
	if x != nil {
		return x.Users
	}
	return nil
}

func (x *DebugEvaluateFeaturesRequest) GetFeatureIds() []string {
	if x != nil {
		return x.FeatureIds
	}
	return nil
}

type DebugEvaluateFeaturesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Evaluations        []*feature.Evaluation `protobuf:"bytes,1,rep,name=evaluations,proto3" json:"evaluations"`
	ArchivedFeatureIds []string              `protobuf:"bytes,2,rep,name=archived_feature_ids,json=archivedFeatureIds,proto3" json:"archived_feature_ids"`
}

func (x *DebugEvaluateFeaturesResponse) Reset() {
	*x = DebugEvaluateFeaturesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[15]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DebugEvaluateFeaturesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DebugEvaluateFeaturesResponse) ProtoMessage() {}

func (x *DebugEvaluateFeaturesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[15]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DebugEvaluateFeaturesResponse.ProtoReflect.Descriptor instead.
func (*DebugEvaluateFeaturesResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{15}
}

func (x *DebugEvaluateFeaturesResponse) GetEvaluations() []*feature.Evaluation {
	if x != nil {
		return x.Evaluations
	}
	return nil
}

func (x *DebugEvaluateFeaturesResponse) GetArchivedFeatureIds() []string {
	if x != nil {
		return x.ArchivedFeatureIds
	}
	return nil
}

type CreateFeatureRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id                string                        `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	Name              string                        `protobuf:"bytes,2,opt,name=name,proto3" json:"name"`
	Description       string                        `protobuf:"bytes,3,opt,name=description,proto3" json:"description"`
	VariationType     feature.Feature_VariationType `protobuf:"varint,4,opt,name=variation_type,json=variationType,proto3,enum=bucketeer.feature.Feature_VariationType" json:"variation_type"`
	Variations        []*feature.Variation          `protobuf:"bytes,5,rep,name=variations,proto3" json:"variations"`
	Tags              []string                      `protobuf:"bytes,6,rep,name=tags,proto3" json:"tags"`
	OnVariationIndex  int32                         `protobuf:"varint,7,opt,name=on_variation_index,json=onVariationIndex,proto3" json:"on_variation_index"`
	OffVariationIndex int32                         `protobuf:"varint,8,opt,name=off_variation_index,json=offVariationIndex,proto3" json:"off_variation_index"`
}

func (x *CreateFeatureRequest) Reset() {
	*x = CreateFeatureRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[16]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFeatureRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFeatureRequest) ProtoMessage() {}

func (x *CreateFeatureRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[16]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateFeatureRequest.ProtoReflect.Descriptor instead.
func (*CreateFeatureRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{16}
}

func (x *CreateFeatureRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateFeatureRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateFeatureRequest) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateFeatureRequest) GetVariationType() feature.Feature_VariationType {
	if x != nil {
		return x.VariationType
	}
	return feature.Feature_STRING
}

func (x *CreateFeatureRequest) GetVariations() []*feature.Variation {
	if x != nil {
		return x.Variations
	}
	return nil
}

func (x *CreateFeatureRequest) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *CreateFeatureRequest) GetOnVariationIndex() int32 {
	if x != nil {
		return x.OnVariationIndex
	}
	return 0
}

func (x *CreateFeatureRequest) GetOffVariationIndex() int32 {
	if x != nil {
		return x.OffVariationIndex
	}
	return 0
}

type CreateFeatureResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Feature *feature.Feature `protobuf:"bytes,1,opt,name=feature,proto3" json:"feature"`
}

func (x *CreateFeatureResponse) Reset() {
	*x = CreateFeatureResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[17]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFeatureResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFeatureResponse) ProtoMessage() {}

func (x *CreateFeatureResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[17]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateFeatureResponse.ProtoReflect.Descriptor instead.
func (*CreateFeatureResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{17}
}

func (x *CreateFeatureResponse) GetFeature() *feature.Feature {
	if x != nil {
		return x.Feature
	}
	return nil
}

type GetFeatureRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id             string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	FeatureVersion *wrapperspb.Int32Value `protobuf:"bytes,2,opt,name=feature_version,json=featureVersion,proto3" json:"feature_version"`
}

func (x *GetFeatureRequest) Reset() {
	*x = GetFeatureRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[18]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetFeatureRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetFeatureRequest) ProtoMessage() {}

func (x *GetFeatureRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[18]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetFeatureRequest.ProtoReflect.Descriptor instead.
func (*GetFeatureRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{18}
}

func (x *GetFeatureRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *GetFeatureRequest) GetFeatureVersion() *wrapperspb.Int32Value {
	if x != nil {
		return x.FeatureVersion
	}
	return nil
}

type GetFeatureResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Feature *feature.Feature `protobuf:"bytes,1,opt,name=feature,proto3" json:"feature"`
}

func (x *GetFeatureResponse) Reset() {
	*x = GetFeatureResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[19]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetFeatureResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetFeatureResponse) ProtoMessage() {}

func (x *GetFeatureResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[19]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetFeatureResponse.ProtoReflect.Descriptor instead.
func (*GetFeatureResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{19}
}

func (x *GetFeatureResponse) GetFeature() *feature.Feature {
	if x != nil {
		return x.Feature
	}
	return nil
}

type ListFeaturesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                                      `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                     `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	OrderBy        feature.ListFeaturesRequest_OrderBy        `protobuf:"varint,3,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.feature.ListFeaturesRequest_OrderBy" json:"order_by"`
	OrderDirection feature.ListFeaturesRequest_OrderDirection `protobuf:"varint,4,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.feature.ListFeaturesRequest_OrderDirection" json:"order_direction"`
}

func (x *ListFeaturesRequest) Reset() {
	*x = ListFeaturesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[20]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFeaturesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFeaturesRequest) ProtoMessage() {}

func (x *ListFeaturesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[20]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListFeaturesRequest.ProtoReflect.Descriptor instead.
func (*ListFeaturesRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{20}
}

func (x *ListFeaturesRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListFeaturesRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListFeaturesRequest) GetOrderBy() feature.ListFeaturesRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return feature.ListFeaturesRequest_DEFAULT
}

func (x *ListFeaturesRequest) GetOrderDirection() feature.ListFeaturesRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return feature.ListFeaturesRequest_ASC
}

type ListFeaturesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Features []*feature.Feature `protobuf:"bytes,1,rep,name=features,proto3" json:"features"`
}

func (x *ListFeaturesResponse) Reset() {
	*x = ListFeaturesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[21]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFeaturesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFeaturesResponse) ProtoMessage() {}

func (x *ListFeaturesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[21]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListFeaturesResponse.ProtoReflect.Descriptor instead.
func (*ListFeaturesResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{21}
}

func (x *ListFeaturesResponse) GetFeatures() []*feature.Feature {
	if x != nil {
		return x.Features
	}
	return nil
}

type UpdateFeatureRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Comment             string                        `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"`
	EnvironmentId       string                        `protobuf:"bytes,2,opt,name=environment_id,json=environmentId,proto3" json:"environment_id"`
	Id                  string                        `protobuf:"bytes,3,opt,name=id,proto3" json:"id"`
	Name                *wrapperspb.StringValue       `protobuf:"bytes,4,opt,name=name,proto3" json:"name"`
	Description         *wrapperspb.StringValue       `protobuf:"bytes,5,opt,name=description,proto3" json:"description"`
	Tags                *common.StringListValue       `protobuf:"bytes,6,opt,name=tags,proto3" json:"tags"`
	Enabled             *wrapperspb.BoolValue         `protobuf:"bytes,7,opt,name=enabled,proto3" json:"enabled"`
	Archived            *wrapperspb.BoolValue         `protobuf:"bytes,8,opt,name=archived,proto3" json:"archived"`
	DefaultStrategy     *feature.Strategy             `protobuf:"bytes,9,opt,name=default_strategy,json=defaultStrategy,proto3" json:"default_strategy"`
	OffVariation        *wrapperspb.StringValue       `protobuf:"bytes,10,opt,name=off_variation,json=offVariation,proto3" json:"off_variation"`
	ResetSamplingSeed   bool                          `protobuf:"varint,11,opt,name=reset_sampling_seed,json=resetSamplingSeed,proto3" json:"reset_sampling_seed"`
	VariationChanges    []*feature.VariationChange    `protobuf:"bytes,12,rep,name=variation_changes,json=variationChanges,proto3" json:"variation_changes"`
	RuleChanges         []*feature.RuleChange         `protobuf:"bytes,13,rep,name=rule_changes,json=ruleChanges,proto3" json:"rule_changes"`
	PrerequisiteChanges []*feature.PrerequisiteChange `protobuf:"bytes,14,rep,name=prerequisite_changes,json=prerequisiteChanges,proto3" json:"prerequisite_changes"`
	TargetChanges       []*feature.TargetChange       `protobuf:"bytes,15,rep,name=target_changes,json=targetChanges,proto3" json:"target_changes"`
	TagChanges          []*feature.TagChange          `protobuf:"bytes,16,rep,name=tag_changes,json=tagChanges,proto3" json:"tag_changes"`
}

func (x *UpdateFeatureRequest) Reset() {
	*x = UpdateFeatureRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[22]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateFeatureRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateFeatureRequest) ProtoMessage() {}

func (x *UpdateFeatureRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[22]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateFeatureRequest.ProtoReflect.Descriptor instead.
func (*UpdateFeatureRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{22}
}

func (x *UpdateFeatureRequest) GetComment() string {
	if x != nil {
		return x.Comment
	}
	return ""
}

func (x *UpdateFeatureRequest) GetEnvironmentId() string {
	if x != nil {
		return x.EnvironmentId
	}
	return ""
}

func (x *UpdateFeatureRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateFeatureRequest) GetName() *wrapperspb.StringValue {
	if x != nil {
		return x.Name
	}
	return nil
}

func (x *UpdateFeatureRequest) GetDescription() *wrapperspb.StringValue {
	if x != nil {
		return x.Description
	}
	return nil
}

func (x *UpdateFeatureRequest) GetTags() *common.StringListValue {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *UpdateFeatureRequest) GetEnabled() *wrapperspb.BoolValue {
	if x != nil {
		return x.Enabled
	}
	return nil
}

func (x *UpdateFeatureRequest) GetArchived() *wrapperspb.BoolValue {
	if x != nil {
		return x.Archived
	}
	return nil
}

func (x *UpdateFeatureRequest) GetDefaultStrategy() *feature.Strategy {
	if x != nil {
		return x.DefaultStrategy
	}
	return nil
}

func (x *UpdateFeatureRequest) GetOffVariation() *wrapperspb.StringValue {
	if x != nil {
		return x.OffVariation
	}
	return nil
}

func (x *UpdateFeatureRequest) GetResetSamplingSeed() bool {
	if x != nil {
		return x.ResetSamplingSeed
	}
	return false
}

func (x *UpdateFeatureRequest) GetVariationChanges() []*feature.VariationChange {
	if x != nil {
		return x.VariationChanges
	}
	return nil
}

func (x *UpdateFeatureRequest) GetRuleChanges() []*feature.RuleChange {
	if x != nil {
		return x.RuleChanges
	}
	return nil
}

func (x *UpdateFeatureRequest) GetPrerequisiteChanges() []*feature.PrerequisiteChange {
	if x != nil {
		return x.PrerequisiteChanges
	}
	return nil
}

func (x *UpdateFeatureRequest) GetTargetChanges() []*feature.TargetChange {
	if x != nil {
		return x.TargetChanges
	}
	return nil
}

func (x *UpdateFeatureRequest) GetTagChanges() []*feature.TagChange {
	if x != nil {
		return x.TagChanges
	}
	return nil
}

type UpdateFeatureResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Feature *feature.Feature `protobuf:"bytes,1,opt,name=feature,proto3" json:"feature"`
}

func (x *UpdateFeatureResponse) Reset() {
	*x = UpdateFeatureResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[23]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateFeatureResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateFeatureResponse) ProtoMessage() {}

func (x *UpdateFeatureResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[23]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateFeatureResponse.ProtoReflect.Descriptor instead.
func (*UpdateFeatureResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{23}
}

func (x *UpdateFeatureResponse) GetFeature() *feature.Feature {
	if x != nil {
		return x.Feature
	}
	return nil
}

type ListPushesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                                 `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	OrderBy        push.ListPushesRequest_OrderBy        `protobuf:"varint,3,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.push.ListPushesRequest_OrderBy" json:"order_by"`
	OrderDirection push.ListPushesRequest_OrderDirection `protobuf:"varint,4,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.push.ListPushesRequest_OrderDirection" json:"order_direction"`
	SearchKeyword  string                                `protobuf:"bytes,5,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
}

func (x *ListPushesRequest) Reset() {
	*x = ListPushesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[24]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListPushesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListPushesRequest) ProtoMessage() {}

func (x *ListPushesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[24]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListPushesRequest.ProtoReflect.Descriptor instead.
func (*ListPushesRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{24}
}

func (x *ListPushesRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListPushesRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListPushesRequest) GetOrderBy() push.ListPushesRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return push.ListPushesRequest_DEFAULT
}

func (x *ListPushesRequest) GetOrderDirection() push.ListPushesRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return push.ListPushesRequest_ASC
}

func (x *ListPushesRequest) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

type ListPushesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Pushes     []*push.Push `protobuf:"bytes,1,rep,name=pushes,proto3" json:"pushes"`
	Cursor     string       `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount int64        `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListPushesResponse) Reset() {
	*x = ListPushesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[25]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListPushesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListPushesResponse) ProtoMessage() {}

func (x *ListPushesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[25]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListPushesResponse.ProtoReflect.Descriptor instead.
func (*ListPushesResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{25}
}

func (x *ListPushesResponse) GetPushes() []*push.Push {
	if x != nil {
		return x.Pushes
	}
	return nil
}

func (x *ListPushesResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListPushesResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type CreatePushRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tags              []string `protobuf:"bytes,1,rep,name=tags,proto3" json:"tags"`
	Name              string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name"`
	FcmServiceAccount []byte   `protobuf:"bytes,3,opt,name=fcm_service_account,json=fcmServiceAccount,proto3" json:"fcm_service_account"`
}

func (x *CreatePushRequest) Reset() {
	*x = CreatePushRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[26]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreatePushRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreatePushRequest) ProtoMessage() {}

func (x *CreatePushRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[26]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreatePushRequest.ProtoReflect.Descriptor instead.
func (*CreatePushRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{26}
}

func (x *CreatePushRequest) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *CreatePushRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreatePushRequest) GetFcmServiceAccount() []byte {
	if x != nil {
		return x.FcmServiceAccount
	}
	return nil
}

type CreatePushResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Push *push.Push `protobuf:"bytes,1,opt,name=push,proto3" json:"push"`
}

func (x *CreatePushResponse) Reset() {
	*x = CreatePushResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[27]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreatePushResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreatePushResponse) ProtoMessage() {}

func (x *CreatePushResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[27]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreatePushResponse.ProtoReflect.Descriptor instead.
func (*CreatePushResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{27}
}

func (x *CreatePushResponse) GetPush() *push.Push {
	if x != nil {
		return x.Push
	}
	return nil
}

type GetPushRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetPushRequest) Reset() {
	*x = GetPushRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[28]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetPushRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetPushRequest) ProtoMessage() {}

func (x *GetPushRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[28]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetPushRequest.ProtoReflect.Descriptor instead.
func (*GetPushRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{28}
}

func (x *GetPushRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetPushResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Push *push.Push `protobuf:"bytes,1,opt,name=push,proto3" json:"push"`
}

func (x *GetPushResponse) Reset() {
	*x = GetPushResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[29]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetPushResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetPushResponse) ProtoMessage() {}

func (x *GetPushResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[29]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetPushResponse.ProtoReflect.Descriptor instead.
func (*GetPushResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{29}
}

func (x *GetPushResponse) GetPush() *push.Push {
	if x != nil {
		return x.Push
	}
	return nil
}

type UpdatePushRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id      string                  `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	Tags    []string                `protobuf:"bytes,2,rep,name=tags,proto3" json:"tags"`
	Name    *wrapperspb.StringValue `protobuf:"bytes,3,opt,name=name,proto3" json:"name"`
	Deleted *wrapperspb.BoolValue   `protobuf:"bytes,4,opt,name=deleted,proto3" json:"deleted"`
}

func (x *UpdatePushRequest) Reset() {
	*x = UpdatePushRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[30]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdatePushRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdatePushRequest) ProtoMessage() {}

func (x *UpdatePushRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[30]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdatePushRequest.ProtoReflect.Descriptor instead.
func (*UpdatePushRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{30}
}

func (x *UpdatePushRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdatePushRequest) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *UpdatePushRequest) GetName() *wrapperspb.StringValue {
	if x != nil {
		return x.Name
	}
	return nil
}

func (x *UpdatePushRequest) GetDeleted() *wrapperspb.BoolValue {
	if x != nil {
		return x.Deleted
	}
	return nil
}

type UpdatePushResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Push *push.Push `protobuf:"bytes,1,opt,name=push,proto3" json:"push"`
}

func (x *UpdatePushResponse) Reset() {
	*x = UpdatePushResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[31]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdatePushResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdatePushResponse) ProtoMessage() {}

func (x *UpdatePushResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[31]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdatePushResponse.ProtoReflect.Descriptor instead.
func (*UpdatePushResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{31}
}

func (x *UpdatePushResponse) GetPush() *push.Push {
	if x != nil {
		return x.Push
	}
	return nil
}

type CreateAccountV2Request struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Email            string                               `protobuf:"bytes,1,opt,name=email,proto3" json:"email"`
	Name             string                               `protobuf:"bytes,2,opt,name=name,proto3" json:"name"`
	AvatarImageUrl   string                               `protobuf:"bytes,3,opt,name=avatar_image_url,json=avatarImageUrl,proto3" json:"avatar_image_url"`
	OrganizationId   string                               `protobuf:"bytes,4,opt,name=organization_id,json=organizationId,proto3" json:"organization_id"`
	OrganizationRole account.AccountV2_Role_Organization  `protobuf:"varint,5,opt,name=organization_role,json=organizationRole,proto3,enum=bucketeer.account.AccountV2_Role_Organization" json:"organization_role"`
	EnvironmentRoles []*account.AccountV2_EnvironmentRole `protobuf:"bytes,6,rep,name=environment_roles,json=environmentRoles,proto3" json:"environment_roles"`
	FirstName        string                               `protobuf:"bytes,7,opt,name=first_name,json=firstName,proto3" json:"first_name"`
	LastName         string                               `protobuf:"bytes,8,opt,name=last_name,json=lastName,proto3" json:"last_name"`
	Language         string                               `protobuf:"bytes,9,opt,name=language,proto3" json:"language"`
}

func (x *CreateAccountV2Request) Reset() {
	*x = CreateAccountV2Request{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[32]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateAccountV2Request) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateAccountV2Request) ProtoMessage() {}

func (x *CreateAccountV2Request) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[32]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateAccountV2Request.ProtoReflect.Descriptor instead.
func (*CreateAccountV2Request) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{32}
}

func (x *CreateAccountV2Request) GetEmail() string {
	if x != nil {
		return x.Email
	}
	return ""
}

func (x *CreateAccountV2Request) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateAccountV2Request) GetAvatarImageUrl() string {
	if x != nil {
		return x.AvatarImageUrl
	}
	return ""
}

func (x *CreateAccountV2Request) GetOrganizationId() string {
	if x != nil {
		return x.OrganizationId
	}
	return ""
}

func (x *CreateAccountV2Request) GetOrganizationRole() account.AccountV2_Role_Organization {
	if x != nil {
		return x.OrganizationRole
	}
	return account.AccountV2_Role_Organization_UNASSIGNED
}

func (x *CreateAccountV2Request) GetEnvironmentRoles() []*account.AccountV2_EnvironmentRole {
	if x != nil {
		return x.EnvironmentRoles
	}
	return nil
}

func (x *CreateAccountV2Request) GetFirstName() string {
	if x != nil {
		return x.FirstName
	}
	return ""
}

func (x *CreateAccountV2Request) GetLastName() string {
	if x != nil {
		return x.LastName
	}
	return ""
}

func (x *CreateAccountV2Request) GetLanguage() string {
	if x != nil {
		return x.Language
	}
	return ""
}

type CreateAccountV2Response struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account *account.AccountV2 `protobuf:"bytes,1,opt,name=account,proto3" json:"account"`
}

func (x *CreateAccountV2Response) Reset() {
	*x = CreateAccountV2Response{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[33]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateAccountV2Response) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateAccountV2Response) ProtoMessage() {}

func (x *CreateAccountV2Response) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[33]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateAccountV2Response.ProtoReflect.Descriptor instead.
func (*CreateAccountV2Response) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{33}
}

func (x *CreateAccountV2Response) GetAccount() *account.AccountV2 {
	if x != nil {
		return x.Account
	}
	return nil
}

type UpdateAccountV2Request struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Email            string                                                `protobuf:"bytes,1,opt,name=email,proto3" json:"email"`
	OrganizationId   string                                                `protobuf:"bytes,2,opt,name=organization_id,json=organizationId,proto3" json:"organization_id"`
	Name             *wrapperspb.StringValue                               `protobuf:"bytes,3,opt,name=name,proto3" json:"name"`
	AvatarImageUrl   *wrapperspb.StringValue                               `protobuf:"bytes,4,opt,name=avatar_image_url,json=avatarImageUrl,proto3" json:"avatar_image_url"`
	OrganizationRole *account.UpdateAccountV2Request_OrganizationRoleValue `protobuf:"bytes,5,opt,name=organization_role,json=organizationRole,proto3" json:"organization_role"`
	EnvironmentRoles []*account.AccountV2_EnvironmentRole                  `protobuf:"bytes,6,rep,name=environment_roles,json=environmentRoles,proto3" json:"environment_roles"`
	FirstName        *wrapperspb.StringValue                               `protobuf:"bytes,7,opt,name=first_name,json=firstName,proto3" json:"first_name"`
	LastName         *wrapperspb.StringValue                               `protobuf:"bytes,8,opt,name=last_name,json=lastName,proto3" json:"last_name"`
	Language         *wrapperspb.StringValue                               `protobuf:"bytes,9,opt,name=language,proto3" json:"language"`
	LastSeen         *wrapperspb.Int64Value                                `protobuf:"bytes,10,opt,name=last_seen,json=lastSeen,proto3" json:"last_seen"`
	Avatar           *account.UpdateAccountV2Request_AccountV2Avatar       `protobuf:"bytes,11,opt,name=avatar,proto3" json:"avatar"`
	Disabled         *wrapperspb.BoolValue                                 `protobuf:"bytes,12,opt,name=disabled,proto3" json:"disabled"`
	Deleted          *wrapperspb.BoolValue                                 `protobuf:"bytes,13,opt,name=deleted,proto3" json:"deleted"`
}

func (x *UpdateAccountV2Request) Reset() {
	*x = UpdateAccountV2Request{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[34]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateAccountV2Request) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateAccountV2Request) ProtoMessage() {}

func (x *UpdateAccountV2Request) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[34]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateAccountV2Request.ProtoReflect.Descriptor instead.
func (*UpdateAccountV2Request) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{34}
}

func (x *UpdateAccountV2Request) GetEmail() string {
	if x != nil {
		return x.Email
	}
	return ""
}

func (x *UpdateAccountV2Request) GetOrganizationId() string {
	if x != nil {
		return x.OrganizationId
	}
	return ""
}

func (x *UpdateAccountV2Request) GetName() *wrapperspb.StringValue {
	if x != nil {
		return x.Name
	}
	return nil
}

func (x *UpdateAccountV2Request) GetAvatarImageUrl() *wrapperspb.StringValue {
	if x != nil {
		return x.AvatarImageUrl
	}
	return nil
}

func (x *UpdateAccountV2Request) GetOrganizationRole() *account.UpdateAccountV2Request_OrganizationRoleValue {
	if x != nil {
		return x.OrganizationRole
	}
	return nil
}

func (x *UpdateAccountV2Request) GetEnvironmentRoles() []*account.AccountV2_EnvironmentRole {
	if x != nil {
		return x.EnvironmentRoles
	}
	return nil
}

func (x *UpdateAccountV2Request) GetFirstName() *wrapperspb.StringValue {
	if x != nil {
		return x.FirstName
	}
	return nil
}

func (x *UpdateAccountV2Request) GetLastName() *wrapperspb.StringValue {
	if x != nil {
		return x.LastName
	}
	return nil
}

func (x *UpdateAccountV2Request) GetLanguage() *wrapperspb.StringValue {
	if x != nil {
		return x.Language
	}
	return nil
}

func (x *UpdateAccountV2Request) GetLastSeen() *wrapperspb.Int64Value {
	if x != nil {
		return x.LastSeen
	}
	return nil
}

func (x *UpdateAccountV2Request) GetAvatar() *account.UpdateAccountV2Request_AccountV2Avatar {
	if x != nil {
		return x.Avatar
	}
	return nil
}

func (x *UpdateAccountV2Request) GetDisabled() *wrapperspb.BoolValue {
	if x != nil {
		return x.Disabled
	}
	return nil
}

func (x *UpdateAccountV2Request) GetDeleted() *wrapperspb.BoolValue {
	if x != nil {
		return x.Deleted
	}
	return nil
}

type UpdateAccountV2Response struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account *account.AccountV2 `protobuf:"bytes,1,opt,name=account,proto3" json:"account"`
}

func (x *UpdateAccountV2Response) Reset() {
	*x = UpdateAccountV2Response{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[35]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateAccountV2Response) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateAccountV2Response) ProtoMessage() {}

func (x *UpdateAccountV2Response) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[35]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateAccountV2Response.ProtoReflect.Descriptor instead.
func (*UpdateAccountV2Response) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{35}
}

func (x *UpdateAccountV2Response) GetAccount() *account.AccountV2 {
	if x != nil {
		return x.Account
	}
	return nil
}

type GetAccountV2Request struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Email          string `protobuf:"bytes,1,opt,name=email,proto3" json:"email"`
	OrganizationId string `protobuf:"bytes,2,opt,name=organization_id,json=organizationId,proto3" json:"organization_id"`
}

func (x *GetAccountV2Request) Reset() {
	*x = GetAccountV2Request{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[36]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetAccountV2Request) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAccountV2Request) ProtoMessage() {}

func (x *GetAccountV2Request) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[36]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetAccountV2Request.ProtoReflect.Descriptor instead.
func (*GetAccountV2Request) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{36}
}

func (x *GetAccountV2Request) GetEmail() string {
	if x != nil {
		return x.Email
	}
	return ""
}

func (x *GetAccountV2Request) GetOrganizationId() string {
	if x != nil {
		return x.OrganizationId
	}
	return ""
}

type GetAccountV2Response struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account *account.AccountV2 `protobuf:"bytes,1,opt,name=account,proto3" json:"account"`
}

func (x *GetAccountV2Response) Reset() {
	*x = GetAccountV2Response{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[37]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetAccountV2Response) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAccountV2Response) ProtoMessage() {}

func (x *GetAccountV2Response) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[37]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetAccountV2Response.ProtoReflect.Descriptor instead.
func (*GetAccountV2Response) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{37}
}

func (x *GetAccountV2Response) GetAccount() *account.AccountV2 {
	if x != nil {
		return x.Account
	}
	return nil
}

type GetAccountV2ByEnvironmentIDRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Email         string `protobuf:"bytes,1,opt,name=email,proto3" json:"email"`
	EnvironmentId string `protobuf:"bytes,2,opt,name=environment_id,json=environmentId,proto3" json:"environment_id"`
}

func (x *GetAccountV2ByEnvironmentIDRequest) Reset() {
	*x = GetAccountV2ByEnvironmentIDRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[38]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetAccountV2ByEnvironmentIDRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAccountV2ByEnvironmentIDRequest) ProtoMessage() {}

func (x *GetAccountV2ByEnvironmentIDRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[38]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetAccountV2ByEnvironmentIDRequest.ProtoReflect.Descriptor instead.
func (*GetAccountV2ByEnvironmentIDRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{38}
}

func (x *GetAccountV2ByEnvironmentIDRequest) GetEmail() string {
	if x != nil {
		return x.Email
	}
	return ""
}

func (x *GetAccountV2ByEnvironmentIDRequest) GetEnvironmentId() string {
	if x != nil {
		return x.EnvironmentId
	}
	return ""
}

type GetAccountV2ByEnvironmentIDResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account *account.AccountV2 `protobuf:"bytes,1,opt,name=account,proto3" json:"account"`
}

func (x *GetAccountV2ByEnvironmentIDResponse) Reset() {
	*x = GetAccountV2ByEnvironmentIDResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[39]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetAccountV2ByEnvironmentIDResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAccountV2ByEnvironmentIDResponse) ProtoMessage() {}

func (x *GetAccountV2ByEnvironmentIDResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[39]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetAccountV2ByEnvironmentIDResponse.ProtoReflect.Descriptor instead.
func (*GetAccountV2ByEnvironmentIDResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{39}
}

func (x *GetAccountV2ByEnvironmentIDResponse) GetAccount() *account.AccountV2 {
	if x != nil {
		return x.Account
	}
	return nil
}

type GetMeRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id"`
}

func (x *GetMeRequest) Reset() {
	*x = GetMeRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[40]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetMeRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetMeRequest) ProtoMessage() {}

func (x *GetMeRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[40]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetMeRequest.ProtoReflect.Descriptor instead.
func (*GetMeRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{40}
}

func (x *GetMeRequest) GetOrganizationId() string {
	if x != nil {
		return x.OrganizationId
	}
	return ""
}

type GetMeResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account *account.ConsoleAccount `protobuf:"bytes,1,opt,name=account,proto3" json:"account"`
}

func (x *GetMeResponse) Reset() {
	*x = GetMeResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[41]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetMeResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetMeResponse) ProtoMessage() {}

func (x *GetMeResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[41]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetMeResponse.ProtoReflect.Descriptor instead.
func (*GetMeResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{41}
}

func (x *GetMeResponse) GetAccount() *account.ConsoleAccount {
	if x != nil {
		return x.Account
	}
	return nil
}

type ListAccountsV2Request struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize         int64                                        `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor           string                                       `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	OrganizationId   string                                       `protobuf:"bytes,3,opt,name=organization_id,json=organizationId,proto3" json:"organization_id"`
	OrderBy          account.ListAccountsV2Request_OrderBy        `protobuf:"varint,4,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.account.ListAccountsV2Request_OrderBy" json:"order_by"`
	OrderDirection   account.ListAccountsV2Request_OrderDirection `protobuf:"varint,5,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.account.ListAccountsV2Request_OrderDirection" json:"order_direction"`
	SearchKeyword    string                                       `protobuf:"bytes,6,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
	Disabled         *wrapperspb.BoolValue                        `protobuf:"bytes,7,opt,name=disabled,proto3" json:"disabled"`
	OrganizationRole *wrapperspb.Int32Value                       `protobuf:"bytes,8,opt,name=organization_role,json=organizationRole,proto3" json:"organization_role"`
	EnvironmentId    *wrapperspb.StringValue                      `protobuf:"bytes,9,opt,name=environment_id,json=environmentId,proto3" json:"environment_id"`
	EnvironmentRole  *wrapperspb.Int32Value                       `protobuf:"bytes,10,opt,name=environment_role,json=environmentRole,proto3" json:"environment_role"`
	Teams            []string                                     `protobuf:"bytes,11,rep,name=teams,proto3" json:"teams"`
}

func (x *ListAccountsV2Request) Reset() {
	*x = ListAccountsV2Request{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[42]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListAccountsV2Request) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAccountsV2Request) ProtoMessage() {}

func (x *ListAccountsV2Request) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[42]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAccountsV2Request.ProtoReflect.Descriptor instead.
func (*ListAccountsV2Request) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{42}
}

func (x *ListAccountsV2Request) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListAccountsV2Request) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListAccountsV2Request) GetOrganizationId() string {
	if x != nil {
		return x.OrganizationId
	}
	return ""
}

func (x *ListAccountsV2Request) GetOrderBy() account.ListAccountsV2Request_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return account.ListAccountsV2Request_DEFAULT
}

func (x *ListAccountsV2Request) GetOrderDirection() account.ListAccountsV2Request_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return account.ListAccountsV2Request_ASC
}

func (x *ListAccountsV2Request) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

func (x *ListAccountsV2Request) GetDisabled() *wrapperspb.BoolValue {
	if x != nil {
		return x.Disabled
	}
	return nil
}

func (x *ListAccountsV2Request) GetOrganizationRole() *wrapperspb.Int32Value {
	if x != nil {
		return x.OrganizationRole
	}
	return nil
}

func (x *ListAccountsV2Request) GetEnvironmentId() *wrapperspb.StringValue {
	if x != nil {
		return x.EnvironmentId
	}
	return nil
}

func (x *ListAccountsV2Request) GetEnvironmentRole() *wrapperspb.Int32Value {
	if x != nil {
		return x.EnvironmentRole
	}
	return nil
}

func (x *ListAccountsV2Request) GetTeams() []string {
	if x != nil {
		return x.Teams
	}
	return nil
}

type ListAccountsV2Response struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Accounts   []*account.AccountV2 `protobuf:"bytes,1,rep,name=accounts,proto3" json:"accounts"`
	Cursor     string               `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount int64                `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListAccountsV2Response) Reset() {
	*x = ListAccountsV2Response{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[43]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListAccountsV2Response) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAccountsV2Response) ProtoMessage() {}

func (x *ListAccountsV2Response) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[43]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAccountsV2Response.ProtoReflect.Descriptor instead.
func (*ListAccountsV2Response) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{43}
}

func (x *ListAccountsV2Response) GetAccounts() []*account.AccountV2 {
	if x != nil {
		return x.Accounts
	}
	return nil
}

func (x *ListAccountsV2Response) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListAccountsV2Response) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type GetCodeReferenceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetCodeReferenceRequest) Reset() {
	*x = GetCodeReferenceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[44]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetCodeReferenceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetCodeReferenceRequest) ProtoMessage() {}

func (x *GetCodeReferenceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[44]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetCodeReferenceRequest.ProtoReflect.Descriptor instead.
func (*GetCodeReferenceRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{44}
}

func (x *GetCodeReferenceRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetCodeReferenceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CodeReference *coderef.CodeReference `protobuf:"bytes,1,opt,name=code_reference,json=codeReference,proto3" json:"code_reference"`
}

func (x *GetCodeReferenceResponse) Reset() {
	*x = GetCodeReferenceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[45]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetCodeReferenceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetCodeReferenceResponse) ProtoMessage() {}

func (x *GetCodeReferenceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[45]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetCodeReferenceResponse.ProtoReflect.Descriptor instead.
func (*GetCodeReferenceResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{45}
}

func (x *GetCodeReferenceResponse) GetCodeReference() *coderef.CodeReference {
	if x != nil {
		return x.CodeReference
	}
	return nil
}

type ListCodeReferencesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                                            `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                           `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	OrderBy        coderef.ListCodeReferencesRequest_OrderBy        `protobuf:"varint,3,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.coderef.ListCodeReferencesRequest_OrderBy" json:"order_by"`
	OrderDirection coderef.ListCodeReferencesRequest_OrderDirection `protobuf:"varint,4,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.coderef.ListCodeReferencesRequest_OrderDirection" json:"order_direction"`
	SearchKeyword  string                                           `protobuf:"bytes,5,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
	FeatureId      string                                           `protobuf:"bytes,6,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
}

func (x *ListCodeReferencesRequest) Reset() {
	*x = ListCodeReferencesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[46]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListCodeReferencesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListCodeReferencesRequest) ProtoMessage() {}

func (x *ListCodeReferencesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[46]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListCodeReferencesRequest.ProtoReflect.Descriptor instead.
func (*ListCodeReferencesRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{46}
}

func (x *ListCodeReferencesRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListCodeReferencesRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListCodeReferencesRequest) GetOrderBy() coderef.ListCodeReferencesRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return coderef.ListCodeReferencesRequest_DEFAULT
}

func (x *ListCodeReferencesRequest) GetOrderDirection() coderef.ListCodeReferencesRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return coderef.ListCodeReferencesRequest_ASC
}

func (x *ListCodeReferencesRequest) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

func (x *ListCodeReferencesRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

type ListCodeReferencesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CodeReferences []*coderef.CodeReference `protobuf:"bytes,1,rep,name=code_references,json=codeReferences,proto3" json:"code_references"`
	Cursor         string                   `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount     int64                    `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListCodeReferencesResponse) Reset() {
	*x = ListCodeReferencesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[47]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListCodeReferencesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListCodeReferencesResponse) ProtoMessage() {}

func (x *ListCodeReferencesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[47]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListCodeReferencesResponse.ProtoReflect.Descriptor instead.
func (*ListCodeReferencesResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{47}
}

func (x *ListCodeReferencesResponse) GetCodeReferences() []*coderef.CodeReference {
	if x != nil {
		return x.CodeReferences
	}
	return nil
}

func (x *ListCodeReferencesResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListCodeReferencesResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type CreateCodeReferenceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureId        string                               `protobuf:"bytes,1,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	EnvironmentId    string                               `protobuf:"bytes,2,opt,name=environment_id,json=environmentId,proto3" json:"environment_id"`
	FilePath         string                               `protobuf:"bytes,3,opt,name=file_path,json=filePath,proto3" json:"file_path"`
	LineNumber       int32                                `protobuf:"varint,4,opt,name=line_number,json=lineNumber,proto3" json:"line_number"`
	CodeSnippet      string                               `protobuf:"bytes,5,opt,name=code_snippet,json=codeSnippet,proto3" json:"code_snippet"`
	ContentHash      string                               `protobuf:"bytes,6,opt,name=content_hash,json=contentHash,proto3" json:"content_hash"`
	Aliases          []string                             `protobuf:"bytes,7,rep,name=aliases,proto3" json:"aliases"`
	RepositoryName   string                               `protobuf:"bytes,8,opt,name=repository_name,json=repositoryName,proto3" json:"repository_name"`
	RepositoryOwner  string                               `protobuf:"bytes,9,opt,name=repository_owner,json=repositoryOwner,proto3" json:"repository_owner"`
	RepositoryType   coderef.CodeReference_RepositoryType `protobuf:"varint,10,opt,name=repository_type,json=repositoryType,proto3,enum=bucketeer.coderef.CodeReference_RepositoryType" json:"repository_type"`
	RepositoryBranch string                               `protobuf:"bytes,11,opt,name=repository_branch,json=repositoryBranch,proto3" json:"repository_branch"`
	CommitHash       string                               `protobuf:"bytes,12,opt,name=commit_hash,json=commitHash,proto3" json:"commit_hash"`
	FileExtension    string                               `protobuf:"bytes,13,opt,name=file_extension,json=fileExtension,proto3" json:"file_extension"`
}

func (x *CreateCodeReferenceRequest) Reset() {
	*x = CreateCodeReferenceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[48]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateCodeReferenceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateCodeReferenceRequest) ProtoMessage() {}

func (x *CreateCodeReferenceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[48]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateCodeReferenceRequest.ProtoReflect.Descriptor instead.
func (*CreateCodeReferenceRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{48}
}

func (x *CreateCodeReferenceRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *CreateCodeReferenceRequest) GetEnvironmentId() string {
	if x != nil {
		return x.EnvironmentId
	}
	return ""
}

func (x *CreateCodeReferenceRequest) GetFilePath() string {
	if x != nil {
		return x.FilePath
	}
	return ""
}

func (x *CreateCodeReferenceRequest) GetLineNumber() int32 {
	if x != nil {
		return x.LineNumber
	}
	return 0
}

func (x *CreateCodeReferenceRequest) GetCodeSnippet() string {
	if x != nil {
		return x.CodeSnippet
	}
	return ""
}

func (x *CreateCodeReferenceRequest) GetContentHash() string {
	if x != nil {
		return x.ContentHash
	}
	return ""
}

func (x *CreateCodeReferenceRequest) GetAliases() []string {
	if x != nil {
		return x.Aliases
	}
	return nil
}

func (x *CreateCodeReferenceRequest) GetRepositoryName() string {
	if x != nil {
		return x.RepositoryName
	}
	return ""
}

func (x *CreateCodeReferenceRequest) GetRepositoryOwner() string {
	if x != nil {
		return x.RepositoryOwner
	}
	return ""
}

func (x *CreateCodeReferenceRequest) GetRepositoryType() coderef.CodeReference_RepositoryType {
	if x != nil {
		return x.RepositoryType
	}
	return coderef.CodeReference_REPOSITORY_TYPE_UNSPECIFIED
}

func (x *CreateCodeReferenceRequest) GetRepositoryBranch() string {
	if x != nil {
		return x.RepositoryBranch
	}
	return ""
}

func (x *CreateCodeReferenceRequest) GetCommitHash() string {
	if x != nil {
		return x.CommitHash
	}
	return ""
}

func (x *CreateCodeReferenceRequest) GetFileExtension() string {
	if x != nil {
		return x.FileExtension
	}
	return ""
}

type CreateCodeReferenceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CodeReference *coderef.CodeReference `protobuf:"bytes,1,opt,name=code_reference,json=codeReference,proto3" json:"code_reference"`
}

func (x *CreateCodeReferenceResponse) Reset() {
	*x = CreateCodeReferenceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[49]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateCodeReferenceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateCodeReferenceResponse) ProtoMessage() {}

func (x *CreateCodeReferenceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[49]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateCodeReferenceResponse.ProtoReflect.Descriptor instead.
func (*CreateCodeReferenceResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{49}
}

func (x *CreateCodeReferenceResponse) GetCodeReference() *coderef.CodeReference {
	if x != nil {
		return x.CodeReference
	}
	return nil
}

type UpdateCodeReferenceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id               string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	FilePath         string   `protobuf:"bytes,2,opt,name=file_path,json=filePath,proto3" json:"file_path"`
	LineNumber       int32    `protobuf:"varint,3,opt,name=line_number,json=lineNumber,proto3" json:"line_number"`
	CodeSnippet      string   `protobuf:"bytes,4,opt,name=code_snippet,json=codeSnippet,proto3" json:"code_snippet"`
	ContentHash      string   `protobuf:"bytes,5,opt,name=content_hash,json=contentHash,proto3" json:"content_hash"`
	Aliases          []string `protobuf:"bytes,6,rep,name=aliases,proto3" json:"aliases"`
	RepositoryBranch string   `protobuf:"bytes,7,opt,name=repository_branch,json=repositoryBranch,proto3" json:"repository_branch"`
	CommitHash       string   `protobuf:"bytes,8,opt,name=commit_hash,json=commitHash,proto3" json:"commit_hash"`
	FileExtension    string   `protobuf:"bytes,9,opt,name=file_extension,json=fileExtension,proto3" json:"file_extension"`
}

func (x *UpdateCodeReferenceRequest) Reset() {
	*x = UpdateCodeReferenceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[50]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateCodeReferenceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateCodeReferenceRequest) ProtoMessage() {}

func (x *UpdateCodeReferenceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[50]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateCodeReferenceRequest.ProtoReflect.Descriptor instead.
func (*UpdateCodeReferenceRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{50}
}

func (x *UpdateCodeReferenceRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateCodeReferenceRequest) GetFilePath() string {
	if x != nil {
		return x.FilePath
	}
	return ""
}

func (x *UpdateCodeReferenceRequest) GetLineNumber() int32 {
	if x != nil {
		return x.LineNumber
	}
	return 0
}

func (x *UpdateCodeReferenceRequest) GetCodeSnippet() string {
	if x != nil {
		return x.CodeSnippet
	}
	return ""
}

func (x *UpdateCodeReferenceRequest) GetContentHash() string {
	if x != nil {
		return x.ContentHash
	}
	return ""
}

func (x *UpdateCodeReferenceRequest) GetAliases() []string {
	if x != nil {
		return x.Aliases
	}
	return nil
}

func (x *UpdateCodeReferenceRequest) GetRepositoryBranch() string {
	if x != nil {
		return x.RepositoryBranch
	}
	return ""
}

func (x *UpdateCodeReferenceRequest) GetCommitHash() string {
	if x != nil {
		return x.CommitHash
	}
	return ""
}

func (x *UpdateCodeReferenceRequest) GetFileExtension() string {
	if x != nil {
		return x.FileExtension
	}
	return ""
}

type UpdateCodeReferenceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CodeReference *coderef.CodeReference `protobuf:"bytes,1,opt,name=code_reference,json=codeReference,proto3" json:"code_reference"`
}

func (x *UpdateCodeReferenceResponse) Reset() {
	*x = UpdateCodeReferenceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[51]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateCodeReferenceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateCodeReferenceResponse) ProtoMessage() {}

func (x *UpdateCodeReferenceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[51]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateCodeReferenceResponse.ProtoReflect.Descriptor instead.
func (*UpdateCodeReferenceResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{51}
}

func (x *UpdateCodeReferenceResponse) GetCodeReference() *coderef.CodeReference {
	if x != nil {
		return x.CodeReference
	}
	return nil
}

type DeleteCodeReferenceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *DeleteCodeReferenceRequest) Reset() {
	*x = DeleteCodeReferenceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[52]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteCodeReferenceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteCodeReferenceRequest) ProtoMessage() {}

func (x *DeleteCodeReferenceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[52]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteCodeReferenceRequest.ProtoReflect.Descriptor instead.
func (*DeleteCodeReferenceRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{52}
}

func (x *DeleteCodeReferenceRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type DeleteCodeReferenceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DeleteCodeReferenceResponse) Reset() {
	*x = DeleteCodeReferenceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[53]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteCodeReferenceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteCodeReferenceResponse) ProtoMessage() {}

func (x *DeleteCodeReferenceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[53]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteCodeReferenceResponse.ProtoReflect.Descriptor instead.
func (*DeleteCodeReferenceResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{53}
}

type CreateSegmentRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name        string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"`
	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description"`
}

func (x *CreateSegmentRequest) Reset() {
	*x = CreateSegmentRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[54]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateSegmentRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateSegmentRequest) ProtoMessage() {}

func (x *CreateSegmentRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[54]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateSegmentRequest.ProtoReflect.Descriptor instead.
func (*CreateSegmentRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{54}
}

func (x *CreateSegmentRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateSegmentRequest) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

type CreateSegmentResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Segment *feature.Segment `protobuf:"bytes,1,opt,name=segment,proto3" json:"segment"`
}

func (x *CreateSegmentResponse) Reset() {
	*x = CreateSegmentResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[55]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateSegmentResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateSegmentResponse) ProtoMessage() {}

func (x *CreateSegmentResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[55]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateSegmentResponse.ProtoReflect.Descriptor instead.
func (*CreateSegmentResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{55}
}

func (x *CreateSegmentResponse) GetSegment() *feature.Segment {
	if x != nil {
		return x.Segment
	}
	return nil
}

type GetSegmentRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetSegmentRequest) Reset() {
	*x = GetSegmentRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[56]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetSegmentRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetSegmentRequest) ProtoMessage() {}

func (x *GetSegmentRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[56]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetSegmentRequest.ProtoReflect.Descriptor instead.
func (*GetSegmentRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{56}
}

func (x *GetSegmentRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetSegmentResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Segment *feature.Segment `protobuf:"bytes,1,opt,name=segment,proto3" json:"segment"`
}

func (x *GetSegmentResponse) Reset() {
	*x = GetSegmentResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[57]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetSegmentResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetSegmentResponse) ProtoMessage() {}

func (x *GetSegmentResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[57]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetSegmentResponse.ProtoReflect.Descriptor instead.
func (*GetSegmentResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{57}
}

func (x *GetSegmentResponse) GetSegment() *feature.Segment {
	if x != nil {
		return x.Segment
	}
	return nil
}

type ListSegmentsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                                      `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                     `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	OrderBy        feature.ListSegmentsRequest_OrderBy        `protobuf:"varint,3,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.feature.ListSegmentsRequest_OrderBy" json:"order_by"`
	OrderDirection feature.ListSegmentsRequest_OrderDirection `protobuf:"varint,4,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.feature.ListSegmentsRequest_OrderDirection" json:"order_direction"`
	SearchKeyword  string                                     `protobuf:"bytes,5,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
	Status         *wrapperspb.Int32Value                     `protobuf:"bytes,6,opt,name=status,proto3" json:"status"`
	IsInUseStatus  *wrapperspb.BoolValue                      `protobuf:"bytes,7,opt,name=is_in_use_status,json=isInUseStatus,proto3" json:"is_in_use_status"`
}

func (x *ListSegmentsRequest) Reset() {
	*x = ListSegmentsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[58]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListSegmentsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListSegmentsRequest) ProtoMessage() {}

func (x *ListSegmentsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[58]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListSegmentsRequest.ProtoReflect.Descriptor instead.
func (*ListSegmentsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{58}
}

func (x *ListSegmentsRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListSegmentsRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListSegmentsRequest) GetOrderBy() feature.ListSegmentsRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return feature.ListSegmentsRequest_DEFAULT
}

func (x *ListSegmentsRequest) GetOrderDirection() feature.ListSegmentsRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return feature.ListSegmentsRequest_ASC
}

func (x *ListSegmentsRequest) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

func (x *ListSegmentsRequest) GetStatus() *wrapperspb.Int32Value {
	if x != nil {
		return x.Status
	}
	return nil
}

func (x *ListSegmentsRequest) GetIsInUseStatus() *wrapperspb.BoolValue {
	if x != nil {
		return x.IsInUseStatus
	}
	return nil
}

type ListSegmentsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Segments   []*feature.Segment `protobuf:"bytes,1,rep,name=segments,proto3" json:"segments"`
	Cursor     string             `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount int64              `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListSegmentsResponse) Reset() {
	*x = ListSegmentsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[59]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListSegmentsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListSegmentsResponse) ProtoMessage() {}

func (x *ListSegmentsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[59]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListSegmentsResponse.ProtoReflect.Descriptor instead.
func (*ListSegmentsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{59}
}

func (x *ListSegmentsResponse) GetSegments() []*feature.Segment {
	if x != nil {
		return x.Segments
	}
	return nil
}

func (x *ListSegmentsResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListSegmentsResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type DeleteSegmentRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *DeleteSegmentRequest) Reset() {
	*x = DeleteSegmentRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[60]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteSegmentRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteSegmentRequest) ProtoMessage() {}

func (x *DeleteSegmentRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[60]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteSegmentRequest.ProtoReflect.Descriptor instead.
func (*DeleteSegmentRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{60}
}

func (x *DeleteSegmentRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type DeleteSegmentResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DeleteSegmentResponse) Reset() {
	*x = DeleteSegmentResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[61]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteSegmentResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteSegmentResponse) ProtoMessage() {}

func (x *DeleteSegmentResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[61]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteSegmentResponse.ProtoReflect.Descriptor instead.
func (*DeleteSegmentResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{61}
}

type UpdateSegmentRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id          string                  `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	Name        *wrapperspb.StringValue `protobuf:"bytes,2,opt,name=name,proto3" json:"name"`
	Description *wrapperspb.StringValue `protobuf:"bytes,3,opt,name=description,proto3" json:"description"`
}

func (x *UpdateSegmentRequest) Reset() {
	*x = UpdateSegmentRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[62]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateSegmentRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateSegmentRequest) ProtoMessage() {}

func (x *UpdateSegmentRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[62]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateSegmentRequest.ProtoReflect.Descriptor instead.
func (*UpdateSegmentRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{62}
}

func (x *UpdateSegmentRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateSegmentRequest) GetName() *wrapperspb.StringValue {
	if x != nil {
		return x.Name
	}
	return nil
}

func (x *UpdateSegmentRequest) GetDescription() *wrapperspb.StringValue {
	if x != nil {
		return x.Description
	}
	return nil
}

type UpdateSegmentResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Segment *feature.Segment `protobuf:"bytes,1,opt,name=segment,proto3" json:"segment"`
}

func (x *UpdateSegmentResponse) Reset() {
	*x = UpdateSegmentResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[63]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateSegmentResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateSegmentResponse) ProtoMessage() {}

func (x *UpdateSegmentResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[63]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateSegmentResponse.ProtoReflect.Descriptor instead.
func (*UpdateSegmentResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{63}
}

func (x *UpdateSegmentResponse) GetSegment() *feature.Segment {
	if x != nil {
		return x.Segment
	}
	return nil
}

type BulkUploadSegmentUsersRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	SegmentId string                    `protobuf:"bytes,2,opt,name=segment_id,json=segmentId,proto3" json:"segment_id"`
	Data      []byte                    `protobuf:"bytes,3,opt,name=data,proto3" json:"data"`
	State     feature.SegmentUser_State `protobuf:"varint,4,opt,name=state,proto3,enum=bucketeer.feature.SegmentUser_State" json:"state"`
}

func (x *BulkUploadSegmentUsersRequest) Reset() {
	*x = BulkUploadSegmentUsersRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[64]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BulkUploadSegmentUsersRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BulkUploadSegmentUsersRequest) ProtoMessage() {}

func (x *BulkUploadSegmentUsersRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[64]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BulkUploadSegmentUsersRequest.ProtoReflect.Descriptor instead.
func (*BulkUploadSegmentUsersRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{64}
}

func (x *BulkUploadSegmentUsersRequest) GetSegmentId() string {
	if x != nil {
		return x.SegmentId
	}
	return ""
}

func (x *BulkUploadSegmentUsersRequest) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *BulkUploadSegmentUsersRequest) GetState() feature.SegmentUser_State {
	if x != nil {
		return x.State
	}
	return feature.SegmentUser_INCLUDED
}

type BulkUploadSegmentUsersResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *BulkUploadSegmentUsersResponse) Reset() {
	*x = BulkUploadSegmentUsersResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[65]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BulkUploadSegmentUsersResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BulkUploadSegmentUsersResponse) ProtoMessage() {}

func (x *BulkUploadSegmentUsersResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[65]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BulkUploadSegmentUsersResponse.ProtoReflect.Descriptor instead.
func (*BulkUploadSegmentUsersResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{65}
}

type GetAuditLogRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetAuditLogRequest) Reset() {
	*x = GetAuditLogRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[66]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetAuditLogRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAuditLogRequest) ProtoMessage() {}

func (x *GetAuditLogRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[66]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetAuditLogRequest.ProtoReflect.Descriptor instead.
func (*GetAuditLogRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{66}
}

func (x *GetAuditLogRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetAuditLogResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AuditLog *auditlog.AuditLog `protobuf:"bytes,1,opt,name=audit_log,json=auditLog,proto3" json:"audit_log"`
}

func (x *GetAuditLogResponse) Reset() {
	*x = GetAuditLogResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[67]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetAuditLogResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAuditLogResponse) ProtoMessage() {}

func (x *GetAuditLogResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[67]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetAuditLogResponse.ProtoReflect.Descriptor instead.
func (*GetAuditLogResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{67}
}

func (x *GetAuditLogResponse) GetAuditLog() *auditlog.AuditLog {
	if x != nil {
		return x.AuditLog
	}
	return nil
}

type ListAuditLogsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                                        `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                       `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	OrderBy        auditlog.ListAuditLogsRequest_OrderBy        `protobuf:"varint,3,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.auditlog.ListAuditLogsRequest_OrderBy" json:"order_by"`
	OrderDirection auditlog.ListAuditLogsRequest_OrderDirection `protobuf:"varint,4,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.auditlog.ListAuditLogsRequest_OrderDirection" json:"order_direction"`
	SearchKeyword  string                                       `protobuf:"bytes,5,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
	From           int64                                        `protobuf:"varint,6,opt,name=from,proto3" json:"from"`
	To             int64                                        `protobuf:"varint,7,opt,name=to,proto3" json:"to"`
	EntityType     *wrapperspb.Int32Value                       `protobuf:"bytes,8,opt,name=entity_type,json=entityType,proto3" json:"entity_type"`
}

func (x *ListAuditLogsRequest) Reset() {
	*x = ListAuditLogsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[68]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListAuditLogsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAuditLogsRequest) ProtoMessage() {}

func (x *ListAuditLogsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[68]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAuditLogsRequest.ProtoReflect.Descriptor instead.
func (*ListAuditLogsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{68}
}

func (x *ListAuditLogsRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListAuditLogsRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListAuditLogsRequest) GetOrderBy() auditlog.ListAuditLogsRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return auditlog.ListAuditLogsRequest_DEFAULT
}

func (x *ListAuditLogsRequest) GetOrderDirection() auditlog.ListAuditLogsRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return auditlog.ListAuditLogsRequest_DESC
}

func (x *ListAuditLogsRequest) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

func (x *ListAuditLogsRequest) GetFrom() int64 {
	if x != nil {
		return x.From
	}
	return 0
}

func (x *ListAuditLogsRequest) GetTo() int64 {
	if x != nil {
		return x.To
	}
	return 0
}

func (x *ListAuditLogsRequest) GetEntityType() *wrapperspb.Int32Value {
	if x != nil {
		return x.EntityType
	}
	return nil
}

type ListAuditLogsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AuditLogs  []*auditlog.AuditLog `protobuf:"bytes,1,rep,name=audit_logs,json=auditLogs,proto3" json:"audit_logs"`
	Cursor     string               `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount int64                `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListAuditLogsResponse) Reset() {
	*x = ListAuditLogsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[69]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListAuditLogsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAuditLogsResponse) ProtoMessage() {}

func (x *ListAuditLogsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[69]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAuditLogsResponse.ProtoReflect.Descriptor instead.
func (*ListAuditLogsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{69}
}

func (x *ListAuditLogsResponse) GetAuditLogs() []*auditlog.AuditLog {
	if x != nil {
		return x.AuditLogs
	}
	return nil
}

func (x *ListAuditLogsResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListAuditLogsResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type ListFeatureHistoryRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureId      string                                            `protobuf:"bytes,1,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	PageSize       int64                                             `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                            `protobuf:"bytes,3,opt,name=cursor,proto3" json:"cursor"`
	OrderBy        auditlog.ListFeatureHistoryRequest_OrderBy        `protobuf:"varint,4,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.auditlog.ListFeatureHistoryRequest_OrderBy" json:"order_by"`
	OrderDirection auditlog.ListFeatureHistoryRequest_OrderDirection `protobuf:"varint,5,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.auditlog.ListFeatureHistoryRequest_OrderDirection" json:"order_direction"`
	SearchKeyword  string                                            `protobuf:"bytes,6,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
	From           int64                                             `protobuf:"varint,7,opt,name=from,proto3" json:"from"`
	To             int64                                             `protobuf:"varint,8,opt,name=to,proto3" json:"to"`
	EnvironmentId  string                                            `protobuf:"bytes,9,opt,name=environment_id,json=environmentId,proto3" json:"environment_id"`
}

func (x *ListFeatureHistoryRequest) Reset() {
	*x = ListFeatureHistoryRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[70]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFeatureHistoryRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFeatureHistoryRequest) ProtoMessage() {}

func (x *ListFeatureHistoryRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[70]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListFeatureHistoryRequest.ProtoReflect.Descriptor instead.
func (*ListFeatureHistoryRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{70}
}

func (x *ListFeatureHistoryRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *ListFeatureHistoryRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListFeatureHistoryRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListFeatureHistoryRequest) GetOrderBy() auditlog.ListFeatureHistoryRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return auditlog.ListFeatureHistoryRequest_DEFAULT
}

func (x *ListFeatureHistoryRequest) GetOrderDirection() auditlog.ListFeatureHistoryRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return auditlog.ListFeatureHistoryRequest_DESC
}

func (x *ListFeatureHistoryRequest) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

func (x *ListFeatureHistoryRequest) GetFrom() int64 {
	if x != nil {
		return x.From
	}
	return 0
}

func (x *ListFeatureHistoryRequest) GetTo() int64 {
	if x != nil {
		return x.To
	}
	return 0
}

func (x *ListFeatureHistoryRequest) GetEnvironmentId() string {
	if x != nil {
		return x.EnvironmentId
	}
	return ""
}

type ListFeatureHistoryResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AuditLogs  []*auditlog.AuditLog `protobuf:"bytes,1,rep,name=audit_logs,json=auditLogs,proto3" json:"audit_logs"`
	Cursor     string               `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount int64                `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListFeatureHistoryResponse) Reset() {
	*x = ListFeatureHistoryResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[71]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFeatureHistoryResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFeatureHistoryResponse) ProtoMessage() {}

func (x *ListFeatureHistoryResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[71]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListFeatureHistoryResponse.ProtoReflect.Descriptor instead.
func (*ListFeatureHistoryResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{71}
}

func (x *ListFeatureHistoryResponse) GetAuditLogs() []*auditlog.AuditLog {
	if x != nil {
		return x.AuditLogs
	}
	return nil
}

func (x *ListFeatureHistoryResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListFeatureHistoryResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type GetAutoOpsRuleRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetAutoOpsRuleRequest) Reset() {
	*x = GetAutoOpsRuleRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[72]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetAutoOpsRuleRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAutoOpsRuleRequest) ProtoMessage() {}

func (x *GetAutoOpsRuleRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[72]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetAutoOpsRuleRequest.ProtoReflect.Descriptor instead.
func (*GetAutoOpsRuleRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{72}
}

func (x *GetAutoOpsRuleRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetAutoOpsRuleResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AutoOpsRule *autoops.AutoOpsRule `protobuf:"bytes,1,opt,name=auto_ops_rule,json=autoOpsRule,proto3" json:"auto_ops_rule"`
}

func (x *GetAutoOpsRuleResponse) Reset() {
	*x = GetAutoOpsRuleResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[73]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetAutoOpsRuleResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAutoOpsRuleResponse) ProtoMessage() {}

func (x *GetAutoOpsRuleResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[73]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetAutoOpsRuleResponse.ProtoReflect.Descriptor instead.
func (*GetAutoOpsRuleResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{73}
}

func (x *GetAutoOpsRuleResponse) GetAutoOpsRule() *autoops.AutoOpsRule {
	if x != nil {
		return x.AutoOpsRule
	}
	return nil
}

type CreateAutoOpsRuleRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureId           string                        `protobuf:"bytes,1,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	OpsType             autoops.OpsType               `protobuf:"varint,2,opt,name=ops_type,json=opsType,proto3,enum=bucketeer.autoops.OpsType" json:"ops_type"`
	OpsEventRateClauses []*autoops.OpsEventRateClause `protobuf:"bytes,3,rep,name=ops_event_rate_clauses,json=opsEventRateClauses,proto3" json:"ops_event_rate_clauses"`
	DatetimeClauses     []*autoops.DatetimeClause     `protobuf:"bytes,4,rep,name=datetime_clauses,json=datetimeClauses,proto3" json:"datetime_clauses"`
}

func (x *CreateAutoOpsRuleRequest) Reset() {
	*x = CreateAutoOpsRuleRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[74]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateAutoOpsRuleRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateAutoOpsRuleRequest) ProtoMessage() {}

func (x *CreateAutoOpsRuleRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[74]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateAutoOpsRuleRequest.ProtoReflect.Descriptor instead.
func (*CreateAutoOpsRuleRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{74}
}

func (x *CreateAutoOpsRuleRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *CreateAutoOpsRuleRequest) GetOpsType() autoops.OpsType {
	if x != nil {
		return x.OpsType
	}
	return autoops.OpsType_TYPE_UNKNOWN
}

func (x *CreateAutoOpsRuleRequest) GetOpsEventRateClauses() []*autoops.OpsEventRateClause {
	if x != nil {
		return x.OpsEventRateClauses
	}
	return nil
}

func (x *CreateAutoOpsRuleRequest) GetDatetimeClauses() []*autoops.DatetimeClause {
	if x != nil {
		return x.DatetimeClauses
	}
	return nil
}

type CreateAutoOpsRuleResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AutoOpsRule *autoops.AutoOpsRule `protobuf:"bytes,1,opt,name=auto_ops_rule,json=autoOpsRule,proto3" json:"auto_ops_rule"`
}

func (x *CreateAutoOpsRuleResponse) Reset() {
	*x = CreateAutoOpsRuleResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[75]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateAutoOpsRuleResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateAutoOpsRuleResponse) ProtoMessage() {}

func (x *CreateAutoOpsRuleResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[75]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateAutoOpsRuleResponse.ProtoReflect.Descriptor instead.
func (*CreateAutoOpsRuleResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{75}
}

func (x *CreateAutoOpsRuleResponse) GetAutoOpsRule() *autoops.AutoOpsRule {
	if x != nil {
		return x.AutoOpsRule
	}
	return nil
}

type ListAutoOpsRulesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize   int64    `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor     string   `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	FeatureIds []string `protobuf:"bytes,3,rep,name=feature_ids,json=featureIds,proto3" json:"feature_ids"`
}

func (x *ListAutoOpsRulesRequest) Reset() {
	*x = ListAutoOpsRulesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[76]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListAutoOpsRulesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAutoOpsRulesRequest) ProtoMessage() {}

func (x *ListAutoOpsRulesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[76]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAutoOpsRulesRequest.ProtoReflect.Descriptor instead.
func (*ListAutoOpsRulesRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{76}
}

func (x *ListAutoOpsRulesRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListAutoOpsRulesRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListAutoOpsRulesRequest) GetFeatureIds() []string {
	if x != nil {
		return x.FeatureIds
	}
	return nil
}

type ListAutoOpsRulesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AutoOpsRules []*autoops.AutoOpsRule `protobuf:"bytes,1,rep,name=auto_ops_rules,json=autoOpsRules,proto3" json:"auto_ops_rules"`
	Cursor       string                 `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
}

func (x *ListAutoOpsRulesResponse) Reset() {
	*x = ListAutoOpsRulesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[77]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListAutoOpsRulesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAutoOpsRulesResponse) ProtoMessage() {}

func (x *ListAutoOpsRulesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[77]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAutoOpsRulesResponse.ProtoReflect.Descriptor instead.
func (*ListAutoOpsRulesResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{77}
}

func (x *ListAutoOpsRulesResponse) GetAutoOpsRules() []*autoops.AutoOpsRule {
	if x != nil {
		return x.AutoOpsRules
	}
	return nil
}

func (x *ListAutoOpsRulesResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

type StopAutoOpsRuleRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *StopAutoOpsRuleRequest) Reset() {
	*x = StopAutoOpsRuleRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[78]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StopAutoOpsRuleRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StopAutoOpsRuleRequest) ProtoMessage() {}

func (x *StopAutoOpsRuleRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[78]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StopAutoOpsRuleRequest.ProtoReflect.Descriptor instead.
func (*StopAutoOpsRuleRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{78}
}

func (x *StopAutoOpsRuleRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type StopAutoOpsRuleResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *StopAutoOpsRuleResponse) Reset() {
	*x = StopAutoOpsRuleResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[79]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StopAutoOpsRuleResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StopAutoOpsRuleResponse) ProtoMessage() {}

func (x *StopAutoOpsRuleResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[79]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StopAutoOpsRuleResponse.ProtoReflect.Descriptor instead.
func (*StopAutoOpsRuleResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{79}
}

type DeleteAutoOpsRuleRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *DeleteAutoOpsRuleRequest) Reset() {
	*x = DeleteAutoOpsRuleRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[80]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteAutoOpsRuleRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteAutoOpsRuleRequest) ProtoMessage() {}

func (x *DeleteAutoOpsRuleRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[80]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteAutoOpsRuleRequest.ProtoReflect.Descriptor instead.
func (*DeleteAutoOpsRuleRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{80}
}

func (x *DeleteAutoOpsRuleRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type DeleteAutoOpsRuleResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DeleteAutoOpsRuleResponse) Reset() {
	*x = DeleteAutoOpsRuleResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[81]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteAutoOpsRuleResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteAutoOpsRuleResponse) ProtoMessage() {}

func (x *DeleteAutoOpsRuleResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[81]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteAutoOpsRuleResponse.ProtoReflect.Descriptor instead.
func (*DeleteAutoOpsRuleResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{81}
}

type UpdateAutoOpsRuleRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id                        string                              `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	OpsEventRateClauseChanges []*autoops.OpsEventRateClauseChange `protobuf:"bytes,2,rep,name=ops_event_rate_clause_changes,json=opsEventRateClauseChanges,proto3" json:"ops_event_rate_clause_changes"`
	DatetimeClauseChanges     []*autoops.DatetimeClauseChange     `protobuf:"bytes,11,rep,name=datetime_clause_changes,json=datetimeClauseChanges,proto3" json:"datetime_clause_changes"`
}

func (x *UpdateAutoOpsRuleRequest) Reset() {
	*x = UpdateAutoOpsRuleRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[82]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateAutoOpsRuleRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateAutoOpsRuleRequest) ProtoMessage() {}

func (x *UpdateAutoOpsRuleRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[82]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateAutoOpsRuleRequest.ProtoReflect.Descriptor instead.
func (*UpdateAutoOpsRuleRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{82}
}

func (x *UpdateAutoOpsRuleRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateAutoOpsRuleRequest) GetOpsEventRateClauseChanges() []*autoops.OpsEventRateClauseChange {
	if x != nil {
		return x.OpsEventRateClauseChanges
	}
	return nil
}

func (x *UpdateAutoOpsRuleRequest) GetDatetimeClauseChanges() []*autoops.DatetimeClauseChange {
	if x != nil {
		return x.DatetimeClauseChanges
	}
	return nil
}

type UpdateAutoOpsRuleResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *UpdateAutoOpsRuleResponse) Reset() {
	*x = UpdateAutoOpsRuleResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[83]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateAutoOpsRuleResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateAutoOpsRuleResponse) ProtoMessage() {}

func (x *UpdateAutoOpsRuleResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[83]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateAutoOpsRuleResponse.ProtoReflect.Descriptor instead.
func (*UpdateAutoOpsRuleResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{83}
}

type ExecuteAutoOpsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id       string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	ClauseId string `protobuf:"bytes,6,opt,name=clause_id,json=clauseId,proto3" json:"clause_id"`
}

func (x *ExecuteAutoOpsRequest) Reset() {
	*x = ExecuteAutoOpsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[84]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExecuteAutoOpsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExecuteAutoOpsRequest) ProtoMessage() {}

func (x *ExecuteAutoOpsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[84]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExecuteAutoOpsRequest.ProtoReflect.Descriptor instead.
func (*ExecuteAutoOpsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{84}
}

func (x *ExecuteAutoOpsRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ExecuteAutoOpsRequest) GetClauseId() string {
	if x != nil {
		return x.ClauseId
	}
	return ""
}

type ExecuteAutoOpsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AlreadyTriggered bool `protobuf:"varint,1,opt,name=already_triggered,json=alreadyTriggered,proto3" json:"already_triggered"`
}

func (x *ExecuteAutoOpsResponse) Reset() {
	*x = ExecuteAutoOpsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[85]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExecuteAutoOpsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExecuteAutoOpsResponse) ProtoMessage() {}

func (x *ExecuteAutoOpsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[85]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExecuteAutoOpsResponse.ProtoReflect.Descriptor instead.
func (*ExecuteAutoOpsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{85}
}

func (x *ExecuteAutoOpsResponse) GetAlreadyTriggered() bool {
	if x != nil {
		return x.AlreadyTriggered
	}
	return false
}

type CreateProgressiveRolloutRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureId                                string                                            `protobuf:"bytes,1,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	ProgressiveRolloutManualScheduleClause   *autoops.ProgressiveRolloutManualScheduleClause   `protobuf:"bytes,2,opt,name=progressive_rollout_manual_schedule_clause,json=progressiveRolloutManualScheduleClause,proto3,oneof" json:"progressive_rollout_manual_schedule_clause"`
	ProgressiveRolloutTemplateScheduleClause *autoops.ProgressiveRolloutTemplateScheduleClause `protobuf:"bytes,3,opt,name=progressive_rollout_template_schedule_clause,json=progressiveRolloutTemplateScheduleClause,proto3,oneof" json:"progressive_rollout_template_schedule_clause"`
}

func (x *CreateProgressiveRolloutRequest) Reset() {
	*x = CreateProgressiveRolloutRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[86]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateProgressiveRolloutRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateProgressiveRolloutRequest) ProtoMessage() {}

func (x *CreateProgressiveRolloutRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[86]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateProgressiveRolloutRequest.ProtoReflect.Descriptor instead.
func (*CreateProgressiveRolloutRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{86}
}

func (x *CreateProgressiveRolloutRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *CreateProgressiveRolloutRequest) GetProgressiveRolloutManualScheduleClause() *autoops.ProgressiveRolloutManualScheduleClause {
	if x != nil {
		return x.ProgressiveRolloutManualScheduleClause
	}
	return nil
}

func (x *CreateProgressiveRolloutRequest) GetProgressiveRolloutTemplateScheduleClause() *autoops.ProgressiveRolloutTemplateScheduleClause {
	if x != nil {
		return x.ProgressiveRolloutTemplateScheduleClause
	}
	return nil
}

type CreateProgressiveRolloutResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ProgressiveRollout *autoops.ProgressiveRollout `protobuf:"bytes,1,opt,name=progressive_rollout,json=progressiveRollout,proto3" json:"progressive_rollout"`
}

func (x *CreateProgressiveRolloutResponse) Reset() {
	*x = CreateProgressiveRolloutResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[87]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateProgressiveRolloutResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateProgressiveRolloutResponse) ProtoMessage() {}

func (x *CreateProgressiveRolloutResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[87]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateProgressiveRolloutResponse.ProtoReflect.Descriptor instead.
func (*CreateProgressiveRolloutResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{87}
}

func (x *CreateProgressiveRolloutResponse) GetProgressiveRollout() *autoops.ProgressiveRollout {
	if x != nil {
		return x.ProgressiveRollout
	}
	return nil
}

type GetProgressiveRolloutRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetProgressiveRolloutRequest) Reset() {
	*x = GetProgressiveRolloutRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[88]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetProgressiveRolloutRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetProgressiveRolloutRequest) ProtoMessage() {}

func (x *GetProgressiveRolloutRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[88]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetProgressiveRolloutRequest.ProtoReflect.Descriptor instead.
func (*GetProgressiveRolloutRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{88}
}

func (x *GetProgressiveRolloutRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetProgressiveRolloutResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ProgressiveRollout *autoops.ProgressiveRollout `protobuf:"bytes,1,opt,name=progressive_rollout,json=progressiveRollout,proto3" json:"progressive_rollout"`
}

func (x *GetProgressiveRolloutResponse) Reset() {
	*x = GetProgressiveRolloutResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[89]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetProgressiveRolloutResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetProgressiveRolloutResponse) ProtoMessage() {}

func (x *GetProgressiveRolloutResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[89]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetProgressiveRolloutResponse.ProtoReflect.Descriptor instead.
func (*GetProgressiveRolloutResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{89}
}

func (x *GetProgressiveRolloutResponse) GetProgressiveRollout() *autoops.ProgressiveRollout {
	if x != nil {
		return x.ProgressiveRollout
	}
	return nil
}

type StopProgressiveRolloutRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id        string                               `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	StoppedBy autoops.ProgressiveRollout_StoppedBy `protobuf:"varint,2,opt,name=stopped_by,json=stoppedBy,proto3,enum=bucketeer.autoops.ProgressiveRollout_StoppedBy" json:"stopped_by"`
}

func (x *StopProgressiveRolloutRequest) Reset() {
	*x = StopProgressiveRolloutRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[90]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StopProgressiveRolloutRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StopProgressiveRolloutRequest) ProtoMessage() {}

func (x *StopProgressiveRolloutRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[90]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StopProgressiveRolloutRequest.ProtoReflect.Descriptor instead.
func (*StopProgressiveRolloutRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{90}
}

func (x *StopProgressiveRolloutRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *StopProgressiveRolloutRequest) GetStoppedBy() autoops.ProgressiveRollout_StoppedBy {
	if x != nil {
		return x.StoppedBy
	}
	return autoops.ProgressiveRollout_UNKNOWN
}

type StopProgressiveRolloutResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *StopProgressiveRolloutResponse) Reset() {
	*x = StopProgressiveRolloutResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[91]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StopProgressiveRolloutResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StopProgressiveRolloutResponse) ProtoMessage() {}

func (x *StopProgressiveRolloutResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[91]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StopProgressiveRolloutResponse.ProtoReflect.Descriptor instead.
func (*StopProgressiveRolloutResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{91}
}

type DeleteProgressiveRolloutRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *DeleteProgressiveRolloutRequest) Reset() {
	*x = DeleteProgressiveRolloutRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[92]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteProgressiveRolloutRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteProgressiveRolloutRequest) ProtoMessage() {}

func (x *DeleteProgressiveRolloutRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[92]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteProgressiveRolloutRequest.ProtoReflect.Descriptor instead.
func (*DeleteProgressiveRolloutRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{92}
}

func (x *DeleteProgressiveRolloutRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type DeleteProgressiveRolloutResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DeleteProgressiveRolloutResponse) Reset() {
	*x = DeleteProgressiveRolloutResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[93]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteProgressiveRolloutResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteProgressiveRolloutResponse) ProtoMessage() {}

func (x *DeleteProgressiveRolloutResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[93]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteProgressiveRolloutResponse.ProtoReflect.Descriptor instead.
func (*DeleteProgressiveRolloutResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{93}
}

type ListProgressiveRolloutsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                                                 `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                                `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	FeatureIds     []string                                              `protobuf:"bytes,3,rep,name=feature_ids,json=featureIds,proto3" json:"feature_ids"`
	OrderBy        autoops.ListProgressiveRolloutsRequest_OrderBy        `protobuf:"varint,4,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.autoops.ListProgressiveRolloutsRequest_OrderBy" json:"order_by"`
	OrderDirection autoops.ListProgressiveRolloutsRequest_OrderDirection `protobuf:"varint,5,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.autoops.ListProgressiveRolloutsRequest_OrderDirection" json:"order_direction"`
	Status         *autoops.ProgressiveRollout_Status                    `protobuf:"varint,6,opt,name=status,proto3,enum=bucketeer.autoops.ProgressiveRollout_Status,oneof" json:"status"`
	Type           *autoops.ProgressiveRollout_Type                      `protobuf:"varint,7,opt,name=type,proto3,enum=bucketeer.autoops.ProgressiveRollout_Type,oneof" json:"type"`
}

func (x *ListProgressiveRolloutsRequest) Reset() {
	*x = ListProgressiveRolloutsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[94]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListProgressiveRolloutsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListProgressiveRolloutsRequest) ProtoMessage() {}

func (x *ListProgressiveRolloutsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[94]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListProgressiveRolloutsRequest.ProtoReflect.Descriptor instead.
func (*ListProgressiveRolloutsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{94}
}

func (x *ListProgressiveRolloutsRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListProgressiveRolloutsRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListProgressiveRolloutsRequest) GetFeatureIds() []string {
	if x != nil {
		return x.FeatureIds
	}
	return nil
}

func (x *ListProgressiveRolloutsRequest) GetOrderBy() autoops.ListProgressiveRolloutsRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return autoops.ListProgressiveRolloutsRequest_DEFAULT
}

func (x *ListProgressiveRolloutsRequest) GetOrderDirection() autoops.ListProgressiveRolloutsRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return autoops.ListProgressiveRolloutsRequest_ASC
}

func (x *ListProgressiveRolloutsRequest) GetStatus() autoops.ProgressiveRollout_Status {
	if x != nil && x.Status != nil {
		return *x.Status
	}
	return autoops.ProgressiveRollout_WAITING
}

func (x *ListProgressiveRolloutsRequest) GetType() autoops.ProgressiveRollout_Type {
	if x != nil && x.Type != nil {
		return *x.Type
	}
	return autoops.ProgressiveRollout_MANUAL_SCHEDULE
}

type ListProgressiveRolloutsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ProgressiveRollouts []*autoops.ProgressiveRollout `protobuf:"bytes,1,rep,name=progressive_rollouts,json=progressiveRollouts,proto3" json:"progressive_rollouts"`
	Cursor              string                        `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount          int64                         `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListProgressiveRolloutsResponse) Reset() {
	*x = ListProgressiveRolloutsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[95]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListProgressiveRolloutsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListProgressiveRolloutsResponse) ProtoMessage() {}

func (x *ListProgressiveRolloutsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[95]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListProgressiveRolloutsResponse.ProtoReflect.Descriptor instead.
func (*ListProgressiveRolloutsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{95}
}

func (x *ListProgressiveRolloutsResponse) GetProgressiveRollouts() []*autoops.ProgressiveRollout {
	if x != nil {
		return x.ProgressiveRollouts
	}
	return nil
}

func (x *ListProgressiveRolloutsResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListProgressiveRolloutsResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type ExecuteProgressiveRolloutRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id         string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	ScheduleId string `protobuf:"bytes,2,opt,name=schedule_id,json=scheduleId,proto3" json:"schedule_id"`
}

func (x *ExecuteProgressiveRolloutRequest) Reset() {
	*x = ExecuteProgressiveRolloutRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[96]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExecuteProgressiveRolloutRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExecuteProgressiveRolloutRequest) ProtoMessage() {}

func (x *ExecuteProgressiveRolloutRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[96]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExecuteProgressiveRolloutRequest.ProtoReflect.Descriptor instead.
func (*ExecuteProgressiveRolloutRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{96}
}

func (x *ExecuteProgressiveRolloutRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ExecuteProgressiveRolloutRequest) GetScheduleId() string {
	if x != nil {
		return x.ScheduleId
	}
	return ""
}

type ExecuteProgressiveRolloutResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ExecuteProgressiveRolloutResponse) Reset() {
	*x = ExecuteProgressiveRolloutResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[97]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExecuteProgressiveRolloutResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExecuteProgressiveRolloutResponse) ProtoMessage() {}

func (x *ExecuteProgressiveRolloutResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[97]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExecuteProgressiveRolloutResponse.ProtoReflect.Descriptor instead.
func (*ExecuteProgressiveRolloutResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{97}
}

type CreateTagRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"`
}

func (x *CreateTagRequest) Reset() {
	*x = CreateTagRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[98]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateTagRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateTagRequest) ProtoMessage() {}

func (x *CreateTagRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[98]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateTagRequest.ProtoReflect.Descriptor instead.
func (*CreateTagRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{98}
}

func (x *CreateTagRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

type CreateTagResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tag *tag.Tag `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag"`
}

func (x *CreateTagResponse) Reset() {
	*x = CreateTagResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[99]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateTagResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateTagResponse) ProtoMessage() {}

func (x *CreateTagResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[99]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateTagResponse.ProtoReflect.Descriptor instead.
func (*CreateTagResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{99}
}

func (x *CreateTagResponse) GetTag() *tag.Tag {
	if x != nil {
		return x.Tag
	}
	return nil
}

type DeleteTagRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *DeleteTagRequest) Reset() {
	*x = DeleteTagRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[100]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteTagRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteTagRequest) ProtoMessage() {}

func (x *DeleteTagRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[100]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteTagRequest.ProtoReflect.Descriptor instead.
func (*DeleteTagRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{100}
}

func (x *DeleteTagRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type DeleteTagResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DeleteTagResponse) Reset() {
	*x = DeleteTagResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[101]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteTagResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteTagResponse) ProtoMessage() {}

func (x *DeleteTagResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[101]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteTagResponse.ProtoReflect.Descriptor instead.
func (*DeleteTagResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{101}
}

type ListTagsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                              `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                             `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	OrderBy        tag.ListTagsRequest_OrderBy        `protobuf:"varint,3,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.tag.ListTagsRequest_OrderBy" json:"order_by"`
	OrderDirection tag.ListTagsRequest_OrderDirection `protobuf:"varint,4,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.tag.ListTagsRequest_OrderDirection" json:"order_direction"`
	SearchKeyword  string                             `protobuf:"bytes,5,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
	OrganizationId string                             `protobuf:"bytes,6,opt,name=organization_id,json=organizationId,proto3" json:"organization_id"`
}

func (x *ListTagsRequest) Reset() {
	*x = ListTagsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[102]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListTagsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListTagsRequest) ProtoMessage() {}

func (x *ListTagsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[102]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListTagsRequest.ProtoReflect.Descriptor instead.
func (*ListTagsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{102}
}

func (x *ListTagsRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListTagsRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListTagsRequest) GetOrderBy() tag.ListTagsRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return tag.ListTagsRequest_DEFAULT
}

func (x *ListTagsRequest) GetOrderDirection() tag.ListTagsRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return tag.ListTagsRequest_ASC
}

func (x *ListTagsRequest) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

func (x *ListTagsRequest) GetOrganizationId() string {
	if x != nil {
		return x.OrganizationId
	}
	return ""
}

type ListTagsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tags       []*tag.Tag `protobuf:"bytes,1,rep,name=tags,proto3" json:"tags"`
	Cursor     string     `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount int64      `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListTagsResponse) Reset() {
	*x = ListTagsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[103]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListTagsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListTagsResponse) ProtoMessage() {}

func (x *ListTagsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[103]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListTagsResponse.ProtoReflect.Descriptor instead.
func (*ListTagsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{103}
}

func (x *ListTagsResponse) GetTags() []*tag.Tag {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ListTagsResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListTagsResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type CreateTeamRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name           string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"`
	Description    string `protobuf:"bytes,2,opt,name=description,proto3" json:"description"`
	OrganizationId string `protobuf:"bytes,3,opt,name=organization_id,json=organizationId,proto3" json:"organization_id"`
}

func (x *CreateTeamRequest) Reset() {
	*x = CreateTeamRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[104]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateTeamRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateTeamRequest) ProtoMessage() {}

func (x *CreateTeamRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[104]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateTeamRequest.ProtoReflect.Descriptor instead.
func (*CreateTeamRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{104}
}

func (x *CreateTeamRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateTeamRequest) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateTeamRequest) GetOrganizationId() string {
	if x != nil {
		return x.OrganizationId
	}
	return ""
}

type CreateTeamResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Team *team.Team `protobuf:"bytes,1,opt,name=team,proto3" json:"team"`
}

func (x *CreateTeamResponse) Reset() {
	*x = CreateTeamResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[105]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateTeamResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateTeamResponse) ProtoMessage() {}

func (x *CreateTeamResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[105]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateTeamResponse.ProtoReflect.Descriptor instead.
func (*CreateTeamResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{105}
}

func (x *CreateTeamResponse) GetTeam() *team.Team {
	if x != nil {
		return x.Team
	}
	return nil
}

type DeleteTeamRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id             string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	OrganizationId string `protobuf:"bytes,2,opt,name=organization_id,json=organizationId,proto3" json:"organization_id"`
}

func (x *DeleteTeamRequest) Reset() {
	*x = DeleteTeamRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[106]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteTeamRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteTeamRequest) ProtoMessage() {}

func (x *DeleteTeamRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[106]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteTeamRequest.ProtoReflect.Descriptor instead.
func (*DeleteTeamRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{106}
}

func (x *DeleteTeamRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *DeleteTeamRequest) GetOrganizationId() string {
	if x != nil {
		return x.OrganizationId
	}
	return ""
}

type DeleteTeamResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DeleteTeamResponse) Reset() {
	*x = DeleteTeamResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[107]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteTeamResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteTeamResponse) ProtoMessage() {}

func (x *DeleteTeamResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[107]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteTeamResponse.ProtoReflect.Descriptor instead.
func (*DeleteTeamResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{107}
}

type ListTeamsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                                `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                               `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	OrderBy        team.ListTeamsRequest_OrderBy        `protobuf:"varint,3,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.team.ListTeamsRequest_OrderBy" json:"order_by"`
	OrderDirection team.ListTeamsRequest_OrderDirection `protobuf:"varint,4,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.team.ListTeamsRequest_OrderDirection" json:"order_direction"`
	OrganizationId string                               `protobuf:"bytes,5,opt,name=organization_id,json=organizationId,proto3" json:"organization_id"`
	SearchKeyword  string                               `protobuf:"bytes,6,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
}

func (x *ListTeamsRequest) Reset() {
	*x = ListTeamsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[108]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListTeamsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListTeamsRequest) ProtoMessage() {}

func (x *ListTeamsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[108]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListTeamsRequest.ProtoReflect.Descriptor instead.
func (*ListTeamsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{108}
}

func (x *ListTeamsRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListTeamsRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListTeamsRequest) GetOrderBy() team.ListTeamsRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return team.ListTeamsRequest_DEFAULT
}

func (x *ListTeamsRequest) GetOrderDirection() team.ListTeamsRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return team.ListTeamsRequest_ASC
}

func (x *ListTeamsRequest) GetOrganizationId() string {
	if x != nil {
		return x.OrganizationId
	}
	return ""
}

func (x *ListTeamsRequest) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

type ListTeamsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Teams      []*team.Team `protobuf:"bytes,1,rep,name=teams,proto3" json:"teams"`
	Cursor     string       `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount int64        `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListTeamsResponse) Reset() {
	*x = ListTeamsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[109]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListTeamsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListTeamsResponse) ProtoMessage() {}

func (x *ListTeamsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[109]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListTeamsResponse.ProtoReflect.Descriptor instead.
func (*ListTeamsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{109}
}

func (x *ListTeamsResponse) GetTeams() []*team.Team {
	if x != nil {
		return x.Teams
	}
	return nil
}

func (x *ListTeamsResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListTeamsResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type GetSubscriptionRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetSubscriptionRequest) Reset() {
	*x = GetSubscriptionRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[110]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetSubscriptionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetSubscriptionRequest) ProtoMessage() {}

func (x *GetSubscriptionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[110]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetSubscriptionRequest.ProtoReflect.Descriptor instead.
func (*GetSubscriptionRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{110}
}

func (x *GetSubscriptionRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetSubscriptionResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Subscription *notification.Subscription `protobuf:"bytes,1,opt,name=subscription,proto3" json:"subscription"`
}

func (x *GetSubscriptionResponse) Reset() {
	*x = GetSubscriptionResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[111]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetSubscriptionResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetSubscriptionResponse) ProtoMessage() {}

func (x *GetSubscriptionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[111]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetSubscriptionResponse.ProtoReflect.Descriptor instead.
func (*GetSubscriptionResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{111}
}

func (x *GetSubscriptionResponse) GetSubscription() *notification.Subscription {
	if x != nil {
		return x.Subscription
	}
	return nil
}

type ListSubscriptionsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                                                `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                               `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	SourceTypes    []notification.Subscription_SourceType               `protobuf:"varint,3,rep,packed,name=source_types,json=sourceTypes,proto3,enum=bucketeer.notification.Subscription_SourceType" json:"source_types"`
	OrderBy        notification.ListSubscriptionsRequest_OrderBy        `protobuf:"varint,4,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.notification.ListSubscriptionsRequest_OrderBy" json:"order_by"`
	OrderDirection notification.ListSubscriptionsRequest_OrderDirection `protobuf:"varint,5,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.notification.ListSubscriptionsRequest_OrderDirection" json:"order_direction"`
	SearchKeyword  string                                               `protobuf:"bytes,6,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
	Disabled       *wrapperspb.BoolValue                                `protobuf:"bytes,7,opt,name=disabled,proto3" json:"disabled"`
	OrganizationId string                                               `protobuf:"bytes,8,opt,name=organization_id,json=organizationId,proto3" json:"organization_id"`
	EnvironmentIds []string                                             `protobuf:"bytes,9,rep,name=environment_ids,json=environmentIds,proto3" json:"environment_ids"`
}

func (x *ListSubscriptionsRequest) Reset() {
	*x = ListSubscriptionsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[112]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListSubscriptionsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListSubscriptionsRequest) ProtoMessage() {}

func (x *ListSubscriptionsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[112]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListSubscriptionsRequest.ProtoReflect.Descriptor instead.
func (*ListSubscriptionsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{112}
}

func (x *ListSubscriptionsRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListSubscriptionsRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListSubscriptionsRequest) GetSourceTypes() []notification.Subscription_SourceType {
	if x != nil {
		return x.SourceTypes
	}
	return nil
}

func (x *ListSubscriptionsRequest) GetOrderBy() notification.ListSubscriptionsRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return notification.ListSubscriptionsRequest_DEFAULT
}

func (x *ListSubscriptionsRequest) GetOrderDirection() notification.ListSubscriptionsRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return notification.ListSubscriptionsRequest_ASC
}

func (x *ListSubscriptionsRequest) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

func (x *ListSubscriptionsRequest) GetDisabled() *wrapperspb.BoolValue {
	if x != nil {
		return x.Disabled
	}
	return nil
}

func (x *ListSubscriptionsRequest) GetOrganizationId() string {
	if x != nil {
		return x.OrganizationId
	}
	return ""
}

func (x *ListSubscriptionsRequest) GetEnvironmentIds() []string {
	if x != nil {
		return x.EnvironmentIds
	}
	return nil
}

type ListSubscriptionsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Subscriptions []*notification.Subscription `protobuf:"bytes,1,rep,name=subscriptions,proto3" json:"subscriptions"`
	Cursor        string                       `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount    int64                        `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListSubscriptionsResponse) Reset() {
	*x = ListSubscriptionsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[113]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListSubscriptionsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListSubscriptionsResponse) ProtoMessage() {}

func (x *ListSubscriptionsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[113]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListSubscriptionsResponse.ProtoReflect.Descriptor instead.
func (*ListSubscriptionsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{113}
}

func (x *ListSubscriptionsResponse) GetSubscriptions() []*notification.Subscription {
	if x != nil {
		return x.Subscriptions
	}
	return nil
}

func (x *ListSubscriptionsResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListSubscriptionsResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type CreateSubscriptionRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name            string                                 `protobuf:"bytes,1,opt,name=name,proto3" json:"name"`
	SourceTypes     []notification.Subscription_SourceType `protobuf:"varint,2,rep,packed,name=source_types,json=sourceTypes,proto3,enum=bucketeer.notification.Subscription_SourceType" json:"source_types"`
	Recipient       *notification.Recipient                `protobuf:"bytes,3,opt,name=recipient,proto3" json:"recipient"`
	FeatureFlagTags []string                               `protobuf:"bytes,4,rep,name=feature_flag_tags,json=featureFlagTags,proto3" json:"feature_flag_tags"`
}

func (x *CreateSubscriptionRequest) Reset() {
	*x = CreateSubscriptionRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[114]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateSubscriptionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateSubscriptionRequest) ProtoMessage() {}

func (x *CreateSubscriptionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[114]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateSubscriptionRequest.ProtoReflect.Descriptor instead.
func (*CreateSubscriptionRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{114}
}

func (x *CreateSubscriptionRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateSubscriptionRequest) GetSourceTypes() []notification.Subscription_SourceType {
	if x != nil {
		return x.SourceTypes
	}
	return nil
}

func (x *CreateSubscriptionRequest) GetRecipient() *notification.Recipient {
	if x != nil {
		return x.Recipient
	}
	return nil
}

func (x *CreateSubscriptionRequest) GetFeatureFlagTags() []string {
	if x != nil {
		return x.FeatureFlagTags
	}
	return nil
}

type CreateSubscriptionResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Subscription *notification.Subscription `protobuf:"bytes,1,opt,name=subscription,proto3" json:"subscription"`
}

func (x *CreateSubscriptionResponse) Reset() {
	*x = CreateSubscriptionResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[115]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateSubscriptionResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateSubscriptionResponse) ProtoMessage() {}

func (x *CreateSubscriptionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[115]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateSubscriptionResponse.ProtoReflect.Descriptor instead.
func (*CreateSubscriptionResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{115}
}

func (x *CreateSubscriptionResponse) GetSubscription() *notification.Subscription {
	if x != nil {
		return x.Subscription
	}
	return nil
}

type DeleteSubscriptionRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *DeleteSubscriptionRequest) Reset() {
	*x = DeleteSubscriptionRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[116]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteSubscriptionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteSubscriptionRequest) ProtoMessage() {}

func (x *DeleteSubscriptionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[116]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteSubscriptionRequest.ProtoReflect.Descriptor instead.
func (*DeleteSubscriptionRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{116}
}

func (x *DeleteSubscriptionRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type DeleteSubscriptionResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DeleteSubscriptionResponse) Reset() {
	*x = DeleteSubscriptionResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[117]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteSubscriptionResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteSubscriptionResponse) ProtoMessage() {}

func (x *DeleteSubscriptionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[117]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteSubscriptionResponse.ProtoReflect.Descriptor instead.
func (*DeleteSubscriptionResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{117}
}

type UpdateSubscriptionRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id              string                                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	SourceTypes     []notification.Subscription_SourceType `protobuf:"varint,2,rep,packed,name=source_types,json=sourceTypes,proto3,enum=bucketeer.notification.Subscription_SourceType" json:"source_types"`
	Name            *wrapperspb.StringValue                `protobuf:"bytes,3,opt,name=name,proto3" json:"name"`
	Disabled        *wrapperspb.BoolValue                  `protobuf:"bytes,4,opt,name=disabled,proto3" json:"disabled"`
	FeatureFlagTags []string                               `protobuf:"bytes,5,rep,name=feature_flag_tags,json=featureFlagTags,proto3" json:"feature_flag_tags"`
}

func (x *UpdateSubscriptionRequest) Reset() {
	*x = UpdateSubscriptionRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[118]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateSubscriptionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateSubscriptionRequest) ProtoMessage() {}

func (x *UpdateSubscriptionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[118]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateSubscriptionRequest.ProtoReflect.Descriptor instead.
func (*UpdateSubscriptionRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{118}
}

func (x *UpdateSubscriptionRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateSubscriptionRequest) GetSourceTypes() []notification.Subscription_SourceType {
	if x != nil {
		return x.SourceTypes
	}
	return nil
}

func (x *UpdateSubscriptionRequest) GetName() *wrapperspb.StringValue {
	if x != nil {
		return x.Name
	}
	return nil
}

func (x *UpdateSubscriptionRequest) GetDisabled() *wrapperspb.BoolValue {
	if x != nil {
		return x.Disabled
	}
	return nil
}

func (x *UpdateSubscriptionRequest) GetFeatureFlagTags() []string {
	if x != nil {
		return x.FeatureFlagTags
	}
	return nil
}

type UpdateSubscriptionResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *UpdateSubscriptionResponse) Reset() {
	*x = UpdateSubscriptionResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[119]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateSubscriptionResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateSubscriptionResponse) ProtoMessage() {}

func (x *UpdateSubscriptionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[119]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateSubscriptionResponse.ProtoReflect.Descriptor instead.
func (*UpdateSubscriptionResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{119}
}

type CreateFlagTriggerRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureId   string                     `protobuf:"bytes,1,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	Type        feature.FlagTrigger_Type   `protobuf:"varint,2,opt,name=type,proto3,enum=bucketeer.feature.FlagTrigger_Type" json:"type"`
	Action      feature.FlagTrigger_Action `protobuf:"varint,3,opt,name=action,proto3,enum=bucketeer.feature.FlagTrigger_Action" json:"action"`
	Description string                     `protobuf:"bytes,4,opt,name=description,proto3" json:"description"`
}

func (x *CreateFlagTriggerRequest) Reset() {
	*x = CreateFlagTriggerRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[120]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFlagTriggerRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFlagTriggerRequest) ProtoMessage() {}

func (x *CreateFlagTriggerRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[120]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateFlagTriggerRequest.ProtoReflect.Descriptor instead.
func (*CreateFlagTriggerRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{120}
}

func (x *CreateFlagTriggerRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *CreateFlagTriggerRequest) GetType() feature.FlagTrigger_Type {
	if x != nil {
		return x.Type
	}
	return feature.FlagTrigger_Type_UNKNOWN
}

func (x *CreateFlagTriggerRequest) GetAction() feature.FlagTrigger_Action {
	if x != nil {
		return x.Action
	}
	return feature.FlagTrigger_Action_UNKNOWN
}

func (x *CreateFlagTriggerRequest) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

type CreateFlagTriggerResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FlagTrigger *feature.FlagTrigger `protobuf:"bytes,1,opt,name=flag_trigger,json=flagTrigger,proto3" json:"flag_trigger"`
	Url         string               `protobuf:"bytes,2,opt,name=url,proto3" json:"url"`
}

func (x *CreateFlagTriggerResponse) Reset() {
	*x = CreateFlagTriggerResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[121]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateFlagTriggerResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateFlagTriggerResponse) ProtoMessage() {}

func (x *CreateFlagTriggerResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[121]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateFlagTriggerResponse.ProtoReflect.Descriptor instead.
func (*CreateFlagTriggerResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{121}
}

func (x *CreateFlagTriggerResponse) GetFlagTrigger() *feature.FlagTrigger {
	if x != nil {
		return x.FlagTrigger
	}
	return nil
}

func (x *CreateFlagTriggerResponse) GetUrl() string {
	if x != nil {
		return x.Url
	}
	return ""
}

type DeleteFlagTriggerRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *DeleteFlagTriggerRequest) Reset() {
	*x = DeleteFlagTriggerRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[122]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteFlagTriggerRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteFlagTriggerRequest) ProtoMessage() {}

func (x *DeleteFlagTriggerRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[122]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteFlagTriggerRequest.ProtoReflect.Descriptor instead.
func (*DeleteFlagTriggerRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{122}
}

func (x *DeleteFlagTriggerRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type DeleteFlagTriggerResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DeleteFlagTriggerResponse) Reset() {
	*x = DeleteFlagTriggerResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[123]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteFlagTriggerResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteFlagTriggerResponse) ProtoMessage() {}

func (x *DeleteFlagTriggerResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[123]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteFlagTriggerResponse.ProtoReflect.Descriptor instead.
func (*DeleteFlagTriggerResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{123}
}

type UpdateFlagTriggerRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id          string                  `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	Description *wrapperspb.StringValue `protobuf:"bytes,2,opt,name=description,proto3" json:"description"`
	Reset_      bool                    `protobuf:"varint,3,opt,name=reset,proto3" json:"reset"`
	Disabled    *wrapperspb.BoolValue   `protobuf:"bytes,4,opt,name=disabled,proto3" json:"disabled"`
}

func (x *UpdateFlagTriggerRequest) Reset() {
	*x = UpdateFlagTriggerRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[124]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateFlagTriggerRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateFlagTriggerRequest) ProtoMessage() {}

func (x *UpdateFlagTriggerRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[124]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateFlagTriggerRequest.ProtoReflect.Descriptor instead.
func (*UpdateFlagTriggerRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{124}
}

func (x *UpdateFlagTriggerRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateFlagTriggerRequest) GetDescription() *wrapperspb.StringValue {
	if x != nil {
		return x.Description
	}
	return nil
}

func (x *UpdateFlagTriggerRequest) GetReset_() bool {
	if x != nil {
		return x.Reset_
	}
	return false
}

func (x *UpdateFlagTriggerRequest) GetDisabled() *wrapperspb.BoolValue {
	if x != nil {
		return x.Disabled
	}
	return nil
}

type UpdateFlagTriggerResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"`
}

func (x *UpdateFlagTriggerResponse) Reset() {
	*x = UpdateFlagTriggerResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[125]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateFlagTriggerResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateFlagTriggerResponse) ProtoMessage() {}

func (x *UpdateFlagTriggerResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[125]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateFlagTriggerResponse.ProtoReflect.Descriptor instead.
func (*UpdateFlagTriggerResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{125}
}

func (x *UpdateFlagTriggerResponse) GetUrl() string {
	if x != nil {
		return x.Url
	}
	return ""
}

type GetFlagTriggerRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetFlagTriggerRequest) Reset() {
	*x = GetFlagTriggerRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[126]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetFlagTriggerRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetFlagTriggerRequest) ProtoMessage() {}

func (x *GetFlagTriggerRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[126]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetFlagTriggerRequest.ProtoReflect.Descriptor instead.
func (*GetFlagTriggerRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{126}
}

func (x *GetFlagTriggerRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetFlagTriggerResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FlagTrigger *feature.FlagTrigger `protobuf:"bytes,1,opt,name=flag_trigger,json=flagTrigger,proto3" json:"flag_trigger"`
	Url         string               `protobuf:"bytes,2,opt,name=url,proto3" json:"url"`
}

func (x *GetFlagTriggerResponse) Reset() {
	*x = GetFlagTriggerResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[127]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetFlagTriggerResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetFlagTriggerResponse) ProtoMessage() {}

func (x *GetFlagTriggerResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[127]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetFlagTriggerResponse.ProtoReflect.Descriptor instead.
func (*GetFlagTriggerResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{127}
}

func (x *GetFlagTriggerResponse) GetFlagTrigger() *feature.FlagTrigger {
	if x != nil {
		return x.FlagTrigger
	}
	return nil
}

func (x *GetFlagTriggerResponse) GetUrl() string {
	if x != nil {
		return x.Url
	}
	return ""
}

type ListFlagTriggersRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureId      string                                         `protobuf:"bytes,1,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	Cursor         string                                         `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	PageSize       int32                                          `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	OrderBy        feature.ListFlagTriggersRequest_OrderBy        `protobuf:"varint,4,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.feature.ListFlagTriggersRequest_OrderBy" json:"order_by"`
	OrderDirection feature.ListFlagTriggersRequest_OrderDirection `protobuf:"varint,5,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.feature.ListFlagTriggersRequest_OrderDirection" json:"order_direction"`
}

func (x *ListFlagTriggersRequest) Reset() {
	*x = ListFlagTriggersRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[128]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFlagTriggersRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFlagTriggersRequest) ProtoMessage() {}

func (x *ListFlagTriggersRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[128]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListFlagTriggersRequest.ProtoReflect.Descriptor instead.
func (*ListFlagTriggersRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{128}
}

func (x *ListFlagTriggersRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *ListFlagTriggersRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListFlagTriggersRequest) GetPageSize() int32 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListFlagTriggersRequest) GetOrderBy() feature.ListFlagTriggersRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return feature.ListFlagTriggersRequest_DEFAULT
}

func (x *ListFlagTriggersRequest) GetOrderDirection() feature.ListFlagTriggersRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return feature.ListFlagTriggersRequest_ASC
}

type ListFlagTriggersResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FlagTriggers []*feature.ListFlagTriggersResponse_FlagTriggerWithUrl `protobuf:"bytes,1,rep,name=flag_triggers,json=flagTriggers,proto3" json:"flag_triggers"`
	Cursor       string                                                 `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount   int64                                                  `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListFlagTriggersResponse) Reset() {
	*x = ListFlagTriggersResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[129]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListFlagTriggersResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListFlagTriggersResponse) ProtoMessage() {}

func (x *ListFlagTriggersResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[129]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListFlagTriggersResponse.ProtoReflect.Descriptor instead.
func (*ListFlagTriggersResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{129}
}

func (x *ListFlagTriggersResponse) GetFlagTriggers() []*feature.ListFlagTriggersResponse_FlagTriggerWithUrl {
	if x != nil {
		return x.FlagTriggers
	}
	return nil
}

func (x *ListFlagTriggersResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListFlagTriggersResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type GetGoalRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetGoalRequest) Reset() {
	*x = GetGoalRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[130]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetGoalRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetGoalRequest) ProtoMessage() {}

func (x *GetGoalRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[130]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetGoalRequest.ProtoReflect.Descriptor instead.
func (*GetGoalRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{130}
}

func (x *GetGoalRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetGoalResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Goal *experiment.Goal `protobuf:"bytes,1,opt,name=goal,proto3" json:"goal"`
}

func (x *GetGoalResponse) Reset() {
	*x = GetGoalResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[131]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetGoalResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetGoalResponse) ProtoMessage() {}

func (x *GetGoalResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[131]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetGoalResponse.ProtoReflect.Descriptor instead.
func (*GetGoalResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{131}
}

func (x *GetGoalResponse) GetGoal() *experiment.Goal {
	if x != nil {
		return x.Goal
	}
	return nil
}

type ListGoalsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                                      `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                     `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	OrderBy        experiment.ListGoalsRequest_OrderBy        `protobuf:"varint,3,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.experiment.ListGoalsRequest_OrderBy" json:"order_by"`
	OrderDirection experiment.ListGoalsRequest_OrderDirection `protobuf:"varint,4,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.experiment.ListGoalsRequest_OrderDirection" json:"order_direction"`
	SearchKeyword  string                                     `protobuf:"bytes,5,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
	IsInUseStatus  *wrapperspb.BoolValue                      `protobuf:"bytes,6,opt,name=is_in_use_status,json=isInUseStatus,proto3" json:"is_in_use_status"`
	Archived       *wrapperspb.BoolValue                      `protobuf:"bytes,7,opt,name=archived,proto3" json:"archived"`
	ConnectionType experiment.Goal_ConnectionType             `protobuf:"varint,8,opt,name=connection_type,json=connectionType,proto3,enum=bucketeer.experiment.Goal_ConnectionType" json:"connection_type"`
}

func (x *ListGoalsRequest) Reset() {
	*x = ListGoalsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[132]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListGoalsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListGoalsRequest) ProtoMessage() {}

func (x *ListGoalsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[132]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListGoalsRequest.ProtoReflect.Descriptor instead.
func (*ListGoalsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{132}
}

func (x *ListGoalsRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListGoalsRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListGoalsRequest) GetOrderBy() experiment.ListGoalsRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return experiment.ListGoalsRequest_DEFAULT
}

func (x *ListGoalsRequest) GetOrderDirection() experiment.ListGoalsRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return experiment.ListGoalsRequest_ASC
}

func (x *ListGoalsRequest) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

func (x *ListGoalsRequest) GetIsInUseStatus() *wrapperspb.BoolValue {
	if x != nil {
		return x.IsInUseStatus
	}
	return nil
}

func (x *ListGoalsRequest) GetArchived() *wrapperspb.BoolValue {
	if x != nil {
		return x.Archived
	}
	return nil
}

func (x *ListGoalsRequest) GetConnectionType() experiment.Goal_ConnectionType {
	if x != nil {
		return x.ConnectionType
	}
	return experiment.Goal_UNKNOWN
}

type ListGoalsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Goals      []*experiment.Goal `protobuf:"bytes,1,rep,name=goals,proto3" json:"goals"`
	Cursor     string             `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount int64              `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListGoalsResponse) Reset() {
	*x = ListGoalsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[133]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListGoalsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListGoalsResponse) ProtoMessage() {}

func (x *ListGoalsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[133]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListGoalsResponse.ProtoReflect.Descriptor instead.
func (*ListGoalsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{133}
}

func (x *ListGoalsResponse) GetGoals() []*experiment.Goal {
	if x != nil {
		return x.Goals
	}
	return nil
}

func (x *ListGoalsResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListGoalsResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type CreateGoalRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id             string                         `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	Name           string                         `protobuf:"bytes,2,opt,name=name,proto3" json:"name"`
	Description    string                         `protobuf:"bytes,3,opt,name=description,proto3" json:"description"`
	ConnectionType experiment.Goal_ConnectionType `protobuf:"varint,4,opt,name=connection_type,json=connectionType,proto3,enum=bucketeer.experiment.Goal_ConnectionType" json:"connection_type"`
}

func (x *CreateGoalRequest) Reset() {
	*x = CreateGoalRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[134]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateGoalRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateGoalRequest) ProtoMessage() {}

func (x *CreateGoalRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[134]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateGoalRequest.ProtoReflect.Descriptor instead.
func (*CreateGoalRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{134}
}

func (x *CreateGoalRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CreateGoalRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateGoalRequest) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateGoalRequest) GetConnectionType() experiment.Goal_ConnectionType {
	if x != nil {
		return x.ConnectionType
	}
	return experiment.Goal_UNKNOWN
}

type CreateGoalResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Goal *experiment.Goal `protobuf:"bytes,1,opt,name=goal,proto3" json:"goal"`
}

func (x *CreateGoalResponse) Reset() {
	*x = CreateGoalResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[135]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateGoalResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateGoalResponse) ProtoMessage() {}

func (x *CreateGoalResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[135]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateGoalResponse.ProtoReflect.Descriptor instead.
func (*CreateGoalResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{135}
}

func (x *CreateGoalResponse) GetGoal() *experiment.Goal {
	if x != nil {
		return x.Goal
	}
	return nil
}

type DeleteGoalRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *DeleteGoalRequest) Reset() {
	*x = DeleteGoalRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[136]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteGoalRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteGoalRequest) ProtoMessage() {}

func (x *DeleteGoalRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[136]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteGoalRequest.ProtoReflect.Descriptor instead.
func (*DeleteGoalRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{136}
}

func (x *DeleteGoalRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type DeleteGoalResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DeleteGoalResponse) Reset() {
	*x = DeleteGoalResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[137]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeleteGoalResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteGoalResponse) ProtoMessage() {}

func (x *DeleteGoalResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[137]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteGoalResponse.ProtoReflect.Descriptor instead.
func (*DeleteGoalResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{137}
}

type UpdateGoalRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id          string                  `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	Name        *wrapperspb.StringValue `protobuf:"bytes,2,opt,name=name,proto3" json:"name"`
	Description *wrapperspb.StringValue `protobuf:"bytes,3,opt,name=description,proto3" json:"description"`
	Archived    *wrapperspb.BoolValue   `protobuf:"bytes,4,opt,name=archived,proto3" json:"archived"`
}

func (x *UpdateGoalRequest) Reset() {
	*x = UpdateGoalRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[138]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateGoalRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateGoalRequest) ProtoMessage() {}

func (x *UpdateGoalRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[138]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateGoalRequest.ProtoReflect.Descriptor instead.
func (*UpdateGoalRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{138}
}

func (x *UpdateGoalRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateGoalRequest) GetName() *wrapperspb.StringValue {
	if x != nil {
		return x.Name
	}
	return nil
}

func (x *UpdateGoalRequest) GetDescription() *wrapperspb.StringValue {
	if x != nil {
		return x.Description
	}
	return nil
}

func (x *UpdateGoalRequest) GetArchived() *wrapperspb.BoolValue {
	if x != nil {
		return x.Archived
	}
	return nil
}

type UpdateGoalResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Goal *experiment.Goal `protobuf:"bytes,1,opt,name=goal,proto3" json:"goal"`
}

func (x *UpdateGoalResponse) Reset() {
	*x = UpdateGoalResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[139]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateGoalResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateGoalResponse) ProtoMessage() {}

func (x *UpdateGoalResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[139]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateGoalResponse.ProtoReflect.Descriptor instead.
func (*UpdateGoalResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{139}
}

func (x *UpdateGoalResponse) GetGoal() *experiment.Goal {
	if x != nil {
		return x.Goal
	}
	return nil
}

type GetExperimentRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetExperimentRequest) Reset() {
	*x = GetExperimentRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[140]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetExperimentRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetExperimentRequest) ProtoMessage() {}

func (x *GetExperimentRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[140]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetExperimentRequest.ProtoReflect.Descriptor instead.
func (*GetExperimentRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{140}
}

func (x *GetExperimentRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetExperimentResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Experiment *experiment.Experiment `protobuf:"bytes,1,opt,name=experiment,proto3" json:"experiment"`
}

func (x *GetExperimentResponse) Reset() {
	*x = GetExperimentResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[141]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetExperimentResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetExperimentResponse) ProtoMessage() {}

func (x *GetExperimentResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[141]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetExperimentResponse.ProtoReflect.Descriptor instead.
func (*GetExperimentResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{141}
}

func (x *GetExperimentResponse) GetExperiment() *experiment.Experiment {
	if x != nil {
		return x.Experiment
	}
	return nil
}

type ListExperimentsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureId      string                                           `protobuf:"bytes,1,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	FeatureVersion *wrapperspb.Int32Value                           `protobuf:"bytes,2,opt,name=feature_version,json=featureVersion,proto3" json:"feature_version"`
	StartAt        int64                                            `protobuf:"varint,3,opt,name=start_at,json=startAt,proto3" json:"start_at"`
	StopAt         int64                                            `protobuf:"varint,4,opt,name=stop_at,json=stopAt,proto3" json:"stop_at"`
	PageSize       int64                                            `protobuf:"varint,5,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                           `protobuf:"bytes,6,opt,name=cursor,proto3" json:"cursor"`
	Maintainer     string                                           `protobuf:"bytes,7,opt,name=maintainer,proto3" json:"maintainer"`
	OrderBy        experiment.ListExperimentsRequest_OrderBy        `protobuf:"varint,8,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.experiment.ListExperimentsRequest_OrderBy" json:"order_by"`
	OrderDirection experiment.ListExperimentsRequest_OrderDirection `protobuf:"varint,9,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.experiment.ListExperimentsRequest_OrderDirection" json:"order_direction"`
	SearchKeyword  string                                           `protobuf:"bytes,10,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
	Archived       *wrapperspb.BoolValue                            `protobuf:"bytes,11,opt,name=archived,proto3" json:"archived"`
	Statuses       []experiment.Experiment_Status                   `protobuf:"varint,12,rep,packed,name=statuses,proto3,enum=bucketeer.experiment.Experiment_Status" json:"statuses"`
}

func (x *ListExperimentsRequest) Reset() {
	*x = ListExperimentsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[142]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListExperimentsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListExperimentsRequest) ProtoMessage() {}

func (x *ListExperimentsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[142]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListExperimentsRequest.ProtoReflect.Descriptor instead.
func (*ListExperimentsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{142}
}

func (x *ListExperimentsRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *ListExperimentsRequest) GetFeatureVersion() *wrapperspb.Int32Value {
	if x != nil {
		return x.FeatureVersion
	}
	return nil
}

func (x *ListExperimentsRequest) GetStartAt() int64 {
	if x != nil {
		return x.StartAt
	}
	return 0
}

func (x *ListExperimentsRequest) GetStopAt() int64 {
	if x != nil {
		return x.StopAt
	}
	return 0
}

func (x *ListExperimentsRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListExperimentsRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListExperimentsRequest) GetMaintainer() string {
	if x != nil {
		return x.Maintainer
	}
	return ""
}

func (x *ListExperimentsRequest) GetOrderBy() experiment.ListExperimentsRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return experiment.ListExperimentsRequest_DEFAULT
}

func (x *ListExperimentsRequest) GetOrderDirection() experiment.ListExperimentsRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return experiment.ListExperimentsRequest_ASC
}

func (x *ListExperimentsRequest) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

func (x *ListExperimentsRequest) GetArchived() *wrapperspb.BoolValue {
	if x != nil {
		return x.Archived
	}
	return nil
}

func (x *ListExperimentsRequest) GetStatuses() []experiment.Experiment_Status {
	if x != nil {
		return x.Statuses
	}
	return nil
}

type ListExperimentsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Experiments []*experiment.Experiment                    `protobuf:"bytes,1,rep,name=experiments,proto3" json:"experiments"`
	Cursor      string                                      `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount  int64                                       `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
	Summary     *experiment.ListExperimentsResponse_Summary `protobuf:"bytes,4,opt,name=summary,proto3" json:"summary"`
}

func (x *ListExperimentsResponse) Reset() {
	*x = ListExperimentsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[143]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListExperimentsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListExperimentsResponse) ProtoMessage() {}

func (x *ListExperimentsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[143]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListExperimentsResponse.ProtoReflect.Descriptor instead.
func (*ListExperimentsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{143}
}

func (x *ListExperimentsResponse) GetExperiments() []*experiment.Experiment {
	if x != nil {
		return x.Experiments
	}
	return nil
}

func (x *ListExperimentsResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListExperimentsResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

func (x *ListExperimentsResponse) GetSummary() *experiment.ListExperimentsResponse_Summary {
	if x != nil {
		return x.Summary
	}
	return nil
}

type CreateExperimentRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureId       string   `protobuf:"bytes,1,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	StartAt         int64    `protobuf:"varint,2,opt,name=start_at,json=startAt,proto3" json:"start_at"`
	StopAt          int64    `protobuf:"varint,3,opt,name=stop_at,json=stopAt,proto3" json:"stop_at"`
	GoalIds         []string `protobuf:"bytes,4,rep,name=goal_ids,json=goalIds,proto3" json:"goal_ids"`
	Name            string   `protobuf:"bytes,5,opt,name=name,proto3" json:"name"`
	Description     string   `protobuf:"bytes,6,opt,name=description,proto3" json:"description"`
	BaseVariationId string   `protobuf:"bytes,7,opt,name=base_variation_id,json=baseVariationId,proto3" json:"base_variation_id"`
}

func (x *CreateExperimentRequest) Reset() {
	*x = CreateExperimentRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[144]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateExperimentRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateExperimentRequest) ProtoMessage() {}

func (x *CreateExperimentRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[144]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateExperimentRequest.ProtoReflect.Descriptor instead.
func (*CreateExperimentRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{144}
}

func (x *CreateExperimentRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *CreateExperimentRequest) GetStartAt() int64 {
	if x != nil {
		return x.StartAt
	}
	return 0
}

func (x *CreateExperimentRequest) GetStopAt() int64 {
	if x != nil {
		return x.StopAt
	}
	return 0
}

func (x *CreateExperimentRequest) GetGoalIds() []string {
	if x != nil {
		return x.GoalIds
	}
	return nil
}

func (x *CreateExperimentRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CreateExperimentRequest) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *CreateExperimentRequest) GetBaseVariationId() string {
	if x != nil {
		return x.BaseVariationId
	}
	return ""
}

type CreateExperimentResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Experiment *experiment.Experiment `protobuf:"bytes,1,opt,name=experiment,proto3" json:"experiment"`
}

func (x *CreateExperimentResponse) Reset() {
	*x = CreateExperimentResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[145]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateExperimentResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateExperimentResponse) ProtoMessage() {}

func (x *CreateExperimentResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[145]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateExperimentResponse.ProtoReflect.Descriptor instead.
func (*CreateExperimentResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{145}
}

func (x *CreateExperimentResponse) GetExperiment() *experiment.Experiment {
	if x != nil {
		return x.Experiment
	}
	return nil
}

type UpdateExperimentRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id          string                                            `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
	Name        *wrapperspb.StringValue                           `protobuf:"bytes,2,opt,name=name,proto3" json:"name"`
	Description *wrapperspb.StringValue                           `protobuf:"bytes,3,opt,name=description,proto3" json:"description"`
	StartAt     *wrapperspb.Int64Value                            `protobuf:"bytes,4,opt,name=start_at,json=startAt,proto3" json:"start_at"`
	StopAt      *wrapperspb.Int64Value                            `protobuf:"bytes,5,opt,name=stop_at,json=stopAt,proto3" json:"stop_at"`
	Archived    *wrapperspb.BoolValue                             `protobuf:"bytes,6,opt,name=archived,proto3" json:"archived"`
	Status      *experiment.UpdateExperimentRequest_UpdatedStatus `protobuf:"bytes,7,opt,name=status,proto3" json:"status"`
}

func (x *UpdateExperimentRequest) Reset() {
	*x = UpdateExperimentRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[146]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateExperimentRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateExperimentRequest) ProtoMessage() {}

func (x *UpdateExperimentRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[146]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateExperimentRequest.ProtoReflect.Descriptor instead.
func (*UpdateExperimentRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{146}
}

func (x *UpdateExperimentRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UpdateExperimentRequest) GetName() *wrapperspb.StringValue {
	if x != nil {
		return x.Name
	}
	return nil
}

func (x *UpdateExperimentRequest) GetDescription() *wrapperspb.StringValue {
	if x != nil {
		return x.Description
	}
	return nil
}

func (x *UpdateExperimentRequest) GetStartAt() *wrapperspb.Int64Value {
	if x != nil {
		return x.StartAt
	}
	return nil
}

func (x *UpdateExperimentRequest) GetStopAt() *wrapperspb.Int64Value {
	if x != nil {
		return x.StopAt
	}
	return nil
}

func (x *UpdateExperimentRequest) GetArchived() *wrapperspb.BoolValue {
	if x != nil {
		return x.Archived
	}
	return nil
}

func (x *UpdateExperimentRequest) GetStatus() *experiment.UpdateExperimentRequest_UpdatedStatus {
	if x != nil {
		return x.Status
	}
	return nil
}

type UpdateExperimentResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Experiment *experiment.Experiment `protobuf:"bytes,1,opt,name=experiment,proto3" json:"experiment"`
}

func (x *UpdateExperimentResponse) Reset() {
	*x = UpdateExperimentResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[147]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpdateExperimentResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateExperimentResponse) ProtoMessage() {}

func (x *UpdateExperimentResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[147]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateExperimentResponse.ProtoReflect.Descriptor instead.
func (*UpdateExperimentResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{147}
}

func (x *UpdateExperimentResponse) GetExperiment() *experiment.Experiment {
	if x != nil {
		return x.Experiment
	}
	return nil
}

type GetExperimentEvaluationCountRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	StartAt        int64    `protobuf:"varint,1,opt,name=start_at,json=startAt,proto3" json:"start_at"`
	EndAt          int64    `protobuf:"varint,2,opt,name=end_at,json=endAt,proto3" json:"end_at"`
	FeatureId      string   `protobuf:"bytes,3,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	FeatureVersion int32    `protobuf:"varint,4,opt,name=feature_version,json=featureVersion,proto3" json:"feature_version"`
	VariationIds   []string `protobuf:"bytes,5,rep,name=variation_ids,json=variationIds,proto3" json:"variation_ids"`
}

func (x *GetExperimentEvaluationCountRequest) Reset() {
	*x = GetExperimentEvaluationCountRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[148]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetExperimentEvaluationCountRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetExperimentEvaluationCountRequest) ProtoMessage() {}

func (x *GetExperimentEvaluationCountRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[148]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetExperimentEvaluationCountRequest.ProtoReflect.Descriptor instead.
func (*GetExperimentEvaluationCountRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{148}
}

func (x *GetExperimentEvaluationCountRequest) GetStartAt() int64 {
	if x != nil {
		return x.StartAt
	}
	return 0
}

func (x *GetExperimentEvaluationCountRequest) GetEndAt() int64 {
	if x != nil {
		return x.EndAt
	}
	return 0
}

func (x *GetExperimentEvaluationCountRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *GetExperimentEvaluationCountRequest) GetFeatureVersion() int32 {
	if x != nil {
		return x.FeatureVersion
	}
	return 0
}

func (x *GetExperimentEvaluationCountRequest) GetVariationIds() []string {
	if x != nil {
		return x.VariationIds
	}
	return nil
}

type GetExperimentEvaluationCountResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureId       string                         `protobuf:"bytes,1,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	FeatureVersion  int32                          `protobuf:"varint,2,opt,name=feature_version,json=featureVersion,proto3" json:"feature_version"`
	VariationCounts []*eventcounter.VariationCount `protobuf:"bytes,3,rep,name=variation_counts,json=variationCounts,proto3" json:"variation_counts"`
}

func (x *GetExperimentEvaluationCountResponse) Reset() {
	*x = GetExperimentEvaluationCountResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[149]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetExperimentEvaluationCountResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetExperimentEvaluationCountResponse) ProtoMessage() {}

func (x *GetExperimentEvaluationCountResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[149]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetExperimentEvaluationCountResponse.ProtoReflect.Descriptor instead.
func (*GetExperimentEvaluationCountResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{149}
}

func (x *GetExperimentEvaluationCountResponse) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *GetExperimentEvaluationCountResponse) GetFeatureVersion() int32 {
	if x != nil {
		return x.FeatureVersion
	}
	return 0
}

func (x *GetExperimentEvaluationCountResponse) GetVariationCounts() []*eventcounter.VariationCount {
	if x != nil {
		return x.VariationCounts
	}
	return nil
}

type GetEvaluationTimeseriesCountRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureId string                                                     `protobuf:"bytes,1,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	TimeRange eventcounter.GetEvaluationTimeseriesCountRequest_TimeRange `protobuf:"varint,2,opt,name=time_range,json=timeRange,proto3,enum=bucketeer.eventcounter.GetEvaluationTimeseriesCountRequest_TimeRange" json:"time_range"`
}

func (x *GetEvaluationTimeseriesCountRequest) Reset() {
	*x = GetEvaluationTimeseriesCountRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[150]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetEvaluationTimeseriesCountRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetEvaluationTimeseriesCountRequest) ProtoMessage() {}

func (x *GetEvaluationTimeseriesCountRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[150]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetEvaluationTimeseriesCountRequest.ProtoReflect.Descriptor instead.
func (*GetEvaluationTimeseriesCountRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{150}
}

func (x *GetEvaluationTimeseriesCountRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *GetEvaluationTimeseriesCountRequest) GetTimeRange() eventcounter.GetEvaluationTimeseriesCountRequest_TimeRange {
	if x != nil {
		return x.TimeRange
	}
	return eventcounter.GetEvaluationTimeseriesCountRequest_UNKNOWN
}

type GetEvaluationTimeseriesCountResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	UserCounts  []*eventcounter.VariationTimeseries `protobuf:"bytes,1,rep,name=user_counts,json=userCounts,proto3" json:"user_counts"`
	EventCounts []*eventcounter.VariationTimeseries `protobuf:"bytes,2,rep,name=event_counts,json=eventCounts,proto3" json:"event_counts"`
}

func (x *GetEvaluationTimeseriesCountResponse) Reset() {
	*x = GetEvaluationTimeseriesCountResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[151]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetEvaluationTimeseriesCountResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetEvaluationTimeseriesCountResponse) ProtoMessage() {}

func (x *GetEvaluationTimeseriesCountResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[151]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetEvaluationTimeseriesCountResponse.ProtoReflect.Descriptor instead.
func (*GetEvaluationTimeseriesCountResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{151}
}

func (x *GetEvaluationTimeseriesCountResponse) GetUserCounts() []*eventcounter.VariationTimeseries {
	if x != nil {
		return x.UserCounts
	}
	return nil
}

func (x *GetEvaluationTimeseriesCountResponse) GetEventCounts() []*eventcounter.VariationTimeseries {
	if x != nil {
		return x.EventCounts
	}
	return nil
}

type GetExperimentResultRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ExperimentId string `protobuf:"bytes,1,opt,name=experiment_id,json=experimentId,proto3" json:"experiment_id"`
}

func (x *GetExperimentResultRequest) Reset() {
	*x = GetExperimentResultRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[152]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetExperimentResultRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetExperimentResultRequest) ProtoMessage() {}

func (x *GetExperimentResultRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[152]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetExperimentResultRequest.ProtoReflect.Descriptor instead.
func (*GetExperimentResultRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{152}
}

func (x *GetExperimentResultRequest) GetExperimentId() string {
	if x != nil {
		return x.ExperimentId
	}
	return ""
}

type GetExperimentResultResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ExperimentResult *eventcounter.ExperimentResult `protobuf:"bytes,1,opt,name=experiment_result,json=experimentResult,proto3" json:"experiment_result"`
}

func (x *GetExperimentResultResponse) Reset() {
	*x = GetExperimentResultResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[153]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetExperimentResultResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetExperimentResultResponse) ProtoMessage() {}

func (x *GetExperimentResultResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[153]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetExperimentResultResponse.ProtoReflect.Descriptor instead.
func (*GetExperimentResultResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{153}
}

func (x *GetExperimentResultResponse) GetExperimentResult() *eventcounter.ExperimentResult {
	if x != nil {
		return x.ExperimentResult
	}
	return nil
}

type ListExperimentResultsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FeatureId      string                 `protobuf:"bytes,1,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	FeatureVersion *wrapperspb.Int32Value `protobuf:"bytes,2,opt,name=feature_version,json=featureVersion,proto3" json:"feature_version"`
}

func (x *ListExperimentResultsRequest) Reset() {
	*x = ListExperimentResultsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[154]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListExperimentResultsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListExperimentResultsRequest) ProtoMessage() {}

func (x *ListExperimentResultsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[154]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListExperimentResultsRequest.ProtoReflect.Descriptor instead.
func (*ListExperimentResultsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{154}
}

func (x *ListExperimentResultsRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *ListExperimentResultsRequest) GetFeatureVersion() *wrapperspb.Int32Value {
	if x != nil {
		return x.FeatureVersion
	}
	return nil
}

type ListExperimentResultsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Results map[string]*eventcounter.ExperimentResult `protobuf:"bytes,1,rep,name=results,proto3" json:"results" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}

func (x *ListExperimentResultsResponse) Reset() {
	*x = ListExperimentResultsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[155]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListExperimentResultsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListExperimentResultsResponse) ProtoMessage() {}

func (x *ListExperimentResultsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[155]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListExperimentResultsResponse.ProtoReflect.Descriptor instead.
func (*ListExperimentResultsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{155}
}

func (x *ListExperimentResultsResponse) GetResults() map[string]*eventcounter.ExperimentResult {
	if x != nil {
		return x.Results
	}
	return nil
}

type GetExperimentGoalCountRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	StartAt        int64    `protobuf:"varint,1,opt,name=start_at,json=startAt,proto3" json:"start_at"`
	EndAt          int64    `protobuf:"varint,2,opt,name=end_at,json=endAt,proto3" json:"end_at"`
	GoalId         string   `protobuf:"bytes,3,opt,name=goal_id,json=goalId,proto3" json:"goal_id"`
	FeatureId      string   `protobuf:"bytes,4,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	FeatureVersion int32    `protobuf:"varint,5,opt,name=feature_version,json=featureVersion,proto3" json:"feature_version"`
	VariationIds   []string `protobuf:"bytes,6,rep,name=variation_ids,json=variationIds,proto3" json:"variation_ids"`
}

func (x *GetExperimentGoalCountRequest) Reset() {
	*x = GetExperimentGoalCountRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[156]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetExperimentGoalCountRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetExperimentGoalCountRequest) ProtoMessage() {}

func (x *GetExperimentGoalCountRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[156]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetExperimentGoalCountRequest.ProtoReflect.Descriptor instead.
func (*GetExperimentGoalCountRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{156}
}

func (x *GetExperimentGoalCountRequest) GetStartAt() int64 {
	if x != nil {
		return x.StartAt
	}
	return 0
}

func (x *GetExperimentGoalCountRequest) GetEndAt() int64 {
	if x != nil {
		return x.EndAt
	}
	return 0
}

func (x *GetExperimentGoalCountRequest) GetGoalId() string {
	if x != nil {
		return x.GoalId
	}
	return ""
}

func (x *GetExperimentGoalCountRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *GetExperimentGoalCountRequest) GetFeatureVersion() int32 {
	if x != nil {
		return x.FeatureVersion
	}
	return 0
}

func (x *GetExperimentGoalCountRequest) GetVariationIds() []string {
	if x != nil {
		return x.VariationIds
	}
	return nil
}

type GetExperimentGoalCountResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	GoalId          string                         `protobuf:"bytes,1,opt,name=goal_id,json=goalId,proto3" json:"goal_id"`
	VariationCounts []*eventcounter.VariationCount `protobuf:"bytes,2,rep,name=variation_counts,json=variationCounts,proto3" json:"variation_counts"`
}

func (x *GetExperimentGoalCountResponse) Reset() {
	*x = GetExperimentGoalCountResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[157]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetExperimentGoalCountResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetExperimentGoalCountResponse) ProtoMessage() {}

func (x *GetExperimentGoalCountResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[157]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetExperimentGoalCountResponse.ProtoReflect.Descriptor instead.
func (*GetExperimentGoalCountResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{157}
}

func (x *GetExperimentGoalCountResponse) GetGoalId() string {
	if x != nil {
		return x.GoalId
	}
	return ""
}

func (x *GetExperimentGoalCountResponse) GetVariationCounts() []*eventcounter.VariationCount {
	if x != nil {
		return x.VariationCounts
	}
	return nil
}

type GetOpsEvaluationUserCountRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OpsRuleId      string `protobuf:"bytes,1,opt,name=ops_rule_id,json=opsRuleId,proto3" json:"ops_rule_id"`
	ClauseId       string `protobuf:"bytes,2,opt,name=clause_id,json=clauseId,proto3" json:"clause_id"`
	FeatureId      string `protobuf:"bytes,3,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	FeatureVersion int32  `protobuf:"varint,4,opt,name=feature_version,json=featureVersion,proto3" json:"feature_version"`
	VariationId    string `protobuf:"bytes,5,opt,name=variation_id,json=variationId,proto3" json:"variation_id"`
}

func (x *GetOpsEvaluationUserCountRequest) Reset() {
	*x = GetOpsEvaluationUserCountRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[158]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetOpsEvaluationUserCountRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetOpsEvaluationUserCountRequest) ProtoMessage() {}

func (x *GetOpsEvaluationUserCountRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[158]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetOpsEvaluationUserCountRequest.ProtoReflect.Descriptor instead.
func (*GetOpsEvaluationUserCountRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{158}
}

func (x *GetOpsEvaluationUserCountRequest) GetOpsRuleId() string {
	if x != nil {
		return x.OpsRuleId
	}
	return ""
}

func (x *GetOpsEvaluationUserCountRequest) GetClauseId() string {
	if x != nil {
		return x.ClauseId
	}
	return ""
}

func (x *GetOpsEvaluationUserCountRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *GetOpsEvaluationUserCountRequest) GetFeatureVersion() int32 {
	if x != nil {
		return x.FeatureVersion
	}
	return 0
}

func (x *GetOpsEvaluationUserCountRequest) GetVariationId() string {
	if x != nil {
		return x.VariationId
	}
	return ""
}

type GetOpsEvaluationUserCountResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OpsRuleId string `protobuf:"bytes,1,opt,name=ops_rule_id,json=opsRuleId,proto3" json:"ops_rule_id"`
	ClauseId  string `protobuf:"bytes,2,opt,name=clause_id,json=clauseId,proto3" json:"clause_id"`
	Count     int64  `protobuf:"varint,3,opt,name=count,proto3" json:"count"`
}

func (x *GetOpsEvaluationUserCountResponse) Reset() {
	*x = GetOpsEvaluationUserCountResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[159]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetOpsEvaluationUserCountResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetOpsEvaluationUserCountResponse) ProtoMessage() {}

func (x *GetOpsEvaluationUserCountResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[159]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetOpsEvaluationUserCountResponse.ProtoReflect.Descriptor instead.
func (*GetOpsEvaluationUserCountResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{159}
}

func (x *GetOpsEvaluationUserCountResponse) GetOpsRuleId() string {
	if x != nil {
		return x.OpsRuleId
	}
	return ""
}

func (x *GetOpsEvaluationUserCountResponse) GetClauseId() string {
	if x != nil {
		return x.ClauseId
	}
	return ""
}

func (x *GetOpsEvaluationUserCountResponse) GetCount() int64 {
	if x != nil {
		return x.Count
	}
	return 0
}

type GetOpsGoalUserCountRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OpsRuleId      string `protobuf:"bytes,1,opt,name=ops_rule_id,json=opsRuleId,proto3" json:"ops_rule_id"`
	ClauseId       string `protobuf:"bytes,2,opt,name=clause_id,json=clauseId,proto3" json:"clause_id"`
	FeatureId      string `protobuf:"bytes,3,opt,name=feature_id,json=featureId,proto3" json:"feature_id"`
	FeatureVersion int32  `protobuf:"varint,4,opt,name=feature_version,json=featureVersion,proto3" json:"feature_version"`
	VariationId    string `protobuf:"bytes,5,opt,name=variation_id,json=variationId,proto3" json:"variation_id"`
}

func (x *GetOpsGoalUserCountRequest) Reset() {
	*x = GetOpsGoalUserCountRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[160]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetOpsGoalUserCountRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetOpsGoalUserCountRequest) ProtoMessage() {}

func (x *GetOpsGoalUserCountRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[160]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetOpsGoalUserCountRequest.ProtoReflect.Descriptor instead.
func (*GetOpsGoalUserCountRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{160}
}

func (x *GetOpsGoalUserCountRequest) GetOpsRuleId() string {
	if x != nil {
		return x.OpsRuleId
	}
	return ""
}

func (x *GetOpsGoalUserCountRequest) GetClauseId() string {
	if x != nil {
		return x.ClauseId
	}
	return ""
}

func (x *GetOpsGoalUserCountRequest) GetFeatureId() string {
	if x != nil {
		return x.FeatureId
	}
	return ""
}

func (x *GetOpsGoalUserCountRequest) GetFeatureVersion() int32 {
	if x != nil {
		return x.FeatureVersion
	}
	return 0
}

func (x *GetOpsGoalUserCountRequest) GetVariationId() string {
	if x != nil {
		return x.VariationId
	}
	return ""
}

type GetOpsGoalUserCountResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OpsRuleId string `protobuf:"bytes,1,opt,name=ops_rule_id,json=opsRuleId,proto3" json:"ops_rule_id"`
	ClauseId  string `protobuf:"bytes,2,opt,name=clause_id,json=clauseId,proto3" json:"clause_id"`
	Count     int64  `protobuf:"varint,3,opt,name=count,proto3" json:"count"`
}

func (x *GetOpsGoalUserCountResponse) Reset() {
	*x = GetOpsGoalUserCountResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[161]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetOpsGoalUserCountResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetOpsGoalUserCountResponse) ProtoMessage() {}

func (x *GetOpsGoalUserCountResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[161]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetOpsGoalUserCountResponse.ProtoReflect.Descriptor instead.
func (*GetOpsGoalUserCountResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{161}
}

func (x *GetOpsGoalUserCountResponse) GetOpsRuleId() string {
	if x != nil {
		return x.OpsRuleId
	}
	return ""
}

func (x *GetOpsGoalUserCountResponse) GetClauseId() string {
	if x != nil {
		return x.ClauseId
	}
	return ""
}

func (x *GetOpsGoalUserCountResponse) GetCount() int64 {
	if x != nil {
		return x.Count
	}
	return 0
}

type GetEnvironmentV2Request struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetEnvironmentV2Request) Reset() {
	*x = GetEnvironmentV2Request{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[162]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetEnvironmentV2Request) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetEnvironmentV2Request) ProtoMessage() {}

func (x *GetEnvironmentV2Request) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[162]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetEnvironmentV2Request.ProtoReflect.Descriptor instead.
func (*GetEnvironmentV2Request) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{162}
}

func (x *GetEnvironmentV2Request) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetEnvironmentV2Response struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Environment *environment.EnvironmentV2 `protobuf:"bytes,1,opt,name=environment,proto3" json:"environment"`
}

func (x *GetEnvironmentV2Response) Reset() {
	*x = GetEnvironmentV2Response{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[163]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetEnvironmentV2Response) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetEnvironmentV2Response) ProtoMessage() {}

func (x *GetEnvironmentV2Response) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[163]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetEnvironmentV2Response.ProtoReflect.Descriptor instead.
func (*GetEnvironmentV2Response) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{163}
}

func (x *GetEnvironmentV2Response) GetEnvironment() *environment.EnvironmentV2 {
	if x != nil {
		return x.Environment
	}
	return nil
}

type ListEnvironmentsV2Request struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                                                `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                               `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	OrderBy        environment.ListEnvironmentsV2Request_OrderBy        `protobuf:"varint,3,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.environment.ListEnvironmentsV2Request_OrderBy" json:"order_by"`
	OrderDirection environment.ListEnvironmentsV2Request_OrderDirection `protobuf:"varint,4,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.environment.ListEnvironmentsV2Request_OrderDirection" json:"order_direction"`
	ProjectId      string                                               `protobuf:"bytes,5,opt,name=project_id,json=projectId,proto3" json:"project_id"`
	Archived       *wrapperspb.BoolValue                                `protobuf:"bytes,6,opt,name=archived,proto3" json:"archived"`
	SearchKeyword  string                                               `protobuf:"bytes,7,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
}

func (x *ListEnvironmentsV2Request) Reset() {
	*x = ListEnvironmentsV2Request{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[164]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListEnvironmentsV2Request) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListEnvironmentsV2Request) ProtoMessage() {}

func (x *ListEnvironmentsV2Request) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[164]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListEnvironmentsV2Request.ProtoReflect.Descriptor instead.
func (*ListEnvironmentsV2Request) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{164}
}

func (x *ListEnvironmentsV2Request) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListEnvironmentsV2Request) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListEnvironmentsV2Request) GetOrderBy() environment.ListEnvironmentsV2Request_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return environment.ListEnvironmentsV2Request_DEFAULT
}

func (x *ListEnvironmentsV2Request) GetOrderDirection() environment.ListEnvironmentsV2Request_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return environment.ListEnvironmentsV2Request_ASC
}

func (x *ListEnvironmentsV2Request) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

func (x *ListEnvironmentsV2Request) GetArchived() *wrapperspb.BoolValue {
	if x != nil {
		return x.Archived
	}
	return nil
}

func (x *ListEnvironmentsV2Request) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

type ListEnvironmentsV2Response struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Environments []*environment.EnvironmentV2 `protobuf:"bytes,1,rep,name=environments,proto3" json:"environments"`
	Cursor       string                       `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount   int64                        `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListEnvironmentsV2Response) Reset() {
	*x = ListEnvironmentsV2Response{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[165]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListEnvironmentsV2Response) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListEnvironmentsV2Response) ProtoMessage() {}

func (x *ListEnvironmentsV2Response) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[165]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListEnvironmentsV2Response.ProtoReflect.Descriptor instead.
func (*ListEnvironmentsV2Response) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{165}
}

func (x *ListEnvironmentsV2Response) GetEnvironments() []*environment.EnvironmentV2 {
	if x != nil {
		return x.Environments
	}
	return nil
}

func (x *ListEnvironmentsV2Response) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListEnvironmentsV2Response) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type GetProjectRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
}

func (x *GetProjectRequest) Reset() {
	*x = GetProjectRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[166]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetProjectRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetProjectRequest) ProtoMessage() {}

func (x *GetProjectRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[166]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetProjectRequest.ProtoReflect.Descriptor instead.
func (*GetProjectRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{166}
}

func (x *GetProjectRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type GetProjectResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Project *environment.Project `protobuf:"bytes,1,opt,name=project,proto3" json:"project"`
}

func (x *GetProjectResponse) Reset() {
	*x = GetProjectResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[167]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetProjectResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetProjectResponse) ProtoMessage() {}

func (x *GetProjectResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[167]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetProjectResponse.ProtoReflect.Descriptor instead.
func (*GetProjectResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{167}
}

func (x *GetProjectResponse) GetProject() *environment.Project {
	if x != nil {
		return x.Project
	}
	return nil
}

type ListProjectsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PageSize       int64                                          `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size"`
	Cursor         string                                         `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	OrderBy        environment.ListProjectsRequest_OrderBy        `protobuf:"varint,3,opt,name=order_by,json=orderBy,proto3,enum=bucketeer.environment.ListProjectsRequest_OrderBy" json:"order_by"`
	OrderDirection environment.ListProjectsRequest_OrderDirection `protobuf:"varint,4,opt,name=order_direction,json=orderDirection,proto3,enum=bucketeer.environment.ListProjectsRequest_OrderDirection" json:"order_direction"`
	SearchKeyword  string                                         `protobuf:"bytes,5,opt,name=search_keyword,json=searchKeyword,proto3" json:"search_keyword"`
	Disabled       *wrapperspb.BoolValue                          `protobuf:"bytes,6,opt,name=disabled,proto3" json:"disabled"`
}

func (x *ListProjectsRequest) Reset() {
	*x = ListProjectsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[168]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListProjectsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListProjectsRequest) ProtoMessage() {}

func (x *ListProjectsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[168]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListProjectsRequest.ProtoReflect.Descriptor instead.
func (*ListProjectsRequest) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{168}
}

func (x *ListProjectsRequest) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListProjectsRequest) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListProjectsRequest) GetOrderBy() environment.ListProjectsRequest_OrderBy {
	if x != nil {
		return x.OrderBy
	}
	return environment.ListProjectsRequest_DEFAULT
}

func (x *ListProjectsRequest) GetOrderDirection() environment.ListProjectsRequest_OrderDirection {
	if x != nil {
		return x.OrderDirection
	}
	return environment.ListProjectsRequest_ASC
}

func (x *ListProjectsRequest) GetSearchKeyword() string {
	if x != nil {
		return x.SearchKeyword
	}
	return ""
}

func (x *ListProjectsRequest) GetDisabled() *wrapperspb.BoolValue {
	if x != nil {
		return x.Disabled
	}
	return nil
}

type ListProjectsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Projects   []*environment.Project `protobuf:"bytes,1,rep,name=projects,proto3" json:"projects"`
	Cursor     string                 `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor"`
	TotalCount int64                  `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count"`
}

func (x *ListProjectsResponse) Reset() {
	*x = ListProjectsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[169]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListProjectsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListProjectsResponse) ProtoMessage() {}

func (x *ListProjectsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[169]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListProjectsResponse.ProtoReflect.Descriptor instead.
func (*ListProjectsResponse) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{169}
}

func (x *ListProjectsResponse) GetProjects() []*environment.Project {
	if x != nil {
		return x.Projects
	}
	return nil
}

func (x *ListProjectsResponse) GetCursor() string {
	if x != nil {
		return x.Cursor
	}
	return ""
}

func (x *ListProjectsResponse) GetTotalCount() int64 {
	if x != nil {
		return x.TotalCount
	}
	return 0
}

type GetEvaluationsRequest_UserEvaluationCondition struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	EvaluatedAt           int64 `protobuf:"varint,1,opt,name=evaluated_at,json=evaluatedAt,proto3" json:"evaluated_at"`
	UserAttributesUpdated bool  `protobuf:"varint,2,opt,name=user_attributes_updated,json=userAttributesUpdated,proto3" json:"user_attributes_updated"`
}

func (x *GetEvaluationsRequest_UserEvaluationCondition) Reset() {
	*x = GetEvaluationsRequest_UserEvaluationCondition{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[170]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetEvaluationsRequest_UserEvaluationCondition) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetEvaluationsRequest_UserEvaluationCondition) ProtoMessage() {}

func (x *GetEvaluationsRequest_UserEvaluationCondition) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[170]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetEvaluationsRequest_UserEvaluationCondition.ProtoReflect.Descriptor instead.
func (*GetEvaluationsRequest_UserEvaluationCondition) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{6, 0}
}

func (x *GetEvaluationsRequest_UserEvaluationCondition) GetEvaluatedAt() int64 {
	if x != nil {
		return x.EvaluatedAt
	}
	return 0
}

func (x *GetEvaluationsRequest_UserEvaluationCondition) GetUserAttributesUpdated() bool {
	if x != nil {
		return x.UserAttributesUpdated
	}
	return false
}

type RegisterEventsResponse_Error struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Retriable bool   `protobuf:"varint,1,opt,name=retriable,proto3" json:"retriable"`
	Message   string `protobuf:"bytes,2,opt,name=message,proto3" json:"message"`
}

func (x *RegisterEventsResponse_Error) Reset() {
	*x = RegisterEventsResponse_Error{}
	if protoimpl.UnsafeEnabled {
		mi := &file_proto_gateway_service_proto_msgTypes[171]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RegisterEventsResponse_Error) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RegisterEventsResponse_Error) ProtoMessage() {}

func (x *RegisterEventsResponse_Error) ProtoReflect() protoreflect.Message {
	mi := &file_proto_gateway_service_proto_msgTypes[171]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RegisterEventsResponse_Error.ProtoReflect.Descriptor instead.
func (*RegisterEventsResponse_Error) Descriptor() ([]byte, []int) {
	return file_proto_gateway_service_proto_rawDescGZIP(), []int{11, 0}
}

func (x *RegisterEventsResponse_Error) GetRetriable() bool {
	if x != nil {
		return x.Retriable
	}
	return false
}

func (x *RegisterEventsResponse_Error) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

var File_proto_gateway_service_proto protoreflect.FileDescriptor

var file_proto_gateway_service_proto_rawDesc = []byte{
	0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2f,
	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e,
	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f,
	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
	0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
	0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
	0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x2d, 0x67, 0x65, 0x6e, 0x2d, 0x6f, 0x70, 0x65, 0x6e,
	0x61, 0x70, 0x69, 0x76, 0x32, 0x2f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x61, 0x6e,
	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
	0x19, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x73, 0x74,
	0x72, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x1a, 0x1e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x2f, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x1a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2f, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2f, 0x76, 0x61, 0x72, 0x69, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65,
	0x67, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x75, 0x73,
	0x68, 0x2f, 0x70, 0x75, 0x73, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x18, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x75, 0x73, 0x68, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x61, 0x63,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x61, 0x63, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x2f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x1a, 0x1e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2f, 0x63, 0x6c,
	0x69, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x1a, 0x22, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x65, 0x66, 0x2f,
	0x63, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x64, 0x65,
	0x72, 0x65, 0x66, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x1a, 0x1d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x6c, 0x6f,
	0x67, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x6c, 0x6f, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x1a, 0x1c, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x6c, 0x6f, 0x67,
	0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2f, 0x61, 0x75,
	0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x1a, 0x27, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73,
	0x2f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c,
	0x6c, 0x6f, 0x75, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x2f, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x61, 0x75,
	0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x74, 0x61, 0x67, 0x2f, 0x73,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x13, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x2f, 0x74, 0x61, 0x67, 0x2f, 0x74, 0x61, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x1a, 0x18, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x74, 0x65, 0x61, 0x6d, 0x2f, 0x73, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x2f, 0x74, 0x65, 0x61, 0x6d, 0x2f, 0x74, 0x65, 0x61, 0x6d, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x1a, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69,
	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6e, 0x6f, 0x74, 0x69,
	0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x22, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x2f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
	0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
	0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2f, 0x66,
	0x6c, 0x61, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x1a, 0x21, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x67, 0x6f, 0x61, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x1a, 0x1e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x1a, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x65, 0x72, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x1a, 0x2a, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
	0x23, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x65, 0x72, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x76, 0x65, 0x6e,
	0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
	0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72,
	0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x6e, 0x76, 0x69,
	0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x0d, 0x0a, 0x0b, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x22, 0x22, 0x0a, 0x0c, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x22, 0xd7, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x74,
	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x49, 0x64, 0x12,
	0x21, 0x0a, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64,
	0x41, 0x74, 0x12, 0x3d, 0x0a, 0x09, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65,
	0x72, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x53,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x52, 0x08, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49,
	0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x64, 0x6b, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x22, 0xfc, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28,
	0x0a, 0x10, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x5f,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x46,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
	0x12, 0x39, 0x0a, 0x19, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x66, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x16, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x46, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x49, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x21,
	0x0a, 0x0c, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x22, 0xbc, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
	0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b,
	0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x21, 0x0a,
	0x0c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x74,
	0x12, 0x3d, 0x0a, 0x09, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x49, 0x64, 0x52, 0x08, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x12,
	0x1f, 0x0a, 0x0b, 0x73, 0x64, 0x6b, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x22, 0xd5, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x55,
	0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0d,
	0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x55,
	0x73, 0x65, 0x72, 0x73, 0x52, 0x0c, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65,
	0x72, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x65,
	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x11, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49,
	0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f,
	0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x75,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x66, 0x6f, 0x72,
	0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0xfa, 0x03, 0x0a, 0x15, 0x47, 0x65, 0x74,
	0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x74, 0x61, 0x67, 0x12, 0x28, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x14, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x75,
	0x73, 0x65, 0x72, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x2e,
	0x0a, 0x13, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x75, 0x73, 0x65,
	0x72, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x49, 0x64, 0x12, 0x21,
	0x0a, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49,
	0x64, 0x12, 0x3d, 0x0a, 0x09, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x52, 0x08, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64,
	0x12, 0x7c, 0x0a, 0x19, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x55, 0x73,
	0x65, 0x72, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x64,
	0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x17, 0x75, 0x73, 0x65, 0x72, 0x45, 0x76, 0x61, 0x6c, 0x75,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f,
	0x0a, 0x0b, 0x73, 0x64, 0x6b, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x1a,
	0x74, 0x0a, 0x17, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x76,
	0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x0b, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x36, 0x0a,
	0x17, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73,
	0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15,
	0x75, 0x73, 0x65, 0x72, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x64, 0x22, 0xce, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x45, 0x76, 0x61,
	0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x3e, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x28, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65,
	0x12, 0x44, 0x0a, 0x0b, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65,
	0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76,
	0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x65, 0x76, 0x61, 0x6c, 0x75,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x65,
	0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x11, 0x75, 0x73, 0x65, 0x72, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x73, 0x49, 0x64, 0x22, 0xd1, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x45, 0x76,
	0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61,
	0x67, 0x12, 0x28, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x14, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72,
	0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x66,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x09, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e,
	0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x52,
	0x08, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x64, 0x6b,
	0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
	0x73, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x56, 0x0a, 0x15, 0x47, 0x65,
	0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x0a, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x45, 0x76, 0x61, 0x6c,
	0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x22, 0xae, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45,
	0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x06,
	0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x63,
	0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65,
	0x6e, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x64, 0x6b, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x64, 0x6b, 0x56, 0x65, 0x72,
	0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, 0x09, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69,
	0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74,
	0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x52, 0x08, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x49, 0x64, 0x22, 0x94, 0x02, 0x0a, 0x16, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72,
	0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d,
	0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73,
	0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x1a, 0x3f, 0x0a,
	0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x72, 0x69, 0x61,
	0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x65, 0x74, 0x72, 0x69,
	0x61, 0x62, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x6a,
	0x0a, 0x0b, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
	0x45, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52,
	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x9c, 0x01, 0x0a, 0x0c, 0x54,
	0x72, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61,
	0x70, 0x69, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69,
	0x6b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x69, 0x64, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x67,
	0x6f, 0x61, 0x6c, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x67, 0x6f, 0x61,
	0x6c, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
	0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
	0x61, 0x6d, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x0f, 0x0a, 0x0d, 0x54, 0x72, 0x61,
	0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x75, 0x0a, 0x1c, 0x44, 0x65,
	0x62, 0x75, 0x67, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x05, 0x75, 0x73,
	0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x42,
	0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x12, 0x24, 0x0a, 0x0b, 0x66,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09,
	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64,
	0x73, 0x22, 0x92, 0x01, 0x0a, 0x1d, 0x44, 0x65, 0x62, 0x75, 0x67, 0x45, 0x76, 0x61, 0x6c, 0x75,
	0x61, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0b, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x45, 0x76, 0x61,
	0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64,
	0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03,
	0x28, 0x09, 0x52, 0x12, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x46, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x49, 0x64, 0x73, 0x22, 0xdd, 0x02, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12,
	0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4f, 0x0a, 0x0e, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3c, 0x0a, 0x0a, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x56,
	0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03,
	0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x6f, 0x6e, 0x5f, 0x76,
	0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x66, 0x66, 0x5f, 0x76, 0x61,
	0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x11, 0x6f, 0x66, 0x66, 0x56, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x4d, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x34, 0x0a, 0x07, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x07, 0x66, 0x65,
	0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xb5, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x46, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64,
	0x12, 0x8a, 0x01, 0x0a, 0x0f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x76, 0x65, 0x72,
	0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f,
	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74,
	0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x44, 0x92, 0x41, 0x41, 0x2a, 0x0f, 0x66, 0x65,
	0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x32, 0x2e, 0x49,
	0x66, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x73, 0x65, 0x74, 0x2c, 0x20, 0x69, 0x74, 0x20, 0x77, 0x69,
	0x6c, 0x6c, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x61,
	0x74, 0x65, 0x73, 0x74, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x0e, 0x66,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x4a, 0x0a,
	0x12, 0x47, 0x65, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x52, 0x07, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xf5, 0x01, 0x0a, 0x13, 0x4c, 0x69,
	0x73, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x16,
	0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x49, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f,
	0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42,
	0x79, 0x12, 0x5e, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x22, 0x4e, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x08, 0x66, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e,
	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x73, 0x22, 0xad, 0x07, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f,
	0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d,
	0x6d, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
	0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x6e,
	0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69,
	0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65,
	0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a,
	0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x53,
	0x74, 0x72, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04,
	0x74, 0x61, 0x67, 0x73, 0x12, 0x34, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75,
	0x65, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x36, 0x0a, 0x08, 0x61, 0x72,
	0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42,
	0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76,
	0x65, 0x64, 0x12, 0x46, 0x0a, 0x10, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x74,
	0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x2e, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x52, 0x0f, 0x64, 0x65, 0x66, 0x61, 0x75,
	0x6c, 0x74, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x41, 0x0a, 0x0d, 0x6f, 0x66,
	0x66, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52,
	0x0c, 0x6f, 0x66, 0x66, 0x56, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a,
	0x13, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x5f,
	0x73, 0x65, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x72, 0x65, 0x73, 0x65,
	0x74, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x65, 0x64, 0x12, 0x4f, 0x0a,
	0x11, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67,
	0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x56, 0x61, 0x72,
	0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x10, 0x76, 0x61,
	0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x40,
	0x0a, 0x0c, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x0d,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x68, 0x61,
	0x6e, 0x67, 0x65, 0x52, 0x0b, 0x72, 0x75, 0x6c, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73,
	0x12, 0x58, 0x0a, 0x14, 0x70, 0x72, 0x65, 0x72, 0x65, 0x71, 0x75, 0x69, 0x73, 0x69, 0x74, 0x65,
	0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x2e, 0x50, 0x72, 0x65, 0x72, 0x65, 0x71, 0x75, 0x69, 0x73, 0x69, 0x74, 0x65, 0x43,
	0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x13, 0x70, 0x72, 0x65, 0x72, 0x65, 0x71, 0x75, 0x69, 0x73,
	0x69, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x46, 0x0a, 0x0e, 0x74, 0x61,
	0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61,
	0x6e, 0x67, 0x65, 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67,
	0x65, 0x73, 0x12, 0x3d, 0x0a, 0x0b, 0x74, 0x61, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65,
	0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x43,
	0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
	0x73, 0x22, 0x4d, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x66, 0x65,
	0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e,
	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x07, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x22, 0x90, 0x02, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x65, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73,
	0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53,
	0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x44, 0x0a, 0x08, 0x6f,
	0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42,
	0x79, 0x12, 0x59, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x50, 0x75, 0x73, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72,
	0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6f, 0x72,
	0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e,
	0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x77,
	0x6f, 0x72, 0x64, 0x22, 0x7b, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x65,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x06, 0x70, 0x75, 0x73,
	0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x52,
	0x06, 0x70, 0x75, 0x73, 0x68, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f,
	0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12,
	0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x22, 0x6b, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a,
	0x13, 0x66, 0x63, 0x6d, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x11, 0x66, 0x63, 0x6d, 0x53,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x3e, 0x0a,
	0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x04, 0x70, 0x75, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x14, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x70, 0x75,
	0x73, 0x68, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x52, 0x04, 0x70, 0x75, 0x73, 0x68, 0x22, 0x20, 0x0a,
	0x0e, 0x47, 0x65, 0x74, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22,
	0x3b, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x28, 0x0a, 0x04, 0x70, 0x75, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x14, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x70, 0x75, 0x73,
	0x68, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x52, 0x04, 0x70, 0x75, 0x73, 0x68, 0x22, 0x80, 0x02, 0x0a,
	0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
	0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09,
	0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c,
	0x75, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x94, 0x01, 0x0a, 0x07, 0x64, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x64, 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, 0x42, 0x6f, 0x6f,
	0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x5e, 0x92, 0x41, 0x5b, 0x2a, 0x07, 0x64, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x64, 0x32, 0x50, 0x69, 0x66, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2c, 0x20, 0x74,
	0x68, 0x65, 0x20, 0x70, 0x75, 0x73, 0x68, 0x20, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x64, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x66,
	0x69, 0x65, 0x6c, 0x64, 0x73, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x69, 0x67,
	0x6e, 0x6f, 0x72, 0x65, 0x64, 0x2e, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22,
	0x3e, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x04, 0x70, 0x75, 0x73, 0x68, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x70, 0x75, 0x73, 0x68, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x52, 0x04, 0x70, 0x75, 0x73, 0x68, 0x22,
	0xa5, 0x03, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d,
	0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x69,
	0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
	0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x27,
	0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
	0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x5b, 0x0a, 0x11, 0x6f, 0x72, 0x67, 0x61, 0x6e,
	0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32,
	0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x52, 0x10, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x52, 0x6f, 0x6c, 0x65, 0x12, 0x59, 0x0a, 0x11, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
	0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x2c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x2e, 0x45, 0x6e,
	0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x10, 0x65,
	0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x12,
	0x1d, 0x0a, 0x0a, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b,
	0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c,
	0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c,
	0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x22, 0x51, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56,
	0x32, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x89, 0x08, 0x0a, 0x16, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x6f,
	0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65,
	0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x10, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72,
	0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
	0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e,
	0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x6c,
	0x0a, 0x11, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72,
	0x6f, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x10, 0x6f, 0x72, 0x67, 0x61,
	0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x59, 0x0a, 0x11,
	0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x65,
	0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x56, 0x32, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
	0x74, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x10, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65,
	0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x0a, 0x66, 0x69, 0x72, 0x73, 0x74,
	0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f,
	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74,
	0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x66, 0x69, 0x72, 0x73, 0x74,
	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
	0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12,
	0x38, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52,
	0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x6c, 0x61, 0x73,
	0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67,
	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49,
	0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x53,
	0x65, 0x65, 0x6e, 0x12, 0x51, 0x0a, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x63,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x41,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x52, 0x06,
	0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0xa0, 0x01, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62,
	0x6c, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c,
	0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x68, 0x92, 0x41, 0x65, 0x2a, 0x08, 0x64, 0x69, 0x73, 0x61,
	0x62, 0x6c, 0x65, 0x64, 0x32, 0x59, 0x69, 0x66, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65,
	0x64, 0x20, 0x69, 0x73, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x64,
	0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x2e, 0x20, 0x49, 0x66, 0x20, 0x66, 0x61, 0x6c, 0x73,
	0x65, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x77,
	0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x2e, 0x52,
	0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x8a, 0x01, 0x0a, 0x07, 0x64, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f,
	0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x54, 0x92, 0x41, 0x51, 0x2a, 0x07, 0x64, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x64, 0x32, 0x46, 0x69, 0x66, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2c, 0x20,
	0x74, 0x68, 0x65, 0x20, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x77, 0x69, 0x6c, 0x6c,
	0x20, 0x62, 0x65, 0x20, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6e, 0x64, 0x20,
	0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x20, 0x77, 0x69, 0x6c,
	0x6c, 0x20, 0x62, 0x65, 0x20, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x2e, 0x52, 0x07, 0x64,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0x51, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x36, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32,
	0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x54, 0x0a, 0x13, 0x47, 0x65, 0x74,
	0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69,
	0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22,
	0x4e, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22,
	0x61, 0x0a, 0x22, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x42,
	0x79, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x65,
	0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
	0x49, 0x64, 0x22, 0x5d, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x56, 0x32, 0x42, 0x79, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x49,
	0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x61, 0x63, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x41,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x22, 0x37, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61,
	0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x4c, 0x0a, 0x0d, 0x47, 0x65,
	0x74, 0x4d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x07, 0x61,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xf0, 0x04, 0x0a, 0x15, 0x4c, 0x69, 0x73,
	0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12,
	0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e,
	0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64,
	0x12, 0x4b, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x30, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64,
	0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x60, 0x0a,
	0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52,
	0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x25, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72,
	0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b,
	0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x36, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56,
	0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x48,
	0x0a, 0x11, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72,
	0x6f, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33,
	0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x10, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x43, 0x0a, 0x0e, 0x65, 0x6e, 0x76, 0x69,
	0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
	0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d,
	0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x46, 0x0a,
	0x10, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x6c,
	0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56,
	0x61, 0x6c, 0x75, 0x65, 0x52, 0x0f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
	0x74, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x0b,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x22, 0x8b, 0x01, 0x0a, 0x16,
	0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x56, 0x32, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73,
	0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61,
	0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74,
	0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x29, 0x0a, 0x17, 0x47, 0x65, 0x74,
	0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x02, 0x69, 0x64, 0x22, 0x63, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52,
	0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x47, 0x0a, 0x0e, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e,
	0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x65, 0x66, 0x2e, 0x43, 0x6f, 0x64,
	0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x64, 0x65,
	0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x22, 0xcd, 0x02, 0x0a, 0x19, 0x4c, 0x69,
	0x73, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f,
	0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65,
	0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x4f, 0x0a, 0x08,
	0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x72,
	0x65, 0x66, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72,
	0x65, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64,
	0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x64, 0x0a,
	0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x65, 0x66, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43,
	0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65,
	0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x61,
	0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x65,
	0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64, 0x22, 0xa0, 0x01, 0x0a, 0x1a, 0x4c, 0x69,
	0x73, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0f, 0x63, 0x6f, 0x64, 0x65,
	0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x63, 0x6f,
	0x64, 0x65, 0x72, 0x65, 0x66, 0x2e, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65,
	0x6e, 0x63, 0x65, 0x52, 0x0e, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e,
	0x63, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74,
	0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa3, 0x04, 0x0a,
	0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72,
	0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x66,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x6e,
	0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0d, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x49,
	0x64, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f,
	0x0a, 0x0b, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12,
	0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x73, 0x6e, 0x69, 0x70, 0x70, 0x65, 0x74, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x64, 0x65, 0x53, 0x6e, 0x69, 0x70, 0x70,
	0x65, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61,
	0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
	0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73,
	0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x12,
	0x27, 0x0a, 0x0f, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69,
	0x74, 0x6f, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x70, 0x6f,
	0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x4f, 0x77,
	0x6e, 0x65, 0x72, 0x12, 0x58, 0x0a, 0x0f, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72,
	0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x65, 0x66,
	0x2e, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x52,
	0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x72,
	0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2b, 0x0a,
	0x11, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x62, 0x72, 0x61, 0x6e,
	0x63, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69,
	0x74, 0x6f, 0x72, 0x79, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f,
	0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x25, 0x0a, 0x0e, 0x66,
	0x69, 0x6c, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0d, 0x66, 0x69, 0x6c, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
	0x6f, 0x6e, 0x22, 0x66, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65,
	0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x47, 0x0a, 0x0e, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65,
	0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x65, 0x66, 0x2e, 0x43, 0x6f,
	0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x64,
	0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x22, 0xbf, 0x02, 0x0a, 0x1a, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e,
	0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c,
	0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69,
	0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6e,
	0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x69, 0x6e,
	0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x64, 0x65, 0x5f,
	0x73, 0x6e, 0x69, 0x70, 0x70, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63,
	0x6f, 0x64, 0x65, 0x53, 0x6e, 0x69, 0x70, 0x70, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f,
	0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x18, 0x0a,
	0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07,
	0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x70, 0x6f, 0x73,
	0x69, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x72,
	0x61, 0x6e, 0x63, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x68,
	0x61, 0x73, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69,
	0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x65, 0x78,
	0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x66,
	0x69, 0x6c, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x66, 0x0a, 0x1b,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65,
	0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0e, 0x63,
	0x6f, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x63, 0x6f, 0x64, 0x65, 0x72, 0x65, 0x66, 0x2e, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65,
	0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72,
	0x65, 0x6e, 0x63, 0x65, 0x22, 0x2c, 0x0a, 0x1a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f,
	0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
	0x69, 0x64, 0x22, 0x1d, 0x0a, 0x1b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65,
	0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x51, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65,
	0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4d, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65,
	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a,
	0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x73, 0x65, 0x67, 0x6d,
	0x65, 0x6e, 0x74, 0x22, 0x28, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e,
	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x22, 0x4a, 0x0a,
	0x12, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
	0x52, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x96, 0x03, 0x0a, 0x13, 0x4c, 0x69,
	0x73, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x16,
	0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x49, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f,
	0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42,
	0x79, 0x12, 0x5e, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x77,
	0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63,
	0x68, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x33, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32,
	0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x43, 0x0a,
	0x10, 0x69, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61,
	0x6c, 0x75, 0x65, 0x52, 0x0d, 0x69, 0x73, 0x49, 0x6e, 0x55, 0x73, 0x65, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x22, 0x87, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65,
	0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x08, 0x73,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65,
	0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74,
	0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x26, 0x0a, 0x14,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x02, 0x69, 0x64, 0x22, 0x17, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65,
	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x98, 0x01,
	0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c,
	0x75, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
	0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0b, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4d, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x34, 0x0a, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07,
	0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xca, 0x01, 0x0a, 0x1d, 0x42, 0x75, 0x6c, 0x6b,
	0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65,
	0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x34, 0x92, 0x41, 0x31, 0x32, 0x2f, 0x73, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x20, 0x75, 0x73, 0x65, 0x72, 0x20, 0x69, 0x64, 0x73, 0x20, 0x73, 0x65,
	0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x61,
	0x20, 0x6f, 0x72, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x04, 0x64, 0x61,
	0x74, 0x61, 0x12, 0x3a, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65,
	0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65,
	0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x4a, 0x04,
	0x08, 0x01, 0x10, 0x02, 0x22, 0x20, 0x0a, 0x1e, 0x42, 0x75, 0x6c, 0x6b, 0x55, 0x70, 0x6c, 0x6f,
	0x61, 0x64, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x29, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x41, 0x75, 0x64,
	0x69, 0x74, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69,
	0x64, 0x22, 0x50, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x61, 0x75, 0x64, 0x69,
	0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x6c, 0x6f, 0x67,
	0x2e, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x52, 0x08, 0x61, 0x75, 0x64, 0x69, 0x74,
	0x4c, 0x6f, 0x67, 0x22, 0xcb, 0x03, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75, 0x64, 0x69,
	0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x63, 0x0a, 0x09,
	0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42,
	0x46, 0x92, 0x41, 0x43, 0x2a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x32,
	0x36, 0x50, 0x61, 0x67, 0x65, 0x20, 0x73, 0x69, 0x7a, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x70,
	0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x69, 0x6d,
	0x75, 0x6d, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x20, 0x69, 0x73, 0x20, 0x32, 0x30, 0x30, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a,
	0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x4b, 0x0a, 0x08, 0x6f, 0x72, 0x64,
	0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x6c, 0x6f, 0x67,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f,
	0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x60, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f,
	0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x37, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x64, 0x69,
	0x74, 0x6c, 0x6f, 0x67, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f,
	0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x44,
	0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x44,
	0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72,
	0x63, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12,
	0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x66,
	0x72, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x02, 0x74, 0x6f, 0x12, 0x3c, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32,
	0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
	0x65, 0x22, 0x8d, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c,
	0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x61,
	0x75, 0x64, 0x69, 0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x1c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x64, 0x69,
	0x74, 0x6c, 0x6f, 0x67, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x52, 0x09, 0x61,
	0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73,
	0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72,
	0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e,
	0x74, 0x22, 0xe7, 0x03, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x22, 0x0a, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x49, 0x64, 0x12, 0x63, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x46, 0x92, 0x41, 0x43, 0x2a, 0x09, 0x70, 0x61, 0x67,
	0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x32, 0x36, 0x50, 0x61, 0x67, 0x65, 0x20, 0x73, 0x69, 0x7a,
	0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x2c, 0x20, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65,
	0x64, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x32, 0x30, 0x30, 0x52, 0x08,
	0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73,
	0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72,
	0x12, 0x50, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x35, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61,
	0x75, 0x64, 0x69, 0x74, 0x6c, 0x6f, 0x67, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72,
	0x42, 0x79, 0x12, 0x65, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x6c, 0x6f, 0x67,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x48, 0x69, 0x73, 0x74,
	0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72,
	0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72,
	0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x61,
	0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64,
	0x12, 0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04,
	0x66, 0x72, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x02, 0x74, 0x6f, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
	0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x6e,
	0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x92, 0x01, 0x0a, 0x1a,
	0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f,
	0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x61, 0x75,
	0x64, 0x69, 0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74,
	0x6c, 0x6f, 0x67, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x52, 0x09, 0x61, 0x75,
	0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f,
	0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12,
	0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x22, 0x2c, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75,
	0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x22, 0x5c,
	0x0a, 0x16, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x6f,
	0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1e, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f,
	0x6f, 0x70, 0x73, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52,
	0x0b, 0x61, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x22, 0xa4, 0x02, 0x0a,
	0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75,
	0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x66, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
	0x41, 0x02, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64, 0x12, 0x3a, 0x0a,
	0x08, 0x6f, 0x70, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x1a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f,
	0x6f, 0x70, 0x73, 0x2e, 0x4f, 0x70, 0x73, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02,
	0x52, 0x07, 0x6f, 0x70, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x5a, 0x0a, 0x16, 0x6f, 0x70, 0x73,
	0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75,
	0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x4f, 0x70,
	0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65,
	0x52, 0x13, 0x6f, 0x70, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x74, 0x65, 0x43, 0x6c,
	0x61, 0x75, 0x73, 0x65, 0x73, 0x12, 0x4c, 0x0a, 0x10, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d,
	0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x21, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f,
	0x6f, 0x70, 0x73, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x6c, 0x61, 0x75,
	0x73, 0x65, 0x52, 0x0f, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x6c, 0x61, 0x75,
	0x73, 0x65, 0x73, 0x22, 0x5f, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74,
	0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x42, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x41, 0x75, 0x74, 0x6f,
	0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73,
	0x52, 0x75, 0x6c, 0x65, 0x22, 0x6f, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75, 0x74, 0x6f,
	0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06,
	0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75,
	0x72, 0x73, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f,
	0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x49, 0x64, 0x73, 0x22, 0x78, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75, 0x74,
	0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x44, 0x0a, 0x0e, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75,
	0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x41, 0x75,
	0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x6f, 0x4f,
	0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f,
	0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22,
	0x2d, 0x0a, 0x16, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75,
	0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x22, 0x19,
	0x0a, 0x17, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x0a, 0x18, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x22, 0x1b, 0x0a, 0x19, 0x44, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xff, 0x01, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x12, 0x6d, 0x0a, 0x1d, 0x6f, 0x70, 0x73,
	0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75,
	0x73, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x2b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74,
	0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x4f, 0x70, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x74,
	0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x19, 0x6f,
	0x70, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73,
	0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x5f, 0x0a, 0x17, 0x64, 0x61, 0x74, 0x65,
	0x74, 0x69, 0x6d, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e,
	0x67, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x44, 0x61,
	0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e,
	0x67, 0x65, 0x52, 0x15, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x6c, 0x61, 0x75,
	0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x22, 0x1b, 0x0a, 0x19, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4e, 0x0a, 0x15, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74,
	0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x09, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x69,
	0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x63, 0x6c,
	0x61, 0x75, 0x73, 0x65, 0x49, 0x64, 0x22, 0x45, 0x0a, 0x16, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74,
	0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x2b, 0x0a, 0x11, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x5f, 0x74, 0x72, 0x69, 0x67,
	0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, 0x6c, 0x72,
	0x65, 0x61, 0x64, 0x79, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x65, 0x64, 0x22, 0xe5, 0x03,
	0x0a, 0x1f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73,
	0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x22, 0x0a, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x49, 0x64, 0x12, 0x9a, 0x01, 0x0a, 0x2a, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65,
	0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x61,
	0x6e, 0x75, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6c,
	0x61, 0x75, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x50,
	0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75,
	0x74, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x43,
	0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x26, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73,
	0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x4d, 0x61, 0x6e, 0x75, 0x61,
	0x6c, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x88,
	0x01, 0x01, 0x12, 0xa0, 0x01, 0x0a, 0x2c, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69,
	0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c,
	0x61, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6c, 0x61,
	0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x50, 0x72,
	0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74,
	0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65,
	0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x01, 0x52, 0x28, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65,
	0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x54, 0x65, 0x6d, 0x70,
	0x6c, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6c, 0x61, 0x75,
	0x73, 0x65, 0x88, 0x01, 0x01, 0x42, 0x2d, 0x0a, 0x2b, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65,
	0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x61,
	0x6e, 0x75, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6c,
	0x61, 0x75, 0x73, 0x65, 0x42, 0x2f, 0x0a, 0x2d, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73,
	0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x5f, 0x74, 0x65, 0x6d,
	0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63,
	0x6c, 0x61, 0x75, 0x73, 0x65, 0x22, 0x7a, 0x0a, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50,
	0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75,
	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x13, 0x70, 0x72, 0x6f,
	0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x67, 0x72,
	0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x12, 0x70,
	0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75,
	0x74, 0x22, 0x2e, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73,
	0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
	0x64, 0x22, 0x77, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73,
	0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x56, 0x0a, 0x13, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76,
	0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f,
	0x6f, 0x70, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52,
	0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73,
	0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x22, 0x7f, 0x0a, 0x1d, 0x53, 0x74,
	0x6f, 0x70, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c,
	0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x4e, 0x0a, 0x0a, 0x73,
	0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x2f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f,
	0x6f, 0x70, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52,
	0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x42, 0x79,
	0x52, 0x09, 0x73, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x42, 0x79, 0x22, 0x20, 0x0a, 0x1e, 0x53,
	0x74, 0x6f, 0x70, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f,
	0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x0a,
	0x1f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69,
	0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
	0x22, 0x22, 0x0a, 0x20, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65,
	0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0xdb, 0x03, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f,
	0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f,
	0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65,
	0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b,
	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64, 0x73, 0x12, 0x54, 0x0a,
	0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x39, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f,
	0x6f, 0x70, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73,
	0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65,
	0x72, 0x42, 0x79, 0x12, 0x69, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72,
	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x40, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65,
	0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e,
	0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e,
	0x6f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x49,
	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6f,
	0x70, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f,
	0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x00, 0x52, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x04, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x67,
	0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x2e, 0x54,
	0x79, 0x70, 0x65, 0x48, 0x01, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x42, 0x09,
	0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x79,
	0x70, 0x65, 0x22, 0xb4, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72,
	0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65,
	0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73,
	0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x13, 0x70, 0x72, 0x6f,
	0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73,
	0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61,
	0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74,
	0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x53, 0x0a, 0x20, 0x45, 0x78, 0x65,
	0x63, 0x75, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52,
	0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1f, 0x0a,
	0x0b, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x22, 0x23,
	0x0a, 0x21, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73,
	0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x2b, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x67,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x22, 0x39, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x67, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x12, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x74,
	0x61, 0x67, 0x2e, 0x54, 0x61, 0x67, 0x52, 0x03, 0x74, 0x61, 0x67, 0x22, 0x27, 0x0a, 0x10, 0x44,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02,
	0x52, 0x02, 0x69, 0x64, 0x22, 0x13, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61,
	0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb1, 0x02, 0x0a, 0x0f, 0x4c, 0x69,
	0x73, 0x74, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a,
	0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75,
	0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73,
	0x6f, 0x72, 0x12, 0x41, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x74, 0x61, 0x67, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72,
	0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x56, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64,
	0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x74, 0x61, 0x67, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f,
	0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6f,
	0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a,
	0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, 0x65, 0x79,
	0x77, 0x6f, 0x72, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f,
	0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x73, 0x0a,
	0x10, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x26, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x12, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x74, 0x61, 0x67, 0x2e,
	0x54, 0x61, 0x67, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72,
	0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f,
	0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75,
	0x6e, 0x74, 0x22, 0x7c, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02,
	0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64,
	0x22, 0x3e, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x74, 0x65, 0x61, 0x6d, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d,
	0x22, 0x56, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x0f, 0x6f, 0x72,
	0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69,
	0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x14, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbb,
	0x02, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65,
	0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x43, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65,
	0x72, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x74, 0x65, 0x61, 0x6d, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x54, 0x65, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64,
	0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x58, 0x0a,
	0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x74, 0x65, 0x61, 0x6d, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x61, 0x6d,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69,
	0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69,
	0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e,
	0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f,
	0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73,
	0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x78, 0x0a, 0x11,
	0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x2a, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x14, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x74, 0x65, 0x61,
	0x6d, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x16, 0x0a,
	0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63,
	0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61,
	0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2d, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x53, 0x75, 0x62,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x02, 0x69, 0x64, 0x22, 0x63, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x53, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x48, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
	0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x73, 0x75,
	0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x98, 0x04, 0x0a, 0x18, 0x4c,
	0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f,
	0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65,
	0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x52, 0x0a, 0x0c,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03,
	0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x6e,
	0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54,
	0x79, 0x70, 0x65, 0x52, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73,
	0x12, 0x53, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x38, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x6e,
	0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72,
	0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x68, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64,
	0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3f,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66,
	0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52,
	0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x25, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72,
	0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b,
	0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x36, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56,
	0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2c,
	0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
	0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x6f, 0x72,
	0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f,
	0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18,
	0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65,
	0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0xa0, 0x01, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x75,
	0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x52, 0x0d, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
	0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c,
	0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f,
	0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xff, 0x01, 0x0a, 0x19, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
	0x57, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18,
	0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65,
	0x72, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53,
	0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x44, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x69,
	0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x03,
	0xe0, 0x41, 0x02, 0x52, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x2a,
	0x0a, 0x11, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x74,
	0x61, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x61, 0x67, 0x73, 0x22, 0x66, 0x0a, 0x1a, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66,
	0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x22, 0x2b, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22,
	0x1c, 0x0a, 0x1a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe5, 0x02,
	0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64,
	0x12, 0x52, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73,
	0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
	0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54,
	0x79, 0x70, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65,
	0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62,
	0x6c, 0x65, 0x64, 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, 0x42, 0x6f, 0x6f, 0x6c,
	0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x48, 0x92, 0x41, 0x45, 0x2a, 0x08, 0x64, 0x69, 0x73, 0x61,
	0x62, 0x6c, 0x65, 0x64, 0x32, 0x39, 0x69, 0x66, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2c, 0x20, 0x74,
	0x68, 0x65, 0x20, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20,
	0x69, 0x73, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x2c, 0x20, 0x6f, 0x74, 0x68,
	0x65, 0x72, 0x77, 0x69, 0x73, 0x65, 0x20, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x2e, 0x52,
	0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x46, 0x6c, 0x61,
	0x67, 0x54, 0x61, 0x67, 0x73, 0x22, 0x1c, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53,
	0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0xe2, 0x01, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c,
	0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x22, 0x0a, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x23, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67,
	0x65, 0x72, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x74, 0x79,
	0x70, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67,
	0x65, 0x72, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06,
	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x70, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x74, 0x72,
	0x69, 0x67, 0x67, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e,
	0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x0b, 0x66, 0x6c, 0x61,
	0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0x2a, 0x0a, 0x18, 0x44, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x1b, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x8c, 0x02, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c,
	0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3e, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72,
	0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x05, 0x72, 0x65, 0x73, 0x65, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x08, 0x42, 0x29, 0x92, 0x41, 0x26, 0x32, 0x24, 0x49, 0x66, 0x20, 0x74, 0x72,
	0x75, 0x65, 0x2c, 0x20, 0x72, 0x65, 0x73, 0x65, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x72,
	0x69, 0x67, 0x67, 0x65, 0x72, 0x20, 0x68, 0x6f, 0x6f, 0x6b, 0x20, 0x55, 0x52, 0x4c, 0x2e, 0x52,
	0x05, 0x72, 0x65, 0x73, 0x65, 0x74, 0x12, 0x5a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c,
	0x65, 0x64, 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, 0x42, 0x6f, 0x6f, 0x6c, 0x56,
	0x61, 0x6c, 0x75, 0x65, 0x42, 0x22, 0x92, 0x41, 0x1f, 0x32, 0x1d, 0x49, 0x66, 0x20, 0x74, 0x72,
	0x75, 0x65, 0x2c, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20,
	0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x2e, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x22, 0x76, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67,
	0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x59, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x47, 0x92, 0x41,
	0x44, 0x32, 0x42, 0x49, 0x66, 0x20, 0x72, 0x65, 0x73, 0x65, 0x74, 0x20, 0x69, 0x73, 0x20, 0x74,
	0x72, 0x75, 0x65, 0x2c, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
	0x65, 0x64, 0x20, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x20, 0x68, 0x6f, 0x6f, 0x6b, 0x20,
	0x55, 0x52, 0x4c, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75,
	0x72, 0x6e, 0x65, 0x64, 0x2e, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0x2c, 0x0a, 0x15, 0x47, 0x65,
	0x74, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
	0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x22, 0x6d, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x46,
	0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67,
	0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x46, 0x6c, 0x61,
	0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x0b, 0x66, 0x6c, 0x61, 0x67, 0x54, 0x72,
	0x69, 0x67, 0x67, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0xa0, 0x02, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74,
	0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61,
	0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70,
	0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x4d, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72,
	0x5f, 0x62, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f,
	0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x62, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f,
	0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x39, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67,
	0x67, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65,
	0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65,
	0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb8, 0x01, 0x0a, 0x18, 0x4c,
	0x69, 0x73, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x0d, 0x66, 0x6c, 0x61, 0x67, 0x5f,
	0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67,
	0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x46, 0x6c, 0x61, 0x67,
	0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x57, 0x69, 0x74, 0x68, 0x55, 0x72, 0x6c, 0x52, 0x0c,
	0x66, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x12, 0x16, 0x0a, 0x06,
	0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75,
	0x72, 0x73, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c,
	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x25, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x47, 0x6f, 0x61, 0x6c,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x22, 0x41, 0x0a, 0x0f,
	0x47, 0x65, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x2e, 0x0a, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x22,
	0xea, 0x03, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a,
	0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x49, 0x0a, 0x08, 0x6f, 0x72, 0x64,
	0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
	0x6e, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64,
	0x65, 0x72, 0x42, 0x79, 0x12, 0x5e, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69,
	0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b,
	0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65,
	0x61, 0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x43, 0x0a, 0x10, 0x69,
	0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75,
	0x65, 0x52, 0x0d, 0x69, 0x73, 0x49, 0x6e, 0x55, 0x73, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x12, 0x36, 0x0a, 0x08, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08,
	0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x12, 0x52, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e,
	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x29, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78,
	0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x6f, 0x61, 0x6c, 0x2e, 0x43, 0x6f,
	0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x63, 0x6f,
	0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x22, 0x7e, 0x0a, 0x11,
	0x4c, 0x69, 0x73, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x30, 0x0a, 0x05, 0x67, 0x6f, 0x61, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x1a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x05, 0x67, 0x6f,
	0x61, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74,
	0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xb7, 0x01, 0x0a,
	0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
	0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x52, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
	0x6e, 0x74, 0x2e, 0x47, 0x6f, 0x61, 0x6c, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x22, 0x44, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x04,
	0x67, 0x6f, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x2e, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x22, 0x28, 0x0a, 0x11,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
	0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x22, 0x14, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xfb, 0x01, 0x0a,
	0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
	0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61,
	0x6c, 0x75, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x0b, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c,
	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
	0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0b, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5f, 0x0a, 0x08, 0x61, 0x72, 0x63,
	0x68, 0x69, 0x76, 0x65, 0x64, 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, 0x42, 0x6f,
	0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x27, 0x92, 0x41, 0x24, 0x32, 0x22, 0x69, 0x66,
	0x20, 0x74, 0x72, 0x75, 0x65, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x67, 0x6f, 0x61, 0x6c, 0x20,
	0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64,
	0x52, 0x08, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x22, 0x44, 0x0a, 0x12, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x2e, 0x0a, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72,
	0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x04, 0x67, 0x6f, 0x61, 0x6c,
	0x22, 0x26, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x59, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x45,
	0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x40, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65,
	0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x22, 0xe1, 0x04, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d,
	0x0a, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64, 0x12, 0x44, 0x0a,
	0x0f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61,
	0x6c, 0x75, 0x65, 0x52, 0x0e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x65, 0x72, 0x73,
	0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x61, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x73, 0x74, 0x61, 0x72, 0x74, 0x41, 0x74, 0x12, 0x17,
	0x0a, 0x07, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x06, 0x73, 0x74, 0x6f, 0x70, 0x41, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f,
	0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65,
	0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a,
	0x6d, 0x61, 0x69, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0a, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x4f, 0x0a, 0x08,
	0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72,
	0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64,
	0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x64, 0x0a,
	0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65,
	0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x61,
	0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x36, 0x0a, 0x08, 0x61, 0x72,
	0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42,
	0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76,
	0x65, 0x64, 0x12, 0x43, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x0c,
	0x20, 0x03, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x08, 0x73,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x22, 0xe7, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74,
	0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
	0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x65, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f,
	0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12,
	0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x12, 0x4f, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x35, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78,
	0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72,
	0x79, 0x22, 0x87, 0x02, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a,
	0x0a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49,
	0x64, 0x12, 0x1e, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x73, 0x74, 0x61, 0x72, 0x74, 0x41,
	0x74, 0x12, 0x1c, 0x0a, 0x07, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x73, 0x74, 0x6f, 0x70, 0x41, 0x74, 0x12,
	0x1e, 0x0a, 0x08, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
	0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x67, 0x6f, 0x61, 0x6c, 0x49, 0x64, 0x73, 0x12,
	0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
	0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x11, 0x62, 0x61,
	0x73, 0x65, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x62, 0x61, 0x73, 0x65,
	0x56, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x5c, 0x0a, 0x18, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x65, 0x72,
	0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
	0x6e, 0x74, 0x2e, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x65,
	0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xca, 0x03, 0x0a, 0x17, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e,
	0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x0b,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x08,
	0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b,
	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
	0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x73, 0x74, 0x61,
	0x72, 0x74, 0x41, 0x74, 0x12, 0x34, 0x0a, 0x07, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x61, 0x74, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c,
	0x75, 0x65, 0x52, 0x06, 0x73, 0x74, 0x6f, 0x70, 0x41, 0x74, 0x12, 0x65, 0x0a, 0x08, 0x61, 0x72,
	0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42,
	0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x2d, 0x92, 0x41, 0x2a, 0x32, 0x28, 0x69,
	0x66, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x61,
	0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x52, 0x08, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65,
	0x64, 0x12, 0x53, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x3b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x78,
	0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45,
	0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x5c, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x40, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x78,
	0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x22, 0xd8, 0x01, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x08,
	0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03,
	0xe0, 0x41, 0x02, 0x52, 0x07, 0x73, 0x74, 0x61, 0x72, 0x74, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x06,
	0x65, 0x6e, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x05, 0x65, 0x6e, 0x64, 0x41, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
	0x02, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x0f,
	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x61,
	0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x0c, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x22,
	0xc1, 0x01, 0x0a, 0x24, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x66, 0x65,
	0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x0e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x12, 0x51, 0x0a, 0x10, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x65, 0x72, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75,
	0x6e, 0x74, 0x52, 0x0f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75,
	0x6e, 0x74, 0x73, 0x22, 0xb4, 0x01, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x43,
	0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x66,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
	0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64, 0x12,
	0x69, 0x0a, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x45, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x65, 0x76, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74,
	0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x65,
	0x72, 0x69, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
	0x09, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x22, 0xc4, 0x01, 0x0a, 0x24, 0x47,
	0x65, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65,
	0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65,
	0x72, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73,
	0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x73, 0x12, 0x4e, 0x0a, 0x0c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72,
	0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x65,
	0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x73, 0x22, 0x46, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
	0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x28, 0x0a, 0x0d, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x65, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x74, 0x0a, 0x1b, 0x47, 0x65, 0x74,
	0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a, 0x11, 0x65, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x65, 0x76, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x45, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x10, 0x65,
	0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22,
	0x88, 0x01, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
	0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x22, 0x0a, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x0f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f,
	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e,
	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
	0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xde, 0x01, 0x0a, 0x1d, 0x4c,
	0x69, 0x73, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73,
	0x75, 0x6c, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x07,
	0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e,
	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x72, 0x65,
	0x73, 0x75, 0x6c, 0x74, 0x73, 0x1a, 0x64, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73,
	0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3e, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2e,
	0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xf0, 0x01, 0x0a, 0x1d,
	0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61,
	0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a,
	0x08, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42,
	0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x73, 0x74, 0x61, 0x72, 0x74, 0x41, 0x74, 0x12, 0x1a, 0x0a,
	0x06, 0x65, 0x6e, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0,
	0x41, 0x02, 0x52, 0x05, 0x65, 0x6e, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x07, 0x67, 0x6f, 0x61,
	0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
	0x06, 0x67, 0x6f, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02,
	0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x0f, 0x66,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x61, 0x72,
	0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09,
	0x52, 0x0c, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x22, 0x8c,
	0x01, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x47, 0x6f, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x17, 0x0a, 0x07, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x67, 0x6f, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x51, 0x0a, 0x10, 0x76, 0x61,
	0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x02,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x56, 0x61,
	0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x76, 0x61,
	0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x22, 0xe3, 0x01,
	0x0a, 0x20, 0x47, 0x65, 0x74, 0x4f, 0x70, 0x73, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x23, 0x0a, 0x0b, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x6f, 0x70,
	0x73, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x09, 0x63, 0x6c, 0x61, 0x75, 0x73,
	0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
	0x08, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x66, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
	0x41, 0x02, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a,
	0x0f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x66, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0c, 0x76,
	0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x49, 0x64, 0x22, 0x76, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x4f, 0x70, 0x73, 0x45, 0x76, 0x61,
	0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x6f, 0x70, 0x73, 0x5f,
	0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f,
	0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x61, 0x75,
	0x73, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6c, 0x61,
	0x75, 0x73, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xdd, 0x01, 0x0a, 0x1a,
	0x47, 0x65, 0x74, 0x4f, 0x70, 0x73, 0x47, 0x6f, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f,
	0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0b, 0x6f, 0x70,
	0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
	0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x6f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12,
	0x20, 0x0a, 0x09, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x49,
	0x64, 0x12, 0x22, 0x0a, 0x0a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x0f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03,
	0xe0, 0x41, 0x02, 0x52, 0x0e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x65, 0x72, 0x73,
	0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0c, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b,
	0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x70, 0x0a, 0x1b, 0x47,
	0x65, 0x74, 0x4f, 0x70, 0x73, 0x47, 0x6f, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75,
	0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x6f, 0x70,
	0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x6f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c,
	0x61, 0x75, 0x73, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63,
	0x6c, 0x61, 0x75, 0x73, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x29, 0x0a,
	0x17, 0x47, 0x65, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x56,
	0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x62, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x45,
	0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
	0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
	0x74, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x56, 0x32, 0x52,
	0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x8d, 0x03, 0x0a,
	0x19, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
	0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61,
	0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70,
	0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f,
	0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12,
	0x53, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x38, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x6e,
	0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e,
	0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64,
	0x65, 0x72, 0x42, 0x79, 0x12, 0x68, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69,
	0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3f, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f,
	0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f,
	0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e,
	0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e,
	0x6f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d,
	0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x36, 0x0a,
	0x08, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
	0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x61, 0x72, 0x63,
	0x68, 0x69, 0x76, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f,
	0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73,
	0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x9f, 0x01, 0x0a,
	0x1a, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
	0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x0c, 0x65,
	0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x6e,
	0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f,
	0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x0c, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1f, 0x0a,
	0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x23,
	0x0a, 0x11, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x22, 0x4e, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x07, 0x70, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65,
	0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x22, 0xdc, 0x02, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70,
	0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08,
	0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73,
	0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72,
	0x12, 0x4d, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x32, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65,
	0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f,
	0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12,
	0x62, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65,
	0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x61,
	0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x36, 0x0a, 0x08, 0x64, 0x69,
	0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42,
	0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x22, 0x8b, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65,
	0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x08, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f,
	0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x08, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f,
	0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12,
	0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x32, 0x8e, 0xc0, 0x01, 0x0a, 0x07, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x12, 0xb0, 0x02,
	0x0a, 0x0e, 0x47, 0x65, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x12, 0x28, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47,
	0x65, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc8, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x22, 0x10,
	0x2f, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x3a, 0x01, 0x2a, 0x92, 0x41, 0xa9, 0x01, 0x0a, 0x16, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20,
	0x61, 0x6e, 0x64, 0x20, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x53, 0x44, 0x4b, 0x73, 0x12,
	0x0f, 0x47, 0x65, 0x74, 0x20, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x1a, 0x61, 0x47, 0x65, 0x74, 0x73, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65,
	0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61,
	0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x20,
	0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49,
	0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x43, 0x4c,
	0x49, 0x45, 0x4e, 0x54, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f,
	0x6c, 0x65, 0x2e, 0x2a, 0x1b, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x12, 0xaa, 0x02, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x27, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x47, 0x65, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc5, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x22, 0x0f,
	0x2f, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a,
	0x01, 0x2a, 0x92, 0x41, 0xa7, 0x01, 0x0a, 0x16, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x61,
	0x6e, 0x64, 0x20, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x53, 0x44, 0x4b, 0x73, 0x12, 0x0e,
	0x47, 0x65, 0x74, 0x20, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x61,
	0x47, 0x65, 0x74, 0x73, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x65, 0x76,
	0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x73,
	0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x20, 0x54, 0x6f,
	0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20,
	0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x43, 0x4c, 0x49, 0x45,
	0x4e, 0x54, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65,
	0x2e, 0x2a, 0x1a, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x67,
	0x65, 0x74, 0x5f, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xb8, 0x02,
	0x0a, 0x0f, 0x47, 0x65, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x46, 0x6c, 0x61, 0x67,
	0x73, 0x12, 0x29, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x46, 0x6c, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x47, 0x65, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcd, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x17, 0x22, 0x12, 0x2f, 0x67, 0x65, 0x74, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f,
	0x66, 0x6c, 0x61, 0x67, 0x73, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0xac, 0x01, 0x0a, 0x16, 0x43, 0x6c,
	0x69, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20,
	0x53, 0x44, 0x4b, 0x73, 0x12, 0x11, 0x47, 0x65, 0x74, 0x20, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x1a, 0x60, 0x47, 0x65, 0x74, 0x73, 0x20, 0x61, 0x6c,
	0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x66, 0x6c,
	0x61, 0x67, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e,
	0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68,
	0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64,
	0x20, 0x61, 0x20, 0x60, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20,
	0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1d, 0x61, 0x70, 0x69, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x67, 0x65, 0x74, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0xb9, 0x02, 0x0a, 0x0f, 0x47, 0x65, 0x74,
	0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x29, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x53,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0xce, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x22, 0x12, 0x2f, 0x67,
	0x65, 0x74, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x73,
	0x3a, 0x01, 0x2a, 0x92, 0x41, 0xad, 0x01, 0x0a, 0x16, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20,
	0x61, 0x6e, 0x64, 0x20, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x53, 0x44, 0x4b, 0x73, 0x12,
	0x11, 0x47, 0x65, 0x74, 0x20, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x55, 0x73, 0x65,
	0x72, 0x73, 0x1a, 0x61, 0x47, 0x65, 0x74, 0x73, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65,
	0x20, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x75, 0x73, 0x65, 0x72, 0x73, 0x20, 0x69,
	0x6e, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
	0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41,
	0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60,
	0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20,
	0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1d, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x67, 0x65, 0x74, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x75,
	0x73, 0x65, 0x72, 0x73, 0x12, 0xb5, 0x02, 0x0a, 0x0e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65,
	0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x52, 0x65, 0x67, 0x69,
	0x73, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x29, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x76,
	0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcd, 0x01, 0x82,
	0xd3, 0xe4, 0x93, 0x02, 0x15, 0x22, 0x10, 0x2f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72,
	0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0xae, 0x01, 0x0a, 0x16,
	0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x20, 0x53, 0x44, 0x4b, 0x73, 0x12, 0x0f, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72,
	0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x66, 0x54, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50,
	0x49, 0x20, 0x69, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x69,
	0x6e, 0x67, 0x20, 0x47, 0x6f, 0x61, 0x6c, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20,
	0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49,
	0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x43, 0x4c,
	0x49, 0x45, 0x4e, 0x54, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52,
	0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a,
	0x1b, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x72, 0x65, 0x67,
	0x69, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x8f, 0x02, 0x0a,
	0x05, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x12, 0x1f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x54, 0x72, 0x61, 0x63,
	0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc2, 0x01, 0x82, 0xd3, 0xe4, 0x93,
	0x02, 0x08, 0x12, 0x06, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x92, 0x41, 0xb0, 0x01, 0x0a, 0x16,
	0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x20, 0x53, 0x44, 0x4b, 0x73, 0x12, 0x05, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x1a, 0x7c, 0x54,
	0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x20, 0x69, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x69, 0x6e,
	0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x47, 0x6f,
	0x6f, 0x67, 0x6c, 0x65, 0x20, 0x54, 0x61, 0x62, 0x20, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72,
	0x20, 0x74, 0x6f, 0x20, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x47, 0x6f, 0x61, 0x6c, 0x20,
	0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20,
	0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65,
	0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x60, 0x20, 0x41, 0x50,
	0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x11, 0x61, 0x70, 0x69,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x12, 0xf1,
	0x02, 0x0a, 0x15, 0x44, 0x65, 0x62, 0x75, 0x67, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65,
	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x2f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x62,
	0x75, 0x67, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65,
	0x62, 0x75, 0x67, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf4, 0x01, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x20, 0x22, 0x1b, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f,
	0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x73, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0xca, 0x01, 0x0a, 0x0d, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x19, 0x44, 0x65, 0x62, 0x75, 0x67, 0x20, 0x46,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x1a, 0x6d, 0x54, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x20, 0x69, 0x73, 0x20,
	0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x65, 0x62, 0x75, 0x67, 0x20, 0x6f, 0x6e,
	0x65, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x65, 0x6e, 0x64, 0x2d, 0x75, 0x73,
	0x65, 0x72, 0x20, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20,
	0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49,
	0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45,
	0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65,
	0x2e, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76,
	0x31, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x64, 0x65, 0x62, 0x75, 0x67,
	0x5f, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x73, 0x12, 0x90, 0x02, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x12, 0x27, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46,
	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xab, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10,
	0x22, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x3a, 0x01, 0x2a,
	0x92, 0x41, 0x91, 0x01, 0x0a, 0x0d, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x46, 0x6c,
	0x61, 0x67, 0x73, 0x12, 0x06, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x1a, 0x58, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20,
	0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65,
	0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20,
	0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20,
	0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1e, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0xea, 0x01, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x46, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x12, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47,
	0x65, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x8e, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0d, 0x12, 0x0b, 0x2f, 0x76, 0x31, 0x2f,
	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x92, 0x41, 0x78, 0x0a, 0x0d, 0x46, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x03, 0x47, 0x65, 0x74, 0x1a, 0x45,
	0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x46, 0x6c,
	0x61, 0x67, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73,
	0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61,
	0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20,
	0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1b, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x67,
	0x65, 0x74, 0x12, 0xf3, 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x73, 0x12, 0x26, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x91, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0e, 0x12, 0x0c, 0x2f,
	0x76, 0x31, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x92, 0x41, 0x7a, 0x0a, 0x0d,
	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x04, 0x4c,
	0x69, 0x73, 0x74, 0x1a, 0x45, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c,
	0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e,
	0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49,
	0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1c, 0x61, 0x70, 0x69, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x73, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x8c, 0x02, 0x0a, 0x0d, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x27, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x65,
	0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa7, 0x01,
	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x32, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x8d, 0x01, 0x0a, 0x0d, 0x46, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x06, 0x55, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x1a, 0x54, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x46, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c,
	0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20,
	0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f,
	0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65,
	0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1e, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
	0x2e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0xa8, 0x01, 0x0a, 0x04, 0x50, 0x69, 0x6e, 0x67,
	0x12, 0x1e, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x1f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x5f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x07, 0x12, 0x05, 0x2f, 0x70, 0x69, 0x6e, 0x67,
	0x92, 0x41, 0x4f, 0x0a, 0x07, 0x55, 0x74, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x04, 0x50, 0x69,
	0x6e, 0x67, 0x1a, 0x2a, 0x50, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x20, 0x69, 0x74, 0x73,
	0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x2a, 0x10,
	0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x70, 0x69, 0x6e, 0x67,
	0x62, 0x00, 0x12, 0xda, 0x01, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x65,
	0x73, 0x12, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x65, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x50, 0x75, 0x73, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x7f,
	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0c, 0x12, 0x0a, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x75, 0x73, 0x68,
	0x65, 0x73, 0x92, 0x41, 0x6a, 0x0a, 0x06, 0x50, 0x75, 0x73, 0x68, 0x65, 0x73, 0x12, 0x04, 0x4c,
	0x69, 0x73, 0x74, 0x1a, 0x3e, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x70, 0x75, 0x73, 0x68, 0x65, 0x73,
	0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41,
	0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60,
	0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f,
	0x6c, 0x65, 0x2e, 0x2a, 0x1a, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x76, 0x31, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x65, 0x73, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12,
	0xaf, 0x02, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x24,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50,
	0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd3, 0x01, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x0d, 0x22, 0x08, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x75, 0x73, 0x68, 0x3a, 0x01,
	0x2a, 0x92, 0x41, 0xbc, 0x01, 0x0a, 0x06, 0x50, 0x75, 0x73, 0x68, 0x65, 0x73, 0x12, 0x06, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x1a, 0x8b, 0x01, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61,
	0x20, 0x6e, 0x65, 0x77, 0x20, 0x50, 0x75, 0x73, 0x68, 0x20, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69,
	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x47,
	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x20, 0x46, 0x69, 0x72, 0x65, 0x62, 0x61, 0x73, 0x65, 0x20, 0x43,
	0x6c, 0x6f, 0x75, 0x64, 0x20, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x20, 0x28,
	0x46, 0x43, 0x4d, 0x29, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68,
	0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64,
	0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41,
	0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f,
	0x6c, 0x65, 0x2e, 0x2a, 0x1c, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x76, 0x31, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x65, 0x73, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x12, 0xda, 0x01, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x50, 0x75, 0x73, 0x68, 0x12, 0x21, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x22, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x87, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0a, 0x12, 0x08, 0x2f,
	0x76, 0x31, 0x2f, 0x70, 0x75, 0x73, 0x68, 0x92, 0x41, 0x74, 0x0a, 0x06, 0x50, 0x75, 0x73, 0x68,
	0x65, 0x73, 0x12, 0x03, 0x47, 0x65, 0x74, 0x1a, 0x4a, 0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x50,
	0x75, 0x73, 0x68, 0x20, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41,
	0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60,
	0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f,
	0x6c, 0x65, 0x2e, 0x2a, 0x19, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x76, 0x31, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x65, 0x73, 0x2e, 0x67, 0x65, 0x74, 0x12, 0xf7,
	0x01, 0x0a, 0x0a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x24, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75,
	0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9b, 0x01, 0x82, 0xd3, 0xe4,
	0x93, 0x02, 0x0d, 0x32, 0x08, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x75, 0x73, 0x68, 0x3a, 0x01, 0x2a,
	0x92, 0x41, 0x84, 0x01, 0x0a, 0x06, 0x50, 0x75, 0x73, 0x68, 0x65, 0x73, 0x12, 0x06, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x1a, 0x54, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x50,
	0x75, 0x73, 0x68, 0x20, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41,
	0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45,
	0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49,
	0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1c, 0x61, 0x70, 0x69, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x65,
	0x73, 0x2e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x8a, 0x02, 0x0a, 0x0f, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x12, 0x29, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x9f, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x22, 0x0b, 0x2f, 0x76,
	0x31, 0x2f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x85, 0x01,
	0x0a, 0x07, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x06, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x1a, 0x53, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20,
	0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c,
	0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e,
	0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72,
	0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79,
	0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1d, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x87, 0x02, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x12, 0x29, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x9c, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x32, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x61,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x82, 0x01, 0x0a, 0x07, 0x41,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x06, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x1a, 0x50,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
	0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20,
	0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49,
	0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e,
	0x2a, 0x1d, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31,
	0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12,
	0xf9, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32,
	0x12, 0x26, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56,
	0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74,
	0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x97, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0d, 0x12, 0x0b, 0x2f, 0x76, 0x31, 0x2f,
	0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x92, 0x41, 0x80, 0x01, 0x0a, 0x07, 0x41, 0x63, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x47, 0x65, 0x74, 0x20, 0x62, 0x79, 0x20, 0x4f, 0x72, 0x67,
	0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x49, 0x44, 0x1a, 0x41, 0x47, 0x65,
	0x74, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x6f,
	0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20,
	0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44,
	0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a,
	0x1a, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e,
	0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x12, 0xe4, 0x02, 0x0a, 0x1b,
	0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x42, 0x79, 0x45, 0x6e,
	0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x12, 0x35, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x42, 0x79, 0x45, 0x6e,
	0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x36, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x56, 0x32, 0x42, 0x79, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
	0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd5, 0x01, 0x82, 0xd3, 0xe4,
	0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x2f, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x62, 0x79, 0x5f,
	0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x92, 0x41, 0xa3, 0x01, 0x0a,
	0x07, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x15, 0x47, 0x65, 0x74, 0x20, 0x62, 0x79,
	0x20, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x49, 0x44, 0x1a,
	0x53, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20,
	0x62, 0x79, 0x20, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x49,
	0x44, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
	0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20,
	0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72,
	0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x2c, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x76, 0x31, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74,
	0x5f, 0x62, 0x79, 0x5f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
	0x69, 0x64, 0x12, 0xf4, 0x01, 0x0a, 0x05, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x12, 0x1f, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0xa7, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x12, 0x12, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x63,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x67, 0x65, 0x74, 0x5f, 0x6d, 0x65, 0x92, 0x41, 0x89, 0x01,
	0x0a, 0x07, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x13, 0x47, 0x65, 0x74, 0x20, 0x53,
	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x20, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x4a,
	0x47, 0x65, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20,
	0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c,
	0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e,
	0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49,
	0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1d, 0x61, 0x70, 0x69, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x5f, 0x6d, 0x65, 0x12, 0xf1, 0x01, 0x0a, 0x0e, 0x4c, 0x69,
	0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x56, 0x32, 0x12, 0x28, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x56, 0x32, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x89, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0e, 0x12, 0x0c, 0x2f, 0x76, 0x31, 0x2f,
	0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x92, 0x41, 0x72, 0x0a, 0x07, 0x41, 0x63, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x12, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x1a, 0x44, 0x47, 0x65, 0x74, 0x20,
	0x6c, 0x69, 0x73, 0x74, 0x20, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x54,
	0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c,
	0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41,
	0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e,
	0x2a, 0x1b, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31,
	0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x8f, 0x02,
	0x0a, 0x10, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e,
	0x63, 0x65, 0x12, 0x2a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65,
	0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65,
	0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa1, 0x01, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x14, 0x12, 0x12, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x72,
	0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x92, 0x41, 0x83, 0x01, 0x0a, 0x0f, 0x43, 0x6f,
	0x64, 0x65, 0x20, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x03, 0x47,
	0x65, 0x74, 0x1a, 0x47, 0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x72,
	0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c,
	0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20,
	0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50,
	0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x22, 0x61, 0x70, 0x69,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x63, 0x6f, 0x64, 0x65,
	0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x2e, 0x67, 0x65, 0x74, 0x12,
	0x98, 0x02, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65,
	0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x2c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43,
	0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x64,
	0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0xa4, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x12, 0x13, 0x2f, 0x76,
	0x31, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65,
	0x73, 0x92, 0x41, 0x85, 0x01, 0x0a, 0x0f, 0x43, 0x6f, 0x64, 0x65, 0x20, 0x52, 0x65, 0x66, 0x65,
	0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x1a, 0x47, 0x4c, 0x69,
	0x73, 0x74, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63,
	0x65, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73,
	0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61,
	0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20,
	0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x23, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72,
	0x65, 0x6e, 0x63, 0x65, 0x73, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12, 0xb4, 0x02, 0x0a, 0x13, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e,
	0x63, 0x65, 0x12, 0x2d, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x64,
	0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x2e, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65,
	0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0xbd, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x22, 0x12, 0x2f, 0x76, 0x31, 0x2f,
	0x63, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x3a, 0x01,
	0x2a, 0x92, 0x41, 0x9c, 0x01, 0x0a, 0x0f, 0x43, 0x6f, 0x64, 0x65, 0x20, 0x52, 0x65, 0x66, 0x65,
	0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x06, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x1a, 0x5a,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x63, 0x6f, 0x64,
	0x65, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x20, 0x54, 0x6f, 0x20,
	0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79,
	0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45,
	0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49,
	0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x25, 0x61, 0x70, 0x69, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x5f,
	0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x12, 0xb0, 0x02, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65,
	0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2d, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb9, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x17, 0x32, 0x12, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65,
	0x72, 0x65, 0x6e, 0x63, 0x65, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x98, 0x01, 0x0a, 0x0f, 0x43, 0x6f,
	0x64, 0x65, 0x20, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x06, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x1a, 0x56, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20,
	0x63, 0x6f, 0x64, 0x65, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x20,
	0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49,
	0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52,
	0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20,
	0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x25, 0x61,
	0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x63, 0x6f,
	0x64, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x2e, 0x75, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x12, 0xad, 0x02, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43,
	0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2d, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72,
	0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65,
	0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb6, 0x01, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x14, 0x2a, 0x12, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x72,
	0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x92, 0x41, 0x98, 0x01, 0x0a, 0x0f, 0x43, 0x6f,
	0x64, 0x65, 0x20, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x06, 0x44,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x56, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x20,
	0x63, 0x6f, 0x64, 0x65, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x20,
	0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49,
	0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52,
	0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20,
	0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x25, 0x61,
	0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x63, 0x6f,
	0x64, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x2e, 0x64, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x12, 0x86, 0x02, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x27, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x28, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e,
	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa1, 0x01, 0x82, 0xd3, 0xe4, 0x93,
	0x02, 0x10, 0x22, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x3a,
	0x01, 0x2a, 0x92, 0x41, 0x87, 0x01, 0x0a, 0x08, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73,
	0x12, 0x06, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x1a, 0x53, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x20,
	0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49,
	0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52,
	0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20,
	0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1e, 0x61,
	0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x73, 0x65,
	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0xe0, 0x01,
	0x0a, 0x0a, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x24, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e,
	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x84, 0x01, 0x82, 0xd3, 0xe4, 0x93,
	0x02, 0x0d, 0x12, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x92,
	0x41, 0x6e, 0x0a, 0x08, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x03, 0x47, 0x65,
	0x74, 0x1a, 0x40, 0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
	0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41,
	0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60,
	0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f,
	0x6c, 0x65, 0x2e, 0x2a, 0x1b, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x76, 0x31, 0x2e, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x67, 0x65, 0x74,
	0x12, 0xe9, 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
	0x73, 0x12, 0x26, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e,
	0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x87, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0e, 0x12, 0x0c, 0x2f, 0x76, 0x31,
	0x2f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x92, 0x41, 0x70, 0x0a, 0x08, 0x53, 0x65,
	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x1a, 0x40, 0x4c, 0x69,
	0x73, 0x74, 0x20, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20,
	0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79,
	0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60,
	0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1c,
	0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x73,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12, 0xff, 0x01, 0x0a,
	0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x27,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x9a, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0d, 0x2a, 0x0b, 0x2f, 0x76, 0x31, 0x2f,
	0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x92, 0x41, 0x83, 0x01, 0x0a, 0x08, 0x53, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x4f, 0x44,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x20, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
	0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50,
	0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57,
	0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60,
	0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1e,
	0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x73,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x82,
	0x02, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
	0x12, 0x27, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65,
	0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x9d, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x32, 0x0b, 0x2f, 0x76,
	0x31, 0x2f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x83, 0x01,
	0x0a, 0x08, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x06, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x1a, 0x4f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x53, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68,
	0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64,
	0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41,
	0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f,
	0x6c, 0x65, 0x2e, 0x2a, 0x1e, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x76, 0x31, 0x2e, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x12, 0xdb, 0x02, 0x0a, 0x16, 0x42, 0x75, 0x6c, 0x6b, 0x55, 0x70, 0x6c, 0x6f,
	0x61, 0x64, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x30,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x42, 0x75, 0x6c, 0x6b, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x31, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x42, 0x75, 0x6c, 0x6b, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x53,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0xdb, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x22, 0x1d, 0x2f, 0x76,
	0x31, 0x2f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x62, 0x75, 0x6c, 0x6b, 0x5f, 0x75,
	0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x3a, 0x01, 0x2a, 0x92, 0x41,
	0xaf, 0x01, 0x0a, 0x08, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x19, 0x42, 0x75,
	0x6c, 0x6b, 0x20, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e,
	0x74, 0x20, 0x55, 0x73, 0x65, 0x72, 0x73, 0x1a, 0x5d, 0x42, 0x75, 0x6c, 0x6b, 0x20, 0x75, 0x70,
	0x6c, 0x6f, 0x61, 0x64, 0x20, 0x75, 0x73, 0x65, 0x72, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20,
	0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c,
	0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e,
	0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72,
	0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79,
	0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x29, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e,
	0x62, 0x75, 0x6c, 0x6b, 0x5f, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72,
	0x73, 0x12, 0xfd, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f,
	0x67, 0x12, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f,
	0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74,
	0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x9e, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0f, 0x12, 0x0d, 0x2f, 0x76, 0x31, 0x2f, 0x61,
	0x75, 0x64, 0x69, 0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x92, 0x41, 0x85, 0x01, 0x0a, 0x0a, 0x41, 0x75,
	0x64, 0x69, 0x74, 0x20, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x0d, 0x47, 0x65, 0x74, 0x20, 0x41, 0x75,
	0x64, 0x69, 0x74, 0x20, 0x4c, 0x6f, 0x67, 0x1a, 0x49, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6e, 0x20,
	0x41, 0x75, 0x64, 0x69, 0x74, 0x20, 0x4c, 0x6f, 0x67, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x2e,
	0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50,
	0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52,
	0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c,
	0x65, 0x2e, 0x2a, 0x1d, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x76, 0x31, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x2e, 0x67, 0x65,
	0x74, 0x12, 0x80, 0x02, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c,
	0x6f, 0x67, 0x73, 0x12, 0x27, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75, 0x64, 0x69,
	0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9b, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x12,
	0x0e, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x92,
	0x41, 0x81, 0x01, 0x0a, 0x0a, 0x41, 0x75, 0x64, 0x69, 0x74, 0x20, 0x4c, 0x6f, 0x67, 0x73, 0x12,
	0x0f, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x41, 0x75, 0x64, 0x69, 0x74, 0x20, 0x4c, 0x6f, 0x67, 0x73,
	0x1a, 0x42, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x41, 0x75, 0x64, 0x69, 0x74, 0x20, 0x4c, 0x6f, 0x67,
	0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
	0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20,
	0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72,
	0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1e, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x76, 0x31, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x2e,
	0x6c, 0x69, 0x73, 0x74, 0x12, 0xa3, 0x02, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x2c, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f,
	0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xaf, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x15, 0x12, 0x13, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x68,
	0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x92, 0x41, 0x90, 0x01, 0x0a, 0x0a, 0x41, 0x75, 0x64, 0x69,
	0x74, 0x20, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x46, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x20, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x47, 0x4c, 0x69,
	0x73, 0x74, 0x20, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x48, 0x69, 0x73, 0x74, 0x6f,
	0x72, 0x79, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73,
	0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61,
	0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20,
	0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x23, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x68, 0x69,
	0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x9a, 0x02, 0x0a, 0x0e, 0x47,
	0x65, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x28, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x41,
	0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0xb2, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x12, 0x11, 0x2f, 0x76, 0x31,
	0x2f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x92, 0x41,
	0x95, 0x01, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c,
	0x65, 0x73, 0x12, 0x11, 0x47, 0x65, 0x74, 0x20, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73,
	0x20, 0x52, 0x75, 0x6c, 0x65, 0x1a, 0x4d, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x75,
	0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c, 0x65, 0x20, 0x62, 0x79, 0x20, 0x49,
	0x44, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
	0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20,
	0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72,
	0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x21, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x76, 0x31, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75,
	0x6c, 0x65, 0x73, 0x2e, 0x67, 0x65, 0x74, 0x12, 0xb8, 0x02, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x2b, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52,
	0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc7, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x16, 0x22, 0x11, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f,
	0x72, 0x75, 0x6c, 0x65, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0xa7, 0x01, 0x0a, 0x0e, 0x41, 0x75, 0x74,
	0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x20, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c,
	0x65, 0x1a, 0x59, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20,
	0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c, 0x65, 0x2e, 0x20, 0x54,
	0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c,
	0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49,
	0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41,
	0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x24, 0x61, 0x70,
	0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x61, 0x75, 0x74,
	0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x2e, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x12, 0x9d, 0x02, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x4f,
	0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x2a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75, 0x74, 0x6f,
	0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0xaf, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x12, 0x12, 0x2f, 0x76, 0x31, 0x2f, 0x61,
	0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x92, 0x41, 0x91,
	0x01, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c, 0x65,
	0x73, 0x12, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73,
	0x20, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x1a, 0x46, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x41, 0x75, 0x74,
	0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20,
	0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79,
	0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60,
	0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x22,
	0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x61,
	0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x2e, 0x6c, 0x69,
	0x73, 0x74, 0x12, 0xae, 0x02, 0x0a, 0x0f, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x75, 0x74, 0x6f, 0x4f,
	0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x29, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x41,
	0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x2a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70,
	0x73, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc3, 0x01,
	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x22, 0x16, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x75, 0x74, 0x6f,
	0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x2f, 0x73, 0x74, 0x6f, 0x70, 0x3a, 0x01,
	0x2a, 0x92, 0x41, 0x9e, 0x01, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20,
	0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x12, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x41, 0x75, 0x74, 0x6f,
	0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c, 0x65, 0x1a, 0x54, 0x53, 0x74, 0x6f, 0x70, 0x20,
	0x61, 0x6e, 0x20, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c, 0x65,
	0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41,
	0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60,
	0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e,
	0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a,
	0x22, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e,
	0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x2e, 0x73,
	0x74, 0x6f, 0x70, 0x12, 0xb2, 0x02, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x75,
	0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x2b, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc1, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x2a, 0x11, 0x2f,
	0x76, 0x31, 0x2f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65,
	0x92, 0x41, 0xa4, 0x01, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52,
	0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x41, 0x75, 0x74,
	0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c, 0x65, 0x1a, 0x56, 0x44, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52,
	0x75, 0x6c, 0x65, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69,
	0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20,
	0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44,
	0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c,
	0x65, 0x2e, 0x2a, 0x24, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x76, 0x31, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65,
	0x73, 0x2e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0xb5, 0x02, 0x0a, 0x11, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x2b,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73,
	0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x75, 0x6c,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc4, 0x01, 0x82, 0xd3, 0xe4, 0x93,
	0x02, 0x16, 0x32, 0x11, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73,
	0x5f, 0x72, 0x75, 0x6c, 0x65, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0xa4, 0x01, 0x0a, 0x0e, 0x41, 0x75,
	0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x20, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75,
	0x6c, 0x65, 0x1a, 0x56, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x75,
	0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c, 0x65, 0x2e, 0x20, 0x54, 0x6f, 0x20,
	0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79,
	0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45,
	0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49,
	0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x24, 0x61, 0x70, 0x69, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x5f,
	0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x2e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x12, 0xb7, 0x02, 0x0a, 0x0e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f,
	0x4f, 0x70, 0x73, 0x12, 0x28, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x41,
	0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x4f, 0x70, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcf, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x1e, 0x22, 0x19, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f,
	0x72, 0x75, 0x6c, 0x65, 0x2f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x92,
	0x41, 0xa7, 0x01, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75,
	0x6c, 0x65, 0x73, 0x12, 0x15, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x20, 0x41, 0x75, 0x74,
	0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x52, 0x75, 0x6c, 0x65, 0x1a, 0x57, 0x45, 0x78, 0x65, 0x63,
	0x75, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x75, 0x74, 0x6f, 0x20, 0x4f, 0x70, 0x73, 0x20,
	0x52, 0x75, 0x6c, 0x65, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68,
	0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64,
	0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41,
	0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f,
	0x6c, 0x65, 0x2e, 0x2a, 0x25, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x76, 0x31, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x72, 0x75, 0x6c,
	0x65, 0x73, 0x2e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x12, 0xeb, 0x02, 0x0a, 0x18, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65,
	0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x12, 0x32, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c,
	0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76,
	0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0xe5, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x22, 0x17, 0x2f, 0x76, 0x31, 0x2f, 0x70,
	0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f,
	0x75, 0x74, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0xbf, 0x01, 0x0a, 0x14, 0x50, 0x72, 0x6f, 0x67, 0x72,
	0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x12,
	0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73,
	0x69, 0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x1a, 0x5f, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65,
	0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x2e, 0x20, 0x54,
	0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c,
	0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49,
	0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41,
	0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x2a, 0x61, 0x70,
	0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x70, 0x72, 0x6f,
	0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74,
	0x73, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0xcc, 0x02, 0x0a, 0x15, 0x47, 0x65, 0x74,
	0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f,
	0x75, 0x74, 0x12, 0x2f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65,
	0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72,
	0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcf, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17,
	0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f,
	0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x92, 0x41, 0xac, 0x01, 0x0a, 0x14, 0x50, 0x72, 0x6f,
	0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74,
	0x73, 0x12, 0x17, 0x47, 0x65, 0x74, 0x20, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69,
	0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x1a, 0x52, 0x47, 0x65, 0x74, 0x20,
	0x61, 0x20, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52, 0x6f,
	0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x2e, 0x20, 0x54, 0x6f, 0x20,
	0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79,
	0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60,
	0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x27,
	0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x70,
	0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f,
	0x75, 0x74, 0x73, 0x2e, 0x67, 0x65, 0x74, 0x12, 0xe0, 0x02, 0x0a, 0x16, 0x53, 0x74, 0x6f, 0x70,
	0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f,
	0x75, 0x74, 0x12, 0x30, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x72, 0x6f, 0x67, 0x72,
	0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x72, 0x6f,
	0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe0, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21,
	0x32, 0x1c, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76,
	0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x2f, 0x73, 0x74, 0x6f, 0x70, 0x3a, 0x01,
	0x2a, 0x92, 0x41, 0xb5, 0x01, 0x0a, 0x14, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69,
	0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x12, 0x18, 0x53, 0x74, 0x6f,
	0x70, 0x20, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52, 0x6f,
	0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x1a, 0x59, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x61, 0x20, 0x50, 0x72,
	0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75,
	0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
	0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20,
	0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49,
	0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e,
	0x2a, 0x28, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31,
	0x2e, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c,
	0x6c, 0x6f, 0x75, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x6f, 0x70, 0x12, 0xe4, 0x02, 0x0a, 0x18, 0x44,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65,
	0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x12, 0x32, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c,
	0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76,
	0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0xde, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x2a, 0x17, 0x2f, 0x76, 0x31, 0x2f, 0x70,
	0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f,
	0x75, 0x74, 0x92, 0x41, 0xbb, 0x01, 0x0a, 0x14, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73,
	0x69, 0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x12, 0x1a, 0x44, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x20, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65,
	0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x1a, 0x5b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x20, 0x61, 0x20, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52,
	0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20,
	0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65,
	0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20,
	0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20,
	0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x2a, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76,
	0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x2e, 0x64, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x12, 0xd0, 0x02, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65,
	0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x12, 0x31, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76,
	0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x32, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73,
	0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcd, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f,
	0x76, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72,
	0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x92, 0x41, 0xa9, 0x01, 0x0a, 0x14, 0x50, 0x72, 0x6f,
	0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74,
	0x73, 0x12, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73,
	0x69, 0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x1a, 0x4c, 0x4c, 0x69,
	0x73, 0x74, 0x20, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52,
	0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c,
	0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e,
	0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49,
	0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x28, 0x61, 0x70, 0x69, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x70, 0x72, 0x6f, 0x67, 0x72,
	0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x2e,
	0x6c, 0x69, 0x73, 0x74, 0x12, 0xf5, 0x02, 0x0a, 0x19, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65,
	0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f,
	0x75, 0x74, 0x12, 0x33, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x50, 0x72,
	0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x45, 0x78, 0x65, 0x63,
	0x75, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x52, 0x6f,
	0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xec, 0x01,
	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x22, 0x1f, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x67,
	0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x2f,
	0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0xbe, 0x01, 0x0a, 0x14,
	0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c,
	0x6f, 0x75, 0x74, 0x73, 0x12, 0x1b, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x20, 0x50, 0x72,
	0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75,
	0x74, 0x1a, 0x5c, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x20, 0x61, 0x20, 0x50, 0x72, 0x6f,
	0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x20, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74,
	0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41,
	0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60,
	0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e,
	0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a,
	0x2b, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e,
	0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x6c,
	0x6f, 0x75, 0x74, 0x73, 0x2e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x12, 0xed, 0x01, 0x0a,
	0x09, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x67, 0x12, 0x23, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x67, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x94, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0c, 0x22, 0x07,
	0x2f, 0x76, 0x31, 0x2f, 0x74, 0x61, 0x67, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x7f, 0x0a, 0x04, 0x54,
	0x61, 0x67, 0x73, 0x12, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x54, 0x61, 0x67, 0x1a,
	0x4f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x54, 0x61,
	0x67, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
	0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20,
	0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49,
	0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e,
	0x2a, 0x1a, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31,
	0x2e, 0x74, 0x61, 0x67, 0x73, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0xe6, 0x01, 0x0a,
	0x09, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x67, 0x12, 0x23, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x67, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8d, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x09, 0x2a, 0x07,
	0x2f, 0x76, 0x31, 0x2f, 0x74, 0x61, 0x67, 0x92, 0x41, 0x7b, 0x0a, 0x04, 0x54, 0x61, 0x67, 0x73,
	0x12, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x54, 0x61, 0x67, 0x1a, 0x4b, 0x44, 0x65,
	0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x20, 0x54, 0x61, 0x67, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63,
	0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f,
	0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60,
	0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20,
	0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1a, 0x61, 0x70, 0x69, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x74, 0x61, 0x67, 0x73, 0x2e, 0x64,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0xd1, 0x01, 0x0a, 0x08, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61,
	0x67, 0x73, 0x12, 0x22, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x67, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54,
	0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x7c, 0x82, 0xd3, 0xe4,
	0x93, 0x02, 0x0a, 0x12, 0x08, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x61, 0x67, 0x73, 0x92, 0x41, 0x69,
	0x0a, 0x04, 0x54, 0x61, 0x67, 0x73, 0x12, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x54, 0x61, 0x67,
	0x73, 0x1a, 0x3c, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x54, 0x61, 0x67, 0x73, 0x2e, 0x20, 0x54, 0x6f,
	0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20,
	0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44,
	0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a,
	0x18, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e,
	0x74, 0x61, 0x67, 0x73, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12, 0xf6, 0x01, 0x0a, 0x0a, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9a, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0d, 0x22, 0x08,
	0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x61, 0x6d, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x83, 0x01, 0x0a,
	0x05, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x54,
	0x65, 0x61, 0x6d, 0x1a, 0x50, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65,
	0x77, 0x20, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20,
	0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65,
	0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20,
	0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20,
	0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1b, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x2e, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x12, 0xee, 0x01, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x61,
	0x6d, 0x12, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x92,
	0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0a, 0x2a, 0x08, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x61,
	0x6d, 0x92, 0x41, 0x7f, 0x0a, 0x05, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x0b, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x20, 0x54, 0x65, 0x61, 0x6d, 0x1a, 0x4c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x20, 0x61, 0x20, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c,
	0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e,
	0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72,
	0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79,
	0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1b, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x2e, 0x64, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x12, 0xda, 0x01, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x61, 0x6d,
	0x73, 0x12, 0x23, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54,
	0x65, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x81, 0x01, 0x82,
	0xd3, 0xe4, 0x93, 0x02, 0x0b, 0x12, 0x09, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x61, 0x6d, 0x73,
	0x92, 0x41, 0x6d, 0x0a, 0x05, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x0a, 0x4c, 0x69, 0x73, 0x74,
	0x20, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x1a, 0x3d, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x54, 0x65, 0x61,
	0x6d, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73,
	0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61,
	0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20,
	0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x19, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x2e, 0x6c, 0x69, 0x73, 0x74,
	0x12, 0x97, 0x02, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x2a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xac, 0x01, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x12, 0x12, 0x10, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x92, 0x41, 0x90, 0x01, 0x0a, 0x0d, 0x53, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x10, 0x47, 0x65, 0x74, 0x20, 0x53,
	0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x4b, 0x47, 0x65, 0x74,
	0x20, 0x61, 0x20, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20,
	0x62, 0x79, 0x20, 0x49, 0x44, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74,
	0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65,
	0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b,
	0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x20, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x67, 0x65, 0x74, 0x12, 0x9b, 0x02, 0x0a, 0x11, 0x4c,
	0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x12, 0x2b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xaa, 0x01, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x13, 0x12, 0x11, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x92, 0x41, 0x8d, 0x01, 0x0a, 0x0d, 0x53, 0x75, 0x62,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x4c, 0x69, 0x73, 0x74,
	0x20, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x45,
	0x4c, 0x69, 0x73, 0x74, 0x20, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73,
	0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61,
	0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20,
	0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x21, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x73, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12, 0xb6, 0x02, 0x0a, 0x12, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x2c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc2, 0x01, 0x82,
	0xd3, 0xe4, 0x93, 0x02, 0x15, 0x22, 0x10, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0xa3, 0x01, 0x0a, 0x0d,
	0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x13, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x1a, 0x58, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77,
	0x20, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x54,
	0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c,
	0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49,
	0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41,
	0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x23, 0x61, 0x70,
	0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x73, 0x75, 0x62,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x12, 0xaf, 0x02, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbb, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12, 0x2a, 0x10,
	0x2f, 0x76, 0x31, 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x92, 0x41, 0x9f, 0x01, 0x0a, 0x0d, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x73, 0x12, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x53, 0x75, 0x62, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x54, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x20, 0x61, 0x20, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
	0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50,
	0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57,
	0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60,
	0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x23,
	0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x73,
	0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x64, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x12, 0xb2, 0x02, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75,
	0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbe, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15,
	0x32, 0x10, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x9f, 0x01, 0x0a, 0x0d, 0x53, 0x75, 0x62, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x20, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x54, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68,
	0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64,
	0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41,
	0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f,
	0x6c, 0x65, 0x2e, 0x2a, 0x23, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x76, 0x31, 0x2e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x73, 0x2e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0xb3, 0x02, 0x0a, 0x11, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x12, 0x2b,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69,
	0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65,
	0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc2, 0x01, 0x82, 0xd3, 0xe4, 0x93,
	0x02, 0x15, 0x22, 0x10, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x74, 0x72, 0x69,
	0x67, 0x67, 0x65, 0x72, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0xa3, 0x01, 0x0a, 0x0d, 0x46, 0x6c, 0x61,
	0x67, 0x20, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x12, 0x13, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x20, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x1a,
	0x58, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x46, 0x6c,
	0x61, 0x67, 0x20, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63,
	0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f,
	0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60,
	0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20,
	0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x23, 0x61, 0x70, 0x69, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x74,
	0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0xac,
	0x02, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69,
	0x67, 0x67, 0x65, 0x72, 0x12, 0x2b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46,
	0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x2c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67,
	0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0xbb, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12, 0x2a, 0x10, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x6c,
	0x61, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x92, 0x41, 0x9f, 0x01, 0x0a, 0x0d,
	0x46, 0x6c, 0x61, 0x67, 0x20, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x12, 0x13, 0x44,
	0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x20, 0x54, 0x72, 0x69, 0x67, 0x67,
	0x65, 0x72, 0x1a, 0x54, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x20, 0x46, 0x6c, 0x61,
	0x67, 0x20, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61,
	0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75,
	0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20,
	0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b,
	0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x23, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x74, 0x72,
	0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x2e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0xaf, 0x02,
	0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67,
	0x67, 0x65, 0x72, 0x12, 0x2b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c,
	0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x2c, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x54,
	0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbe,
	0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x32, 0x10, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x6c, 0x61,
	0x67, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x9f, 0x01,
	0x0a, 0x0d, 0x46, 0x6c, 0x61, 0x67, 0x20, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x12,
	0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x20, 0x54, 0x72, 0x69,
	0x67, 0x67, 0x65, 0x72, 0x1a, 0x54, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x46,
	0x6c, 0x61, 0x67, 0x20, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x2e, 0x20, 0x54, 0x6f, 0x20,
	0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79,
	0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45,
	0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49,
	0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x23, 0x61, 0x70, 0x69, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x66, 0x6c, 0x61, 0x67, 0x5f,
	0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x2e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12,
	0x94, 0x02, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67,
	0x65, 0x72, 0x12, 0x28, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72,
	0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x47, 0x65, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xac, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12,
	0x12, 0x10, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67,
	0x65, 0x72, 0x92, 0x41, 0x90, 0x01, 0x0a, 0x0d, 0x46, 0x6c, 0x61, 0x67, 0x20, 0x54, 0x72, 0x69,
	0x67, 0x67, 0x65, 0x72, 0x73, 0x12, 0x10, 0x47, 0x65, 0x74, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x20,
	0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x1a, 0x4b, 0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x46,
	0x6c, 0x61, 0x67, 0x20, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x20, 0x62, 0x79, 0x20, 0x49,
	0x44, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
	0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20,
	0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72,
	0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x20, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x76, 0x31, 0x2e, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65,
	0x72, 0x73, 0x2e, 0x67, 0x65, 0x74, 0x12, 0x98, 0x02, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x46,
	0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x12, 0x2a, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x46, 0x6c, 0x61, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0xaa, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x12, 0x11, 0x2f,
	0x76, 0x31, 0x2f, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73,
	0x92, 0x41, 0x8d, 0x01, 0x0a, 0x0d, 0x46, 0x6c, 0x61, 0x67, 0x20, 0x54, 0x72, 0x69, 0x67, 0x67,
	0x65, 0x72, 0x73, 0x12, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x46, 0x6c, 0x61, 0x67, 0x20, 0x54,
	0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x1a, 0x45, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x46, 0x6c,
	0x61, 0x67, 0x20, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20,
	0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79,
	0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60,
	0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x21,
	0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x66,
	0x6c, 0x61, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x2e, 0x6c, 0x69, 0x73,
	0x74, 0x12, 0x88, 0x02, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x12, 0x27, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72,
	0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
	0x2e, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa3, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x12,
	0x0e, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x92,
	0x41, 0x89, 0x01, 0x0a, 0x0b, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73,
	0x12, 0x0e, 0x47, 0x65, 0x74, 0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x1a, 0x4a, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6e, 0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61,
	0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75,
	0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41,
	0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1e, 0x61, 0x70,
	0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x65, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x67, 0x65, 0x74, 0x12, 0x8b, 0x02, 0x0a,
	0x0f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73,
	0x12, 0x29, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa0, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x11,
	0x12, 0x0f, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x73, 0x92, 0x41, 0x85, 0x01, 0x0a, 0x0b, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x73, 0x12, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x73, 0x1a, 0x43, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x45, 0x78, 0x70, 0x65, 0x72,
	0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20,
	0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65,
	0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20,
	0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1f, 0x61, 0x70, 0x69, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12, 0xa6, 0x02, 0x0a, 0x10, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12,
	0x2a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb8, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x13, 0x22, 0x0e, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x9b, 0x01, 0x0a, 0x0b, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x45, 0x78,
	0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x1a, 0x56, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
	0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20,
	0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49,
	0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e,
	0x2a, 0x21, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31,
	0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x12, 0xa3, 0x02, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x78,
	0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x2a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45,
	0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0xb5, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x32, 0x0e, 0x2f, 0x76, 0x31, 0x2f,
	0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x98,
	0x01, 0x0a, 0x0b, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x11,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x1a, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x45, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c,
	0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e,
	0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72,
	0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79,
	0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x21, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x73, 0x2e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0xd6, 0x01, 0x0a, 0x07, 0x47, 0x65,
	0x74, 0x47, 0x6f, 0x61, 0x6c, 0x12, 0x21, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65,
	0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x6f, 0x61,
	0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74,
	0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x83, 0x01, 0x82,
	0xd3, 0xe4, 0x93, 0x02, 0x0a, 0x12, 0x08, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x6f, 0x61, 0x6c, 0x92,
	0x41, 0x70, 0x0a, 0x05, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x12, 0x08, 0x47, 0x65, 0x74, 0x20, 0x47,
	0x6f, 0x61, 0x6c, 0x1a, 0x43, 0x47, 0x65, 0x74, 0x20, 0x61, 0x20, 0x47, 0x6f, 0x61, 0x6c, 0x20,
	0x62, 0x79, 0x20, 0x49, 0x44, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74,
	0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65,
	0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b,
	0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x18, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x67, 0x6f, 0x61, 0x6c, 0x73, 0x2e, 0x67,
	0x65, 0x74, 0x12, 0xda, 0x01, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73,
	0x12, 0x23, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65,
	0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x6f,
	0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x81, 0x01, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x0b, 0x12, 0x09, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x6f, 0x61, 0x6c, 0x73, 0x92,
	0x41, 0x6d, 0x0a, 0x05, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x12, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x20,
	0x47, 0x6f, 0x61, 0x6c, 0x73, 0x1a, 0x3d, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x47, 0x6f, 0x61, 0x6c,
	0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
	0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20,
	0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72,
	0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x19, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x76, 0x31, 0x2e, 0x67, 0x6f, 0x61, 0x6c, 0x73, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12,
	0xf6, 0x01, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x12, 0x24,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47,
	0x6f, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9a, 0x01, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x0d, 0x22, 0x08, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x6f, 0x61, 0x6c, 0x3a, 0x01,
	0x2a, 0x92, 0x41, 0x83, 0x01, 0x0a, 0x05, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x12, 0x0b, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x20, 0x47, 0x6f, 0x61, 0x6c, 0x1a, 0x50, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x47, 0x6f, 0x61, 0x6c, 0x2e, 0x20, 0x54, 0x6f,
	0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20,
	0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49, 0x54,
	0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41, 0x50,
	0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1b, 0x61, 0x70, 0x69,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x67, 0x6f, 0x61, 0x6c,
	0x73, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0xee, 0x01, 0x0a, 0x0a, 0x44, 0x65, 0x6c,
	0x65, 0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x12, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e,
	0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x92, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0a, 0x2a, 0x08, 0x2f,
	0x76, 0x31, 0x2f, 0x67, 0x6f, 0x61, 0x6c, 0x92, 0x41, 0x7f, 0x0a, 0x05, 0x47, 0x6f, 0x61, 0x6c,
	0x73, 0x12, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x47, 0x6f, 0x61, 0x6c, 0x1a, 0x4c,
	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x61, 0x20, 0x47, 0x6f, 0x61, 0x6c, 0x2e, 0x20, 0x54,
	0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c,
	0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x57, 0x52, 0x49,
	0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x60, 0x20, 0x41,
	0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1b, 0x61, 0x70,
	0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x67, 0x6f, 0x61,
	0x6c, 0x73, 0x2e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0xf1, 0x01, 0x0a, 0x0a, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x12, 0x24, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x95, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0d, 0x32, 0x08,
	0x2f, 0x76, 0x31, 0x2f, 0x67, 0x6f, 0x61, 0x6c, 0x3a, 0x01, 0x2a, 0x92, 0x41, 0x7f, 0x0a, 0x05,
	0x47, 0x6f, 0x61, 0x6c, 0x73, 0x12, 0x0b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x47, 0x6f,
	0x61, 0x6c, 0x1a, 0x4c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x47, 0x6f, 0x61,
	0x6c, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
	0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20,
	0x60, 0x57, 0x52, 0x49, 0x54, 0x45, 0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x41, 0x44, 0x4d, 0x49,
	0x4e, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e,
	0x2a, 0x1b, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31,
	0x2e, 0x67, 0x6f, 0x61, 0x6c, 0x73, 0x2e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x8d, 0x03,
	0x0a, 0x1c, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x45,
	0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x36,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x78,
	0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0xfb, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x12, 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x76,
	0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2f, 0x65, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x92, 0x41, 0xc2, 0x01, 0x0a, 0x0d, 0x45, 0x76, 0x65,
	0x6e, 0x74, 0x20, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x1f, 0x47, 0x65, 0x74, 0x20,
	0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x45, 0x76, 0x61, 0x6c, 0x75,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x5d, 0x47, 0x65, 0x74,
	0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x20, 0x45, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c,
	0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e,
	0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49,
	0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x31, 0x61, 0x70, 0x69, 0x2e,
	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74,
	0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x12, 0xa3, 0x03,
	0x0a, 0x1c, 0x47, 0x65, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54,
	0x69, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x36,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x54, 0x69, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x76,
	0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x69,
	0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x91, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x12, 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x76,
	0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2f, 0x65, 0x76, 0x61, 0x6c,
	0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x69, 0x65,
	0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x92, 0x41, 0xd8, 0x01, 0x0a, 0x0d, 0x45, 0x76, 0x65,
	0x6e, 0x74, 0x20, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x1f, 0x47, 0x65, 0x74, 0x20,
	0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x54, 0x69, 0x6d, 0x65, 0x73,
	0x65, 0x72, 0x69, 0x65, 0x73, 0x20, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x68, 0x47, 0x65, 0x74,
	0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20,
	0x74, 0x69, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
	0x6e, 0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73,
	0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61,
	0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20,
	0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x3c, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x65, 0x72, 0x2e, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74,
	0x69, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e,
	0x67, 0x65, 0x74, 0x12, 0xd5, 0x02, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72,
	0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2d, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73,
	0x75, 0x6c, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47,
	0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xde, 0x01, 0x82, 0xd3, 0xe4,
	0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x92, 0x41, 0xaf, 0x01, 0x0a, 0x0d, 0x45, 0x76,
	0x65, 0x6e, 0x74, 0x20, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x15, 0x47, 0x65, 0x74,
	0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x52, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x1a, 0x53, 0x47, 0x65, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68,
	0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64,
	0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65,
	0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x32, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x12, 0xdf, 0x02, 0x0a, 0x15,
	0x4c, 0x69, 0x73, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65,
	0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x2f, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65,
	0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x78,
	0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45,
	0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe2, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x26, 0x12, 0x24, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x65, 0x72, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
	0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x92, 0x41, 0xb2, 0x01, 0x0a, 0x0d, 0x45, 0x76, 0x65,
	0x6e, 0x74, 0x20, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x17, 0x4c, 0x69, 0x73, 0x74,
	0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x52, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x73, 0x1a, 0x53, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65,
	0x73, 0x75, 0x6c, 0x74, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74,
	0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65,
	0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b,
	0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x33, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12, 0xe3, 0x02,
	0x0a, 0x16, 0x47, 0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x47,
	0x6f, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x30, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
	0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74,
	0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x43, 0x6f,
	0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x62, 0x75, 0x63,
	0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47,
	0x65, 0x74, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c,
	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe3, 0x01,
	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x29, 0x12, 0x27, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x76, 0x65, 0x6e,
	0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x92,
	0x41, 0xb0, 0x01, 0x0a, 0x0d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x20, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x65, 0x72, 0x12, 0x19, 0x47, 0x65, 0x74, 0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
	0x6e, 0x74, 0x20, 0x47, 0x6f, 0x61, 0x6c, 0x20, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x57, 0x47,
	0x65, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x67, 0x6f, 0x61, 0x6c, 0x20, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x20, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69,
	0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20,
	0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79,
	0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x2b, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e,
	0x67, 0x65, 0x74, 0x12, 0x87, 0x03, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x4f, 0x70, 0x73, 0x45, 0x76,
	0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e,
	0x74, 0x12, 0x33, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61,
	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x70, 0x73, 0x45, 0x76, 0x61, 0x6c,
	0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65,
	0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x70,
	0x73, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x43,
	0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xfe, 0x01, 0x82,
	0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x12, 0x2b, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74,
	0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2f, 0x6f, 0x70, 0x73, 0x5f, 0x65, 0x76, 0x61,
	0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x92, 0x41, 0xc7, 0x01, 0x0a, 0x0d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x20, 0x43, 0x6f,
	0x75, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x1d, 0x47, 0x65, 0x74, 0x20, 0x4f, 0x70, 0x73, 0x20, 0x45,
	0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x55, 0x73, 0x65, 0x72, 0x20, 0x43,
	0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x5b, 0x47, 0x65, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x73,
	0x65, 0x72, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x20,
	0x4f, 0x70, 0x73, 0x20, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20,
	0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49,
	0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45,
	0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65,
	0x2e, 0x2a, 0x3a, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76,
	0x31, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2e,
	0x6f, 0x70, 0x73, 0x5f, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x75,
	0x73, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x12, 0xdd, 0x02,
	0x0a, 0x13, 0x47, 0x65, 0x74, 0x4f, 0x70, 0x73, 0x47, 0x6f, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72,
	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2d, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65,
	0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x70, 0x73,
	0x47, 0x6f, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x70, 0x73, 0x47,
	0x6f, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe6, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x12, 0x25, 0x2f,
	0x76, 0x31, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72,
	0x2f, 0x6f, 0x70, 0x73, 0x5f, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x92, 0x41, 0xb5, 0x01, 0x0a, 0x0d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x20,
	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x17, 0x47, 0x65, 0x74, 0x20, 0x4f, 0x70, 0x73,
	0x20, 0x47, 0x6f, 0x61, 0x6c, 0x20, 0x55, 0x73, 0x65, 0x72, 0x20, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x1a, 0x55, 0x47, 0x65, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x73, 0x65, 0x72, 0x20, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x20, 0x4f, 0x70, 0x73, 0x20,
	0x47, 0x6f, 0x61, 0x6c, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68,
	0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64,
	0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65,
	0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x34, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74,
	0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x67, 0x65, 0x74, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x67, 0x6f,
	0x61, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0xa4, 0x02,
	0x0a, 0x10, 0x47, 0x65, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
	0x56, 0x32, 0x12, 0x2a, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67,
	0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f,
	0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
	0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb6, 0x01, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f,
	0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f,
	0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x92, 0x41, 0x8b, 0x01, 0x0a, 0x0b, 0x45, 0x6e, 0x76, 0x69, 0x72,
	0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x0f, 0x47, 0x65, 0x74, 0x20, 0x45, 0x6e, 0x76, 0x69,
	0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x1a, 0x4b, 0x47, 0x65, 0x74, 0x20, 0x61, 0x6e, 0x20,
	0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x62, 0x79, 0x20, 0x49,
	0x44, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
	0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20,
	0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72,
	0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1e, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
	0x79, 0x2e, 0x76, 0x31, 0x2e, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
	0x2e, 0x67, 0x65, 0x74, 0x12, 0xa8, 0x02, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x76,
	0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x56, 0x32, 0x12, 0x2c, 0x2e, 0x62, 0x75,
	0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73,
	0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x62, 0x75, 0x63, 0x6b,
	0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x56, 0x32,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb4, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x23, 0x12, 0x21, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65,
	0x6e, 0x74, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
	0x65, 0x6e, 0x74, 0x73, 0x92, 0x41, 0x87, 0x01, 0x0a, 0x0b, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f,
	0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x45, 0x6e, 0x76, 0x69,
	0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x45,
	0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20,
	0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79,
	0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60,
	0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1f,
	0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x65,
	0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x12,
	0xfc, 0x01, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x24,
	0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72,
	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a,
	0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa0, 0x01, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x1d, 0x12, 0x1b, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f,
	0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x92, 0x41, 0x7a, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x0b, 0x47,
	0x65, 0x74, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x1a, 0x46, 0x47, 0x65, 0x74, 0x20,
	0x61, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x2e,
	0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x41, 0x50,
	0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61, 0x20, 0x60, 0x52,
	0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x72, 0x6f, 0x6c,
	0x65, 0x2e, 0x2a, 0x1a, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
	0x76, 0x31, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x12, 0x81,
	0x02, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12,
	0x26, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65,
	0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
	0x65, 0x65, 0x72, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x9f, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x76, 0x31, 0x2f, 0x65,
	0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x5f,
	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x92, 0x41, 0x77, 0x0a, 0x07, 0x50, 0x72, 0x6f,
	0x6a, 0x65, 0x63, 0x74, 0x12, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65,
	0x63, 0x74, 0x73, 0x1a, 0x40, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x73, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x69, 0x73,
	0x20, 0x41, 0x50, 0x49, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x61,
	0x20, 0x60, 0x52, 0x45, 0x41, 0x44, 0x60, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20,
	0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x2a, 0x1b, 0x61, 0x70, 0x69, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x6c, 0x69,
	0x73, 0x74, 0x42, 0x87, 0x06, 0x5a, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f,
	0x6d, 0x2f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2d, 0x69, 0x6f, 0x2f, 0x62,
	0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x2f, 0x76, 0x32, 0x2f, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x2f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x92, 0x41, 0xcf, 0x05, 0x12, 0x20, 0x0a,
	0x19, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x65, 0x72, 0x20, 0x47, 0x61, 0x74, 0x65, 0x77,
	0x61, 0x79, 0x20, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x32, 0x03, 0x31, 0x2e, 0x30, 0x1a,
	0x08, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x2a, 0x01, 0x02, 0x32, 0x10, 0x61, 0x70,
	0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6a, 0x73, 0x6f, 0x6e, 0x3a, 0x10,
	0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6a, 0x73, 0x6f, 0x6e,
	0x52, 0xb4, 0x01, 0x0a, 0x03, 0x34, 0x30, 0x30, 0x12, 0xac, 0x01, 0x0a, 0x3a, 0x52, 0x65, 0x74,
	0x75, 0x72, 0x6e, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x62, 0x61, 0x64, 0x20, 0x72, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6d, 0x61, 0x79, 0x20,
	0x68, 0x61, 0x76, 0x65, 0x20, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x20, 0x76, 0x61, 0x6c, 0x69,
	0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f,
	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22,
	0x56, 0x0a, 0x10, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6a,
	0x73, 0x6f, 0x6e, 0x12, 0x42, 0x7b, 0x20, 0x22, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x3a, 0x20, 0x33,
	0x2c, 0x20, 0x22, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x3a, 0x20, 0x22, 0x69, 0x6e,
	0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, 0x61, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x2c, 0x20, 0x22, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
	0x22, 0x3a, 0x20, 0x5b, 0x5d, 0x20, 0x7d, 0x52, 0xb2, 0x01, 0x0a, 0x03, 0x34, 0x30, 0x31, 0x12,
	0xaa, 0x01, 0x0a, 0x3d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x20, 0x63, 0x6f, 0x75, 0x6c,
	0x64, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x62, 0x65, 0x20, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74,
	0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x20, 0x28, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69,
	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x29,
	0x2e, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x51, 0x0a, 0x10, 0x61, 0x70, 0x70,
	0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6a, 0x73, 0x6f, 0x6e, 0x12, 0x3d, 0x7b,
	0x20, 0x22, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x3a, 0x20, 0x31, 0x36, 0x2c, 0x20, 0x22, 0x6d, 0x65,
	0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x3a, 0x20, 0x22, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x75, 0x74,
	0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x22, 0x2c, 0x20, 0x22, 0x64, 0x65,
	0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x3a, 0x20, 0x5b, 0x5d, 0x20, 0x7d, 0x52, 0xa9, 0x01, 0x0a,
	0x03, 0x34, 0x30, 0x33, 0x12, 0xa1, 0x01, 0x0a, 0x38, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x20, 0x64, 0x6f, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x70,
	0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x2e, 0x12, 0x16, 0x0a, 0x14, 0x1a, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x4d, 0x0a, 0x10, 0x61, 0x70, 0x70,
	0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6a, 0x73, 0x6f, 0x6e, 0x12, 0x39, 0x7b,
	0x20, 0x22, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x3a, 0x20, 0x37, 0x2c, 0x20, 0x22, 0x6d, 0x65, 0x73,
	0x73, 0x61, 0x67, 0x65, 0x22, 0x3a, 0x20, 0x22, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x75, 0x74, 0x68,
	0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x22, 0x2c, 0x20, 0x22, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x73, 0x22, 0x3a, 0x20, 0x5b, 0x5d, 0x20, 0x7d, 0x5a, 0x50, 0x0a, 0x4e, 0x0a, 0x0a, 0x41, 0x70,
	0x69, 0x4b, 0x65, 0x79, 0x41, 0x75, 0x74, 0x68, 0x12, 0x40, 0x08, 0x02, 0x12, 0x2b, 0x54, 0x68,
	0x65, 0x20, 0x41, 0x50, 0x49, 0x20, 0x4b, 0x65, 0x79, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
	0x74, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x41, 0x64, 0x6d, 0x69, 0x6e,
	0x20, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x1a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x6f,
	0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x02, 0x62, 0x10, 0x0a, 0x0e, 0x0a, 0x0a,
	0x41, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x41, 0x75, 0x74, 0x68, 0x12, 0x00, 0x62, 0x06, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_proto_gateway_service_proto_rawDescOnce sync.Once
	file_proto_gateway_service_proto_rawDescData = file_proto_gateway_service_proto_rawDesc
)

func file_proto_gateway_service_proto_rawDescGZIP() []byte {
	file_proto_gateway_service_proto_rawDescOnce.Do(func() {
		file_proto_gateway_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_proto_gateway_service_proto_rawDescData)
	})
	return file_proto_gateway_service_proto_rawDescData
}

var file_proto_gateway_service_proto_msgTypes = make([]protoimpl.MessageInfo, 174)
var file_proto_gateway_service_proto_goTypes = []interface{}{
	(*PingRequest)(nil),                                             // 0: bucketeer.gateway.PingRequest
	(*PingResponse)(nil),                                            // 1: bucketeer.gateway.PingResponse
	(*GetFeatureFlagsRequest)(nil),                                  // 2: bucketeer.gateway.GetFeatureFlagsRequest
	(*GetFeatureFlagsResponse)(nil),                                 // 3: bucketeer.gateway.GetFeatureFlagsResponse
	(*GetSegmentUsersRequest)(nil),                                  // 4: bucketeer.gateway.GetSegmentUsersRequest
	(*GetSegmentUsersResponse)(nil),                                 // 5: bucketeer.gateway.GetSegmentUsersResponse
	(*GetEvaluationsRequest)(nil),                                   // 6: bucketeer.gateway.GetEvaluationsRequest
	(*GetEvaluationsResponse)(nil),                                  // 7: bucketeer.gateway.GetEvaluationsResponse
	(*GetEvaluationRequest)(nil),                                    // 8: bucketeer.gateway.GetEvaluationRequest
	(*GetEvaluationResponse)(nil),                                   // 9: bucketeer.gateway.GetEvaluationResponse
	(*RegisterEventsRequest)(nil),                                   // 10: bucketeer.gateway.RegisterEventsRequest
	(*RegisterEventsResponse)(nil),                                  // 11: bucketeer.gateway.RegisterEventsResponse
	(*TrackRequest)(nil),                                            // 12: bucketeer.gateway.TrackRequest
	(*TrackResponse)(nil),                                           // 13: bucketeer.gateway.TrackResponse
	(*DebugEvaluateFeaturesRequest)(nil),                            // 14: bucketeer.gateway.DebugEvaluateFeaturesRequest
	(*DebugEvaluateFeaturesResponse)(nil),                           // 15: bucketeer.gateway.DebugEvaluateFeaturesResponse
	(*CreateFeatureRequest)(nil),                                    // 16: bucketeer.gateway.CreateFeatureRequest
	(*CreateFeatureResponse)(nil),                                   // 17: bucketeer.gateway.CreateFeatureResponse
	(*GetFeatureRequest)(nil),                                       // 18: bucketeer.gateway.GetFeatureRequest
	(*GetFeatureResponse)(nil),                                      // 19: bucketeer.gateway.GetFeatureResponse
	(*ListFeaturesRequest)(nil),                                     // 20: bucketeer.gateway.ListFeaturesRequest
	(*ListFeaturesResponse)(nil),                                    // 21: bucketeer.gateway.ListFeaturesResponse
	(*UpdateFeatureRequest)(nil),                                    // 22: bucketeer.gateway.UpdateFeatureRequest
	(*UpdateFeatureResponse)(nil),                                   // 23: bucketeer.gateway.UpdateFeatureResponse
	(*ListPushesRequest)(nil),                                       // 24: bucketeer.gateway.ListPushesRequest
	(*ListPushesResponse)(nil),                                      // 25: bucketeer.gateway.ListPushesResponse
	(*CreatePushRequest)(nil),                                       // 26: bucketeer.gateway.CreatePushRequest
	(*CreatePushResponse)(nil),                                      // 27: bucketeer.gateway.CreatePushResponse
	(*GetPushRequest)(nil),                                          // 28: bucketeer.gateway.GetPushRequest
	(*GetPushResponse)(nil),                                         // 29: bucketeer.gateway.GetPushResponse
	(*UpdatePushRequest)(nil),                                       // 30: bucketeer.gateway.UpdatePushRequest
	(*UpdatePushResponse)(nil),                                      // 31: bucketeer.gateway.UpdatePushResponse
	(*CreateAccountV2Request)(nil),                                  // 32: bucketeer.gateway.CreateAccountV2Request
	(*CreateAccountV2Response)(nil),                                 // 33: bucketeer.gateway.CreateAccountV2Response
	(*UpdateAccountV2Request)(nil),                                  // 34: bucketeer.gateway.UpdateAccountV2Request
	(*UpdateAccountV2Response)(nil),                                 // 35: bucketeer.gateway.UpdateAccountV2Response
	(*GetAccountV2Request)(nil),                                     // 36: bucketeer.gateway.GetAccountV2Request
	(*GetAccountV2Response)(nil),                                    // 37: bucketeer.gateway.GetAccountV2Response
	(*GetAccountV2ByEnvironmentIDRequest)(nil),                      // 38: bucketeer.gateway.GetAccountV2ByEnvironmentIDRequest
	(*GetAccountV2ByEnvironmentIDResponse)(nil),                     // 39: bucketeer.gateway.GetAccountV2ByEnvironmentIDResponse
	(*GetMeRequest)(nil),                                            // 40: bucketeer.gateway.GetMeRequest
	(*GetMeResponse)(nil),                                           // 41: bucketeer.gateway.GetMeResponse
	(*ListAccountsV2Request)(nil),                                   // 42: bucketeer.gateway.ListAccountsV2Request
	(*ListAccountsV2Response)(nil),                                  // 43: bucketeer.gateway.ListAccountsV2Response
	(*GetCodeReferenceRequest)(nil),                                 // 44: bucketeer.gateway.GetCodeReferenceRequest
	(*GetCodeReferenceResponse)(nil),                                // 45: bucketeer.gateway.GetCodeReferenceResponse
	(*ListCodeReferencesRequest)(nil),                               // 46: bucketeer.gateway.ListCodeReferencesRequest
	(*ListCodeReferencesResponse)(nil),                              // 47: bucketeer.gateway.ListCodeReferencesResponse
	(*CreateCodeReferenceRequest)(nil),                              // 48: bucketeer.gateway.CreateCodeReferenceRequest
	(*CreateCodeReferenceResponse)(nil),                             // 49: bucketeer.gateway.CreateCodeReferenceResponse
	(*UpdateCodeReferenceRequest)(nil),                              // 50: bucketeer.gateway.UpdateCodeReferenceRequest
	(*UpdateCodeReferenceResponse)(nil),                             // 51: bucketeer.gateway.UpdateCodeReferenceResponse
	(*DeleteCodeReferenceRequest)(nil),                              // 52: bucketeer.gateway.DeleteCodeReferenceRequest
	(*DeleteCodeReferenceResponse)(nil),                             // 53: bucketeer.gateway.DeleteCodeReferenceResponse
	(*CreateSegmentRequest)(nil),                                    // 54: bucketeer.gateway.CreateSegmentRequest
	(*CreateSegmentResponse)(nil),                                   // 55: bucketeer.gateway.CreateSegmentResponse
	(*GetSegmentRequest)(nil),                                       // 56: bucketeer.gateway.GetSegmentRequest
	(*GetSegmentResponse)(nil),                                      // 57: bucketeer.gateway.GetSegmentResponse
	(*ListSegmentsRequest)(nil),                                     // 58: bucketeer.gateway.ListSegmentsRequest
	(*ListSegmentsResponse)(nil),                                    // 59: bucketeer.gateway.ListSegmentsResponse
	(*DeleteSegmentRequest)(nil),                                    // 60: bucketeer.gateway.DeleteSegmentRequest
	(*DeleteSegmentResponse)(nil),                                   // 61: bucketeer.gateway.DeleteSegmentResponse
	(*UpdateSegmentRequest)(nil),                                    // 62: bucketeer.gateway.UpdateSegmentRequest
	(*UpdateSegmentResponse)(nil),                                   // 63: bucketeer.gateway.UpdateSegmentResponse
	(*BulkUploadSegmentUsersRequest)(nil),                           // 64: bucketeer.gateway.BulkUploadSegmentUsersRequest
	(*BulkUploadSegmentUsersResponse)(nil),                          // 65: bucketeer.gateway.BulkUploadSegmentUsersResponse
	(*GetAuditLogRequest)(nil),                                      // 66: bucketeer.gateway.GetAuditLogRequest
	(*GetAuditLogResponse)(nil),                                     // 67: bucketeer.gateway.GetAuditLogResponse
	(*ListAuditLogsRequest)(nil),                                    // 68: bucketeer.gateway.ListAuditLogsRequest
	(*ListAuditLogsResponse)(nil),                                   // 69: bucketeer.gateway.ListAuditLogsResponse
	(*ListFeatureHistoryRequest)(nil),                               // 70: bucketeer.gateway.ListFeatureHistoryRequest
	(*ListFeatureHistoryResponse)(nil),                              // 71: bucketeer.gateway.ListFeatureHistoryResponse
	(*GetAutoOpsRuleRequest)(nil),                                   // 72: bucketeer.gateway.GetAutoOpsRuleRequest
	(*GetAutoOpsRuleResponse)(nil),                                  // 73: bucketeer.gateway.GetAutoOpsRuleResponse
	(*CreateAutoOpsRuleRequest)(nil),                                // 74: bucketeer.gateway.CreateAutoOpsRuleRequest
	(*CreateAutoOpsRuleResponse)(nil),                               // 75: bucketeer.gateway.CreateAutoOpsRuleResponse
	(*ListAutoOpsRulesRequest)(nil),                                 // 76: bucketeer.gateway.ListAutoOpsRulesRequest
	(*ListAutoOpsRulesResponse)(nil),                                // 77: bucketeer.gateway.ListAutoOpsRulesResponse
	(*StopAutoOpsRuleRequest)(nil),                                  // 78: bucketeer.gateway.StopAutoOpsRuleRequest
	(*StopAutoOpsRuleResponse)(nil),                                 // 79: bucketeer.gateway.StopAutoOpsRuleResponse
	(*DeleteAutoOpsRuleRequest)(nil),                                // 80: bucketeer.gateway.DeleteAutoOpsRuleRequest
	(*DeleteAutoOpsRuleResponse)(nil),                               // 81: bucketeer.gateway.DeleteAutoOpsRuleResponse
	(*UpdateAutoOpsRuleRequest)(nil),                                // 82: bucketeer.gateway.UpdateAutoOpsRuleRequest
	(*UpdateAutoOpsRuleResponse)(nil),                               // 83: bucketeer.gateway.UpdateAutoOpsRuleResponse
	(*ExecuteAutoOpsRequest)(nil),                                   // 84: bucketeer.gateway.ExecuteAutoOpsRequest
	(*ExecuteAutoOpsResponse)(nil),                                  // 85: bucketeer.gateway.ExecuteAutoOpsResponse
	(*CreateProgressiveRolloutRequest)(nil),                         // 86: bucketeer.gateway.CreateProgressiveRolloutRequest
	(*CreateProgressiveRolloutResponse)(nil),                        // 87: bucketeer.gateway.CreateProgressiveRolloutResponse
	(*GetProgressiveRolloutRequest)(nil),                            // 88: bucketeer.gateway.GetProgressiveRolloutRequest
	(*GetProgressiveRolloutResponse)(nil),                           // 89: bucketeer.gateway.GetProgressiveRolloutResponse
	(*StopProgressiveRolloutRequest)(nil),                           // 90: bucketeer.gateway.StopProgressiveRolloutRequest
	(*StopProgressiveRolloutResponse)(nil),                          // 91: bucketeer.gateway.StopProgressiveRolloutResponse
	(*DeleteProgressiveRolloutRequest)(nil),                         // 92: bucketeer.gateway.DeleteProgressiveRolloutRequest
	(*DeleteProgressiveRolloutResponse)(nil),                        // 93: bucketeer.gateway.DeleteProgressiveRolloutResponse
	(*ListProgressiveRolloutsRequest)(nil),                          // 94: bucketeer.gateway.ListProgressiveRolloutsRequest
	(*ListProgressiveRolloutsResponse)(nil),                         // 95: bucketeer.gateway.ListProgressiveRolloutsResponse
	(*ExecuteProgressiveRolloutRequest)(nil),                        // 96: bucketeer.gateway.ExecuteProgressiveRolloutRequest
	(*ExecuteProgressiveRolloutResponse)(nil),                       // 97: bucketeer.gateway.ExecuteProgressiveRolloutResponse
	(*CreateTagRequest)(nil),                                        // 98: bucketeer.gateway.CreateTagRequest
	(*CreateTagResponse)(nil),                                       // 99: bucketeer.gateway.CreateTagResponse
	(*DeleteTagRequest)(nil),                                        // 100: bucketeer.gateway.DeleteTagRequest
	(*DeleteTagResponse)(nil),                                       // 101: bucketeer.gateway.DeleteTagResponse
	(*ListTagsRequest)(nil),                                         // 102: bucketeer.gateway.ListTagsRequest
	(*ListTagsResponse)(nil),                                        // 103: bucketeer.gateway.ListTagsResponse
	(*CreateTeamRequest)(nil),                                       // 104: bucketeer.gateway.CreateTeamRequest
	(*CreateTeamResponse)(nil),                                      // 105: bucketeer.gateway.CreateTeamResponse
	(*DeleteTeamRequest)(nil),                                       // 106: bucketeer.gateway.DeleteTeamRequest
	(*DeleteTeamResponse)(nil),                                      // 107: bucketeer.gateway.DeleteTeamResponse
	(*ListTeamsRequest)(nil),                                        // 108: bucketeer.gateway.ListTeamsRequest
	(*ListTeamsResponse)(nil),                                       // 109: bucketeer.gateway.ListTeamsResponse
	(*GetSubscriptionRequest)(nil),                                  // 110: bucketeer.gateway.GetSubscriptionRequest
	(*GetSubscriptionResponse)(nil),                                 // 111: bucketeer.gateway.GetSubscriptionResponse
	(*ListSubscriptionsRequest)(nil),                                // 112: bucketeer.gateway.ListSubscriptionsRequest
	(*ListSubscriptionsResponse)(nil),                               // 113: bucketeer.gateway.ListSubscriptionsResponse
	(*CreateSubscriptionRequest)(nil),                               // 114: bucketeer.gateway.CreateSubscriptionRequest
	(*CreateSubscriptionResponse)(nil),                              // 115: bucketeer.gateway.CreateSubscriptionResponse
	(*DeleteSubscriptionRequest)(nil),                               // 116: bucketeer.gateway.DeleteSubscriptionRequest
	(*DeleteSubscriptionResponse)(nil),                              // 117: bucketeer.gateway.DeleteSubscriptionResponse
	(*UpdateSubscriptionRequest)(nil),                               // 118: bucketeer.gateway.UpdateSubscriptionRequest
	(*UpdateSubscriptionResponse)(nil),                              // 119: bucketeer.gateway.UpdateSubscriptionResponse
	(*CreateFlagTriggerRequest)(nil),                                // 120: bucketeer.gateway.CreateFlagTriggerRequest
	(*CreateFlagTriggerResponse)(nil),                               // 121: bucketeer.gateway.CreateFlagTriggerResponse
	(*DeleteFlagTriggerRequest)(nil),                                // 122: bucketeer.gateway.DeleteFlagTriggerRequest
	(*DeleteFlagTriggerResponse)(nil),                               // 123: bucketeer.gateway.DeleteFlagTriggerResponse
	(*UpdateFlagTriggerRequest)(nil),                                // 124: bucketeer.gateway.UpdateFlagTriggerRequest
	(*UpdateFlagTriggerResponse)(nil),                               // 125: bucketeer.gateway.UpdateFlagTriggerResponse
	(*GetFlagTriggerRequest)(nil),                                   // 126: bucketeer.gateway.GetFlagTriggerRequest
	(*GetFlagTriggerResponse)(nil),                                  // 127: bucketeer.gateway.GetFlagTriggerResponse
	(*ListFlagTriggersRequest)(nil),                                 // 128: bucketeer.gateway.ListFlagTriggersRequest
	(*ListFlagTriggersResponse)(nil),                                // 129: bucketeer.gateway.ListFlagTriggersResponse
	(*GetGoalRequest)(nil),                                          // 130: bucketeer.gateway.GetGoalRequest
	(*GetGoalResponse)(nil),                                         // 131: bucketeer.gateway.GetGoalResponse
	(*ListGoalsRequest)(nil),                                        // 132: bucketeer.gateway.ListGoalsRequest
	(*ListGoalsResponse)(nil),                                       // 133: bucketeer.gateway.ListGoalsResponse
	(*CreateGoalRequest)(nil),                                       // 134: bucketeer.gateway.CreateGoalRequest
	(*CreateGoalResponse)(nil),                                      // 135: bucketeer.gateway.CreateGoalResponse
	(*DeleteGoalRequest)(nil),                                       // 136: bucketeer.gateway.DeleteGoalRequest
	(*DeleteGoalResponse)(nil),                                      // 137: bucketeer.gateway.DeleteGoalResponse
	(*UpdateGoalRequest)(nil),                                       // 138: bucketeer.gateway.UpdateGoalRequest
	(*UpdateGoalResponse)(nil),                                      // 139: bucketeer.gateway.UpdateGoalResponse
	(*GetExperimentRequest)(nil),                                    // 140: bucketeer.gateway.GetExperimentRequest
	(*GetExperimentResponse)(nil),                                   // 141: bucketeer.gateway.GetExperimentResponse
	(*ListExperimentsRequest)(nil),                                  // 142: bucketeer.gateway.ListExperimentsRequest
	(*ListExperimentsResponse)(nil),                                 // 143: bucketeer.gateway.ListExperimentsResponse
	(*CreateExperimentRequest)(nil),                                 // 144: bucketeer.gateway.CreateExperimentRequest
	(*CreateExperimentResponse)(nil),                                // 145: bucketeer.gateway.CreateExperimentResponse
	(*UpdateExperimentRequest)(nil),                                 // 146: bucketeer.gateway.UpdateExperimentRequest
	(*UpdateExperimentResponse)(nil),                                // 147: bucketeer.gateway.UpdateExperimentResponse
	(*GetExperimentEvaluationCountRequest)(nil),                     // 148: bucketeer.gateway.GetExperimentEvaluationCountRequest
	(*GetExperimentEvaluationCountResponse)(nil),                    // 149: bucketeer.gateway.GetExperimentEvaluationCountResponse
	(*GetEvaluationTimeseriesCountRequest)(nil),                     // 150: bucketeer.gateway.GetEvaluationTimeseriesCountRequest
	(*GetEvaluationTimeseriesCountResponse)(nil),                    // 151: bucketeer.gateway.GetEvaluationTimeseriesCountResponse
	(*GetExperimentResultRequest)(nil),                              // 152: bucketeer.gateway.GetExperimentResultRequest
	(*GetExperimentResultResponse)(nil),                             // 153: bucketeer.gateway.GetExperimentResultResponse
	(*ListExperimentResultsRequest)(nil),                            // 154: bucketeer.gateway.ListExperimentResultsRequest
	(*ListExperimentResultsResponse)(nil),                           // 155: bucketeer.gateway.ListExperimentResultsResponse
	(*GetExperimentGoalCountRequest)(nil),                           // 156: bucketeer.gateway.GetExperimentGoalCountRequest
	(*GetExperimentGoalCountResponse)(nil),                          // 157: bucketeer.gateway.GetExperimentGoalCountResponse
	(*GetOpsEvaluationUserCountRequest)(nil),                        // 158: bucketeer.gateway.GetOpsEvaluationUserCountRequest
	(*GetOpsEvaluationUserCountResponse)(nil),                       // 159: bucketeer.gateway.GetOpsEvaluationUserCountResponse
	(*GetOpsGoalUserCountRequest)(nil),                              // 160: bucketeer.gateway.GetOpsGoalUserCountRequest
	(*GetOpsGoalUserCountResponse)(nil),                             // 161: bucketeer.gateway.GetOpsGoalUserCountResponse
	(*GetEnvironmentV2Request)(nil),                                 // 162: bucketeer.gateway.GetEnvironmentV2Request
	(*GetEnvironmentV2Response)(nil),                                // 163: bucketeer.gateway.GetEnvironmentV2Response
	(*ListEnvironmentsV2Request)(nil),                               // 164: bucketeer.gateway.ListEnvironmentsV2Request
	(*ListEnvironmentsV2Response)(nil),                              // 165: bucketeer.gateway.ListEnvironmentsV2Response
	(*GetProjectRequest)(nil),                                       // 166: bucketeer.gateway.GetProjectRequest
	(*GetProjectResponse)(nil),                                      // 167: bucketeer.gateway.GetProjectResponse
	(*ListProjectsRequest)(nil),                                     // 168: bucketeer.gateway.ListProjectsRequest
	(*ListProjectsResponse)(nil),                                    // 169: bucketeer.gateway.ListProjectsResponse
	(*GetEvaluationsRequest_UserEvaluationCondition)(nil),           // 170: bucketeer.gateway.GetEvaluationsRequest.UserEvaluationCondition
	(*RegisterEventsResponse_Error)(nil),                            // 171: bucketeer.gateway.RegisterEventsResponse.Error
	nil,                                                             // 172: bucketeer.gateway.RegisterEventsResponse.ErrorsEntry
	nil,                                                             // 173: bucketeer.gateway.ListExperimentResultsResponse.ResultsEntry
	(client.SourceId)(0),                                            // 174: bucketeer.event.client.SourceId
	(*feature.Feature)(nil),                                         // 175: bucketeer.feature.Feature
	(*feature.SegmentUsers)(nil),                                    // 176: bucketeer.feature.SegmentUsers
	(*user.User)(nil),                                               // 177: bucketeer.user.User
	(feature.UserEvaluations_State)(0),                              // 178: bucketeer.feature.UserEvaluations.State
	(*feature.UserEvaluations)(nil),                                 // 179: bucketeer.feature.UserEvaluations
	(*feature.Evaluation)(nil),                                      // 180: bucketeer.feature.Evaluation
	(*client.Event)(nil),                                            // 181: bucketeer.event.client.Event
	(feature.Feature_VariationType)(0),                              // 182: bucketeer.feature.Feature.VariationType
	(*feature.Variation)(nil),                                       // 183: bucketeer.feature.Variation
	(*wrapperspb.Int32Value)(nil),                                   // 184: google.protobuf.Int32Value
	(feature.ListFeaturesRequest_OrderBy)(0),                        // 185: bucketeer.feature.ListFeaturesRequest.OrderBy
	(feature.ListFeaturesRequest_OrderDirection)(0),                 // 186: bucketeer.feature.ListFeaturesRequest.OrderDirection
	(*wrapperspb.StringValue)(nil),                                  // 187: google.protobuf.StringValue
	(*common.StringListValue)(nil),                                  // 188: bucketeer.common.StringListValue
	(*wrapperspb.BoolValue)(nil),                                    // 189: google.protobuf.BoolValue
	(*feature.Strategy)(nil),                                        // 190: bucketeer.feature.Strategy
	(*feature.VariationChange)(nil),                                 // 191: bucketeer.feature.VariationChange
	(*feature.RuleChange)(nil),                                      // 192: bucketeer.feature.RuleChange
	(*feature.PrerequisiteChange)(nil),                              // 193: bucketeer.feature.PrerequisiteChange
	(*feature.TargetChange)(nil),                                    // 194: bucketeer.feature.TargetChange
	(*feature.TagChange)(nil),                                       // 195: bucketeer.feature.TagChange
	(push.ListPushesRequest_OrderBy)(0),                             // 196: bucketeer.push.ListPushesRequest.OrderBy
	(push.ListPushesRequest_OrderDirection)(0),                      // 197: bucketeer.push.ListPushesRequest.OrderDirection
	(*push.Push)(nil),                                               // 198: bucketeer.push.Push
	(account.AccountV2_Role_Organization)(0),                        // 199: bucketeer.account.AccountV2.Role.Organization
	(*account.AccountV2_EnvironmentRole)(nil),                       // 200: bucketeer.account.AccountV2.EnvironmentRole
	(*account.AccountV2)(nil),                                       // 201: bucketeer.account.AccountV2
	(*account.UpdateAccountV2Request_OrganizationRoleValue)(nil),    // 202: bucketeer.account.UpdateAccountV2Request.OrganizationRoleValue
	(*wrapperspb.Int64Value)(nil),                                   // 203: google.protobuf.Int64Value
	(*account.UpdateAccountV2Request_AccountV2Avatar)(nil),          // 204: bucketeer.account.UpdateAccountV2Request.AccountV2Avatar
	(*account.ConsoleAccount)(nil),                                  // 205: bucketeer.account.ConsoleAccount
	(account.ListAccountsV2Request_OrderBy)(0),                      // 206: bucketeer.account.ListAccountsV2Request.OrderBy
	(account.ListAccountsV2Request_OrderDirection)(0),               // 207: bucketeer.account.ListAccountsV2Request.OrderDirection
	(*coderef.CodeReference)(nil),                                   // 208: bucketeer.coderef.CodeReference
	(coderef.ListCodeReferencesRequest_OrderBy)(0),                  // 209: bucketeer.coderef.ListCodeReferencesRequest.OrderBy
	(coderef.ListCodeReferencesRequest_OrderDirection)(0),           // 210: bucketeer.coderef.ListCodeReferencesRequest.OrderDirection
	(coderef.CodeReference_RepositoryType)(0),                       // 211: bucketeer.coderef.CodeReference.RepositoryType
	(*feature.Segment)(nil),                                         // 212: bucketeer.feature.Segment
	(feature.ListSegmentsRequest_OrderBy)(0),                        // 213: bucketeer.feature.ListSegmentsRequest.OrderBy
	(feature.ListSegmentsRequest_OrderDirection)(0),                 // 214: bucketeer.feature.ListSegmentsRequest.OrderDirection
	(feature.SegmentUser_State)(0),                                  // 215: bucketeer.feature.SegmentUser.State
	(*auditlog.AuditLog)(nil),                                       // 216: bucketeer.auditlog.AuditLog
	(auditlog.ListAuditLogsRequest_OrderBy)(0),                      // 217: bucketeer.auditlog.ListAuditLogsRequest.OrderBy
	(auditlog.ListAuditLogsRequest_OrderDirection)(0),               // 218: bucketeer.auditlog.ListAuditLogsRequest.OrderDirection
	(auditlog.ListFeatureHistoryRequest_OrderBy)(0),                 // 219: bucketeer.auditlog.ListFeatureHistoryRequest.OrderBy
	(auditlog.ListFeatureHistoryRequest_OrderDirection)(0),          // 220: bucketeer.auditlog.ListFeatureHistoryRequest.OrderDirection
	(*autoops.AutoOpsRule)(nil),                                     // 221: bucketeer.autoops.AutoOpsRule
	(autoops.OpsType)(0),                                            // 222: bucketeer.autoops.OpsType
	(*autoops.OpsEventRateClause)(nil),                              // 223: bucketeer.autoops.OpsEventRateClause
	(*autoops.DatetimeClause)(nil),                                  // 224: bucketeer.autoops.DatetimeClause
	(*autoops.OpsEventRateClauseChange)(nil),                        // 225: bucketeer.autoops.OpsEventRateClauseChange
	(*autoops.DatetimeClauseChange)(nil),                            // 226: bucketeer.autoops.DatetimeClauseChange
	(*autoops.ProgressiveRolloutManualScheduleClause)(nil),          // 227: bucketeer.autoops.ProgressiveRolloutManualScheduleClause
	(*autoops.ProgressiveRolloutTemplateScheduleClause)(nil),        // 228: bucketeer.autoops.ProgressiveRolloutTemplateScheduleClause
	(*autoops.ProgressiveRollout)(nil),                              // 229: bucketeer.autoops.ProgressiveRollout
	(autoops.ProgressiveRollout_StoppedBy)(0),                       // 230: bucketeer.autoops.ProgressiveRollout.StoppedBy
	(autoops.ListProgressiveRolloutsRequest_OrderBy)(0),             // 231: bucketeer.autoops.ListProgressiveRolloutsRequest.OrderBy
	(autoops.ListProgressiveRolloutsRequest_OrderDirection)(0),      // 232: bucketeer.autoops.ListProgressiveRolloutsRequest.OrderDirection
	(autoops.ProgressiveRollout_Status)(0),                          // 233: bucketeer.autoops.ProgressiveRollout.Status
	(autoops.ProgressiveRollout_Type)(0),                            // 234: bucketeer.autoops.ProgressiveRollout.Type
	(*tag.Tag)(nil),                                                 // 235: bucketeer.tag.Tag
	(tag.ListTagsRequest_OrderBy)(0),                                // 236: bucketeer.tag.ListTagsRequest.OrderBy
	(tag.ListTagsRequest_OrderDirection)(0),                         // 237: bucketeer.tag.ListTagsRequest.OrderDirection
	(*team.Team)(nil),                                               // 238: bucketeer.team.Team
	(team.ListTeamsRequest_OrderBy)(0),                              // 239: bucketeer.team.ListTeamsRequest.OrderBy
	(team.ListTeamsRequest_OrderDirection)(0),                       // 240: bucketeer.team.ListTeamsRequest.OrderDirection
	(*notification.Subscription)(nil),                               // 241: bucketeer.notification.Subscription
	(notification.Subscription_SourceType)(0),                       // 242: bucketeer.notification.Subscription.SourceType
	(notification.ListSubscriptionsRequest_OrderBy)(0),              // 243: bucketeer.notification.ListSubscriptionsRequest.OrderBy
	(notification.ListSubscriptionsRequest_OrderDirection)(0),       // 244: bucketeer.notification.ListSubscriptionsRequest.OrderDirection
	(*notification.Recipient)(nil),                                  // 245: bucketeer.notification.Recipient
	(feature.FlagTrigger_Type)(0),                                   // 246: bucketeer.feature.FlagTrigger.Type
	(feature.FlagTrigger_Action)(0),                                 // 247: bucketeer.feature.FlagTrigger.Action
	(*feature.FlagTrigger)(nil),                                     // 248: bucketeer.feature.FlagTrigger
	(feature.ListFlagTriggersRequest_OrderBy)(0),                    // 249: bucketeer.feature.ListFlagTriggersRequest.OrderBy
	(feature.ListFlagTriggersRequest_OrderDirection)(0),             // 250: bucketeer.feature.ListFlagTriggersRequest.OrderDirection
	(*feature.ListFlagTriggersResponse_FlagTriggerWithUrl)(nil),     // 251: bucketeer.feature.ListFlagTriggersResponse.FlagTriggerWithUrl
	(*experiment.Goal)(nil),                                         // 252: bucketeer.experiment.Goal
	(experiment.ListGoalsRequest_OrderBy)(0),                        // 253: bucketeer.experiment.ListGoalsRequest.OrderBy
	(experiment.ListGoalsRequest_OrderDirection)(0),                 // 254: bucketeer.experiment.ListGoalsRequest.OrderDirection
	(experiment.Goal_ConnectionType)(0),                             // 255: bucketeer.experiment.Goal.ConnectionType
	(*experiment.Experiment)(nil),                                   // 256: bucketeer.experiment.Experiment
	(experiment.ListExperimentsRequest_OrderBy)(0),                  // 257: bucketeer.experiment.ListExperimentsRequest.OrderBy
	(experiment.ListExperimentsRequest_OrderDirection)(0),           // 258: bucketeer.experiment.ListExperimentsRequest.OrderDirection
	(experiment.Experiment_Status)(0),                               // 259: bucketeer.experiment.Experiment.Status
	(*experiment.ListExperimentsResponse_Summary)(nil),              // 260: bucketeer.experiment.ListExperimentsResponse.Summary
	(*experiment.UpdateExperimentRequest_UpdatedStatus)(nil),        // 261: bucketeer.experiment.UpdateExperimentRequest.UpdatedStatus
	(*eventcounter.VariationCount)(nil),                             // 262: bucketeer.eventcounter.VariationCount
	(eventcounter.GetEvaluationTimeseriesCountRequest_TimeRange)(0), // 263: bucketeer.eventcounter.GetEvaluationTimeseriesCountRequest.TimeRange
	(*eventcounter.VariationTimeseries)(nil),                        // 264: bucketeer.eventcounter.VariationTimeseries
	(*eventcounter.ExperimentResult)(nil),                           // 265: bucketeer.eventcounter.ExperimentResult
	(*environment.EnvironmentV2)(nil),                               // 266: bucketeer.environment.EnvironmentV2
	(environment.ListEnvironmentsV2Request_OrderBy)(0),              // 267: bucketeer.environment.ListEnvironmentsV2Request.OrderBy
	(environment.ListEnvironmentsV2Request_OrderDirection)(0),       // 268: bucketeer.environment.ListEnvironmentsV2Request.OrderDirection
	(*environment.Project)(nil),                                     // 269: bucketeer.environment.Project
	(environment.ListProjectsRequest_OrderBy)(0),                    // 270: bucketeer.environment.ListProjectsRequest.OrderBy
	(environment.ListProjectsRequest_OrderDirection)(0),             // 271: bucketeer.environment.ListProjectsRequest.OrderDirection
}
var file_proto_gateway_service_proto_depIdxs = []int32{
	174, // 0: bucketeer.gateway.GetFeatureFlagsRequest.source_id:type_name -> bucketeer.event.client.SourceId
	175, // 1: bucketeer.gateway.GetFeatureFlagsResponse.features:type_name -> bucketeer.feature.Feature
	174, // 2: bucketeer.gateway.GetSegmentUsersRequest.source_id:type_name -> bucketeer.event.client.SourceId
	176, // 3: bucketeer.gateway.GetSegmentUsersResponse.segment_users:type_name -> bucketeer.feature.SegmentUsers
	177, // 4: bucketeer.gateway.GetEvaluationsRequest.user:type_name -> bucketeer.user.User
	174, // 5: bucketeer.gateway.GetEvaluationsRequest.source_id:type_name -> bucketeer.event.client.SourceId
	170, // 6: bucketeer.gateway.GetEvaluationsRequest.user_evaluation_condition:type_name -> bucketeer.gateway.GetEvaluationsRequest.UserEvaluationCondition
	178, // 7: bucketeer.gateway.GetEvaluationsResponse.state:type_name -> bucketeer.feature.UserEvaluations.State
	179, // 8: bucketeer.gateway.GetEvaluationsResponse.evaluations:type_name -> bucketeer.feature.UserEvaluations
	177, // 9: bucketeer.gateway.GetEvaluationRequest.user:type_name -> bucketeer.user.User
	174, // 10: bucketeer.gateway.GetEvaluationRequest.source_id:type_name -> bucketeer.event.client.SourceId
	180, // 11: bucketeer.gateway.GetEvaluationResponse.evaluation:type_name -> bucketeer.feature.Evaluation
	181, // 12: bucketeer.gateway.RegisterEventsRequest.events:type_name -> bucketeer.event.client.Event
	174, // 13: bucketeer.gateway.RegisterEventsRequest.source_id:type_name -> bucketeer.event.client.SourceId
	172, // 14: bucketeer.gateway.RegisterEventsResponse.errors:type_name -> bucketeer.gateway.RegisterEventsResponse.ErrorsEntry
	177, // 15: bucketeer.gateway.DebugEvaluateFeaturesRequest.users:type_name -> bucketeer.user.User
	180, // 16: bucketeer.gateway.DebugEvaluateFeaturesResponse.evaluations:type_name -> bucketeer.feature.Evaluation
	182, // 17: bucketeer.gateway.CreateFeatureRequest.variation_type:type_name -> bucketeer.feature.Feature.VariationType
	183, // 18: bucketeer.gateway.CreateFeatureRequest.variations:type_name -> bucketeer.feature.Variation
	175, // 19: bucketeer.gateway.CreateFeatureResponse.feature:type_name -> bucketeer.feature.Feature
	184, // 20: bucketeer.gateway.GetFeatureRequest.feature_version:type_name -> google.protobuf.Int32Value
	175, // 21: bucketeer.gateway.GetFeatureResponse.feature:type_name -> bucketeer.feature.Feature
	185, // 22: bucketeer.gateway.ListFeaturesRequest.order_by:type_name -> bucketeer.feature.ListFeaturesRequest.OrderBy
	186, // 23: bucketeer.gateway.ListFeaturesRequest.order_direction:type_name -> bucketeer.feature.ListFeaturesRequest.OrderDirection
	175, // 24: bucketeer.gateway.ListFeaturesResponse.features:type_name -> bucketeer.feature.Feature
	187, // 25: bucketeer.gateway.UpdateFeatureRequest.name:type_name -> google.protobuf.StringValue
	187, // 26: bucketeer.gateway.UpdateFeatureRequest.description:type_name -> google.protobuf.StringValue
	188, // 27: bucketeer.gateway.UpdateFeatureRequest.tags:type_name -> bucketeer.common.StringListValue
	189, // 28: bucketeer.gateway.UpdateFeatureRequest.enabled:type_name -> google.protobuf.BoolValue
	189, // 29: bucketeer.gateway.UpdateFeatureRequest.archived:type_name -> google.protobuf.BoolValue
	190, // 30: bucketeer.gateway.UpdateFeatureRequest.default_strategy:type_name -> bucketeer.feature.Strategy
	187, // 31: bucketeer.gateway.UpdateFeatureRequest.off_variation:type_name -> google.protobuf.StringValue
	191, // 32: bucketeer.gateway.UpdateFeatureRequest.variation_changes:type_name -> bucketeer.feature.VariationChange
	192, // 33: bucketeer.gateway.UpdateFeatureRequest.rule_changes:type_name -> bucketeer.feature.RuleChange
	193, // 34: bucketeer.gateway.UpdateFeatureRequest.prerequisite_changes:type_name -> bucketeer.feature.PrerequisiteChange
	194, // 35: bucketeer.gateway.UpdateFeatureRequest.target_changes:type_name -> bucketeer.feature.TargetChange
	195, // 36: bucketeer.gateway.UpdateFeatureRequest.tag_changes:type_name -> bucketeer.feature.TagChange
	175, // 37: bucketeer.gateway.UpdateFeatureResponse.feature:type_name -> bucketeer.feature.Feature
	196, // 38: bucketeer.gateway.ListPushesRequest.order_by:type_name -> bucketeer.push.ListPushesRequest.OrderBy
	197, // 39: bucketeer.gateway.ListPushesRequest.order_direction:type_name -> bucketeer.push.ListPushesRequest.OrderDirection
	198, // 40: bucketeer.gateway.ListPushesResponse.pushes:type_name -> bucketeer.push.Push
	198, // 41: bucketeer.gateway.CreatePushResponse.push:type_name -> bucketeer.push.Push
	198, // 42: bucketeer.gateway.GetPushResponse.push:type_name -> bucketeer.push.Push
	187, // 43: bucketeer.gateway.UpdatePushRequest.name:type_name -> google.protobuf.StringValue
	189, // 44: bucketeer.gateway.UpdatePushRequest.deleted:type_name -> google.protobuf.BoolValue
	198, // 45: bucketeer.gateway.UpdatePushResponse.push:type_name -> bucketeer.push.Push
	199, // 46: bucketeer.gateway.CreateAccountV2Request.organization_role:type_name -> bucketeer.account.AccountV2.Role.Organization
	200, // 47: bucketeer.gateway.CreateAccountV2Request.environment_roles:type_name -> bucketeer.account.AccountV2.EnvironmentRole
	201, // 48: bucketeer.gateway.CreateAccountV2Response.account:type_name -> bucketeer.account.AccountV2
	187, // 49: bucketeer.gateway.UpdateAccountV2Request.name:type_name -> google.protobuf.StringValue
	187, // 50: bucketeer.gateway.UpdateAccountV2Request.avatar_image_url:type_name -> google.protobuf.StringValue
	202, // 51: bucketeer.gateway.UpdateAccountV2Request.organization_role:type_name -> bucketeer.account.UpdateAccountV2Request.OrganizationRoleValue
	200, // 52: bucketeer.gateway.UpdateAccountV2Request.environment_roles:type_name -> bucketeer.account.AccountV2.EnvironmentRole
	187, // 53: bucketeer.gateway.UpdateAccountV2Request.first_name:type_name -> google.protobuf.StringValue
	187, // 54: bucketeer.gateway.UpdateAccountV2Request.last_name:type_name -> google.protobuf.StringValue
	187, // 55: bucketeer.gateway.UpdateAccountV2Request.language:type_name -> google.protobuf.StringValue
	203, // 56: bucketeer.gateway.UpdateAccountV2Request.last_seen:type_name -> google.protobuf.Int64Value
	204, // 57: bucketeer.gateway.UpdateAccountV2Request.avatar:type_name -> bucketeer.account.UpdateAccountV2Request.AccountV2Avatar
	189, // 58: bucketeer.gateway.UpdateAccountV2Request.disabled:type_name -> google.protobuf.BoolValue
	189, // 59: bucketeer.gateway.UpdateAccountV2Request.deleted:type_name -> google.protobuf.BoolValue
	201, // 60: bucketeer.gateway.UpdateAccountV2Response.account:type_name -> bucketeer.account.AccountV2
	201, // 61: bucketeer.gateway.GetAccountV2Response.account:type_name -> bucketeer.account.AccountV2
	201, // 62: bucketeer.gateway.GetAccountV2ByEnvironmentIDResponse.account:type_name -> bucketeer.account.AccountV2
	205, // 63: bucketeer.gateway.GetMeResponse.account:type_name -> bucketeer.account.ConsoleAccount
	206, // 64: bucketeer.gateway.ListAccountsV2Request.order_by:type_name -> bucketeer.account.ListAccountsV2Request.OrderBy
	207, // 65: bucketeer.gateway.ListAccountsV2Request.order_direction:type_name -> bucketeer.account.ListAccountsV2Request.OrderDirection
	189, // 66: bucketeer.gateway.ListAccountsV2Request.disabled:type_name -> google.protobuf.BoolValue
	184, // 67: bucketeer.gateway.ListAccountsV2Request.organization_role:type_name -> google.protobuf.Int32Value
	187, // 68: bucketeer.gateway.ListAccountsV2Request.environment_id:type_name -> google.protobuf.StringValue
	184, // 69: bucketeer.gateway.ListAccountsV2Request.environment_role:type_name -> google.protobuf.Int32Value
	201, // 70: bucketeer.gateway.ListAccountsV2Response.accounts:type_name -> bucketeer.account.AccountV2
	208, // 71: bucketeer.gateway.GetCodeReferenceResponse.code_reference:type_name -> bucketeer.coderef.CodeReference
	209, // 72: bucketeer.gateway.ListCodeReferencesRequest.order_by:type_name -> bucketeer.coderef.ListCodeReferencesRequest.OrderBy
	210, // 73: bucketeer.gateway.ListCodeReferencesRequest.order_direction:type_name -> bucketeer.coderef.ListCodeReferencesRequest.OrderDirection
	208, // 74: bucketeer.gateway.ListCodeReferencesResponse.code_references:type_name -> bucketeer.coderef.CodeReference
	211, // 75: bucketeer.gateway.CreateCodeReferenceRequest.repository_type:type_name -> bucketeer.coderef.CodeReference.RepositoryType
	208, // 76: bucketeer.gateway.CreateCodeReferenceResponse.code_reference:type_name -> bucketeer.coderef.CodeReference
	208, // 77: bucketeer.gateway.UpdateCodeReferenceResponse.code_reference:type_name -> bucketeer.coderef.CodeReference
	212, // 78: bucketeer.gateway.CreateSegmentResponse.segment:type_name -> bucketeer.feature.Segment
	212, // 79: bucketeer.gateway.GetSegmentResponse.segment:type_name -> bucketeer.feature.Segment
	213, // 80: bucketeer.gateway.ListSegmentsRequest.order_by:type_name -> bucketeer.feature.ListSegmentsRequest.OrderBy
	214, // 81: bucketeer.gateway.ListSegmentsRequest.order_direction:type_name -> bucketeer.feature.ListSegmentsRequest.OrderDirection
	184, // 82: bucketeer.gateway.ListSegmentsRequest.status:type_name -> google.protobuf.Int32Value
	189, // 83: bucketeer.gateway.ListSegmentsRequest.is_in_use_status:type_name -> google.protobuf.BoolValue
	212, // 84: bucketeer.gateway.ListSegmentsResponse.segments:type_name -> bucketeer.feature.Segment
	187, // 85: bucketeer.gateway.UpdateSegmentRequest.name:type_name -> google.protobuf.StringValue
	187, // 86: bucketeer.gateway.UpdateSegmentRequest.description:type_name -> google.protobuf.StringValue
	212, // 87: bucketeer.gateway.UpdateSegmentResponse.segment:type_name -> bucketeer.feature.Segment
	215, // 88: bucketeer.gateway.BulkUploadSegmentUsersRequest.state:type_name -> bucketeer.feature.SegmentUser.State
	216, // 89: bucketeer.gateway.GetAuditLogResponse.audit_log:type_name -> bucketeer.auditlog.AuditLog
	217, // 90: bucketeer.gateway.ListAuditLogsRequest.order_by:type_name -> bucketeer.auditlog.ListAuditLogsRequest.OrderBy
	218, // 91: bucketeer.gateway.ListAuditLogsRequest.order_direction:type_name -> bucketeer.auditlog.ListAuditLogsRequest.OrderDirection
	184, // 92: bucketeer.gateway.ListAuditLogsRequest.entity_type:type_name -> google.protobuf.Int32Value
	216, // 93: bucketeer.gateway.ListAuditLogsResponse.audit_logs:type_name -> bucketeer.auditlog.AuditLog
	219, // 94: bucketeer.gateway.ListFeatureHistoryRequest.order_by:type_name -> bucketeer.auditlog.ListFeatureHistoryRequest.OrderBy
	220, // 95: bucketeer.gateway.ListFeatureHistoryRequest.order_direction:type_name -> bucketeer.auditlog.ListFeatureHistoryRequest.OrderDirection
	216, // 96: bucketeer.gateway.ListFeatureHistoryResponse.audit_logs:type_name -> bucketeer.auditlog.AuditLog
	221, // 97: bucketeer.gateway.GetAutoOpsRuleResponse.auto_ops_rule:type_name -> bucketeer.autoops.AutoOpsRule
	222, // 98: bucketeer.gateway.CreateAutoOpsRuleRequest.ops_type:type_name -> bucketeer.autoops.OpsType
	223, // 99: bucketeer.gateway.CreateAutoOpsRuleRequest.ops_event_rate_clauses:type_name -> bucketeer.autoops.OpsEventRateClause
	224, // 100: bucketeer.gateway.CreateAutoOpsRuleRequest.datetime_clauses:type_name -> bucketeer.autoops.DatetimeClause
	221, // 101: bucketeer.gateway.CreateAutoOpsRuleResponse.auto_ops_rule:type_name -> bucketeer.autoops.AutoOpsRule
	221, // 102: bucketeer.gateway.ListAutoOpsRulesResponse.auto_ops_rules:type_name -> bucketeer.autoops.AutoOpsRule
	225, // 103: bucketeer.gateway.UpdateAutoOpsRuleRequest.ops_event_rate_clause_changes:type_name -> bucketeer.autoops.OpsEventRateClauseChange
	226, // 104: bucketeer.gateway.UpdateAutoOpsRuleRequest.datetime_clause_changes:type_name -> bucketeer.autoops.DatetimeClauseChange
	227, // 105: bucketeer.gateway.CreateProgressiveRolloutRequest.progressive_rollout_manual_schedule_clause:type_name -> bucketeer.autoops.ProgressiveRolloutManualScheduleClause
	228, // 106: bucketeer.gateway.CreateProgressiveRolloutRequest.progressive_rollout_template_schedule_clause:type_name -> bucketeer.autoops.ProgressiveRolloutTemplateScheduleClause
	229, // 107: bucketeer.gateway.CreateProgressiveRolloutResponse.progressive_rollout:type_name -> bucketeer.autoops.ProgressiveRollout
	229, // 108: bucketeer.gateway.GetProgressiveRolloutResponse.progressive_rollout:type_name -> bucketeer.autoops.ProgressiveRollout
	230, // 109: bucketeer.gateway.StopProgressiveRolloutRequest.stopped_by:type_name -> bucketeer.autoops.ProgressiveRollout.StoppedBy
	231, // 110: bucketeer.gateway.ListProgressiveRolloutsRequest.order_by:type_name -> bucketeer.autoops.ListProgressiveRolloutsRequest.OrderBy
	232, // 111: bucketeer.gateway.ListProgressiveRolloutsRequest.order_direction:type_name -> bucketeer.autoops.ListProgressiveRolloutsRequest.OrderDirection
	233, // 112: bucketeer.gateway.ListProgressiveRolloutsRequest.status:type_name -> bucketeer.autoops.ProgressiveRollout.Status
	234, // 113: bucketeer.gateway.ListProgressiveRolloutsRequest.type:type_name -> bucketeer.autoops.ProgressiveRollout.Type
	229, // 114: bucketeer.gateway.ListProgressiveRolloutsResponse.progressive_rollouts:type_name -> bucketeer.autoops.ProgressiveRollout
	235, // 115: bucketeer.gateway.CreateTagResponse.tag:type_name -> bucketeer.tag.Tag
	236, // 116: bucketeer.gateway.ListTagsRequest.order_by:type_name -> bucketeer.tag.ListTagsRequest.OrderBy
	237, // 117: bucketeer.gateway.ListTagsRequest.order_direction:type_name -> bucketeer.tag.ListTagsRequest.OrderDirection
	235, // 118: bucketeer.gateway.ListTagsResponse.tags:type_name -> bucketeer.tag.Tag
	238, // 119: bucketeer.gateway.CreateTeamResponse.team:type_name -> bucketeer.team.Team
	239, // 120: bucketeer.gateway.ListTeamsRequest.order_by:type_name -> bucketeer.team.ListTeamsRequest.OrderBy
	240, // 121: bucketeer.gateway.ListTeamsRequest.order_direction:type_name -> bucketeer.team.ListTeamsRequest.OrderDirection
	238, // 122: bucketeer.gateway.ListTeamsResponse.teams:type_name -> bucketeer.team.Team
	241, // 123: bucketeer.gateway.GetSubscriptionResponse.subscription:type_name -> bucketeer.notification.Subscription
	242, // 124: bucketeer.gateway.ListSubscriptionsRequest.source_types:type_name -> bucketeer.notification.Subscription.SourceType
	243, // 125: bucketeer.gateway.ListSubscriptionsRequest.order_by:type_name -> bucketeer.notification.ListSubscriptionsRequest.OrderBy
	244, // 126: bucketeer.gateway.ListSubscriptionsRequest.order_direction:type_name -> bucketeer.notification.ListSubscriptionsRequest.OrderDirection
	189, // 127: bucketeer.gateway.ListSubscriptionsRequest.disabled:type_name -> google.protobuf.BoolValue
	241, // 128: bucketeer.gateway.ListSubscriptionsResponse.subscriptions:type_name -> bucketeer.notification.Subscription
	242, // 129: bucketeer.gateway.CreateSubscriptionRequest.source_types:type_name -> bucketeer.notification.Subscription.SourceType
	245, // 130: bucketeer.gateway.CreateSubscriptionRequest.recipient:type_name -> bucketeer.notification.Recipient
	241, // 131: bucketeer.gateway.CreateSubscriptionResponse.subscription:type_name -> bucketeer.notification.Subscription
	242, // 132: bucketeer.gateway.UpdateSubscriptionRequest.source_types:type_name -> bucketeer.notification.Subscription.SourceType
	187, // 133: bucketeer.gateway.UpdateSubscriptionRequest.name:type_name -> google.protobuf.StringValue
	189, // 134: bucketeer.gateway.UpdateSubscriptionRequest.disabled:type_name -> google.protobuf.BoolValue
	246, // 135: bucketeer.gateway.CreateFlagTriggerRequest.type:type_name -> bucketeer.feature.FlagTrigger.Type
	247, // 136: bucketeer.gateway.CreateFlagTriggerRequest.action:type_name -> bucketeer.feature.FlagTrigger.Action
	248, // 137: bucketeer.gateway.CreateFlagTriggerResponse.flag_trigger:type_name -> bucketeer.feature.FlagTrigger
	187, // 138: bucketeer.gateway.UpdateFlagTriggerRequest.description:type_name -> google.protobuf.StringValue
	189, // 139: bucketeer.gateway.UpdateFlagTriggerRequest.disabled:type_name -> google.protobuf.BoolValue
	248, // 140: bucketeer.gateway.GetFlagTriggerResponse.flag_trigger:type_name -> bucketeer.feature.FlagTrigger
	249, // 141: bucketeer.gateway.ListFlagTriggersRequest.order_by:type_name -> bucketeer.feature.ListFlagTriggersRequest.OrderBy
	250, // 142: bucketeer.gateway.ListFlagTriggersRequest.order_direction:type_name -> bucketeer.feature.ListFlagTriggersRequest.OrderDirection
	251, // 143: bucketeer.gateway.ListFlagTriggersResponse.flag_triggers:type_name -> bucketeer.feature.ListFlagTriggersResponse.FlagTriggerWithUrl
	252, // 144: bucketeer.gateway.GetGoalResponse.goal:type_name -> bucketeer.experiment.Goal
	253, // 145: bucketeer.gateway.ListGoalsRequest.order_by:type_name -> bucketeer.experiment.ListGoalsRequest.OrderBy
	254, // 146: bucketeer.gateway.ListGoalsRequest.order_direction:type_name -> bucketeer.experiment.ListGoalsRequest.OrderDirection
	189, // 147: bucketeer.gateway.ListGoalsRequest.is_in_use_status:type_name -> google.protobuf.BoolValue
	189, // 148: bucketeer.gateway.ListGoalsRequest.archived:type_name -> google.protobuf.BoolValue
	255, // 149: bucketeer.gateway.ListGoalsRequest.connection_type:type_name -> bucketeer.experiment.Goal.ConnectionType
	252, // 150: bucketeer.gateway.ListGoalsResponse.goals:type_name -> bucketeer.experiment.Goal
	255, // 151: bucketeer.gateway.CreateGoalRequest.connection_type:type_name -> bucketeer.experiment.Goal.ConnectionType
	252, // 152: bucketeer.gateway.CreateGoalResponse.goal:type_name -> bucketeer.experiment.Goal
	187, // 153: bucketeer.gateway.UpdateGoalRequest.name:type_name -> google.protobuf.StringValue
	187, // 154: bucketeer.gateway.UpdateGoalRequest.description:type_name -> google.protobuf.StringValue
	189, // 155: bucketeer.gateway.UpdateGoalRequest.archived:type_name -> google.protobuf.BoolValue
	252, // 156: bucketeer.gateway.UpdateGoalResponse.goal:type_name -> bucketeer.experiment.Goal
	256, // 157: bucketeer.gateway.GetExperimentResponse.experiment:type_name -> bucketeer.experiment.Experiment
	184, // 158: bucketeer.gateway.ListExperimentsRequest.feature_version:type_name -> google.protobuf.Int32Value
	257, // 159: bucketeer.gateway.ListExperimentsRequest.order_by:type_name -> bucketeer.experiment.ListExperimentsRequest.OrderBy
	258, // 160: bucketeer.gateway.ListExperimentsRequest.order_direction:type_name -> bucketeer.experiment.ListExperimentsRequest.OrderDirection
	189, // 161: bucketeer.gateway.ListExperimentsRequest.archived:type_name -> google.protobuf.BoolValue
	259, // 162: bucketeer.gateway.ListExperimentsRequest.statuses:type_name -> bucketeer.experiment.Experiment.Status
	256, // 163: bucketeer.gateway.ListExperimentsResponse.experiments:type_name -> bucketeer.experiment.Experiment
	260, // 164: bucketeer.gateway.ListExperimentsResponse.summary:type_name -> bucketeer.experiment.ListExperimentsResponse.Summary
	256, // 165: bucketeer.gateway.CreateExperimentResponse.experiment:type_name -> bucketeer.experiment.Experiment
	187, // 166: bucketeer.gateway.UpdateExperimentRequest.name:type_name -> google.protobuf.StringValue
	187, // 167: bucketeer.gateway.UpdateExperimentRequest.description:type_name -> google.protobuf.StringValue
	203, // 168: bucketeer.gateway.UpdateExperimentRequest.start_at:type_name -> google.protobuf.Int64Value
	203, // 169: bucketeer.gateway.UpdateExperimentRequest.stop_at:type_name -> google.protobuf.Int64Value
	189, // 170: bucketeer.gateway.UpdateExperimentRequest.archived:type_name -> google.protobuf.BoolValue
	261, // 171: bucketeer.gateway.UpdateExperimentRequest.status:type_name -> bucketeer.experiment.UpdateExperimentRequest.UpdatedStatus
	256, // 172: bucketeer.gateway.UpdateExperimentResponse.experiment:type_name -> bucketeer.experiment.Experiment
	262, // 173: bucketeer.gateway.GetExperimentEvaluationCountResponse.variation_counts:type_name -> bucketeer.eventcounter.VariationCount
	263, // 174: bucketeer.gateway.GetEvaluationTimeseriesCountRequest.time_range:type_name -> bucketeer.eventcounter.GetEvaluationTimeseriesCountRequest.TimeRange
	264, // 175: bucketeer.gateway.GetEvaluationTimeseriesCountResponse.user_counts:type_name -> bucketeer.eventcounter.VariationTimeseries
	264, // 176: bucketeer.gateway.GetEvaluationTimeseriesCountResponse.event_counts:type_name -> bucketeer.eventcounter.VariationTimeseries
	265, // 177: bucketeer.gateway.GetExperimentResultResponse.experiment_result:type_name -> bucketeer.eventcounter.ExperimentResult
	184, // 178: bucketeer.gateway.ListExperimentResultsRequest.feature_version:type_name -> google.protobuf.Int32Value
	173, // 179: bucketeer.gateway.ListExperimentResultsResponse.results:type_name -> bucketeer.gateway.ListExperimentResultsResponse.ResultsEntry
	262, // 180: bucketeer.gateway.GetExperimentGoalCountResponse.variation_counts:type_name -> bucketeer.eventcounter.VariationCount
	266, // 181: bucketeer.gateway.GetEnvironmentV2Response.environment:type_name -> bucketeer.environment.EnvironmentV2
	267, // 182: bucketeer.gateway.ListEnvironmentsV2Request.order_by:type_name -> bucketeer.environment.ListEnvironmentsV2Request.OrderBy
	268, // 183: bucketeer.gateway.ListEnvironmentsV2Request.order_direction:type_name -> bucketeer.environment.ListEnvironmentsV2Request.OrderDirection
	189, // 184: bucketeer.gateway.ListEnvironmentsV2Request.archived:type_name -> google.protobuf.BoolValue
	266, // 185: bucketeer.gateway.ListEnvironmentsV2Response.environments:type_name -> bucketeer.environment.EnvironmentV2
	269, // 186: bucketeer.gateway.GetProjectResponse.project:type_name -> bucketeer.environment.Project
	270, // 187: bucketeer.gateway.ListProjectsRequest.order_by:type_name -> bucketeer.environment.ListProjectsRequest.OrderBy
	271, // 188: bucketeer.gateway.ListProjectsRequest.order_direction:type_name -> bucketeer.environment.ListProjectsRequest.OrderDirection
	189, // 189: bucketeer.gateway.ListProjectsRequest.disabled:type_name -> google.protobuf.BoolValue
	269, // 190: bucketeer.gateway.ListProjectsResponse.projects:type_name -> bucketeer.environment.Project
	171, // 191: bucketeer.gateway.RegisterEventsResponse.ErrorsEntry.value:type_name -> bucketeer.gateway.RegisterEventsResponse.Error
	265, // 192: bucketeer.gateway.ListExperimentResultsResponse.ResultsEntry.value:type_name -> bucketeer.eventcounter.ExperimentResult
	6,   // 193: bucketeer.gateway.Gateway.GetEvaluations:input_type -> bucketeer.gateway.GetEvaluationsRequest
	8,   // 194: bucketeer.gateway.Gateway.GetEvaluation:input_type -> bucketeer.gateway.GetEvaluationRequest
	2,   // 195: bucketeer.gateway.Gateway.GetFeatureFlags:input_type -> bucketeer.gateway.GetFeatureFlagsRequest
	4,   // 196: bucketeer.gateway.Gateway.GetSegmentUsers:input_type -> bucketeer.gateway.GetSegmentUsersRequest
	10,  // 197: bucketeer.gateway.Gateway.RegisterEvents:input_type -> bucketeer.gateway.RegisterEventsRequest
	12,  // 198: bucketeer.gateway.Gateway.Track:input_type -> bucketeer.gateway.TrackRequest
	14,  // 199: bucketeer.gateway.Gateway.DebugEvaluateFeatures:input_type -> bucketeer.gateway.DebugEvaluateFeaturesRequest
	16,  // 200: bucketeer.gateway.Gateway.CreateFeature:input_type -> bucketeer.gateway.CreateFeatureRequest
	18,  // 201: bucketeer.gateway.Gateway.GetFeature:input_type -> bucketeer.gateway.GetFeatureRequest
	20,  // 202: bucketeer.gateway.Gateway.ListFeatures:input_type -> bucketeer.gateway.ListFeaturesRequest
	22,  // 203: bucketeer.gateway.Gateway.UpdateFeature:input_type -> bucketeer.gateway.UpdateFeatureRequest
	0,   // 204: bucketeer.gateway.Gateway.Ping:input_type -> bucketeer.gateway.PingRequest
	24,  // 205: bucketeer.gateway.Gateway.ListPushes:input_type -> bucketeer.gateway.ListPushesRequest
	26,  // 206: bucketeer.gateway.Gateway.CreatePush:input_type -> bucketeer.gateway.CreatePushRequest
	28,  // 207: bucketeer.gateway.Gateway.GetPush:input_type -> bucketeer.gateway.GetPushRequest
	30,  // 208: bucketeer.gateway.Gateway.UpdatePush:input_type -> bucketeer.gateway.UpdatePushRequest
	32,  // 209: bucketeer.gateway.Gateway.CreateAccountV2:input_type -> bucketeer.gateway.CreateAccountV2Request
	34,  // 210: bucketeer.gateway.Gateway.UpdateAccountV2:input_type -> bucketeer.gateway.UpdateAccountV2Request
	36,  // 211: bucketeer.gateway.Gateway.GetAccountV2:input_type -> bucketeer.gateway.GetAccountV2Request
	38,  // 212: bucketeer.gateway.Gateway.GetAccountV2ByEnvironmentID:input_type -> bucketeer.gateway.GetAccountV2ByEnvironmentIDRequest
	40,  // 213: bucketeer.gateway.Gateway.GetMe:input_type -> bucketeer.gateway.GetMeRequest
	42,  // 214: bucketeer.gateway.Gateway.ListAccountsV2:input_type -> bucketeer.gateway.ListAccountsV2Request
	44,  // 215: bucketeer.gateway.Gateway.GetCodeReference:input_type -> bucketeer.gateway.GetCodeReferenceRequest
	46,  // 216: bucketeer.gateway.Gateway.ListCodeReferences:input_type -> bucketeer.gateway.ListCodeReferencesRequest
	48,  // 217: bucketeer.gateway.Gateway.CreateCodeReference:input_type -> bucketeer.gateway.CreateCodeReferenceRequest
	50,  // 218: bucketeer.gateway.Gateway.UpdateCodeReference:input_type -> bucketeer.gateway.UpdateCodeReferenceRequest
	52,  // 219: bucketeer.gateway.Gateway.DeleteCodeReference:input_type -> bucketeer.gateway.DeleteCodeReferenceRequest
	54,  // 220: bucketeer.gateway.Gateway.CreateSegment:input_type -> bucketeer.gateway.CreateSegmentRequest
	56,  // 221: bucketeer.gateway.Gateway.GetSegment:input_type -> bucketeer.gateway.GetSegmentRequest
	58,  // 222: bucketeer.gateway.Gateway.ListSegments:input_type -> bucketeer.gateway.ListSegmentsRequest
	60,  // 223: bucketeer.gateway.Gateway.DeleteSegment:input_type -> bucketeer.gateway.DeleteSegmentRequest
	62,  // 224: bucketeer.gateway.Gateway.UpdateSegment:input_type -> bucketeer.gateway.UpdateSegmentRequest
	64,  // 225: bucketeer.gateway.Gateway.BulkUploadSegmentUsers:input_type -> bucketeer.gateway.BulkUploadSegmentUsersRequest
	66,  // 226: bucketeer.gateway.Gateway.GetAuditLog:input_type -> bucketeer.gateway.GetAuditLogRequest
	68,  // 227: bucketeer.gateway.Gateway.ListAuditLogs:input_type -> bucketeer.gateway.ListAuditLogsRequest
	70,  // 228: bucketeer.gateway.Gateway.ListFeatureHistory:input_type -> bucketeer.gateway.ListFeatureHistoryRequest
	72,  // 229: bucketeer.gateway.Gateway.GetAutoOpsRule:input_type -> bucketeer.gateway.GetAutoOpsRuleRequest
	74,  // 230: bucketeer.gateway.Gateway.CreateAutoOpsRule:input_type -> bucketeer.gateway.CreateAutoOpsRuleRequest
	76,  // 231: bucketeer.gateway.Gateway.ListAutoOpsRules:input_type -> bucketeer.gateway.ListAutoOpsRulesRequest
	78,  // 232: bucketeer.gateway.Gateway.StopAutoOpsRule:input_type -> bucketeer.gateway.StopAutoOpsRuleRequest
	80,  // 233: bucketeer.gateway.Gateway.DeleteAutoOpsRule:input_type -> bucketeer.gateway.DeleteAutoOpsRuleRequest
	82,  // 234: bucketeer.gateway.Gateway.UpdateAutoOpsRule:input_type -> bucketeer.gateway.UpdateAutoOpsRuleRequest
	84,  // 235: bucketeer.gateway.Gateway.ExecuteAutoOps:input_type -> bucketeer.gateway.ExecuteAutoOpsRequest
	86,  // 236: bucketeer.gateway.Gateway.CreateProgressiveRollout:input_type -> bucketeer.gateway.CreateProgressiveRolloutRequest
	88,  // 237: bucketeer.gateway.Gateway.GetProgressiveRollout:input_type -> bucketeer.gateway.GetProgressiveRolloutRequest
	90,  // 238: bucketeer.gateway.Gateway.StopProgressiveRollout:input_type -> bucketeer.gateway.StopProgressiveRolloutRequest
	92,  // 239: bucketeer.gateway.Gateway.DeleteProgressiveRollout:input_type -> bucketeer.gateway.DeleteProgressiveRolloutRequest
	94,  // 240: bucketeer.gateway.Gateway.ListProgressiveRollouts:input_type -> bucketeer.gateway.ListProgressiveRolloutsRequest
	96,  // 241: bucketeer.gateway.Gateway.ExecuteProgressiveRollout:input_type -> bucketeer.gateway.ExecuteProgressiveRolloutRequest
	98,  // 242: bucketeer.gateway.Gateway.CreateTag:input_type -> bucketeer.gateway.CreateTagRequest
	100, // 243: bucketeer.gateway.Gateway.DeleteTag:input_type -> bucketeer.gateway.DeleteTagRequest
	102, // 244: bucketeer.gateway.Gateway.ListTags:input_type -> bucketeer.gateway.ListTagsRequest
	104, // 245: bucketeer.gateway.Gateway.CreateTeam:input_type -> bucketeer.gateway.CreateTeamRequest
	106, // 246: bucketeer.gateway.Gateway.DeleteTeam:input_type -> bucketeer.gateway.DeleteTeamRequest
	108, // 247: bucketeer.gateway.Gateway.ListTeams:input_type -> bucketeer.gateway.ListTeamsRequest
	110, // 248: bucketeer.gateway.Gateway.GetSubscription:input_type -> bucketeer.gateway.GetSubscriptionRequest
	112, // 249: bucketeer.gateway.Gateway.ListSubscriptions:input_type -> bucketeer.gateway.ListSubscriptionsRequest
	114, // 250: bucketeer.gateway.Gateway.CreateSubscription:input_type -> bucketeer.gateway.CreateSubscriptionRequest
	116, // 251: bucketeer.gateway.Gateway.DeleteSubscription:input_type -> bucketeer.gateway.DeleteSubscriptionRequest
	118, // 252: bucketeer.gateway.Gateway.UpdateSubscription:input_type -> bucketeer.gateway.UpdateSubscriptionRequest
	120, // 253: bucketeer.gateway.Gateway.CreateFlagTrigger:input_type -> bucketeer.gateway.CreateFlagTriggerRequest
	122, // 254: bucketeer.gateway.Gateway.DeleteFlagTrigger:input_type -> bucketeer.gateway.DeleteFlagTriggerRequest
	124, // 255: bucketeer.gateway.Gateway.UpdateFlagTrigger:input_type -> bucketeer.gateway.UpdateFlagTriggerRequest
	126, // 256: bucketeer.gateway.Gateway.GetFlagTrigger:input_type -> bucketeer.gateway.GetFlagTriggerRequest
	128, // 257: bucketeer.gateway.Gateway.ListFlagTriggers:input_type -> bucketeer.gateway.ListFlagTriggersRequest
	140, // 258: bucketeer.gateway.Gateway.GetExperiment:input_type -> bucketeer.gateway.GetExperimentRequest
	142, // 259: bucketeer.gateway.Gateway.ListExperiments:input_type -> bucketeer.gateway.ListExperimentsRequest
	144, // 260: bucketeer.gateway.Gateway.CreateExperiment:input_type -> bucketeer.gateway.CreateExperimentRequest
	146, // 261: bucketeer.gateway.Gateway.UpdateExperiment:input_type -> bucketeer.gateway.UpdateExperimentRequest
	130, // 262: bucketeer.gateway.Gateway.GetGoal:input_type -> bucketeer.gateway.GetGoalRequest
	132, // 263: bucketeer.gateway.Gateway.ListGoals:input_type -> bucketeer.gateway.ListGoalsRequest
	134, // 264: bucketeer.gateway.Gateway.CreateGoal:input_type -> bucketeer.gateway.CreateGoalRequest
	136, // 265: bucketeer.gateway.Gateway.DeleteGoal:input_type -> bucketeer.gateway.DeleteGoalRequest
	138, // 266: bucketeer.gateway.Gateway.UpdateGoal:input_type -> bucketeer.gateway.UpdateGoalRequest
	148, // 267: bucketeer.gateway.Gateway.GetExperimentEvaluationCount:input_type -> bucketeer.gateway.GetExperimentEvaluationCountRequest
	150, // 268: bucketeer.gateway.Gateway.GetEvaluationTimeseriesCount:input_type -> bucketeer.gateway.GetEvaluationTimeseriesCountRequest
	152, // 269: bucketeer.gateway.Gateway.GetExperimentResult:input_type -> bucketeer.gateway.GetExperimentResultRequest
	154, // 270: bucketeer.gateway.Gateway.ListExperimentResults:input_type -> bucketeer.gateway.ListExperimentResultsRequest
	156, // 271: bucketeer.gateway.Gateway.GetExperimentGoalCount:input_type -> bucketeer.gateway.GetExperimentGoalCountRequest
	158, // 272: bucketeer.gateway.Gateway.GetOpsEvaluationUserCount:input_type -> bucketeer.gateway.GetOpsEvaluationUserCountRequest
	160, // 273: bucketeer.gateway.Gateway.GetOpsGoalUserCount:input_type -> bucketeer.gateway.GetOpsGoalUserCountRequest
	162, // 274: bucketeer.gateway.Gateway.GetEnvironmentV2:input_type -> bucketeer.gateway.GetEnvironmentV2Request
	164, // 275: bucketeer.gateway.Gateway.ListEnvironmentsV2:input_type -> bucketeer.gateway.ListEnvironmentsV2Request
	166, // 276: bucketeer.gateway.Gateway.GetProject:input_type -> bucketeer.gateway.GetProjectRequest
	168, // 277: bucketeer.gateway.Gateway.ListProjects:input_type -> bucketeer.gateway.ListProjectsRequest
	7,   // 278: bucketeer.gateway.Gateway.GetEvaluations:output_type -> bucketeer.gateway.GetEvaluationsResponse
	9,   // 279: bucketeer.gateway.Gateway.GetEvaluation:output_type -> bucketeer.gateway.GetEvaluationResponse
	3,   // 280: bucketeer.gateway.Gateway.GetFeatureFlags:output_type -> bucketeer.gateway.GetFeatureFlagsResponse
	5,   // 281: bucketeer.gateway.Gateway.GetSegmentUsers:output_type -> bucketeer.gateway.GetSegmentUsersResponse
	11,  // 282: bucketeer.gateway.Gateway.RegisterEvents:output_type -> bucketeer.gateway.RegisterEventsResponse
	13,  // 283: bucketeer.gateway.Gateway.Track:output_type -> bucketeer.gateway.TrackResponse
	15,  // 284: bucketeer.gateway.Gateway.DebugEvaluateFeatures:output_type -> bucketeer.gateway.DebugEvaluateFeaturesResponse
	17,  // 285: bucketeer.gateway.Gateway.CreateFeature:output_type -> bucketeer.gateway.CreateFeatureResponse
	19,  // 286: bucketeer.gateway.Gateway.GetFeature:output_type -> bucketeer.gateway.GetFeatureResponse
	21,  // 287: bucketeer.gateway.Gateway.ListFeatures:output_type -> bucketeer.gateway.ListFeaturesResponse
	23,  // 288: bucketeer.gateway.Gateway.UpdateFeature:output_type -> bucketeer.gateway.UpdateFeatureResponse
	1,   // 289: bucketeer.gateway.Gateway.Ping:output_type -> bucketeer.gateway.PingResponse
	25,  // 290: bucketeer.gateway.Gateway.ListPushes:output_type -> bucketeer.gateway.ListPushesResponse
	27,  // 291: bucketeer.gateway.Gateway.CreatePush:output_type -> bucketeer.gateway.CreatePushResponse
	29,  // 292: bucketeer.gateway.Gateway.GetPush:output_type -> bucketeer.gateway.GetPushResponse
	31,  // 293: bucketeer.gateway.Gateway.UpdatePush:output_type -> bucketeer.gateway.UpdatePushResponse
	33,  // 294: bucketeer.gateway.Gateway.CreateAccountV2:output_type -> bucketeer.gateway.CreateAccountV2Response
	35,  // 295: bucketeer.gateway.Gateway.UpdateAccountV2:output_type -> bucketeer.gateway.UpdateAccountV2Response
	37,  // 296: bucketeer.gateway.Gateway.GetAccountV2:output_type -> bucketeer.gateway.GetAccountV2Response
	39,  // 297: bucketeer.gateway.Gateway.GetAccountV2ByEnvironmentID:output_type -> bucketeer.gateway.GetAccountV2ByEnvironmentIDResponse
	41,  // 298: bucketeer.gateway.Gateway.GetMe:output_type -> bucketeer.gateway.GetMeResponse
	43,  // 299: bucketeer.gateway.Gateway.ListAccountsV2:output_type -> bucketeer.gateway.ListAccountsV2Response
	45,  // 300: bucketeer.gateway.Gateway.GetCodeReference:output_type -> bucketeer.gateway.GetCodeReferenceResponse
	47,  // 301: bucketeer.gateway.Gateway.ListCodeReferences:output_type -> bucketeer.gateway.ListCodeReferencesResponse
	49,  // 302: bucketeer.gateway.Gateway.CreateCodeReference:output_type -> bucketeer.gateway.CreateCodeReferenceResponse
	51,  // 303: bucketeer.gateway.Gateway.UpdateCodeReference:output_type -> bucketeer.gateway.UpdateCodeReferenceResponse
	53,  // 304: bucketeer.gateway.Gateway.DeleteCodeReference:output_type -> bucketeer.gateway.DeleteCodeReferenceResponse
	55,  // 305: bucketeer.gateway.Gateway.CreateSegment:output_type -> bucketeer.gateway.CreateSegmentResponse
	57,  // 306: bucketeer.gateway.Gateway.GetSegment:output_type -> bucketeer.gateway.GetSegmentResponse
	59,  // 307: bucketeer.gateway.Gateway.ListSegments:output_type -> bucketeer.gateway.ListSegmentsResponse
	61,  // 308: bucketeer.gateway.Gateway.DeleteSegment:output_type -> bucketeer.gateway.DeleteSegmentResponse
	63,  // 309: bucketeer.gateway.Gateway.UpdateSegment:output_type -> bucketeer.gateway.UpdateSegmentResponse
	65,  // 310: bucketeer.gateway.Gateway.BulkUploadSegmentUsers:output_type -> bucketeer.gateway.BulkUploadSegmentUsersResponse
	67,  // 311: bucketeer.gateway.Gateway.GetAuditLog:output_type -> bucketeer.gateway.GetAuditLogResponse
	69,  // 312: bucketeer.gateway.Gateway.ListAuditLogs:output_type -> bucketeer.gateway.ListAuditLogsResponse
	71,  // 313: bucketeer.gateway.Gateway.ListFeatureHistory:output_type -> bucketeer.gateway.ListFeatureHistoryResponse
	73,  // 314: bucketeer.gateway.Gateway.GetAutoOpsRule:output_type -> bucketeer.gateway.GetAutoOpsRuleResponse
	75,  // 315: bucketeer.gateway.Gateway.CreateAutoOpsRule:output_type -> bucketeer.gateway.CreateAutoOpsRuleResponse
	77,  // 316: bucketeer.gateway.Gateway.ListAutoOpsRules:output_type -> bucketeer.gateway.ListAutoOpsRulesResponse
	79,  // 317: bucketeer.gateway.Gateway.StopAutoOpsRule:output_type -> bucketeer.gateway.StopAutoOpsRuleResponse
	81,  // 318: bucketeer.gateway.Gateway.DeleteAutoOpsRule:output_type -> bucketeer.gateway.DeleteAutoOpsRuleResponse
	83,  // 319: bucketeer.gateway.Gateway.UpdateAutoOpsRule:output_type -> bucketeer.gateway.UpdateAutoOpsRuleResponse
	85,  // 320: bucketeer.gateway.Gateway.ExecuteAutoOps:output_type -> bucketeer.gateway.ExecuteAutoOpsResponse
	87,  // 321: bucketeer.gateway.Gateway.CreateProgressiveRollout:output_type -> bucketeer.gateway.CreateProgressiveRolloutResponse
	89,  // 322: bucketeer.gateway.Gateway.GetProgressiveRollout:output_type -> bucketeer.gateway.GetProgressiveRolloutResponse
	91,  // 323: bucketeer.gateway.Gateway.StopProgressiveRollout:output_type -> bucketeer.gateway.StopProgressiveRolloutResponse
	93,  // 324: bucketeer.gateway.Gateway.DeleteProgressiveRollout:output_type -> bucketeer.gateway.DeleteProgressiveRolloutResponse
	95,  // 325: bucketeer.gateway.Gateway.ListProgressiveRollouts:output_type -> bucketeer.gateway.ListProgressiveRolloutsResponse
	97,  // 326: bucketeer.gateway.Gateway.ExecuteProgressiveRollout:output_type -> bucketeer.gateway.ExecuteProgressiveRolloutResponse
	99,  // 327: bucketeer.gateway.Gateway.CreateTag:output_type -> bucketeer.gateway.CreateTagResponse
	101, // 328: bucketeer.gateway.Gateway.DeleteTag:output_type -> bucketeer.gateway.DeleteTagResponse
	103, // 329: bucketeer.gateway.Gateway.ListTags:output_type -> bucketeer.gateway.ListTagsResponse
	105, // 330: bucketeer.gateway.Gateway.CreateTeam:output_type -> bucketeer.gateway.CreateTeamResponse
	107, // 331: bucketeer.gateway.Gateway.DeleteTeam:output_type -> bucketeer.gateway.DeleteTeamResponse
	109, // 332: bucketeer.gateway.Gateway.ListTeams:output_type -> bucketeer.gateway.ListTeamsResponse
	111, // 333: bucketeer.gateway.Gateway.GetSubscription:output_type -> bucketeer.gateway.GetSubscriptionResponse
	113, // 334: bucketeer.gateway.Gateway.ListSubscriptions:output_type -> bucketeer.gateway.ListSubscriptionsResponse
	115, // 335: bucketeer.gateway.Gateway.CreateSubscription:output_type -> bucketeer.gateway.CreateSubscriptionResponse
	117, // 336: bucketeer.gateway.Gateway.DeleteSubscription:output_type -> bucketeer.gateway.DeleteSubscriptionResponse
	119, // 337: bucketeer.gateway.Gateway.UpdateSubscription:output_type -> bucketeer.gateway.UpdateSubscriptionResponse
	121, // 338: bucketeer.gateway.Gateway.CreateFlagTrigger:output_type -> bucketeer.gateway.CreateFlagTriggerResponse
	123, // 339: bucketeer.gateway.Gateway.DeleteFlagTrigger:output_type -> bucketeer.gateway.DeleteFlagTriggerResponse
	125, // 340: bucketeer.gateway.Gateway.UpdateFlagTrigger:output_type -> bucketeer.gateway.UpdateFlagTriggerResponse
	127, // 341: bucketeer.gateway.Gateway.GetFlagTrigger:output_type -> bucketeer.gateway.GetFlagTriggerResponse
	129, // 342: bucketeer.gateway.Gateway.ListFlagTriggers:output_type -> bucketeer.gateway.ListFlagTriggersResponse
	141, // 343: bucketeer.gateway.Gateway.GetExperiment:output_type -> bucketeer.gateway.GetExperimentResponse
	143, // 344: bucketeer.gateway.Gateway.ListExperiments:output_type -> bucketeer.gateway.ListExperimentsResponse
	145, // 345: bucketeer.gateway.Gateway.CreateExperiment:output_type -> bucketeer.gateway.CreateExperimentResponse
	147, // 346: bucketeer.gateway.Gateway.UpdateExperiment:output_type -> bucketeer.gateway.UpdateExperimentResponse
	131, // 347: bucketeer.gateway.Gateway.GetGoal:output_type -> bucketeer.gateway.GetGoalResponse
	133, // 348: bucketeer.gateway.Gateway.ListGoals:output_type -> bucketeer.gateway.ListGoalsResponse
	135, // 349: bucketeer.gateway.Gateway.CreateGoal:output_type -> bucketeer.gateway.CreateGoalResponse
	137, // 350: bucketeer.gateway.Gateway.DeleteGoal:output_type -> bucketeer.gateway.DeleteGoalResponse
	139, // 351: bucketeer.gateway.Gateway.UpdateGoal:output_type -> bucketeer.gateway.UpdateGoalResponse
	149, // 352: bucketeer.gateway.Gateway.GetExperimentEvaluationCount:output_type -> bucketeer.gateway.GetExperimentEvaluationCountResponse
	151, // 353: bucketeer.gateway.Gateway.GetEvaluationTimeseriesCount:output_type -> bucketeer.gateway.GetEvaluationTimeseriesCountResponse
	153, // 354: bucketeer.gateway.Gateway.GetExperimentResult:output_type -> bucketeer.gateway.GetExperimentResultResponse
	155, // 355: bucketeer.gateway.Gateway.ListExperimentResults:output_type -> bucketeer.gateway.ListExperimentResultsResponse
	157, // 356: bucketeer.gateway.Gateway.GetExperimentGoalCount:output_type -> bucketeer.gateway.GetExperimentGoalCountResponse
	159, // 357: bucketeer.gateway.Gateway.GetOpsEvaluationUserCount:output_type -> bucketeer.gateway.GetOpsEvaluationUserCountResponse
	161, // 358: bucketeer.gateway.Gateway.GetOpsGoalUserCount:output_type -> bucketeer.gateway.GetOpsGoalUserCountResponse
	163, // 359: bucketeer.gateway.Gateway.GetEnvironmentV2:output_type -> bucketeer.gateway.GetEnvironmentV2Response
	165, // 360: bucketeer.gateway.Gateway.ListEnvironmentsV2:output_type -> bucketeer.gateway.ListEnvironmentsV2Response
	167, // 361: bucketeer.gateway.Gateway.GetProject:output_type -> bucketeer.gateway.GetProjectResponse
	169, // 362: bucketeer.gateway.Gateway.ListProjects:output_type -> bucketeer.gateway.ListProjectsResponse
	278, // [278:363] is the sub-list for method output_type
	193, // [193:278] is the sub-list for method input_type
	193, // [193:193] is the sub-list for extension type_name
	193, // [193:193] is the sub-list for extension extendee
	0,   // [0:193] is the sub-list for field type_name
}

func init() { file_proto_gateway_service_proto_init() }
func file_proto_gateway_service_proto_init() {
	if File_proto_gateway_service_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_proto_gateway_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PingRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PingResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetFeatureFlagsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetFeatureFlagsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetSegmentUsersRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetSegmentUsersResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetEvaluationsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetEvaluationsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetEvaluationRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetEvaluationResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RegisterEventsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RegisterEventsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TrackRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TrackResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DebugEvaluateFeaturesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DebugEvaluateFeaturesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFeatureRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFeatureResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetFeatureRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetFeatureResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFeaturesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFeaturesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFeatureRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFeatureResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListPushesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListPushesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreatePushRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreatePushResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetPushRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetPushResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePushRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdatePushResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateAccountV2Request); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateAccountV2Response); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateAccountV2Request); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateAccountV2Response); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetAccountV2Request); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetAccountV2Response); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetAccountV2ByEnvironmentIDRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetAccountV2ByEnvironmentIDResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetMeRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetMeResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListAccountsV2Request); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListAccountsV2Response); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetCodeReferenceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetCodeReferenceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListCodeReferencesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListCodeReferencesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateCodeReferenceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateCodeReferenceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateCodeReferenceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateCodeReferenceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteCodeReferenceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteCodeReferenceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSegmentRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSegmentResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetSegmentRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetSegmentResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSegmentsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSegmentsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteSegmentRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteSegmentResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSegmentRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSegmentResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BulkUploadSegmentUsersRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BulkUploadSegmentUsersResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetAuditLogRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetAuditLogResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListAuditLogsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListAuditLogsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFeatureHistoryRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFeatureHistoryResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetAutoOpsRuleRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetAutoOpsRuleResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateAutoOpsRuleRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateAutoOpsRuleResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListAutoOpsRulesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListAutoOpsRulesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StopAutoOpsRuleRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StopAutoOpsRuleResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteAutoOpsRuleRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteAutoOpsRuleResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateAutoOpsRuleRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateAutoOpsRuleResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExecuteAutoOpsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExecuteAutoOpsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateProgressiveRolloutRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateProgressiveRolloutResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetProgressiveRolloutRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetProgressiveRolloutResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StopProgressiveRolloutRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StopProgressiveRolloutResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteProgressiveRolloutRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteProgressiveRolloutResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListProgressiveRolloutsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListProgressiveRolloutsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExecuteProgressiveRolloutRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExecuteProgressiveRolloutResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateTagRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateTagResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteTagRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteTagResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListTagsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListTagsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateTeamRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateTeamResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteTeamRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteTeamResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListTeamsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListTeamsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetSubscriptionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetSubscriptionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSubscriptionsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListSubscriptionsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSubscriptionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateSubscriptionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteSubscriptionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteSubscriptionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSubscriptionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateSubscriptionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFlagTriggerRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateFlagTriggerResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFlagTriggerRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteFlagTriggerResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFlagTriggerRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateFlagTriggerResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetFlagTriggerRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetFlagTriggerResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFlagTriggersRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListFlagTriggersResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetGoalRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetGoalResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListGoalsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListGoalsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateGoalRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateGoalResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteGoalRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteGoalResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateGoalRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateGoalResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetExperimentRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetExperimentResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListExperimentsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListExperimentsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateExperimentRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateExperimentResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateExperimentRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateExperimentResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetExperimentEvaluationCountRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetExperimentEvaluationCountResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetEvaluationTimeseriesCountRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetEvaluationTimeseriesCountResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetExperimentResultRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetExperimentResultResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListExperimentResultsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListExperimentResultsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetExperimentGoalCountRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetExperimentGoalCountResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetOpsEvaluationUserCountRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetOpsEvaluationUserCountResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetOpsGoalUserCountRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetOpsGoalUserCountResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetEnvironmentV2Request); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetEnvironmentV2Response); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListEnvironmentsV2Request); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[165].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListEnvironmentsV2Response); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[166].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetProjectRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[167].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetProjectResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[168].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListProjectsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[169].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListProjectsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetEvaluationsRequest_UserEvaluationCondition); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_proto_gateway_service_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RegisterEventsResponse_Error); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_proto_gateway_service_proto_msgTypes[86].OneofWrappers = []interface{}{}
	file_proto_gateway_service_proto_msgTypes[94].OneofWrappers = []interface{}{}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_proto_gateway_service_proto_rawDesc,
			NumEnums:      0,
			NumMessages:   174,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_proto_gateway_service_proto_goTypes,
		DependencyIndexes: file_proto_gateway_service_proto_depIdxs,
		MessageInfos:      file_proto_gateway_service_proto_msgTypes,
	}.Build()
	File_proto_gateway_service_proto = out.File
	file_proto_gateway_service_proto_rawDesc = nil
	file_proto_gateway_service_proto_goTypes = nil
	file_proto_gateway_service_proto_depIdxs = nil
}

// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConnInterface

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion6

// GatewayClient is the client API for Gateway service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type GatewayClient interface {
	GetEvaluations(ctx context.Context, in *GetEvaluationsRequest, opts ...grpc.CallOption) (*GetEvaluationsResponse, error)
	GetEvaluation(ctx context.Context, in *GetEvaluationRequest, opts ...grpc.CallOption) (*GetEvaluationResponse, error)
	GetFeatureFlags(ctx context.Context, in *GetFeatureFlagsRequest, opts ...grpc.CallOption) (*GetFeatureFlagsResponse, error)
	GetSegmentUsers(ctx context.Context, in *GetSegmentUsersRequest, opts ...grpc.CallOption) (*GetSegmentUsersResponse, error)
	RegisterEvents(ctx context.Context, in *RegisterEventsRequest, opts ...grpc.CallOption) (*RegisterEventsResponse, error)
	Track(ctx context.Context, in *TrackRequest, opts ...grpc.CallOption) (*TrackResponse, error)
	DebugEvaluateFeatures(ctx context.Context, in *DebugEvaluateFeaturesRequest, opts ...grpc.CallOption) (*DebugEvaluateFeaturesResponse, error)
	CreateFeature(ctx context.Context, in *CreateFeatureRequest, opts ...grpc.CallOption) (*CreateFeatureResponse, error)
	GetFeature(ctx context.Context, in *GetFeatureRequest, opts ...grpc.CallOption) (*GetFeatureResponse, error)
	ListFeatures(ctx context.Context, in *ListFeaturesRequest, opts ...grpc.CallOption) (*ListFeaturesResponse, error)
	UpdateFeature(ctx context.Context, in *UpdateFeatureRequest, opts ...grpc.CallOption) (*UpdateFeatureResponse, error)
	Ping(ctx context.Context, in *PingRequest, opts ...grpc.CallOption) (*PingResponse, error)
	ListPushes(ctx context.Context, in *ListPushesRequest, opts ...grpc.CallOption) (*ListPushesResponse, error)
	CreatePush(ctx context.Context, in *CreatePushRequest, opts ...grpc.CallOption) (*CreatePushResponse, error)
	GetPush(ctx context.Context, in *GetPushRequest, opts ...grpc.CallOption) (*GetPushResponse, error)
	UpdatePush(ctx context.Context, in *UpdatePushRequest, opts ...grpc.CallOption) (*UpdatePushResponse, error)
	CreateAccountV2(ctx context.Context, in *CreateAccountV2Request, opts ...grpc.CallOption) (*CreateAccountV2Response, error)
	UpdateAccountV2(ctx context.Context, in *UpdateAccountV2Request, opts ...grpc.CallOption) (*UpdateAccountV2Response, error)
	GetAccountV2(ctx context.Context, in *GetAccountV2Request, opts ...grpc.CallOption) (*GetAccountV2Response, error)
	GetAccountV2ByEnvironmentID(ctx context.Context, in *GetAccountV2ByEnvironmentIDRequest, opts ...grpc.CallOption) (*GetAccountV2ByEnvironmentIDResponse, error)
	GetMe(ctx context.Context, in *GetMeRequest, opts ...grpc.CallOption) (*GetMeResponse, error)
	ListAccountsV2(ctx context.Context, in *ListAccountsV2Request, opts ...grpc.CallOption) (*ListAccountsV2Response, error)
	GetCodeReference(ctx context.Context, in *GetCodeReferenceRequest, opts ...grpc.CallOption) (*GetCodeReferenceResponse, error)
	ListCodeReferences(ctx context.Context, in *ListCodeReferencesRequest, opts ...grpc.CallOption) (*ListCodeReferencesResponse, error)
	CreateCodeReference(ctx context.Context, in *CreateCodeReferenceRequest, opts ...grpc.CallOption) (*CreateCodeReferenceResponse, error)
	UpdateCodeReference(ctx context.Context, in *UpdateCodeReferenceRequest, opts ...grpc.CallOption) (*UpdateCodeReferenceResponse, error)
	DeleteCodeReference(ctx context.Context, in *DeleteCodeReferenceRequest, opts ...grpc.CallOption) (*DeleteCodeReferenceResponse, error)
	CreateSegment(ctx context.Context, in *CreateSegmentRequest, opts ...grpc.CallOption) (*CreateSegmentResponse, error)
	GetSegment(ctx context.Context, in *GetSegmentRequest, opts ...grpc.CallOption) (*GetSegmentResponse, error)
	ListSegments(ctx context.Context, in *ListSegmentsRequest, opts ...grpc.CallOption) (*ListSegmentsResponse, error)
	DeleteSegment(ctx context.Context, in *DeleteSegmentRequest, opts ...grpc.CallOption) (*DeleteSegmentResponse, error)
	UpdateSegment(ctx context.Context, in *UpdateSegmentRequest, opts ...grpc.CallOption) (*UpdateSegmentResponse, error)
	BulkUploadSegmentUsers(ctx context.Context, in *BulkUploadSegmentUsersRequest, opts ...grpc.CallOption) (*BulkUploadSegmentUsersResponse, error)
	GetAuditLog(ctx context.Context, in *GetAuditLogRequest, opts ...grpc.CallOption) (*GetAuditLogResponse, error)
	ListAuditLogs(ctx context.Context, in *ListAuditLogsRequest, opts ...grpc.CallOption) (*ListAuditLogsResponse, error)
	ListFeatureHistory(ctx context.Context, in *ListFeatureHistoryRequest, opts ...grpc.CallOption) (*ListFeatureHistoryResponse, error)
	GetAutoOpsRule(ctx context.Context, in *GetAutoOpsRuleRequest, opts ...grpc.CallOption) (*GetAutoOpsRuleResponse, error)
	CreateAutoOpsRule(ctx context.Context, in *CreateAutoOpsRuleRequest, opts ...grpc.CallOption) (*CreateAutoOpsRuleResponse, error)
	ListAutoOpsRules(ctx context.Context, in *ListAutoOpsRulesRequest, opts ...grpc.CallOption) (*ListAutoOpsRulesResponse, error)
	StopAutoOpsRule(ctx context.Context, in *StopAutoOpsRuleRequest, opts ...grpc.CallOption) (*StopAutoOpsRuleResponse, error)
	DeleteAutoOpsRule(ctx context.Context, in *DeleteAutoOpsRuleRequest, opts ...grpc.CallOption) (*DeleteAutoOpsRuleResponse, error)
	UpdateAutoOpsRule(ctx context.Context, in *UpdateAutoOpsRuleRequest, opts ...grpc.CallOption) (*UpdateAutoOpsRuleResponse, error)
	ExecuteAutoOps(ctx context.Context, in *ExecuteAutoOpsRequest, opts ...grpc.CallOption) (*ExecuteAutoOpsResponse, error)
	CreateProgressiveRollout(ctx context.Context, in *CreateProgressiveRolloutRequest, opts ...grpc.CallOption) (*CreateProgressiveRolloutResponse, error)
	GetProgressiveRollout(ctx context.Context, in *GetProgressiveRolloutRequest, opts ...grpc.CallOption) (*GetProgressiveRolloutResponse, error)
	StopProgressiveRollout(ctx context.Context, in *StopProgressiveRolloutRequest, opts ...grpc.CallOption) (*StopProgressiveRolloutResponse, error)
	DeleteProgressiveRollout(ctx context.Context, in *DeleteProgressiveRolloutRequest, opts ...grpc.CallOption) (*DeleteProgressiveRolloutResponse, error)
	ListProgressiveRollouts(ctx context.Context, in *ListProgressiveRolloutsRequest, opts ...grpc.CallOption) (*ListProgressiveRolloutsResponse, error)
	ExecuteProgressiveRollout(ctx context.Context, in *ExecuteProgressiveRolloutRequest, opts ...grpc.CallOption) (*ExecuteProgressiveRolloutResponse, error)
	CreateTag(ctx context.Context, in *CreateTagRequest, opts ...grpc.CallOption) (*CreateTagResponse, error)
	DeleteTag(ctx context.Context, in *DeleteTagRequest, opts ...grpc.CallOption) (*DeleteTagResponse, error)
	ListTags(ctx context.Context, in *ListTagsRequest, opts ...grpc.CallOption) (*ListTagsResponse, error)
	CreateTeam(ctx context.Context, in *CreateTeamRequest, opts ...grpc.CallOption) (*CreateTeamResponse, error)
	DeleteTeam(ctx context.Context, in *DeleteTeamRequest, opts ...grpc.CallOption) (*DeleteTeamResponse, error)
	ListTeams(ctx context.Context, in *ListTeamsRequest, opts ...grpc.CallOption) (*ListTeamsResponse, error)
	GetSubscription(ctx context.Context, in *GetSubscriptionRequest, opts ...grpc.CallOption) (*GetSubscriptionResponse, error)
	ListSubscriptions(ctx context.Context, in *ListSubscriptionsRequest, opts ...grpc.CallOption) (*ListSubscriptionsResponse, error)
	CreateSubscription(ctx context.Context, in *CreateSubscriptionRequest, opts ...grpc.CallOption) (*CreateSubscriptionResponse, error)
	DeleteSubscription(ctx context.Context, in *DeleteSubscriptionRequest, opts ...grpc.CallOption) (*DeleteSubscriptionResponse, error)
	UpdateSubscription(ctx context.Context, in *UpdateSubscriptionRequest, opts ...grpc.CallOption) (*UpdateSubscriptionResponse, error)
	CreateFlagTrigger(ctx context.Context, in *CreateFlagTriggerRequest, opts ...grpc.CallOption) (*CreateFlagTriggerResponse, error)
	DeleteFlagTrigger(ctx context.Context, in *DeleteFlagTriggerRequest, opts ...grpc.CallOption) (*DeleteFlagTriggerResponse, error)
	UpdateFlagTrigger(ctx context.Context, in *UpdateFlagTriggerRequest, opts ...grpc.CallOption) (*UpdateFlagTriggerResponse, error)
	GetFlagTrigger(ctx context.Context, in *GetFlagTriggerRequest, opts ...grpc.CallOption) (*GetFlagTriggerResponse, error)
	ListFlagTriggers(ctx context.Context, in *ListFlagTriggersRequest, opts ...grpc.CallOption) (*ListFlagTriggersResponse, error)
	GetExperiment(ctx context.Context, in *GetExperimentRequest, opts ...grpc.CallOption) (*GetExperimentResponse, error)
	ListExperiments(ctx context.Context, in *ListExperimentsRequest, opts ...grpc.CallOption) (*ListExperimentsResponse, error)
	CreateExperiment(ctx context.Context, in *CreateExperimentRequest, opts ...grpc.CallOption) (*CreateExperimentResponse, error)
	UpdateExperiment(ctx context.Context, in *UpdateExperimentRequest, opts ...grpc.CallOption) (*UpdateExperimentResponse, error)
	GetGoal(ctx context.Context, in *GetGoalRequest, opts ...grpc.CallOption) (*GetGoalResponse, error)
	ListGoals(ctx context.Context, in *ListGoalsRequest, opts ...grpc.CallOption) (*ListGoalsResponse, error)
	CreateGoal(ctx context.Context, in *CreateGoalRequest, opts ...grpc.CallOption) (*CreateGoalResponse, error)
	DeleteGoal(ctx context.Context, in *DeleteGoalRequest, opts ...grpc.CallOption) (*DeleteGoalResponse, error)
	UpdateGoal(ctx context.Context, in *UpdateGoalRequest, opts ...grpc.CallOption) (*UpdateGoalResponse, error)
	GetExperimentEvaluationCount(ctx context.Context, in *GetExperimentEvaluationCountRequest, opts ...grpc.CallOption) (*GetExperimentEvaluationCountResponse, error)
	GetEvaluationTimeseriesCount(ctx context.Context, in *GetEvaluationTimeseriesCountRequest, opts ...grpc.CallOption) (*GetEvaluationTimeseriesCountResponse, error)
	GetExperimentResult(ctx context.Context, in *GetExperimentResultRequest, opts ...grpc.CallOption) (*GetExperimentResultResponse, error)
	ListExperimentResults(ctx context.Context, in *ListExperimentResultsRequest, opts ...grpc.CallOption) (*ListExperimentResultsResponse, error)
	GetExperimentGoalCount(ctx context.Context, in *GetExperimentGoalCountRequest, opts ...grpc.CallOption) (*GetExperimentGoalCountResponse, error)
	GetOpsEvaluationUserCount(ctx context.Context, in *GetOpsEvaluationUserCountRequest, opts ...grpc.CallOption) (*GetOpsEvaluationUserCountResponse, error)
	GetOpsGoalUserCount(ctx context.Context, in *GetOpsGoalUserCountRequest, opts ...grpc.CallOption) (*GetOpsGoalUserCountResponse, error)
	GetEnvironmentV2(ctx context.Context, in *GetEnvironmentV2Request, opts ...grpc.CallOption) (*GetEnvironmentV2Response, error)
	ListEnvironmentsV2(ctx context.Context, in *ListEnvironmentsV2Request, opts ...grpc.CallOption) (*ListEnvironmentsV2Response, error)
	GetProject(ctx context.Context, in *GetProjectRequest, opts ...grpc.CallOption) (*GetProjectResponse, error)
	ListProjects(ctx context.Context, in *ListProjectsRequest, opts ...grpc.CallOption) (*ListProjectsResponse, error)
}

type gatewayClient struct {
	cc grpc.ClientConnInterface
}

func NewGatewayClient(cc grpc.ClientConnInterface) GatewayClient {
	return &gatewayClient{cc}
}

func (c *gatewayClient) GetEvaluations(ctx context.Context, in *GetEvaluationsRequest, opts ...grpc.CallOption) (*GetEvaluationsResponse, error) {
	out := new(GetEvaluationsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetEvaluations", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetEvaluation(ctx context.Context, in *GetEvaluationRequest, opts ...grpc.CallOption) (*GetEvaluationResponse, error) {
	out := new(GetEvaluationResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetEvaluation", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetFeatureFlags(ctx context.Context, in *GetFeatureFlagsRequest, opts ...grpc.CallOption) (*GetFeatureFlagsResponse, error) {
	out := new(GetFeatureFlagsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetFeatureFlags", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetSegmentUsers(ctx context.Context, in *GetSegmentUsersRequest, opts ...grpc.CallOption) (*GetSegmentUsersResponse, error) {
	out := new(GetSegmentUsersResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetSegmentUsers", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) RegisterEvents(ctx context.Context, in *RegisterEventsRequest, opts ...grpc.CallOption) (*RegisterEventsResponse, error) {
	out := new(RegisterEventsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/RegisterEvents", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) Track(ctx context.Context, in *TrackRequest, opts ...grpc.CallOption) (*TrackResponse, error) {
	out := new(TrackResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/Track", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) DebugEvaluateFeatures(ctx context.Context, in *DebugEvaluateFeaturesRequest, opts ...grpc.CallOption) (*DebugEvaluateFeaturesResponse, error) {
	out := new(DebugEvaluateFeaturesResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/DebugEvaluateFeatures", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateFeature(ctx context.Context, in *CreateFeatureRequest, opts ...grpc.CallOption) (*CreateFeatureResponse, error) {
	out := new(CreateFeatureResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateFeature", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetFeature(ctx context.Context, in *GetFeatureRequest, opts ...grpc.CallOption) (*GetFeatureResponse, error) {
	out := new(GetFeatureResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetFeature", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListFeatures(ctx context.Context, in *ListFeaturesRequest, opts ...grpc.CallOption) (*ListFeaturesResponse, error) {
	out := new(ListFeaturesResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListFeatures", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) UpdateFeature(ctx context.Context, in *UpdateFeatureRequest, opts ...grpc.CallOption) (*UpdateFeatureResponse, error) {
	out := new(UpdateFeatureResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/UpdateFeature", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) Ping(ctx context.Context, in *PingRequest, opts ...grpc.CallOption) (*PingResponse, error) {
	out := new(PingResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/Ping", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListPushes(ctx context.Context, in *ListPushesRequest, opts ...grpc.CallOption) (*ListPushesResponse, error) {
	out := new(ListPushesResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListPushes", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreatePush(ctx context.Context, in *CreatePushRequest, opts ...grpc.CallOption) (*CreatePushResponse, error) {
	out := new(CreatePushResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreatePush", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetPush(ctx context.Context, in *GetPushRequest, opts ...grpc.CallOption) (*GetPushResponse, error) {
	out := new(GetPushResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetPush", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) UpdatePush(ctx context.Context, in *UpdatePushRequest, opts ...grpc.CallOption) (*UpdatePushResponse, error) {
	out := new(UpdatePushResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/UpdatePush", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateAccountV2(ctx context.Context, in *CreateAccountV2Request, opts ...grpc.CallOption) (*CreateAccountV2Response, error) {
	out := new(CreateAccountV2Response)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateAccountV2", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) UpdateAccountV2(ctx context.Context, in *UpdateAccountV2Request, opts ...grpc.CallOption) (*UpdateAccountV2Response, error) {
	out := new(UpdateAccountV2Response)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/UpdateAccountV2", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetAccountV2(ctx context.Context, in *GetAccountV2Request, opts ...grpc.CallOption) (*GetAccountV2Response, error) {
	out := new(GetAccountV2Response)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetAccountV2", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetAccountV2ByEnvironmentID(ctx context.Context, in *GetAccountV2ByEnvironmentIDRequest, opts ...grpc.CallOption) (*GetAccountV2ByEnvironmentIDResponse, error) {
	out := new(GetAccountV2ByEnvironmentIDResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetAccountV2ByEnvironmentID", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetMe(ctx context.Context, in *GetMeRequest, opts ...grpc.CallOption) (*GetMeResponse, error) {
	out := new(GetMeResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetMe", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListAccountsV2(ctx context.Context, in *ListAccountsV2Request, opts ...grpc.CallOption) (*ListAccountsV2Response, error) {
	out := new(ListAccountsV2Response)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListAccountsV2", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetCodeReference(ctx context.Context, in *GetCodeReferenceRequest, opts ...grpc.CallOption) (*GetCodeReferenceResponse, error) {
	out := new(GetCodeReferenceResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetCodeReference", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListCodeReferences(ctx context.Context, in *ListCodeReferencesRequest, opts ...grpc.CallOption) (*ListCodeReferencesResponse, error) {
	out := new(ListCodeReferencesResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListCodeReferences", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateCodeReference(ctx context.Context, in *CreateCodeReferenceRequest, opts ...grpc.CallOption) (*CreateCodeReferenceResponse, error) {
	out := new(CreateCodeReferenceResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateCodeReference", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) UpdateCodeReference(ctx context.Context, in *UpdateCodeReferenceRequest, opts ...grpc.CallOption) (*UpdateCodeReferenceResponse, error) {
	out := new(UpdateCodeReferenceResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/UpdateCodeReference", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) DeleteCodeReference(ctx context.Context, in *DeleteCodeReferenceRequest, opts ...grpc.CallOption) (*DeleteCodeReferenceResponse, error) {
	out := new(DeleteCodeReferenceResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/DeleteCodeReference", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateSegment(ctx context.Context, in *CreateSegmentRequest, opts ...grpc.CallOption) (*CreateSegmentResponse, error) {
	out := new(CreateSegmentResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateSegment", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetSegment(ctx context.Context, in *GetSegmentRequest, opts ...grpc.CallOption) (*GetSegmentResponse, error) {
	out := new(GetSegmentResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetSegment", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListSegments(ctx context.Context, in *ListSegmentsRequest, opts ...grpc.CallOption) (*ListSegmentsResponse, error) {
	out := new(ListSegmentsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListSegments", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) DeleteSegment(ctx context.Context, in *DeleteSegmentRequest, opts ...grpc.CallOption) (*DeleteSegmentResponse, error) {
	out := new(DeleteSegmentResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/DeleteSegment", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) UpdateSegment(ctx context.Context, in *UpdateSegmentRequest, opts ...grpc.CallOption) (*UpdateSegmentResponse, error) {
	out := new(UpdateSegmentResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/UpdateSegment", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) BulkUploadSegmentUsers(ctx context.Context, in *BulkUploadSegmentUsersRequest, opts ...grpc.CallOption) (*BulkUploadSegmentUsersResponse, error) {
	out := new(BulkUploadSegmentUsersResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/BulkUploadSegmentUsers", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetAuditLog(ctx context.Context, in *GetAuditLogRequest, opts ...grpc.CallOption) (*GetAuditLogResponse, error) {
	out := new(GetAuditLogResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetAuditLog", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListAuditLogs(ctx context.Context, in *ListAuditLogsRequest, opts ...grpc.CallOption) (*ListAuditLogsResponse, error) {
	out := new(ListAuditLogsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListAuditLogs", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListFeatureHistory(ctx context.Context, in *ListFeatureHistoryRequest, opts ...grpc.CallOption) (*ListFeatureHistoryResponse, error) {
	out := new(ListFeatureHistoryResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListFeatureHistory", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetAutoOpsRule(ctx context.Context, in *GetAutoOpsRuleRequest, opts ...grpc.CallOption) (*GetAutoOpsRuleResponse, error) {
	out := new(GetAutoOpsRuleResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetAutoOpsRule", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateAutoOpsRule(ctx context.Context, in *CreateAutoOpsRuleRequest, opts ...grpc.CallOption) (*CreateAutoOpsRuleResponse, error) {
	out := new(CreateAutoOpsRuleResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateAutoOpsRule", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListAutoOpsRules(ctx context.Context, in *ListAutoOpsRulesRequest, opts ...grpc.CallOption) (*ListAutoOpsRulesResponse, error) {
	out := new(ListAutoOpsRulesResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListAutoOpsRules", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) StopAutoOpsRule(ctx context.Context, in *StopAutoOpsRuleRequest, opts ...grpc.CallOption) (*StopAutoOpsRuleResponse, error) {
	out := new(StopAutoOpsRuleResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/StopAutoOpsRule", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) DeleteAutoOpsRule(ctx context.Context, in *DeleteAutoOpsRuleRequest, opts ...grpc.CallOption) (*DeleteAutoOpsRuleResponse, error) {
	out := new(DeleteAutoOpsRuleResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/DeleteAutoOpsRule", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) UpdateAutoOpsRule(ctx context.Context, in *UpdateAutoOpsRuleRequest, opts ...grpc.CallOption) (*UpdateAutoOpsRuleResponse, error) {
	out := new(UpdateAutoOpsRuleResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/UpdateAutoOpsRule", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ExecuteAutoOps(ctx context.Context, in *ExecuteAutoOpsRequest, opts ...grpc.CallOption) (*ExecuteAutoOpsResponse, error) {
	out := new(ExecuteAutoOpsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ExecuteAutoOps", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateProgressiveRollout(ctx context.Context, in *CreateProgressiveRolloutRequest, opts ...grpc.CallOption) (*CreateProgressiveRolloutResponse, error) {
	out := new(CreateProgressiveRolloutResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateProgressiveRollout", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetProgressiveRollout(ctx context.Context, in *GetProgressiveRolloutRequest, opts ...grpc.CallOption) (*GetProgressiveRolloutResponse, error) {
	out := new(GetProgressiveRolloutResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetProgressiveRollout", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) StopProgressiveRollout(ctx context.Context, in *StopProgressiveRolloutRequest, opts ...grpc.CallOption) (*StopProgressiveRolloutResponse, error) {
	out := new(StopProgressiveRolloutResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/StopProgressiveRollout", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) DeleteProgressiveRollout(ctx context.Context, in *DeleteProgressiveRolloutRequest, opts ...grpc.CallOption) (*DeleteProgressiveRolloutResponse, error) {
	out := new(DeleteProgressiveRolloutResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/DeleteProgressiveRollout", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListProgressiveRollouts(ctx context.Context, in *ListProgressiveRolloutsRequest, opts ...grpc.CallOption) (*ListProgressiveRolloutsResponse, error) {
	out := new(ListProgressiveRolloutsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListProgressiveRollouts", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ExecuteProgressiveRollout(ctx context.Context, in *ExecuteProgressiveRolloutRequest, opts ...grpc.CallOption) (*ExecuteProgressiveRolloutResponse, error) {
	out := new(ExecuteProgressiveRolloutResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ExecuteProgressiveRollout", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateTag(ctx context.Context, in *CreateTagRequest, opts ...grpc.CallOption) (*CreateTagResponse, error) {
	out := new(CreateTagResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateTag", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) DeleteTag(ctx context.Context, in *DeleteTagRequest, opts ...grpc.CallOption) (*DeleteTagResponse, error) {
	out := new(DeleteTagResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/DeleteTag", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListTags(ctx context.Context, in *ListTagsRequest, opts ...grpc.CallOption) (*ListTagsResponse, error) {
	out := new(ListTagsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListTags", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateTeam(ctx context.Context, in *CreateTeamRequest, opts ...grpc.CallOption) (*CreateTeamResponse, error) {
	out := new(CreateTeamResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateTeam", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) DeleteTeam(ctx context.Context, in *DeleteTeamRequest, opts ...grpc.CallOption) (*DeleteTeamResponse, error) {
	out := new(DeleteTeamResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/DeleteTeam", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListTeams(ctx context.Context, in *ListTeamsRequest, opts ...grpc.CallOption) (*ListTeamsResponse, error) {
	out := new(ListTeamsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListTeams", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetSubscription(ctx context.Context, in *GetSubscriptionRequest, opts ...grpc.CallOption) (*GetSubscriptionResponse, error) {
	out := new(GetSubscriptionResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetSubscription", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListSubscriptions(ctx context.Context, in *ListSubscriptionsRequest, opts ...grpc.CallOption) (*ListSubscriptionsResponse, error) {
	out := new(ListSubscriptionsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListSubscriptions", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateSubscription(ctx context.Context, in *CreateSubscriptionRequest, opts ...grpc.CallOption) (*CreateSubscriptionResponse, error) {
	out := new(CreateSubscriptionResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateSubscription", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) DeleteSubscription(ctx context.Context, in *DeleteSubscriptionRequest, opts ...grpc.CallOption) (*DeleteSubscriptionResponse, error) {
	out := new(DeleteSubscriptionResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/DeleteSubscription", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) UpdateSubscription(ctx context.Context, in *UpdateSubscriptionRequest, opts ...grpc.CallOption) (*UpdateSubscriptionResponse, error) {
	out := new(UpdateSubscriptionResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/UpdateSubscription", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateFlagTrigger(ctx context.Context, in *CreateFlagTriggerRequest, opts ...grpc.CallOption) (*CreateFlagTriggerResponse, error) {
	out := new(CreateFlagTriggerResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateFlagTrigger", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) DeleteFlagTrigger(ctx context.Context, in *DeleteFlagTriggerRequest, opts ...grpc.CallOption) (*DeleteFlagTriggerResponse, error) {
	out := new(DeleteFlagTriggerResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/DeleteFlagTrigger", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) UpdateFlagTrigger(ctx context.Context, in *UpdateFlagTriggerRequest, opts ...grpc.CallOption) (*UpdateFlagTriggerResponse, error) {
	out := new(UpdateFlagTriggerResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/UpdateFlagTrigger", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetFlagTrigger(ctx context.Context, in *GetFlagTriggerRequest, opts ...grpc.CallOption) (*GetFlagTriggerResponse, error) {
	out := new(GetFlagTriggerResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetFlagTrigger", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListFlagTriggers(ctx context.Context, in *ListFlagTriggersRequest, opts ...grpc.CallOption) (*ListFlagTriggersResponse, error) {
	out := new(ListFlagTriggersResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListFlagTriggers", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetExperiment(ctx context.Context, in *GetExperimentRequest, opts ...grpc.CallOption) (*GetExperimentResponse, error) {
	out := new(GetExperimentResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetExperiment", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListExperiments(ctx context.Context, in *ListExperimentsRequest, opts ...grpc.CallOption) (*ListExperimentsResponse, error) {
	out := new(ListExperimentsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListExperiments", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateExperiment(ctx context.Context, in *CreateExperimentRequest, opts ...grpc.CallOption) (*CreateExperimentResponse, error) {
	out := new(CreateExperimentResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateExperiment", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) UpdateExperiment(ctx context.Context, in *UpdateExperimentRequest, opts ...grpc.CallOption) (*UpdateExperimentResponse, error) {
	out := new(UpdateExperimentResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/UpdateExperiment", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetGoal(ctx context.Context, in *GetGoalRequest, opts ...grpc.CallOption) (*GetGoalResponse, error) {
	out := new(GetGoalResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetGoal", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListGoals(ctx context.Context, in *ListGoalsRequest, opts ...grpc.CallOption) (*ListGoalsResponse, error) {
	out := new(ListGoalsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListGoals", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) CreateGoal(ctx context.Context, in *CreateGoalRequest, opts ...grpc.CallOption) (*CreateGoalResponse, error) {
	out := new(CreateGoalResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/CreateGoal", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) DeleteGoal(ctx context.Context, in *DeleteGoalRequest, opts ...grpc.CallOption) (*DeleteGoalResponse, error) {
	out := new(DeleteGoalResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/DeleteGoal", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) UpdateGoal(ctx context.Context, in *UpdateGoalRequest, opts ...grpc.CallOption) (*UpdateGoalResponse, error) {
	out := new(UpdateGoalResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/UpdateGoal", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetExperimentEvaluationCount(ctx context.Context, in *GetExperimentEvaluationCountRequest, opts ...grpc.CallOption) (*GetExperimentEvaluationCountResponse, error) {
	out := new(GetExperimentEvaluationCountResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetExperimentEvaluationCount", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetEvaluationTimeseriesCount(ctx context.Context, in *GetEvaluationTimeseriesCountRequest, opts ...grpc.CallOption) (*GetEvaluationTimeseriesCountResponse, error) {
	out := new(GetEvaluationTimeseriesCountResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetEvaluationTimeseriesCount", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetExperimentResult(ctx context.Context, in *GetExperimentResultRequest, opts ...grpc.CallOption) (*GetExperimentResultResponse, error) {
	out := new(GetExperimentResultResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetExperimentResult", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListExperimentResults(ctx context.Context, in *ListExperimentResultsRequest, opts ...grpc.CallOption) (*ListExperimentResultsResponse, error) {
	out := new(ListExperimentResultsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListExperimentResults", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetExperimentGoalCount(ctx context.Context, in *GetExperimentGoalCountRequest, opts ...grpc.CallOption) (*GetExperimentGoalCountResponse, error) {
	out := new(GetExperimentGoalCountResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetExperimentGoalCount", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetOpsEvaluationUserCount(ctx context.Context, in *GetOpsEvaluationUserCountRequest, opts ...grpc.CallOption) (*GetOpsEvaluationUserCountResponse, error) {
	out := new(GetOpsEvaluationUserCountResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetOpsEvaluationUserCount", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetOpsGoalUserCount(ctx context.Context, in *GetOpsGoalUserCountRequest, opts ...grpc.CallOption) (*GetOpsGoalUserCountResponse, error) {
	out := new(GetOpsGoalUserCountResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetOpsGoalUserCount", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetEnvironmentV2(ctx context.Context, in *GetEnvironmentV2Request, opts ...grpc.CallOption) (*GetEnvironmentV2Response, error) {
	out := new(GetEnvironmentV2Response)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetEnvironmentV2", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListEnvironmentsV2(ctx context.Context, in *ListEnvironmentsV2Request, opts ...grpc.CallOption) (*ListEnvironmentsV2Response, error) {
	out := new(ListEnvironmentsV2Response)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListEnvironmentsV2", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) GetProject(ctx context.Context, in *GetProjectRequest, opts ...grpc.CallOption) (*GetProjectResponse, error) {
	out := new(GetProjectResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/GetProject", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gatewayClient) ListProjects(ctx context.Context, in *ListProjectsRequest, opts ...grpc.CallOption) (*ListProjectsResponse, error) {
	out := new(ListProjectsResponse)
	err := c.cc.Invoke(ctx, "/bucketeer.gateway.Gateway/ListProjects", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// GatewayServer is the server API for Gateway service.
type GatewayServer interface {
	GetEvaluations(context.Context, *GetEvaluationsRequest) (*GetEvaluationsResponse, error)
	GetEvaluation(context.Context, *GetEvaluationRequest) (*GetEvaluationResponse, error)
	GetFeatureFlags(context.Context, *GetFeatureFlagsRequest) (*GetFeatureFlagsResponse, error)
	GetSegmentUsers(context.Context, *GetSegmentUsersRequest) (*GetSegmentUsersResponse, error)
	RegisterEvents(context.Context, *RegisterEventsRequest) (*RegisterEventsResponse, error)
	Track(context.Context, *TrackRequest) (*TrackResponse, error)
	DebugEvaluateFeatures(context.Context, *DebugEvaluateFeaturesRequest) (*DebugEvaluateFeaturesResponse, error)
	CreateFeature(context.Context, *CreateFeatureRequest) (*CreateFeatureResponse, error)
	GetFeature(context.Context, *GetFeatureRequest) (*GetFeatureResponse, error)
	ListFeatures(context.Context, *ListFeaturesRequest) (*ListFeaturesResponse, error)
	UpdateFeature(context.Context, *UpdateFeatureRequest) (*UpdateFeatureResponse, error)
	Ping(context.Context, *PingRequest) (*PingResponse, error)
	ListPushes(context.Context, *ListPushesRequest) (*ListPushesResponse, error)
	CreatePush(context.Context, *CreatePushRequest) (*CreatePushResponse, error)
	GetPush(context.Context, *GetPushRequest) (*GetPushResponse, error)
	UpdatePush(context.Context, *UpdatePushRequest) (*UpdatePushResponse, error)
	CreateAccountV2(context.Context, *CreateAccountV2Request) (*CreateAccountV2Response, error)
	UpdateAccountV2(context.Context, *UpdateAccountV2Request) (*UpdateAccountV2Response, error)
	GetAccountV2(context.Context, *GetAccountV2Request) (*GetAccountV2Response, error)
	GetAccountV2ByEnvironmentID(context.Context, *GetAccountV2ByEnvironmentIDRequest) (*GetAccountV2ByEnvironmentIDResponse, error)
	GetMe(context.Context, *GetMeRequest) (*GetMeResponse, error)
	ListAccountsV2(context.Context, *ListAccountsV2Request) (*ListAccountsV2Response, error)
	GetCodeReference(context.Context, *GetCodeReferenceRequest) (*GetCodeReferenceResponse, error)
	ListCodeReferences(context.Context, *ListCodeReferencesRequest) (*ListCodeReferencesResponse, error)
	CreateCodeReference(context.Context, *CreateCodeReferenceRequest) (*CreateCodeReferenceResponse, error)
	UpdateCodeReference(context.Context, *UpdateCodeReferenceRequest) (*UpdateCodeReferenceResponse, error)
	DeleteCodeReference(context.Context, *DeleteCodeReferenceRequest) (*DeleteCodeReferenceResponse, error)
	CreateSegment(context.Context, *CreateSegmentRequest) (*CreateSegmentResponse, error)
	GetSegment(context.Context, *GetSegmentRequest) (*GetSegmentResponse, error)
	ListSegments(context.Context, *ListSegmentsRequest) (*ListSegmentsResponse, error)
	DeleteSegment(context.Context, *DeleteSegmentRequest) (*DeleteSegmentResponse, error)
	UpdateSegment(context.Context, *UpdateSegmentRequest) (*UpdateSegmentResponse, error)
	BulkUploadSegmentUsers(context.Context, *BulkUploadSegmentUsersRequest) (*BulkUploadSegmentUsersResponse, error)
	GetAuditLog(context.Context, *GetAuditLogRequest) (*GetAuditLogResponse, error)
	ListAuditLogs(context.Context, *ListAuditLogsRequest) (*ListAuditLogsResponse, error)
	ListFeatureHistory(context.Context, *ListFeatureHistoryRequest) (*ListFeatureHistoryResponse, error)
	GetAutoOpsRule(context.Context, *GetAutoOpsRuleRequest) (*GetAutoOpsRuleResponse, error)
	CreateAutoOpsRule(context.Context, *CreateAutoOpsRuleRequest) (*CreateAutoOpsRuleResponse, error)
	ListAutoOpsRules(context.Context, *ListAutoOpsRulesRequest) (*ListAutoOpsRulesResponse, error)
	StopAutoOpsRule(context.Context, *StopAutoOpsRuleRequest) (*StopAutoOpsRuleResponse, error)
	DeleteAutoOpsRule(context.Context, *DeleteAutoOpsRuleRequest) (*DeleteAutoOpsRuleResponse, error)
	UpdateAutoOpsRule(context.Context, *UpdateAutoOpsRuleRequest) (*UpdateAutoOpsRuleResponse, error)
	ExecuteAutoOps(context.Context, *ExecuteAutoOpsRequest) (*ExecuteAutoOpsResponse, error)
	CreateProgressiveRollout(context.Context, *CreateProgressiveRolloutRequest) (*CreateProgressiveRolloutResponse, error)
	GetProgressiveRollout(context.Context, *GetProgressiveRolloutRequest) (*GetProgressiveRolloutResponse, error)
	StopProgressiveRollout(context.Context, *StopProgressiveRolloutRequest) (*StopProgressiveRolloutResponse, error)
	DeleteProgressiveRollout(context.Context, *DeleteProgressiveRolloutRequest) (*DeleteProgressiveRolloutResponse, error)
	ListProgressiveRollouts(context.Context, *ListProgressiveRolloutsRequest) (*ListProgressiveRolloutsResponse, error)
	ExecuteProgressiveRollout(context.Context, *ExecuteProgressiveRolloutRequest) (*ExecuteProgressiveRolloutResponse, error)
	CreateTag(context.Context, *CreateTagRequest) (*CreateTagResponse, error)
	DeleteTag(context.Context, *DeleteTagRequest) (*DeleteTagResponse, error)
	ListTags(context.Context, *ListTagsRequest) (*ListTagsResponse, error)
	CreateTeam(context.Context, *CreateTeamRequest) (*CreateTeamResponse, error)
	DeleteTeam(context.Context, *DeleteTeamRequest) (*DeleteTeamResponse, error)
	ListTeams(context.Context, *ListTeamsRequest) (*ListTeamsResponse, error)
	GetSubscription(context.Context, *GetSubscriptionRequest) (*GetSubscriptionResponse, error)
	ListSubscriptions(context.Context, *ListSubscriptionsRequest) (*ListSubscriptionsResponse, error)
	CreateSubscription(context.Context, *CreateSubscriptionRequest) (*CreateSubscriptionResponse, error)
	DeleteSubscription(context.Context, *DeleteSubscriptionRequest) (*DeleteSubscriptionResponse, error)
	UpdateSubscription(context.Context, *UpdateSubscriptionRequest) (*UpdateSubscriptionResponse, error)
	CreateFlagTrigger(context.Context, *CreateFlagTriggerRequest) (*CreateFlagTriggerResponse, error)
	DeleteFlagTrigger(context.Context, *DeleteFlagTriggerRequest) (*DeleteFlagTriggerResponse, error)
	UpdateFlagTrigger(context.Context, *UpdateFlagTriggerRequest) (*UpdateFlagTriggerResponse, error)
	GetFlagTrigger(context.Context, *GetFlagTriggerRequest) (*GetFlagTriggerResponse, error)
	ListFlagTriggers(context.Context, *ListFlagTriggersRequest) (*ListFlagTriggersResponse, error)
	GetExperiment(context.Context, *GetExperimentRequest) (*GetExperimentResponse, error)
	ListExperiments(context.Context, *ListExperimentsRequest) (*ListExperimentsResponse, error)
	CreateExperiment(context.Context, *CreateExperimentRequest) (*CreateExperimentResponse, error)
	UpdateExperiment(context.Context, *UpdateExperimentRequest) (*UpdateExperimentResponse, error)
	GetGoal(context.Context, *GetGoalRequest) (*GetGoalResponse, error)
	ListGoals(context.Context, *ListGoalsRequest) (*ListGoalsResponse, error)
	CreateGoal(context.Context, *CreateGoalRequest) (*CreateGoalResponse, error)
	DeleteGoal(context.Context, *DeleteGoalRequest) (*DeleteGoalResponse, error)
	UpdateGoal(context.Context, *UpdateGoalRequest) (*UpdateGoalResponse, error)
	GetExperimentEvaluationCount(context.Context, *GetExperimentEvaluationCountRequest) (*GetExperimentEvaluationCountResponse, error)
	GetEvaluationTimeseriesCount(context.Context, *GetEvaluationTimeseriesCountRequest) (*GetEvaluationTimeseriesCountResponse, error)
	GetExperimentResult(context.Context, *GetExperimentResultRequest) (*GetExperimentResultResponse, error)
	ListExperimentResults(context.Context, *ListExperimentResultsRequest) (*ListExperimentResultsResponse, error)
	GetExperimentGoalCount(context.Context, *GetExperimentGoalCountRequest) (*GetExperimentGoalCountResponse, error)
	GetOpsEvaluationUserCount(context.Context, *GetOpsEvaluationUserCountRequest) (*GetOpsEvaluationUserCountResponse, error)
	GetOpsGoalUserCount(context.Context, *GetOpsGoalUserCountRequest) (*GetOpsGoalUserCountResponse, error)
	GetEnvironmentV2(context.Context, *GetEnvironmentV2Request) (*GetEnvironmentV2Response, error)
	ListEnvironmentsV2(context.Context, *ListEnvironmentsV2Request) (*ListEnvironmentsV2Response, error)
	GetProject(context.Context, *GetProjectRequest) (*GetProjectResponse, error)
	ListProjects(context.Context, *ListProjectsRequest) (*ListProjectsResponse, error)
}

// UnimplementedGatewayServer can be embedded to have forward compatible implementations.
type UnimplementedGatewayServer struct {
}

func (*UnimplementedGatewayServer) GetEvaluations(context.Context, *GetEvaluationsRequest) (*GetEvaluationsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetEvaluations not implemented")
}
func (*UnimplementedGatewayServer) GetEvaluation(context.Context, *GetEvaluationRequest) (*GetEvaluationResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetEvaluation not implemented")
}
func (*UnimplementedGatewayServer) GetFeatureFlags(context.Context, *GetFeatureFlagsRequest) (*GetFeatureFlagsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetFeatureFlags not implemented")
}
func (*UnimplementedGatewayServer) GetSegmentUsers(context.Context, *GetSegmentUsersRequest) (*GetSegmentUsersResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetSegmentUsers not implemented")
}
func (*UnimplementedGatewayServer) RegisterEvents(context.Context, *RegisterEventsRequest) (*RegisterEventsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method RegisterEvents not implemented")
}
func (*UnimplementedGatewayServer) Track(context.Context, *TrackRequest) (*TrackResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Track not implemented")
}
func (*UnimplementedGatewayServer) DebugEvaluateFeatures(context.Context, *DebugEvaluateFeaturesRequest) (*DebugEvaluateFeaturesResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DebugEvaluateFeatures not implemented")
}
func (*UnimplementedGatewayServer) CreateFeature(context.Context, *CreateFeatureRequest) (*CreateFeatureResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateFeature not implemented")
}
func (*UnimplementedGatewayServer) GetFeature(context.Context, *GetFeatureRequest) (*GetFeatureResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetFeature not implemented")
}
func (*UnimplementedGatewayServer) ListFeatures(context.Context, *ListFeaturesRequest) (*ListFeaturesResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListFeatures not implemented")
}
func (*UnimplementedGatewayServer) UpdateFeature(context.Context, *UpdateFeatureRequest) (*UpdateFeatureResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateFeature not implemented")
}
func (*UnimplementedGatewayServer) Ping(context.Context, *PingRequest) (*PingResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Ping not implemented")
}
func (*UnimplementedGatewayServer) ListPushes(context.Context, *ListPushesRequest) (*ListPushesResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListPushes not implemented")
}
func (*UnimplementedGatewayServer) CreatePush(context.Context, *CreatePushRequest) (*CreatePushResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreatePush not implemented")
}
func (*UnimplementedGatewayServer) GetPush(context.Context, *GetPushRequest) (*GetPushResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetPush not implemented")
}
func (*UnimplementedGatewayServer) UpdatePush(context.Context, *UpdatePushRequest) (*UpdatePushResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdatePush not implemented")
}
func (*UnimplementedGatewayServer) CreateAccountV2(context.Context, *CreateAccountV2Request) (*CreateAccountV2Response, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateAccountV2 not implemented")
}
func (*UnimplementedGatewayServer) UpdateAccountV2(context.Context, *UpdateAccountV2Request) (*UpdateAccountV2Response, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateAccountV2 not implemented")
}
func (*UnimplementedGatewayServer) GetAccountV2(context.Context, *GetAccountV2Request) (*GetAccountV2Response, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetAccountV2 not implemented")
}
func (*UnimplementedGatewayServer) GetAccountV2ByEnvironmentID(context.Context, *GetAccountV2ByEnvironmentIDRequest) (*GetAccountV2ByEnvironmentIDResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetAccountV2ByEnvironmentID not implemented")
}
func (*UnimplementedGatewayServer) GetMe(context.Context, *GetMeRequest) (*GetMeResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetMe not implemented")
}
func (*UnimplementedGatewayServer) ListAccountsV2(context.Context, *ListAccountsV2Request) (*ListAccountsV2Response, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListAccountsV2 not implemented")
}
func (*UnimplementedGatewayServer) GetCodeReference(context.Context, *GetCodeReferenceRequest) (*GetCodeReferenceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetCodeReference not implemented")
}
func (*UnimplementedGatewayServer) ListCodeReferences(context.Context, *ListCodeReferencesRequest) (*ListCodeReferencesResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListCodeReferences not implemented")
}
func (*UnimplementedGatewayServer) CreateCodeReference(context.Context, *CreateCodeReferenceRequest) (*CreateCodeReferenceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateCodeReference not implemented")
}
func (*UnimplementedGatewayServer) UpdateCodeReference(context.Context, *UpdateCodeReferenceRequest) (*UpdateCodeReferenceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateCodeReference not implemented")
}
func (*UnimplementedGatewayServer) DeleteCodeReference(context.Context, *DeleteCodeReferenceRequest) (*DeleteCodeReferenceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteCodeReference not implemented")
}
func (*UnimplementedGatewayServer) CreateSegment(context.Context, *CreateSegmentRequest) (*CreateSegmentResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateSegment not implemented")
}
func (*UnimplementedGatewayServer) GetSegment(context.Context, *GetSegmentRequest) (*GetSegmentResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetSegment not implemented")
}
func (*UnimplementedGatewayServer) ListSegments(context.Context, *ListSegmentsRequest) (*ListSegmentsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListSegments not implemented")
}
func (*UnimplementedGatewayServer) DeleteSegment(context.Context, *DeleteSegmentRequest) (*DeleteSegmentResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteSegment not implemented")
}
func (*UnimplementedGatewayServer) UpdateSegment(context.Context, *UpdateSegmentRequest) (*UpdateSegmentResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateSegment not implemented")
}
func (*UnimplementedGatewayServer) BulkUploadSegmentUsers(context.Context, *BulkUploadSegmentUsersRequest) (*BulkUploadSegmentUsersResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method BulkUploadSegmentUsers not implemented")
}
func (*UnimplementedGatewayServer) GetAuditLog(context.Context, *GetAuditLogRequest) (*GetAuditLogResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetAuditLog not implemented")
}
func (*UnimplementedGatewayServer) ListAuditLogs(context.Context, *ListAuditLogsRequest) (*ListAuditLogsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListAuditLogs not implemented")
}
func (*UnimplementedGatewayServer) ListFeatureHistory(context.Context, *ListFeatureHistoryRequest) (*ListFeatureHistoryResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListFeatureHistory not implemented")
}
func (*UnimplementedGatewayServer) GetAutoOpsRule(context.Context, *GetAutoOpsRuleRequest) (*GetAutoOpsRuleResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetAutoOpsRule not implemented")
}
func (*UnimplementedGatewayServer) CreateAutoOpsRule(context.Context, *CreateAutoOpsRuleRequest) (*CreateAutoOpsRuleResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateAutoOpsRule not implemented")
}
func (*UnimplementedGatewayServer) ListAutoOpsRules(context.Context, *ListAutoOpsRulesRequest) (*ListAutoOpsRulesResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListAutoOpsRules not implemented")
}
func (*UnimplementedGatewayServer) StopAutoOpsRule(context.Context, *StopAutoOpsRuleRequest) (*StopAutoOpsRuleResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method StopAutoOpsRule not implemented")
}
func (*UnimplementedGatewayServer) DeleteAutoOpsRule(context.Context, *DeleteAutoOpsRuleRequest) (*DeleteAutoOpsRuleResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteAutoOpsRule not implemented")
}
func (*UnimplementedGatewayServer) UpdateAutoOpsRule(context.Context, *UpdateAutoOpsRuleRequest) (*UpdateAutoOpsRuleResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateAutoOpsRule not implemented")
}
func (*UnimplementedGatewayServer) ExecuteAutoOps(context.Context, *ExecuteAutoOpsRequest) (*ExecuteAutoOpsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ExecuteAutoOps not implemented")
}
func (*UnimplementedGatewayServer) CreateProgressiveRollout(context.Context, *CreateProgressiveRolloutRequest) (*CreateProgressiveRolloutResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateProgressiveRollout not implemented")
}
func (*UnimplementedGatewayServer) GetProgressiveRollout(context.Context, *GetProgressiveRolloutRequest) (*GetProgressiveRolloutResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetProgressiveRollout not implemented")
}
func (*UnimplementedGatewayServer) StopProgressiveRollout(context.Context, *StopProgressiveRolloutRequest) (*StopProgressiveRolloutResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method StopProgressiveRollout not implemented")
}
func (*UnimplementedGatewayServer) DeleteProgressiveRollout(context.Context, *DeleteProgressiveRolloutRequest) (*DeleteProgressiveRolloutResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteProgressiveRollout not implemented")
}
func (*UnimplementedGatewayServer) ListProgressiveRollouts(context.Context, *ListProgressiveRolloutsRequest) (*ListProgressiveRolloutsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListProgressiveRollouts not implemented")
}
func (*UnimplementedGatewayServer) ExecuteProgressiveRollout(context.Context, *ExecuteProgressiveRolloutRequest) (*ExecuteProgressiveRolloutResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ExecuteProgressiveRollout not implemented")
}
func (*UnimplementedGatewayServer) CreateTag(context.Context, *CreateTagRequest) (*CreateTagResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateTag not implemented")
}
func (*UnimplementedGatewayServer) DeleteTag(context.Context, *DeleteTagRequest) (*DeleteTagResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteTag not implemented")
}
func (*UnimplementedGatewayServer) ListTags(context.Context, *ListTagsRequest) (*ListTagsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListTags not implemented")
}
func (*UnimplementedGatewayServer) CreateTeam(context.Context, *CreateTeamRequest) (*CreateTeamResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateTeam not implemented")
}
func (*UnimplementedGatewayServer) DeleteTeam(context.Context, *DeleteTeamRequest) (*DeleteTeamResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteTeam not implemented")
}
func (*UnimplementedGatewayServer) ListTeams(context.Context, *ListTeamsRequest) (*ListTeamsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListTeams not implemented")
}
func (*UnimplementedGatewayServer) GetSubscription(context.Context, *GetSubscriptionRequest) (*GetSubscriptionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetSubscription not implemented")
}
func (*UnimplementedGatewayServer) ListSubscriptions(context.Context, *ListSubscriptionsRequest) (*ListSubscriptionsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListSubscriptions not implemented")
}
func (*UnimplementedGatewayServer) CreateSubscription(context.Context, *CreateSubscriptionRequest) (*CreateSubscriptionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateSubscription not implemented")
}
func (*UnimplementedGatewayServer) DeleteSubscription(context.Context, *DeleteSubscriptionRequest) (*DeleteSubscriptionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteSubscription not implemented")
}
func (*UnimplementedGatewayServer) UpdateSubscription(context.Context, *UpdateSubscriptionRequest) (*UpdateSubscriptionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateSubscription not implemented")
}
func (*UnimplementedGatewayServer) CreateFlagTrigger(context.Context, *CreateFlagTriggerRequest) (*CreateFlagTriggerResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateFlagTrigger not implemented")
}
func (*UnimplementedGatewayServer) DeleteFlagTrigger(context.Context, *DeleteFlagTriggerRequest) (*DeleteFlagTriggerResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteFlagTrigger not implemented")
}
func (*UnimplementedGatewayServer) UpdateFlagTrigger(context.Context, *UpdateFlagTriggerRequest) (*UpdateFlagTriggerResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateFlagTrigger not implemented")
}
func (*UnimplementedGatewayServer) GetFlagTrigger(context.Context, *GetFlagTriggerRequest) (*GetFlagTriggerResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetFlagTrigger not implemented")
}
func (*UnimplementedGatewayServer) ListFlagTriggers(context.Context, *ListFlagTriggersRequest) (*ListFlagTriggersResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListFlagTriggers not implemented")
}
func (*UnimplementedGatewayServer) GetExperiment(context.Context, *GetExperimentRequest) (*GetExperimentResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetExperiment not implemented")
}
func (*UnimplementedGatewayServer) ListExperiments(context.Context, *ListExperimentsRequest) (*ListExperimentsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListExperiments not implemented")
}
func (*UnimplementedGatewayServer) CreateExperiment(context.Context, *CreateExperimentRequest) (*CreateExperimentResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateExperiment not implemented")
}
func (*UnimplementedGatewayServer) UpdateExperiment(context.Context, *UpdateExperimentRequest) (*UpdateExperimentResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateExperiment not implemented")
}
func (*UnimplementedGatewayServer) GetGoal(context.Context, *GetGoalRequest) (*GetGoalResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetGoal not implemented")
}
func (*UnimplementedGatewayServer) ListGoals(context.Context, *ListGoalsRequest) (*ListGoalsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListGoals not implemented")
}
func (*UnimplementedGatewayServer) CreateGoal(context.Context, *CreateGoalRequest) (*CreateGoalResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateGoal not implemented")
}
func (*UnimplementedGatewayServer) DeleteGoal(context.Context, *DeleteGoalRequest) (*DeleteGoalResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteGoal not implemented")
}
func (*UnimplementedGatewayServer) UpdateGoal(context.Context, *UpdateGoalRequest) (*UpdateGoalResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateGoal not implemented")
}
func (*UnimplementedGatewayServer) GetExperimentEvaluationCount(context.Context, *GetExperimentEvaluationCountRequest) (*GetExperimentEvaluationCountResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetExperimentEvaluationCount not implemented")
}
func (*UnimplementedGatewayServer) GetEvaluationTimeseriesCount(context.Context, *GetEvaluationTimeseriesCountRequest) (*GetEvaluationTimeseriesCountResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetEvaluationTimeseriesCount not implemented")
}
func (*UnimplementedGatewayServer) GetExperimentResult(context.Context, *GetExperimentResultRequest) (*GetExperimentResultResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetExperimentResult not implemented")
}
func (*UnimplementedGatewayServer) ListExperimentResults(context.Context, *ListExperimentResultsRequest) (*ListExperimentResultsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListExperimentResults not implemented")
}
func (*UnimplementedGatewayServer) GetExperimentGoalCount(context.Context, *GetExperimentGoalCountRequest) (*GetExperimentGoalCountResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetExperimentGoalCount not implemented")
}
func (*UnimplementedGatewayServer) GetOpsEvaluationUserCount(context.Context, *GetOpsEvaluationUserCountRequest) (*GetOpsEvaluationUserCountResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetOpsEvaluationUserCount not implemented")
}
func (*UnimplementedGatewayServer) GetOpsGoalUserCount(context.Context, *GetOpsGoalUserCountRequest) (*GetOpsGoalUserCountResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetOpsGoalUserCount not implemented")
}
func (*UnimplementedGatewayServer) GetEnvironmentV2(context.Context, *GetEnvironmentV2Request) (*GetEnvironmentV2Response, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetEnvironmentV2 not implemented")
}
func (*UnimplementedGatewayServer) ListEnvironmentsV2(context.Context, *ListEnvironmentsV2Request) (*ListEnvironmentsV2Response, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListEnvironmentsV2 not implemented")
}
func (*UnimplementedGatewayServer) GetProject(context.Context, *GetProjectRequest) (*GetProjectResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetProject not implemented")
}
func (*UnimplementedGatewayServer) ListProjects(context.Context, *ListProjectsRequest) (*ListProjectsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListProjects not implemented")
}

func RegisterGatewayServer(s *grpc.Server, srv GatewayServer) {
	s.RegisterService(&_Gateway_serviceDesc, srv)
}

func _Gateway_GetEvaluations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetEvaluationsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetEvaluations(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetEvaluations",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetEvaluations(ctx, req.(*GetEvaluationsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetEvaluation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetEvaluationRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetEvaluation(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetEvaluation",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetEvaluation(ctx, req.(*GetEvaluationRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetFeatureFlags_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetFeatureFlagsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetFeatureFlags(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetFeatureFlags",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetFeatureFlags(ctx, req.(*GetFeatureFlagsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetSegmentUsers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetSegmentUsersRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetSegmentUsers(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetSegmentUsers",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetSegmentUsers(ctx, req.(*GetSegmentUsersRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_RegisterEvents_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(RegisterEventsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).RegisterEvents(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/RegisterEvents",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).RegisterEvents(ctx, req.(*RegisterEventsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_Track_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(TrackRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).Track(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/Track",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).Track(ctx, req.(*TrackRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_DebugEvaluateFeatures_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DebugEvaluateFeaturesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).DebugEvaluateFeatures(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/DebugEvaluateFeatures",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).DebugEvaluateFeatures(ctx, req.(*DebugEvaluateFeaturesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateFeature_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateFeatureRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateFeature(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateFeature",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateFeature(ctx, req.(*CreateFeatureRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetFeature_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetFeatureRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetFeature(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetFeature",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetFeature(ctx, req.(*GetFeatureRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListFeatures_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListFeaturesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListFeatures(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListFeatures",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListFeatures(ctx, req.(*ListFeaturesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_UpdateFeature_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateFeatureRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).UpdateFeature(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/UpdateFeature",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).UpdateFeature(ctx, req.(*UpdateFeatureRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_Ping_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(PingRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).Ping(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/Ping",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).Ping(ctx, req.(*PingRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListPushes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListPushesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListPushes(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListPushes",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListPushes(ctx, req.(*ListPushesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreatePush_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreatePushRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreatePush(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreatePush",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreatePush(ctx, req.(*CreatePushRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetPush_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetPushRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetPush(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetPush",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetPush(ctx, req.(*GetPushRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_UpdatePush_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdatePushRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).UpdatePush(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/UpdatePush",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).UpdatePush(ctx, req.(*UpdatePushRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateAccountV2_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateAccountV2Request)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateAccountV2(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateAccountV2",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateAccountV2(ctx, req.(*CreateAccountV2Request))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_UpdateAccountV2_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateAccountV2Request)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).UpdateAccountV2(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/UpdateAccountV2",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).UpdateAccountV2(ctx, req.(*UpdateAccountV2Request))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetAccountV2_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetAccountV2Request)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetAccountV2(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetAccountV2",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetAccountV2(ctx, req.(*GetAccountV2Request))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetAccountV2ByEnvironmentID_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetAccountV2ByEnvironmentIDRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetAccountV2ByEnvironmentID(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetAccountV2ByEnvironmentID",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetAccountV2ByEnvironmentID(ctx, req.(*GetAccountV2ByEnvironmentIDRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetMe_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetMeRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetMe(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetMe",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetMe(ctx, req.(*GetMeRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListAccountsV2_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListAccountsV2Request)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListAccountsV2(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListAccountsV2",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListAccountsV2(ctx, req.(*ListAccountsV2Request))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetCodeReference_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetCodeReferenceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetCodeReference(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetCodeReference",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetCodeReference(ctx, req.(*GetCodeReferenceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListCodeReferences_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListCodeReferencesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListCodeReferences(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListCodeReferences",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListCodeReferences(ctx, req.(*ListCodeReferencesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateCodeReference_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateCodeReferenceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateCodeReference(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateCodeReference",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateCodeReference(ctx, req.(*CreateCodeReferenceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_UpdateCodeReference_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateCodeReferenceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).UpdateCodeReference(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/UpdateCodeReference",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).UpdateCodeReference(ctx, req.(*UpdateCodeReferenceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_DeleteCodeReference_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteCodeReferenceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).DeleteCodeReference(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/DeleteCodeReference",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).DeleteCodeReference(ctx, req.(*DeleteCodeReferenceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateSegment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateSegmentRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateSegment(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateSegment",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateSegment(ctx, req.(*CreateSegmentRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetSegment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetSegmentRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetSegment(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetSegment",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetSegment(ctx, req.(*GetSegmentRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListSegments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListSegmentsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListSegments(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListSegments",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListSegments(ctx, req.(*ListSegmentsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_DeleteSegment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteSegmentRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).DeleteSegment(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/DeleteSegment",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).DeleteSegment(ctx, req.(*DeleteSegmentRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_UpdateSegment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateSegmentRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).UpdateSegment(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/UpdateSegment",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).UpdateSegment(ctx, req.(*UpdateSegmentRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_BulkUploadSegmentUsers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(BulkUploadSegmentUsersRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).BulkUploadSegmentUsers(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/BulkUploadSegmentUsers",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).BulkUploadSegmentUsers(ctx, req.(*BulkUploadSegmentUsersRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetAuditLog_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetAuditLogRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetAuditLog(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetAuditLog",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetAuditLog(ctx, req.(*GetAuditLogRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListAuditLogs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListAuditLogsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListAuditLogs(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListAuditLogs",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListAuditLogs(ctx, req.(*ListAuditLogsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListFeatureHistory_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListFeatureHistoryRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListFeatureHistory(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListFeatureHistory",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListFeatureHistory(ctx, req.(*ListFeatureHistoryRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetAutoOpsRule_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetAutoOpsRuleRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetAutoOpsRule(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetAutoOpsRule",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetAutoOpsRule(ctx, req.(*GetAutoOpsRuleRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateAutoOpsRule_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateAutoOpsRuleRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateAutoOpsRule(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateAutoOpsRule",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateAutoOpsRule(ctx, req.(*CreateAutoOpsRuleRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListAutoOpsRules_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListAutoOpsRulesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListAutoOpsRules(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListAutoOpsRules",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListAutoOpsRules(ctx, req.(*ListAutoOpsRulesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_StopAutoOpsRule_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(StopAutoOpsRuleRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).StopAutoOpsRule(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/StopAutoOpsRule",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).StopAutoOpsRule(ctx, req.(*StopAutoOpsRuleRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_DeleteAutoOpsRule_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteAutoOpsRuleRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).DeleteAutoOpsRule(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/DeleteAutoOpsRule",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).DeleteAutoOpsRule(ctx, req.(*DeleteAutoOpsRuleRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_UpdateAutoOpsRule_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateAutoOpsRuleRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).UpdateAutoOpsRule(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/UpdateAutoOpsRule",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).UpdateAutoOpsRule(ctx, req.(*UpdateAutoOpsRuleRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ExecuteAutoOps_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ExecuteAutoOpsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ExecuteAutoOps(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ExecuteAutoOps",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ExecuteAutoOps(ctx, req.(*ExecuteAutoOpsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateProgressiveRollout_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateProgressiveRolloutRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateProgressiveRollout(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateProgressiveRollout",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateProgressiveRollout(ctx, req.(*CreateProgressiveRolloutRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetProgressiveRollout_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetProgressiveRolloutRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetProgressiveRollout(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetProgressiveRollout",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetProgressiveRollout(ctx, req.(*GetProgressiveRolloutRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_StopProgressiveRollout_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(StopProgressiveRolloutRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).StopProgressiveRollout(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/StopProgressiveRollout",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).StopProgressiveRollout(ctx, req.(*StopProgressiveRolloutRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_DeleteProgressiveRollout_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteProgressiveRolloutRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).DeleteProgressiveRollout(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/DeleteProgressiveRollout",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).DeleteProgressiveRollout(ctx, req.(*DeleteProgressiveRolloutRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListProgressiveRollouts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListProgressiveRolloutsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListProgressiveRollouts(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListProgressiveRollouts",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListProgressiveRollouts(ctx, req.(*ListProgressiveRolloutsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ExecuteProgressiveRollout_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ExecuteProgressiveRolloutRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ExecuteProgressiveRollout(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ExecuteProgressiveRollout",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ExecuteProgressiveRollout(ctx, req.(*ExecuteProgressiveRolloutRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateTag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateTagRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateTag(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateTag",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateTag(ctx, req.(*CreateTagRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_DeleteTag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteTagRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).DeleteTag(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/DeleteTag",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).DeleteTag(ctx, req.(*DeleteTagRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListTags_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListTagsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListTags(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListTags",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListTags(ctx, req.(*ListTagsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateTeam_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateTeamRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateTeam(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateTeam",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateTeam(ctx, req.(*CreateTeamRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_DeleteTeam_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteTeamRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).DeleteTeam(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/DeleteTeam",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).DeleteTeam(ctx, req.(*DeleteTeamRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListTeams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListTeamsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListTeams(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListTeams",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListTeams(ctx, req.(*ListTeamsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetSubscription_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetSubscriptionRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetSubscription(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetSubscription",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetSubscription(ctx, req.(*GetSubscriptionRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListSubscriptions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListSubscriptionsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListSubscriptions(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListSubscriptions",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListSubscriptions(ctx, req.(*ListSubscriptionsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateSubscription_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateSubscriptionRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateSubscription(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateSubscription",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateSubscription(ctx, req.(*CreateSubscriptionRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_DeleteSubscription_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteSubscriptionRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).DeleteSubscription(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/DeleteSubscription",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).DeleteSubscription(ctx, req.(*DeleteSubscriptionRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_UpdateSubscription_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateSubscriptionRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).UpdateSubscription(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/UpdateSubscription",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).UpdateSubscription(ctx, req.(*UpdateSubscriptionRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateFlagTrigger_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateFlagTriggerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateFlagTrigger(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateFlagTrigger",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateFlagTrigger(ctx, req.(*CreateFlagTriggerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_DeleteFlagTrigger_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteFlagTriggerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).DeleteFlagTrigger(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/DeleteFlagTrigger",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).DeleteFlagTrigger(ctx, req.(*DeleteFlagTriggerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_UpdateFlagTrigger_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateFlagTriggerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).UpdateFlagTrigger(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/UpdateFlagTrigger",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).UpdateFlagTrigger(ctx, req.(*UpdateFlagTriggerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetFlagTrigger_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetFlagTriggerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetFlagTrigger(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetFlagTrigger",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetFlagTrigger(ctx, req.(*GetFlagTriggerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListFlagTriggers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListFlagTriggersRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListFlagTriggers(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListFlagTriggers",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListFlagTriggers(ctx, req.(*ListFlagTriggersRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetExperiment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetExperimentRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetExperiment(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetExperiment",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetExperiment(ctx, req.(*GetExperimentRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListExperiments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListExperimentsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListExperiments(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListExperiments",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListExperiments(ctx, req.(*ListExperimentsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateExperiment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateExperimentRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateExperiment(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateExperiment",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateExperiment(ctx, req.(*CreateExperimentRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_UpdateExperiment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateExperimentRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).UpdateExperiment(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/UpdateExperiment",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).UpdateExperiment(ctx, req.(*UpdateExperimentRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetGoal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetGoalRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetGoal(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetGoal",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetGoal(ctx, req.(*GetGoalRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListGoals_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListGoalsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListGoals(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListGoals",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListGoals(ctx, req.(*ListGoalsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_CreateGoal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateGoalRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).CreateGoal(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/CreateGoal",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).CreateGoal(ctx, req.(*CreateGoalRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_DeleteGoal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteGoalRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).DeleteGoal(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/DeleteGoal",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).DeleteGoal(ctx, req.(*DeleteGoalRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_UpdateGoal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateGoalRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).UpdateGoal(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/UpdateGoal",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).UpdateGoal(ctx, req.(*UpdateGoalRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetExperimentEvaluationCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetExperimentEvaluationCountRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetExperimentEvaluationCount(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetExperimentEvaluationCount",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetExperimentEvaluationCount(ctx, req.(*GetExperimentEvaluationCountRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetEvaluationTimeseriesCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetEvaluationTimeseriesCountRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetEvaluationTimeseriesCount(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetEvaluationTimeseriesCount",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetEvaluationTimeseriesCount(ctx, req.(*GetEvaluationTimeseriesCountRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetExperimentResult_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetExperimentResultRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetExperimentResult(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetExperimentResult",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetExperimentResult(ctx, req.(*GetExperimentResultRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListExperimentResults_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListExperimentResultsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListExperimentResults(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListExperimentResults",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListExperimentResults(ctx, req.(*ListExperimentResultsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetExperimentGoalCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetExperimentGoalCountRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetExperimentGoalCount(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetExperimentGoalCount",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetExperimentGoalCount(ctx, req.(*GetExperimentGoalCountRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetOpsEvaluationUserCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetOpsEvaluationUserCountRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetOpsEvaluationUserCount(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetOpsEvaluationUserCount",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetOpsEvaluationUserCount(ctx, req.(*GetOpsEvaluationUserCountRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetOpsGoalUserCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetOpsGoalUserCountRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetOpsGoalUserCount(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetOpsGoalUserCount",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetOpsGoalUserCount(ctx, req.(*GetOpsGoalUserCountRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetEnvironmentV2_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetEnvironmentV2Request)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetEnvironmentV2(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetEnvironmentV2",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetEnvironmentV2(ctx, req.(*GetEnvironmentV2Request))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListEnvironmentsV2_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListEnvironmentsV2Request)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListEnvironmentsV2(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListEnvironmentsV2",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListEnvironmentsV2(ctx, req.(*ListEnvironmentsV2Request))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_GetProject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetProjectRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).GetProject(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/GetProject",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).GetProject(ctx, req.(*GetProjectRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Gateway_ListProjects_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListProjectsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GatewayServer).ListProjects(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/bucketeer.gateway.Gateway/ListProjects",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GatewayServer).ListProjects(ctx, req.(*ListProjectsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _Gateway_serviceDesc = grpc.ServiceDesc{
	ServiceName: "bucketeer.gateway.Gateway",
	HandlerType: (*GatewayServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetEvaluations",
			Handler:    _Gateway_GetEvaluations_Handler,
		},
		{
			MethodName: "GetEvaluation",
			Handler:    _Gateway_GetEvaluation_Handler,
		},
		{
			MethodName: "GetFeatureFlags",
			Handler:    _Gateway_GetFeatureFlags_Handler,
		},
		{
			MethodName: "GetSegmentUsers",
			Handler:    _Gateway_GetSegmentUsers_Handler,
		},
		{
			MethodName: "RegisterEvents",
			Handler:    _Gateway_RegisterEvents_Handler,
		},
		{
			MethodName: "Track",
			Handler:    _Gateway_Track_Handler,
		},
		{
			MethodName: "DebugEvaluateFeatures",
			Handler:    _Gateway_DebugEvaluateFeatures_Handler,
		},
		{
			MethodName: "CreateFeature",
			Handler:    _Gateway_CreateFeature_Handler,
		},
		{
			MethodName: "GetFeature",
			Handler:    _Gateway_GetFeature_Handler,
		},
		{
			MethodName: "ListFeatures",
			Handler:    _Gateway_ListFeatures_Handler,
		},
		{
			MethodName: "UpdateFeature",
			Handler:    _Gateway_UpdateFeature_Handler,
		},
		{
			MethodName: "Ping",
			Handler:    _Gateway_Ping_Handler,
		},
		{
			MethodName: "ListPushes",
			Handler:    _Gateway_ListPushes_Handler,
		},
		{
			MethodName: "CreatePush",
			Handler:    _Gateway_CreatePush_Handler,
		},
		{
			MethodName: "GetPush",
			Handler:    _Gateway_GetPush_Handler,
		},
		{
			MethodName: "UpdatePush",
			Handler:    _Gateway_UpdatePush_Handler,
		},
		{
			MethodName: "CreateAccountV2",
			Handler:    _Gateway_CreateAccountV2_Handler,
		},
		{
			MethodName: "UpdateAccountV2",
			Handler:    _Gateway_UpdateAccountV2_Handler,
		},
		{
			MethodName: "GetAccountV2",
			Handler:    _Gateway_GetAccountV2_Handler,
		},
		{
			MethodName: "GetAccountV2ByEnvironmentID",
			Handler:    _Gateway_GetAccountV2ByEnvironmentID_Handler,
		},
		{
			MethodName: "GetMe",
			Handler:    _Gateway_GetMe_Handler,
		},
		{
			MethodName: "ListAccountsV2",
			Handler:    _Gateway_ListAccountsV2_Handler,
		},
		{
			MethodName: "GetCodeReference",
			Handler:    _Gateway_GetCodeReference_Handler,
		},
		{
			MethodName: "ListCodeReferences",
			Handler:    _Gateway_ListCodeReferences_Handler,
		},
		{
			MethodName: "CreateCodeReference",
			Handler:    _Gateway_CreateCodeReference_Handler,
		},
		{
			MethodName: "UpdateCodeReference",
			Handler:    _Gateway_UpdateCodeReference_Handler,
		},
		{
			MethodName: "DeleteCodeReference",
			Handler:    _Gateway_DeleteCodeReference_Handler,
		},
		{
			MethodName: "CreateSegment",
			Handler:    _Gateway_CreateSegment_Handler,
		},
		{
			MethodName: "GetSegment",
			Handler:    _Gateway_GetSegment_Handler,
		},
		{
			MethodName: "ListSegments",
			Handler:    _Gateway_ListSegments_Handler,
		},
		{
			MethodName: "DeleteSegment",
			Handler:    _Gateway_DeleteSegment_Handler,
		},
		{
			MethodName: "UpdateSegment",
			Handler:    _Gateway_UpdateSegment_Handler,
		},
		{
			MethodName: "BulkUploadSegmentUsers",
			Handler:    _Gateway_BulkUploadSegmentUsers_Handler,
		},
		{
			MethodName: "GetAuditLog",
			Handler:    _Gateway_GetAuditLog_Handler,
		},
		{
			MethodName: "ListAuditLogs",
			Handler:    _Gateway_ListAuditLogs_Handler,
		},
		{
			MethodName: "ListFeatureHistory",
			Handler:    _Gateway_ListFeatureHistory_Handler,
		},
		{
			MethodName: "GetAutoOpsRule",
			Handler:    _Gateway_GetAutoOpsRule_Handler,
		},
		{
			MethodName: "CreateAutoOpsRule",
			Handler:    _Gateway_CreateAutoOpsRule_Handler,
		},
		{
			MethodName: "ListAutoOpsRules",
			Handler:    _Gateway_ListAutoOpsRules_Handler,
		},
		{
			MethodName: "StopAutoOpsRule",
			Handler:    _Gateway_StopAutoOpsRule_Handler,
		},
		{
			MethodName: "DeleteAutoOpsRule",
			Handler:    _Gateway_DeleteAutoOpsRule_Handler,
		},
		{
			MethodName: "UpdateAutoOpsRule",
			Handler:    _Gateway_UpdateAutoOpsRule_Handler,
		},
		{
			MethodName: "ExecuteAutoOps",
			Handler:    _Gateway_ExecuteAutoOps_Handler,
		},
		{
			MethodName: "CreateProgressiveRollout",
			Handler:    _Gateway_CreateProgressiveRollout_Handler,
		},
		{
			MethodName: "GetProgressiveRollout",
			Handler:    _Gateway_GetProgressiveRollout_Handler,
		},
		{
			MethodName: "StopProgressiveRollout",
			Handler:    _Gateway_StopProgressiveRollout_Handler,
		},
		{
			MethodName: "DeleteProgressiveRollout",
			Handler:    _Gateway_DeleteProgressiveRollout_Handler,
		},
		{
			MethodName: "ListProgressiveRollouts",
			Handler:    _Gateway_ListProgressiveRollouts_Handler,
		},
		{
			MethodName: "ExecuteProgressiveRollout",
			Handler:    _Gateway_ExecuteProgressiveRollout_Handler,
		},
		{
			MethodName: "CreateTag",
			Handler:    _Gateway_CreateTag_Handler,
		},
		{
			MethodName: "DeleteTag",
			Handler:    _Gateway_DeleteTag_Handler,
		},
		{
			MethodName: "ListTags",
			Handler:    _Gateway_ListTags_Handler,
		},
		{
			MethodName: "CreateTeam",
			Handler:    _Gateway_CreateTeam_Handler,
		},
		{
			MethodName: "DeleteTeam",
			Handler:    _Gateway_DeleteTeam_Handler,
		},
		{
			MethodName: "ListTeams",
			Handler:    _Gateway_ListTeams_Handler,
		},
		{
			MethodName: "GetSubscription",
			Handler:    _Gateway_GetSubscription_Handler,
		},
		{
			MethodName: "ListSubscriptions",
			Handler:    _Gateway_ListSubscriptions_Handler,
		},
		{
			MethodName: "CreateSubscription",
			Handler:    _Gateway_CreateSubscription_Handler,
		},
		{
			MethodName: "DeleteSubscription",
			Handler:    _Gateway_DeleteSubscription_Handler,
		},
		{
			MethodName: "UpdateSubscription",
			Handler:    _Gateway_UpdateSubscription_Handler,
		},
		{
			MethodName: "CreateFlagTrigger",
			Handler:    _Gateway_CreateFlagTrigger_Handler,
		},
		{
			MethodName: "DeleteFlagTrigger",
			Handler:    _Gateway_DeleteFlagTrigger_Handler,
		},
		{
			MethodName: "UpdateFlagTrigger",
			Handler:    _Gateway_UpdateFlagTrigger_Handler,
		},
		{
			MethodName: "GetFlagTrigger",
			Handler:    _Gateway_GetFlagTrigger_Handler,
		},
		{
			MethodName: "ListFlagTriggers",
			Handler:    _Gateway_ListFlagTriggers_Handler,
		},
		{
			MethodName: "GetExperiment",
			Handler:    _Gateway_GetExperiment_Handler,
		},
		{
			MethodName: "ListExperiments",
			Handler:    _Gateway_ListExperiments_Handler,
		},
		{
			MethodName: "CreateExperiment",
			Handler:    _Gateway_CreateExperiment_Handler,
		},
		{
			MethodName: "UpdateExperiment",
			Handler:    _Gateway_UpdateExperiment_Handler,
		},
		{
			MethodName: "GetGoal",
			Handler:    _Gateway_GetGoal_Handler,
		},
		{
			MethodName: "ListGoals",
			Handler:    _Gateway_ListGoals_Handler,
		},
		{
			MethodName: "CreateGoal",
			Handler:    _Gateway_CreateGoal_Handler,
		},
		{
			MethodName: "DeleteGoal",
			Handler:    _Gateway_DeleteGoal_Handler,
		},
		{
			MethodName: "UpdateGoal",
			Handler:    _Gateway_UpdateGoal_Handler,
		},
		{
			MethodName: "GetExperimentEvaluationCount",
			Handler:    _Gateway_GetExperimentEvaluationCount_Handler,
		},
		{
			MethodName: "GetEvaluationTimeseriesCount",
			Handler:    _Gateway_GetEvaluationTimeseriesCount_Handler,
		},
		{
			MethodName: "GetExperimentResult",
			Handler:    _Gateway_GetExperimentResult_Handler,
		},
		{
			MethodName: "ListExperimentResults",
			Handler:    _Gateway_ListExperimentResults_Handler,
		},
		{
			MethodName: "GetExperimentGoalCount",
			Handler:    _Gateway_GetExperimentGoalCount_Handler,
		},
		{
			MethodName: "GetOpsEvaluationUserCount",
			Handler:    _Gateway_GetOpsEvaluationUserCount_Handler,
		},
		{
			MethodName: "GetOpsGoalUserCount",
			Handler:    _Gateway_GetOpsGoalUserCount_Handler,
		},
		{
			MethodName: "GetEnvironmentV2",
			Handler:    _Gateway_GetEnvironmentV2_Handler,
		},
		{
			MethodName: "ListEnvironmentsV2",
			Handler:    _Gateway_ListEnvironmentsV2_Handler,
		},
		{
			MethodName: "GetProject",
			Handler:    _Gateway_GetProject_Handler,
		},
		{
			MethodName: "ListProjects",
			Handler:    _Gateway_ListProjects_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "proto/gateway/service.proto",
}
