2020-11-18 09:16:51 +00:00
// Code generated by protoc-gen-go. DO NOT EDIT.
2023-08-18 11:39:59 +00:00
// versions:
// protoc-gen-go v1.29.1
// protoc v3.20.3
2020-11-18 09:16:51 +00:00
// source: communities.proto
package protobuf
import (
2023-08-18 11:39:59 +00:00
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
2020-11-18 09:16:51 +00:00
)
2023-08-18 11:39:59 +00:00
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 )
)
2020-11-18 09:16:51 +00:00
2021-01-11 10:32:51 +00:00
type CommunityMember_Roles int32
const (
2023-08-16 10:14:53 +00:00
CommunityMember_ROLE_NONE CommunityMember_Roles = 0
CommunityMember_ROLE_OWNER CommunityMember_Roles = 1
CommunityMember_ROLE_ADMIN CommunityMember_Roles = 4
CommunityMember_ROLE_TOKEN_MASTER CommunityMember_Roles = 5
2021-01-11 10:32:51 +00:00
)
2023-08-18 11:39:59 +00:00
// Enum value maps for CommunityMember_Roles.
var (
CommunityMember_Roles_name = map [ int32 ] string {
0 : "ROLE_NONE" ,
1 : "ROLE_OWNER" ,
4 : "ROLE_ADMIN" ,
5 : "ROLE_TOKEN_MASTER" ,
}
CommunityMember_Roles_value = map [ string ] int32 {
"ROLE_NONE" : 0 ,
"ROLE_OWNER" : 1 ,
"ROLE_ADMIN" : 4 ,
"ROLE_TOKEN_MASTER" : 5 ,
}
)
2021-01-11 10:32:51 +00:00
2023-08-18 11:39:59 +00:00
func ( x CommunityMember_Roles ) Enum ( ) * CommunityMember_Roles {
p := new ( CommunityMember_Roles )
* p = x
return p
2021-01-11 10:32:51 +00:00
}
func ( x CommunityMember_Roles ) String ( ) string {
2023-08-18 11:39:59 +00:00
return protoimpl . X . EnumStringOf ( x . Descriptor ( ) , protoreflect . EnumNumber ( x ) )
}
func ( CommunityMember_Roles ) Descriptor ( ) protoreflect . EnumDescriptor {
return file_communities_proto_enumTypes [ 0 ] . Descriptor ( )
2021-01-11 10:32:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( CommunityMember_Roles ) Type ( ) protoreflect . EnumType {
return & file_communities_proto_enumTypes [ 0 ]
}
func ( x CommunityMember_Roles ) Number ( ) protoreflect . EnumNumber {
return protoreflect . EnumNumber ( x )
}
// Deprecated: Use CommunityMember_Roles.Descriptor instead.
2021-01-11 10:32:51 +00:00
func ( CommunityMember_Roles ) EnumDescriptor ( ) ( [ ] byte , [ ] int ) {
2023-08-18 11:39:59 +00:00
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 1 , 0 }
2021-01-11 10:32:51 +00:00
}
2020-11-18 09:16:51 +00:00
type CommunityPermissions_Access int32
const (
CommunityPermissions_UNKNOWN_ACCESS CommunityPermissions_Access = 0
CommunityPermissions_NO_MEMBERSHIP CommunityPermissions_Access = 1
CommunityPermissions_INVITATION_ONLY CommunityPermissions_Access = 2
CommunityPermissions_ON_REQUEST CommunityPermissions_Access = 3
)
2023-08-18 11:39:59 +00:00
// Enum value maps for CommunityPermissions_Access.
var (
CommunityPermissions_Access_name = map [ int32 ] string {
0 : "UNKNOWN_ACCESS" ,
1 : "NO_MEMBERSHIP" ,
2 : "INVITATION_ONLY" ,
3 : "ON_REQUEST" ,
}
CommunityPermissions_Access_value = map [ string ] int32 {
"UNKNOWN_ACCESS" : 0 ,
"NO_MEMBERSHIP" : 1 ,
"INVITATION_ONLY" : 2 ,
"ON_REQUEST" : 3 ,
}
)
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
func ( x CommunityPermissions_Access ) Enum ( ) * CommunityPermissions_Access {
p := new ( CommunityPermissions_Access )
* p = x
return p
2020-11-18 09:16:51 +00:00
}
func ( x CommunityPermissions_Access ) String ( ) string {
2023-08-18 11:39:59 +00:00
return protoimpl . X . EnumStringOf ( x . Descriptor ( ) , protoreflect . EnumNumber ( x ) )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( CommunityPermissions_Access ) Descriptor ( ) protoreflect . EnumDescriptor {
return file_communities_proto_enumTypes [ 1 ] . Descriptor ( )
}
func ( CommunityPermissions_Access ) Type ( ) protoreflect . EnumType {
return & file_communities_proto_enumTypes [ 1 ]
}
func ( x CommunityPermissions_Access ) Number ( ) protoreflect . EnumNumber {
return protoreflect . EnumNumber ( x )
}
// Deprecated: Use CommunityPermissions_Access.Descriptor instead.
2020-11-18 09:16:51 +00:00
func ( CommunityPermissions_Access ) EnumDescriptor ( ) ( [ ] byte , [ ] int ) {
2023-08-18 11:39:59 +00:00
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 3 , 0 }
2020-11-18 09:16:51 +00:00
}
2023-03-02 16:27:48 +00:00
type CommunityTokenPermission_Type int32
const (
2023-06-08 08:43:00 +00:00
CommunityTokenPermission_UNKNOWN_TOKEN_PERMISSION CommunityTokenPermission_Type = 0
CommunityTokenPermission_BECOME_ADMIN CommunityTokenPermission_Type = 1
CommunityTokenPermission_BECOME_MEMBER CommunityTokenPermission_Type = 2
CommunityTokenPermission_CAN_VIEW_CHANNEL CommunityTokenPermission_Type = 3
CommunityTokenPermission_CAN_VIEW_AND_POST_CHANNEL CommunityTokenPermission_Type = 4
2023-08-04 10:28:46 +00:00
CommunityTokenPermission_BECOME_TOKEN_MASTER CommunityTokenPermission_Type = 5
2023-08-18 15:29:44 +00:00
CommunityTokenPermission_BECOME_TOKEN_OWNER CommunityTokenPermission_Type = 6
2023-03-02 16:27:48 +00:00
)
2023-08-18 11:39:59 +00:00
// Enum value maps for CommunityTokenPermission_Type.
var (
CommunityTokenPermission_Type_name = map [ int32 ] string {
0 : "UNKNOWN_TOKEN_PERMISSION" ,
1 : "BECOME_ADMIN" ,
2 : "BECOME_MEMBER" ,
3 : "CAN_VIEW_CHANNEL" ,
4 : "CAN_VIEW_AND_POST_CHANNEL" ,
5 : "BECOME_TOKEN_MASTER" ,
6 : "BECOME_TOKEN_OWNER" ,
}
CommunityTokenPermission_Type_value = map [ string ] int32 {
"UNKNOWN_TOKEN_PERMISSION" : 0 ,
"BECOME_ADMIN" : 1 ,
"BECOME_MEMBER" : 2 ,
"CAN_VIEW_CHANNEL" : 3 ,
"CAN_VIEW_AND_POST_CHANNEL" : 4 ,
"BECOME_TOKEN_MASTER" : 5 ,
"BECOME_TOKEN_OWNER" : 6 ,
}
)
2023-03-02 16:27:48 +00:00
2023-08-18 11:39:59 +00:00
func ( x CommunityTokenPermission_Type ) Enum ( ) * CommunityTokenPermission_Type {
p := new ( CommunityTokenPermission_Type )
* p = x
return p
2023-03-02 16:27:48 +00:00
}
func ( x CommunityTokenPermission_Type ) String ( ) string {
2023-08-18 11:39:59 +00:00
return protoimpl . X . EnumStringOf ( x . Descriptor ( ) , protoreflect . EnumNumber ( x ) )
2023-03-02 16:27:48 +00:00
}
2023-08-18 11:39:59 +00:00
func ( CommunityTokenPermission_Type ) Descriptor ( ) protoreflect . EnumDescriptor {
return file_communities_proto_enumTypes [ 2 ] . Descriptor ( )
2023-03-02 16:27:48 +00:00
}
2023-08-18 11:39:59 +00:00
func ( CommunityTokenPermission_Type ) Type ( ) protoreflect . EnumType {
return & file_communities_proto_enumTypes [ 2 ]
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x CommunityTokenPermission_Type ) Number ( ) protoreflect . EnumNumber {
return protoreflect . EnumNumber ( x )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityTokenPermission_Type.Descriptor instead.
func ( CommunityTokenPermission_Type ) EnumDescriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 5 , 0 }
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
type Grant struct {
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
CommunityId [ ] byte ` protobuf:"bytes,1,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty" `
MemberId [ ] byte ` protobuf:"bytes,2,opt,name=member_id,json=memberId,proto3" json:"member_id,omitempty" `
ChatId string ` protobuf:"bytes,3,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty" `
Clock uint64 ` protobuf:"varint,4,opt,name=clock,proto3" json:"clock,omitempty" `
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * Grant ) Reset ( ) {
* x = Grant { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 0 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * Grant ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * Grant ) ProtoMessage ( ) { }
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
func ( x * Grant ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 Grant.ProtoReflect.Descriptor instead.
func ( * Grant ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 0 }
}
func ( x * Grant ) GetCommunityId ( ) [ ] byte {
if x != nil {
return x . CommunityId
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * Grant ) GetMemberId ( ) [ ] byte {
if x != nil {
return x . MemberId
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * Grant ) GetChatId ( ) string {
if x != nil {
return x . ChatId
2020-11-18 09:16:51 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * Grant ) GetClock ( ) uint64 {
if x != nil {
return x . Clock
2020-11-18 09:16:51 +00:00
}
return 0
}
type CommunityMember struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
Roles [ ] CommunityMember_Roles ` protobuf:"varint,1,rep,packed,name=roles,proto3,enum=protobuf.CommunityMember_Roles" json:"roles,omitempty" `
// Deprecated: Marked as deprecated in communities.proto.
RevealedAccounts [ ] * RevealedAccount ` protobuf:"bytes,2,rep,name=revealed_accounts,json=revealedAccounts,proto3" json:"revealed_accounts,omitempty" `
LastUpdateClock uint64 ` protobuf:"varint,3,opt,name=last_update_clock,json=lastUpdateClock,proto3" json:"last_update_clock,omitempty" `
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityMember ) Reset ( ) {
* x = CommunityMember { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 1 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityMember ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityMember ) ProtoMessage ( ) { }
func ( x * CommunityMember ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityMember.ProtoReflect.Descriptor instead.
func ( * CommunityMember ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 1 }
}
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityMember ) GetRoles ( ) [ ] CommunityMember_Roles {
if x != nil {
return x . Roles
2021-01-11 10:32:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
// Deprecated: Marked as deprecated in communities.proto.
func ( x * CommunityMember ) GetRevealedAccounts ( ) [ ] * RevealedAccount {
if x != nil {
return x . RevealedAccounts
Check token funds when handling community requests to join
This adds checks to `HandleCommunityRequestToJoin` and
`AcceptRequestToJoinCommunity` that ensure a given user's revealed
wallet addresses own the token funds required by a community.
When community has token permissions of type `BECOME_MEMBER`, the
following happens when the owner receives a request:
1. Upon verifying provided wallet addresses by the requester, the owner
node accumulates all token funds related to the given wallets that
match the token criteria in the configured permissions
2. If the requester does not meet the necessary requirements, the
request to join will be declined. If the requester does have the
funds, he'll either be automatically accepted to the community, or
enters the next stage where an owner needs to manually accept the
request.
3. The the community does not automatically accept users, then the funds
check will happen again, when the owner tries to manually accept the
request. If the necessary funds do not exist at this stage, the
request will be declined
4. Upon accepting, whether automatically or manually, the owner adds the
requester's wallet addresses to the `CommunityDescription`, such that
they can be retrieved later when doing periodic checks or when
permissions have changed.
2023-03-16 14:35:33 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityMember ) GetLastUpdateClock ( ) uint64 {
if x != nil {
return x . LastUpdateClock
2023-07-10 14:11:37 +00:00
}
return 0
}
2023-02-20 11:57:33 +00:00
type CommunityTokenMetadata struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2023-02-20 11:57:33 +00:00
2023-08-18 11:39:59 +00:00
ContractAddresses map [ uint64 ] string ` protobuf:"bytes,1,rep,name=contract_addresses,json=contractAddresses,proto3" json:"contract_addresses,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" `
Description string ` protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty" `
Image string ` protobuf:"bytes,3,opt,name=image,proto3" json:"image,omitempty" `
TokenType CommunityTokenType ` protobuf:"varint,4,opt,name=tokenType,proto3,enum=protobuf.CommunityTokenType" json:"tokenType,omitempty" `
Symbol string ` protobuf:"bytes,5,opt,name=symbol,proto3" json:"symbol,omitempty" `
Name string ` protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty" `
Decimals uint32 ` protobuf:"varint,7,opt,name=decimals,proto3" json:"decimals,omitempty" `
2023-02-20 11:57:33 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenMetadata ) Reset ( ) {
* x = CommunityTokenMetadata { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 2 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2023-02-20 11:57:33 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenMetadata ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2023-02-20 11:57:33 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityTokenMetadata ) ProtoMessage ( ) { }
func ( x * CommunityTokenMetadata ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2023-02-20 11:57:33 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityTokenMetadata.ProtoReflect.Descriptor instead.
func ( * CommunityTokenMetadata ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 2 }
}
2023-02-20 11:57:33 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenMetadata ) GetContractAddresses ( ) map [ uint64 ] string {
if x != nil {
return x . ContractAddresses
2023-02-20 11:57:33 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenMetadata ) GetDescription ( ) string {
if x != nil {
return x . Description
2023-02-20 11:57:33 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenMetadata ) GetImage ( ) string {
if x != nil {
return x . Image
2023-02-20 11:57:33 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenMetadata ) GetTokenType ( ) CommunityTokenType {
if x != nil {
return x . TokenType
2023-02-20 11:57:33 +00:00
}
return CommunityTokenType_UNKNOWN_TOKEN_TYPE
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenMetadata ) GetSymbol ( ) string {
if x != nil {
return x . Symbol
2023-02-20 11:57:33 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenMetadata ) GetName ( ) string {
if x != nil {
return x . Name
2023-03-07 14:29:16 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenMetadata ) GetDecimals ( ) uint32 {
if x != nil {
return x . Decimals
2023-06-14 07:47:54 +00:00
}
return 0
}
2020-11-18 09:16:51 +00:00
type CommunityPermissions struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2020-11-18 09:16:51 +00:00
EnsOnly bool ` protobuf:"varint,1,opt,name=ens_only,json=ensOnly,proto3" json:"ens_only,omitempty" `
// https://gitlab.matrix.org/matrix-org/olm/blob/master/docs/megolm.md is a candidate for the algorithm to be used in case we want to have private communityal chats, lighter than pairwise encryption using the DR, less secure, but more efficient for large number of participants
2023-08-18 11:39:59 +00:00
Private bool ` protobuf:"varint,2,opt,name=private,proto3" json:"private,omitempty" `
Access CommunityPermissions_Access ` protobuf:"varint,3,opt,name=access,proto3,enum=protobuf.CommunityPermissions_Access" json:"access,omitempty" `
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityPermissions ) Reset ( ) {
* x = CommunityPermissions { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 3 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityPermissions ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityPermissions ) ProtoMessage ( ) { }
func ( x * CommunityPermissions ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityPermissions.ProtoReflect.Descriptor instead.
func ( * CommunityPermissions ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 3 }
}
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityPermissions ) GetEnsOnly ( ) bool {
if x != nil {
return x . EnsOnly
2020-11-18 09:16:51 +00:00
}
return false
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityPermissions ) GetPrivate ( ) bool {
if x != nil {
return x . Private
2020-11-18 09:16:51 +00:00
}
return false
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityPermissions ) GetAccess ( ) CommunityPermissions_Access {
if x != nil {
return x . Access
2020-11-18 09:16:51 +00:00
}
return CommunityPermissions_UNKNOWN_ACCESS
}
2023-03-02 16:27:48 +00:00
type TokenCriteria struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2023-03-02 16:27:48 +00:00
2023-08-18 11:39:59 +00:00
ContractAddresses map [ uint64 ] string ` protobuf:"bytes,1,rep,name=contract_addresses,json=contractAddresses,proto3" json:"contract_addresses,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" `
Type CommunityTokenType ` protobuf:"varint,2,opt,name=type,proto3,enum=protobuf.CommunityTokenType" json:"type,omitempty" `
Symbol string ` protobuf:"bytes,3,opt,name=symbol,proto3" json:"symbol,omitempty" `
Name string ` protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty" `
Amount string ` protobuf:"bytes,5,opt,name=amount,proto3" json:"amount,omitempty" `
TokenIds [ ] uint64 ` protobuf:"varint,6,rep,packed,name=token_ids,json=tokenIds,proto3" json:"token_ids,omitempty" `
EnsPattern string ` protobuf:"bytes,7,opt,name=ens_pattern,json=ensPattern,proto3" json:"ens_pattern,omitempty" `
Decimals uint64 ` protobuf:"varint,8,opt,name=decimals,proto3" json:"decimals,omitempty" `
2023-03-02 16:27:48 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * TokenCriteria ) Reset ( ) {
* x = TokenCriteria { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 4 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2023-03-02 16:27:48 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * TokenCriteria ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2023-03-02 16:27:48 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * TokenCriteria ) ProtoMessage ( ) { }
func ( x * TokenCriteria ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2023-03-02 16:27:48 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use TokenCriteria.ProtoReflect.Descriptor instead.
func ( * TokenCriteria ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 4 }
}
2023-03-02 16:27:48 +00:00
2023-08-18 11:39:59 +00:00
func ( x * TokenCriteria ) GetContractAddresses ( ) map [ uint64 ] string {
if x != nil {
return x . ContractAddresses
2023-03-02 16:27:48 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * TokenCriteria ) GetType ( ) CommunityTokenType {
if x != nil {
return x . Type
2023-03-02 16:27:48 +00:00
}
return CommunityTokenType_UNKNOWN_TOKEN_TYPE
}
2023-08-18 11:39:59 +00:00
func ( x * TokenCriteria ) GetSymbol ( ) string {
if x != nil {
return x . Symbol
2023-03-02 16:27:48 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * TokenCriteria ) GetName ( ) string {
if x != nil {
return x . Name
2023-03-02 16:27:48 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * TokenCriteria ) GetAmount ( ) string {
if x != nil {
return x . Amount
2023-03-02 16:27:48 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * TokenCriteria ) GetTokenIds ( ) [ ] uint64 {
if x != nil {
return x . TokenIds
2023-03-02 16:27:48 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * TokenCriteria ) GetEnsPattern ( ) string {
if x != nil {
return x . EnsPattern
2023-03-02 16:27:48 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * TokenCriteria ) GetDecimals ( ) uint64 {
if x != nil {
return x . Decimals
2023-03-16 14:17:23 +00:00
}
return 0
}
2023-03-02 16:27:48 +00:00
type CommunityTokenPermission struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2023-03-02 16:27:48 +00:00
2023-08-18 11:39:59 +00:00
Id string ` protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" `
Type CommunityTokenPermission_Type ` protobuf:"varint,2,opt,name=type,proto3,enum=protobuf.CommunityTokenPermission_Type" json:"type,omitempty" `
TokenCriteria [ ] * TokenCriteria ` protobuf:"bytes,3,rep,name=token_criteria,json=tokenCriteria,proto3" json:"token_criteria,omitempty" `
ChatIds [ ] string ` protobuf:"bytes,4,rep,name=chat_ids,json=chatIds,proto3" json:"chat_ids,omitempty" `
IsPrivate bool ` protobuf:"varint,5,opt,name=is_private,json=isPrivate,proto3" json:"is_private,omitempty" `
2023-03-02 16:27:48 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenPermission ) Reset ( ) {
* x = CommunityTokenPermission { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 5 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2023-03-02 16:27:48 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenPermission ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2023-03-02 16:27:48 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityTokenPermission ) ProtoMessage ( ) { }
func ( x * CommunityTokenPermission ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2023-03-02 16:27:48 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityTokenPermission.ProtoReflect.Descriptor instead.
func ( * CommunityTokenPermission ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 5 }
}
2023-03-02 16:27:48 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenPermission ) GetId ( ) string {
if x != nil {
return x . Id
2023-03-02 16:27:48 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenPermission ) GetType ( ) CommunityTokenPermission_Type {
if x != nil {
return x . Type
2023-03-02 16:27:48 +00:00
}
return CommunityTokenPermission_UNKNOWN_TOKEN_PERMISSION
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenPermission ) GetTokenCriteria ( ) [ ] * TokenCriteria {
if x != nil {
return x . TokenCriteria
2023-03-02 16:27:48 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenPermission ) GetChatIds ( ) [ ] string {
if x != nil {
return x . ChatIds
2023-03-02 16:27:48 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityTokenPermission ) GetIsPrivate ( ) bool {
if x != nil {
return x . IsPrivate
2023-03-02 16:27:48 +00:00
}
return false
}
2020-11-18 09:16:51 +00:00
type CommunityDescription struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2023-02-20 11:57:33 +00:00
Clock uint64 ` protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty" `
Members map [ string ] * CommunityMember ` protobuf:"bytes,2,rep,name=members,proto3" json:"members,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" `
Permissions * CommunityPermissions ` protobuf:"bytes,3,opt,name=permissions,proto3" json:"permissions,omitempty" `
Identity * ChatIdentity ` protobuf:"bytes,5,opt,name=identity,proto3" json:"identity,omitempty" `
Chats map [ string ] * CommunityChat ` protobuf:"bytes,6,rep,name=chats,proto3" json:"chats,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" `
BanList [ ] string ` protobuf:"bytes,7,rep,name=ban_list,json=banList,proto3" json:"ban_list,omitempty" `
Categories map [ string ] * CommunityCategory ` protobuf:"bytes,8,rep,name=categories,proto3" json:"categories,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" `
ArchiveMagnetlinkClock uint64 ` protobuf:"varint,9,opt,name=archive_magnetlink_clock,json=archiveMagnetlinkClock,proto3" json:"archive_magnetlink_clock,omitempty" `
AdminSettings * CommunityAdminSettings ` protobuf:"bytes,10,opt,name=admin_settings,json=adminSettings,proto3" json:"admin_settings,omitempty" `
IntroMessage string ` protobuf:"bytes,11,opt,name=intro_message,json=introMessage,proto3" json:"intro_message,omitempty" `
OutroMessage string ` protobuf:"bytes,12,opt,name=outro_message,json=outroMessage,proto3" json:"outro_message,omitempty" `
Encrypted bool ` protobuf:"varint,13,opt,name=encrypted,proto3" json:"encrypted,omitempty" `
Tags [ ] string ` protobuf:"bytes,14,rep,name=tags,proto3" json:"tags,omitempty" `
TokenPermissions map [ string ] * CommunityTokenPermission ` protobuf:"bytes,15,rep,name=token_permissions,json=tokenPermissions,proto3" json:"token_permissions,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" `
CommunityTokensMetadata [ ] * CommunityTokenMetadata ` protobuf:"bytes,16,rep,name=community_tokens_metadata,json=communityTokensMetadata,proto3" json:"community_tokens_metadata,omitempty" `
2023-03-28 14:40:00 +00:00
ActiveMembersCount uint64 ` protobuf:"varint,17,opt,name=active_members_count,json=activeMembersCount,proto3" json:"active_members_count,omitempty" `
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) Reset ( ) {
* x = CommunityDescription { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 6 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityDescription ) ProtoMessage ( ) { }
func ( x * CommunityDescription ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityDescription.ProtoReflect.Descriptor instead.
func ( * CommunityDescription ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 6 }
}
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetClock ( ) uint64 {
if x != nil {
return x . Clock
2020-11-18 09:16:51 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetMembers ( ) map [ string ] * CommunityMember {
if x != nil {
return x . Members
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetPermissions ( ) * CommunityPermissions {
if x != nil {
return x . Permissions
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetIdentity ( ) * ChatIdentity {
if x != nil {
return x . Identity
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetChats ( ) map [ string ] * CommunityChat {
if x != nil {
return x . Chats
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetBanList ( ) [ ] string {
if x != nil {
return x . BanList
2021-03-19 09:15:45 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetCategories ( ) map [ string ] * CommunityCategory {
if x != nil {
return x . Categories
2021-05-23 13:34:17 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetArchiveMagnetlinkClock ( ) uint64 {
if x != nil {
return x . ArchiveMagnetlinkClock
2022-03-21 14:18:36 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetAdminSettings ( ) * CommunityAdminSettings {
if x != nil {
return x . AdminSettings
2022-05-10 14:21:38 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetIntroMessage ( ) string {
if x != nil {
return x . IntroMessage
2022-05-24 19:20:13 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetOutroMessage ( ) string {
if x != nil {
return x . OutroMessage
2022-05-24 19:20:13 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetEncrypted ( ) bool {
if x != nil {
return x . Encrypted
2022-05-27 09:14:40 +00:00
}
return false
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetTags ( ) [ ] string {
if x != nil {
return x . Tags
2022-06-24 13:40:12 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetTokenPermissions ( ) map [ string ] * CommunityTokenPermission {
if x != nil {
return x . TokenPermissions
2023-03-02 16:27:48 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetCommunityTokensMetadata ( ) [ ] * CommunityTokenMetadata {
if x != nil {
return x . CommunityTokensMetadata
2023-02-20 11:57:33 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityDescription ) GetActiveMembersCount ( ) uint64 {
if x != nil {
return x . ActiveMembersCount
2023-03-28 14:40:00 +00:00
}
return 0
}
2022-05-10 14:21:38 +00:00
type CommunityAdminSettings struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2022-05-10 14:21:38 +00:00
2023-08-18 11:39:59 +00:00
PinMessageAllMembersEnabled bool ` protobuf:"varint,1,opt,name=pin_message_all_members_enabled,json=pinMessageAllMembersEnabled,proto3" json:"pin_message_all_members_enabled,omitempty" `
2022-05-10 14:21:38 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityAdminSettings ) Reset ( ) {
* x = CommunityAdminSettings { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 7 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2022-05-10 14:21:38 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityAdminSettings ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2022-05-10 14:21:38 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityAdminSettings ) ProtoMessage ( ) { }
func ( x * CommunityAdminSettings ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2022-05-10 14:21:38 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityAdminSettings.ProtoReflect.Descriptor instead.
func ( * CommunityAdminSettings ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 7 }
}
2022-05-10 14:21:38 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityAdminSettings ) GetPinMessageAllMembersEnabled ( ) bool {
if x != nil {
return x . PinMessageAllMembersEnabled
2022-05-10 14:21:38 +00:00
}
return false
}
2020-11-18 09:16:51 +00:00
type CommunityChat struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
Members map [ string ] * CommunityMember ` protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" `
Permissions * CommunityPermissions ` protobuf:"bytes,2,opt,name=permissions,proto3" json:"permissions,omitempty" `
Identity * ChatIdentity ` protobuf:"bytes,3,opt,name=identity,proto3" json:"identity,omitempty" `
CategoryId string ` protobuf:"bytes,4,opt,name=category_id,json=categoryId,proto3" json:"category_id,omitempty" `
Position int32 ` protobuf:"varint,5,opt,name=position,proto3" json:"position,omitempty" `
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityChat ) Reset ( ) {
* x = CommunityChat { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 8 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityChat ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityChat ) ProtoMessage ( ) { }
func ( x * CommunityChat ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityChat.ProtoReflect.Descriptor instead.
func ( * CommunityChat ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 8 }
}
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityChat ) GetMembers ( ) map [ string ] * CommunityMember {
if x != nil {
return x . Members
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityChat ) GetPermissions ( ) * CommunityPermissions {
if x != nil {
return x . Permissions
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityChat ) GetIdentity ( ) * ChatIdentity {
if x != nil {
return x . Identity
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityChat ) GetCategoryId ( ) string {
if x != nil {
return x . CategoryId
2021-05-23 13:34:17 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityChat ) GetPosition ( ) int32 {
if x != nil {
return x . Position
2021-05-23 13:34:17 +00:00
}
return 0
}
type CommunityCategory struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2021-05-23 13:34:17 +00:00
2023-08-18 11:39:59 +00:00
CategoryId string ` protobuf:"bytes,1,opt,name=category_id,json=categoryId,proto3" json:"category_id,omitempty" `
Name string ` protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty" `
Position int32 ` protobuf:"varint,3,opt,name=position,proto3" json:"position,omitempty" `
2021-05-23 13:34:17 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityCategory ) Reset ( ) {
* x = CommunityCategory { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 9 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2021-05-23 13:34:17 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityCategory ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2021-05-23 13:34:17 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityCategory ) ProtoMessage ( ) { }
func ( x * CommunityCategory ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2021-05-23 13:34:17 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityCategory.ProtoReflect.Descriptor instead.
func ( * CommunityCategory ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 9 }
}
2021-05-23 13:34:17 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityCategory ) GetCategoryId ( ) string {
if x != nil {
return x . CategoryId
2021-05-23 13:34:17 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityCategory ) GetName ( ) string {
if x != nil {
return x . Name
2021-05-23 13:34:17 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityCategory ) GetPosition ( ) int32 {
if x != nil {
return x . Position
2021-05-23 13:34:17 +00:00
}
return 0
}
2023-06-06 18:33:09 +00:00
type RevealedAccount struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2023-06-06 18:33:09 +00:00
2023-08-18 11:39:59 +00:00
Address string ` protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty" `
Signature [ ] byte ` protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty" `
ChainIds [ ] uint64 ` protobuf:"varint,3,rep,packed,name=chain_ids,json=chainIds,proto3" json:"chain_ids,omitempty" `
IsAirdropAddress bool ` protobuf:"varint,4,opt,name=isAirdropAddress,proto3" json:"isAirdropAddress,omitempty" `
2023-06-06 18:33:09 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * RevealedAccount ) Reset ( ) {
* x = RevealedAccount { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 10 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2023-06-06 18:33:09 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * RevealedAccount ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2023-06-06 18:33:09 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * RevealedAccount ) ProtoMessage ( ) { }
func ( x * RevealedAccount ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2023-06-06 18:33:09 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use RevealedAccount.ProtoReflect.Descriptor instead.
func ( * RevealedAccount ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 10 }
}
2023-06-06 18:33:09 +00:00
2023-08-18 11:39:59 +00:00
func ( x * RevealedAccount ) GetAddress ( ) string {
if x != nil {
return x . Address
2023-06-06 18:33:09 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * RevealedAccount ) GetSignature ( ) [ ] byte {
if x != nil {
return x . Signature
2023-06-06 18:33:09 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * RevealedAccount ) GetChainIds ( ) [ ] uint64 {
if x != nil {
return x . ChainIds
2023-06-06 18:33:09 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * RevealedAccount ) GetIsAirdropAddress ( ) bool {
if x != nil {
return x . IsAirdropAddress
2023-07-14 17:33:47 +00:00
}
return false
}
2021-01-11 10:32:51 +00:00
type CommunityRequestToJoin struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
Clock uint64 ` protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty" `
EnsName string ` protobuf:"bytes,2,opt,name=ens_name,json=ensName,proto3" json:"ens_name,omitempty" `
ChatId string ` protobuf:"bytes,3,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty" `
CommunityId [ ] byte ` protobuf:"bytes,4,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty" `
DisplayName string ` protobuf:"bytes,5,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty" `
RevealedAccounts [ ] * RevealedAccount ` protobuf:"bytes,6,rep,name=revealed_accounts,json=revealedAccounts,proto3" json:"revealed_accounts,omitempty" `
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoin ) Reset ( ) {
* x = CommunityRequestToJoin { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 11 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoin ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityRequestToJoin ) ProtoMessage ( ) { }
func ( x * CommunityRequestToJoin ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityRequestToJoin.ProtoReflect.Descriptor instead.
func ( * CommunityRequestToJoin ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 11 }
}
2021-01-11 10:32:51 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoin ) GetClock ( ) uint64 {
if x != nil {
return x . Clock
2021-01-11 10:32:51 +00:00
}
return 0
}
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoin ) GetEnsName ( ) string {
if x != nil {
return x . EnsName
2020-11-18 09:16:51 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoin ) GetChatId ( ) string {
if x != nil {
return x . ChatId
2020-11-18 09:16:51 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoin ) GetCommunityId ( ) [ ] byte {
if x != nil {
return x . CommunityId
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoin ) GetDisplayName ( ) string {
if x != nil {
return x . DisplayName
2022-06-22 18:02:44 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoin ) GetRevealedAccounts ( ) [ ] * RevealedAccount {
if x != nil {
return x . RevealedAccounts
feat: add verified wallet accounts to community requests
This commit extends the `CommunityRequestToJoin` with `RevealedAddresses` which represent wallet addresses and signatures provided by the sender, to proof a community owner ownership of those wallet addresses.
**Note: This only works with keystore files maanged by status-go**
At high level, the follwing happens:
1. User instructs Status to send a request to join to a community. By adding a password hash to the instruction, Status will try to unlock the users keystore and verify each wallet account.
2. For every verified wallet account, a signature is created for the following payload, using each wallet's private key
``` keccak256(chatkey + communityID + requestToJoinID) ``` A map of walletAddress->signature is then attached to the community request to join, which will be sent to the community owner
3. The owner node receives the request, and if the community requires users to hold tokens to become a member, it will check and verify whether the given wallet addresses are indeed owned by the sender. If any signature provided by the request cannot be recovered, the request is immediately declined by the owner.
4. The verified addresses are then added to the owner node's database such that, once the request should be accepted, the addresses can be used to check on chain whether they own the necessary funds to fulfill the community's permissions
The checking of required funds is **not** part of this commit. It will be added in a follow-up commit.
2023-03-17 09:19:40 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
type CommunityEditSharedAddresses struct {
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2023-07-10 14:11:37 +00:00
2023-08-18 11:39:59 +00:00
Clock uint64 ` protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty" `
CommunityId [ ] byte ` protobuf:"bytes,2,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty" `
RevealedAccounts [ ] * RevealedAccount ` protobuf:"bytes,3,rep,name=revealed_accounts,json=revealedAccounts,proto3" json:"revealed_accounts,omitempty" `
2023-07-10 14:11:37 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityEditSharedAddresses ) Reset ( ) {
* x = CommunityEditSharedAddresses { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 12 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2023-07-10 14:11:37 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityEditSharedAddresses ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2023-07-10 14:11:37 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityEditSharedAddresses ) ProtoMessage ( ) { }
func ( x * CommunityEditSharedAddresses ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2023-07-10 14:11:37 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityEditSharedAddresses.ProtoReflect.Descriptor instead.
func ( * CommunityEditSharedAddresses ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 12 }
}
2023-07-10 14:11:37 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityEditSharedAddresses ) GetClock ( ) uint64 {
if x != nil {
return x . Clock
2023-07-10 14:11:37 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityEditSharedAddresses ) GetCommunityId ( ) [ ] byte {
if x != nil {
return x . CommunityId
2023-07-10 14:11:37 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityEditSharedAddresses ) GetRevealedAccounts ( ) [ ] * RevealedAccount {
if x != nil {
return x . RevealedAccounts
2023-07-10 14:11:37 +00:00
}
return nil
}
2022-10-28 08:41:20 +00:00
type CommunityCancelRequestToJoin struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2022-10-28 08:41:20 +00:00
2023-08-18 11:39:59 +00:00
Clock uint64 ` protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty" `
EnsName string ` protobuf:"bytes,2,opt,name=ens_name,json=ensName,proto3" json:"ens_name,omitempty" `
ChatId string ` protobuf:"bytes,3,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty" `
CommunityId [ ] byte ` protobuf:"bytes,4,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty" `
DisplayName string ` protobuf:"bytes,5,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty" `
2022-10-28 08:41:20 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityCancelRequestToJoin ) Reset ( ) {
* x = CommunityCancelRequestToJoin { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 13 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2022-10-28 08:41:20 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityCancelRequestToJoin ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2022-10-28 08:41:20 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityCancelRequestToJoin ) ProtoMessage ( ) { }
func ( x * CommunityCancelRequestToJoin ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2022-10-28 08:41:20 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityCancelRequestToJoin.ProtoReflect.Descriptor instead.
func ( * CommunityCancelRequestToJoin ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 13 }
}
2022-10-28 08:41:20 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityCancelRequestToJoin ) GetClock ( ) uint64 {
if x != nil {
return x . Clock
2022-10-28 08:41:20 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityCancelRequestToJoin ) GetEnsName ( ) string {
if x != nil {
return x . EnsName
2022-10-28 08:41:20 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityCancelRequestToJoin ) GetChatId ( ) string {
if x != nil {
return x . ChatId
2022-10-28 08:41:20 +00:00
}
return ""
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityCancelRequestToJoin ) GetCommunityId ( ) [ ] byte {
if x != nil {
return x . CommunityId
2022-10-28 08:41:20 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityCancelRequestToJoin ) GetDisplayName ( ) string {
if x != nil {
return x . DisplayName
2022-10-28 08:41:20 +00:00
}
return ""
}
2021-01-11 10:32:51 +00:00
type CommunityRequestToJoinResponse struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
Clock uint64 ` protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty" `
Community * CommunityDescription ` protobuf:"bytes,2,opt,name=community,proto3" json:"community,omitempty" `
Accepted bool ` protobuf:"varint,3,opt,name=accepted,proto3" json:"accepted,omitempty" `
Grant [ ] byte ` protobuf:"bytes,4,opt,name=grant,proto3" json:"grant,omitempty" `
CommunityId [ ] byte ` protobuf:"bytes,5,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty" `
MagnetUri string ` protobuf:"bytes,6,opt,name=magnet_uri,json=magnetUri,proto3" json:"magnet_uri,omitempty" `
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoinResponse ) Reset ( ) {
* x = CommunityRequestToJoinResponse { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 14 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoinResponse ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityRequestToJoinResponse ) ProtoMessage ( ) { }
func ( x * CommunityRequestToJoinResponse ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2020-11-18 09:16:51 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityRequestToJoinResponse.ProtoReflect.Descriptor instead.
func ( * CommunityRequestToJoinResponse ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 14 }
}
2021-01-11 10:32:51 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoinResponse ) GetClock ( ) uint64 {
if x != nil {
return x . Clock
2021-01-11 10:32:51 +00:00
}
return 0
}
2020-11-18 09:16:51 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoinResponse ) GetCommunity ( ) * CommunityDescription {
if x != nil {
return x . Community
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoinResponse ) GetAccepted ( ) bool {
if x != nil {
return x . Accepted
2020-11-18 09:16:51 +00:00
}
return false
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoinResponse ) GetGrant ( ) [ ] byte {
if x != nil {
return x . Grant
2020-11-18 09:16:51 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoinResponse ) GetCommunityId ( ) [ ] byte {
if x != nil {
return x . CommunityId
2022-07-01 13:54:02 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToJoinResponse ) GetMagnetUri ( ) string {
if x != nil {
return x . MagnetUri
2022-12-09 14:26:12 +00:00
}
return ""
}
2022-08-22 10:10:31 +00:00
type CommunityRequestToLeave struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2022-08-22 10:10:31 +00:00
2023-08-18 11:39:59 +00:00
Clock uint64 ` protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty" `
CommunityId [ ] byte ` protobuf:"bytes,2,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty" `
2022-08-22 10:10:31 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToLeave ) Reset ( ) {
* x = CommunityRequestToLeave { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 15 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2022-08-22 10:10:31 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToLeave ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2022-08-22 10:10:31 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityRequestToLeave ) ProtoMessage ( ) { }
func ( x * CommunityRequestToLeave ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2022-08-22 10:10:31 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityRequestToLeave.ProtoReflect.Descriptor instead.
func ( * CommunityRequestToLeave ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 15 }
}
2022-08-22 10:10:31 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToLeave ) GetClock ( ) uint64 {
if x != nil {
return x . Clock
2022-08-22 10:10:31 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityRequestToLeave ) GetCommunityId ( ) [ ] byte {
if x != nil {
return x . CommunityId
2022-08-22 10:10:31 +00:00
}
return nil
}
2022-03-21 14:18:36 +00:00
type CommunityMessageArchiveMagnetlink struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
Clock uint64 ` protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty" `
MagnetUri string ` protobuf:"bytes,2,opt,name=magnet_uri,json=magnetUri,proto3" json:"magnet_uri,omitempty" `
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityMessageArchiveMagnetlink ) Reset ( ) {
* x = CommunityMessageArchiveMagnetlink { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 16 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityMessageArchiveMagnetlink ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * CommunityMessageArchiveMagnetlink ) ProtoMessage ( ) { }
func ( x * CommunityMessageArchiveMagnetlink ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use CommunityMessageArchiveMagnetlink.ProtoReflect.Descriptor instead.
func ( * CommunityMessageArchiveMagnetlink ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 16 }
}
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
func ( x * CommunityMessageArchiveMagnetlink ) GetClock ( ) uint64 {
if x != nil {
return x . Clock
2022-03-21 14:18:36 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * CommunityMessageArchiveMagnetlink ) GetMagnetUri ( ) string {
if x != nil {
return x . MagnetUri
2022-03-21 14:18:36 +00:00
}
return ""
}
type WakuMessage struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
Sig [ ] byte ` protobuf:"bytes,1,opt,name=sig,proto3" json:"sig,omitempty" `
Timestamp uint64 ` protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp,omitempty" `
Topic [ ] byte ` protobuf:"bytes,3,opt,name=topic,proto3" json:"topic,omitempty" `
Payload [ ] byte ` protobuf:"bytes,4,opt,name=payload,proto3" json:"payload,omitempty" `
Padding [ ] byte ` protobuf:"bytes,5,opt,name=padding,proto3" json:"padding,omitempty" `
Hash [ ] byte ` protobuf:"bytes,6,opt,name=hash,proto3" json:"hash,omitempty" `
ThirdPartyId string ` protobuf:"bytes,7,opt,name=thirdPartyId,proto3" json:"thirdPartyId,omitempty" `
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessage ) Reset ( ) {
* x = WakuMessage { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 17 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessage ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * WakuMessage ) ProtoMessage ( ) { }
func ( x * WakuMessage ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use WakuMessage.ProtoReflect.Descriptor instead.
func ( * WakuMessage ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 17 }
}
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
func ( x * WakuMessage ) GetSig ( ) [ ] byte {
if x != nil {
return x . Sig
2022-03-21 14:18:36 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessage ) GetTimestamp ( ) uint64 {
if x != nil {
return x . Timestamp
2022-03-21 14:18:36 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessage ) GetTopic ( ) [ ] byte {
if x != nil {
return x . Topic
2022-03-21 14:18:36 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessage ) GetPayload ( ) [ ] byte {
if x != nil {
return x . Payload
2022-03-21 14:18:36 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessage ) GetPadding ( ) [ ] byte {
if x != nil {
return x . Padding
2022-03-21 14:18:36 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessage ) GetHash ( ) [ ] byte {
if x != nil {
return x . Hash
2022-03-21 14:18:36 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessage ) GetThirdPartyId ( ) string {
if x != nil {
return x . ThirdPartyId
2022-09-28 12:45:34 +00:00
}
return ""
}
2022-03-21 14:18:36 +00:00
type WakuMessageArchiveMetadata struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
Version uint32 ` protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty" `
From uint64 ` protobuf:"varint,2,opt,name=from,proto3" json:"from,omitempty" `
To uint64 ` protobuf:"varint,3,opt,name=to,proto3" json:"to,omitempty" `
ContentTopic [ ] [ ] byte ` protobuf:"bytes,4,rep,name=contentTopic,proto3" json:"contentTopic,omitempty" `
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveMetadata ) Reset ( ) {
* x = WakuMessageArchiveMetadata { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 18 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveMetadata ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * WakuMessageArchiveMetadata ) ProtoMessage ( ) { }
func ( x * WakuMessageArchiveMetadata ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use WakuMessageArchiveMetadata.ProtoReflect.Descriptor instead.
func ( * WakuMessageArchiveMetadata ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 18 }
}
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveMetadata ) GetVersion ( ) uint32 {
if x != nil {
return x . Version
2022-03-21 14:18:36 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveMetadata ) GetFrom ( ) uint64 {
if x != nil {
return x . From
2022-03-21 14:18:36 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveMetadata ) GetTo ( ) uint64 {
if x != nil {
return x . To
2022-03-21 14:18:36 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveMetadata ) GetContentTopic ( ) [ ] [ ] byte {
if x != nil {
return x . ContentTopic
2022-03-21 14:18:36 +00:00
}
return nil
}
type WakuMessageArchive struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
Version uint32 ` protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty" `
Metadata * WakuMessageArchiveMetadata ` protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty" `
Messages [ ] * WakuMessage ` protobuf:"bytes,3,rep,name=messages,proto3" json:"messages,omitempty" `
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchive ) Reset ( ) {
* x = WakuMessageArchive { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 19 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchive ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * WakuMessageArchive ) ProtoMessage ( ) { }
func ( x * WakuMessageArchive ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use WakuMessageArchive.ProtoReflect.Descriptor instead.
func ( * WakuMessageArchive ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 19 }
}
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchive ) GetVersion ( ) uint32 {
if x != nil {
return x . Version
2022-03-21 14:18:36 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchive ) GetMetadata ( ) * WakuMessageArchiveMetadata {
if x != nil {
return x . Metadata
2022-03-21 14:18:36 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchive ) GetMessages ( ) [ ] * WakuMessage {
if x != nil {
return x . Messages
2022-03-21 14:18:36 +00:00
}
return nil
}
type WakuMessageArchiveIndexMetadata struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
Version uint32 ` protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty" `
Metadata * WakuMessageArchiveMetadata ` protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty" `
Offset uint64 ` protobuf:"varint,3,opt,name=offset,proto3" json:"offset,omitempty" `
Size uint64 ` protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty" `
Padding uint64 ` protobuf:"varint,5,opt,name=padding,proto3" json:"padding,omitempty" `
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveIndexMetadata ) Reset ( ) {
* x = WakuMessageArchiveIndexMetadata { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 20 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveIndexMetadata ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * WakuMessageArchiveIndexMetadata ) ProtoMessage ( ) { }
func ( x * WakuMessageArchiveIndexMetadata ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use WakuMessageArchiveIndexMetadata.ProtoReflect.Descriptor instead.
func ( * WakuMessageArchiveIndexMetadata ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 20 }
}
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveIndexMetadata ) GetVersion ( ) uint32 {
if x != nil {
return x . Version
2022-03-21 14:18:36 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveIndexMetadata ) GetMetadata ( ) * WakuMessageArchiveMetadata {
if x != nil {
return x . Metadata
2022-03-21 14:18:36 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveIndexMetadata ) GetOffset ( ) uint64 {
if x != nil {
return x . Offset
2022-03-21 14:18:36 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveIndexMetadata ) GetSize ( ) uint64 {
if x != nil {
return x . Size
2022-03-21 14:18:36 +00:00
}
return 0
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveIndexMetadata ) GetPadding ( ) uint64 {
if x != nil {
return x . Padding
2022-03-21 14:18:36 +00:00
}
return 0
}
type WakuMessageArchiveIndex struct {
2023-08-18 11:39:59 +00:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
Archives map [ string ] * WakuMessageArchiveIndexMetadata ` protobuf:"bytes,1,rep,name=archives,proto3" json:"archives,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" `
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveIndex ) Reset ( ) {
* x = WakuMessageArchiveIndex { }
if protoimpl . UnsafeEnabled {
mi := & file_communities_proto_msgTypes [ 21 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveIndex ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
func ( * WakuMessageArchiveIndex ) ProtoMessage ( ) { }
func ( x * WakuMessageArchiveIndex ) ProtoReflect ( ) protoreflect . Message {
mi := & file_communities_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 )
2022-03-21 14:18:36 +00:00
}
2023-08-18 11:39:59 +00:00
// Deprecated: Use WakuMessageArchiveIndex.ProtoReflect.Descriptor instead.
func ( * WakuMessageArchiveIndex ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_communities_proto_rawDescGZIP ( ) , [ ] int { 21 }
}
2022-03-21 14:18:36 +00:00
2023-08-18 11:39:59 +00:00
func ( x * WakuMessageArchiveIndex ) GetArchives ( ) map [ string ] * WakuMessageArchiveIndexMetadata {
if x != nil {
return x . Archives
2022-03-21 14:18:36 +00:00
}
return nil
}
2023-08-18 11:39:59 +00:00
var File_communities_proto protoreflect . FileDescriptor
var file_communities_proto_rawDesc = [ ] byte {
0x0a , 0x11 , 0x63 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x69 , 0x65 , 0x73 , 0x2e , 0x70 , 0x72 ,
0x6f , 0x74 , 0x6f , 0x12 , 0x08 , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x1a , 0x13 , 0x63 ,
0x68 , 0x61 , 0x74 , 0x5f , 0x69 , 0x64 , 0x65 , 0x6e , 0x74 , 0x69 , 0x74 , 0x79 , 0x2e , 0x70 , 0x72 , 0x6f ,
0x74 , 0x6f , 0x1a , 0x0b , 0x65 , 0x6e , 0x75 , 0x6d , 0x73 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x22 ,
0x76 , 0x0a , 0x05 , 0x47 , 0x72 , 0x61 , 0x6e , 0x74 , 0x12 , 0x21 , 0x0a , 0x0c , 0x63 , 0x6f , 0x6d , 0x6d ,
0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x5f , 0x69 , 0x64 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x0b ,
0x63 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x49 , 0x64 , 0x12 , 0x1b , 0x0a , 0x09 , 0x6d ,
0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x5f , 0x69 , 0x64 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x08 ,
0x6d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x49 , 0x64 , 0x12 , 0x17 , 0x0a , 0x07 , 0x63 , 0x68 , 0x61 , 0x74 ,
0x5f , 0x69 , 0x64 , 0x18 , 0x03 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x06 , 0x63 , 0x68 , 0x61 , 0x74 , 0x49 ,
0x64 , 0x12 , 0x14 , 0x0a , 0x05 , 0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 , 0x04 ,
0x52 , 0x05 , 0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x22 , 0xc6 , 0x02 , 0x0a , 0x0f , 0x43 , 0x6f , 0x6d , 0x6d ,
0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x4d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x12 , 0x35 , 0x0a , 0x05 , 0x72 ,
0x6f , 0x6c , 0x65 , 0x73 , 0x18 , 0x01 , 0x20 , 0x03 , 0x28 , 0x0e , 0x32 , 0x1f , 0x2e , 0x70 , 0x72 , 0x6f ,
0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x4d ,
0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x2e , 0x52 , 0x6f , 0x6c , 0x65 , 0x73 , 0x52 , 0x05 , 0x72 , 0x6f , 0x6c ,
0x65 , 0x73 , 0x12 , 0x4a , 0x0a , 0x11 , 0x72 , 0x65 , 0x76 , 0x65 , 0x61 , 0x6c , 0x65 , 0x64 , 0x5f , 0x61 ,
0x63 , 0x63 , 0x6f , 0x75 , 0x6e , 0x74 , 0x73 , 0x18 , 0x02 , 0x20 , 0x03 , 0x28 , 0x0b , 0x32 , 0x19 , 0x2e ,
0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x52 , 0x65 , 0x76 , 0x65 , 0x61 , 0x6c , 0x65 ,
0x64 , 0x41 , 0x63 , 0x63 , 0x6f , 0x75 , 0x6e , 0x74 , 0x42 , 0x02 , 0x18 , 0x01 , 0x52 , 0x10 , 0x72 , 0x65 ,
0x76 , 0x65 , 0x61 , 0x6c , 0x65 , 0x64 , 0x41 , 0x63 , 0x63 , 0x6f , 0x75 , 0x6e , 0x74 , 0x73 , 0x12 , 0x2a ,
0x0a , 0x11 , 0x6c , 0x61 , 0x73 , 0x74 , 0x5f , 0x75 , 0x70 , 0x64 , 0x61 , 0x74 , 0x65 , 0x5f , 0x63 , 0x6c ,
0x6f , 0x63 , 0x6b , 0x18 , 0x03 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x0f , 0x6c , 0x61 , 0x73 , 0x74 , 0x55 ,
0x70 , 0x64 , 0x61 , 0x74 , 0x65 , 0x43 , 0x6c , 0x6f , 0x63 , 0x6b , 0x22 , 0x83 , 0x01 , 0x0a , 0x05 , 0x52 ,
0x6f , 0x6c , 0x65 , 0x73 , 0x12 , 0x0d , 0x0a , 0x09 , 0x52 , 0x4f , 0x4c , 0x45 , 0x5f , 0x4e , 0x4f , 0x4e ,
0x45 , 0x10 , 0x00 , 0x12 , 0x0e , 0x0a , 0x0a , 0x52 , 0x4f , 0x4c , 0x45 , 0x5f , 0x4f , 0x57 , 0x4e , 0x45 ,
0x52 , 0x10 , 0x01 , 0x12 , 0x0e , 0x0a , 0x0a , 0x52 , 0x4f , 0x4c , 0x45 , 0x5f , 0x41 , 0x44 , 0x4d , 0x49 ,
0x4e , 0x10 , 0x04 , 0x12 , 0x15 , 0x0a , 0x11 , 0x52 , 0x4f , 0x4c , 0x45 , 0x5f , 0x54 , 0x4f , 0x4b , 0x45 ,
0x4e , 0x5f , 0x4d , 0x41 , 0x53 , 0x54 , 0x45 , 0x52 , 0x10 , 0x05 , 0x22 , 0x04 , 0x08 , 0x02 , 0x10 , 0x02 ,
0x22 , 0x04 , 0x08 , 0x03 , 0x10 , 0x03 , 0x2a , 0x11 , 0x52 , 0x4f , 0x4c , 0x45 , 0x5f , 0x4d , 0x41 , 0x4e ,
0x41 , 0x47 , 0x45 , 0x5f , 0x55 , 0x53 , 0x45 , 0x52 , 0x53 , 0x2a , 0x15 , 0x52 , 0x4f , 0x4c , 0x45 , 0x5f ,
0x4d , 0x4f , 0x44 , 0x45 , 0x52 , 0x41 , 0x54 , 0x45 , 0x5f , 0x43 , 0x4f , 0x4e , 0x54 , 0x45 , 0x4e , 0x54 ,
0x22 , 0x82 , 0x03 , 0x0a , 0x16 , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x54 , 0x6f ,
0x6b , 0x65 , 0x6e , 0x4d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x12 , 0x66 , 0x0a , 0x12 , 0x63 ,
0x6f , 0x6e , 0x74 , 0x72 , 0x61 , 0x63 , 0x74 , 0x5f , 0x61 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x65 ,
0x73 , 0x18 , 0x01 , 0x20 , 0x03 , 0x28 , 0x0b , 0x32 , 0x37 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 ,
0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x54 , 0x6f , 0x6b , 0x65 ,
0x6e , 0x4d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x2e , 0x43 , 0x6f , 0x6e , 0x74 , 0x72 , 0x61 ,
0x63 , 0x74 , 0x41 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x65 , 0x73 , 0x45 , 0x6e , 0x74 , 0x72 , 0x79 ,
0x52 , 0x11 , 0x63 , 0x6f , 0x6e , 0x74 , 0x72 , 0x61 , 0x63 , 0x74 , 0x41 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 ,
0x73 , 0x65 , 0x73 , 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 , 0x14 , 0x0a , 0x05 , 0x69 , 0x6d , 0x61 , 0x67 , 0x65 , 0x18 , 0x03 ,
0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x05 , 0x69 , 0x6d , 0x61 , 0x67 , 0x65 , 0x12 , 0x3a , 0x0a , 0x09 , 0x74 ,
0x6f , 0x6b , 0x65 , 0x6e , 0x54 , 0x79 , 0x70 , 0x65 , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 , 0x0e , 0x32 , 0x1c ,
0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e ,
0x69 , 0x74 , 0x79 , 0x54 , 0x6f , 0x6b , 0x65 , 0x6e , 0x54 , 0x79 , 0x70 , 0x65 , 0x52 , 0x09 , 0x74 , 0x6f ,
0x6b , 0x65 , 0x6e , 0x54 , 0x79 , 0x70 , 0x65 , 0x12 , 0x16 , 0x0a , 0x06 , 0x73 , 0x79 , 0x6d , 0x62 , 0x6f ,
0x6c , 0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x06 , 0x73 , 0x79 , 0x6d , 0x62 , 0x6f , 0x6c , 0x12 ,
0x12 , 0x0a , 0x04 , 0x6e , 0x61 , 0x6d , 0x65 , 0x18 , 0x06 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x04 , 0x6e ,
0x61 , 0x6d , 0x65 , 0x12 , 0x1a , 0x0a , 0x08 , 0x64 , 0x65 , 0x63 , 0x69 , 0x6d , 0x61 , 0x6c , 0x73 , 0x18 ,
0x07 , 0x20 , 0x01 , 0x28 , 0x0d , 0x52 , 0x08 , 0x64 , 0x65 , 0x63 , 0x69 , 0x6d , 0x61 , 0x6c , 0x73 , 0x1a ,
0x44 , 0x0a , 0x16 , 0x43 , 0x6f , 0x6e , 0x74 , 0x72 , 0x61 , 0x63 , 0x74 , 0x41 , 0x64 , 0x64 , 0x72 , 0x65 ,
0x73 , 0x73 , 0x65 , 0x73 , 0x45 , 0x6e , 0x74 , 0x72 , 0x79 , 0x12 , 0x10 , 0x0a , 0x03 , 0x6b , 0x65 , 0x79 ,
0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x03 , 0x6b , 0x65 , 0x79 , 0x12 , 0x14 , 0x0a , 0x05 , 0x76 ,
0x61 , 0x6c , 0x75 , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 ,
0x65 , 0x3a , 0x02 , 0x38 , 0x01 , 0x22 , 0xe0 , 0x01 , 0x0a , 0x14 , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e ,
0x69 , 0x74 , 0x79 , 0x50 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f , 0x6e , 0x73 , 0x12 , 0x19 ,
0x0a , 0x08 , 0x65 , 0x6e , 0x73 , 0x5f , 0x6f , 0x6e , 0x6c , 0x79 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x08 ,
0x52 , 0x07 , 0x65 , 0x6e , 0x73 , 0x4f , 0x6e , 0x6c , 0x79 , 0x12 , 0x18 , 0x0a , 0x07 , 0x70 , 0x72 , 0x69 ,
0x76 , 0x61 , 0x74 , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x08 , 0x52 , 0x07 , 0x70 , 0x72 , 0x69 , 0x76 ,
0x61 , 0x74 , 0x65 , 0x12 , 0x3d , 0x0a , 0x06 , 0x61 , 0x63 , 0x63 , 0x65 , 0x73 , 0x73 , 0x18 , 0x03 , 0x20 ,
0x01 , 0x28 , 0x0e , 0x32 , 0x25 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 ,
0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x50 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 ,
0x6f , 0x6e , 0x73 , 0x2e , 0x41 , 0x63 , 0x63 , 0x65 , 0x73 , 0x73 , 0x52 , 0x06 , 0x61 , 0x63 , 0x63 , 0x65 ,
0x73 , 0x73 , 0x22 , 0x54 , 0x0a , 0x06 , 0x41 , 0x63 , 0x63 , 0x65 , 0x73 , 0x73 , 0x12 , 0x12 , 0x0a , 0x0e ,
0x55 , 0x4e , 0x4b , 0x4e , 0x4f , 0x57 , 0x4e , 0x5f , 0x41 , 0x43 , 0x43 , 0x45 , 0x53 , 0x53 , 0x10 , 0x00 ,
0x12 , 0x11 , 0x0a , 0x0d , 0x4e , 0x4f , 0x5f , 0x4d , 0x45 , 0x4d , 0x42 , 0x45 , 0x52 , 0x53 , 0x48 , 0x49 ,
0x50 , 0x10 , 0x01 , 0x12 , 0x13 , 0x0a , 0x0f , 0x49 , 0x4e , 0x56 , 0x49 , 0x54 , 0x41 , 0x54 , 0x49 , 0x4f ,
0x4e , 0x5f , 0x4f , 0x4e , 0x4c , 0x59 , 0x10 , 0x02 , 0x12 , 0x0e , 0x0a , 0x0a , 0x4f , 0x4e , 0x5f , 0x52 ,
0x45 , 0x51 , 0x55 , 0x45 , 0x53 , 0x54 , 0x10 , 0x03 , 0x22 , 0x84 , 0x03 , 0x0a , 0x0d , 0x54 , 0x6f , 0x6b ,
0x65 , 0x6e , 0x43 , 0x72 , 0x69 , 0x74 , 0x65 , 0x72 , 0x69 , 0x61 , 0x12 , 0x5d , 0x0a , 0x12 , 0x63 , 0x6f ,
0x6e , 0x74 , 0x72 , 0x61 , 0x63 , 0x74 , 0x5f , 0x61 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x65 , 0x73 ,
0x18 , 0x01 , 0x20 , 0x03 , 0x28 , 0x0b , 0x32 , 0x2e , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 ,
0x66 , 0x2e , 0x54 , 0x6f , 0x6b , 0x65 , 0x6e , 0x43 , 0x72 , 0x69 , 0x74 , 0x65 , 0x72 , 0x69 , 0x61 , 0x2e ,
0x43 , 0x6f , 0x6e , 0x74 , 0x72 , 0x61 , 0x63 , 0x74 , 0x41 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x65 ,
0x73 , 0x45 , 0x6e , 0x74 , 0x72 , 0x79 , 0x52 , 0x11 , 0x63 , 0x6f , 0x6e , 0x74 , 0x72 , 0x61 , 0x63 , 0x74 ,
0x41 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x65 , 0x73 , 0x12 , 0x30 , 0x0a , 0x04 , 0x74 , 0x79 , 0x70 ,
0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x0e , 0x32 , 0x1c , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 ,
0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x54 , 0x6f , 0x6b , 0x65 ,
0x6e , 0x54 , 0x79 , 0x70 , 0x65 , 0x52 , 0x04 , 0x74 , 0x79 , 0x70 , 0x65 , 0x12 , 0x16 , 0x0a , 0x06 , 0x73 ,
0x79 , 0x6d , 0x62 , 0x6f , 0x6c , 0x18 , 0x03 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x06 , 0x73 , 0x79 , 0x6d ,
0x62 , 0x6f , 0x6c , 0x12 , 0x12 , 0x0a , 0x04 , 0x6e , 0x61 , 0x6d , 0x65 , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 ,
0x09 , 0x52 , 0x04 , 0x6e , 0x61 , 0x6d , 0x65 , 0x12 , 0x16 , 0x0a , 0x06 , 0x61 , 0x6d , 0x6f , 0x75 , 0x6e ,
0x74 , 0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x06 , 0x61 , 0x6d , 0x6f , 0x75 , 0x6e , 0x74 , 0x12 ,
0x1b , 0x0a , 0x09 , 0x74 , 0x6f , 0x6b , 0x65 , 0x6e , 0x5f , 0x69 , 0x64 , 0x73 , 0x18 , 0x06 , 0x20 , 0x03 ,
0x28 , 0x04 , 0x52 , 0x08 , 0x74 , 0x6f , 0x6b , 0x65 , 0x6e , 0x49 , 0x64 , 0x73 , 0x12 , 0x1f , 0x0a , 0x0b ,
0x65 , 0x6e , 0x73 , 0x5f , 0x70 , 0x61 , 0x74 , 0x74 , 0x65 , 0x72 , 0x6e , 0x18 , 0x07 , 0x20 , 0x01 , 0x28 ,
0x09 , 0x52 , 0x0a , 0x65 , 0x6e , 0x73 , 0x50 , 0x61 , 0x74 , 0x74 , 0x65 , 0x72 , 0x6e , 0x12 , 0x1a , 0x0a ,
0x08 , 0x64 , 0x65 , 0x63 , 0x69 , 0x6d , 0x61 , 0x6c , 0x73 , 0x18 , 0x08 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 ,
0x08 , 0x64 , 0x65 , 0x63 , 0x69 , 0x6d , 0x61 , 0x6c , 0x73 , 0x1a , 0x44 , 0x0a , 0x16 , 0x43 , 0x6f , 0x6e ,
0x74 , 0x72 , 0x61 , 0x63 , 0x74 , 0x41 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x65 , 0x73 , 0x45 , 0x6e ,
0x74 , 0x72 , 0x79 , 0x12 , 0x10 , 0x0a , 0x03 , 0x6b , 0x65 , 0x79 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x04 ,
0x52 , 0x03 , 0x6b , 0x65 , 0x79 , 0x12 , 0x14 , 0x0a , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x18 , 0x02 ,
0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x3a , 0x02 , 0x38 , 0x01 , 0x22 ,
0x93 , 0x03 , 0x0a , 0x18 , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x54 , 0x6f , 0x6b ,
0x65 , 0x6e , 0x50 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f , 0x6e , 0x12 , 0x0e , 0x0a , 0x02 ,
0x69 , 0x64 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x02 , 0x69 , 0x64 , 0x12 , 0x3b , 0x0a , 0x04 ,
0x74 , 0x79 , 0x70 , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x0e , 0x32 , 0x27 , 0x2e , 0x70 , 0x72 , 0x6f ,
0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x54 ,
0x6f , 0x6b , 0x65 , 0x6e , 0x50 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f , 0x6e , 0x2e , 0x54 ,
0x79 , 0x70 , 0x65 , 0x52 , 0x04 , 0x74 , 0x79 , 0x70 , 0x65 , 0x12 , 0x3e , 0x0a , 0x0e , 0x74 , 0x6f , 0x6b ,
0x65 , 0x6e , 0x5f , 0x63 , 0x72 , 0x69 , 0x74 , 0x65 , 0x72 , 0x69 , 0x61 , 0x18 , 0x03 , 0x20 , 0x03 , 0x28 ,
0x0b , 0x32 , 0x17 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x54 , 0x6f , 0x6b ,
0x65 , 0x6e , 0x43 , 0x72 , 0x69 , 0x74 , 0x65 , 0x72 , 0x69 , 0x61 , 0x52 , 0x0d , 0x74 , 0x6f , 0x6b , 0x65 ,
0x6e , 0x43 , 0x72 , 0x69 , 0x74 , 0x65 , 0x72 , 0x69 , 0x61 , 0x12 , 0x19 , 0x0a , 0x08 , 0x63 , 0x68 , 0x61 ,
0x74 , 0x5f , 0x69 , 0x64 , 0x73 , 0x18 , 0x04 , 0x20 , 0x03 , 0x28 , 0x09 , 0x52 , 0x07 , 0x63 , 0x68 , 0x61 ,
0x74 , 0x49 , 0x64 , 0x73 , 0x12 , 0x1d , 0x0a , 0x0a , 0x69 , 0x73 , 0x5f , 0x70 , 0x72 , 0x69 , 0x76 , 0x61 ,
0x74 , 0x65 , 0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x08 , 0x52 , 0x09 , 0x69 , 0x73 , 0x50 , 0x72 , 0x69 , 0x76 ,
0x61 , 0x74 , 0x65 , 0x22 , 0xaf , 0x01 , 0x0a , 0x04 , 0x54 , 0x79 , 0x70 , 0x65 , 0x12 , 0x1c , 0x0a , 0x18 ,
0x55 , 0x4e , 0x4b , 0x4e , 0x4f , 0x57 , 0x4e , 0x5f , 0x54 , 0x4f , 0x4b , 0x45 , 0x4e , 0x5f , 0x50 , 0x45 ,
0x52 , 0x4d , 0x49 , 0x53 , 0x53 , 0x49 , 0x4f , 0x4e , 0x10 , 0x00 , 0x12 , 0x10 , 0x0a , 0x0c , 0x42 , 0x45 ,
0x43 , 0x4f , 0x4d , 0x45 , 0x5f , 0x41 , 0x44 , 0x4d , 0x49 , 0x4e , 0x10 , 0x01 , 0x12 , 0x11 , 0x0a , 0x0d ,
0x42 , 0x45 , 0x43 , 0x4f , 0x4d , 0x45 , 0x5f , 0x4d , 0x45 , 0x4d , 0x42 , 0x45 , 0x52 , 0x10 , 0x02 , 0x12 ,
0x14 , 0x0a , 0x10 , 0x43 , 0x41 , 0x4e , 0x5f , 0x56 , 0x49 , 0x45 , 0x57 , 0x5f , 0x43 , 0x48 , 0x41 , 0x4e ,
0x4e , 0x45 , 0x4c , 0x10 , 0x03 , 0x12 , 0x1d , 0x0a , 0x19 , 0x43 , 0x41 , 0x4e , 0x5f , 0x56 , 0x49 , 0x45 ,
0x57 , 0x5f , 0x41 , 0x4e , 0x44 , 0x5f , 0x50 , 0x4f , 0x53 , 0x54 , 0x5f , 0x43 , 0x48 , 0x41 , 0x4e , 0x4e ,
0x45 , 0x4c , 0x10 , 0x04 , 0x12 , 0x17 , 0x0a , 0x13 , 0x42 , 0x45 , 0x43 , 0x4f , 0x4d , 0x45 , 0x5f , 0x54 ,
0x4f , 0x4b , 0x45 , 0x4e , 0x5f , 0x4d , 0x41 , 0x53 , 0x54 , 0x45 , 0x52 , 0x10 , 0x05 , 0x12 , 0x16 , 0x0a ,
0x12 , 0x42 , 0x45 , 0x43 , 0x4f , 0x4d , 0x45 , 0x5f , 0x54 , 0x4f , 0x4b , 0x45 , 0x4e , 0x5f , 0x4f , 0x57 ,
0x4e , 0x45 , 0x52 , 0x10 , 0x06 , 0x22 , 0xf6 , 0x09 , 0x0a , 0x14 , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e ,
0x69 , 0x74 , 0x79 , 0x44 , 0x65 , 0x73 , 0x63 , 0x72 , 0x69 , 0x70 , 0x74 , 0x69 , 0x6f , 0x6e , 0x12 , 0x14 ,
0x0a , 0x05 , 0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x05 , 0x63 ,
0x6c , 0x6f , 0x63 , 0x6b , 0x12 , 0x45 , 0x0a , 0x07 , 0x6d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x73 , 0x18 ,
0x02 , 0x20 , 0x03 , 0x28 , 0x0b , 0x32 , 0x2b , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 ,
0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x44 , 0x65 , 0x73 , 0x63 , 0x72 , 0x69 ,
0x70 , 0x74 , 0x69 , 0x6f , 0x6e , 0x2e , 0x4d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x73 , 0x45 , 0x6e , 0x74 ,
0x72 , 0x79 , 0x52 , 0x07 , 0x6d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x73 , 0x12 , 0x40 , 0x0a , 0x0b , 0x70 ,
0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f , 0x6e , 0x73 , 0x18 , 0x03 , 0x20 , 0x01 , 0x28 , 0x0b ,
0x32 , 0x1e , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d ,
0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x50 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f , 0x6e , 0x73 ,
0x52 , 0x0b , 0x70 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f , 0x6e , 0x73 , 0x12 , 0x32 , 0x0a ,
0x08 , 0x69 , 0x64 , 0x65 , 0x6e , 0x74 , 0x69 , 0x74 , 0x79 , 0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x0b , 0x32 ,
0x16 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x68 , 0x61 , 0x74 , 0x49 ,
0x64 , 0x65 , 0x6e , 0x74 , 0x69 , 0x74 , 0x79 , 0x52 , 0x08 , 0x69 , 0x64 , 0x65 , 0x6e , 0x74 , 0x69 , 0x74 ,
0x79 , 0x12 , 0x3f , 0x0a , 0x05 , 0x63 , 0x68 , 0x61 , 0x74 , 0x73 , 0x18 , 0x06 , 0x20 , 0x03 , 0x28 , 0x0b ,
0x32 , 0x29 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d ,
0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x44 , 0x65 , 0x73 , 0x63 , 0x72 , 0x69 , 0x70 , 0x74 , 0x69 , 0x6f , 0x6e ,
0x2e , 0x43 , 0x68 , 0x61 , 0x74 , 0x73 , 0x45 , 0x6e , 0x74 , 0x72 , 0x79 , 0x52 , 0x05 , 0x63 , 0x68 , 0x61 ,
0x74 , 0x73 , 0x12 , 0x19 , 0x0a , 0x08 , 0x62 , 0x61 , 0x6e , 0x5f , 0x6c , 0x69 , 0x73 , 0x74 , 0x18 , 0x07 ,
0x20 , 0x03 , 0x28 , 0x09 , 0x52 , 0x07 , 0x62 , 0x61 , 0x6e , 0x4c , 0x69 , 0x73 , 0x74 , 0x12 , 0x4e , 0x0a ,
0x0a , 0x63 , 0x61 , 0x74 , 0x65 , 0x67 , 0x6f , 0x72 , 0x69 , 0x65 , 0x73 , 0x18 , 0x08 , 0x20 , 0x03 , 0x28 ,
0x0b , 0x32 , 0x2e , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d ,
0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x44 , 0x65 , 0x73 , 0x63 , 0x72 , 0x69 , 0x70 , 0x74 , 0x69 , 0x6f ,
0x6e , 0x2e , 0x43 , 0x61 , 0x74 , 0x65 , 0x67 , 0x6f , 0x72 , 0x69 , 0x65 , 0x73 , 0x45 , 0x6e , 0x74 , 0x72 ,
0x79 , 0x52 , 0x0a , 0x63 , 0x61 , 0x74 , 0x65 , 0x67 , 0x6f , 0x72 , 0x69 , 0x65 , 0x73 , 0x12 , 0x38 , 0x0a ,
0x18 , 0x61 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x5f , 0x6d , 0x61 , 0x67 , 0x6e , 0x65 , 0x74 , 0x6c ,
0x69 , 0x6e , 0x6b , 0x5f , 0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x09 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 ,
0x16 , 0x61 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x4d , 0x61 , 0x67 , 0x6e , 0x65 , 0x74 , 0x6c , 0x69 ,
0x6e , 0x6b , 0x43 , 0x6c , 0x6f , 0x63 , 0x6b , 0x12 , 0x47 , 0x0a , 0x0e , 0x61 , 0x64 , 0x6d , 0x69 , 0x6e ,
0x5f , 0x73 , 0x65 , 0x74 , 0x74 , 0x69 , 0x6e , 0x67 , 0x73 , 0x18 , 0x0a , 0x20 , 0x01 , 0x28 , 0x0b , 0x32 ,
0x20 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 ,
0x6e , 0x69 , 0x74 , 0x79 , 0x41 , 0x64 , 0x6d , 0x69 , 0x6e , 0x53 , 0x65 , 0x74 , 0x74 , 0x69 , 0x6e , 0x67 ,
0x73 , 0x52 , 0x0d , 0x61 , 0x64 , 0x6d , 0x69 , 0x6e , 0x53 , 0x65 , 0x74 , 0x74 , 0x69 , 0x6e , 0x67 , 0x73 ,
0x12 , 0x23 , 0x0a , 0x0d , 0x69 , 0x6e , 0x74 , 0x72 , 0x6f , 0x5f , 0x6d , 0x65 , 0x73 , 0x73 , 0x61 , 0x67 ,
0x65 , 0x18 , 0x0b , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0c , 0x69 , 0x6e , 0x74 , 0x72 , 0x6f , 0x4d , 0x65 ,
0x73 , 0x73 , 0x61 , 0x67 , 0x65 , 0x12 , 0x23 , 0x0a , 0x0d , 0x6f , 0x75 , 0x74 , 0x72 , 0x6f , 0x5f , 0x6d ,
0x65 , 0x73 , 0x73 , 0x61 , 0x67 , 0x65 , 0x18 , 0x0c , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0c , 0x6f , 0x75 ,
0x74 , 0x72 , 0x6f , 0x4d , 0x65 , 0x73 , 0x73 , 0x61 , 0x67 , 0x65 , 0x12 , 0x1c , 0x0a , 0x09 , 0x65 , 0x6e ,
0x63 , 0x72 , 0x79 , 0x70 , 0x74 , 0x65 , 0x64 , 0x18 , 0x0d , 0x20 , 0x01 , 0x28 , 0x08 , 0x52 , 0x09 , 0x65 ,
0x6e , 0x63 , 0x72 , 0x79 , 0x70 , 0x74 , 0x65 , 0x64 , 0x12 , 0x12 , 0x0a , 0x04 , 0x74 , 0x61 , 0x67 , 0x73 ,
0x18 , 0x0e , 0x20 , 0x03 , 0x28 , 0x09 , 0x52 , 0x04 , 0x74 , 0x61 , 0x67 , 0x73 , 0x12 , 0x61 , 0x0a , 0x11 ,
0x74 , 0x6f , 0x6b , 0x65 , 0x6e , 0x5f , 0x70 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f , 0x6e ,
0x73 , 0x18 , 0x0f , 0x20 , 0x03 , 0x28 , 0x0b , 0x32 , 0x34 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 ,
0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x44 , 0x65 , 0x73 , 0x63 ,
0x72 , 0x69 , 0x70 , 0x74 , 0x69 , 0x6f , 0x6e , 0x2e , 0x54 , 0x6f , 0x6b , 0x65 , 0x6e , 0x50 , 0x65 , 0x72 ,
0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f , 0x6e , 0x73 , 0x45 , 0x6e , 0x74 , 0x72 , 0x79 , 0x52 , 0x10 , 0x74 ,
0x6f , 0x6b , 0x65 , 0x6e , 0x50 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f , 0x6e , 0x73 , 0x12 ,
0x5c , 0x0a , 0x19 , 0x63 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x5f , 0x74 , 0x6f , 0x6b ,
0x65 , 0x6e , 0x73 , 0x5f , 0x6d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x18 , 0x10 , 0x20 , 0x03 ,
0x28 , 0x0b , 0x32 , 0x20 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f ,
0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x54 , 0x6f , 0x6b , 0x65 , 0x6e , 0x4d , 0x65 , 0x74 , 0x61 ,
0x64 , 0x61 , 0x74 , 0x61 , 0x52 , 0x17 , 0x63 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x54 ,
0x6f , 0x6b , 0x65 , 0x6e , 0x73 , 0x4d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x12 , 0x30 , 0x0a ,
0x14 , 0x61 , 0x63 , 0x74 , 0x69 , 0x76 , 0x65 , 0x5f , 0x6d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x73 , 0x5f ,
0x63 , 0x6f , 0x75 , 0x6e , 0x74 , 0x18 , 0x11 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x12 , 0x61 , 0x63 , 0x74 ,
0x69 , 0x76 , 0x65 , 0x4d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x73 , 0x43 , 0x6f , 0x75 , 0x6e , 0x74 , 0x1a ,
0x55 , 0x0a , 0x0c , 0x4d , 0x65 , 0x6d , 0x62 , 0x65 , 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 , 0x2f , 0x0a , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x0b ,
0x32 , 0x19 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d ,
0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x4d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x52 , 0x05 , 0x76 , 0x61 , 0x6c ,
0x75 , 0x65 , 0x3a , 0x02 , 0x38 , 0x01 , 0x1a , 0x51 , 0x0a , 0x0a , 0x43 , 0x68 , 0x61 , 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 , 0x2d , 0x0a , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x18 ,
0x02 , 0x20 , 0x01 , 0x28 , 0x0b , 0x32 , 0x17 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 ,
0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x43 , 0x68 , 0x61 , 0x74 , 0x52 , 0x05 ,
0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x3a , 0x02 , 0x38 , 0x01 , 0x1a , 0x5a , 0x0a , 0x0f , 0x43 , 0x61 , 0x74 ,
0x65 , 0x67 , 0x6f , 0x72 , 0x69 , 0x65 , 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 , 0x31 ,
0x0a , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x0b , 0x32 , 0x1b , 0x2e ,
0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 ,
0x74 , 0x79 , 0x43 , 0x61 , 0x74 , 0x65 , 0x67 , 0x6f , 0x72 , 0x79 , 0x52 , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 ,
0x65 , 0x3a , 0x02 , 0x38 , 0x01 , 0x1a , 0x67 , 0x0a , 0x15 , 0x54 , 0x6f , 0x6b , 0x65 , 0x6e , 0x50 , 0x65 ,
0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f , 0x6e , 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 , 0x38 , 0x0a , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x0b , 0x32 ,
0x22 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 ,
0x6e , 0x69 , 0x74 , 0x79 , 0x54 , 0x6f , 0x6b , 0x65 , 0x6e , 0x50 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 ,
0x69 , 0x6f , 0x6e , 0x52 , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x3a , 0x02 , 0x38 , 0x01 , 0x22 , 0x5e ,
0x0a , 0x16 , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x41 , 0x64 , 0x6d , 0x69 , 0x6e ,
0x53 , 0x65 , 0x74 , 0x74 , 0x69 , 0x6e , 0x67 , 0x73 , 0x12 , 0x44 , 0x0a , 0x1f , 0x70 , 0x69 , 0x6e , 0x5f ,
0x6d , 0x65 , 0x73 , 0x73 , 0x61 , 0x67 , 0x65 , 0x5f , 0x61 , 0x6c , 0x6c , 0x5f , 0x6d , 0x65 , 0x6d , 0x62 ,
0x65 , 0x72 , 0x73 , 0x5f , 0x65 , 0x6e , 0x61 , 0x62 , 0x6c , 0x65 , 0x64 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 ,
0x08 , 0x52 , 0x1b , 0x70 , 0x69 , 0x6e , 0x4d , 0x65 , 0x73 , 0x73 , 0x61 , 0x67 , 0x65 , 0x41 , 0x6c , 0x6c ,
0x4d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x73 , 0x45 , 0x6e , 0x61 , 0x62 , 0x6c , 0x65 , 0x64 , 0x22 , 0xd9 ,
0x02 , 0x0a , 0x0d , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x43 , 0x68 , 0x61 , 0x74 ,
0x12 , 0x3e , 0x0a , 0x07 , 0x6d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x73 , 0x18 , 0x01 , 0x20 , 0x03 , 0x28 ,
0x0b , 0x32 , 0x24 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d ,
0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x43 , 0x68 , 0x61 , 0x74 , 0x2e , 0x4d , 0x65 , 0x6d , 0x62 , 0x65 ,
0x72 , 0x73 , 0x45 , 0x6e , 0x74 , 0x72 , 0x79 , 0x52 , 0x07 , 0x6d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x73 ,
0x12 , 0x40 , 0x0a , 0x0b , 0x70 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f , 0x6e , 0x73 , 0x18 ,
0x02 , 0x20 , 0x01 , 0x28 , 0x0b , 0x32 , 0x1e , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 ,
0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x50 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 ,
0x73 , 0x69 , 0x6f , 0x6e , 0x73 , 0x52 , 0x0b , 0x70 , 0x65 , 0x72 , 0x6d , 0x69 , 0x73 , 0x73 , 0x69 , 0x6f ,
0x6e , 0x73 , 0x12 , 0x32 , 0x0a , 0x08 , 0x69 , 0x64 , 0x65 , 0x6e , 0x74 , 0x69 , 0x74 , 0x79 , 0x18 , 0x03 ,
0x20 , 0x01 , 0x28 , 0x0b , 0x32 , 0x16 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e ,
0x43 , 0x68 , 0x61 , 0x74 , 0x49 , 0x64 , 0x65 , 0x6e , 0x74 , 0x69 , 0x74 , 0x79 , 0x52 , 0x08 , 0x69 , 0x64 ,
0x65 , 0x6e , 0x74 , 0x69 , 0x74 , 0x79 , 0x12 , 0x1f , 0x0a , 0x0b , 0x63 , 0x61 , 0x74 , 0x65 , 0x67 , 0x6f ,
0x72 , 0x79 , 0x5f , 0x69 , 0x64 , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0a , 0x63 , 0x61 , 0x74 ,
0x65 , 0x67 , 0x6f , 0x72 , 0x79 , 0x49 , 0x64 , 0x12 , 0x1a , 0x0a , 0x08 , 0x70 , 0x6f , 0x73 , 0x69 , 0x74 ,
0x69 , 0x6f , 0x6e , 0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x05 , 0x52 , 0x08 , 0x70 , 0x6f , 0x73 , 0x69 , 0x74 ,
0x69 , 0x6f , 0x6e , 0x1a , 0x55 , 0x0a , 0x0c , 0x4d , 0x65 , 0x6d , 0x62 , 0x65 , 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 , 0x2f , 0x0a , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x18 , 0x02 ,
0x20 , 0x01 , 0x28 , 0x0b , 0x32 , 0x19 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e ,
0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x4d , 0x65 , 0x6d , 0x62 , 0x65 , 0x72 , 0x52 ,
0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x3a , 0x02 , 0x38 , 0x01 , 0x22 , 0x64 , 0x0a , 0x11 , 0x43 , 0x6f ,
0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x43 , 0x61 , 0x74 , 0x65 , 0x67 , 0x6f , 0x72 , 0x79 , 0x12 ,
0x1f , 0x0a , 0x0b , 0x63 , 0x61 , 0x74 , 0x65 , 0x67 , 0x6f , 0x72 , 0x79 , 0x5f , 0x69 , 0x64 , 0x18 , 0x01 ,
0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0a , 0x63 , 0x61 , 0x74 , 0x65 , 0x67 , 0x6f , 0x72 , 0x79 , 0x49 , 0x64 ,
0x12 , 0x12 , 0x0a , 0x04 , 0x6e , 0x61 , 0x6d , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x04 ,
0x6e , 0x61 , 0x6d , 0x65 , 0x12 , 0x1a , 0x0a , 0x08 , 0x70 , 0x6f , 0x73 , 0x69 , 0x74 , 0x69 , 0x6f , 0x6e ,
0x18 , 0x03 , 0x20 , 0x01 , 0x28 , 0x05 , 0x52 , 0x08 , 0x70 , 0x6f , 0x73 , 0x69 , 0x74 , 0x69 , 0x6f , 0x6e ,
0x22 , 0x92 , 0x01 , 0x0a , 0x0f , 0x52 , 0x65 , 0x76 , 0x65 , 0x61 , 0x6c , 0x65 , 0x64 , 0x41 , 0x63 , 0x63 ,
0x6f , 0x75 , 0x6e , 0x74 , 0x12 , 0x18 , 0x0a , 0x07 , 0x61 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x18 ,
0x01 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x07 , 0x61 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x12 , 0x1c ,
0x0a , 0x09 , 0x73 , 0x69 , 0x67 , 0x6e , 0x61 , 0x74 , 0x75 , 0x72 , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 ,
0x0c , 0x52 , 0x09 , 0x73 , 0x69 , 0x67 , 0x6e , 0x61 , 0x74 , 0x75 , 0x72 , 0x65 , 0x12 , 0x1b , 0x0a , 0x09 ,
0x63 , 0x68 , 0x61 , 0x69 , 0x6e , 0x5f , 0x69 , 0x64 , 0x73 , 0x18 , 0x03 , 0x20 , 0x03 , 0x28 , 0x04 , 0x52 ,
0x08 , 0x63 , 0x68 , 0x61 , 0x69 , 0x6e , 0x49 , 0x64 , 0x73 , 0x12 , 0x2a , 0x0a , 0x10 , 0x69 , 0x73 , 0x41 ,
0x69 , 0x72 , 0x64 , 0x72 , 0x6f , 0x70 , 0x41 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x18 , 0x04 , 0x20 ,
0x01 , 0x28 , 0x08 , 0x52 , 0x10 , 0x69 , 0x73 , 0x41 , 0x69 , 0x72 , 0x64 , 0x72 , 0x6f , 0x70 , 0x41 , 0x64 ,
0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x22 , 0xf0 , 0x01 , 0x0a , 0x16 , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e ,
0x69 , 0x74 , 0x79 , 0x52 , 0x65 , 0x71 , 0x75 , 0x65 , 0x73 , 0x74 , 0x54 , 0x6f , 0x4a , 0x6f , 0x69 , 0x6e ,
0x12 , 0x14 , 0x0a , 0x05 , 0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 ,
0x05 , 0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x12 , 0x19 , 0x0a , 0x08 , 0x65 , 0x6e , 0x73 , 0x5f , 0x6e , 0x61 ,
0x6d , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x07 , 0x65 , 0x6e , 0x73 , 0x4e , 0x61 , 0x6d ,
0x65 , 0x12 , 0x17 , 0x0a , 0x07 , 0x63 , 0x68 , 0x61 , 0x74 , 0x5f , 0x69 , 0x64 , 0x18 , 0x03 , 0x20 , 0x01 ,
0x28 , 0x09 , 0x52 , 0x06 , 0x63 , 0x68 , 0x61 , 0x74 , 0x49 , 0x64 , 0x12 , 0x21 , 0x0a , 0x0c , 0x63 , 0x6f ,
0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x5f , 0x69 , 0x64 , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 , 0x0c ,
0x52 , 0x0b , 0x63 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x49 , 0x64 , 0x12 , 0x21 , 0x0a ,
0x0c , 0x64 , 0x69 , 0x73 , 0x70 , 0x6c , 0x61 , 0x79 , 0x5f , 0x6e , 0x61 , 0x6d , 0x65 , 0x18 , 0x05 , 0x20 ,
0x01 , 0x28 , 0x09 , 0x52 , 0x0b , 0x64 , 0x69 , 0x73 , 0x70 , 0x6c , 0x61 , 0x79 , 0x4e , 0x61 , 0x6d , 0x65 ,
0x12 , 0x46 , 0x0a , 0x11 , 0x72 , 0x65 , 0x76 , 0x65 , 0x61 , 0x6c , 0x65 , 0x64 , 0x5f , 0x61 , 0x63 , 0x63 ,
0x6f , 0x75 , 0x6e , 0x74 , 0x73 , 0x18 , 0x06 , 0x20 , 0x03 , 0x28 , 0x0b , 0x32 , 0x19 , 0x2e , 0x70 , 0x72 ,
0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x52 , 0x65 , 0x76 , 0x65 , 0x61 , 0x6c , 0x65 , 0x64 , 0x41 ,
0x63 , 0x63 , 0x6f , 0x75 , 0x6e , 0x74 , 0x52 , 0x10 , 0x72 , 0x65 , 0x76 , 0x65 , 0x61 , 0x6c , 0x65 , 0x64 ,
0x41 , 0x63 , 0x63 , 0x6f , 0x75 , 0x6e , 0x74 , 0x73 , 0x22 , 0x9f , 0x01 , 0x0a , 0x1c , 0x43 , 0x6f , 0x6d ,
0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x45 , 0x64 , 0x69 , 0x74 , 0x53 , 0x68 , 0x61 , 0x72 , 0x65 , 0x64 ,
0x41 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x65 , 0x73 , 0x12 , 0x14 , 0x0a , 0x05 , 0x63 , 0x6c , 0x6f ,
0x63 , 0x6b , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x05 , 0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x12 ,
0x21 , 0x0a , 0x0c , 0x63 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x5f , 0x69 , 0x64 , 0x18 ,
0x02 , 0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x0b , 0x63 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 ,
0x49 , 0x64 , 0x12 , 0x46 , 0x0a , 0x11 , 0x72 , 0x65 , 0x76 , 0x65 , 0x61 , 0x6c , 0x65 , 0x64 , 0x5f , 0x61 ,
0x63 , 0x63 , 0x6f , 0x75 , 0x6e , 0x74 , 0x73 , 0x18 , 0x03 , 0x20 , 0x03 , 0x28 , 0x0b , 0x32 , 0x19 , 0x2e ,
0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x52 , 0x65 , 0x76 , 0x65 , 0x61 , 0x6c , 0x65 ,
0x64 , 0x41 , 0x63 , 0x63 , 0x6f , 0x75 , 0x6e , 0x74 , 0x52 , 0x10 , 0x72 , 0x65 , 0x76 , 0x65 , 0x61 , 0x6c ,
0x65 , 0x64 , 0x41 , 0x63 , 0x63 , 0x6f , 0x75 , 0x6e , 0x74 , 0x73 , 0x22 , 0xae , 0x01 , 0x0a , 0x1c , 0x43 ,
0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x43 , 0x61 , 0x6e , 0x63 , 0x65 , 0x6c , 0x52 , 0x65 ,
0x71 , 0x75 , 0x65 , 0x73 , 0x74 , 0x54 , 0x6f , 0x4a , 0x6f , 0x69 , 0x6e , 0x12 , 0x14 , 0x0a , 0x05 , 0x63 ,
0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x05 , 0x63 , 0x6c , 0x6f , 0x63 ,
0x6b , 0x12 , 0x19 , 0x0a , 0x08 , 0x65 , 0x6e , 0x73 , 0x5f , 0x6e , 0x61 , 0x6d , 0x65 , 0x18 , 0x02 , 0x20 ,
0x01 , 0x28 , 0x09 , 0x52 , 0x07 , 0x65 , 0x6e , 0x73 , 0x4e , 0x61 , 0x6d , 0x65 , 0x12 , 0x17 , 0x0a , 0x07 ,
0x63 , 0x68 , 0x61 , 0x74 , 0x5f , 0x69 , 0x64 , 0x18 , 0x03 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x06 , 0x63 ,
0x68 , 0x61 , 0x74 , 0x49 , 0x64 , 0x12 , 0x21 , 0x0a , 0x0c , 0x63 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 ,
0x74 , 0x79 , 0x5f , 0x69 , 0x64 , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x0b , 0x63 , 0x6f , 0x6d ,
0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x49 , 0x64 , 0x12 , 0x21 , 0x0a , 0x0c , 0x64 , 0x69 , 0x73 , 0x70 ,
0x6c , 0x61 , 0x79 , 0x5f , 0x6e , 0x61 , 0x6d , 0x65 , 0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0b ,
0x64 , 0x69 , 0x73 , 0x70 , 0x6c , 0x61 , 0x79 , 0x4e , 0x61 , 0x6d , 0x65 , 0x22 , 0xe8 , 0x01 , 0x0a , 0x1e ,
0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x52 , 0x65 , 0x71 , 0x75 , 0x65 , 0x73 , 0x74 ,
0x54 , 0x6f , 0x4a , 0x6f , 0x69 , 0x6e , 0x52 , 0x65 , 0x73 , 0x70 , 0x6f , 0x6e , 0x73 , 0x65 , 0x12 , 0x14 ,
0x0a , 0x05 , 0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x05 , 0x63 ,
0x6c , 0x6f , 0x63 , 0x6b , 0x12 , 0x3c , 0x0a , 0x09 , 0x63 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 ,
0x79 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x0b , 0x32 , 0x1e , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 ,
0x75 , 0x66 , 0x2e , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x44 , 0x65 , 0x73 , 0x63 ,
0x72 , 0x69 , 0x70 , 0x74 , 0x69 , 0x6f , 0x6e , 0x52 , 0x09 , 0x63 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 ,
0x74 , 0x79 , 0x12 , 0x1a , 0x0a , 0x08 , 0x61 , 0x63 , 0x63 , 0x65 , 0x70 , 0x74 , 0x65 , 0x64 , 0x18 , 0x03 ,
0x20 , 0x01 , 0x28 , 0x08 , 0x52 , 0x08 , 0x61 , 0x63 , 0x63 , 0x65 , 0x70 , 0x74 , 0x65 , 0x64 , 0x12 , 0x14 ,
0x0a , 0x05 , 0x67 , 0x72 , 0x61 , 0x6e , 0x74 , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x05 , 0x67 ,
0x72 , 0x61 , 0x6e , 0x74 , 0x12 , 0x21 , 0x0a , 0x0c , 0x63 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 ,
0x79 , 0x5f , 0x69 , 0x64 , 0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x0b , 0x63 , 0x6f , 0x6d , 0x6d ,
0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x49 , 0x64 , 0x12 , 0x1d , 0x0a , 0x0a , 0x6d , 0x61 , 0x67 , 0x6e , 0x65 ,
0x74 , 0x5f , 0x75 , 0x72 , 0x69 , 0x18 , 0x06 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x09 , 0x6d , 0x61 , 0x67 ,
0x6e , 0x65 , 0x74 , 0x55 , 0x72 , 0x69 , 0x22 , 0x52 , 0x0a , 0x17 , 0x43 , 0x6f , 0x6d , 0x6d , 0x75 , 0x6e ,
0x69 , 0x74 , 0x79 , 0x52 , 0x65 , 0x71 , 0x75 , 0x65 , 0x73 , 0x74 , 0x54 , 0x6f , 0x4c , 0x65 , 0x61 , 0x76 ,
0x65 , 0x12 , 0x14 , 0x0a , 0x05 , 0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x04 ,
0x52 , 0x05 , 0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x12 , 0x21 , 0x0a , 0x0c , 0x63 , 0x6f , 0x6d , 0x6d , 0x75 ,
0x6e , 0x69 , 0x74 , 0x79 , 0x5f , 0x69 , 0x64 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x0b , 0x63 ,
0x6f , 0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x49 , 0x64 , 0x22 , 0x58 , 0x0a , 0x21 , 0x43 , 0x6f ,
0x6d , 0x6d , 0x75 , 0x6e , 0x69 , 0x74 , 0x79 , 0x4d , 0x65 , 0x73 , 0x73 , 0x61 , 0x67 , 0x65 , 0x41 , 0x72 ,
0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x4d , 0x61 , 0x67 , 0x6e , 0x65 , 0x74 , 0x6c , 0x69 , 0x6e , 0x6b , 0x12 ,
0x14 , 0x0a , 0x05 , 0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x05 ,
0x63 , 0x6c , 0x6f , 0x63 , 0x6b , 0x12 , 0x1d , 0x0a , 0x0a , 0x6d , 0x61 , 0x67 , 0x6e , 0x65 , 0x74 , 0x5f ,
0x75 , 0x72 , 0x69 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x09 , 0x6d , 0x61 , 0x67 , 0x6e , 0x65 ,
0x74 , 0x55 , 0x72 , 0x69 , 0x22 , 0xbf , 0x01 , 0x0a , 0x0b , 0x57 , 0x61 , 0x6b , 0x75 , 0x4d , 0x65 , 0x73 ,
0x73 , 0x61 , 0x67 , 0x65 , 0x12 , 0x10 , 0x0a , 0x03 , 0x73 , 0x69 , 0x67 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 ,
0x0c , 0x52 , 0x03 , 0x73 , 0x69 , 0x67 , 0x12 , 0x1c , 0x0a , 0x09 , 0x74 , 0x69 , 0x6d , 0x65 , 0x73 , 0x74 ,
0x61 , 0x6d , 0x70 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x09 , 0x74 , 0x69 , 0x6d , 0x65 , 0x73 ,
0x74 , 0x61 , 0x6d , 0x70 , 0x12 , 0x14 , 0x0a , 0x05 , 0x74 , 0x6f , 0x70 , 0x69 , 0x63 , 0x18 , 0x03 , 0x20 ,
0x01 , 0x28 , 0x0c , 0x52 , 0x05 , 0x74 , 0x6f , 0x70 , 0x69 , 0x63 , 0x12 , 0x18 , 0x0a , 0x07 , 0x70 , 0x61 ,
0x79 , 0x6c , 0x6f , 0x61 , 0x64 , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x07 , 0x70 , 0x61 , 0x79 ,
0x6c , 0x6f , 0x61 , 0x64 , 0x12 , 0x18 , 0x0a , 0x07 , 0x70 , 0x61 , 0x64 , 0x64 , 0x69 , 0x6e , 0x67 , 0x18 ,
0x05 , 0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x07 , 0x70 , 0x61 , 0x64 , 0x64 , 0x69 , 0x6e , 0x67 , 0x12 , 0x12 ,
0x0a , 0x04 , 0x68 , 0x61 , 0x73 , 0x68 , 0x18 , 0x06 , 0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x04 , 0x68 , 0x61 ,
0x73 , 0x68 , 0x12 , 0x22 , 0x0a , 0x0c , 0x74 , 0x68 , 0x69 , 0x72 , 0x64 , 0x50 , 0x61 , 0x72 , 0x74 , 0x79 ,
0x49 , 0x64 , 0x18 , 0x07 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0c , 0x74 , 0x68 , 0x69 , 0x72 , 0x64 , 0x50 ,
0x61 , 0x72 , 0x74 , 0x79 , 0x49 , 0x64 , 0x22 , 0x7e , 0x0a , 0x1a , 0x57 , 0x61 , 0x6b , 0x75 , 0x4d , 0x65 ,
0x73 , 0x73 , 0x61 , 0x67 , 0x65 , 0x41 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x4d , 0x65 , 0x74 , 0x61 ,
0x64 , 0x61 , 0x74 , 0x61 , 0x12 , 0x18 , 0x0a , 0x07 , 0x76 , 0x65 , 0x72 , 0x73 , 0x69 , 0x6f , 0x6e , 0x18 ,
0x01 , 0x20 , 0x01 , 0x28 , 0x0d , 0x52 , 0x07 , 0x76 , 0x65 , 0x72 , 0x73 , 0x69 , 0x6f , 0x6e , 0x12 , 0x12 ,
0x0a , 0x04 , 0x66 , 0x72 , 0x6f , 0x6d , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x04 , 0x66 , 0x72 ,
0x6f , 0x6d , 0x12 , 0x0e , 0x0a , 0x02 , 0x74 , 0x6f , 0x18 , 0x03 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x02 ,
0x74 , 0x6f , 0x12 , 0x22 , 0x0a , 0x0c , 0x63 , 0x6f , 0x6e , 0x74 , 0x65 , 0x6e , 0x74 , 0x54 , 0x6f , 0x70 ,
0x69 , 0x63 , 0x18 , 0x04 , 0x20 , 0x03 , 0x28 , 0x0c , 0x52 , 0x0c , 0x63 , 0x6f , 0x6e , 0x74 , 0x65 , 0x6e ,
0x74 , 0x54 , 0x6f , 0x70 , 0x69 , 0x63 , 0x22 , 0xa3 , 0x01 , 0x0a , 0x12 , 0x57 , 0x61 , 0x6b , 0x75 , 0x4d ,
0x65 , 0x73 , 0x73 , 0x61 , 0x67 , 0x65 , 0x41 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x12 , 0x18 , 0x0a ,
0x07 , 0x76 , 0x65 , 0x72 , 0x73 , 0x69 , 0x6f , 0x6e , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x0d , 0x52 , 0x07 ,
0x76 , 0x65 , 0x72 , 0x73 , 0x69 , 0x6f , 0x6e , 0x12 , 0x40 , 0x0a , 0x08 , 0x6d , 0x65 , 0x74 , 0x61 , 0x64 ,
0x61 , 0x74 , 0x61 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x0b , 0x32 , 0x24 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 ,
0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x57 , 0x61 , 0x6b , 0x75 , 0x4d , 0x65 , 0x73 , 0x73 , 0x61 , 0x67 , 0x65 ,
0x41 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x4d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x52 ,
0x08 , 0x6d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x12 , 0x31 , 0x0a , 0x08 , 0x6d , 0x65 , 0x73 ,
0x73 , 0x61 , 0x67 , 0x65 , 0x73 , 0x18 , 0x03 , 0x20 , 0x03 , 0x28 , 0x0b , 0x32 , 0x15 , 0x2e , 0x70 , 0x72 ,
0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x57 , 0x61 , 0x6b , 0x75 , 0x4d , 0x65 , 0x73 , 0x73 , 0x61 ,
0x67 , 0x65 , 0x52 , 0x08 , 0x6d , 0x65 , 0x73 , 0x73 , 0x61 , 0x67 , 0x65 , 0x73 , 0x22 , 0xc3 , 0x01 , 0x0a ,
0x1f , 0x57 , 0x61 , 0x6b , 0x75 , 0x4d , 0x65 , 0x73 , 0x73 , 0x61 , 0x67 , 0x65 , 0x41 , 0x72 , 0x63 , 0x68 ,
0x69 , 0x76 , 0x65 , 0x49 , 0x6e , 0x64 , 0x65 , 0x78 , 0x4d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 ,
0x12 , 0x18 , 0x0a , 0x07 , 0x76 , 0x65 , 0x72 , 0x73 , 0x69 , 0x6f , 0x6e , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 ,
0x0d , 0x52 , 0x07 , 0x76 , 0x65 , 0x72 , 0x73 , 0x69 , 0x6f , 0x6e , 0x12 , 0x40 , 0x0a , 0x08 , 0x6d , 0x65 ,
0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x0b , 0x32 , 0x24 , 0x2e , 0x70 ,
0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x57 , 0x61 , 0x6b , 0x75 , 0x4d , 0x65 , 0x73 , 0x73 ,
0x61 , 0x67 , 0x65 , 0x41 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x4d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 ,
0x74 , 0x61 , 0x52 , 0x08 , 0x6d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x12 , 0x16 , 0x0a , 0x06 ,
0x6f , 0x66 , 0x66 , 0x73 , 0x65 , 0x74 , 0x18 , 0x03 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x06 , 0x6f , 0x66 ,
0x66 , 0x73 , 0x65 , 0x74 , 0x12 , 0x12 , 0x0a , 0x04 , 0x73 , 0x69 , 0x7a , 0x65 , 0x18 , 0x04 , 0x20 , 0x01 ,
0x28 , 0x04 , 0x52 , 0x04 , 0x73 , 0x69 , 0x7a , 0x65 , 0x12 , 0x18 , 0x0a , 0x07 , 0x70 , 0x61 , 0x64 , 0x64 ,
0x69 , 0x6e , 0x67 , 0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x07 , 0x70 , 0x61 , 0x64 , 0x64 , 0x69 ,
0x6e , 0x67 , 0x22 , 0xce , 0x01 , 0x0a , 0x17 , 0x57 , 0x61 , 0x6b , 0x75 , 0x4d , 0x65 , 0x73 , 0x73 , 0x61 ,
0x67 , 0x65 , 0x41 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x49 , 0x6e , 0x64 , 0x65 , 0x78 , 0x12 , 0x4b ,
0x0a , 0x08 , 0x61 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x73 , 0x18 , 0x01 , 0x20 , 0x03 , 0x28 , 0x0b ,
0x32 , 0x2f , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x57 , 0x61 , 0x6b , 0x75 ,
0x4d , 0x65 , 0x73 , 0x73 , 0x61 , 0x67 , 0x65 , 0x41 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x49 , 0x6e ,
0x64 , 0x65 , 0x78 , 0x2e , 0x41 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x73 , 0x45 , 0x6e , 0x74 , 0x72 ,
0x79 , 0x52 , 0x08 , 0x61 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x73 , 0x1a , 0x66 , 0x0a , 0x0d , 0x41 ,
0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 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 , 0x3f ,
0x0a , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x0b , 0x32 , 0x29 , 0x2e ,
0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 , 0x75 , 0x66 , 0x2e , 0x57 , 0x61 , 0x6b , 0x75 , 0x4d , 0x65 , 0x73 ,
0x73 , 0x61 , 0x67 , 0x65 , 0x41 , 0x72 , 0x63 , 0x68 , 0x69 , 0x76 , 0x65 , 0x49 , 0x6e , 0x64 , 0x65 , 0x78 ,
0x4d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x52 , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x3a ,
0x02 , 0x38 , 0x01 , 0x42 , 0x0d , 0x5a , 0x0b , 0x2e , 0x2f , 0x3b , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x62 ,
0x75 , 0x66 , 0x62 , 0x06 , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x33 ,
}
var (
file_communities_proto_rawDescOnce sync . Once
file_communities_proto_rawDescData = file_communities_proto_rawDesc
)
func file_communities_proto_rawDescGZIP ( ) [ ] byte {
file_communities_proto_rawDescOnce . Do ( func ( ) {
file_communities_proto_rawDescData = protoimpl . X . CompressGZIP ( file_communities_proto_rawDescData )
} )
return file_communities_proto_rawDescData
}
var file_communities_proto_enumTypes = make ( [ ] protoimpl . EnumInfo , 3 )
var file_communities_proto_msgTypes = make ( [ ] protoimpl . MessageInfo , 30 )
var file_communities_proto_goTypes = [ ] interface { } {
( CommunityMember_Roles ) ( 0 ) , // 0: protobuf.CommunityMember.Roles
( CommunityPermissions_Access ) ( 0 ) , // 1: protobuf.CommunityPermissions.Access
( CommunityTokenPermission_Type ) ( 0 ) , // 2: protobuf.CommunityTokenPermission.Type
( * Grant ) ( nil ) , // 3: protobuf.Grant
( * CommunityMember ) ( nil ) , // 4: protobuf.CommunityMember
( * CommunityTokenMetadata ) ( nil ) , // 5: protobuf.CommunityTokenMetadata
( * CommunityPermissions ) ( nil ) , // 6: protobuf.CommunityPermissions
( * TokenCriteria ) ( nil ) , // 7: protobuf.TokenCriteria
( * CommunityTokenPermission ) ( nil ) , // 8: protobuf.CommunityTokenPermission
( * CommunityDescription ) ( nil ) , // 9: protobuf.CommunityDescription
( * CommunityAdminSettings ) ( nil ) , // 10: protobuf.CommunityAdminSettings
( * CommunityChat ) ( nil ) , // 11: protobuf.CommunityChat
( * CommunityCategory ) ( nil ) , // 12: protobuf.CommunityCategory
( * RevealedAccount ) ( nil ) , // 13: protobuf.RevealedAccount
( * CommunityRequestToJoin ) ( nil ) , // 14: protobuf.CommunityRequestToJoin
( * CommunityEditSharedAddresses ) ( nil ) , // 15: protobuf.CommunityEditSharedAddresses
( * CommunityCancelRequestToJoin ) ( nil ) , // 16: protobuf.CommunityCancelRequestToJoin
( * CommunityRequestToJoinResponse ) ( nil ) , // 17: protobuf.CommunityRequestToJoinResponse
( * CommunityRequestToLeave ) ( nil ) , // 18: protobuf.CommunityRequestToLeave
( * CommunityMessageArchiveMagnetlink ) ( nil ) , // 19: protobuf.CommunityMessageArchiveMagnetlink
( * WakuMessage ) ( nil ) , // 20: protobuf.WakuMessage
( * WakuMessageArchiveMetadata ) ( nil ) , // 21: protobuf.WakuMessageArchiveMetadata
( * WakuMessageArchive ) ( nil ) , // 22: protobuf.WakuMessageArchive
( * WakuMessageArchiveIndexMetadata ) ( nil ) , // 23: protobuf.WakuMessageArchiveIndexMetadata
( * WakuMessageArchiveIndex ) ( nil ) , // 24: protobuf.WakuMessageArchiveIndex
nil , // 25: protobuf.CommunityTokenMetadata.ContractAddressesEntry
nil , // 26: protobuf.TokenCriteria.ContractAddressesEntry
nil , // 27: protobuf.CommunityDescription.MembersEntry
nil , // 28: protobuf.CommunityDescription.ChatsEntry
nil , // 29: protobuf.CommunityDescription.CategoriesEntry
nil , // 30: protobuf.CommunityDescription.TokenPermissionsEntry
nil , // 31: protobuf.CommunityChat.MembersEntry
nil , // 32: protobuf.WakuMessageArchiveIndex.ArchivesEntry
( CommunityTokenType ) ( 0 ) , // 33: protobuf.CommunityTokenType
( * ChatIdentity ) ( nil ) , // 34: protobuf.ChatIdentity
}
var file_communities_proto_depIdxs = [ ] int32 {
0 , // 0: protobuf.CommunityMember.roles:type_name -> protobuf.CommunityMember.Roles
13 , // 1: protobuf.CommunityMember.revealed_accounts:type_name -> protobuf.RevealedAccount
25 , // 2: protobuf.CommunityTokenMetadata.contract_addresses:type_name -> protobuf.CommunityTokenMetadata.ContractAddressesEntry
33 , // 3: protobuf.CommunityTokenMetadata.tokenType:type_name -> protobuf.CommunityTokenType
1 , // 4: protobuf.CommunityPermissions.access:type_name -> protobuf.CommunityPermissions.Access
26 , // 5: protobuf.TokenCriteria.contract_addresses:type_name -> protobuf.TokenCriteria.ContractAddressesEntry
33 , // 6: protobuf.TokenCriteria.type:type_name -> protobuf.CommunityTokenType
2 , // 7: protobuf.CommunityTokenPermission.type:type_name -> protobuf.CommunityTokenPermission.Type
7 , // 8: protobuf.CommunityTokenPermission.token_criteria:type_name -> protobuf.TokenCriteria
27 , // 9: protobuf.CommunityDescription.members:type_name -> protobuf.CommunityDescription.MembersEntry
6 , // 10: protobuf.CommunityDescription.permissions:type_name -> protobuf.CommunityPermissions
34 , // 11: protobuf.CommunityDescription.identity:type_name -> protobuf.ChatIdentity
28 , // 12: protobuf.CommunityDescription.chats:type_name -> protobuf.CommunityDescription.ChatsEntry
29 , // 13: protobuf.CommunityDescription.categories:type_name -> protobuf.CommunityDescription.CategoriesEntry
10 , // 14: protobuf.CommunityDescription.admin_settings:type_name -> protobuf.CommunityAdminSettings
30 , // 15: protobuf.CommunityDescription.token_permissions:type_name -> protobuf.CommunityDescription.TokenPermissionsEntry
5 , // 16: protobuf.CommunityDescription.community_tokens_metadata:type_name -> protobuf.CommunityTokenMetadata
31 , // 17: protobuf.CommunityChat.members:type_name -> protobuf.CommunityChat.MembersEntry
6 , // 18: protobuf.CommunityChat.permissions:type_name -> protobuf.CommunityPermissions
34 , // 19: protobuf.CommunityChat.identity:type_name -> protobuf.ChatIdentity
13 , // 20: protobuf.CommunityRequestToJoin.revealed_accounts:type_name -> protobuf.RevealedAccount
13 , // 21: protobuf.CommunityEditSharedAddresses.revealed_accounts:type_name -> protobuf.RevealedAccount
9 , // 22: protobuf.CommunityRequestToJoinResponse.community:type_name -> protobuf.CommunityDescription
21 , // 23: protobuf.WakuMessageArchive.metadata:type_name -> protobuf.WakuMessageArchiveMetadata
20 , // 24: protobuf.WakuMessageArchive.messages:type_name -> protobuf.WakuMessage
21 , // 25: protobuf.WakuMessageArchiveIndexMetadata.metadata:type_name -> protobuf.WakuMessageArchiveMetadata
32 , // 26: protobuf.WakuMessageArchiveIndex.archives:type_name -> protobuf.WakuMessageArchiveIndex.ArchivesEntry
4 , // 27: protobuf.CommunityDescription.MembersEntry.value:type_name -> protobuf.CommunityMember
11 , // 28: protobuf.CommunityDescription.ChatsEntry.value:type_name -> protobuf.CommunityChat
12 , // 29: protobuf.CommunityDescription.CategoriesEntry.value:type_name -> protobuf.CommunityCategory
8 , // 30: protobuf.CommunityDescription.TokenPermissionsEntry.value:type_name -> protobuf.CommunityTokenPermission
4 , // 31: protobuf.CommunityChat.MembersEntry.value:type_name -> protobuf.CommunityMember
23 , // 32: protobuf.WakuMessageArchiveIndex.ArchivesEntry.value:type_name -> protobuf.WakuMessageArchiveIndexMetadata
33 , // [33:33] is the sub-list for method output_type
33 , // [33:33] is the sub-list for method input_type
33 , // [33:33] is the sub-list for extension type_name
33 , // [33:33] is the sub-list for extension extendee
0 , // [0:33] is the sub-list for field type_name
}
func init ( ) { file_communities_proto_init ( ) }
func file_communities_proto_init ( ) {
if File_communities_proto != nil {
return
}
file_chat_identity_proto_init ( )
file_enums_proto_init ( )
if ! protoimpl . UnsafeEnabled {
file_communities_proto_msgTypes [ 0 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * Grant ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 1 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityMember ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 2 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityTokenMetadata ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 3 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityPermissions ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 4 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * TokenCriteria ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 5 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityTokenPermission ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 6 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityDescription ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 7 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityAdminSettings ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 8 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityChat ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 9 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityCategory ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 10 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * RevealedAccount ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 11 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityRequestToJoin ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 12 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityEditSharedAddresses ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 13 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityCancelRequestToJoin ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 14 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityRequestToJoinResponse ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 15 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityRequestToLeave ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 16 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * CommunityMessageArchiveMagnetlink ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 17 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * WakuMessage ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 18 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * WakuMessageArchiveMetadata ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 19 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * WakuMessageArchive ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 20 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * WakuMessageArchiveIndexMetadata ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_communities_proto_msgTypes [ 21 ] . Exporter = func ( v interface { } , i int ) interface { } {
switch v := v . ( * WakuMessageArchiveIndex ) ; i {
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
}
type x struct { }
out := protoimpl . TypeBuilder {
File : protoimpl . DescBuilder {
GoPackagePath : reflect . TypeOf ( x { } ) . PkgPath ( ) ,
RawDescriptor : file_communities_proto_rawDesc ,
NumEnums : 3 ,
NumMessages : 30 ,
NumExtensions : 0 ,
NumServices : 0 ,
} ,
GoTypes : file_communities_proto_goTypes ,
DependencyIndexes : file_communities_proto_depIdxs ,
EnumInfos : file_communities_proto_enumTypes ,
MessageInfos : file_communities_proto_msgTypes ,
} . Build ( )
File_communities_proto = out . File
file_communities_proto_rawDesc = nil
file_communities_proto_goTypes = nil
file_communities_proto_depIdxs = nil
2020-11-18 09:16:51 +00:00
}