...

Source file src/google.golang.org/genproto/googleapis/maps/playablelocations/v3/playablelocations.pb.go

Documentation: google.golang.org/genproto/googleapis/maps/playablelocations/v3

     1  // Copyright 2020 Google LLC
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.26.0
    18  // 	protoc        v3.12.2
    19  // source: google/maps/playablelocations/v3/playablelocations.proto
    20  
    21  package playablelocations
    22  
    23  import (
    24  	context "context"
    25  	reflect "reflect"
    26  	sync "sync"
    27  
    28  	_ "google.golang.org/genproto/googleapis/api/annotations"
    29  	sample "google.golang.org/genproto/googleapis/maps/playablelocations/v3/sample"
    30  	unity "google.golang.org/genproto/googleapis/maps/unity"
    31  	grpc "google.golang.org/grpc"
    32  	codes "google.golang.org/grpc/codes"
    33  	status "google.golang.org/grpc/status"
    34  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    35  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    36  	durationpb "google.golang.org/protobuf/types/known/durationpb"
    37  )
    38  
    39  const (
    40  	// Verify that this generated code is sufficiently up-to-date.
    41  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    42  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    43  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    44  )
    45  
    46  // Life of a query:
    47  //
    48  // - When a game starts in a new location, your game server issues a
    49  // [SamplePlayableLocations][google.maps.playablelocations.v3.PlayableLocations.SamplePlayableLocations]
    50  // request. The request specifies the S2 cell, and contains one or more
    51  // "criteria" for filtering:
    52  //
    53  // - Criterion 0: i locations for long-lived bases, or level 0 monsters, or...
    54  // - Criterion 1: j locations for short-lived bases, or level 1 monsters, ...
    55  // - Criterion 2: k locations for random objects.
    56  // - etc (up to 5 criterion may be specified).
    57  //
    58  // `PlayableLocationList` will then contain mutually
    59  // exclusive lists of `PlayableLocation` objects that satisfy each of
    60  // the criteria. Think of it as a collection of real-world locations that you
    61  // can then associate with your game state.
    62  //
    63  // Note: These points are impermanent in nature. E.g, parks can close, and
    64  // places can be removed.
    65  //
    66  // The response specifies how long you can expect the playable locations to
    67  // last. Once they expire, you should query the `samplePlayableLocations` API
    68  // again to get a fresh view of the real world.
    69  type SamplePlayableLocationsRequest struct {
    70  	state         protoimpl.MessageState
    71  	sizeCache     protoimpl.SizeCache
    72  	unknownFields protoimpl.UnknownFields
    73  
    74  	// Required. Specifies the area to search within for playable locations.
    75  	AreaFilter *sample.AreaFilter `protobuf:"bytes,1,opt,name=area_filter,json=areaFilter,proto3" json:"area_filter,omitempty"`
    76  	// Required. Specifies one or more (up to 5) criteria for filtering the
    77  	// returned playable locations.
    78  	Criteria []*sample.Criterion `protobuf:"bytes,2,rep,name=criteria,proto3" json:"criteria,omitempty"`
    79  }
    80  
    81  func (x *SamplePlayableLocationsRequest) Reset() {
    82  	*x = SamplePlayableLocationsRequest{}
    83  	if protoimpl.UnsafeEnabled {
    84  		mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[0]
    85  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    86  		ms.StoreMessageInfo(mi)
    87  	}
    88  }
    89  
    90  func (x *SamplePlayableLocationsRequest) String() string {
    91  	return protoimpl.X.MessageStringOf(x)
    92  }
    93  
    94  func (*SamplePlayableLocationsRequest) ProtoMessage() {}
    95  
    96  func (x *SamplePlayableLocationsRequest) ProtoReflect() protoreflect.Message {
    97  	mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[0]
    98  	if protoimpl.UnsafeEnabled && x != nil {
    99  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   100  		if ms.LoadMessageInfo() == nil {
   101  			ms.StoreMessageInfo(mi)
   102  		}
   103  		return ms
   104  	}
   105  	return mi.MessageOf(x)
   106  }
   107  
   108  // Deprecated: Use SamplePlayableLocationsRequest.ProtoReflect.Descriptor instead.
   109  func (*SamplePlayableLocationsRequest) Descriptor() ([]byte, []int) {
   110  	return file_google_maps_playablelocations_v3_playablelocations_proto_rawDescGZIP(), []int{0}
   111  }
   112  
   113  func (x *SamplePlayableLocationsRequest) GetAreaFilter() *sample.AreaFilter {
   114  	if x != nil {
   115  		return x.AreaFilter
   116  	}
   117  	return nil
   118  }
   119  
   120  func (x *SamplePlayableLocationsRequest) GetCriteria() []*sample.Criterion {
   121  	if x != nil {
   122  		return x.Criteria
   123  	}
   124  	return nil
   125  }
   126  
   127  // Response for the
   128  // [SamplePlayableLocations][google.maps.playablelocations.v3.PlayableLocations.SamplePlayableLocations]
   129  // method.
   130  type SamplePlayableLocationsResponse struct {
   131  	state         protoimpl.MessageState
   132  	sizeCache     protoimpl.SizeCache
   133  	unknownFields protoimpl.UnknownFields
   134  
   135  	// Each PlayableLocation object corresponds to a game_object_type specified
   136  	// in the request.
   137  	LocationsPerGameObjectType map[int32]*sample.PlayableLocationList `protobuf:"bytes,1,rep,name=locations_per_game_object_type,json=locationsPerGameObjectType,proto3" json:"locations_per_game_object_type,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   138  	// Required. Specifies the "time-to-live" for the set of playable locations.
   139  	// You can use this value to determine how long to cache the set of playable
   140  	// locations. After this length of time, your back-end game server should
   141  	// issue a new
   142  	// [SamplePlayableLocations][google.maps.playablelocations.v3.PlayableLocations.SamplePlayableLocations]
   143  	// request to get a fresh set of playable locations (because for example, they
   144  	// might have been removed, a park might have closed for the day, a
   145  	// business might have closed permanently).
   146  	Ttl *durationpb.Duration `protobuf:"bytes,9,opt,name=ttl,proto3" json:"ttl,omitempty"`
   147  }
   148  
   149  func (x *SamplePlayableLocationsResponse) Reset() {
   150  	*x = SamplePlayableLocationsResponse{}
   151  	if protoimpl.UnsafeEnabled {
   152  		mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[1]
   153  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   154  		ms.StoreMessageInfo(mi)
   155  	}
   156  }
   157  
   158  func (x *SamplePlayableLocationsResponse) String() string {
   159  	return protoimpl.X.MessageStringOf(x)
   160  }
   161  
   162  func (*SamplePlayableLocationsResponse) ProtoMessage() {}
   163  
   164  func (x *SamplePlayableLocationsResponse) ProtoReflect() protoreflect.Message {
   165  	mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[1]
   166  	if protoimpl.UnsafeEnabled && x != nil {
   167  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   168  		if ms.LoadMessageInfo() == nil {
   169  			ms.StoreMessageInfo(mi)
   170  		}
   171  		return ms
   172  	}
   173  	return mi.MessageOf(x)
   174  }
   175  
   176  // Deprecated: Use SamplePlayableLocationsResponse.ProtoReflect.Descriptor instead.
   177  func (*SamplePlayableLocationsResponse) Descriptor() ([]byte, []int) {
   178  	return file_google_maps_playablelocations_v3_playablelocations_proto_rawDescGZIP(), []int{1}
   179  }
   180  
   181  func (x *SamplePlayableLocationsResponse) GetLocationsPerGameObjectType() map[int32]*sample.PlayableLocationList {
   182  	if x != nil {
   183  		return x.LocationsPerGameObjectType
   184  	}
   185  	return nil
   186  }
   187  
   188  func (x *SamplePlayableLocationsResponse) GetTtl() *durationpb.Duration {
   189  	if x != nil {
   190  		return x.Ttl
   191  	}
   192  	return nil
   193  }
   194  
   195  // A request for logging your player's bad location reports.
   196  type LogPlayerReportsRequest struct {
   197  	state         protoimpl.MessageState
   198  	sizeCache     protoimpl.SizeCache
   199  	unknownFields protoimpl.UnknownFields
   200  
   201  	// Required. Player reports. The maximum number of player reports that you can
   202  	// log at once is 50.
   203  	PlayerReports []*PlayerReport `protobuf:"bytes,1,rep,name=player_reports,json=playerReports,proto3" json:"player_reports,omitempty"`
   204  	// Required. A string that uniquely identifies the log player reports request.
   205  	// This allows you to detect duplicate requests. We recommend that you use
   206  	// UUIDs for this value. The value must not exceed 50 characters.
   207  	//
   208  	// You should reuse the `request_id` only when retrying a request in the case
   209  	// of a failure. In that case, the request must be identical to the one that
   210  	// failed.
   211  	RequestId string `protobuf:"bytes,2,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
   212  	// Required. Information about the client device (for example, device model
   213  	// and operating system).
   214  	ClientInfo *unity.ClientInfo `protobuf:"bytes,3,opt,name=client_info,json=clientInfo,proto3" json:"client_info,omitempty"`
   215  }
   216  
   217  func (x *LogPlayerReportsRequest) Reset() {
   218  	*x = LogPlayerReportsRequest{}
   219  	if protoimpl.UnsafeEnabled {
   220  		mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[2]
   221  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   222  		ms.StoreMessageInfo(mi)
   223  	}
   224  }
   225  
   226  func (x *LogPlayerReportsRequest) String() string {
   227  	return protoimpl.X.MessageStringOf(x)
   228  }
   229  
   230  func (*LogPlayerReportsRequest) ProtoMessage() {}
   231  
   232  func (x *LogPlayerReportsRequest) ProtoReflect() protoreflect.Message {
   233  	mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[2]
   234  	if protoimpl.UnsafeEnabled && x != nil {
   235  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   236  		if ms.LoadMessageInfo() == nil {
   237  			ms.StoreMessageInfo(mi)
   238  		}
   239  		return ms
   240  	}
   241  	return mi.MessageOf(x)
   242  }
   243  
   244  // Deprecated: Use LogPlayerReportsRequest.ProtoReflect.Descriptor instead.
   245  func (*LogPlayerReportsRequest) Descriptor() ([]byte, []int) {
   246  	return file_google_maps_playablelocations_v3_playablelocations_proto_rawDescGZIP(), []int{2}
   247  }
   248  
   249  func (x *LogPlayerReportsRequest) GetPlayerReports() []*PlayerReport {
   250  	if x != nil {
   251  		return x.PlayerReports
   252  	}
   253  	return nil
   254  }
   255  
   256  func (x *LogPlayerReportsRequest) GetRequestId() string {
   257  	if x != nil {
   258  		return x.RequestId
   259  	}
   260  	return ""
   261  }
   262  
   263  func (x *LogPlayerReportsRequest) GetClientInfo() *unity.ClientInfo {
   264  	if x != nil {
   265  		return x.ClientInfo
   266  	}
   267  	return nil
   268  }
   269  
   270  // A response for the
   271  // [LogPlayerReports][google.maps.playablelocations.v3.PlayableLocations.LogPlayerReports]
   272  // method.
   273  //
   274  // This method returns no data upon success.
   275  type LogPlayerReportsResponse struct {
   276  	state         protoimpl.MessageState
   277  	sizeCache     protoimpl.SizeCache
   278  	unknownFields protoimpl.UnknownFields
   279  }
   280  
   281  func (x *LogPlayerReportsResponse) Reset() {
   282  	*x = LogPlayerReportsResponse{}
   283  	if protoimpl.UnsafeEnabled {
   284  		mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[3]
   285  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   286  		ms.StoreMessageInfo(mi)
   287  	}
   288  }
   289  
   290  func (x *LogPlayerReportsResponse) String() string {
   291  	return protoimpl.X.MessageStringOf(x)
   292  }
   293  
   294  func (*LogPlayerReportsResponse) ProtoMessage() {}
   295  
   296  func (x *LogPlayerReportsResponse) ProtoReflect() protoreflect.Message {
   297  	mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[3]
   298  	if protoimpl.UnsafeEnabled && x != nil {
   299  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   300  		if ms.LoadMessageInfo() == nil {
   301  			ms.StoreMessageInfo(mi)
   302  		}
   303  		return ms
   304  	}
   305  	return mi.MessageOf(x)
   306  }
   307  
   308  // Deprecated: Use LogPlayerReportsResponse.ProtoReflect.Descriptor instead.
   309  func (*LogPlayerReportsResponse) Descriptor() ([]byte, []int) {
   310  	return file_google_maps_playablelocations_v3_playablelocations_proto_rawDescGZIP(), []int{3}
   311  }
   312  
   313  // A request for logging impressions.
   314  type LogImpressionsRequest struct {
   315  	state         protoimpl.MessageState
   316  	sizeCache     protoimpl.SizeCache
   317  	unknownFields protoimpl.UnknownFields
   318  
   319  	// Required. Impression event details. The maximum number of impression
   320  	// reports that you can log at once is 50.
   321  	Impressions []*Impression `protobuf:"bytes,1,rep,name=impressions,proto3" json:"impressions,omitempty"`
   322  	// Required. A string that uniquely identifies the log impressions request.
   323  	// This allows you to detect duplicate requests. We recommend that you use
   324  	// UUIDs for this value. The value must not exceed 50 characters.
   325  	//
   326  	// You should reuse the `request_id` only when retrying a request in case of
   327  	// failure. In this case, the request must be identical to the one that
   328  	// failed.
   329  	RequestId string `protobuf:"bytes,2,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
   330  	// Required. Information about the client device. For example, device model
   331  	// and operating system.
   332  	ClientInfo *unity.ClientInfo `protobuf:"bytes,3,opt,name=client_info,json=clientInfo,proto3" json:"client_info,omitempty"`
   333  }
   334  
   335  func (x *LogImpressionsRequest) Reset() {
   336  	*x = LogImpressionsRequest{}
   337  	if protoimpl.UnsafeEnabled {
   338  		mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[4]
   339  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   340  		ms.StoreMessageInfo(mi)
   341  	}
   342  }
   343  
   344  func (x *LogImpressionsRequest) String() string {
   345  	return protoimpl.X.MessageStringOf(x)
   346  }
   347  
   348  func (*LogImpressionsRequest) ProtoMessage() {}
   349  
   350  func (x *LogImpressionsRequest) ProtoReflect() protoreflect.Message {
   351  	mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[4]
   352  	if protoimpl.UnsafeEnabled && x != nil {
   353  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   354  		if ms.LoadMessageInfo() == nil {
   355  			ms.StoreMessageInfo(mi)
   356  		}
   357  		return ms
   358  	}
   359  	return mi.MessageOf(x)
   360  }
   361  
   362  // Deprecated: Use LogImpressionsRequest.ProtoReflect.Descriptor instead.
   363  func (*LogImpressionsRequest) Descriptor() ([]byte, []int) {
   364  	return file_google_maps_playablelocations_v3_playablelocations_proto_rawDescGZIP(), []int{4}
   365  }
   366  
   367  func (x *LogImpressionsRequest) GetImpressions() []*Impression {
   368  	if x != nil {
   369  		return x.Impressions
   370  	}
   371  	return nil
   372  }
   373  
   374  func (x *LogImpressionsRequest) GetRequestId() string {
   375  	if x != nil {
   376  		return x.RequestId
   377  	}
   378  	return ""
   379  }
   380  
   381  func (x *LogImpressionsRequest) GetClientInfo() *unity.ClientInfo {
   382  	if x != nil {
   383  		return x.ClientInfo
   384  	}
   385  	return nil
   386  }
   387  
   388  // A response for the
   389  // [LogImpressions][google.maps.playablelocations.v3.PlayableLocations.LogImpressions]
   390  // method. This method returns no data upon success.
   391  type LogImpressionsResponse struct {
   392  	state         protoimpl.MessageState
   393  	sizeCache     protoimpl.SizeCache
   394  	unknownFields protoimpl.UnknownFields
   395  }
   396  
   397  func (x *LogImpressionsResponse) Reset() {
   398  	*x = LogImpressionsResponse{}
   399  	if protoimpl.UnsafeEnabled {
   400  		mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[5]
   401  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   402  		ms.StoreMessageInfo(mi)
   403  	}
   404  }
   405  
   406  func (x *LogImpressionsResponse) String() string {
   407  	return protoimpl.X.MessageStringOf(x)
   408  }
   409  
   410  func (*LogImpressionsResponse) ProtoMessage() {}
   411  
   412  func (x *LogImpressionsResponse) ProtoReflect() protoreflect.Message {
   413  	mi := &file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[5]
   414  	if protoimpl.UnsafeEnabled && x != nil {
   415  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   416  		if ms.LoadMessageInfo() == nil {
   417  			ms.StoreMessageInfo(mi)
   418  		}
   419  		return ms
   420  	}
   421  	return mi.MessageOf(x)
   422  }
   423  
   424  // Deprecated: Use LogImpressionsResponse.ProtoReflect.Descriptor instead.
   425  func (*LogImpressionsResponse) Descriptor() ([]byte, []int) {
   426  	return file_google_maps_playablelocations_v3_playablelocations_proto_rawDescGZIP(), []int{5}
   427  }
   428  
   429  var File_google_maps_playablelocations_v3_playablelocations_proto protoreflect.FileDescriptor
   430  
   431  var file_google_maps_playablelocations_v3_playablelocations_proto_rawDesc = []byte{
   432  	0x0a, 0x38, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x70, 0x6c,
   433  	0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
   434  	0x76, 0x33, 0x2f, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74,
   435  	0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x20, 0x67, 0x6f, 0x6f, 0x67,
   436  	0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65,
   437  	0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x76, 0x33, 0x1a, 0x1c, 0x67, 0x6f,
   438  	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
   439  	0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67,
   440  	0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68,
   441  	0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x30, 0x67, 0x6f, 0x6f,
   442  	0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c,
   443  	0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x33, 0x2f, 0x72, 0x65,
   444  	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x37, 0x67,
   445  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x70, 0x6c, 0x61, 0x79, 0x61,
   446  	0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x33, 0x2f,
   447  	0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73,
   448  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x22, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d,
   449  	0x61, 0x70, 0x73, 0x2f, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74,
   450  	0x69, 0x6e, 0x66, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67,
   451  	0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61,
   452  	0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67,
   453  	0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72,
   454  	0x6f, 0x74, 0x6f, 0x22, 0xd0, 0x01, 0x0a, 0x1e, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6c,
   455  	0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52,
   456  	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x59, 0x0a, 0x0b, 0x61, 0x72, 0x65, 0x61, 0x5f, 0x66,
   457  	0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f,
   458  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62,
   459  	0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x73,
   460  	0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2e, 0x41, 0x72, 0x65, 0x61, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72,
   461  	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x61, 0x72, 0x65, 0x61, 0x46, 0x69, 0x6c, 0x74, 0x65,
   462  	0x72, 0x12, 0x53, 0x0a, 0x08, 0x63, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x18, 0x02, 0x20,
   463  	0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70,
   464  	0x73, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
   465  	0x6f, 0x6e, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2e, 0x43, 0x72,
   466  	0x69, 0x74, 0x65, 0x72, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x63, 0x72,
   467  	0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x22, 0x85, 0x03, 0x0a, 0x1f, 0x53, 0x61, 0x6d, 0x70, 0x6c,
   468  	0x65, 0x50, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
   469  	0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa5, 0x01, 0x0a, 0x1e, 0x6c,
   470  	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x67, 0x61, 0x6d,
   471  	0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
   472  	0x03, 0x28, 0x0b, 0x32, 0x61, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70,
   473  	0x73, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
   474  	0x6f, 0x6e, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6c, 0x61,
   475  	0x79, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
   476  	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
   477  	0x50, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70,
   478  	0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x1a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
   479  	0x73, 0x50, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79,
   480  	0x70, 0x65, 0x12, 0x2b, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32,
   481  	0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
   482  	0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x1a,
   483  	0x8c, 0x01, 0x0a, 0x1f, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72,
   484  	0x47, 0x61, 0x6d, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x45, 0x6e,
   485  	0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
   486  	0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x53, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
   487  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61,
   488  	0x70, 0x73, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74,
   489  	0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2e, 0x50,
   490  	0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c,
   491  	0x69, 0x73, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xde,
   492  	0x01, 0x0a, 0x17, 0x4c, 0x6f, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f,
   493  	0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5a, 0x0a, 0x0e, 0x70, 0x6c,
   494  	0x61, 0x79, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03,
   495  	0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73,
   496  	0x2e, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
   497  	0x6e, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f,
   498  	0x72, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52,
   499  	0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
   500  	0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
   501  	0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x0b, 0x63, 0x6c,
   502  	0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
   503  	0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x75, 0x6e,
   504  	0x69, 0x74, 0x79, 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x03,
   505  	0xe0, 0x41, 0x02, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x22,
   506  	0x1a, 0x0a, 0x18, 0x4c, 0x6f, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f,
   507  	0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd5, 0x01, 0x0a, 0x15,
   508  	0x4c, 0x6f, 0x67, 0x49, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
   509  	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x53, 0x0a, 0x0b, 0x69, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73,
   510  	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f,
   511  	0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c,
   512  	0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x49, 0x6d,
   513  	0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x69,
   514  	0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65,
   515  	0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
   516  	0xe0, 0x41, 0x02, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x43,
   517  	0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20,
   518  	0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70,
   519  	0x73, 0x2e, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e,
   520  	0x66, 0x6f, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49,
   521  	0x6e, 0x66, 0x6f, 0x22, 0x18, 0x0a, 0x16, 0x4c, 0x6f, 0x67, 0x49, 0x6d, 0x70, 0x72, 0x65, 0x73,
   522  	0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xd3, 0x04,
   523  	0x0a, 0x11, 0x50, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69,
   524  	0x6f, 0x6e, 0x73, 0x12, 0xc6, 0x01, 0x0a, 0x17, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6c,
   525  	0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
   526  	0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x70, 0x6c,
   527  	0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e,
   528  	0x76, 0x33, 0x2e, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c,
   529  	0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
   530  	0x74, 0x1a, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e,
   531  	0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
   532  	0x73, 0x2e, 0x76, 0x33, 0x2e, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x61,
   533  	0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70,
   534  	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x22, 0x1b, 0x2f, 0x76,
   535  	0x33, 0x3a, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65,
   536  	0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x01, 0x2a, 0x12, 0xaa, 0x01, 0x0a,
   537  	0x10, 0x4c, 0x6f, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74,
   538  	0x73, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e,
   539  	0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
   540  	0x73, 0x2e, 0x76, 0x33, 0x2e, 0x4c, 0x6f, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65,
   541  	0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x67,
   542  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x61,
   543  	0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x76, 0x33, 0x2e,
   544  	0x4c, 0x6f, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73,
   545  	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19,
   546  	0x22, 0x14, 0x2f, 0x76, 0x33, 0x3a, 0x6c, 0x6f, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52,
   547  	0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x3a, 0x01, 0x2a, 0x12, 0xa2, 0x01, 0x0a, 0x0e, 0x4c, 0x6f,
   548  	0x67, 0x49, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x37, 0x2e, 0x67,
   549  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x61,
   550  	0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x76, 0x33, 0x2e,
   551  	0x4c, 0x6f, 0x67, 0x49, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
   552  	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d,
   553  	0x61, 0x70, 0x73, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61,
   554  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x4c, 0x6f, 0x67, 0x49, 0x6d, 0x70, 0x72,
   555  	0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
   556  	0x1d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x22, 0x12, 0x2f, 0x76, 0x33, 0x3a, 0x6c, 0x6f, 0x67,
   557  	0x49, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x01, 0x2a, 0x1a, 0x23,
   558  	0xca, 0x41, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74,
   559  	0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
   560  	0x63, 0x6f, 0x6d, 0x42, 0xe0, 0x01, 0x0a, 0x24, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
   561  	0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65,
   562  	0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x76, 0x33, 0x42, 0x16, 0x50, 0x6c,
   563  	0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50,
   564  	0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x51, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67,
   565  	0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f,
   566  	0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x6d, 0x61,
   567  	0x70, 0x73, 0x2f, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74,
   568  	0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x33, 0x3b, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65,
   569  	0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0xa2, 0x02, 0x04, 0x47, 0x4d, 0x50, 0x4c,
   570  	0xaa, 0x02, 0x20, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x4d, 0x61, 0x70, 0x73, 0x2e, 0x50,
   571  	0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
   572  	0x2e, 0x56, 0x33, 0xca, 0x02, 0x20, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x4d, 0x61, 0x70,
   573  	0x73, 0x5c, 0x50, 0x6c, 0x61, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69,
   574  	0x6f, 0x6e, 0x73, 0x5c, 0x56, 0x33, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
   575  }
   576  
   577  var (
   578  	file_google_maps_playablelocations_v3_playablelocations_proto_rawDescOnce sync.Once
   579  	file_google_maps_playablelocations_v3_playablelocations_proto_rawDescData = file_google_maps_playablelocations_v3_playablelocations_proto_rawDesc
   580  )
   581  
   582  func file_google_maps_playablelocations_v3_playablelocations_proto_rawDescGZIP() []byte {
   583  	file_google_maps_playablelocations_v3_playablelocations_proto_rawDescOnce.Do(func() {
   584  		file_google_maps_playablelocations_v3_playablelocations_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_maps_playablelocations_v3_playablelocations_proto_rawDescData)
   585  	})
   586  	return file_google_maps_playablelocations_v3_playablelocations_proto_rawDescData
   587  }
   588  
   589  var file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
   590  var file_google_maps_playablelocations_v3_playablelocations_proto_goTypes = []interface{}{
   591  	(*SamplePlayableLocationsRequest)(nil),  // 0: google.maps.playablelocations.v3.SamplePlayableLocationsRequest
   592  	(*SamplePlayableLocationsResponse)(nil), // 1: google.maps.playablelocations.v3.SamplePlayableLocationsResponse
   593  	(*LogPlayerReportsRequest)(nil),         // 2: google.maps.playablelocations.v3.LogPlayerReportsRequest
   594  	(*LogPlayerReportsResponse)(nil),        // 3: google.maps.playablelocations.v3.LogPlayerReportsResponse
   595  	(*LogImpressionsRequest)(nil),           // 4: google.maps.playablelocations.v3.LogImpressionsRequest
   596  	(*LogImpressionsResponse)(nil),          // 5: google.maps.playablelocations.v3.LogImpressionsResponse
   597  	nil,                                     // 6: google.maps.playablelocations.v3.SamplePlayableLocationsResponse.LocationsPerGameObjectTypeEntry
   598  	(*sample.AreaFilter)(nil),               // 7: google.maps.playablelocations.v3.sample.AreaFilter
   599  	(*sample.Criterion)(nil),                // 8: google.maps.playablelocations.v3.sample.Criterion
   600  	(*durationpb.Duration)(nil),             // 9: google.protobuf.Duration
   601  	(*PlayerReport)(nil),                    // 10: google.maps.playablelocations.v3.PlayerReport
   602  	(*unity.ClientInfo)(nil),                // 11: google.maps.unity.ClientInfo
   603  	(*Impression)(nil),                      // 12: google.maps.playablelocations.v3.Impression
   604  	(*sample.PlayableLocationList)(nil),     // 13: google.maps.playablelocations.v3.sample.PlayableLocationList
   605  }
   606  var file_google_maps_playablelocations_v3_playablelocations_proto_depIdxs = []int32{
   607  	7,  // 0: google.maps.playablelocations.v3.SamplePlayableLocationsRequest.area_filter:type_name -> google.maps.playablelocations.v3.sample.AreaFilter
   608  	8,  // 1: google.maps.playablelocations.v3.SamplePlayableLocationsRequest.criteria:type_name -> google.maps.playablelocations.v3.sample.Criterion
   609  	6,  // 2: google.maps.playablelocations.v3.SamplePlayableLocationsResponse.locations_per_game_object_type:type_name -> google.maps.playablelocations.v3.SamplePlayableLocationsResponse.LocationsPerGameObjectTypeEntry
   610  	9,  // 3: google.maps.playablelocations.v3.SamplePlayableLocationsResponse.ttl:type_name -> google.protobuf.Duration
   611  	10, // 4: google.maps.playablelocations.v3.LogPlayerReportsRequest.player_reports:type_name -> google.maps.playablelocations.v3.PlayerReport
   612  	11, // 5: google.maps.playablelocations.v3.LogPlayerReportsRequest.client_info:type_name -> google.maps.unity.ClientInfo
   613  	12, // 6: google.maps.playablelocations.v3.LogImpressionsRequest.impressions:type_name -> google.maps.playablelocations.v3.Impression
   614  	11, // 7: google.maps.playablelocations.v3.LogImpressionsRequest.client_info:type_name -> google.maps.unity.ClientInfo
   615  	13, // 8: google.maps.playablelocations.v3.SamplePlayableLocationsResponse.LocationsPerGameObjectTypeEntry.value:type_name -> google.maps.playablelocations.v3.sample.PlayableLocationList
   616  	0,  // 9: google.maps.playablelocations.v3.PlayableLocations.SamplePlayableLocations:input_type -> google.maps.playablelocations.v3.SamplePlayableLocationsRequest
   617  	2,  // 10: google.maps.playablelocations.v3.PlayableLocations.LogPlayerReports:input_type -> google.maps.playablelocations.v3.LogPlayerReportsRequest
   618  	4,  // 11: google.maps.playablelocations.v3.PlayableLocations.LogImpressions:input_type -> google.maps.playablelocations.v3.LogImpressionsRequest
   619  	1,  // 12: google.maps.playablelocations.v3.PlayableLocations.SamplePlayableLocations:output_type -> google.maps.playablelocations.v3.SamplePlayableLocationsResponse
   620  	3,  // 13: google.maps.playablelocations.v3.PlayableLocations.LogPlayerReports:output_type -> google.maps.playablelocations.v3.LogPlayerReportsResponse
   621  	5,  // 14: google.maps.playablelocations.v3.PlayableLocations.LogImpressions:output_type -> google.maps.playablelocations.v3.LogImpressionsResponse
   622  	12, // [12:15] is the sub-list for method output_type
   623  	9,  // [9:12] is the sub-list for method input_type
   624  	9,  // [9:9] is the sub-list for extension type_name
   625  	9,  // [9:9] is the sub-list for extension extendee
   626  	0,  // [0:9] is the sub-list for field type_name
   627  }
   628  
   629  func init() { file_google_maps_playablelocations_v3_playablelocations_proto_init() }
   630  func file_google_maps_playablelocations_v3_playablelocations_proto_init() {
   631  	if File_google_maps_playablelocations_v3_playablelocations_proto != nil {
   632  		return
   633  	}
   634  	file_google_maps_playablelocations_v3_resources_proto_init()
   635  	if !protoimpl.UnsafeEnabled {
   636  		file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   637  			switch v := v.(*SamplePlayableLocationsRequest); i {
   638  			case 0:
   639  				return &v.state
   640  			case 1:
   641  				return &v.sizeCache
   642  			case 2:
   643  				return &v.unknownFields
   644  			default:
   645  				return nil
   646  			}
   647  		}
   648  		file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
   649  			switch v := v.(*SamplePlayableLocationsResponse); i {
   650  			case 0:
   651  				return &v.state
   652  			case 1:
   653  				return &v.sizeCache
   654  			case 2:
   655  				return &v.unknownFields
   656  			default:
   657  				return nil
   658  			}
   659  		}
   660  		file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
   661  			switch v := v.(*LogPlayerReportsRequest); i {
   662  			case 0:
   663  				return &v.state
   664  			case 1:
   665  				return &v.sizeCache
   666  			case 2:
   667  				return &v.unknownFields
   668  			default:
   669  				return nil
   670  			}
   671  		}
   672  		file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
   673  			switch v := v.(*LogPlayerReportsResponse); i {
   674  			case 0:
   675  				return &v.state
   676  			case 1:
   677  				return &v.sizeCache
   678  			case 2:
   679  				return &v.unknownFields
   680  			default:
   681  				return nil
   682  			}
   683  		}
   684  		file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
   685  			switch v := v.(*LogImpressionsRequest); i {
   686  			case 0:
   687  				return &v.state
   688  			case 1:
   689  				return &v.sizeCache
   690  			case 2:
   691  				return &v.unknownFields
   692  			default:
   693  				return nil
   694  			}
   695  		}
   696  		file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
   697  			switch v := v.(*LogImpressionsResponse); i {
   698  			case 0:
   699  				return &v.state
   700  			case 1:
   701  				return &v.sizeCache
   702  			case 2:
   703  				return &v.unknownFields
   704  			default:
   705  				return nil
   706  			}
   707  		}
   708  	}
   709  	type x struct{}
   710  	out := protoimpl.TypeBuilder{
   711  		File: protoimpl.DescBuilder{
   712  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
   713  			RawDescriptor: file_google_maps_playablelocations_v3_playablelocations_proto_rawDesc,
   714  			NumEnums:      0,
   715  			NumMessages:   7,
   716  			NumExtensions: 0,
   717  			NumServices:   1,
   718  		},
   719  		GoTypes:           file_google_maps_playablelocations_v3_playablelocations_proto_goTypes,
   720  		DependencyIndexes: file_google_maps_playablelocations_v3_playablelocations_proto_depIdxs,
   721  		MessageInfos:      file_google_maps_playablelocations_v3_playablelocations_proto_msgTypes,
   722  	}.Build()
   723  	File_google_maps_playablelocations_v3_playablelocations_proto = out.File
   724  	file_google_maps_playablelocations_v3_playablelocations_proto_rawDesc = nil
   725  	file_google_maps_playablelocations_v3_playablelocations_proto_goTypes = nil
   726  	file_google_maps_playablelocations_v3_playablelocations_proto_depIdxs = nil
   727  }
   728  
   729  // Reference imports to suppress errors if they are not otherwise used.
   730  var _ context.Context
   731  var _ grpc.ClientConnInterface
   732  
   733  // This is a compile-time assertion to ensure that this generated file
   734  // is compatible with the grpc package it is being compiled against.
   735  const _ = grpc.SupportPackageIsVersion6
   736  
   737  // PlayableLocationsClient is the client API for PlayableLocations service.
   738  //
   739  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
   740  type PlayableLocationsClient interface {
   741  	// Returns a set of playable locations that lie within a specified area,
   742  	// that satisfy optional filter criteria.
   743  	//
   744  	// Note: Identical `SamplePlayableLocations` requests can return different
   745  	// results as the state of the world changes over time.
   746  	SamplePlayableLocations(ctx context.Context, in *SamplePlayableLocationsRequest, opts ...grpc.CallOption) (*SamplePlayableLocationsResponse, error)
   747  	// Logs bad playable location reports submitted by players.
   748  	//
   749  	// Reports are not partially saved; either all reports are saved and this
   750  	// request succeeds, or no reports are saved, and this request fails.
   751  	LogPlayerReports(ctx context.Context, in *LogPlayerReportsRequest, opts ...grpc.CallOption) (*LogPlayerReportsResponse, error)
   752  	// Logs new events when playable locations are displayed, and when they are
   753  	// interacted with.
   754  	//
   755  	// Impressions are not partially saved; either all impressions are saved and
   756  	// this request succeeds, or no impressions are saved, and this request fails.
   757  	LogImpressions(ctx context.Context, in *LogImpressionsRequest, opts ...grpc.CallOption) (*LogImpressionsResponse, error)
   758  }
   759  
   760  type playableLocationsClient struct {
   761  	cc grpc.ClientConnInterface
   762  }
   763  
   764  func NewPlayableLocationsClient(cc grpc.ClientConnInterface) PlayableLocationsClient {
   765  	return &playableLocationsClient{cc}
   766  }
   767  
   768  func (c *playableLocationsClient) SamplePlayableLocations(ctx context.Context, in *SamplePlayableLocationsRequest, opts ...grpc.CallOption) (*SamplePlayableLocationsResponse, error) {
   769  	out := new(SamplePlayableLocationsResponse)
   770  	err := c.cc.Invoke(ctx, "/google.maps.playablelocations.v3.PlayableLocations/SamplePlayableLocations", in, out, opts...)
   771  	if err != nil {
   772  		return nil, err
   773  	}
   774  	return out, nil
   775  }
   776  
   777  func (c *playableLocationsClient) LogPlayerReports(ctx context.Context, in *LogPlayerReportsRequest, opts ...grpc.CallOption) (*LogPlayerReportsResponse, error) {
   778  	out := new(LogPlayerReportsResponse)
   779  	err := c.cc.Invoke(ctx, "/google.maps.playablelocations.v3.PlayableLocations/LogPlayerReports", in, out, opts...)
   780  	if err != nil {
   781  		return nil, err
   782  	}
   783  	return out, nil
   784  }
   785  
   786  func (c *playableLocationsClient) LogImpressions(ctx context.Context, in *LogImpressionsRequest, opts ...grpc.CallOption) (*LogImpressionsResponse, error) {
   787  	out := new(LogImpressionsResponse)
   788  	err := c.cc.Invoke(ctx, "/google.maps.playablelocations.v3.PlayableLocations/LogImpressions", in, out, opts...)
   789  	if err != nil {
   790  		return nil, err
   791  	}
   792  	return out, nil
   793  }
   794  
   795  // PlayableLocationsServer is the server API for PlayableLocations service.
   796  type PlayableLocationsServer interface {
   797  	// Returns a set of playable locations that lie within a specified area,
   798  	// that satisfy optional filter criteria.
   799  	//
   800  	// Note: Identical `SamplePlayableLocations` requests can return different
   801  	// results as the state of the world changes over time.
   802  	SamplePlayableLocations(context.Context, *SamplePlayableLocationsRequest) (*SamplePlayableLocationsResponse, error)
   803  	// Logs bad playable location reports submitted by players.
   804  	//
   805  	// Reports are not partially saved; either all reports are saved and this
   806  	// request succeeds, or no reports are saved, and this request fails.
   807  	LogPlayerReports(context.Context, *LogPlayerReportsRequest) (*LogPlayerReportsResponse, error)
   808  	// Logs new events when playable locations are displayed, and when they are
   809  	// interacted with.
   810  	//
   811  	// Impressions are not partially saved; either all impressions are saved and
   812  	// this request succeeds, or no impressions are saved, and this request fails.
   813  	LogImpressions(context.Context, *LogImpressionsRequest) (*LogImpressionsResponse, error)
   814  }
   815  
   816  // UnimplementedPlayableLocationsServer can be embedded to have forward compatible implementations.
   817  type UnimplementedPlayableLocationsServer struct {
   818  }
   819  
   820  func (*UnimplementedPlayableLocationsServer) SamplePlayableLocations(context.Context, *SamplePlayableLocationsRequest) (*SamplePlayableLocationsResponse, error) {
   821  	return nil, status.Errorf(codes.Unimplemented, "method SamplePlayableLocations not implemented")
   822  }
   823  func (*UnimplementedPlayableLocationsServer) LogPlayerReports(context.Context, *LogPlayerReportsRequest) (*LogPlayerReportsResponse, error) {
   824  	return nil, status.Errorf(codes.Unimplemented, "method LogPlayerReports not implemented")
   825  }
   826  func (*UnimplementedPlayableLocationsServer) LogImpressions(context.Context, *LogImpressionsRequest) (*LogImpressionsResponse, error) {
   827  	return nil, status.Errorf(codes.Unimplemented, "method LogImpressions not implemented")
   828  }
   829  
   830  func RegisterPlayableLocationsServer(s *grpc.Server, srv PlayableLocationsServer) {
   831  	s.RegisterService(&_PlayableLocations_serviceDesc, srv)
   832  }
   833  
   834  func _PlayableLocations_SamplePlayableLocations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   835  	in := new(SamplePlayableLocationsRequest)
   836  	if err := dec(in); err != nil {
   837  		return nil, err
   838  	}
   839  	if interceptor == nil {
   840  		return srv.(PlayableLocationsServer).SamplePlayableLocations(ctx, in)
   841  	}
   842  	info := &grpc.UnaryServerInfo{
   843  		Server:     srv,
   844  		FullMethod: "/google.maps.playablelocations.v3.PlayableLocations/SamplePlayableLocations",
   845  	}
   846  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   847  		return srv.(PlayableLocationsServer).SamplePlayableLocations(ctx, req.(*SamplePlayableLocationsRequest))
   848  	}
   849  	return interceptor(ctx, in, info, handler)
   850  }
   851  
   852  func _PlayableLocations_LogPlayerReports_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   853  	in := new(LogPlayerReportsRequest)
   854  	if err := dec(in); err != nil {
   855  		return nil, err
   856  	}
   857  	if interceptor == nil {
   858  		return srv.(PlayableLocationsServer).LogPlayerReports(ctx, in)
   859  	}
   860  	info := &grpc.UnaryServerInfo{
   861  		Server:     srv,
   862  		FullMethod: "/google.maps.playablelocations.v3.PlayableLocations/LogPlayerReports",
   863  	}
   864  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   865  		return srv.(PlayableLocationsServer).LogPlayerReports(ctx, req.(*LogPlayerReportsRequest))
   866  	}
   867  	return interceptor(ctx, in, info, handler)
   868  }
   869  
   870  func _PlayableLocations_LogImpressions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   871  	in := new(LogImpressionsRequest)
   872  	if err := dec(in); err != nil {
   873  		return nil, err
   874  	}
   875  	if interceptor == nil {
   876  		return srv.(PlayableLocationsServer).LogImpressions(ctx, in)
   877  	}
   878  	info := &grpc.UnaryServerInfo{
   879  		Server:     srv,
   880  		FullMethod: "/google.maps.playablelocations.v3.PlayableLocations/LogImpressions",
   881  	}
   882  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   883  		return srv.(PlayableLocationsServer).LogImpressions(ctx, req.(*LogImpressionsRequest))
   884  	}
   885  	return interceptor(ctx, in, info, handler)
   886  }
   887  
   888  var _PlayableLocations_serviceDesc = grpc.ServiceDesc{
   889  	ServiceName: "google.maps.playablelocations.v3.PlayableLocations",
   890  	HandlerType: (*PlayableLocationsServer)(nil),
   891  	Methods: []grpc.MethodDesc{
   892  		{
   893  			MethodName: "SamplePlayableLocations",
   894  			Handler:    _PlayableLocations_SamplePlayableLocations_Handler,
   895  		},
   896  		{
   897  			MethodName: "LogPlayerReports",
   898  			Handler:    _PlayableLocations_LogPlayerReports_Handler,
   899  		},
   900  		{
   901  			MethodName: "LogImpressions",
   902  			Handler:    _PlayableLocations_LogImpressions_Handler,
   903  		},
   904  	},
   905  	Streams:  []grpc.StreamDesc{},
   906  	Metadata: "google/maps/playablelocations/v3/playablelocations.proto",
   907  }
   908  

View as plain text