Merge branch 'superGroup' of github.com:OpenIMSDK/Open-IM-Server into superGroup

# Conflicts:
#	internal/api/group/group.go
This commit is contained in:
wangchuxiao 2022-06-29 11:23:03 +08:00
commit 4eeef63724
13 changed files with 718 additions and 567 deletions

@ -1 +1 @@
Subproject commit 6fc6be9eb996aec24781a3905aeb2c9550a5a041 Subproject commit 588c9bb77b9bd89a9261964006568b8655233cb6

View File

@ -32,6 +32,14 @@ func main() {
authRouterGroup.POST("/login", register.Login) authRouterGroup.POST("/login", register.Login)
authRouterGroup.POST("/reset_password", register.ResetPassword) authRouterGroup.POST("/reset_password", register.ResetPassword)
} }
demoRouterGroup := r.Group("/auth")
{
demoRouterGroup.POST("/code", register.SendVerificationCode)
demoRouterGroup.POST("/verify", register.Verify)
demoRouterGroup.POST("/password", register.SetPassword)
demoRouterGroup.POST("/login", register.Login)
demoRouterGroup.POST("/reset_password", register.ResetPassword)
}
defaultPorts := config.Config.Demo.Port defaultPorts := config.Config.Demo.Port
ginPort := flag.Int("port", defaultPorts[0], "get ginServerPort from cmd,default 42233 as port") ginPort := flag.Int("port", defaultPorts[0], "get ginServerPort from cmd,default 42233 as port")
flag.Parse() flag.Parse()

View File

@ -16,7 +16,7 @@ services:
restart: always restart: always
mongodb: mongodb:
image: mongo:4.0 image: mongo:latest
ports: ports:
- 37017:27017 - 37017:27017
container_name: mongo container_name: mongo

View File

@ -523,8 +523,8 @@ func GetUserReqGroupApplicationList(c *gin.Context) {
} }
log.NewInfo(req.OperationID, RpcResp) log.NewInfo(req.OperationID, RpcResp)
resp := api.GetGroupApplicationListResp{CommResp: api.CommResp{ErrCode: RpcResp.CommonResp.ErrCode, ErrMsg: RpcResp.CommonResp.ErrMsg}, GroupRequestList: RpcResp.GroupRequestList} resp := api.GetGroupApplicationListResp{CommResp: api.CommResp{ErrCode: RpcResp.CommonResp.ErrCode, ErrMsg: RpcResp.CommonResp.ErrMsg}, GroupRequestList: RpcResp.GroupRequestList}
log.NewInfo(req.OperationID, "GetGroupApplicationList api return ", resp)
resp.Data = jsonData.JsonDataList(resp.GroupRequestList) resp.Data = jsonData.JsonDataList(resp.GroupRequestList)
log.NewInfo(req.OperationID, "GetGroupApplicationList api return ", resp)
c.JSON(http.StatusOK, resp) c.JSON(http.StatusOK, resp)
} }
@ -582,6 +582,21 @@ func GetGroupsInfo(c *gin.Context) {
c.JSON(http.StatusOK, resp) c.JSON(http.StatusOK, resp)
} }
//func transferGroupInfo(input []*open_im_sdk.GroupInfo) []*api.GroupInfoAlias {
// var result []*api.GroupInfoAlias
// for _, v := range input {
// t := &api.GroupInfoAlias{}
// utils.CopyStructFields(t, &v)
// if v.NeedVerification != nil {
// t.NeedVerification = v.NeedVerification.Value
// }
// result = append(result, t)
// }
// return result
//}
//process application
// @Summary 处理加群消息 // @Summary 处理加群消息
// @Description 处理加群消息 // @Description 处理加群消息
// @Tags 群组相关 // @Tags 群组相关
@ -761,12 +776,13 @@ func SetGroupInfo(c *gin.Context) {
c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": err.Error()}) c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": err.Error()})
return return
} }
req := &rpc.SetGroupInfoReq{GroupInfo: &open_im_sdk.GroupInfo{}} req := &rpc.SetGroupInfoReq{GroupInfoForSet: &open_im_sdk.GroupInfoForSet{}}
utils.CopyStructFields(req.GroupInfo, &params) utils.CopyStructFields(req.GroupInfoForSet, &params)
req.OperationID = params.OperationID req.OperationID = params.OperationID
if params.NeedVerification != nil { if params.NeedVerification != nil {
req.GroupInfo.NeedVerification = &wrappers.Int32Value{Value: *params.NeedVerification} req.GroupInfoForSet.NeedVerification = &wrappers.Int32Value{Value: *params.NeedVerification}
log.NewInfo(req.OperationID, "NeedVerification ", req.GroupInfoForSet.NeedVerification)
} }
var ok bool var ok bool

View File

@ -81,6 +81,7 @@ func GetSuperGroupsInfo(c *gin.Context) {
c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": err.Error()}) c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": err.Error()})
return return
} }
resp := api.GetSuperGroupsInfoResp{GetGroupInfoResp: api.GetGroupInfoResp{CommResp: api.CommResp{ErrCode: rpcResp.CommonResp.ErrCode, ErrMsg: rpcResp.CommonResp.ErrMsg}, GroupInfoList: rpcResp.GroupInfoList}} resp := api.GetSuperGroupsInfoResp{GetGroupInfoResp: api.GetGroupInfoResp{CommResp: api.CommResp{ErrCode: rpcResp.CommonResp.ErrCode, ErrMsg: rpcResp.CommonResp.ErrMsg}, GroupInfoList: rpcResp.GroupInfoList}}
resp.Data = jsonData.JsonDataList(resp.GroupInfoList) resp.Data = jsonData.JsonDataList(resp.GroupInfoList)
log.NewInfo(req.OperationID, "GetGroupsInfo api return ", resp) log.NewInfo(req.OperationID, "GetGroupsInfo api return ", resp)

View File

@ -553,13 +553,13 @@ func AlterGroupInfo(c *gin.Context) {
return return
} }
reqPb.OpUserID = c.MustGet("userID").(string) reqPb.OpUserID = c.MustGet("userID").(string)
reqPb.GroupInfo = &commonPb.GroupInfo{ reqPb.GroupInfoForSet = &commonPb.GroupInfoForSet{
GroupID: req.GroupID, GroupID: req.GroupID,
GroupName: req.GroupName, GroupName: req.GroupName,
Introduction: req.Introduction, Introduction: req.Introduction,
Notification: req.Notification, Notification: req.Notification,
FaceURL: req.ProfilePhoto, FaceURL: req.ProfilePhoto,
GroupType: int32(req.GroupType), // GroupType: int32(req.GroupType),
} }
etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImGroupName, reqPb.OperationID) etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImGroupName, reqPb.OperationID)
if etcdConn == nil { if etcdConn == nil {

View File

@ -737,11 +737,14 @@ func (s *groupServer) GetGroupsInfo(ctx context.Context, req *pbGroup.GetGroupsI
} }
var groupInfo open_im_sdk.GroupInfo var groupInfo open_im_sdk.GroupInfo
cp.GroupDBCopyOpenIM(&groupInfo, groupInfoFromMysql) cp.GroupDBCopyOpenIM(&groupInfo, groupInfoFromMysql)
//groupInfo.NeedVerification
groupInfo.NeedVerification = groupInfoFromMysql.NeedVerification
groupsInfoList = append(groupsInfoList, &groupInfo) groupsInfoList = append(groupsInfoList, &groupInfo)
} }
resp := pbGroup.GetGroupsInfoResp{GroupInfoList: groupsInfoList} resp := pbGroup.GetGroupsInfoResp{GroupInfoList: groupsInfoList}
log.NewInfo(req.OperationID, "GetGroupsInfo rpc return ", resp.String()) log.NewInfo(req.OperationID, "GetGroupsInfo rpc return ", resp.String())
return &resp, nil return &resp, nil
} }
@ -1027,9 +1030,9 @@ func hasAccess(req *pbGroup.SetGroupInfoReq) bool {
if utils.IsContain(req.OpUserID, config.Config.Manager.AppManagerUid) { if utils.IsContain(req.OpUserID, config.Config.Manager.AppManagerUid) {
return true return true
} }
groupUserInfo, err := imdb.GetGroupMemberInfoByGroupIDAndUserID(req.GroupInfo.GroupID, req.OpUserID) groupUserInfo, err := imdb.GetGroupMemberInfoByGroupIDAndUserID(req.GroupInfoForSet.GroupID, req.OpUserID)
if err != nil { if err != nil {
log.NewError(req.OperationID, "GetGroupMemberInfoByGroupIDAndUserID failed, ", err.Error(), req.GroupInfo.GroupID, req.OpUserID) log.NewError(req.OperationID, "GetGroupMemberInfoByGroupIDAndUserID failed, ", err.Error(), req.GroupInfoForSet.GroupID, req.OpUserID)
return false return false
} }
@ -1046,9 +1049,9 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbGroup.SetGroupInf
return &pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrAccess.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, nil return &pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrAccess.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, nil
} }
group, err := imdb.GetGroupInfoByGroupID(req.GroupInfo.GroupID) group, err := imdb.GetGroupInfoByGroupID(req.GroupInfoForSet.GroupID)
if err != nil { if err != nil {
log.NewError(req.OperationID, "GetGroupInfoByGroupID failed ", err.Error(), req.GroupInfo.GroupID) log.NewError(req.OperationID, "GetGroupInfoByGroupID failed ", err.Error(), req.GroupInfoForSet.GroupID)
return &pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, http.WrapError(constant.ErrDB) return &pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, http.WrapError(constant.ErrDB)
} }
@ -1063,28 +1066,28 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbGroup.SetGroupInf
notification := "" notification := ""
introduction := "" introduction := ""
faceURL := "" faceURL := ""
if group.GroupName != req.GroupInfo.GroupName && req.GroupInfo.GroupName != "" { if group.GroupName != req.GroupInfoForSet.GroupName && req.GroupInfoForSet.GroupName != "" {
changedType = 1 changedType = 1
groupName = req.GroupInfo.GroupName groupName = req.GroupInfoForSet.GroupName
} }
if group.Notification != req.GroupInfo.Notification && req.GroupInfo.Notification != "" { if group.Notification != req.GroupInfoForSet.Notification && req.GroupInfoForSet.Notification != "" {
changedType = changedType | (1 << 1) changedType = changedType | (1 << 1)
notification = req.GroupInfo.Notification notification = req.GroupInfoForSet.Notification
} }
if group.Introduction != req.GroupInfo.Introduction && req.GroupInfo.Introduction != "" { if group.Introduction != req.GroupInfoForSet.Introduction && req.GroupInfoForSet.Introduction != "" {
changedType = changedType | (1 << 2) changedType = changedType | (1 << 2)
introduction = req.GroupInfo.Introduction introduction = req.GroupInfoForSet.Introduction
} }
if group.FaceURL != req.GroupInfo.FaceURL && req.GroupInfo.FaceURL != "" { if group.FaceURL != req.GroupInfoForSet.FaceURL && req.GroupInfoForSet.FaceURL != "" {
changedType = changedType | (1 << 3) changedType = changedType | (1 << 3)
faceURL = req.GroupInfo.FaceURL faceURL = req.GroupInfoForSet.FaceURL
} }
if req.GroupInfo.NeedVerification != nil { if req.GroupInfoForSet.NeedVerification != nil {
changedType = changedType | (1 << 4) changedType = changedType | (1 << 4)
m := make(map[string]interface{}) m := make(map[string]interface{})
m["need_verification"] = req.GroupInfo.NeedVerification.Value m["need_verification"] = req.GroupInfoForSet.NeedVerification.Value
if err := imdb.UpdateGroupInfoDefaultZero(req.GroupInfo.GroupID, m); err != nil { if err := imdb.UpdateGroupInfoDefaultZero(req.GroupInfoForSet.GroupID, m); err != nil {
log.NewError(req.OperationID, "UpdateGroupInfoDefaultZero failed ", err.Error(), m) log.NewError(req.OperationID, "UpdateGroupInfoDefaultZero failed ", err.Error(), m)
return &pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, http.WrapError(constant.ErrDB) return &pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, http.WrapError(constant.ErrDB)
} }
@ -1096,7 +1099,7 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbGroup.SetGroupInf
//} //}
//only administrators can set group information //only administrators can set group information
var groupInfo db.Group var groupInfo db.Group
utils.CopyStructFields(&groupInfo, req.GroupInfo) utils.CopyStructFields(&groupInfo, req.GroupInfoForSet)
err = imdb.SetGroupInfo(groupInfo) err = imdb.SetGroupInfo(groupInfo)
if err != nil { if err != nil {
log.NewError(req.OperationID, "SetGroupInfo failed ", err.Error(), groupInfo) log.NewError(req.OperationID, "SetGroupInfo failed ", err.Error(), groupInfo)
@ -1104,11 +1107,11 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbGroup.SetGroupInf
} }
log.NewInfo(req.OperationID, "SetGroupInfo rpc return ", pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{}}) log.NewInfo(req.OperationID, "SetGroupInfo rpc return ", pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{}})
if changedType != 0 { if changedType != 0 {
chat.GroupInfoSetNotification(req.OperationID, req.OpUserID, req.GroupInfo.GroupID, groupName, notification, introduction, faceURL, req.GroupInfo.NeedVerification) chat.GroupInfoSetNotification(req.OperationID, req.OpUserID, req.GroupInfoForSet.GroupID, groupName, notification, introduction, faceURL, req.GroupInfoForSet.NeedVerification)
} }
if req.GroupInfo.Notification != "" { if req.GroupInfoForSet.Notification != "" {
//get group member user id //get group member user id
getGroupMemberIDListFromCacheReq := &pbCache.GetGroupMemberIDListFromCacheReq{OperationID: req.OperationID, GroupID: req.GroupInfo.GroupID} getGroupMemberIDListFromCacheReq := &pbCache.GetGroupMemberIDListFromCacheReq{OperationID: req.OperationID, GroupID: req.GroupInfoForSet.GroupID}
etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImCacheName, req.OperationID) etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImCacheName, req.OperationID)
if etcdConn == nil { if etcdConn == nil {
errMsg := req.OperationID + "getcdv3.GetConn == nil" errMsg := req.OperationID + "getcdv3.GetConn == nil"
@ -1129,9 +1132,9 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbGroup.SetGroupInf
conversation := pbConversation.Conversation{ conversation := pbConversation.Conversation{
OwnerUserID: req.OpUserID, OwnerUserID: req.OpUserID,
ConversationID: utils.GetConversationIDBySessionType(req.GroupInfo.GroupID, constant.GroupChatType), ConversationID: utils.GetConversationIDBySessionType(req.GroupInfoForSet.GroupID, constant.GroupChatType),
ConversationType: constant.GroupChatType, ConversationType: constant.GroupChatType,
GroupID: req.GroupInfo.GroupID, GroupID: req.GroupInfoForSet.GroupID,
} }
conversationReq.Conversation = &conversation conversationReq.Conversation = &conversation
conversationReq.OperationID = req.OperationID conversationReq.OperationID = req.OperationID

View File

@ -242,7 +242,9 @@ func GroupInfoSetNotification(operationID, opUserID, groupID string, groupName,
GroupInfoChangedTips.Group.Notification = notification GroupInfoChangedTips.Group.Notification = notification
GroupInfoChangedTips.Group.Introduction = introduction GroupInfoChangedTips.Group.Introduction = introduction
GroupInfoChangedTips.Group.FaceURL = faceURL GroupInfoChangedTips.Group.FaceURL = faceURL
GroupInfoChangedTips.Group.NeedVerification = needVerification if needVerification != nil {
GroupInfoChangedTips.Group.NeedVerification = needVerification.Value
}
if err := setOpUserInfo(opUserID, groupID, GroupInfoChangedTips.OpUser); err != nil { if err := setOpUserInfo(opUserID, groupID, GroupInfoChangedTips.OpUser); err != nil {
log.Error(operationID, "setOpUserInfo failed ", err.Error(), opUserID, groupID) log.Error(operationID, "setOpUserInfo failed ", err.Error(), opUserID, groupID)

View File

@ -128,6 +128,27 @@ type GetGroupInfoResp struct {
Data []map[string]interface{} `json:"data"` Data []map[string]interface{} `json:"data"`
} }
//type GroupInfoAlias struct {
// open_im_sdk.GroupInfo
// NeedVerification int32 `protobuf:"bytes,13,opt,name=needVerification" json:"needVerification,omitempty"`
//}
//type GroupInfoAlias struct {
// GroupID string `protobuf:"bytes,1,opt,name=groupID" json:"groupID,omitempty"`
// GroupName string `protobuf:"bytes,2,opt,name=groupName" json:"groupName,omitempty"`
// Notification string `protobuf:"bytes,3,opt,name=notification" json:"notification,omitempty"`
// Introduction string `protobuf:"bytes,4,opt,name=introduction" json:"introduction,omitempty"`
// FaceURL string `protobuf:"bytes,5,opt,name=faceURL" json:"faceURL,omitempty"`
// OwnerUserID string `protobuf:"bytes,6,opt,name=ownerUserID" json:"ownerUserID,omitempty"`
// CreateTime uint32 `protobuf:"varint,7,opt,name=createTime" json:"createTime,omitempty"`
// MemberCount uint32 `protobuf:"varint,8,opt,name=memberCount" json:"memberCount,omitempty"`
// Ex string `protobuf:"bytes,9,opt,name=ex" json:"ex,omitempty"`
// Status int32 `protobuf:"varint,10,opt,name=status" json:"status,omitempty"`
// CreatorUserID string `protobuf:"bytes,11,opt,name=creatorUserID" json:"creatorUserID,omitempty"`
// GroupType int32 `protobuf:"varint,12,opt,name=groupType" json:"groupType,omitempty"`
// NeedVerification int32 `protobuf:"bytes,13,opt,name=needVerification" json:"needVerification,omitempty"`
//}
type ApplicationGroupResponseReq struct { type ApplicationGroupResponseReq struct {
OperationID string `json:"operationID" binding:"required"` OperationID string `json:"operationID" binding:"required"`
GroupID string `json:"groupID" binding:"required"` GroupID string `json:"groupID" binding:"required"`

View File

@ -37,7 +37,7 @@ func (m *CommonResp) Reset() { *m = CommonResp{} }
func (m *CommonResp) String() string { return proto.CompactTextString(m) } func (m *CommonResp) String() string { return proto.CompactTextString(m) }
func (*CommonResp) ProtoMessage() {} func (*CommonResp) ProtoMessage() {}
func (*CommonResp) Descriptor() ([]byte, []int) { func (*CommonResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{0} return fileDescriptor_group_40c147a29abb4e60, []int{0}
} }
func (m *CommonResp) XXX_Unmarshal(b []byte) error { func (m *CommonResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommonResp.Unmarshal(m, b) return xxx_messageInfo_CommonResp.Unmarshal(m, b)
@ -83,7 +83,7 @@ func (m *GroupAddMemberInfo) Reset() { *m = GroupAddMemberInfo{} }
func (m *GroupAddMemberInfo) String() string { return proto.CompactTextString(m) } func (m *GroupAddMemberInfo) String() string { return proto.CompactTextString(m) }
func (*GroupAddMemberInfo) ProtoMessage() {} func (*GroupAddMemberInfo) ProtoMessage() {}
func (*GroupAddMemberInfo) Descriptor() ([]byte, []int) { func (*GroupAddMemberInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{1} return fileDescriptor_group_40c147a29abb4e60, []int{1}
} }
func (m *GroupAddMemberInfo) XXX_Unmarshal(b []byte) error { func (m *GroupAddMemberInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupAddMemberInfo.Unmarshal(m, b) return xxx_messageInfo_GroupAddMemberInfo.Unmarshal(m, b)
@ -132,7 +132,7 @@ func (m *CreateGroupReq) Reset() { *m = CreateGroupReq{} }
func (m *CreateGroupReq) String() string { return proto.CompactTextString(m) } func (m *CreateGroupReq) String() string { return proto.CompactTextString(m) }
func (*CreateGroupReq) ProtoMessage() {} func (*CreateGroupReq) ProtoMessage() {}
func (*CreateGroupReq) Descriptor() ([]byte, []int) { func (*CreateGroupReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{2} return fileDescriptor_group_40c147a29abb4e60, []int{2}
} }
func (m *CreateGroupReq) XXX_Unmarshal(b []byte) error { func (m *CreateGroupReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateGroupReq.Unmarshal(m, b) return xxx_messageInfo_CreateGroupReq.Unmarshal(m, b)
@ -200,7 +200,7 @@ func (m *CreateGroupResp) Reset() { *m = CreateGroupResp{} }
func (m *CreateGroupResp) String() string { return proto.CompactTextString(m) } func (m *CreateGroupResp) String() string { return proto.CompactTextString(m) }
func (*CreateGroupResp) ProtoMessage() {} func (*CreateGroupResp) ProtoMessage() {}
func (*CreateGroupResp) Descriptor() ([]byte, []int) { func (*CreateGroupResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{3} return fileDescriptor_group_40c147a29abb4e60, []int{3}
} }
func (m *CreateGroupResp) XXX_Unmarshal(b []byte) error { func (m *CreateGroupResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateGroupResp.Unmarshal(m, b) return xxx_messageInfo_CreateGroupResp.Unmarshal(m, b)
@ -254,7 +254,7 @@ func (m *GetGroupsInfoReq) Reset() { *m = GetGroupsInfoReq{} }
func (m *GetGroupsInfoReq) String() string { return proto.CompactTextString(m) } func (m *GetGroupsInfoReq) String() string { return proto.CompactTextString(m) }
func (*GetGroupsInfoReq) ProtoMessage() {} func (*GetGroupsInfoReq) ProtoMessage() {}
func (*GetGroupsInfoReq) Descriptor() ([]byte, []int) { func (*GetGroupsInfoReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{4} return fileDescriptor_group_40c147a29abb4e60, []int{4}
} }
func (m *GetGroupsInfoReq) XXX_Unmarshal(b []byte) error { func (m *GetGroupsInfoReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupsInfoReq.Unmarshal(m, b) return xxx_messageInfo_GetGroupsInfoReq.Unmarshal(m, b)
@ -308,7 +308,7 @@ func (m *GetGroupsInfoResp) Reset() { *m = GetGroupsInfoResp{} }
func (m *GetGroupsInfoResp) String() string { return proto.CompactTextString(m) } func (m *GetGroupsInfoResp) String() string { return proto.CompactTextString(m) }
func (*GetGroupsInfoResp) ProtoMessage() {} func (*GetGroupsInfoResp) ProtoMessage() {}
func (*GetGroupsInfoResp) Descriptor() ([]byte, []int) { func (*GetGroupsInfoResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{5} return fileDescriptor_group_40c147a29abb4e60, []int{5}
} }
func (m *GetGroupsInfoResp) XXX_Unmarshal(b []byte) error { func (m *GetGroupsInfoResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupsInfoResp.Unmarshal(m, b) return xxx_messageInfo_GetGroupsInfoResp.Unmarshal(m, b)
@ -350,19 +350,19 @@ func (m *GetGroupsInfoResp) GetGroupInfoList() []*sdk_ws.GroupInfo {
} }
type SetGroupInfoReq struct { type SetGroupInfoReq struct {
GroupInfo *sdk_ws.GroupInfo `protobuf:"bytes,1,opt,name=GroupInfo" json:"GroupInfo,omitempty"` GroupInfoForSet *sdk_ws.GroupInfoForSet `protobuf:"bytes,1,opt,name=groupInfoForSet" json:"groupInfoForSet,omitempty"`
OpUserID string `protobuf:"bytes,2,opt,name=OpUserID" json:"OpUserID,omitempty"` OpUserID string `protobuf:"bytes,2,opt,name=OpUserID" json:"OpUserID,omitempty"`
OperationID string `protobuf:"bytes,3,opt,name=OperationID" json:"OperationID,omitempty"` OperationID string `protobuf:"bytes,3,opt,name=OperationID" json:"OperationID,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"` XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"` XXX_sizecache int32 `json:"-"`
} }
func (m *SetGroupInfoReq) Reset() { *m = SetGroupInfoReq{} } func (m *SetGroupInfoReq) Reset() { *m = SetGroupInfoReq{} }
func (m *SetGroupInfoReq) String() string { return proto.CompactTextString(m) } func (m *SetGroupInfoReq) String() string { return proto.CompactTextString(m) }
func (*SetGroupInfoReq) ProtoMessage() {} func (*SetGroupInfoReq) ProtoMessage() {}
func (*SetGroupInfoReq) Descriptor() ([]byte, []int) { func (*SetGroupInfoReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{6} return fileDescriptor_group_40c147a29abb4e60, []int{6}
} }
func (m *SetGroupInfoReq) XXX_Unmarshal(b []byte) error { func (m *SetGroupInfoReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetGroupInfoReq.Unmarshal(m, b) return xxx_messageInfo_SetGroupInfoReq.Unmarshal(m, b)
@ -382,9 +382,9 @@ func (m *SetGroupInfoReq) XXX_DiscardUnknown() {
var xxx_messageInfo_SetGroupInfoReq proto.InternalMessageInfo var xxx_messageInfo_SetGroupInfoReq proto.InternalMessageInfo
func (m *SetGroupInfoReq) GetGroupInfo() *sdk_ws.GroupInfo { func (m *SetGroupInfoReq) GetGroupInfoForSet() *sdk_ws.GroupInfoForSet {
if m != nil { if m != nil {
return m.GroupInfo return m.GroupInfoForSet
} }
return nil return nil
} }
@ -414,7 +414,7 @@ func (m *SetGroupInfoResp) Reset() { *m = SetGroupInfoResp{} }
func (m *SetGroupInfoResp) String() string { return proto.CompactTextString(m) } func (m *SetGroupInfoResp) String() string { return proto.CompactTextString(m) }
func (*SetGroupInfoResp) ProtoMessage() {} func (*SetGroupInfoResp) ProtoMessage() {}
func (*SetGroupInfoResp) Descriptor() ([]byte, []int) { func (*SetGroupInfoResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{7} return fileDescriptor_group_40c147a29abb4e60, []int{7}
} }
func (m *SetGroupInfoResp) XXX_Unmarshal(b []byte) error { func (m *SetGroupInfoResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetGroupInfoResp.Unmarshal(m, b) return xxx_messageInfo_SetGroupInfoResp.Unmarshal(m, b)
@ -454,7 +454,7 @@ func (m *GetGroupApplicationListReq) Reset() { *m = GetGroupApplicationL
func (m *GetGroupApplicationListReq) String() string { return proto.CompactTextString(m) } func (m *GetGroupApplicationListReq) String() string { return proto.CompactTextString(m) }
func (*GetGroupApplicationListReq) ProtoMessage() {} func (*GetGroupApplicationListReq) ProtoMessage() {}
func (*GetGroupApplicationListReq) Descriptor() ([]byte, []int) { func (*GetGroupApplicationListReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{8} return fileDescriptor_group_40c147a29abb4e60, []int{8}
} }
func (m *GetGroupApplicationListReq) XXX_Unmarshal(b []byte) error { func (m *GetGroupApplicationListReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupApplicationListReq.Unmarshal(m, b) return xxx_messageInfo_GetGroupApplicationListReq.Unmarshal(m, b)
@ -508,7 +508,7 @@ func (m *GetGroupApplicationListResp) Reset() { *m = GetGroupApplication
func (m *GetGroupApplicationListResp) String() string { return proto.CompactTextString(m) } func (m *GetGroupApplicationListResp) String() string { return proto.CompactTextString(m) }
func (*GetGroupApplicationListResp) ProtoMessage() {} func (*GetGroupApplicationListResp) ProtoMessage() {}
func (*GetGroupApplicationListResp) Descriptor() ([]byte, []int) { func (*GetGroupApplicationListResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{9} return fileDescriptor_group_40c147a29abb4e60, []int{9}
} }
func (m *GetGroupApplicationListResp) XXX_Unmarshal(b []byte) error { func (m *GetGroupApplicationListResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupApplicationListResp.Unmarshal(m, b) return xxx_messageInfo_GetGroupApplicationListResp.Unmarshal(m, b)
@ -562,7 +562,7 @@ func (m *GetUserReqApplicationListReq) Reset() { *m = GetUserReqApplicat
func (m *GetUserReqApplicationListReq) String() string { return proto.CompactTextString(m) } func (m *GetUserReqApplicationListReq) String() string { return proto.CompactTextString(m) }
func (*GetUserReqApplicationListReq) ProtoMessage() {} func (*GetUserReqApplicationListReq) ProtoMessage() {}
func (*GetUserReqApplicationListReq) Descriptor() ([]byte, []int) { func (*GetUserReqApplicationListReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{10} return fileDescriptor_group_40c147a29abb4e60, []int{10}
} }
func (m *GetUserReqApplicationListReq) XXX_Unmarshal(b []byte) error { func (m *GetUserReqApplicationListReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetUserReqApplicationListReq.Unmarshal(m, b) return xxx_messageInfo_GetUserReqApplicationListReq.Unmarshal(m, b)
@ -615,7 +615,7 @@ func (m *GetUserReqApplicationListResp) Reset() { *m = GetUserReqApplica
func (m *GetUserReqApplicationListResp) String() string { return proto.CompactTextString(m) } func (m *GetUserReqApplicationListResp) String() string { return proto.CompactTextString(m) }
func (*GetUserReqApplicationListResp) ProtoMessage() {} func (*GetUserReqApplicationListResp) ProtoMessage() {}
func (*GetUserReqApplicationListResp) Descriptor() ([]byte, []int) { func (*GetUserReqApplicationListResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{11} return fileDescriptor_group_40c147a29abb4e60, []int{11}
} }
func (m *GetUserReqApplicationListResp) XXX_Unmarshal(b []byte) error { func (m *GetUserReqApplicationListResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetUserReqApplicationListResp.Unmarshal(m, b) return xxx_messageInfo_GetUserReqApplicationListResp.Unmarshal(m, b)
@ -664,7 +664,7 @@ func (m *TransferGroupOwnerReq) Reset() { *m = TransferGroupOwnerReq{} }
func (m *TransferGroupOwnerReq) String() string { return proto.CompactTextString(m) } func (m *TransferGroupOwnerReq) String() string { return proto.CompactTextString(m) }
func (*TransferGroupOwnerReq) ProtoMessage() {} func (*TransferGroupOwnerReq) ProtoMessage() {}
func (*TransferGroupOwnerReq) Descriptor() ([]byte, []int) { func (*TransferGroupOwnerReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{12} return fileDescriptor_group_40c147a29abb4e60, []int{12}
} }
func (m *TransferGroupOwnerReq) XXX_Unmarshal(b []byte) error { func (m *TransferGroupOwnerReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TransferGroupOwnerReq.Unmarshal(m, b) return xxx_messageInfo_TransferGroupOwnerReq.Unmarshal(m, b)
@ -730,7 +730,7 @@ func (m *TransferGroupOwnerResp) Reset() { *m = TransferGroupOwnerResp{}
func (m *TransferGroupOwnerResp) String() string { return proto.CompactTextString(m) } func (m *TransferGroupOwnerResp) String() string { return proto.CompactTextString(m) }
func (*TransferGroupOwnerResp) ProtoMessage() {} func (*TransferGroupOwnerResp) ProtoMessage() {}
func (*TransferGroupOwnerResp) Descriptor() ([]byte, []int) { func (*TransferGroupOwnerResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{13} return fileDescriptor_group_40c147a29abb4e60, []int{13}
} }
func (m *TransferGroupOwnerResp) XXX_Unmarshal(b []byte) error { func (m *TransferGroupOwnerResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TransferGroupOwnerResp.Unmarshal(m, b) return xxx_messageInfo_TransferGroupOwnerResp.Unmarshal(m, b)
@ -771,7 +771,7 @@ func (m *JoinGroupReq) Reset() { *m = JoinGroupReq{} }
func (m *JoinGroupReq) String() string { return proto.CompactTextString(m) } func (m *JoinGroupReq) String() string { return proto.CompactTextString(m) }
func (*JoinGroupReq) ProtoMessage() {} func (*JoinGroupReq) ProtoMessage() {}
func (*JoinGroupReq) Descriptor() ([]byte, []int) { func (*JoinGroupReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{14} return fileDescriptor_group_40c147a29abb4e60, []int{14}
} }
func (m *JoinGroupReq) XXX_Unmarshal(b []byte) error { func (m *JoinGroupReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_JoinGroupReq.Unmarshal(m, b) return xxx_messageInfo_JoinGroupReq.Unmarshal(m, b)
@ -830,7 +830,7 @@ func (m *JoinGroupResp) Reset() { *m = JoinGroupResp{} }
func (m *JoinGroupResp) String() string { return proto.CompactTextString(m) } func (m *JoinGroupResp) String() string { return proto.CompactTextString(m) }
func (*JoinGroupResp) ProtoMessage() {} func (*JoinGroupResp) ProtoMessage() {}
func (*JoinGroupResp) Descriptor() ([]byte, []int) { func (*JoinGroupResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{15} return fileDescriptor_group_40c147a29abb4e60, []int{15}
} }
func (m *JoinGroupResp) XXX_Unmarshal(b []byte) error { func (m *JoinGroupResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_JoinGroupResp.Unmarshal(m, b) return xxx_messageInfo_JoinGroupResp.Unmarshal(m, b)
@ -873,7 +873,7 @@ func (m *GroupApplicationResponseReq) Reset() { *m = GroupApplicationRes
func (m *GroupApplicationResponseReq) String() string { return proto.CompactTextString(m) } func (m *GroupApplicationResponseReq) String() string { return proto.CompactTextString(m) }
func (*GroupApplicationResponseReq) ProtoMessage() {} func (*GroupApplicationResponseReq) ProtoMessage() {}
func (*GroupApplicationResponseReq) Descriptor() ([]byte, []int) { func (*GroupApplicationResponseReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{16} return fileDescriptor_group_40c147a29abb4e60, []int{16}
} }
func (m *GroupApplicationResponseReq) XXX_Unmarshal(b []byte) error { func (m *GroupApplicationResponseReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupApplicationResponseReq.Unmarshal(m, b) return xxx_messageInfo_GroupApplicationResponseReq.Unmarshal(m, b)
@ -946,7 +946,7 @@ func (m *GroupApplicationResponseResp) Reset() { *m = GroupApplicationRe
func (m *GroupApplicationResponseResp) String() string { return proto.CompactTextString(m) } func (m *GroupApplicationResponseResp) String() string { return proto.CompactTextString(m) }
func (*GroupApplicationResponseResp) ProtoMessage() {} func (*GroupApplicationResponseResp) ProtoMessage() {}
func (*GroupApplicationResponseResp) Descriptor() ([]byte, []int) { func (*GroupApplicationResponseResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{17} return fileDescriptor_group_40c147a29abb4e60, []int{17}
} }
func (m *GroupApplicationResponseResp) XXX_Unmarshal(b []byte) error { func (m *GroupApplicationResponseResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupApplicationResponseResp.Unmarshal(m, b) return xxx_messageInfo_GroupApplicationResponseResp.Unmarshal(m, b)
@ -986,7 +986,7 @@ func (m *QuitGroupReq) Reset() { *m = QuitGroupReq{} }
func (m *QuitGroupReq) String() string { return proto.CompactTextString(m) } func (m *QuitGroupReq) String() string { return proto.CompactTextString(m) }
func (*QuitGroupReq) ProtoMessage() {} func (*QuitGroupReq) ProtoMessage() {}
func (*QuitGroupReq) Descriptor() ([]byte, []int) { func (*QuitGroupReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{18} return fileDescriptor_group_40c147a29abb4e60, []int{18}
} }
func (m *QuitGroupReq) XXX_Unmarshal(b []byte) error { func (m *QuitGroupReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_QuitGroupReq.Unmarshal(m, b) return xxx_messageInfo_QuitGroupReq.Unmarshal(m, b)
@ -1038,7 +1038,7 @@ func (m *QuitGroupResp) Reset() { *m = QuitGroupResp{} }
func (m *QuitGroupResp) String() string { return proto.CompactTextString(m) } func (m *QuitGroupResp) String() string { return proto.CompactTextString(m) }
func (*QuitGroupResp) ProtoMessage() {} func (*QuitGroupResp) ProtoMessage() {}
func (*QuitGroupResp) Descriptor() ([]byte, []int) { func (*QuitGroupResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{19} return fileDescriptor_group_40c147a29abb4e60, []int{19}
} }
func (m *QuitGroupResp) XXX_Unmarshal(b []byte) error { func (m *QuitGroupResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_QuitGroupResp.Unmarshal(m, b) return xxx_messageInfo_QuitGroupResp.Unmarshal(m, b)
@ -1080,7 +1080,7 @@ func (m *GetGroupMemberListReq) Reset() { *m = GetGroupMemberListReq{} }
func (m *GetGroupMemberListReq) String() string { return proto.CompactTextString(m) } func (m *GetGroupMemberListReq) String() string { return proto.CompactTextString(m) }
func (*GetGroupMemberListReq) ProtoMessage() {} func (*GetGroupMemberListReq) ProtoMessage() {}
func (*GetGroupMemberListReq) Descriptor() ([]byte, []int) { func (*GetGroupMemberListReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{20} return fileDescriptor_group_40c147a29abb4e60, []int{20}
} }
func (m *GetGroupMemberListReq) XXX_Unmarshal(b []byte) error { func (m *GetGroupMemberListReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupMemberListReq.Unmarshal(m, b) return xxx_messageInfo_GetGroupMemberListReq.Unmarshal(m, b)
@ -1149,7 +1149,7 @@ func (m *GetGroupMemberListResp) Reset() { *m = GetGroupMemberListResp{}
func (m *GetGroupMemberListResp) String() string { return proto.CompactTextString(m) } func (m *GetGroupMemberListResp) String() string { return proto.CompactTextString(m) }
func (*GetGroupMemberListResp) ProtoMessage() {} func (*GetGroupMemberListResp) ProtoMessage() {}
func (*GetGroupMemberListResp) Descriptor() ([]byte, []int) { func (*GetGroupMemberListResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{21} return fileDescriptor_group_40c147a29abb4e60, []int{21}
} }
func (m *GetGroupMemberListResp) XXX_Unmarshal(b []byte) error { func (m *GetGroupMemberListResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupMemberListResp.Unmarshal(m, b) return xxx_messageInfo_GetGroupMemberListResp.Unmarshal(m, b)
@ -1211,7 +1211,7 @@ func (m *GetGroupMembersInfoReq) Reset() { *m = GetGroupMembersInfoReq{}
func (m *GetGroupMembersInfoReq) String() string { return proto.CompactTextString(m) } func (m *GetGroupMembersInfoReq) String() string { return proto.CompactTextString(m) }
func (*GetGroupMembersInfoReq) ProtoMessage() {} func (*GetGroupMembersInfoReq) ProtoMessage() {}
func (*GetGroupMembersInfoReq) Descriptor() ([]byte, []int) { func (*GetGroupMembersInfoReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{22} return fileDescriptor_group_40c147a29abb4e60, []int{22}
} }
func (m *GetGroupMembersInfoReq) XXX_Unmarshal(b []byte) error { func (m *GetGroupMembersInfoReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupMembersInfoReq.Unmarshal(m, b) return xxx_messageInfo_GetGroupMembersInfoReq.Unmarshal(m, b)
@ -1272,7 +1272,7 @@ func (m *GetGroupMembersInfoResp) Reset() { *m = GetGroupMembersInfoResp
func (m *GetGroupMembersInfoResp) String() string { return proto.CompactTextString(m) } func (m *GetGroupMembersInfoResp) String() string { return proto.CompactTextString(m) }
func (*GetGroupMembersInfoResp) ProtoMessage() {} func (*GetGroupMembersInfoResp) ProtoMessage() {}
func (*GetGroupMembersInfoResp) Descriptor() ([]byte, []int) { func (*GetGroupMembersInfoResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{23} return fileDescriptor_group_40c147a29abb4e60, []int{23}
} }
func (m *GetGroupMembersInfoResp) XXX_Unmarshal(b []byte) error { func (m *GetGroupMembersInfoResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupMembersInfoResp.Unmarshal(m, b) return xxx_messageInfo_GetGroupMembersInfoResp.Unmarshal(m, b)
@ -1328,7 +1328,7 @@ func (m *KickGroupMemberReq) Reset() { *m = KickGroupMemberReq{} }
func (m *KickGroupMemberReq) String() string { return proto.CompactTextString(m) } func (m *KickGroupMemberReq) String() string { return proto.CompactTextString(m) }
func (*KickGroupMemberReq) ProtoMessage() {} func (*KickGroupMemberReq) ProtoMessage() {}
func (*KickGroupMemberReq) Descriptor() ([]byte, []int) { func (*KickGroupMemberReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{24} return fileDescriptor_group_40c147a29abb4e60, []int{24}
} }
func (m *KickGroupMemberReq) XXX_Unmarshal(b []byte) error { func (m *KickGroupMemberReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_KickGroupMemberReq.Unmarshal(m, b) return xxx_messageInfo_KickGroupMemberReq.Unmarshal(m, b)
@ -1395,7 +1395,7 @@ func (m *Id2Result) Reset() { *m = Id2Result{} }
func (m *Id2Result) String() string { return proto.CompactTextString(m) } func (m *Id2Result) String() string { return proto.CompactTextString(m) }
func (*Id2Result) ProtoMessage() {} func (*Id2Result) ProtoMessage() {}
func (*Id2Result) Descriptor() ([]byte, []int) { func (*Id2Result) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{25} return fileDescriptor_group_40c147a29abb4e60, []int{25}
} }
func (m *Id2Result) XXX_Unmarshal(b []byte) error { func (m *Id2Result) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Id2Result.Unmarshal(m, b) return xxx_messageInfo_Id2Result.Unmarshal(m, b)
@ -1442,7 +1442,7 @@ func (m *KickGroupMemberResp) Reset() { *m = KickGroupMemberResp{} }
func (m *KickGroupMemberResp) String() string { return proto.CompactTextString(m) } func (m *KickGroupMemberResp) String() string { return proto.CompactTextString(m) }
func (*KickGroupMemberResp) ProtoMessage() {} func (*KickGroupMemberResp) ProtoMessage() {}
func (*KickGroupMemberResp) Descriptor() ([]byte, []int) { func (*KickGroupMemberResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{26} return fileDescriptor_group_40c147a29abb4e60, []int{26}
} }
func (m *KickGroupMemberResp) XXX_Unmarshal(b []byte) error { func (m *KickGroupMemberResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_KickGroupMemberResp.Unmarshal(m, b) return xxx_messageInfo_KickGroupMemberResp.Unmarshal(m, b)
@ -1496,7 +1496,7 @@ func (m *GetJoinedGroupListReq) Reset() { *m = GetJoinedGroupListReq{} }
func (m *GetJoinedGroupListReq) String() string { return proto.CompactTextString(m) } func (m *GetJoinedGroupListReq) String() string { return proto.CompactTextString(m) }
func (*GetJoinedGroupListReq) ProtoMessage() {} func (*GetJoinedGroupListReq) ProtoMessage() {}
func (*GetJoinedGroupListReq) Descriptor() ([]byte, []int) { func (*GetJoinedGroupListReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{27} return fileDescriptor_group_40c147a29abb4e60, []int{27}
} }
func (m *GetJoinedGroupListReq) XXX_Unmarshal(b []byte) error { func (m *GetJoinedGroupListReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetJoinedGroupListReq.Unmarshal(m, b) return xxx_messageInfo_GetJoinedGroupListReq.Unmarshal(m, b)
@ -1550,7 +1550,7 @@ func (m *GetJoinedGroupListResp) Reset() { *m = GetJoinedGroupListResp{}
func (m *GetJoinedGroupListResp) String() string { return proto.CompactTextString(m) } func (m *GetJoinedGroupListResp) String() string { return proto.CompactTextString(m) }
func (*GetJoinedGroupListResp) ProtoMessage() {} func (*GetJoinedGroupListResp) ProtoMessage() {}
func (*GetJoinedGroupListResp) Descriptor() ([]byte, []int) { func (*GetJoinedGroupListResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{28} return fileDescriptor_group_40c147a29abb4e60, []int{28}
} }
func (m *GetJoinedGroupListResp) XXX_Unmarshal(b []byte) error { func (m *GetJoinedGroupListResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetJoinedGroupListResp.Unmarshal(m, b) return xxx_messageInfo_GetJoinedGroupListResp.Unmarshal(m, b)
@ -1606,7 +1606,7 @@ func (m *InviteUserToGroupReq) Reset() { *m = InviteUserToGroupReq{} }
func (m *InviteUserToGroupReq) String() string { return proto.CompactTextString(m) } func (m *InviteUserToGroupReq) String() string { return proto.CompactTextString(m) }
func (*InviteUserToGroupReq) ProtoMessage() {} func (*InviteUserToGroupReq) ProtoMessage() {}
func (*InviteUserToGroupReq) Descriptor() ([]byte, []int) { func (*InviteUserToGroupReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{29} return fileDescriptor_group_40c147a29abb4e60, []int{29}
} }
func (m *InviteUserToGroupReq) XXX_Unmarshal(b []byte) error { func (m *InviteUserToGroupReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_InviteUserToGroupReq.Unmarshal(m, b) return xxx_messageInfo_InviteUserToGroupReq.Unmarshal(m, b)
@ -1674,7 +1674,7 @@ func (m *InviteUserToGroupResp) Reset() { *m = InviteUserToGroupResp{} }
func (m *InviteUserToGroupResp) String() string { return proto.CompactTextString(m) } func (m *InviteUserToGroupResp) String() string { return proto.CompactTextString(m) }
func (*InviteUserToGroupResp) ProtoMessage() {} func (*InviteUserToGroupResp) ProtoMessage() {}
func (*InviteUserToGroupResp) Descriptor() ([]byte, []int) { func (*InviteUserToGroupResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{30} return fileDescriptor_group_40c147a29abb4e60, []int{30}
} }
func (m *InviteUserToGroupResp) XXX_Unmarshal(b []byte) error { func (m *InviteUserToGroupResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_InviteUserToGroupResp.Unmarshal(m, b) return xxx_messageInfo_InviteUserToGroupResp.Unmarshal(m, b)
@ -1728,7 +1728,7 @@ func (m *GetGroupAllMemberReq) Reset() { *m = GetGroupAllMemberReq{} }
func (m *GetGroupAllMemberReq) String() string { return proto.CompactTextString(m) } func (m *GetGroupAllMemberReq) String() string { return proto.CompactTextString(m) }
func (*GetGroupAllMemberReq) ProtoMessage() {} func (*GetGroupAllMemberReq) ProtoMessage() {}
func (*GetGroupAllMemberReq) Descriptor() ([]byte, []int) { func (*GetGroupAllMemberReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{31} return fileDescriptor_group_40c147a29abb4e60, []int{31}
} }
func (m *GetGroupAllMemberReq) XXX_Unmarshal(b []byte) error { func (m *GetGroupAllMemberReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupAllMemberReq.Unmarshal(m, b) return xxx_messageInfo_GetGroupAllMemberReq.Unmarshal(m, b)
@ -1782,7 +1782,7 @@ func (m *GetGroupAllMemberResp) Reset() { *m = GetGroupAllMemberResp{} }
func (m *GetGroupAllMemberResp) String() string { return proto.CompactTextString(m) } func (m *GetGroupAllMemberResp) String() string { return proto.CompactTextString(m) }
func (*GetGroupAllMemberResp) ProtoMessage() {} func (*GetGroupAllMemberResp) ProtoMessage() {}
func (*GetGroupAllMemberResp) Descriptor() ([]byte, []int) { func (*GetGroupAllMemberResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{32} return fileDescriptor_group_40c147a29abb4e60, []int{32}
} }
func (m *GetGroupAllMemberResp) XXX_Unmarshal(b []byte) error { func (m *GetGroupAllMemberResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupAllMemberResp.Unmarshal(m, b) return xxx_messageInfo_GetGroupAllMemberResp.Unmarshal(m, b)
@ -1836,7 +1836,7 @@ func (m *CMSGroup) Reset() { *m = CMSGroup{} }
func (m *CMSGroup) String() string { return proto.CompactTextString(m) } func (m *CMSGroup) String() string { return proto.CompactTextString(m) }
func (*CMSGroup) ProtoMessage() {} func (*CMSGroup) ProtoMessage() {}
func (*CMSGroup) Descriptor() ([]byte, []int) { func (*CMSGroup) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{33} return fileDescriptor_group_40c147a29abb4e60, []int{33}
} }
func (m *CMSGroup) XXX_Unmarshal(b []byte) error { func (m *CMSGroup) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CMSGroup.Unmarshal(m, b) return xxx_messageInfo_CMSGroup.Unmarshal(m, b)
@ -1890,7 +1890,7 @@ func (m *GetGroupReq) Reset() { *m = GetGroupReq{} }
func (m *GetGroupReq) String() string { return proto.CompactTextString(m) } func (m *GetGroupReq) String() string { return proto.CompactTextString(m) }
func (*GetGroupReq) ProtoMessage() {} func (*GetGroupReq) ProtoMessage() {}
func (*GetGroupReq) Descriptor() ([]byte, []int) { func (*GetGroupReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{34} return fileDescriptor_group_40c147a29abb4e60, []int{34}
} }
func (m *GetGroupReq) XXX_Unmarshal(b []byte) error { func (m *GetGroupReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupReq.Unmarshal(m, b) return xxx_messageInfo_GetGroupReq.Unmarshal(m, b)
@ -1944,7 +1944,7 @@ func (m *GetGroupResp) Reset() { *m = GetGroupResp{} }
func (m *GetGroupResp) String() string { return proto.CompactTextString(m) } func (m *GetGroupResp) String() string { return proto.CompactTextString(m) }
func (*GetGroupResp) ProtoMessage() {} func (*GetGroupResp) ProtoMessage() {}
func (*GetGroupResp) Descriptor() ([]byte, []int) { func (*GetGroupResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{35} return fileDescriptor_group_40c147a29abb4e60, []int{35}
} }
func (m *GetGroupResp) XXX_Unmarshal(b []byte) error { func (m *GetGroupResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupResp.Unmarshal(m, b) return xxx_messageInfo_GetGroupResp.Unmarshal(m, b)
@ -1997,7 +1997,7 @@ func (m *GetGroupsReq) Reset() { *m = GetGroupsReq{} }
func (m *GetGroupsReq) String() string { return proto.CompactTextString(m) } func (m *GetGroupsReq) String() string { return proto.CompactTextString(m) }
func (*GetGroupsReq) ProtoMessage() {} func (*GetGroupsReq) ProtoMessage() {}
func (*GetGroupsReq) Descriptor() ([]byte, []int) { func (*GetGroupsReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{36} return fileDescriptor_group_40c147a29abb4e60, []int{36}
} }
func (m *GetGroupsReq) XXX_Unmarshal(b []byte) error { func (m *GetGroupsReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupsReq.Unmarshal(m, b) return xxx_messageInfo_GetGroupsReq.Unmarshal(m, b)
@ -2044,7 +2044,7 @@ func (m *GetGroupsResp) Reset() { *m = GetGroupsResp{} }
func (m *GetGroupsResp) String() string { return proto.CompactTextString(m) } func (m *GetGroupsResp) String() string { return proto.CompactTextString(m) }
func (*GetGroupsResp) ProtoMessage() {} func (*GetGroupsResp) ProtoMessage() {}
func (*GetGroupsResp) Descriptor() ([]byte, []int) { func (*GetGroupsResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{37} return fileDescriptor_group_40c147a29abb4e60, []int{37}
} }
func (m *GetGroupsResp) XXX_Unmarshal(b []byte) error { func (m *GetGroupsResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupsResp.Unmarshal(m, b) return xxx_messageInfo_GetGroupsResp.Unmarshal(m, b)
@ -2097,7 +2097,7 @@ func (m *GetGroupMemberReq) Reset() { *m = GetGroupMemberReq{} }
func (m *GetGroupMemberReq) String() string { return proto.CompactTextString(m) } func (m *GetGroupMemberReq) String() string { return proto.CompactTextString(m) }
func (*GetGroupMemberReq) ProtoMessage() {} func (*GetGroupMemberReq) ProtoMessage() {}
func (*GetGroupMemberReq) Descriptor() ([]byte, []int) { func (*GetGroupMemberReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{38} return fileDescriptor_group_40c147a29abb4e60, []int{38}
} }
func (m *GetGroupMemberReq) XXX_Unmarshal(b []byte) error { func (m *GetGroupMemberReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupMemberReq.Unmarshal(m, b) return xxx_messageInfo_GetGroupMemberReq.Unmarshal(m, b)
@ -2144,7 +2144,7 @@ func (m *OperateGroupStatusReq) Reset() { *m = OperateGroupStatusReq{} }
func (m *OperateGroupStatusReq) String() string { return proto.CompactTextString(m) } func (m *OperateGroupStatusReq) String() string { return proto.CompactTextString(m) }
func (*OperateGroupStatusReq) ProtoMessage() {} func (*OperateGroupStatusReq) ProtoMessage() {}
func (*OperateGroupStatusReq) Descriptor() ([]byte, []int) { func (*OperateGroupStatusReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{39} return fileDescriptor_group_40c147a29abb4e60, []int{39}
} }
func (m *OperateGroupStatusReq) XXX_Unmarshal(b []byte) error { func (m *OperateGroupStatusReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OperateGroupStatusReq.Unmarshal(m, b) return xxx_messageInfo_OperateGroupStatusReq.Unmarshal(m, b)
@ -2195,7 +2195,7 @@ func (m *OperateGroupStatusResp) Reset() { *m = OperateGroupStatusResp{}
func (m *OperateGroupStatusResp) String() string { return proto.CompactTextString(m) } func (m *OperateGroupStatusResp) String() string { return proto.CompactTextString(m) }
func (*OperateGroupStatusResp) ProtoMessage() {} func (*OperateGroupStatusResp) ProtoMessage() {}
func (*OperateGroupStatusResp) Descriptor() ([]byte, []int) { func (*OperateGroupStatusResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{40} return fileDescriptor_group_40c147a29abb4e60, []int{40}
} }
func (m *OperateGroupStatusResp) XXX_Unmarshal(b []byte) error { func (m *OperateGroupStatusResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OperateGroupStatusResp.Unmarshal(m, b) return xxx_messageInfo_OperateGroupStatusResp.Unmarshal(m, b)
@ -2229,7 +2229,7 @@ func (m *OperateUserRoleReq) Reset() { *m = OperateUserRoleReq{} }
func (m *OperateUserRoleReq) String() string { return proto.CompactTextString(m) } func (m *OperateUserRoleReq) String() string { return proto.CompactTextString(m) }
func (*OperateUserRoleReq) ProtoMessage() {} func (*OperateUserRoleReq) ProtoMessage() {}
func (*OperateUserRoleReq) Descriptor() ([]byte, []int) { func (*OperateUserRoleReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{41} return fileDescriptor_group_40c147a29abb4e60, []int{41}
} }
func (m *OperateUserRoleReq) XXX_Unmarshal(b []byte) error { func (m *OperateUserRoleReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OperateUserRoleReq.Unmarshal(m, b) return xxx_messageInfo_OperateUserRoleReq.Unmarshal(m, b)
@ -2287,7 +2287,7 @@ func (m *OperateUserRoleResp) Reset() { *m = OperateUserRoleResp{} }
func (m *OperateUserRoleResp) String() string { return proto.CompactTextString(m) } func (m *OperateUserRoleResp) String() string { return proto.CompactTextString(m) }
func (*OperateUserRoleResp) ProtoMessage() {} func (*OperateUserRoleResp) ProtoMessage() {}
func (*OperateUserRoleResp) Descriptor() ([]byte, []int) { func (*OperateUserRoleResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{42} return fileDescriptor_group_40c147a29abb4e60, []int{42}
} }
func (m *OperateUserRoleResp) XXX_Unmarshal(b []byte) error { func (m *OperateUserRoleResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OperateUserRoleResp.Unmarshal(m, b) return xxx_messageInfo_OperateUserRoleResp.Unmarshal(m, b)
@ -2319,7 +2319,7 @@ func (m *DeleteGroupReq) Reset() { *m = DeleteGroupReq{} }
func (m *DeleteGroupReq) String() string { return proto.CompactTextString(m) } func (m *DeleteGroupReq) String() string { return proto.CompactTextString(m) }
func (*DeleteGroupReq) ProtoMessage() {} func (*DeleteGroupReq) ProtoMessage() {}
func (*DeleteGroupReq) Descriptor() ([]byte, []int) { func (*DeleteGroupReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{43} return fileDescriptor_group_40c147a29abb4e60, []int{43}
} }
func (m *DeleteGroupReq) XXX_Unmarshal(b []byte) error { func (m *DeleteGroupReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteGroupReq.Unmarshal(m, b) return xxx_messageInfo_DeleteGroupReq.Unmarshal(m, b)
@ -2363,7 +2363,7 @@ func (m *DeleteGroupResp) Reset() { *m = DeleteGroupResp{} }
func (m *DeleteGroupResp) String() string { return proto.CompactTextString(m) } func (m *DeleteGroupResp) String() string { return proto.CompactTextString(m) }
func (*DeleteGroupResp) ProtoMessage() {} func (*DeleteGroupResp) ProtoMessage() {}
func (*DeleteGroupResp) Descriptor() ([]byte, []int) { func (*DeleteGroupResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{44} return fileDescriptor_group_40c147a29abb4e60, []int{44}
} }
func (m *DeleteGroupResp) XXX_Unmarshal(b []byte) error { func (m *DeleteGroupResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteGroupResp.Unmarshal(m, b) return xxx_messageInfo_DeleteGroupResp.Unmarshal(m, b)
@ -2395,7 +2395,7 @@ func (m *GetGroupByIdReq) Reset() { *m = GetGroupByIdReq{} }
func (m *GetGroupByIdReq) String() string { return proto.CompactTextString(m) } func (m *GetGroupByIdReq) String() string { return proto.CompactTextString(m) }
func (*GetGroupByIdReq) ProtoMessage() {} func (*GetGroupByIdReq) ProtoMessage() {}
func (*GetGroupByIdReq) Descriptor() ([]byte, []int) { func (*GetGroupByIdReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{45} return fileDescriptor_group_40c147a29abb4e60, []int{45}
} }
func (m *GetGroupByIdReq) XXX_Unmarshal(b []byte) error { func (m *GetGroupByIdReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupByIdReq.Unmarshal(m, b) return xxx_messageInfo_GetGroupByIdReq.Unmarshal(m, b)
@ -2440,7 +2440,7 @@ func (m *GetGroupByIdResp) Reset() { *m = GetGroupByIdResp{} }
func (m *GetGroupByIdResp) String() string { return proto.CompactTextString(m) } func (m *GetGroupByIdResp) String() string { return proto.CompactTextString(m) }
func (*GetGroupByIdResp) ProtoMessage() {} func (*GetGroupByIdResp) ProtoMessage() {}
func (*GetGroupByIdResp) Descriptor() ([]byte, []int) { func (*GetGroupByIdResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{46} return fileDescriptor_group_40c147a29abb4e60, []int{46}
} }
func (m *GetGroupByIdResp) XXX_Unmarshal(b []byte) error { func (m *GetGroupByIdResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupByIdResp.Unmarshal(m, b) return xxx_messageInfo_GetGroupByIdResp.Unmarshal(m, b)
@ -2481,7 +2481,7 @@ func (m *GetGroupMembersCMSReq) Reset() { *m = GetGroupMembersCMSReq{} }
func (m *GetGroupMembersCMSReq) String() string { return proto.CompactTextString(m) } func (m *GetGroupMembersCMSReq) String() string { return proto.CompactTextString(m) }
func (*GetGroupMembersCMSReq) ProtoMessage() {} func (*GetGroupMembersCMSReq) ProtoMessage() {}
func (*GetGroupMembersCMSReq) Descriptor() ([]byte, []int) { func (*GetGroupMembersCMSReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{47} return fileDescriptor_group_40c147a29abb4e60, []int{47}
} }
func (m *GetGroupMembersCMSReq) XXX_Unmarshal(b []byte) error { func (m *GetGroupMembersCMSReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupMembersCMSReq.Unmarshal(m, b) return xxx_messageInfo_GetGroupMembersCMSReq.Unmarshal(m, b)
@ -2542,7 +2542,7 @@ func (m *GetGroupMembersCMSResp) Reset() { *m = GetGroupMembersCMSResp{}
func (m *GetGroupMembersCMSResp) String() string { return proto.CompactTextString(m) } func (m *GetGroupMembersCMSResp) String() string { return proto.CompactTextString(m) }
func (*GetGroupMembersCMSResp) ProtoMessage() {} func (*GetGroupMembersCMSResp) ProtoMessage() {}
func (*GetGroupMembersCMSResp) Descriptor() ([]byte, []int) { func (*GetGroupMembersCMSResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{48} return fileDescriptor_group_40c147a29abb4e60, []int{48}
} }
func (m *GetGroupMembersCMSResp) XXX_Unmarshal(b []byte) error { func (m *GetGroupMembersCMSResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetGroupMembersCMSResp.Unmarshal(m, b) return xxx_messageInfo_GetGroupMembersCMSResp.Unmarshal(m, b)
@ -2597,7 +2597,7 @@ func (m *RemoveGroupMembersCMSReq) Reset() { *m = RemoveGroupMembersCMSR
func (m *RemoveGroupMembersCMSReq) String() string { return proto.CompactTextString(m) } func (m *RemoveGroupMembersCMSReq) String() string { return proto.CompactTextString(m) }
func (*RemoveGroupMembersCMSReq) ProtoMessage() {} func (*RemoveGroupMembersCMSReq) ProtoMessage() {}
func (*RemoveGroupMembersCMSReq) Descriptor() ([]byte, []int) { func (*RemoveGroupMembersCMSReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{49} return fileDescriptor_group_40c147a29abb4e60, []int{49}
} }
func (m *RemoveGroupMembersCMSReq) XXX_Unmarshal(b []byte) error { func (m *RemoveGroupMembersCMSReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RemoveGroupMembersCMSReq.Unmarshal(m, b) return xxx_messageInfo_RemoveGroupMembersCMSReq.Unmarshal(m, b)
@ -2657,7 +2657,7 @@ func (m *RemoveGroupMembersCMSResp) Reset() { *m = RemoveGroupMembersCMS
func (m *RemoveGroupMembersCMSResp) String() string { return proto.CompactTextString(m) } func (m *RemoveGroupMembersCMSResp) String() string { return proto.CompactTextString(m) }
func (*RemoveGroupMembersCMSResp) ProtoMessage() {} func (*RemoveGroupMembersCMSResp) ProtoMessage() {}
func (*RemoveGroupMembersCMSResp) Descriptor() ([]byte, []int) { func (*RemoveGroupMembersCMSResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{50} return fileDescriptor_group_40c147a29abb4e60, []int{50}
} }
func (m *RemoveGroupMembersCMSResp) XXX_Unmarshal(b []byte) error { func (m *RemoveGroupMembersCMSResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RemoveGroupMembersCMSResp.Unmarshal(m, b) return xxx_messageInfo_RemoveGroupMembersCMSResp.Unmarshal(m, b)
@ -2705,7 +2705,7 @@ func (m *AddGroupMembersCMSReq) Reset() { *m = AddGroupMembersCMSReq{} }
func (m *AddGroupMembersCMSReq) String() string { return proto.CompactTextString(m) } func (m *AddGroupMembersCMSReq) String() string { return proto.CompactTextString(m) }
func (*AddGroupMembersCMSReq) ProtoMessage() {} func (*AddGroupMembersCMSReq) ProtoMessage() {}
func (*AddGroupMembersCMSReq) Descriptor() ([]byte, []int) { func (*AddGroupMembersCMSReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{51} return fileDescriptor_group_40c147a29abb4e60, []int{51}
} }
func (m *AddGroupMembersCMSReq) XXX_Unmarshal(b []byte) error { func (m *AddGroupMembersCMSReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddGroupMembersCMSReq.Unmarshal(m, b) return xxx_messageInfo_AddGroupMembersCMSReq.Unmarshal(m, b)
@ -2765,7 +2765,7 @@ func (m *AddGroupMembersCMSResp) Reset() { *m = AddGroupMembersCMSResp{}
func (m *AddGroupMembersCMSResp) String() string { return proto.CompactTextString(m) } func (m *AddGroupMembersCMSResp) String() string { return proto.CompactTextString(m) }
func (*AddGroupMembersCMSResp) ProtoMessage() {} func (*AddGroupMembersCMSResp) ProtoMessage() {}
func (*AddGroupMembersCMSResp) Descriptor() ([]byte, []int) { func (*AddGroupMembersCMSResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{52} return fileDescriptor_group_40c147a29abb4e60, []int{52}
} }
func (m *AddGroupMembersCMSResp) XXX_Unmarshal(b []byte) error { func (m *AddGroupMembersCMSResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddGroupMembersCMSResp.Unmarshal(m, b) return xxx_messageInfo_AddGroupMembersCMSResp.Unmarshal(m, b)
@ -2812,7 +2812,7 @@ func (m *DismissGroupReq) Reset() { *m = DismissGroupReq{} }
func (m *DismissGroupReq) String() string { return proto.CompactTextString(m) } func (m *DismissGroupReq) String() string { return proto.CompactTextString(m) }
func (*DismissGroupReq) ProtoMessage() {} func (*DismissGroupReq) ProtoMessage() {}
func (*DismissGroupReq) Descriptor() ([]byte, []int) { func (*DismissGroupReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{53} return fileDescriptor_group_40c147a29abb4e60, []int{53}
} }
func (m *DismissGroupReq) XXX_Unmarshal(b []byte) error { func (m *DismissGroupReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DismissGroupReq.Unmarshal(m, b) return xxx_messageInfo_DismissGroupReq.Unmarshal(m, b)
@ -2864,7 +2864,7 @@ func (m *DismissGroupResp) Reset() { *m = DismissGroupResp{} }
func (m *DismissGroupResp) String() string { return proto.CompactTextString(m) } func (m *DismissGroupResp) String() string { return proto.CompactTextString(m) }
func (*DismissGroupResp) ProtoMessage() {} func (*DismissGroupResp) ProtoMessage() {}
func (*DismissGroupResp) Descriptor() ([]byte, []int) { func (*DismissGroupResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{54} return fileDescriptor_group_40c147a29abb4e60, []int{54}
} }
func (m *DismissGroupResp) XXX_Unmarshal(b []byte) error { func (m *DismissGroupResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DismissGroupResp.Unmarshal(m, b) return xxx_messageInfo_DismissGroupResp.Unmarshal(m, b)
@ -2906,7 +2906,7 @@ func (m *MuteGroupMemberReq) Reset() { *m = MuteGroupMemberReq{} }
func (m *MuteGroupMemberReq) String() string { return proto.CompactTextString(m) } func (m *MuteGroupMemberReq) String() string { return proto.CompactTextString(m) }
func (*MuteGroupMemberReq) ProtoMessage() {} func (*MuteGroupMemberReq) ProtoMessage() {}
func (*MuteGroupMemberReq) Descriptor() ([]byte, []int) { func (*MuteGroupMemberReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{55} return fileDescriptor_group_40c147a29abb4e60, []int{55}
} }
func (m *MuteGroupMemberReq) XXX_Unmarshal(b []byte) error { func (m *MuteGroupMemberReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MuteGroupMemberReq.Unmarshal(m, b) return xxx_messageInfo_MuteGroupMemberReq.Unmarshal(m, b)
@ -2972,7 +2972,7 @@ func (m *MuteGroupMemberResp) Reset() { *m = MuteGroupMemberResp{} }
func (m *MuteGroupMemberResp) String() string { return proto.CompactTextString(m) } func (m *MuteGroupMemberResp) String() string { return proto.CompactTextString(m) }
func (*MuteGroupMemberResp) ProtoMessage() {} func (*MuteGroupMemberResp) ProtoMessage() {}
func (*MuteGroupMemberResp) Descriptor() ([]byte, []int) { func (*MuteGroupMemberResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{56} return fileDescriptor_group_40c147a29abb4e60, []int{56}
} }
func (m *MuteGroupMemberResp) XXX_Unmarshal(b []byte) error { func (m *MuteGroupMemberResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MuteGroupMemberResp.Unmarshal(m, b) return xxx_messageInfo_MuteGroupMemberResp.Unmarshal(m, b)
@ -3013,7 +3013,7 @@ func (m *CancelMuteGroupMemberReq) Reset() { *m = CancelMuteGroupMemberR
func (m *CancelMuteGroupMemberReq) String() string { return proto.CompactTextString(m) } func (m *CancelMuteGroupMemberReq) String() string { return proto.CompactTextString(m) }
func (*CancelMuteGroupMemberReq) ProtoMessage() {} func (*CancelMuteGroupMemberReq) ProtoMessage() {}
func (*CancelMuteGroupMemberReq) Descriptor() ([]byte, []int) { func (*CancelMuteGroupMemberReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{57} return fileDescriptor_group_40c147a29abb4e60, []int{57}
} }
func (m *CancelMuteGroupMemberReq) XXX_Unmarshal(b []byte) error { func (m *CancelMuteGroupMemberReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CancelMuteGroupMemberReq.Unmarshal(m, b) return xxx_messageInfo_CancelMuteGroupMemberReq.Unmarshal(m, b)
@ -3072,7 +3072,7 @@ func (m *CancelMuteGroupMemberResp) Reset() { *m = CancelMuteGroupMember
func (m *CancelMuteGroupMemberResp) String() string { return proto.CompactTextString(m) } func (m *CancelMuteGroupMemberResp) String() string { return proto.CompactTextString(m) }
func (*CancelMuteGroupMemberResp) ProtoMessage() {} func (*CancelMuteGroupMemberResp) ProtoMessage() {}
func (*CancelMuteGroupMemberResp) Descriptor() ([]byte, []int) { func (*CancelMuteGroupMemberResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{58} return fileDescriptor_group_40c147a29abb4e60, []int{58}
} }
func (m *CancelMuteGroupMemberResp) XXX_Unmarshal(b []byte) error { func (m *CancelMuteGroupMemberResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CancelMuteGroupMemberResp.Unmarshal(m, b) return xxx_messageInfo_CancelMuteGroupMemberResp.Unmarshal(m, b)
@ -3112,7 +3112,7 @@ func (m *MuteGroupReq) Reset() { *m = MuteGroupReq{} }
func (m *MuteGroupReq) String() string { return proto.CompactTextString(m) } func (m *MuteGroupReq) String() string { return proto.CompactTextString(m) }
func (*MuteGroupReq) ProtoMessage() {} func (*MuteGroupReq) ProtoMessage() {}
func (*MuteGroupReq) Descriptor() ([]byte, []int) { func (*MuteGroupReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{59} return fileDescriptor_group_40c147a29abb4e60, []int{59}
} }
func (m *MuteGroupReq) XXX_Unmarshal(b []byte) error { func (m *MuteGroupReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MuteGroupReq.Unmarshal(m, b) return xxx_messageInfo_MuteGroupReq.Unmarshal(m, b)
@ -3164,7 +3164,7 @@ func (m *MuteGroupResp) Reset() { *m = MuteGroupResp{} }
func (m *MuteGroupResp) String() string { return proto.CompactTextString(m) } func (m *MuteGroupResp) String() string { return proto.CompactTextString(m) }
func (*MuteGroupResp) ProtoMessage() {} func (*MuteGroupResp) ProtoMessage() {}
func (*MuteGroupResp) Descriptor() ([]byte, []int) { func (*MuteGroupResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{60} return fileDescriptor_group_40c147a29abb4e60, []int{60}
} }
func (m *MuteGroupResp) XXX_Unmarshal(b []byte) error { func (m *MuteGroupResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MuteGroupResp.Unmarshal(m, b) return xxx_messageInfo_MuteGroupResp.Unmarshal(m, b)
@ -3204,7 +3204,7 @@ func (m *CancelMuteGroupReq) Reset() { *m = CancelMuteGroupReq{} }
func (m *CancelMuteGroupReq) String() string { return proto.CompactTextString(m) } func (m *CancelMuteGroupReq) String() string { return proto.CompactTextString(m) }
func (*CancelMuteGroupReq) ProtoMessage() {} func (*CancelMuteGroupReq) ProtoMessage() {}
func (*CancelMuteGroupReq) Descriptor() ([]byte, []int) { func (*CancelMuteGroupReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{61} return fileDescriptor_group_40c147a29abb4e60, []int{61}
} }
func (m *CancelMuteGroupReq) XXX_Unmarshal(b []byte) error { func (m *CancelMuteGroupReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CancelMuteGroupReq.Unmarshal(m, b) return xxx_messageInfo_CancelMuteGroupReq.Unmarshal(m, b)
@ -3256,7 +3256,7 @@ func (m *CancelMuteGroupResp) Reset() { *m = CancelMuteGroupResp{} }
func (m *CancelMuteGroupResp) String() string { return proto.CompactTextString(m) } func (m *CancelMuteGroupResp) String() string { return proto.CompactTextString(m) }
func (*CancelMuteGroupResp) ProtoMessage() {} func (*CancelMuteGroupResp) ProtoMessage() {}
func (*CancelMuteGroupResp) Descriptor() ([]byte, []int) { func (*CancelMuteGroupResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{62} return fileDescriptor_group_40c147a29abb4e60, []int{62}
} }
func (m *CancelMuteGroupResp) XXX_Unmarshal(b []byte) error { func (m *CancelMuteGroupResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CancelMuteGroupResp.Unmarshal(m, b) return xxx_messageInfo_CancelMuteGroupResp.Unmarshal(m, b)
@ -3298,7 +3298,7 @@ func (m *SetGroupMemberNicknameReq) Reset() { *m = SetGroupMemberNicknam
func (m *SetGroupMemberNicknameReq) String() string { return proto.CompactTextString(m) } func (m *SetGroupMemberNicknameReq) String() string { return proto.CompactTextString(m) }
func (*SetGroupMemberNicknameReq) ProtoMessage() {} func (*SetGroupMemberNicknameReq) ProtoMessage() {}
func (*SetGroupMemberNicknameReq) Descriptor() ([]byte, []int) { func (*SetGroupMemberNicknameReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{63} return fileDescriptor_group_40c147a29abb4e60, []int{63}
} }
func (m *SetGroupMemberNicknameReq) XXX_Unmarshal(b []byte) error { func (m *SetGroupMemberNicknameReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetGroupMemberNicknameReq.Unmarshal(m, b) return xxx_messageInfo_SetGroupMemberNicknameReq.Unmarshal(m, b)
@ -3364,7 +3364,7 @@ func (m *SetGroupMemberNicknameResp) Reset() { *m = SetGroupMemberNickna
func (m *SetGroupMemberNicknameResp) String() string { return proto.CompactTextString(m) } func (m *SetGroupMemberNicknameResp) String() string { return proto.CompactTextString(m) }
func (*SetGroupMemberNicknameResp) ProtoMessage() {} func (*SetGroupMemberNicknameResp) ProtoMessage() {}
func (*SetGroupMemberNicknameResp) Descriptor() ([]byte, []int) { func (*SetGroupMemberNicknameResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{64} return fileDescriptor_group_40c147a29abb4e60, []int{64}
} }
func (m *SetGroupMemberNicknameResp) XXX_Unmarshal(b []byte) error { func (m *SetGroupMemberNicknameResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetGroupMemberNicknameResp.Unmarshal(m, b) return xxx_messageInfo_SetGroupMemberNicknameResp.Unmarshal(m, b)
@ -3404,7 +3404,7 @@ func (m *GetJoinedSuperGroupListReq) Reset() { *m = GetJoinedSuperGroupL
func (m *GetJoinedSuperGroupListReq) String() string { return proto.CompactTextString(m) } func (m *GetJoinedSuperGroupListReq) String() string { return proto.CompactTextString(m) }
func (*GetJoinedSuperGroupListReq) ProtoMessage() {} func (*GetJoinedSuperGroupListReq) ProtoMessage() {}
func (*GetJoinedSuperGroupListReq) Descriptor() ([]byte, []int) { func (*GetJoinedSuperGroupListReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{65} return fileDescriptor_group_40c147a29abb4e60, []int{65}
} }
func (m *GetJoinedSuperGroupListReq) XXX_Unmarshal(b []byte) error { func (m *GetJoinedSuperGroupListReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetJoinedSuperGroupListReq.Unmarshal(m, b) return xxx_messageInfo_GetJoinedSuperGroupListReq.Unmarshal(m, b)
@ -3457,7 +3457,7 @@ func (m *GetJoinedSuperGroupListResp) Reset() { *m = GetJoinedSuperGroup
func (m *GetJoinedSuperGroupListResp) String() string { return proto.CompactTextString(m) } func (m *GetJoinedSuperGroupListResp) String() string { return proto.CompactTextString(m) }
func (*GetJoinedSuperGroupListResp) ProtoMessage() {} func (*GetJoinedSuperGroupListResp) ProtoMessage() {}
func (*GetJoinedSuperGroupListResp) Descriptor() ([]byte, []int) { func (*GetJoinedSuperGroupListResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{66} return fileDescriptor_group_40c147a29abb4e60, []int{66}
} }
func (m *GetJoinedSuperGroupListResp) XXX_Unmarshal(b []byte) error { func (m *GetJoinedSuperGroupListResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetJoinedSuperGroupListResp.Unmarshal(m, b) return xxx_messageInfo_GetJoinedSuperGroupListResp.Unmarshal(m, b)
@ -3504,7 +3504,7 @@ func (m *GetSuperGroupsInfoReq) Reset() { *m = GetSuperGroupsInfoReq{} }
func (m *GetSuperGroupsInfoReq) String() string { return proto.CompactTextString(m) } func (m *GetSuperGroupsInfoReq) String() string { return proto.CompactTextString(m) }
func (*GetSuperGroupsInfoReq) ProtoMessage() {} func (*GetSuperGroupsInfoReq) ProtoMessage() {}
func (*GetSuperGroupsInfoReq) Descriptor() ([]byte, []int) { func (*GetSuperGroupsInfoReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{67} return fileDescriptor_group_40c147a29abb4e60, []int{67}
} }
func (m *GetSuperGroupsInfoReq) XXX_Unmarshal(b []byte) error { func (m *GetSuperGroupsInfoReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetSuperGroupsInfoReq.Unmarshal(m, b) return xxx_messageInfo_GetSuperGroupsInfoReq.Unmarshal(m, b)
@ -3557,7 +3557,7 @@ func (m *GetSuperGroupsInfoResp) Reset() { *m = GetSuperGroupsInfoResp{}
func (m *GetSuperGroupsInfoResp) String() string { return proto.CompactTextString(m) } func (m *GetSuperGroupsInfoResp) String() string { return proto.CompactTextString(m) }
func (*GetSuperGroupsInfoResp) ProtoMessage() {} func (*GetSuperGroupsInfoResp) ProtoMessage() {}
func (*GetSuperGroupsInfoResp) Descriptor() ([]byte, []int) { func (*GetSuperGroupsInfoResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{68} return fileDescriptor_group_40c147a29abb4e60, []int{68}
} }
func (m *GetSuperGroupsInfoResp) XXX_Unmarshal(b []byte) error { func (m *GetSuperGroupsInfoResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetSuperGroupsInfoResp.Unmarshal(m, b) return xxx_messageInfo_GetSuperGroupsInfoResp.Unmarshal(m, b)
@ -3609,7 +3609,7 @@ func (m *SetGroupMemberInfoReq) Reset() { *m = SetGroupMemberInfoReq{} }
func (m *SetGroupMemberInfoReq) String() string { return proto.CompactTextString(m) } func (m *SetGroupMemberInfoReq) String() string { return proto.CompactTextString(m) }
func (*SetGroupMemberInfoReq) ProtoMessage() {} func (*SetGroupMemberInfoReq) ProtoMessage() {}
func (*SetGroupMemberInfoReq) Descriptor() ([]byte, []int) { func (*SetGroupMemberInfoReq) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{69} return fileDescriptor_group_40c147a29abb4e60, []int{69}
} }
func (m *SetGroupMemberInfoReq) XXX_Unmarshal(b []byte) error { func (m *SetGroupMemberInfoReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetGroupMemberInfoReq.Unmarshal(m, b) return xxx_messageInfo_SetGroupMemberInfoReq.Unmarshal(m, b)
@ -3696,7 +3696,7 @@ func (m *SetGroupMemberInfoResp) Reset() { *m = SetGroupMemberInfoResp{}
func (m *SetGroupMemberInfoResp) String() string { return proto.CompactTextString(m) } func (m *SetGroupMemberInfoResp) String() string { return proto.CompactTextString(m) }
func (*SetGroupMemberInfoResp) ProtoMessage() {} func (*SetGroupMemberInfoResp) ProtoMessage() {}
func (*SetGroupMemberInfoResp) Descriptor() ([]byte, []int) { func (*SetGroupMemberInfoResp) Descriptor() ([]byte, []int) {
return fileDescriptor_group_f05abf5eae29d157, []int{70} return fileDescriptor_group_40c147a29abb4e60, []int{70}
} }
func (m *SetGroupMemberInfoResp) XXX_Unmarshal(b []byte) error { func (m *SetGroupMemberInfoResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetGroupMemberInfoResp.Unmarshal(m, b) return xxx_messageInfo_SetGroupMemberInfoResp.Unmarshal(m, b)
@ -4925,156 +4925,157 @@ var _Group_serviceDesc = grpc.ServiceDesc{
Metadata: "group/group.proto", Metadata: "group/group.proto",
} }
func init() { proto.RegisterFile("group/group.proto", fileDescriptor_group_f05abf5eae29d157) } func init() { proto.RegisterFile("group/group.proto", fileDescriptor_group_40c147a29abb4e60) }
var fileDescriptor_group_f05abf5eae29d157 = []byte{ var fileDescriptor_group_40c147a29abb4e60 = []byte{
// 2362 bytes of a gzipped FileDescriptorProto // 2381 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x4f, 0x6f, 0x1c, 0x49, 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x4f, 0x6f, 0x1c, 0x49,
0x15, 0x57, 0xdb, 0x99, 0xd8, 0xf3, 0x6c, 0x67, 0xec, 0x72, 0xc6, 0x1e, 0x77, 0xbc, 0x59, 0xa7, 0x15, 0x57, 0xdb, 0x1e, 0xdb, 0xf3, 0x6c, 0x67, 0xec, 0x72, 0xc6, 0x1e, 0x77, 0xbc, 0x59, 0xa7,
0x37, 0x2c, 0x11, 0x2c, 0xb6, 0x70, 0xa4, 0x08, 0x58, 0x44, 0x88, 0xff, 0x24, 0x9e, 0x24, 0xb6, 0x37, 0x2c, 0x11, 0x2c, 0xb6, 0x70, 0xa4, 0x08, 0x58, 0x44, 0x88, 0xff, 0xc5, 0x93, 0xf8, 0x0f,
0x71, 0x3b, 0xcb, 0x21, 0x12, 0x0a, 0x9d, 0xe9, 0xf2, 0x68, 0xf0, 0x4c, 0x77, 0xbb, 0xab, 0xc7, 0xee, 0xc9, 0x72, 0x88, 0x84, 0xc2, 0x64, 0xba, 0x3c, 0x1a, 0x3c, 0xd3, 0xdd, 0xee, 0xea, 0xb1,
0x0e, 0x5c, 0x56, 0x5c, 0x56, 0x5a, 0x40, 0x02, 0x84, 0xc4, 0x09, 0x09, 0xf6, 0x04, 0x07, 0x0e, 0x03, 0x97, 0x15, 0x97, 0x95, 0x16, 0x21, 0x01, 0x42, 0xe2, 0x04, 0x82, 0x3d, 0xc1, 0x81, 0x03,
0x1c, 0xe0, 0x8c, 0xf8, 0x18, 0x5c, 0xf9, 0x02, 0x7c, 0x02, 0x24, 0xd4, 0x55, 0xd5, 0xd5, 0xd5, 0x07, 0x38, 0x23, 0x3e, 0x06, 0x57, 0xbe, 0x00, 0x9f, 0x00, 0x09, 0x75, 0x55, 0x75, 0x75, 0x75,
0x5d, 0xd5, 0xed, 0x49, 0x4f, 0xb2, 0xb9, 0xb4, 0x54, 0x55, 0xaf, 0xea, 0xfd, 0xde, 0xab, 0xf7, 0x57, 0x75, 0x7b, 0xd2, 0x4e, 0x36, 0x97, 0x96, 0xea, 0xd5, 0xab, 0x7a, 0xbf, 0xf7, 0xaa, 0xde,
0x5e, 0xd5, 0x7b, 0xd5, 0xb0, 0xd0, 0x0d, 0xfd, 0x61, 0xb0, 0x41, 0xbf, 0xeb, 0x41, 0xe8, 0x47, 0xab, 0x7a, 0xaf, 0x1a, 0x16, 0xba, 0x81, 0x37, 0xf4, 0x37, 0xe8, 0x77, 0xdd, 0x0f, 0xbc, 0xd0,
0x3e, 0xaa, 0xd1, 0x86, 0x79, 0xeb, 0x30, 0xc0, 0xde, 0x8b, 0xf6, 0xfe, 0x46, 0x70, 0xda, 0xdd, 0x43, 0x15, 0xda, 0x30, 0xef, 0x1c, 0xfb, 0xd8, 0x7d, 0xd1, 0x3c, 0xdc, 0xf0, 0xcf, 0xba, 0x1b,
0xa0, 0x23, 0x1b, 0xc4, 0x3d, 0x7d, 0x71, 0x41, 0x36, 0x2e, 0x08, 0xa3, 0x34, 0xbf, 0x5a, 0x4c, 0xb4, 0x67, 0x83, 0x38, 0x67, 0x2f, 0x2e, 0xc9, 0xc6, 0x25, 0x61, 0x9c, 0xe6, 0x57, 0xf3, 0x59,
0x12, 0x3a, 0x41, 0x80, 0x43, 0x4e, 0x68, 0x7d, 0x0f, 0x60, 0xdb, 0x1f, 0x0c, 0x7c, 0xcf, 0xc6, 0x82, 0xb6, 0xef, 0xe3, 0x80, 0x33, 0x5a, 0xdf, 0x03, 0xd8, 0xf6, 0x06, 0x03, 0xcf, 0xb5, 0x31,
0x24, 0x40, 0x2d, 0x98, 0xda, 0x0d, 0xc3, 0x6d, 0xdf, 0xc5, 0x2d, 0x63, 0xcd, 0xb8, 0x53, 0xb3, 0xf1, 0x51, 0x03, 0xa6, 0x76, 0x83, 0x60, 0xdb, 0x73, 0x70, 0xc3, 0x58, 0x33, 0xee, 0x55, 0xec,
0x93, 0x26, 0x5a, 0x82, 0xab, 0xbb, 0x61, 0xb8, 0x4f, 0xba, 0xad, 0x89, 0x35, 0xe3, 0x4e, 0xdd, 0xb8, 0x89, 0x96, 0x60, 0x72, 0x37, 0x08, 0x0e, 0x49, 0xb7, 0x31, 0xb6, 0x66, 0xdc, 0xab, 0xda,
0xe6, 0x2d, 0xeb, 0x31, 0xa0, 0x47, 0x31, 0xa8, 0x07, 0xae, 0xbb, 0x8f, 0x07, 0x2f, 0x71, 0xd8, 0xbc, 0x65, 0x3d, 0x01, 0xf4, 0x38, 0x02, 0xf5, 0xc8, 0x71, 0x0e, 0xf1, 0xe0, 0x25, 0x0e, 0x9a,
0xf6, 0x4e, 0xfc, 0x98, 0xfa, 0x13, 0x82, 0xc3, 0xf6, 0x0e, 0x5d, 0xa6, 0x6e, 0xf3, 0x16, 0x5a, 0xee, 0xa9, 0x17, 0x71, 0x7f, 0x42, 0x70, 0xd0, 0xdc, 0xa1, 0xd3, 0x54, 0x6d, 0xde, 0x42, 0xab,
0x85, 0xba, 0xed, 0xf7, 0xf1, 0x53, 0x7c, 0x8e, 0xfb, 0x74, 0xa1, 0x9a, 0x9d, 0x76, 0x58, 0xff, 0x50, 0xb5, 0xbd, 0x3e, 0x3e, 0xc0, 0x17, 0xb8, 0x4f, 0x27, 0xaa, 0xd8, 0x09, 0xc1, 0xfa, 0xaf,
0x35, 0xe0, 0xda, 0x76, 0x88, 0x9d, 0x08, 0xd3, 0x25, 0x6d, 0x7c, 0x86, 0x1e, 0xc0, 0xb5, 0xb6, 0x01, 0x37, 0xb6, 0x03, 0xdc, 0x0e, 0x31, 0x9d, 0xd2, 0xc6, 0xe7, 0xe8, 0x11, 0xdc, 0x68, 0xba,
0xd7, 0x8b, 0xd8, 0xd2, 0x4f, 0x7b, 0x24, 0x6a, 0x19, 0x6b, 0x93, 0x77, 0x66, 0x36, 0x57, 0xd6, 0xbd, 0x90, 0x4d, 0x7d, 0xd0, 0x23, 0x61, 0xc3, 0x58, 0x1b, 0xbf, 0x37, 0xb3, 0xb9, 0xb2, 0xce,
0x99, 0x5e, 0x54, 0xde, 0x76, 0x6e, 0x02, 0xfa, 0x0e, 0xd4, 0x29, 0x55, 0x3c, 0x48, 0x79, 0xce, 0xec, 0xa2, 0xca, 0xb6, 0x33, 0x03, 0xd0, 0x77, 0xa0, 0x4a, 0xb9, 0xa2, 0x4e, 0x2a, 0x73, 0x66,
0x6c, 0xae, 0xae, 0x13, 0x1c, 0x9e, 0xe3, 0xf0, 0x85, 0x13, 0xf4, 0x5e, 0x04, 0x4e, 0xe8, 0x0c, 0x73, 0x75, 0x9d, 0xe0, 0xe0, 0x02, 0x07, 0x2f, 0xda, 0x7e, 0xef, 0x85, 0xdf, 0x0e, 0xda, 0x03,
0xc8, 0xba, 0xa0, 0xb1, 0x53, 0x72, 0xb4, 0x06, 0x33, 0x87, 0x01, 0x0e, 0x9d, 0xa8, 0xe7, 0x7b, 0xb2, 0x2e, 0x78, 0xec, 0x84, 0x1d, 0xad, 0xc1, 0xcc, 0xb1, 0x8f, 0x83, 0x76, 0xd8, 0xf3, 0xdc,
0xed, 0x9d, 0xd6, 0x24, 0x15, 0x46, 0xee, 0x42, 0x26, 0x4c, 0x1f, 0x06, 0x5c, 0xd6, 0x2b, 0x74, 0xe6, 0x4e, 0x63, 0x9c, 0x2a, 0x23, 0x93, 0x90, 0x09, 0xd3, 0xc7, 0x3e, 0xd7, 0x75, 0x82, 0x76,
0x58, 0xb4, 0xe9, 0xec, 0x0b, 0x0f, 0x87, 0x7c, 0xb8, 0xc6, 0x67, 0xa7, 0x5d, 0xd6, 0xa7, 0xd0, 0x8b, 0x36, 0x1d, 0x7d, 0xe9, 0xe2, 0x80, 0x77, 0x57, 0xf8, 0xe8, 0x84, 0x64, 0x7d, 0x0a, 0xb5,
0xc8, 0x08, 0x5c, 0x65, 0x0b, 0xb2, 0x02, 0x4e, 0xbe, 0x96, 0x80, 0x56, 0x08, 0xf3, 0x8f, 0x70, 0x94, 0xc2, 0x65, 0x96, 0x20, 0xad, 0xe0, 0xf8, 0x6b, 0x29, 0x68, 0x05, 0x30, 0xff, 0x18, 0x87,
0x44, 0xdb, 0x84, 0x8e, 0xe1, 0xb3, 0x18, 0x36, 0x23, 0xd8, 0x11, 0x0a, 0xaf, 0xdb, 0x72, 0x57, 0xb4, 0x4d, 0x68, 0x1f, 0x3e, 0x8f, 0x60, 0x33, 0x86, 0x1d, 0x61, 0xf0, 0xaa, 0x2d, 0x93, 0xb2,
0x5e, 0x2d, 0x13, 0xe5, 0x6a, 0x99, 0xcc, 0xaa, 0xc5, 0xfa, 0xdc, 0x80, 0x85, 0x1c, 0xd3, 0x4a, 0x66, 0x19, 0x2b, 0x36, 0xcb, 0x78, 0xda, 0x2c, 0xd6, 0xe7, 0x06, 0x2c, 0x64, 0x84, 0x96, 0xd2,
0x72, 0x6f, 0xc1, 0x9c, 0x10, 0x84, 0x22, 0x9d, 0xa4, 0xa6, 0x51, 0x2e, 0x7b, 0x76, 0x8a, 0xf5, 0x7b, 0x0b, 0xe6, 0x84, 0x22, 0x14, 0xe9, 0x38, 0xdd, 0x1a, 0xc5, 0xba, 0xa7, 0x87, 0x58, 0x7f,
0x4b, 0x03, 0x1a, 0xc7, 0x1c, 0x4b, 0x22, 0x7f, 0x46, 0x9f, 0xc6, 0xeb, 0x19, 0x8c, 0x2c, 0xf7, 0x30, 0xa0, 0xd6, 0xe2, 0x58, 0x62, 0xfd, 0x0f, 0xa0, 0xd6, 0x8d, 0xdb, 0x7b, 0x5e, 0xd0, 0xc2,
0x84, 0xc6, 0x1c, 0x4a, 0x8d, 0xc9, 0xda, 0x85, 0xf9, 0x2c, 0x18, 0x12, 0xa0, 0x6f, 0xca, 0x0e, 0x21, 0x45, 0x34, 0xb3, 0x69, 0x15, 0xcd, 0xcc, 0x38, 0xed, 0xec, 0xd0, 0x94, 0x25, 0xc6, 0x34,
0xca, 0xe1, 0x2c, 0x70, 0xeb, 0x4f, 0x07, 0x6c, 0x89, 0xc8, 0xfa, 0x19, 0x98, 0x89, 0x7e, 0x1f, 0x1b, 0xa4, 0x70, 0x7b, 0x59, 0xbb, 0x30, 0x9f, 0x86, 0x47, 0x7c, 0xf4, 0x4d, 0xd9, 0x65, 0x39,
0x04, 0x41, 0xbf, 0xd7, 0xa1, 0xeb, 0xc7, 0xf2, 0xc6, 0xe2, 0xc9, 0x10, 0x8d, 0x72, 0x88, 0x9a, 0xb4, 0x05, 0xee, 0x0f, 0x49, 0x87, 0x2d, 0x31, 0x59, 0x3f, 0x03, 0x33, 0xb6, 0xf8, 0x23, 0xdf,
0x8d, 0xbd, 0x09, 0xf0, 0x30, 0xf4, 0x07, 0x99, 0xad, 0x95, 0x7a, 0xac, 0x3f, 0x18, 0x70, 0xa3, 0xef, 0xf7, 0x3a, 0x74, 0xfe, 0xc8, 0x02, 0x91, 0xc2, 0x32, 0x44, 0xa3, 0x18, 0xa2, 0x66, 0xa9,
0x90, 0x79, 0xa5, 0x6d, 0x7e, 0x02, 0xf3, 0x49, 0x38, 0x18, 0x62, 0x12, 0x49, 0x3b, 0xfd, 0x7e, 0x6f, 0x03, 0xec, 0x05, 0xde, 0x20, 0xb5, 0xd8, 0x12, 0xc5, 0xfa, 0xbd, 0x01, 0xb7, 0x72, 0x85,
0xd1, 0xae, 0x70, 0x52, 0x5b, 0x99, 0x68, 0x45, 0xb0, 0xfa, 0x08, 0x47, 0x31, 0x56, 0x1b, 0x9f, 0x97, 0x5a, 0xf8, 0xa7, 0x30, 0x1f, 0x07, 0x88, 0x21, 0x26, 0xa1, 0xb4, 0xf6, 0xef, 0xe7, 0xad,
0x69, 0x94, 0x53, 0x14, 0xb8, 0xc6, 0xdb, 0xd7, 0x3f, 0x1a, 0xf0, 0x5e, 0x09, 0xdb, 0x4a, 0xbb, 0x10, 0x67, 0xb5, 0x95, 0x81, 0x56, 0x08, 0xab, 0x8f, 0x71, 0x18, 0x61, 0xb5, 0xf1, 0xb9, 0xc6,
0xac, 0xd5, 0xcb, 0x44, 0x55, 0xbd, 0xfc, 0xd3, 0x80, 0xe6, 0xb3, 0xd0, 0xf1, 0xc8, 0x09, 0x0e, 0x38, 0x79, 0xa1, 0xec, 0x7a, 0xeb, 0xfa, 0x47, 0x03, 0xde, 0x2b, 0x10, 0x5b, 0x6a, 0x95, 0xb5,
0xe9, 0x20, 0x8d, 0x52, 0xb1, 0x46, 0x5a, 0x30, 0xc5, 0x5d, 0x9f, 0xab, 0x24, 0x69, 0xa2, 0x0f, 0x76, 0x19, 0x2b, 0x6b, 0x97, 0x7f, 0x1a, 0x50, 0x7f, 0x16, 0xb4, 0x5d, 0x72, 0x8a, 0x03, 0xda,
0xe1, 0xda, 0x61, 0xdf, 0x95, 0x23, 0x1c, 0xd3, 0x4c, 0xae, 0x37, 0xa6, 0x3b, 0xc0, 0x17, 0x32, 0x49, 0xe3, 0x56, 0x64, 0x91, 0x06, 0x4c, 0xf1, 0x60, 0xc0, 0x4d, 0x12, 0x37, 0xd1, 0x87, 0x70,
0x1d, 0x53, 0x51, 0xae, 0x37, 0xaf, 0xc7, 0x2b, 0xe5, 0x51, 0xa5, 0x96, 0x8b, 0x2a, 0x4f, 0x60, 0xe3, 0xb8, 0xef, 0xc8, 0x31, 0x8f, 0x59, 0x26, 0x43, 0x8d, 0xf8, 0x8e, 0xf0, 0xa5, 0xcc, 0xc7,
0x49, 0x27, 0x40, 0x35, 0x0f, 0xfa, 0xcc, 0x80, 0xd9, 0xc7, 0x7e, 0xcf, 0x13, 0xe7, 0x50, 0xb1, 0x4c, 0x94, 0xa1, 0x66, 0xed, 0x38, 0x51, 0x1c, 0x67, 0x2a, 0x99, 0x38, 0xf3, 0x14, 0x96, 0x74,
0x16, 0x6e, 0x02, 0xd8, 0xf8, 0x6c, 0x1f, 0x13, 0xe2, 0x74, 0x31, 0xd7, 0x80, 0xd4, 0x53, 0x16, 0x0a, 0x94, 0xf3, 0xa0, 0xcf, 0x0c, 0x98, 0x7d, 0xe2, 0xf5, 0x5c, 0x71, 0x32, 0xe5, 0x5b, 0xe1,
0x09, 0x2f, 0x97, 0xd8, 0xda, 0x82, 0x39, 0x09, 0x47, 0x35, 0x61, 0xfe, 0x1d, 0xbb, 0x64, 0xce, 0x36, 0x80, 0x8d, 0xcf, 0x0f, 0x31, 0x21, 0xed, 0x2e, 0xe6, 0x16, 0x90, 0x28, 0x45, 0xb1, 0xf1,
0x1f, 0xe3, 0x01, 0xdf, 0x23, 0x98, 0xc7, 0x7b, 0x19, 0x85, 0x51, 0xae, 0xf7, 0xbc, 0xf5, 0x4b, 0x6a, 0x8d, 0xad, 0x2d, 0x98, 0x93, 0x70, 0x94, 0x53, 0xe6, 0xdf, 0x91, 0x4b, 0x66, 0xfc, 0x31,
0x9a, 0x99, 0x54, 0x34, 0x23, 0x85, 0x8a, 0x2b, 0xf9, 0x50, 0x11, 0x8f, 0xef, 0x39, 0x9e, 0xdb, 0xea, 0xf0, 0x5c, 0x82, 0xf9, 0x09, 0x20, 0xa3, 0x30, 0x8a, 0xed, 0x9e, 0xdd, 0xfd, 0x92, 0x65,
0xc7, 0x6e, 0xec, 0xf4, 0x6c, 0x3f, 0xa5, 0x1e, 0x64, 0xc1, 0x2c, 0x6b, 0xd9, 0x98, 0x0c, 0xfb, 0xc6, 0x15, 0xcb, 0x48, 0xa1, 0x62, 0x22, 0x1b, 0x2a, 0xa2, 0xfe, 0xfd, 0xb6, 0xeb, 0xf4, 0xb1,
0x51, 0xeb, 0x2a, 0x8d, 0x17, 0x99, 0x3e, 0xeb, 0x08, 0x56, 0x8b, 0x45, 0xab, 0xa6, 0xae, 0x13, 0x13, 0x39, 0x3d, 0x5b, 0x4f, 0x89, 0x82, 0x2c, 0x98, 0x65, 0x2d, 0x1b, 0x93, 0x61, 0x3f, 0x6c,
0x98, 0x3d, 0x1a, 0xf6, 0xa2, 0x11, 0xb6, 0x7e, 0xbc, 0x63, 0x70, 0x0b, 0xe6, 0x24, 0x3e, 0xd5, 0x4c, 0xd2, 0x78, 0x91, 0xa2, 0x59, 0x27, 0xb0, 0x9a, 0xaf, 0x5a, 0x39, 0x73, 0x9d, 0xc2, 0xec,
0xb0, 0x7e, 0x61, 0x40, 0x33, 0x89, 0xb6, 0xe9, 0x95, 0xa7, 0x1c, 0xf5, 0x58, 0xa1, 0x2c, 0x0e, 0xc9, 0xb0, 0x17, 0x8e, 0xb0, 0xf4, 0xd7, 0x3b, 0x18, 0xb7, 0x60, 0x4e, 0x92, 0x53, 0x0e, 0xeb,
0x90, 0x0f, 0x7b, 0xfd, 0x08, 0x87, 0x74, 0x43, 0x6b, 0x36, 0x6f, 0xc5, 0xfc, 0x0e, 0xf0, 0xab, 0x17, 0x06, 0xd4, 0xe3, 0x68, 0x9b, 0x5c, 0x82, 0x8a, 0x51, 0x5f, 0x2b, 0x94, 0x45, 0x01, 0x72,
0xe8, 0x18, 0x9f, 0xd1, 0x9d, 0xac, 0xd9, 0x49, 0xd3, 0xfa, 0xab, 0x01, 0x4b, 0x3a, 0x8c, 0x95, 0xaf, 0xd7, 0x0f, 0x71, 0x40, 0x17, 0xb4, 0x62, 0xf3, 0x56, 0x24, 0xef, 0x08, 0xbf, 0x0a, 0x5b,
0x0e, 0x83, 0x87, 0x00, 0x83, 0xf4, 0x2e, 0xc8, 0x8e, 0x81, 0x0f, 0x8b, 0xc2, 0x1d, 0xe3, 0xf6, 0xf8, 0x9c, 0xae, 0x64, 0xc5, 0x8e, 0x9b, 0xd6, 0x5f, 0x0d, 0x58, 0xd2, 0x61, 0x2c, 0x75, 0x18,
0x70, 0xd8, 0xef, 0xd3, 0xd3, 0x54, 0x9a, 0x19, 0x73, 0xf6, 0x38, 0x5c, 0x26, 0x47, 0xd2, 0xb4, 0xec, 0x01, 0x0c, 0x92, 0xdb, 0x21, 0x3b, 0x06, 0x3e, 0xcc, 0x0b, 0x77, 0x4c, 0xda, 0xde, 0xb0,
0x7e, 0xa3, 0xc0, 0x15, 0x17, 0xa3, 0xd2, 0x20, 0x20, 0xc1, 0x9a, 0xa0, 0x37, 0x26, 0x99, 0xdd, 0xdf, 0xa7, 0xa7, 0xa9, 0x34, 0x32, 0x92, 0xec, 0x72, 0xb8, 0x4c, 0x8f, 0xb8, 0x69, 0xfd, 0x5a,
0x78, 0x41, 0xe0, 0x77, 0x06, 0x2c, 0x6b, 0x21, 0xbd, 0x4b, 0x15, 0x5a, 0x7f, 0x33, 0x00, 0x3d, 0x81, 0x2b, 0xae, 0x4a, 0x85, 0x41, 0x40, 0x82, 0x35, 0x46, 0xef, 0x50, 0xb2, 0xb8, 0xeb, 0x05,
0xe9, 0x75, 0x4e, 0x25, 0xba, 0x72, 0x25, 0x7d, 0x0d, 0xe6, 0x63, 0x7a, 0xec, 0x32, 0xc1, 0x25, 0x81, 0xdf, 0x1a, 0xb0, 0xac, 0x85, 0xf4, 0x2e, 0x4d, 0x68, 0xfd, 0xcd, 0x00, 0xf4, 0xb4, 0xd7,
0x55, 0x29, 0xfd, 0x31, 0x78, 0x1b, 0x3b, 0xc4, 0xf7, 0xb8, 0xba, 0x78, 0x2b, 0xaf, 0xac, 0x5a, 0x39, 0x93, 0xf8, 0x8a, 0x8d, 0xf4, 0x35, 0x98, 0x8f, 0xf8, 0xb1, 0xc3, 0x14, 0x97, 0x4c, 0xa5,
0xb9, 0xcb, 0x5d, 0xcd, 0xb9, 0xdc, 0xc7, 0x50, 0x6f, 0xbb, 0x9b, 0x2c, 0x74, 0x14, 0x1e, 0xf5, 0xd0, 0x23, 0xf0, 0x36, 0x6e, 0x13, 0xcf, 0xe5, 0xe6, 0xe2, 0xad, 0xac, 0xb1, 0x2a, 0xc5, 0x2e,
0x94, 0x35, 0x0d, 0x38, 0x2c, 0x41, 0xe1, 0x2d, 0xeb, 0x53, 0x58, 0x54, 0xc4, 0xad, 0xb4, 0x01, 0x37, 0x99, 0x71, 0xb9, 0x8f, 0xa1, 0xda, 0x74, 0x36, 0x59, 0xe8, 0xc8, 0x3d, 0xea, 0xa9, 0x68,
0xf7, 0x60, 0x4e, 0xa0, 0x90, 0xf6, 0x60, 0x9e, 0xbb, 0xba, 0x18, 0xb3, 0xb3, 0x64, 0xd6, 0x90, 0x1a, 0x70, 0x58, 0xca, 0xc2, 0x5b, 0xd6, 0xa7, 0xb0, 0xa8, 0xa8, 0x5b, 0x6a, 0x01, 0x1e, 0xc0,
0xfa, 0x7a, 0x7c, 0x1c, 0x60, 0x97, 0xa2, 0x48, 0x7c, 0x3d, 0x1b, 0x68, 0x0d, 0x25, 0xd0, 0xae, 0x9c, 0x40, 0x21, 0xad, 0xc1, 0x3c, 0x77, 0x75, 0xd1, 0x67, 0xa7, 0xd9, 0xac, 0x21, 0xf5, 0xf5,
0xc1, 0x8c, 0xaf, 0xc6, 0x29, 0x7f, 0xc4, 0x38, 0xf5, 0x19, 0x73, 0x08, 0x85, 0xef, 0x58, 0xb9, 0xe8, 0x38, 0xc0, 0x0e, 0x45, 0x11, 0xfb, 0x7a, 0x3a, 0xd0, 0x1a, 0x4a, 0xa0, 0x5d, 0x83, 0x19,
0xca, 0xc8, 0xf7, 0xf5, 0x94, 0xdc, 0xfa, 0xbb, 0x01, 0xd7, 0xdb, 0xde, 0x79, 0x2f, 0xc2, 0x31, 0x4f, 0x8d, 0x53, 0xde, 0x88, 0x71, 0xea, 0x33, 0xe6, 0x10, 0x8a, 0xdc, 0x6b, 0x65, 0x2f, 0x23,
0xb2, 0x67, 0xbe, 0x88, 0xd0, 0x97, 0xc7, 0xe1, 0xe2, 0x43, 0x2a, 0x35, 0xb4, 0x2b, 0x19, 0x43, 0xdf, 0xe0, 0x13, 0x76, 0xeb, 0xef, 0x06, 0xdc, 0x6c, 0xba, 0x17, 0xbd, 0x10, 0x47, 0xc8, 0x9e,
0xfb, 0x08, 0x16, 0x18, 0x2f, 0xd9, 0x5a, 0x6b, 0xd4, 0x5a, 0xd5, 0x81, 0x52, 0xa3, 0xfb, 0xb9, 0x79, 0x22, 0x42, 0x5f, 0x1d, 0x87, 0xf3, 0x0f, 0xa9, 0x64, 0xa3, 0x4d, 0xa4, 0x36, 0xda, 0x47,
0x01, 0x4d, 0x0d, 0xec, 0x2f, 0xd5, 0x74, 0x3c, 0xb8, 0x2e, 0x2e, 0xe5, 0xfd, 0xfe, 0x28, 0xce, 0xb0, 0xc0, 0x64, 0xc9, 0xbb, 0xb5, 0x42, 0x77, 0xab, 0xda, 0x51, 0xb8, 0xe9, 0x7e, 0x6e, 0x40,
0x3a, 0xde, 0x85, 0xf7, 0xb7, 0xd2, 0xb9, 0x24, 0x31, 0x7c, 0xa7, 0xf1, 0xea, 0xf7, 0x06, 0x4c, 0x5d, 0x03, 0xfb, 0x4b, 0xdd, 0x3a, 0x2e, 0xdc, 0x14, 0x97, 0xf2, 0x7e, 0x7f, 0x14, 0x67, 0xbd,
0x6f, 0xef, 0x1f, 0x53, 0xb2, 0xb1, 0x72, 0xbc, 0x3b, 0xd0, 0x60, 0xbc, 0x1c, 0x12, 0xe1, 0xf0, 0xde, 0x85, 0xf7, 0x37, 0xd2, 0xb9, 0x24, 0x09, 0x7c, 0xa7, 0xf1, 0xea, 0x77, 0x06, 0x4c, 0x6f,
0xc0, 0x19, 0x24, 0xd7, 0xbe, 0x7c, 0x37, 0xba, 0xcd, 0x33, 0x54, 0xd6, 0xd5, 0x76, 0xb9, 0xaa, 0x1f, 0xb6, 0x28, 0x5b, 0x3a, 0x8b, 0x36, 0x5e, 0xaf, 0x4c, 0x70, 0x0f, 0x6a, 0x4c, 0x56, 0x9b,
0xb2, 0x9d, 0x71, 0x78, 0x9f, 0x49, 0x94, 0x15, 0x6f, 0xca, 0x2a, 0xc7, 0x46, 0x57, 0x66, 0xdb, 0x84, 0x38, 0x38, 0x6a, 0x0f, 0xe2, 0x6b, 0x5f, 0x96, 0x8c, 0xee, 0xf2, 0x9c, 0x95, 0x91, 0x9a,
0x92, 0x76, 0xa0, 0x1d, 0x80, 0x1f, 0x38, 0xdd, 0x9e, 0x47, 0x55, 0xcd, 0xeb, 0x19, 0xb7, 0x35, 0x0e, 0x37, 0x55, 0x9a, 0x18, 0x85, 0xf7, 0x99, 0xd8, 0x58, 0xd1, 0xa2, 0xac, 0x72, 0x6c, 0x74,
0xd0, 0xf9, 0xed, 0x3e, 0xa5, 0xb5, 0xa5, 0x79, 0x23, 0x6c, 0xe1, 0x17, 0x06, 0xcc, 0xa6, 0xa8, 0x66, 0xb6, 0x2c, 0x09, 0x01, 0xed, 0x00, 0xfc, 0xa0, 0xdd, 0xed, 0xb9, 0xd4, 0xd4, 0xbc, 0xc2,
0x48, 0x80, 0xbe, 0x01, 0xf5, 0x44, 0x7d, 0x84, 0x57, 0x61, 0x1a, 0xc9, 0xed, 0x84, 0xf7, 0xdb, 0x71, 0x57, 0x03, 0x9d, 0xdf, 0xee, 0x13, 0x5e, 0x5b, 0x1a, 0x37, 0xc2, 0x12, 0x7e, 0x61, 0xc0,
0x29, 0xc5, 0x1b, 0xc2, 0x29, 0x74, 0x31, 0x1c, 0x10, 0x8a, 0xb2, 0x66, 0xa7, 0x1d, 0xd6, 0x79, 0x6c, 0x82, 0x8a, 0xf8, 0xe8, 0x1b, 0x50, 0x8d, 0xcd, 0x47, 0x78, 0x5d, 0xa6, 0x16, 0xdf, 0x4e,
0x0a, 0x91, 0xc4, 0x9a, 0xcb, 0xf2, 0x34, 0xde, 0x8c, 0x6e, 0xd4, 0x70, 0x62, 0xfd, 0xc9, 0x80, 0x38, 0xdd, 0x4e, 0x38, 0xde, 0x10, 0x4e, 0x61, 0x8b, 0xe1, 0x80, 0x50, 0x94, 0x15, 0x3b, 0x21,
0x39, 0x89, 0xf1, 0xbb, 0x52, 0x8e, 0x09, 0xd3, 0x89, 0x2e, 0xb8, 0x6e, 0x44, 0xdb, 0x3a, 0x4c, 0x58, 0x17, 0x09, 0x44, 0x12, 0x59, 0x2e, 0x2d, 0xd3, 0x78, 0x33, 0xb6, 0x51, 0xc3, 0x89, 0xf5,
0x6b, 0x2c, 0x1a, 0x77, 0x77, 0xb3, 0xee, 0xee, 0x8e, 0x20, 0xf3, 0x29, 0x34, 0x59, 0x93, 0xd5, 0x27, 0x03, 0xe6, 0x24, 0xc1, 0xef, 0xca, 0x38, 0x26, 0x4c, 0xc7, 0xb6, 0xe0, 0xb6, 0x11, 0x6d,
0xaa, 0x8e, 0x23, 0x27, 0x1a, 0x92, 0xf2, 0x45, 0x97, 0xe0, 0x2a, 0x23, 0x4b, 0x4e, 0x52, 0xd6, 0xeb, 0x38, 0xa9, 0xba, 0x68, 0xdc, 0xdd, 0x49, 0xbb, 0xbb, 0x33, 0x82, 0xce, 0x67, 0x50, 0x67,
0x1a, 0xc1, 0xf8, 0x5a, 0xb0, 0xa4, 0x63, 0xc6, 0x32, 0x33, 0xc4, 0x87, 0x68, 0x3a, 0xed, 0xf7, 0x4d, 0x56, 0xbd, 0x6a, 0x85, 0xed, 0x70, 0x48, 0x8a, 0x27, 0x5d, 0x82, 0x49, 0xc6, 0x16, 0x9f,
0xf1, 0xa5, 0x20, 0x68, 0xd8, 0x72, 0x93, 0xb0, 0xc2, 0x5a, 0xd9, 0x52, 0xe4, 0x64, 0xae, 0x14, 0xa4, 0xac, 0x35, 0xc2, 0xe6, 0x6b, 0xc0, 0x92, 0x4e, 0x18, 0xcb, 0xcc, 0x10, 0xef, 0xa2, 0xe9,
0x39, 0xc2, 0xa5, 0xac, 0x09, 0x8b, 0x0a, 0x0e, 0x12, 0x58, 0x4f, 0xe1, 0xda, 0x0e, 0xee, 0x63, 0xb4, 0xd7, 0xc7, 0x57, 0x82, 0xa0, 0x61, 0xcb, 0x89, 0xc3, 0x0a, 0x6b, 0xa5, 0x8b, 0x93, 0xe3,
0xa9, 0x84, 0x39, 0x8e, 0xd2, 0x17, 0xa0, 0x91, 0x59, 0x8d, 0x04, 0xd6, 0x3e, 0x34, 0x92, 0x8d, 0x99, 0xe2, 0xe4, 0x08, 0x97, 0xb2, 0x3a, 0x2c, 0x2a, 0x38, 0x88, 0x6f, 0x1d, 0xc0, 0x8d, 0x1d,
0xdd, 0xfa, 0x69, 0xdb, 0x1d, 0x97, 0xc3, 0xfd, 0xb4, 0x00, 0xc8, 0x96, 0x23, 0x01, 0xfa, 0x7a, 0xdc, 0xc7, 0x52, 0x51, 0xf3, 0x3a, 0x46, 0x5f, 0x80, 0x5a, 0x6a, 0x36, 0xe2, 0x5b, 0x87, 0x50,
0x1a, 0x28, 0xb9, 0x13, 0x29, 0xb6, 0x2c, 0x08, 0xac, 0x7f, 0x28, 0x29, 0x08, 0xd9, 0xde, 0x3f, 0x8b, 0x17, 0x76, 0xeb, 0xa7, 0x4d, 0xe7, 0xba, 0x12, 0x1e, 0x26, 0x25, 0x41, 0x36, 0x1d, 0xf1,
0x2e, 0x87, 0x65, 0xc2, 0x74, 0xac, 0x34, 0x29, 0x74, 0x8a, 0x76, 0xce, 0x35, 0x26, 0xdf, 0x8c, 0xd1, 0xd7, 0x93, 0x40, 0xc9, 0x9d, 0x48, 0xd9, 0xcb, 0x82, 0xc1, 0xfa, 0x87, 0x92, 0x82, 0x90,
0x0f, 0x6b, 0xf6, 0xef, 0x5f, 0xea, 0x3d, 0x9f, 0xe2, 0x26, 0x01, 0xfa, 0x3e, 0x4c, 0xb1, 0x73, 0xed, 0xc3, 0x56, 0x31, 0x2c, 0x13, 0xa6, 0x23, 0xa3, 0x49, 0xa1, 0x53, 0xb4, 0x33, 0xae, 0x31,
0x23, 0x71, 0xe5, 0x51, 0x8f, 0x9b, 0x64, 0x1a, 0xda, 0xd5, 0xf8, 0xf7, 0x57, 0xb4, 0x42, 0xb0, 0xfe, 0x66, 0x7c, 0x58, 0xb3, 0x7e, 0xff, 0x52, 0xef, 0xf9, 0x14, 0x37, 0xf1, 0xd1, 0xf7, 0x61,
0x5c, 0xb5, 0x40, 0x8a, 0x9b, 0x00, 0x8c, 0x83, 0x14, 0xfe, 0xa4, 0x1e, 0xeb, 0x57, 0x06, 0xb4, 0x8a, 0x9d, 0x1b, 0xb1, 0x2b, 0x8f, 0x7a, 0xdc, 0xc4, 0xc3, 0xd0, 0xae, 0xc6, 0xbf, 0xbf, 0xa2,
0x6c, 0x3c, 0xf0, 0xcf, 0xf1, 0x6b, 0xa9, 0xbf, 0x05, 0x53, 0xcc, 0x09, 0x08, 0xbf, 0x7f, 0x27, 0x55, 0x82, 0xe5, 0xaa, 0x39, 0x5a, 0xdc, 0x06, 0x60, 0x12, 0xa4, 0xf0, 0x27, 0x51, 0xac, 0x5f,
0xcd, 0xd7, 0xaa, 0x77, 0xbb, 0xb9, 0x7a, 0xb7, 0x6b, 0xed, 0xc3, 0x4a, 0x01, 0x1a, 0x76, 0xf0, 0x1a, 0xd0, 0xb0, 0xf1, 0xc0, 0xbb, 0xc0, 0xaf, 0x65, 0xfe, 0x06, 0x4c, 0x31, 0x27, 0x20, 0xfc,
0x93, 0x61, 0xa7, 0x83, 0x09, 0xe1, 0x15, 0xe5, 0xa4, 0x19, 0x7b, 0xe8, 0x89, 0xd3, 0xeb, 0x63, 0xfe, 0x1d, 0x37, 0x5f, 0xab, 0x02, 0xee, 0x64, 0x2a, 0xe0, 0x8e, 0x75, 0x08, 0x2b, 0x39, 0x68,
0x97, 0xa3, 0xe1, 0x2d, 0xeb, 0x73, 0x03, 0x9a, 0x0f, 0x5c, 0xf7, 0x6d, 0x88, 0xe6, 0xaa, 0xa2, 0xd8, 0xc1, 0x4f, 0x86, 0x9d, 0x0e, 0x26, 0x84, 0xd7, 0x98, 0xe3, 0x66, 0xe4, 0xa1, 0xa7, 0xed,
0xb9, 0xa5, 0xa2, 0x3d, 0x86, 0x25, 0x1d, 0x94, 0x4a, 0x72, 0xf5, 0xa0, 0xb1, 0xd3, 0x23, 0x83, 0x5e, 0x1f, 0x3b, 0x1c, 0x0d, 0x6f, 0x59, 0x9f, 0x1b, 0x50, 0x7f, 0xe4, 0x38, 0x6f, 0x43, 0x35,
0x1e, 0x21, 0x22, 0x46, 0x98, 0x30, 0xed, 0xe7, 0x6a, 0xb2, 0x7e, 0x30, 0xf2, 0xed, 0xbd, 0x05, 0x47, 0x55, 0xcd, 0x29, 0x54, 0xed, 0x09, 0x2c, 0xe9, 0xa0, 0x94, 0xd2, 0xab, 0x07, 0xb5, 0x9d,
0x53, 0xdd, 0xec, 0xed, 0x96, 0x37, 0xad, 0x5d, 0x98, 0xcf, 0xb2, 0x62, 0x65, 0x86, 0xce, 0x28, 0x1e, 0x19, 0xf4, 0x08, 0x11, 0x31, 0xc2, 0x84, 0x69, 0x2f, 0x53, 0x93, 0xf5, 0xfc, 0x91, 0x6f,
0x65, 0x86, 0x94, 0xc8, 0xfa, 0x8b, 0x01, 0x68, 0x7f, 0x18, 0xe1, 0xdc, 0x71, 0xf2, 0x96, 0x50, 0xef, 0x0d, 0x98, 0xea, 0xa6, 0x6f, 0xb7, 0xbc, 0x69, 0xed, 0xc2, 0x7c, 0x5a, 0x14, 0x2b, 0x33,
0xc7, 0x8a, 0x1b, 0xca, 0x45, 0x23, 0xde, 0x42, 0x16, 0xcc, 0x0e, 0x86, 0x11, 0x76, 0x8f, 0x71, 0x74, 0x46, 0x29, 0x33, 0x24, 0x4c, 0xd6, 0x5f, 0x0c, 0x40, 0x87, 0xc3, 0x10, 0x67, 0x8e, 0x93,
0xc7, 0xf7, 0x5c, 0x42, 0xb3, 0xbf, 0x39, 0x3b, 0xd3, 0x67, 0xed, 0xc1, 0xa2, 0x82, 0xb4, 0x9a, 0xb7, 0x84, 0x3a, 0x32, 0xdc, 0x50, 0x2e, 0x1a, 0xf1, 0x16, 0xb2, 0x60, 0x76, 0x30, 0x0c, 0xb1,
0xd0, 0xbf, 0x30, 0xa0, 0xb5, 0xed, 0x78, 0x1d, 0xdc, 0x7f, 0xf7, 0xa2, 0x5b, 0x07, 0xb0, 0x52, 0xd3, 0xc2, 0x1d, 0xcf, 0x75, 0x08, 0xcd, 0xfe, 0xe6, 0xec, 0x14, 0xcd, 0xda, 0x87, 0x45, 0x05,
0x80, 0xa5, 0x9a, 0x70, 0x27, 0x30, 0x2b, 0x56, 0x7a, 0x9b, 0x06, 0xb8, 0x05, 0x73, 0x12, 0x9f, 0x69, 0x39, 0xa5, 0x7f, 0x61, 0x40, 0x63, 0xbb, 0xed, 0x76, 0x70, 0xff, 0xdd, 0xab, 0x6e, 0x1d,
0x6a, 0x58, 0xfb, 0x80, 0x72, 0xb2, 0xbf, 0x4d, 0xc4, 0x7b, 0xb0, 0xa8, 0x70, 0xab, 0x86, 0xfb, 0xc1, 0x4a, 0x0e, 0x96, 0x72, 0xca, 0x9d, 0xc2, 0xac, 0x98, 0xe9, 0x6d, 0x6e, 0xc0, 0x2d, 0x98,
0xcf, 0x06, 0xac, 0x1c, 0x67, 0x4e, 0x98, 0x83, 0x5e, 0xe7, 0xd4, 0x73, 0x06, 0xc9, 0x8d, 0xa5, 0x93, 0xe4, 0x94, 0xc3, 0xda, 0x07, 0x94, 0xd1, 0xfd, 0x6d, 0x22, 0xde, 0x87, 0x45, 0x45, 0x5a,
0x9b, 0x4d, 0xbd, 0xba, 0x69, 0xea, 0xe5, 0x71, 0xc2, 0xe4, 0x74, 0x4c, 0xda, 0x19, 0xa9, 0x27, 0x39, 0xdc, 0x7f, 0x36, 0x60, 0xa5, 0x95, 0x3a, 0x61, 0x8e, 0x7a, 0x9d, 0x33, 0xb7, 0x3d, 0x88,
0xcb, 0xa5, 0xbe, 0xa2, 0x4a, 0x9d, 0x5a, 0x57, 0x2d, 0x63, 0x5d, 0x87, 0x60, 0x16, 0x01, 0xad, 0x6f, 0x2c, 0xdd, 0x74, 0xea, 0xd5, 0x4d, 0x52, 0x2f, 0x97, 0x33, 0xc6, 0xa7, 0x63, 0xdc, 0x4e,
0x56, 0x97, 0x0c, 0xe9, 0x0b, 0x14, 0x2b, 0x19, 0x1c, 0x0f, 0x03, 0x5e, 0x92, 0x4f, 0xea, 0x15, 0x69, 0x3d, 0x5e, 0xac, 0xf5, 0x84, 0xaa, 0x75, 0xb2, 0xbb, 0x2a, 0xa9, 0xdd, 0x75, 0x0c, 0x66,
0x39, 0xa0, 0x46, 0x19, 0xd0, 0x89, 0x4c, 0x04, 0x28, 0x11, 0x3f, 0x3e, 0x0c, 0x6f, 0x14, 0x32, 0x1e, 0xd0, 0x72, 0x75, 0xc9, 0x80, 0xbe, 0x40, 0xb1, 0x92, 0x41, 0x6b, 0xe8, 0xf3, 0x92, 0x7c,
0xad, 0xb4, 0x83, 0x63, 0x55, 0x2b, 0x2e, 0xe8, 0xb5, 0x28, 0xc5, 0xf1, 0xa5, 0x3d, 0xaf, 0xfe, 0x5c, 0xaf, 0xc8, 0x00, 0x35, 0x8a, 0x80, 0x8e, 0xa5, 0x22, 0x40, 0x81, 0xfa, 0xd1, 0x61, 0x78,
0x9a, 0x5d, 0x6c, 0x14, 0xce, 0xd5, 0x54, 0xf0, 0x26, 0x1e, 0x59, 0xff, 0x33, 0x01, 0xcd, 0xac, 0x2b, 0x57, 0x68, 0xa9, 0x15, 0xbc, 0x56, 0xb5, 0xe2, 0x92, 0x5e, 0x8b, 0x12, 0x1c, 0x5f, 0xda,
0x7d, 0x49, 0x15, 0xd5, 0x02, 0x27, 0xa8, 0x60, 0x01, 0x23, 0x38, 0xc0, 0xb7, 0x24, 0xd7, 0xaa, 0x83, 0xeb, 0xaf, 0xd8, 0xc5, 0x46, 0x91, 0x5c, 0xce, 0x04, 0x6f, 0xe2, 0xd9, 0xf5, 0x3f, 0x63,
0xf1, 0xac, 0xbf, 0xeb, 0xfb, 0xdd, 0x3e, 0x66, 0xbf, 0x43, 0xbc, 0x1c, 0x9e, 0xac, 0x1f, 0x47, 0x50, 0x4f, 0xef, 0x2f, 0xa9, 0xa2, 0x9a, 0xe3, 0x04, 0x25, 0x76, 0xc0, 0x08, 0x0e, 0xf0, 0x2d,
0x61, 0xcf, 0xeb, 0xfe, 0xd0, 0xe9, 0x0f, 0xb1, 0xe4, 0x78, 0xf7, 0x60, 0xea, 0xc4, 0xe9, 0xe0, 0xc9, 0xb5, 0x2a, 0x3c, 0xeb, 0xef, 0x7a, 0x5e, 0xb7, 0x8f, 0xd9, 0x0f, 0x12, 0x2f, 0x87, 0xa7,
0x4f, 0xec, 0xa7, 0xb4, 0xc0, 0x73, 0xd9, 0xc4, 0x84, 0x18, 0x7d, 0x1b, 0xea, 0xa1, 0x48, 0x33, 0xeb, 0xad, 0x30, 0xe8, 0xb9, 0xdd, 0x1f, 0xb6, 0xfb, 0x43, 0x2c, 0x39, 0xde, 0x03, 0x98, 0x3a,
0xa6, 0xe8, 0xcc, 0x1b, 0xca, 0xcc, 0xb6, 0x17, 0xdd, 0xdd, 0x64, 0x13, 0x53, 0x6a, 0xf4, 0x11, 0x6d, 0x77, 0xf0, 0x27, 0xf6, 0x01, 0x2d, 0xf0, 0x5c, 0x35, 0x30, 0x66, 0x46, 0xdf, 0x86, 0x6a,
0x4c, 0xe0, 0x57, 0xad, 0xe9, 0x11, 0xb8, 0x4d, 0xe0, 0x57, 0xd6, 0x13, 0x58, 0xd2, 0xe9, 0xb8, 0x20, 0xd2, 0x8c, 0x29, 0x3a, 0xf2, 0x96, 0x32, 0xb2, 0xe9, 0x86, 0xf7, 0x37, 0xd9, 0xc0, 0x84,
0x92, 0xff, 0x6e, 0xfe, 0x6f, 0x11, 0xd8, 0xbf, 0x26, 0xe8, 0xbb, 0x30, 0xd3, 0x49, 0xff, 0x50, 0x1b, 0x7d, 0x04, 0x63, 0xf8, 0x55, 0x63, 0x7a, 0x04, 0x69, 0x63, 0xf8, 0x95, 0xf5, 0x14, 0x96,
0x40, 0xcd, 0x64, 0x5e, 0xe6, 0x37, 0x0d, 0x73, 0x49, 0xd7, 0x4d, 0x02, 0x74, 0x0f, 0xea, 0x3f, 0x74, 0x36, 0x2e, 0xe5, 0xbf, 0x9b, 0xff, 0x5b, 0x04, 0xf6, 0xf7, 0x09, 0xfa, 0x2e, 0xcc, 0x74,
0x49, 0x9e, 0xaf, 0xd0, 0x22, 0x27, 0x92, 0x1f, 0xd6, 0xcc, 0xeb, 0x6a, 0x27, 0x9b, 0x77, 0x96, 0x92, 0x7f, 0x16, 0x50, 0x3d, 0x1e, 0x97, 0xfa, 0x71, 0xc3, 0x5c, 0xd2, 0x91, 0x89, 0x8f, 0x1e,
0xbc, 0x8d, 0x88, 0x79, 0xf2, 0xab, 0x8c, 0x98, 0x97, 0x7d, 0x42, 0xd9, 0x82, 0xb9, 0xae, 0xfc, 0x40, 0xf5, 0x27, 0xf1, 0xf3, 0x15, 0x5a, 0xe4, 0x4c, 0xf2, 0xc3, 0x9a, 0x79, 0x53, 0x25, 0xb2,
0x67, 0x01, 0x5a, 0x4e, 0xfe, 0x13, 0xc9, 0xfd, 0xe4, 0x60, 0xb6, 0xf4, 0x03, 0x24, 0x40, 0xf7, 0x71, 0xe7, 0xf1, 0xdb, 0x88, 0x18, 0x27, 0xbf, 0xca, 0x88, 0x71, 0xe9, 0x27, 0x94, 0x2d, 0x98,
0x61, 0x96, 0x48, 0x8f, 0xf0, 0x28, 0x91, 0x2d, 0xf7, 0x9b, 0x80, 0xb9, 0xac, 0xed, 0x27, 0x01, 0xeb, 0xca, 0xff, 0x1a, 0xa0, 0xe5, 0xf8, 0xcf, 0x91, 0xcc, 0x6f, 0x0f, 0x66, 0x43, 0xdf, 0x41,
0xfa, 0x31, 0x2c, 0x77, 0xf5, 0x2f, 0xe0, 0xe8, 0x56, 0x8e, 0xab, 0xfa, 0x02, 0x6d, 0x5a, 0x97, 0x7c, 0xf4, 0x10, 0x66, 0x89, 0xf4, 0x08, 0x8f, 0x62, 0xdd, 0x32, 0x3f, 0x0e, 0x98, 0xcb, 0x5a,
0x91, 0x90, 0x00, 0x9d, 0xc0, 0x4a, 0xb7, 0xe8, 0x39, 0x19, 0x7d, 0x90, 0x2e, 0x50, 0xf8, 0xce, 0x3a, 0xf1, 0xd1, 0x8f, 0x61, 0xb9, 0xab, 0x7f, 0x01, 0x47, 0x77, 0x32, 0x52, 0xd5, 0x17, 0x68,
0x6d, 0xde, 0xbe, 0x9c, 0x88, 0x04, 0xe8, 0x08, 0x50, 0xa4, 0xbc, 0xa9, 0xa2, 0x55, 0x3e, 0x57, 0xd3, 0xba, 0x8a, 0x85, 0xf8, 0xe8, 0x14, 0x56, 0xba, 0x79, 0xcf, 0xc9, 0xe8, 0x83, 0x64, 0x82,
0xfb, 0x5e, 0x6c, 0xbe, 0x57, 0x32, 0x4a, 0x02, 0xd4, 0x81, 0x56, 0xb7, 0xe0, 0xc1, 0x0e, 0x59, 0xdc, 0x77, 0x6e, 0xf3, 0xee, 0xd5, 0x4c, 0xc4, 0x47, 0x27, 0x80, 0x42, 0xe5, 0x4d, 0x15, 0xad,
0x99, 0x9f, 0x7a, 0xb4, 0x8f, 0x95, 0xe6, 0x07, 0x97, 0xd2, 0x30, 0xdc, 0x5d, 0xe5, 0xc5, 0x49, 0xf2, 0xb1, 0xda, 0xf7, 0x62, 0xf3, 0xbd, 0x82, 0x5e, 0xe2, 0xa3, 0x0e, 0x34, 0xba, 0x39, 0x0f,
0xe0, 0xd6, 0x3e, 0x98, 0x09, 0xdc, 0x05, 0x4f, 0x55, 0xcf, 0x60, 0xb1, 0xab, 0x3e, 0xc1, 0x20, 0x76, 0xc8, 0x4a, 0xfd, 0xe6, 0xa3, 0x7d, 0xac, 0x34, 0x3f, 0xb8, 0x92, 0x87, 0xe1, 0xee, 0x2a,
0xfd, 0x2c, 0x61, 0x65, 0x37, 0xcb, 0x86, 0x49, 0x80, 0xf6, 0xa0, 0x71, 0x9a, 0x7d, 0x53, 0x40, 0x2f, 0x4e, 0x02, 0xb7, 0xf6, 0xc1, 0x4c, 0xe0, 0xce, 0x79, 0xaa, 0x7a, 0x06, 0x8b, 0x5d, 0xf5,
0xc9, 0x9f, 0x4d, 0xea, 0xd3, 0x8a, 0x69, 0x16, 0x0d, 0x09, 0x91, 0x73, 0x45, 0x7a, 0x59, 0x64, 0x09, 0x06, 0xe9, 0x47, 0x89, 0x5d, 0x76, 0xbb, 0xa8, 0x9b, 0xf8, 0x68, 0x1f, 0x6a, 0x67, 0xe9,
0xf5, 0xdd, 0x40, 0x16, 0x59, 0x57, 0xdd, 0x3f, 0x80, 0x85, 0x5e, 0xbe, 0x6e, 0x8d, 0x6e, 0x24, 0x37, 0x05, 0x14, 0xff, 0xeb, 0xa4, 0x3e, 0xad, 0x98, 0x66, 0x5e, 0x97, 0x50, 0x39, 0x53, 0xa4,
0xa5, 0x66, 0x4d, 0x21, 0xde, 0x5c, 0x2d, 0x1e, 0x64, 0xeb, 0x75, 0xf3, 0x35, 0x61, 0xb1, 0x9e, 0x97, 0x55, 0x56, 0xdf, 0x0d, 0x64, 0x95, 0x75, 0xd5, 0xfd, 0x23, 0x58, 0xe8, 0x65, 0xeb, 0xd6,
0xae, 0x3c, 0x6d, 0xae, 0x16, 0x0f, 0x32, 0x47, 0x95, 0x4b, 0x17, 0xc2, 0x51, 0x73, 0xe5, 0x11, 0xe8, 0x56, 0x5c, 0x6a, 0xd6, 0x14, 0xe2, 0xcd, 0xd5, 0xfc, 0x4e, 0x36, 0x5f, 0x37, 0x5b, 0x13,
0x73, 0x59, 0xdb, 0x4f, 0x02, 0x74, 0x17, 0xa6, 0x93, 0x3e, 0x84, 0x72, 0x44, 0xf1, 0xc4, 0x45, 0x16, 0xf3, 0xe9, 0xca, 0xd3, 0xe6, 0x6a, 0x7e, 0x27, 0x73, 0x54, 0xb9, 0x74, 0x21, 0x1c, 0x35,
0xa5, 0x8f, 0x85, 0x26, 0x11, 0x33, 0x50, 0x9e, 0x82, 0xc8, 0xa1, 0x29, 0x5b, 0x21, 0x3c, 0x12, 0x53, 0x1e, 0x31, 0x97, 0xb5, 0x74, 0xe2, 0xa3, 0xfb, 0x30, 0x1d, 0xd3, 0x10, 0xca, 0x30, 0x45,
0x75, 0x2b, 0xa9, 0xa4, 0x25, 0x36, 0x48, 0x5b, 0x5a, 0x13, 0x1b, 0xa4, 0xaf, 0x85, 0xc5, 0xd6, 0x03, 0x17, 0x15, 0x1a, 0x0b, 0x4d, 0x22, 0x66, 0xa0, 0x2c, 0x07, 0x91, 0x43, 0x53, 0xba, 0x42,
0x93, 0x2b, 0x41, 0x09, 0xeb, 0x51, 0x4b, 0x64, 0xc2, 0x7a, 0x34, 0x55, 0xab, 0x38, 0xca, 0x4b, 0x78, 0x22, 0xea, 0x56, 0x52, 0x49, 0x4b, 0x2c, 0x90, 0xb6, 0xb4, 0x26, 0x16, 0x48, 0x5f, 0x0b,
0x75, 0x26, 0x11, 0xe5, 0xb3, 0x95, 0x2c, 0x11, 0xe5, 0x73, 0x25, 0xa9, 0x58, 0x34, 0xb5, 0x92, 0x8b, 0x76, 0x4f, 0xa6, 0x04, 0x25, 0x76, 0x8f, 0x5a, 0x22, 0x13, 0xbb, 0x47, 0x53, 0xb5, 0x8a,
0x52, 0xe0, 0x6e, 0x3c, 0x85, 0x2f, 0x70, 0x37, 0x91, 0x55, 0x3f, 0x87, 0xa6, 0xb6, 0x94, 0x80, 0xa2, 0xbc, 0x54, 0x67, 0x12, 0x51, 0x3e, 0x5d, 0xc9, 0x12, 0x51, 0x3e, 0x53, 0x92, 0x8a, 0x54,
0xde, 0xe7, 0xf3, 0x8a, 0xca, 0x1e, 0xe6, 0x5a, 0x39, 0x01, 0x83, 0xab, 0xe6, 0xf2, 0x02, 0xae, 0x53, 0x2b, 0x29, 0x39, 0xee, 0xc6, 0x53, 0xf8, 0x1c, 0x77, 0x13, 0x59, 0xf5, 0x73, 0xa8, 0x6b,
0xb6, 0xe2, 0x20, 0xe0, 0x16, 0x14, 0x01, 0xee, 0xc3, 0xac, 0x9c, 0x67, 0x0b, 0x53, 0xcc, 0xe5, 0x4b, 0x09, 0xe8, 0x7d, 0x3e, 0x2e, 0xaf, 0xec, 0x61, 0xae, 0x15, 0x33, 0x30, 0xb8, 0x6a, 0x2e,
0xf9, 0xc2, 0x14, 0x95, 0xa4, 0x7c, 0x0f, 0x1a, 0xb9, 0xcc, 0x4e, 0x6c, 0xa5, 0x9a, 0x7d, 0x8a, 0x2f, 0xe0, 0x6a, 0x2b, 0x0e, 0x02, 0x6e, 0x4e, 0x11, 0xe0, 0x21, 0xcc, 0xca, 0x79, 0xb6, 0xd8,
0xad, 0xd4, 0x25, 0x83, 0xcf, 0xa1, 0xa9, 0xcd, 0x14, 0x85, 0xe6, 0x8a, 0x72, 0x5a, 0xa1, 0xb9, 0x8a, 0x99, 0x3c, 0x5f, 0x6c, 0x45, 0x25, 0x29, 0xdf, 0x87, 0x5a, 0x26, 0xb3, 0x13, 0x4b, 0xa9,
0xe2, 0x44, 0xf3, 0x1e, 0xd4, 0x45, 0xb7, 0xb0, 0x7d, 0x39, 0x2b, 0x13, 0xb6, 0x9f, 0x4d, 0x9e, 0x66, 0x9f, 0x62, 0x29, 0x75, 0xc9, 0xe0, 0x73, 0xa8, 0x6b, 0x33, 0x45, 0x61, 0xb9, 0xbc, 0x9c,
0xf6, 0xa0, 0x91, 0x5b, 0x54, 0x48, 0xa7, 0x66, 0x76, 0x42, 0x3a, 0x5d, 0x1a, 0xf6, 0xa3, 0xfc, 0x56, 0x58, 0x2e, 0x3f, 0xd1, 0x7c, 0x00, 0x55, 0x41, 0x16, 0x7b, 0x5f, 0xce, 0xca, 0xc4, 0xde,
0x2d, 0x27, 0xc9, 0x54, 0xd0, 0x5a, 0xee, 0x38, 0x56, 0x32, 0x2e, 0xf3, 0xd6, 0x25, 0x14, 0xec, 0x4f, 0x27, 0x4f, 0xfb, 0x50, 0xcb, 0x4c, 0x2a, 0xb4, 0x53, 0x33, 0x3b, 0xa1, 0x9d, 0x2e, 0x0d,
0xe8, 0x2e, 0x48, 0x21, 0xe4, 0xa3, 0xbb, 0x20, 0xaf, 0x91, 0x8f, 0xee, 0xc2, 0x2c, 0x84, 0xf9, 0xfb, 0x51, 0xf6, 0x96, 0x13, 0x67, 0x2a, 0x68, 0x2d, 0x73, 0x1c, 0x2b, 0x19, 0x97, 0x79, 0xe7,
0x4a, 0xee, 0x72, 0x2e, 0xfb, 0x8a, 0x9a, 0x31, 0xc8, 0xbe, 0xa2, 0xbb, 0xd5, 0x1f, 0x01, 0x52, 0x0a, 0x0e, 0x76, 0x74, 0xe7, 0xa4, 0x10, 0xf2, 0xd1, 0x9d, 0x93, 0xd7, 0xc8, 0x47, 0x77, 0x6e,
0x6f, 0x7e, 0x62, 0x49, 0xed, 0xc5, 0x5b, 0x2c, 0xa9, 0xbf, 0x32, 0x6e, 0x35, 0x9e, 0xcf, 0xad, 0x16, 0xc2, 0x7c, 0x25, 0x73, 0x39, 0x97, 0x7d, 0x45, 0xcd, 0x18, 0x64, 0x5f, 0xd1, 0xdd, 0xea,
0xb3, 0x3f, 0x8f, 0x3f, 0xa6, 0xdf, 0x97, 0x57, 0xe9, 0xbd, 0xf3, 0xee, 0xff, 0x03, 0x00, 0x00, 0x4f, 0x00, 0xa9, 0x37, 0x3f, 0x31, 0xa5, 0xf6, 0xe2, 0x2d, 0xa6, 0xd4, 0x5f, 0x19, 0xb7, 0x6a,
0xff, 0xff, 0xce, 0xc7, 0x31, 0xb6, 0x95, 0x2c, 0x00, 0x00, 0xcf, 0xe7, 0xd6, 0xd9, 0xbf, 0xc8, 0x1f, 0xd3, 0xef, 0xcb, 0x49, 0x7a, 0xef, 0xbc, 0xff, 0xff,
0x00, 0x00, 0x00, 0xff, 0xff, 0xe6, 0x70, 0x4b, 0xcf, 0xa7, 0x2c, 0x00, 0x00,
} }

View File

@ -43,7 +43,7 @@ message GetGroupsInfoResp{
message SetGroupInfoReq{ message SetGroupInfoReq{
server_api_params.GroupInfo GroupInfo = 1; server_api_params.GroupInfoForSet groupInfoForSet = 1;
string OpUserID = 2; //app manager or group owner string OpUserID = 2; //app manager or group owner
string OperationID = 3; string OperationID = 3;
} }

File diff suppressed because it is too large Load Diff

View File

@ -20,7 +20,17 @@ message GroupInfo{
int32 status = 10; int32 status = 10;
string creatorUserID = 11; string creatorUserID = 11;
int32 groupType = 12; int32 groupType = 12;
google.protobuf.Int32Value needVerification = 13; int32 needVerification = 13;
}
message GroupInfoForSet{
string groupID = 1;
string groupName = 2;
string notification = 3;
string introduction = 4;
string faceURL = 5;
string ex = 6;
google.protobuf.Int32Value needVerification = 7;
} }