// Code generated by protoc-gen-go. DO NOT EDIT.
// source: sdk_ws/ws.proto

package server_api_params // import "Open_IM/pkg/proto/sdk_ws"

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package

type GroupInfo 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:"varint,13,opt,name=needVerification" json:"needVerification,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GroupInfo) Reset()         { *m = GroupInfo{} }
func (m *GroupInfo) String() string { return proto.CompactTextString(m) }
func (*GroupInfo) ProtoMessage()    {}
func (*GroupInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{0}
}
func (m *GroupInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupInfo.Unmarshal(m, b)
}
func (m *GroupInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupInfo.Marshal(b, m, deterministic)
}
func (dst *GroupInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupInfo.Merge(dst, src)
}
func (m *GroupInfo) XXX_Size() int {
	return xxx_messageInfo_GroupInfo.Size(m)
}
func (m *GroupInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupInfo.DiscardUnknown(m)
}

var xxx_messageInfo_GroupInfo proto.InternalMessageInfo

func (m *GroupInfo) GetGroupID() string {
	if m != nil {
		return m.GroupID
	}
	return ""
}

func (m *GroupInfo) GetGroupName() string {
	if m != nil {
		return m.GroupName
	}
	return ""
}

func (m *GroupInfo) GetNotification() string {
	if m != nil {
		return m.Notification
	}
	return ""
}

func (m *GroupInfo) GetIntroduction() string {
	if m != nil {
		return m.Introduction
	}
	return ""
}

func (m *GroupInfo) GetFaceURL() string {
	if m != nil {
		return m.FaceURL
	}
	return ""
}

func (m *GroupInfo) GetOwnerUserID() string {
	if m != nil {
		return m.OwnerUserID
	}
	return ""
}

func (m *GroupInfo) GetCreateTime() uint32 {
	if m != nil {
		return m.CreateTime
	}
	return 0
}

func (m *GroupInfo) GetMemberCount() uint32 {
	if m != nil {
		return m.MemberCount
	}
	return 0
}

func (m *GroupInfo) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

func (m *GroupInfo) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

func (m *GroupInfo) GetCreatorUserID() string {
	if m != nil {
		return m.CreatorUserID
	}
	return ""
}

func (m *GroupInfo) GetGroupType() int32 {
	if m != nil {
		return m.GroupType
	}
	return 0
}

func (m *GroupInfo) GetNeedVerification() int32 {
	if m != nil {
		return m.NeedVerification
	}
	return 0
}

type GroupInfoForSet 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"`
	Ex                   string                 `protobuf:"bytes,6,opt,name=ex" json:"ex,omitempty"`
	NeedVerification     *wrapperspb.Int32Value `protobuf:"bytes,7,opt,name=needVerification" json:"needVerification,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *GroupInfoForSet) Reset()         { *m = GroupInfoForSet{} }
func (m *GroupInfoForSet) String() string { return proto.CompactTextString(m) }
func (*GroupInfoForSet) ProtoMessage()    {}
func (*GroupInfoForSet) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{1}
}
func (m *GroupInfoForSet) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupInfoForSet.Unmarshal(m, b)
}
func (m *GroupInfoForSet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupInfoForSet.Marshal(b, m, deterministic)
}
func (dst *GroupInfoForSet) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupInfoForSet.Merge(dst, src)
}
func (m *GroupInfoForSet) XXX_Size() int {
	return xxx_messageInfo_GroupInfoForSet.Size(m)
}
func (m *GroupInfoForSet) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupInfoForSet.DiscardUnknown(m)
}

var xxx_messageInfo_GroupInfoForSet proto.InternalMessageInfo

func (m *GroupInfoForSet) GetGroupID() string {
	if m != nil {
		return m.GroupID
	}
	return ""
}

func (m *GroupInfoForSet) GetGroupName() string {
	if m != nil {
		return m.GroupName
	}
	return ""
}

func (m *GroupInfoForSet) GetNotification() string {
	if m != nil {
		return m.Notification
	}
	return ""
}

func (m *GroupInfoForSet) GetIntroduction() string {
	if m != nil {
		return m.Introduction
	}
	return ""
}

func (m *GroupInfoForSet) GetFaceURL() string {
	if m != nil {
		return m.FaceURL
	}
	return ""
}

func (m *GroupInfoForSet) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

func (m *GroupInfoForSet) GetNeedVerification() *wrapperspb.Int32Value {
	if m != nil {
		return m.NeedVerification
	}
	return nil
}

type GroupMemberFullInfo struct {
	GroupID              string   `protobuf:"bytes,1,opt,name=groupID" json:"groupID,omitempty"`
	UserID               string   `protobuf:"bytes,2,opt,name=userID" json:"userID,omitempty"`
	RoleLevel            int32    `protobuf:"varint,3,opt,name=roleLevel" json:"roleLevel,omitempty"`
	JoinTime             int32    `protobuf:"varint,4,opt,name=joinTime" json:"joinTime,omitempty"`
	Nickname             string   `protobuf:"bytes,5,opt,name=nickname" json:"nickname,omitempty"`
	FaceURL              string   `protobuf:"bytes,6,opt,name=faceURL" json:"faceURL,omitempty"`
	AppMangerLevel       int32    `protobuf:"varint,7,opt,name=appMangerLevel" json:"appMangerLevel,omitempty"`
	JoinSource           int32    `protobuf:"varint,8,opt,name=joinSource" json:"joinSource,omitempty"`
	OperatorUserID       string   `protobuf:"bytes,9,opt,name=operatorUserID" json:"operatorUserID,omitempty"`
	Ex                   string   `protobuf:"bytes,10,opt,name=ex" json:"ex,omitempty"`
	MuteEndTime          uint32   `protobuf:"varint,11,opt,name=muteEndTime" json:"muteEndTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GroupMemberFullInfo) Reset()         { *m = GroupMemberFullInfo{} }
func (m *GroupMemberFullInfo) String() string { return proto.CompactTextString(m) }
func (*GroupMemberFullInfo) ProtoMessage()    {}
func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{2}
}
func (m *GroupMemberFullInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupMemberFullInfo.Unmarshal(m, b)
}
func (m *GroupMemberFullInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupMemberFullInfo.Marshal(b, m, deterministic)
}
func (dst *GroupMemberFullInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupMemberFullInfo.Merge(dst, src)
}
func (m *GroupMemberFullInfo) XXX_Size() int {
	return xxx_messageInfo_GroupMemberFullInfo.Size(m)
}
func (m *GroupMemberFullInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupMemberFullInfo.DiscardUnknown(m)
}

var xxx_messageInfo_GroupMemberFullInfo proto.InternalMessageInfo

func (m *GroupMemberFullInfo) GetGroupID() string {
	if m != nil {
		return m.GroupID
	}
	return ""
}

func (m *GroupMemberFullInfo) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

func (m *GroupMemberFullInfo) GetRoleLevel() int32 {
	if m != nil {
		return m.RoleLevel
	}
	return 0
}

func (m *GroupMemberFullInfo) GetJoinTime() int32 {
	if m != nil {
		return m.JoinTime
	}
	return 0
}

func (m *GroupMemberFullInfo) GetNickname() string {
	if m != nil {
		return m.Nickname
	}
	return ""
}

func (m *GroupMemberFullInfo) GetFaceURL() string {
	if m != nil {
		return m.FaceURL
	}
	return ""
}

func (m *GroupMemberFullInfo) GetAppMangerLevel() int32 {
	if m != nil {
		return m.AppMangerLevel
	}
	return 0
}

func (m *GroupMemberFullInfo) GetJoinSource() int32 {
	if m != nil {
		return m.JoinSource
	}
	return 0
}

func (m *GroupMemberFullInfo) GetOperatorUserID() string {
	if m != nil {
		return m.OperatorUserID
	}
	return ""
}

func (m *GroupMemberFullInfo) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

func (m *GroupMemberFullInfo) GetMuteEndTime() uint32 {
	if m != nil {
		return m.MuteEndTime
	}
	return 0
}

type PublicUserInfo struct {
	UserID               string   `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"`
	Nickname             string   `protobuf:"bytes,2,opt,name=nickname" json:"nickname,omitempty"`
	FaceURL              string   `protobuf:"bytes,3,opt,name=faceURL" json:"faceURL,omitempty"`
	Gender               int32    `protobuf:"varint,4,opt,name=gender" json:"gender,omitempty"`
	Ex                   string   `protobuf:"bytes,5,opt,name=ex" json:"ex,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PublicUserInfo) Reset()         { *m = PublicUserInfo{} }
func (m *PublicUserInfo) String() string { return proto.CompactTextString(m) }
func (*PublicUserInfo) ProtoMessage()    {}
func (*PublicUserInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{3}
}
func (m *PublicUserInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PublicUserInfo.Unmarshal(m, b)
}
func (m *PublicUserInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PublicUserInfo.Marshal(b, m, deterministic)
}
func (dst *PublicUserInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PublicUserInfo.Merge(dst, src)
}
func (m *PublicUserInfo) XXX_Size() int {
	return xxx_messageInfo_PublicUserInfo.Size(m)
}
func (m *PublicUserInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_PublicUserInfo.DiscardUnknown(m)
}

var xxx_messageInfo_PublicUserInfo proto.InternalMessageInfo

func (m *PublicUserInfo) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

func (m *PublicUserInfo) GetNickname() string {
	if m != nil {
		return m.Nickname
	}
	return ""
}

func (m *PublicUserInfo) GetFaceURL() string {
	if m != nil {
		return m.FaceURL
	}
	return ""
}

func (m *PublicUserInfo) GetGender() int32 {
	if m != nil {
		return m.Gender
	}
	return 0
}

func (m *PublicUserInfo) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

type UserInfo struct {
	UserID               string   `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"`
	Nickname             string   `protobuf:"bytes,2,opt,name=nickname" json:"nickname,omitempty"`
	FaceURL              string   `protobuf:"bytes,3,opt,name=faceURL" json:"faceURL,omitempty"`
	Gender               int32    `protobuf:"varint,4,opt,name=gender" json:"gender,omitempty"`
	PhoneNumber          string   `protobuf:"bytes,5,opt,name=phoneNumber" json:"phoneNumber,omitempty"`
	Birth                uint32   `protobuf:"varint,6,opt,name=birth" json:"birth,omitempty"`
	Email                string   `protobuf:"bytes,7,opt,name=email" json:"email,omitempty"`
	Ex                   string   `protobuf:"bytes,8,opt,name=ex" json:"ex,omitempty"`
	CreateTime           uint32   `protobuf:"varint,9,opt,name=createTime" json:"createTime,omitempty"`
	AppMangerLevel       int32    `protobuf:"varint,10,opt,name=appMangerLevel" json:"appMangerLevel,omitempty"`
	GlobalRecvMsgOpt     int32    `protobuf:"varint,11,opt,name=globalRecvMsgOpt" json:"globalRecvMsgOpt,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UserInfo) Reset()         { *m = UserInfo{} }
func (m *UserInfo) String() string { return proto.CompactTextString(m) }
func (*UserInfo) ProtoMessage()    {}
func (*UserInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{4}
}
func (m *UserInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UserInfo.Unmarshal(m, b)
}
func (m *UserInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UserInfo.Marshal(b, m, deterministic)
}
func (dst *UserInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UserInfo.Merge(dst, src)
}
func (m *UserInfo) XXX_Size() int {
	return xxx_messageInfo_UserInfo.Size(m)
}
func (m *UserInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_UserInfo.DiscardUnknown(m)
}

var xxx_messageInfo_UserInfo proto.InternalMessageInfo

func (m *UserInfo) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

func (m *UserInfo) GetNickname() string {
	if m != nil {
		return m.Nickname
	}
	return ""
}

func (m *UserInfo) GetFaceURL() string {
	if m != nil {
		return m.FaceURL
	}
	return ""
}

func (m *UserInfo) GetGender() int32 {
	if m != nil {
		return m.Gender
	}
	return 0
}

func (m *UserInfo) GetPhoneNumber() string {
	if m != nil {
		return m.PhoneNumber
	}
	return ""
}

func (m *UserInfo) GetBirth() uint32 {
	if m != nil {
		return m.Birth
	}
	return 0
}

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

func (m *UserInfo) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

func (m *UserInfo) GetCreateTime() uint32 {
	if m != nil {
		return m.CreateTime
	}
	return 0
}

func (m *UserInfo) GetAppMangerLevel() int32 {
	if m != nil {
		return m.AppMangerLevel
	}
	return 0
}

func (m *UserInfo) GetGlobalRecvMsgOpt() int32 {
	if m != nil {
		return m.GlobalRecvMsgOpt
	}
	return 0
}

type FriendInfo struct {
	OwnerUserID          string    `protobuf:"bytes,1,opt,name=ownerUserID" json:"ownerUserID,omitempty"`
	Remark               string    `protobuf:"bytes,2,opt,name=remark" json:"remark,omitempty"`
	CreateTime           uint32    `protobuf:"varint,3,opt,name=createTime" json:"createTime,omitempty"`
	FriendUser           *UserInfo `protobuf:"bytes,4,opt,name=friendUser" json:"friendUser,omitempty"`
	AddSource            int32     `protobuf:"varint,5,opt,name=addSource" json:"addSource,omitempty"`
	OperatorUserID       string    `protobuf:"bytes,6,opt,name=operatorUserID" json:"operatorUserID,omitempty"`
	Ex                   string    `protobuf:"bytes,7,opt,name=ex" json:"ex,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *FriendInfo) Reset()         { *m = FriendInfo{} }
func (m *FriendInfo) String() string { return proto.CompactTextString(m) }
func (*FriendInfo) ProtoMessage()    {}
func (*FriendInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{5}
}
func (m *FriendInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FriendInfo.Unmarshal(m, b)
}
func (m *FriendInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FriendInfo.Marshal(b, m, deterministic)
}
func (dst *FriendInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FriendInfo.Merge(dst, src)
}
func (m *FriendInfo) XXX_Size() int {
	return xxx_messageInfo_FriendInfo.Size(m)
}
func (m *FriendInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_FriendInfo.DiscardUnknown(m)
}

var xxx_messageInfo_FriendInfo proto.InternalMessageInfo

func (m *FriendInfo) GetOwnerUserID() string {
	if m != nil {
		return m.OwnerUserID
	}
	return ""
}

func (m *FriendInfo) GetRemark() string {
	if m != nil {
		return m.Remark
	}
	return ""
}

func (m *FriendInfo) GetCreateTime() uint32 {
	if m != nil {
		return m.CreateTime
	}
	return 0
}

func (m *FriendInfo) GetFriendUser() *UserInfo {
	if m != nil {
		return m.FriendUser
	}
	return nil
}

func (m *FriendInfo) GetAddSource() int32 {
	if m != nil {
		return m.AddSource
	}
	return 0
}

func (m *FriendInfo) GetOperatorUserID() string {
	if m != nil {
		return m.OperatorUserID
	}
	return ""
}

func (m *FriendInfo) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

type BlackInfo struct {
	OwnerUserID          string          `protobuf:"bytes,1,opt,name=ownerUserID" json:"ownerUserID,omitempty"`
	CreateTime           uint32          `protobuf:"varint,2,opt,name=createTime" json:"createTime,omitempty"`
	BlackUserInfo        *PublicUserInfo `protobuf:"bytes,3,opt,name=blackUserInfo" json:"blackUserInfo,omitempty"`
	AddSource            int32           `protobuf:"varint,4,opt,name=addSource" json:"addSource,omitempty"`
	OperatorUserID       string          `protobuf:"bytes,5,opt,name=operatorUserID" json:"operatorUserID,omitempty"`
	Ex                   string          `protobuf:"bytes,6,opt,name=ex" json:"ex,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *BlackInfo) Reset()         { *m = BlackInfo{} }
func (m *BlackInfo) String() string { return proto.CompactTextString(m) }
func (*BlackInfo) ProtoMessage()    {}
func (*BlackInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{6}
}
func (m *BlackInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_BlackInfo.Unmarshal(m, b)
}
func (m *BlackInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_BlackInfo.Marshal(b, m, deterministic)
}
func (dst *BlackInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_BlackInfo.Merge(dst, src)
}
func (m *BlackInfo) XXX_Size() int {
	return xxx_messageInfo_BlackInfo.Size(m)
}
func (m *BlackInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_BlackInfo.DiscardUnknown(m)
}

var xxx_messageInfo_BlackInfo proto.InternalMessageInfo

func (m *BlackInfo) GetOwnerUserID() string {
	if m != nil {
		return m.OwnerUserID
	}
	return ""
}

func (m *BlackInfo) GetCreateTime() uint32 {
	if m != nil {
		return m.CreateTime
	}
	return 0
}

func (m *BlackInfo) GetBlackUserInfo() *PublicUserInfo {
	if m != nil {
		return m.BlackUserInfo
	}
	return nil
}

func (m *BlackInfo) GetAddSource() int32 {
	if m != nil {
		return m.AddSource
	}
	return 0
}

func (m *BlackInfo) GetOperatorUserID() string {
	if m != nil {
		return m.OperatorUserID
	}
	return ""
}

func (m *BlackInfo) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

type GroupRequest struct {
	UserInfo             *PublicUserInfo `protobuf:"bytes,1,opt,name=userInfo" json:"userInfo,omitempty"`
	GroupInfo            *GroupInfo      `protobuf:"bytes,2,opt,name=groupInfo" json:"groupInfo,omitempty"`
	HandleResult         int32           `protobuf:"varint,3,opt,name=handleResult" json:"handleResult,omitempty"`
	ReqMsg               string          `protobuf:"bytes,4,opt,name=reqMsg" json:"reqMsg,omitempty"`
	HandleMsg            string          `protobuf:"bytes,5,opt,name=handleMsg" json:"handleMsg,omitempty"`
	ReqTime              uint32          `protobuf:"varint,6,opt,name=reqTime" json:"reqTime,omitempty"`
	HandleUserID         string          `protobuf:"bytes,7,opt,name=handleUserID" json:"handleUserID,omitempty"`
	HandleTime           uint32          `protobuf:"varint,8,opt,name=handleTime" json:"handleTime,omitempty"`
	Ex                   string          `protobuf:"bytes,9,opt,name=ex" json:"ex,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *GroupRequest) Reset()         { *m = GroupRequest{} }
func (m *GroupRequest) String() string { return proto.CompactTextString(m) }
func (*GroupRequest) ProtoMessage()    {}
func (*GroupRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{7}
}
func (m *GroupRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupRequest.Unmarshal(m, b)
}
func (m *GroupRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupRequest.Marshal(b, m, deterministic)
}
func (dst *GroupRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupRequest.Merge(dst, src)
}
func (m *GroupRequest) XXX_Size() int {
	return xxx_messageInfo_GroupRequest.Size(m)
}
func (m *GroupRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GroupRequest proto.InternalMessageInfo

func (m *GroupRequest) GetUserInfo() *PublicUserInfo {
	if m != nil {
		return m.UserInfo
	}
	return nil
}

func (m *GroupRequest) GetGroupInfo() *GroupInfo {
	if m != nil {
		return m.GroupInfo
	}
	return nil
}

func (m *GroupRequest) GetHandleResult() int32 {
	if m != nil {
		return m.HandleResult
	}
	return 0
}

func (m *GroupRequest) GetReqMsg() string {
	if m != nil {
		return m.ReqMsg
	}
	return ""
}

func (m *GroupRequest) GetHandleMsg() string {
	if m != nil {
		return m.HandleMsg
	}
	return ""
}

func (m *GroupRequest) GetReqTime() uint32 {
	if m != nil {
		return m.ReqTime
	}
	return 0
}

func (m *GroupRequest) GetHandleUserID() string {
	if m != nil {
		return m.HandleUserID
	}
	return ""
}

func (m *GroupRequest) GetHandleTime() uint32 {
	if m != nil {
		return m.HandleTime
	}
	return 0
}

func (m *GroupRequest) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

type FriendRequest struct {
	FromUserID           string   `protobuf:"bytes,1,opt,name=fromUserID" json:"fromUserID,omitempty"`
	FromNickname         string   `protobuf:"bytes,2,opt,name=fromNickname" json:"fromNickname,omitempty"`
	FromFaceURL          string   `protobuf:"bytes,3,opt,name=fromFaceURL" json:"fromFaceURL,omitempty"`
	FromGender           int32    `protobuf:"varint,4,opt,name=fromGender" json:"fromGender,omitempty"`
	ToUserID             string   `protobuf:"bytes,5,opt,name=toUserID" json:"toUserID,omitempty"`
	ToNickname           string   `protobuf:"bytes,6,opt,name=toNickname" json:"toNickname,omitempty"`
	ToFaceURL            string   `protobuf:"bytes,7,opt,name=toFaceURL" json:"toFaceURL,omitempty"`
	ToGender             int32    `protobuf:"varint,8,opt,name=toGender" json:"toGender,omitempty"`
	HandleResult         int32    `protobuf:"varint,9,opt,name=handleResult" json:"handleResult,omitempty"`
	ReqMsg               string   `protobuf:"bytes,10,opt,name=reqMsg" json:"reqMsg,omitempty"`
	CreateTime           uint32   `protobuf:"varint,11,opt,name=createTime" json:"createTime,omitempty"`
	HandlerUserID        string   `protobuf:"bytes,12,opt,name=handlerUserID" json:"handlerUserID,omitempty"`
	HandleMsg            string   `protobuf:"bytes,13,opt,name=handleMsg" json:"handleMsg,omitempty"`
	HandleTime           uint32   `protobuf:"varint,14,opt,name=handleTime" json:"handleTime,omitempty"`
	Ex                   string   `protobuf:"bytes,15,opt,name=ex" json:"ex,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FriendRequest) Reset()         { *m = FriendRequest{} }
func (m *FriendRequest) String() string { return proto.CompactTextString(m) }
func (*FriendRequest) ProtoMessage()    {}
func (*FriendRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{8}
}
func (m *FriendRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FriendRequest.Unmarshal(m, b)
}
func (m *FriendRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FriendRequest.Marshal(b, m, deterministic)
}
func (dst *FriendRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FriendRequest.Merge(dst, src)
}
func (m *FriendRequest) XXX_Size() int {
	return xxx_messageInfo_FriendRequest.Size(m)
}
func (m *FriendRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_FriendRequest.DiscardUnknown(m)
}

var xxx_messageInfo_FriendRequest proto.InternalMessageInfo

func (m *FriendRequest) GetFromUserID() string {
	if m != nil {
		return m.FromUserID
	}
	return ""
}

func (m *FriendRequest) GetFromNickname() string {
	if m != nil {
		return m.FromNickname
	}
	return ""
}

func (m *FriendRequest) GetFromFaceURL() string {
	if m != nil {
		return m.FromFaceURL
	}
	return ""
}

func (m *FriendRequest) GetFromGender() int32 {
	if m != nil {
		return m.FromGender
	}
	return 0
}

func (m *FriendRequest) GetToUserID() string {
	if m != nil {
		return m.ToUserID
	}
	return ""
}

func (m *FriendRequest) GetToNickname() string {
	if m != nil {
		return m.ToNickname
	}
	return ""
}

func (m *FriendRequest) GetToFaceURL() string {
	if m != nil {
		return m.ToFaceURL
	}
	return ""
}

func (m *FriendRequest) GetToGender() int32 {
	if m != nil {
		return m.ToGender
	}
	return 0
}

func (m *FriendRequest) GetHandleResult() int32 {
	if m != nil {
		return m.HandleResult
	}
	return 0
}

func (m *FriendRequest) GetReqMsg() string {
	if m != nil {
		return m.ReqMsg
	}
	return ""
}

func (m *FriendRequest) GetCreateTime() uint32 {
	if m != nil {
		return m.CreateTime
	}
	return 0
}

func (m *FriendRequest) GetHandlerUserID() string {
	if m != nil {
		return m.HandlerUserID
	}
	return ""
}

func (m *FriendRequest) GetHandleMsg() string {
	if m != nil {
		return m.HandleMsg
	}
	return ""
}

func (m *FriendRequest) GetHandleTime() uint32 {
	if m != nil {
		return m.HandleTime
	}
	return 0
}

func (m *FriendRequest) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

type Department struct {
	DepartmentID         string   `protobuf:"bytes,1,opt,name=departmentID" json:"departmentID,omitempty"`
	FaceURL              string   `protobuf:"bytes,2,opt,name=faceURL" json:"faceURL,omitempty"`
	Name                 string   `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"`
	ParentID             string   `protobuf:"bytes,4,opt,name=parentID" json:"parentID,omitempty"`
	Order                int32    `protobuf:"varint,5,opt,name=order" json:"order,omitempty"`
	DepartmentType       int32    `protobuf:"varint,6,opt,name=departmentType" json:"departmentType,omitempty"`
	CreateTime           uint32   `protobuf:"varint,7,opt,name=createTime" json:"createTime,omitempty"`
	SubDepartmentNum     uint32   `protobuf:"varint,8,opt,name=subDepartmentNum" json:"subDepartmentNum,omitempty"`
	MemberNum            uint32   `protobuf:"varint,9,opt,name=memberNum" json:"memberNum,omitempty"`
	Ex                   string   `protobuf:"bytes,10,opt,name=ex" json:"ex,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Department) Reset()         { *m = Department{} }
func (m *Department) String() string { return proto.CompactTextString(m) }
func (*Department) ProtoMessage()    {}
func (*Department) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{9}
}
func (m *Department) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Department.Unmarshal(m, b)
}
func (m *Department) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Department.Marshal(b, m, deterministic)
}
func (dst *Department) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Department.Merge(dst, src)
}
func (m *Department) XXX_Size() int {
	return xxx_messageInfo_Department.Size(m)
}
func (m *Department) XXX_DiscardUnknown() {
	xxx_messageInfo_Department.DiscardUnknown(m)
}

var xxx_messageInfo_Department proto.InternalMessageInfo

func (m *Department) GetDepartmentID() string {
	if m != nil {
		return m.DepartmentID
	}
	return ""
}

func (m *Department) GetFaceURL() string {
	if m != nil {
		return m.FaceURL
	}
	return ""
}

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

func (m *Department) GetParentID() string {
	if m != nil {
		return m.ParentID
	}
	return ""
}

func (m *Department) GetOrder() int32 {
	if m != nil {
		return m.Order
	}
	return 0
}

func (m *Department) GetDepartmentType() int32 {
	if m != nil {
		return m.DepartmentType
	}
	return 0
}

func (m *Department) GetCreateTime() uint32 {
	if m != nil {
		return m.CreateTime
	}
	return 0
}

func (m *Department) GetSubDepartmentNum() uint32 {
	if m != nil {
		return m.SubDepartmentNum
	}
	return 0
}

func (m *Department) GetMemberNum() uint32 {
	if m != nil {
		return m.MemberNum
	}
	return 0
}

func (m *Department) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

type OrganizationUser struct {
	UserID               string   `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"`
	Nickname             string   `protobuf:"bytes,2,opt,name=nickname" json:"nickname,omitempty"`
	EnglishName          string   `protobuf:"bytes,3,opt,name=englishName" json:"englishName,omitempty"`
	FaceURL              string   `protobuf:"bytes,4,opt,name=faceURL" json:"faceURL,omitempty"`
	Gender               int32    `protobuf:"varint,5,opt,name=gender" json:"gender,omitempty"`
	Mobile               string   `protobuf:"bytes,6,opt,name=mobile" json:"mobile,omitempty"`
	Telephone            string   `protobuf:"bytes,7,opt,name=telephone" json:"telephone,omitempty"`
	Birth                uint32   `protobuf:"varint,8,opt,name=birth" json:"birth,omitempty"`
	Email                string   `protobuf:"bytes,9,opt,name=email" json:"email,omitempty"`
	CreateTime           uint32   `protobuf:"varint,10,opt,name=createTime" json:"createTime,omitempty"`
	Ex                   string   `protobuf:"bytes,11,opt,name=ex" json:"ex,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OrganizationUser) Reset()         { *m = OrganizationUser{} }
func (m *OrganizationUser) String() string { return proto.CompactTextString(m) }
func (*OrganizationUser) ProtoMessage()    {}
func (*OrganizationUser) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{10}
}
func (m *OrganizationUser) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OrganizationUser.Unmarshal(m, b)
}
func (m *OrganizationUser) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OrganizationUser.Marshal(b, m, deterministic)
}
func (dst *OrganizationUser) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OrganizationUser.Merge(dst, src)
}
func (m *OrganizationUser) XXX_Size() int {
	return xxx_messageInfo_OrganizationUser.Size(m)
}
func (m *OrganizationUser) XXX_DiscardUnknown() {
	xxx_messageInfo_OrganizationUser.DiscardUnknown(m)
}

var xxx_messageInfo_OrganizationUser proto.InternalMessageInfo

func (m *OrganizationUser) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

func (m *OrganizationUser) GetNickname() string {
	if m != nil {
		return m.Nickname
	}
	return ""
}

func (m *OrganizationUser) GetEnglishName() string {
	if m != nil {
		return m.EnglishName
	}
	return ""
}

func (m *OrganizationUser) GetFaceURL() string {
	if m != nil {
		return m.FaceURL
	}
	return ""
}

func (m *OrganizationUser) GetGender() int32 {
	if m != nil {
		return m.Gender
	}
	return 0
}

func (m *OrganizationUser) GetMobile() string {
	if m != nil {
		return m.Mobile
	}
	return ""
}

func (m *OrganizationUser) GetTelephone() string {
	if m != nil {
		return m.Telephone
	}
	return ""
}

func (m *OrganizationUser) GetBirth() uint32 {
	if m != nil {
		return m.Birth
	}
	return 0
}

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

func (m *OrganizationUser) GetCreateTime() uint32 {
	if m != nil {
		return m.CreateTime
	}
	return 0
}

func (m *OrganizationUser) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

type DepartmentMember struct {
	UserID               string   `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"`
	DepartmentID         string   `protobuf:"bytes,2,opt,name=departmentID" json:"departmentID,omitempty"`
	Order                int32    `protobuf:"varint,3,opt,name=order" json:"order,omitempty"`
	Position             string   `protobuf:"bytes,4,opt,name=position" json:"position,omitempty"`
	Leader               int32    `protobuf:"varint,5,opt,name=leader" json:"leader,omitempty"`
	Status               int32    `protobuf:"varint,6,opt,name=status" json:"status,omitempty"`
	Ex                   string   `protobuf:"bytes,7,opt,name=ex" json:"ex,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DepartmentMember) Reset()         { *m = DepartmentMember{} }
func (m *DepartmentMember) String() string { return proto.CompactTextString(m) }
func (*DepartmentMember) ProtoMessage()    {}
func (*DepartmentMember) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{11}
}
func (m *DepartmentMember) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DepartmentMember.Unmarshal(m, b)
}
func (m *DepartmentMember) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DepartmentMember.Marshal(b, m, deterministic)
}
func (dst *DepartmentMember) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DepartmentMember.Merge(dst, src)
}
func (m *DepartmentMember) XXX_Size() int {
	return xxx_messageInfo_DepartmentMember.Size(m)
}
func (m *DepartmentMember) XXX_DiscardUnknown() {
	xxx_messageInfo_DepartmentMember.DiscardUnknown(m)
}

var xxx_messageInfo_DepartmentMember proto.InternalMessageInfo

func (m *DepartmentMember) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

func (m *DepartmentMember) GetDepartmentID() string {
	if m != nil {
		return m.DepartmentID
	}
	return ""
}

func (m *DepartmentMember) GetOrder() int32 {
	if m != nil {
		return m.Order
	}
	return 0
}

func (m *DepartmentMember) GetPosition() string {
	if m != nil {
		return m.Position
	}
	return ""
}

func (m *DepartmentMember) GetLeader() int32 {
	if m != nil {
		return m.Leader
	}
	return 0
}

func (m *DepartmentMember) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

func (m *DepartmentMember) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

type UserDepartmentMember struct {
	OrganizationUser     *OrganizationUser `protobuf:"bytes,1,opt,name=organizationUser" json:"organizationUser,omitempty"`
	DepartmentMember     *DepartmentMember `protobuf:"bytes,2,opt,name=departmentMember" json:"departmentMember,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *UserDepartmentMember) Reset()         { *m = UserDepartmentMember{} }
func (m *UserDepartmentMember) String() string { return proto.CompactTextString(m) }
func (*UserDepartmentMember) ProtoMessage()    {}
func (*UserDepartmentMember) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{12}
}
func (m *UserDepartmentMember) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UserDepartmentMember.Unmarshal(m, b)
}
func (m *UserDepartmentMember) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UserDepartmentMember.Marshal(b, m, deterministic)
}
func (dst *UserDepartmentMember) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UserDepartmentMember.Merge(dst, src)
}
func (m *UserDepartmentMember) XXX_Size() int {
	return xxx_messageInfo_UserDepartmentMember.Size(m)
}
func (m *UserDepartmentMember) XXX_DiscardUnknown() {
	xxx_messageInfo_UserDepartmentMember.DiscardUnknown(m)
}

var xxx_messageInfo_UserDepartmentMember proto.InternalMessageInfo

func (m *UserDepartmentMember) GetOrganizationUser() *OrganizationUser {
	if m != nil {
		return m.OrganizationUser
	}
	return nil
}

func (m *UserDepartmentMember) GetDepartmentMember() *DepartmentMember {
	if m != nil {
		return m.DepartmentMember
	}
	return nil
}

type UserInDepartment struct {
	OrganizationUser     *OrganizationUser   `protobuf:"bytes,1,opt,name=organizationUser" json:"organizationUser,omitempty"`
	DepartmentMemberList []*DepartmentMember `protobuf:"bytes,2,rep,name=departmentMemberList" json:"departmentMemberList,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (m *UserInDepartment) Reset()         { *m = UserInDepartment{} }
func (m *UserInDepartment) String() string { return proto.CompactTextString(m) }
func (*UserInDepartment) ProtoMessage()    {}
func (*UserInDepartment) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{13}
}
func (m *UserInDepartment) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UserInDepartment.Unmarshal(m, b)
}
func (m *UserInDepartment) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UserInDepartment.Marshal(b, m, deterministic)
}
func (dst *UserInDepartment) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UserInDepartment.Merge(dst, src)
}
func (m *UserInDepartment) XXX_Size() int {
	return xxx_messageInfo_UserInDepartment.Size(m)
}
func (m *UserInDepartment) XXX_DiscardUnknown() {
	xxx_messageInfo_UserInDepartment.DiscardUnknown(m)
}

var xxx_messageInfo_UserInDepartment proto.InternalMessageInfo

func (m *UserInDepartment) GetOrganizationUser() *OrganizationUser {
	if m != nil {
		return m.OrganizationUser
	}
	return nil
}

func (m *UserInDepartment) GetDepartmentMemberList() []*DepartmentMember {
	if m != nil {
		return m.DepartmentMemberList
	}
	return nil
}

// /////////////////////////////////base end/////////////////////////////////////
type PullMessageBySeqListReq struct {
	UserID               string              `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"`
	OperationID          string              `protobuf:"bytes,2,opt,name=operationID" json:"operationID,omitempty"`
	SeqList              []uint32            `protobuf:"varint,3,rep,packed,name=seqList" json:"seqList,omitempty"`
	GroupSeqList         map[string]*SeqList `protobuf:"bytes,4,rep,name=groupSeqList" json:"groupSeqList,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (m *PullMessageBySeqListReq) Reset()         { *m = PullMessageBySeqListReq{} }
func (m *PullMessageBySeqListReq) String() string { return proto.CompactTextString(m) }
func (*PullMessageBySeqListReq) ProtoMessage()    {}
func (*PullMessageBySeqListReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{14}
}
func (m *PullMessageBySeqListReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PullMessageBySeqListReq.Unmarshal(m, b)
}
func (m *PullMessageBySeqListReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PullMessageBySeqListReq.Marshal(b, m, deterministic)
}
func (dst *PullMessageBySeqListReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PullMessageBySeqListReq.Merge(dst, src)
}
func (m *PullMessageBySeqListReq) XXX_Size() int {
	return xxx_messageInfo_PullMessageBySeqListReq.Size(m)
}
func (m *PullMessageBySeqListReq) XXX_DiscardUnknown() {
	xxx_messageInfo_PullMessageBySeqListReq.DiscardUnknown(m)
}

var xxx_messageInfo_PullMessageBySeqListReq proto.InternalMessageInfo

func (m *PullMessageBySeqListReq) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

func (m *PullMessageBySeqListReq) GetOperationID() string {
	if m != nil {
		return m.OperationID
	}
	return ""
}

func (m *PullMessageBySeqListReq) GetSeqList() []uint32 {
	if m != nil {
		return m.SeqList
	}
	return nil
}

func (m *PullMessageBySeqListReq) GetGroupSeqList() map[string]*SeqList {
	if m != nil {
		return m.GroupSeqList
	}
	return nil
}

type SeqList struct {
	SeqList              []uint32 `protobuf:"varint,1,rep,packed,name=seqList" json:"seqList,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SeqList) Reset()         { *m = SeqList{} }
func (m *SeqList) String() string { return proto.CompactTextString(m) }
func (*SeqList) ProtoMessage()    {}
func (*SeqList) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{15}
}
func (m *SeqList) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SeqList.Unmarshal(m, b)
}
func (m *SeqList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SeqList.Marshal(b, m, deterministic)
}
func (dst *SeqList) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SeqList.Merge(dst, src)
}
func (m *SeqList) XXX_Size() int {
	return xxx_messageInfo_SeqList.Size(m)
}
func (m *SeqList) XXX_DiscardUnknown() {
	xxx_messageInfo_SeqList.DiscardUnknown(m)
}

var xxx_messageInfo_SeqList proto.InternalMessageInfo

func (m *SeqList) GetSeqList() []uint32 {
	if m != nil {
		return m.SeqList
	}
	return nil
}

type MsgDataList struct {
	MsgDataList          []*MsgData `protobuf:"bytes,1,rep,name=msgDataList" json:"msgDataList,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *MsgDataList) Reset()         { *m = MsgDataList{} }
func (m *MsgDataList) String() string { return proto.CompactTextString(m) }
func (*MsgDataList) ProtoMessage()    {}
func (*MsgDataList) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{16}
}
func (m *MsgDataList) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MsgDataList.Unmarshal(m, b)
}
func (m *MsgDataList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MsgDataList.Marshal(b, m, deterministic)
}
func (dst *MsgDataList) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MsgDataList.Merge(dst, src)
}
func (m *MsgDataList) XXX_Size() int {
	return xxx_messageInfo_MsgDataList.Size(m)
}
func (m *MsgDataList) XXX_DiscardUnknown() {
	xxx_messageInfo_MsgDataList.DiscardUnknown(m)
}

var xxx_messageInfo_MsgDataList proto.InternalMessageInfo

func (m *MsgDataList) GetMsgDataList() []*MsgData {
	if m != nil {
		return m.MsgDataList
	}
	return nil
}

type PullMessageBySeqListResp struct {
	ErrCode              int32                   `protobuf:"varint,1,opt,name=errCode" json:"errCode,omitempty"`
	ErrMsg               string                  `protobuf:"bytes,2,opt,name=errMsg" json:"errMsg,omitempty"`
	List                 []*MsgData              `protobuf:"bytes,3,rep,name=list" json:"list,omitempty"`
	GroupMsgDataList     map[string]*MsgDataList `protobuf:"bytes,4,rep,name=groupMsgDataList" json:"groupMsgDataList,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
	XXX_unrecognized     []byte                  `json:"-"`
	XXX_sizecache        int32                   `json:"-"`
}

func (m *PullMessageBySeqListResp) Reset()         { *m = PullMessageBySeqListResp{} }
func (m *PullMessageBySeqListResp) String() string { return proto.CompactTextString(m) }
func (*PullMessageBySeqListResp) ProtoMessage()    {}
func (*PullMessageBySeqListResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{17}
}
func (m *PullMessageBySeqListResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PullMessageBySeqListResp.Unmarshal(m, b)
}
func (m *PullMessageBySeqListResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PullMessageBySeqListResp.Marshal(b, m, deterministic)
}
func (dst *PullMessageBySeqListResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PullMessageBySeqListResp.Merge(dst, src)
}
func (m *PullMessageBySeqListResp) XXX_Size() int {
	return xxx_messageInfo_PullMessageBySeqListResp.Size(m)
}
func (m *PullMessageBySeqListResp) XXX_DiscardUnknown() {
	xxx_messageInfo_PullMessageBySeqListResp.DiscardUnknown(m)
}

var xxx_messageInfo_PullMessageBySeqListResp proto.InternalMessageInfo

func (m *PullMessageBySeqListResp) GetErrCode() int32 {
	if m != nil {
		return m.ErrCode
	}
	return 0
}

func (m *PullMessageBySeqListResp) GetErrMsg() string {
	if m != nil {
		return m.ErrMsg
	}
	return ""
}

func (m *PullMessageBySeqListResp) GetList() []*MsgData {
	if m != nil {
		return m.List
	}
	return nil
}

func (m *PullMessageBySeqListResp) GetGroupMsgDataList() map[string]*MsgDataList {
	if m != nil {
		return m.GroupMsgDataList
	}
	return nil
}

type GetMaxAndMinSeqReq struct {
	GroupIDList          []string `protobuf:"bytes,1,rep,name=groupIDList" json:"groupIDList,omitempty"`
	UserID               string   `protobuf:"bytes,2,opt,name=userID" json:"userID,omitempty"`
	OperationID          string   `protobuf:"bytes,3,opt,name=operationID" json:"operationID,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetMaxAndMinSeqReq) Reset()         { *m = GetMaxAndMinSeqReq{} }
func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) }
func (*GetMaxAndMinSeqReq) ProtoMessage()    {}
func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{18}
}
func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b)
}
func (m *GetMaxAndMinSeqReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetMaxAndMinSeqReq.Marshal(b, m, deterministic)
}
func (dst *GetMaxAndMinSeqReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetMaxAndMinSeqReq.Merge(dst, src)
}
func (m *GetMaxAndMinSeqReq) XXX_Size() int {
	return xxx_messageInfo_GetMaxAndMinSeqReq.Size(m)
}
func (m *GetMaxAndMinSeqReq) XXX_DiscardUnknown() {
	xxx_messageInfo_GetMaxAndMinSeqReq.DiscardUnknown(m)
}

var xxx_messageInfo_GetMaxAndMinSeqReq proto.InternalMessageInfo

func (m *GetMaxAndMinSeqReq) GetGroupIDList() []string {
	if m != nil {
		return m.GroupIDList
	}
	return nil
}

func (m *GetMaxAndMinSeqReq) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

func (m *GetMaxAndMinSeqReq) GetOperationID() string {
	if m != nil {
		return m.OperationID
	}
	return ""
}

type MaxAndMinSeq struct {
	MaxSeq               uint32   `protobuf:"varint,1,opt,name=maxSeq" json:"maxSeq,omitempty"`
	MinSeq               uint32   `protobuf:"varint,2,opt,name=minSeq" json:"minSeq,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *MaxAndMinSeq) Reset()         { *m = MaxAndMinSeq{} }
func (m *MaxAndMinSeq) String() string { return proto.CompactTextString(m) }
func (*MaxAndMinSeq) ProtoMessage()    {}
func (*MaxAndMinSeq) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{19}
}
func (m *MaxAndMinSeq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MaxAndMinSeq.Unmarshal(m, b)
}
func (m *MaxAndMinSeq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MaxAndMinSeq.Marshal(b, m, deterministic)
}
func (dst *MaxAndMinSeq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MaxAndMinSeq.Merge(dst, src)
}
func (m *MaxAndMinSeq) XXX_Size() int {
	return xxx_messageInfo_MaxAndMinSeq.Size(m)
}
func (m *MaxAndMinSeq) XXX_DiscardUnknown() {
	xxx_messageInfo_MaxAndMinSeq.DiscardUnknown(m)
}

var xxx_messageInfo_MaxAndMinSeq proto.InternalMessageInfo

func (m *MaxAndMinSeq) GetMaxSeq() uint32 {
	if m != nil {
		return m.MaxSeq
	}
	return 0
}

func (m *MaxAndMinSeq) GetMinSeq() uint32 {
	if m != nil {
		return m.MinSeq
	}
	return 0
}

type GetMaxAndMinSeqResp struct {
	MaxSeq               uint32                   `protobuf:"varint,1,opt,name=maxSeq" json:"maxSeq,omitempty"`
	MinSeq               uint32                   `protobuf:"varint,2,opt,name=minSeq" json:"minSeq,omitempty"`
	ErrCode              int32                    `protobuf:"varint,3,opt,name=errCode" json:"errCode,omitempty"`
	ErrMsg               string                   `protobuf:"bytes,4,opt,name=errMsg" json:"errMsg,omitempty"`
	GroupMaxAndMinSeq    map[string]*MaxAndMinSeq `protobuf:"bytes,5,rep,name=groupMaxAndMinSeq" json:"groupMaxAndMinSeq,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
	XXX_unrecognized     []byte                   `json:"-"`
	XXX_sizecache        int32                    `json:"-"`
}

func (m *GetMaxAndMinSeqResp) Reset()         { *m = GetMaxAndMinSeqResp{} }
func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) }
func (*GetMaxAndMinSeqResp) ProtoMessage()    {}
func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{20}
}
func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b)
}
func (m *GetMaxAndMinSeqResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetMaxAndMinSeqResp.Marshal(b, m, deterministic)
}
func (dst *GetMaxAndMinSeqResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetMaxAndMinSeqResp.Merge(dst, src)
}
func (m *GetMaxAndMinSeqResp) XXX_Size() int {
	return xxx_messageInfo_GetMaxAndMinSeqResp.Size(m)
}
func (m *GetMaxAndMinSeqResp) XXX_DiscardUnknown() {
	xxx_messageInfo_GetMaxAndMinSeqResp.DiscardUnknown(m)
}

var xxx_messageInfo_GetMaxAndMinSeqResp proto.InternalMessageInfo

func (m *GetMaxAndMinSeqResp) GetMaxSeq() uint32 {
	if m != nil {
		return m.MaxSeq
	}
	return 0
}

func (m *GetMaxAndMinSeqResp) GetMinSeq() uint32 {
	if m != nil {
		return m.MinSeq
	}
	return 0
}

func (m *GetMaxAndMinSeqResp) GetErrCode() int32 {
	if m != nil {
		return m.ErrCode
	}
	return 0
}

func (m *GetMaxAndMinSeqResp) GetErrMsg() string {
	if m != nil {
		return m.ErrMsg
	}
	return ""
}

func (m *GetMaxAndMinSeqResp) GetGroupMaxAndMinSeq() map[string]*MaxAndMinSeq {
	if m != nil {
		return m.GroupMaxAndMinSeq
	}
	return nil
}

type UserSendMsgResp struct {
	ServerMsgID          string   `protobuf:"bytes,1,opt,name=serverMsgID" json:"serverMsgID,omitempty"`
	ClientMsgID          string   `protobuf:"bytes,2,opt,name=clientMsgID" json:"clientMsgID,omitempty"`
	SendTime             int64    `protobuf:"varint,3,opt,name=sendTime" json:"sendTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UserSendMsgResp) Reset()         { *m = UserSendMsgResp{} }
func (m *UserSendMsgResp) String() string { return proto.CompactTextString(m) }
func (*UserSendMsgResp) ProtoMessage()    {}
func (*UserSendMsgResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{21}
}
func (m *UserSendMsgResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UserSendMsgResp.Unmarshal(m, b)
}
func (m *UserSendMsgResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UserSendMsgResp.Marshal(b, m, deterministic)
}
func (dst *UserSendMsgResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UserSendMsgResp.Merge(dst, src)
}
func (m *UserSendMsgResp) XXX_Size() int {
	return xxx_messageInfo_UserSendMsgResp.Size(m)
}
func (m *UserSendMsgResp) XXX_DiscardUnknown() {
	xxx_messageInfo_UserSendMsgResp.DiscardUnknown(m)
}

var xxx_messageInfo_UserSendMsgResp proto.InternalMessageInfo

func (m *UserSendMsgResp) GetServerMsgID() string {
	if m != nil {
		return m.ServerMsgID
	}
	return ""
}

func (m *UserSendMsgResp) GetClientMsgID() string {
	if m != nil {
		return m.ClientMsgID
	}
	return ""
}

func (m *UserSendMsgResp) GetSendTime() int64 {
	if m != nil {
		return m.SendTime
	}
	return 0
}

type MsgData struct {
	SendID               string           `protobuf:"bytes,1,opt,name=sendID" json:"sendID,omitempty"`
	RecvID               string           `protobuf:"bytes,2,opt,name=recvID" json:"recvID,omitempty"`
	GroupID              string           `protobuf:"bytes,3,opt,name=groupID" json:"groupID,omitempty"`
	ClientMsgID          string           `protobuf:"bytes,4,opt,name=clientMsgID" json:"clientMsgID,omitempty"`
	ServerMsgID          string           `protobuf:"bytes,5,opt,name=serverMsgID" json:"serverMsgID,omitempty"`
	SenderPlatformID     int32            `protobuf:"varint,6,opt,name=senderPlatformID" json:"senderPlatformID,omitempty"`
	SenderNickname       string           `protobuf:"bytes,7,opt,name=senderNickname" json:"senderNickname,omitempty"`
	SenderFaceURL        string           `protobuf:"bytes,8,opt,name=senderFaceURL" json:"senderFaceURL,omitempty"`
	SessionType          int32            `protobuf:"varint,9,opt,name=sessionType" json:"sessionType,omitempty"`
	MsgFrom              int32            `protobuf:"varint,10,opt,name=msgFrom" json:"msgFrom,omitempty"`
	ContentType          int32            `protobuf:"varint,11,opt,name=contentType" json:"contentType,omitempty"`
	Content              []byte           `protobuf:"bytes,12,opt,name=content,proto3" json:"content,omitempty"`
	Seq                  uint32           `protobuf:"varint,14,opt,name=seq" json:"seq,omitempty"`
	SendTime             int64            `protobuf:"varint,15,opt,name=sendTime" json:"sendTime,omitempty"`
	CreateTime           int64            `protobuf:"varint,16,opt,name=createTime" json:"createTime,omitempty"`
	Status               int32            `protobuf:"varint,17,opt,name=status" json:"status,omitempty"`
	Options              map[string]bool  `protobuf:"bytes,18,rep,name=options" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
	OfflinePushInfo      *OfflinePushInfo `protobuf:"bytes,19,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"`
	AtUserIDList         []string         `protobuf:"bytes,20,rep,name=atUserIDList" json:"atUserIDList,omitempty"`
	MsgDataList          []byte           `protobuf:"bytes,21,opt,name=msgDataList,proto3" json:"msgDataList,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *MsgData) Reset()         { *m = MsgData{} }
func (m *MsgData) String() string { return proto.CompactTextString(m) }
func (*MsgData) ProtoMessage()    {}
func (*MsgData) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{22}
}
func (m *MsgData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MsgData.Unmarshal(m, b)
}
func (m *MsgData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MsgData.Marshal(b, m, deterministic)
}
func (dst *MsgData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MsgData.Merge(dst, src)
}
func (m *MsgData) XXX_Size() int {
	return xxx_messageInfo_MsgData.Size(m)
}
func (m *MsgData) XXX_DiscardUnknown() {
	xxx_messageInfo_MsgData.DiscardUnknown(m)
}

var xxx_messageInfo_MsgData proto.InternalMessageInfo

func (m *MsgData) GetSendID() string {
	if m != nil {
		return m.SendID
	}
	return ""
}

func (m *MsgData) GetRecvID() string {
	if m != nil {
		return m.RecvID
	}
	return ""
}

func (m *MsgData) GetGroupID() string {
	if m != nil {
		return m.GroupID
	}
	return ""
}

func (m *MsgData) GetClientMsgID() string {
	if m != nil {
		return m.ClientMsgID
	}
	return ""
}

func (m *MsgData) GetServerMsgID() string {
	if m != nil {
		return m.ServerMsgID
	}
	return ""
}

func (m *MsgData) GetSenderPlatformID() int32 {
	if m != nil {
		return m.SenderPlatformID
	}
	return 0
}

func (m *MsgData) GetSenderNickname() string {
	if m != nil {
		return m.SenderNickname
	}
	return ""
}

func (m *MsgData) GetSenderFaceURL() string {
	if m != nil {
		return m.SenderFaceURL
	}
	return ""
}

func (m *MsgData) GetSessionType() int32 {
	if m != nil {
		return m.SessionType
	}
	return 0
}

func (m *MsgData) GetMsgFrom() int32 {
	if m != nil {
		return m.MsgFrom
	}
	return 0
}

func (m *MsgData) GetContentType() int32 {
	if m != nil {
		return m.ContentType
	}
	return 0
}

func (m *MsgData) GetContent() []byte {
	if m != nil {
		return m.Content
	}
	return nil
}

func (m *MsgData) GetSeq() uint32 {
	if m != nil {
		return m.Seq
	}
	return 0
}

func (m *MsgData) GetSendTime() int64 {
	if m != nil {
		return m.SendTime
	}
	return 0
}

func (m *MsgData) GetCreateTime() int64 {
	if m != nil {
		return m.CreateTime
	}
	return 0
}

func (m *MsgData) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

func (m *MsgData) GetOptions() map[string]bool {
	if m != nil {
		return m.Options
	}
	return nil
}

func (m *MsgData) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

func (m *MsgData) GetAtUserIDList() []string {
	if m != nil {
		return m.AtUserIDList
	}
	return nil
}

func (m *MsgData) GetMsgDataList() []byte {
	if m != nil {
		return m.MsgDataList
	}
	return nil
}

type OfflinePushInfo struct {
	Title                string   `protobuf:"bytes,1,opt,name=title" json:"title,omitempty"`
	Desc                 string   `protobuf:"bytes,2,opt,name=desc" json:"desc,omitempty"`
	Ex                   string   `protobuf:"bytes,3,opt,name=ex" json:"ex,omitempty"`
	IOSPushSound         string   `protobuf:"bytes,4,opt,name=iOSPushSound" json:"iOSPushSound,omitempty"`
	IOSBadgeCount        bool     `protobuf:"varint,5,opt,name=iOSBadgeCount" json:"iOSBadgeCount,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OfflinePushInfo) Reset()         { *m = OfflinePushInfo{} }
func (m *OfflinePushInfo) String() string { return proto.CompactTextString(m) }
func (*OfflinePushInfo) ProtoMessage()    {}
func (*OfflinePushInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{23}
}
func (m *OfflinePushInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OfflinePushInfo.Unmarshal(m, b)
}
func (m *OfflinePushInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OfflinePushInfo.Marshal(b, m, deterministic)
}
func (dst *OfflinePushInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OfflinePushInfo.Merge(dst, src)
}
func (m *OfflinePushInfo) XXX_Size() int {
	return xxx_messageInfo_OfflinePushInfo.Size(m)
}
func (m *OfflinePushInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_OfflinePushInfo.DiscardUnknown(m)
}

var xxx_messageInfo_OfflinePushInfo proto.InternalMessageInfo

func (m *OfflinePushInfo) GetTitle() string {
	if m != nil {
		return m.Title
	}
	return ""
}

func (m *OfflinePushInfo) GetDesc() string {
	if m != nil {
		return m.Desc
	}
	return ""
}

func (m *OfflinePushInfo) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

func (m *OfflinePushInfo) GetIOSPushSound() string {
	if m != nil {
		return m.IOSPushSound
	}
	return ""
}

func (m *OfflinePushInfo) GetIOSBadgeCount() bool {
	if m != nil {
		return m.IOSBadgeCount
	}
	return false
}

type TipsComm struct {
	Detail               []byte   `protobuf:"bytes,1,opt,name=detail,proto3" json:"detail,omitempty"`
	DefaultTips          string   `protobuf:"bytes,2,opt,name=defaultTips" json:"defaultTips,omitempty"`
	JsonDetail           string   `protobuf:"bytes,3,opt,name=jsonDetail" json:"jsonDetail,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *TipsComm) Reset()         { *m = TipsComm{} }
func (m *TipsComm) String() string { return proto.CompactTextString(m) }
func (*TipsComm) ProtoMessage()    {}
func (*TipsComm) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{24}
}
func (m *TipsComm) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TipsComm.Unmarshal(m, b)
}
func (m *TipsComm) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TipsComm.Marshal(b, m, deterministic)
}
func (dst *TipsComm) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TipsComm.Merge(dst, src)
}
func (m *TipsComm) XXX_Size() int {
	return xxx_messageInfo_TipsComm.Size(m)
}
func (m *TipsComm) XXX_DiscardUnknown() {
	xxx_messageInfo_TipsComm.DiscardUnknown(m)
}

var xxx_messageInfo_TipsComm proto.InternalMessageInfo

func (m *TipsComm) GetDetail() []byte {
	if m != nil {
		return m.Detail
	}
	return nil
}

func (m *TipsComm) GetDefaultTips() string {
	if m != nil {
		return m.DefaultTips
	}
	return ""
}

func (m *TipsComm) GetJsonDetail() string {
	if m != nil {
		return m.JsonDetail
	}
	return ""
}

// 	OnGroupCreated()
type GroupCreatedTips struct {
	Group                *GroupInfo             `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo   `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	MemberList           []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=memberList" json:"memberList,omitempty"`
	OperationTime        int64                  `protobuf:"varint,4,opt,name=operationTime" json:"operationTime,omitempty"`
	GroupOwnerUser       *GroupMemberFullInfo   `protobuf:"bytes,5,opt,name=groupOwnerUser" json:"groupOwnerUser,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *GroupCreatedTips) Reset()         { *m = GroupCreatedTips{} }
func (m *GroupCreatedTips) String() string { return proto.CompactTextString(m) }
func (*GroupCreatedTips) ProtoMessage()    {}
func (*GroupCreatedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{25}
}
func (m *GroupCreatedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupCreatedTips.Unmarshal(m, b)
}
func (m *GroupCreatedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupCreatedTips.Marshal(b, m, deterministic)
}
func (dst *GroupCreatedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupCreatedTips.Merge(dst, src)
}
func (m *GroupCreatedTips) XXX_Size() int {
	return xxx_messageInfo_GroupCreatedTips.Size(m)
}
func (m *GroupCreatedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupCreatedTips.DiscardUnknown(m)
}

var xxx_messageInfo_GroupCreatedTips proto.InternalMessageInfo

func (m *GroupCreatedTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *GroupCreatedTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *GroupCreatedTips) GetMemberList() []*GroupMemberFullInfo {
	if m != nil {
		return m.MemberList
	}
	return nil
}

func (m *GroupCreatedTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

func (m *GroupCreatedTips) GetGroupOwnerUser() *GroupMemberFullInfo {
	if m != nil {
		return m.GroupOwnerUser
	}
	return nil
}

// 	OnGroupInfoSet()
type GroupInfoSetTips struct {
	OpUser               *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser" json:"opUser,omitempty"`
	MuteTime             int64                `protobuf:"varint,2,opt,name=muteTime" json:"muteTime,omitempty"`
	Group                *GroupInfo           `protobuf:"bytes,3,opt,name=group" json:"group,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GroupInfoSetTips) Reset()         { *m = GroupInfoSetTips{} }
func (m *GroupInfoSetTips) String() string { return proto.CompactTextString(m) }
func (*GroupInfoSetTips) ProtoMessage()    {}
func (*GroupInfoSetTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{26}
}
func (m *GroupInfoSetTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupInfoSetTips.Unmarshal(m, b)
}
func (m *GroupInfoSetTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupInfoSetTips.Marshal(b, m, deterministic)
}
func (dst *GroupInfoSetTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupInfoSetTips.Merge(dst, src)
}
func (m *GroupInfoSetTips) XXX_Size() int {
	return xxx_messageInfo_GroupInfoSetTips.Size(m)
}
func (m *GroupInfoSetTips) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupInfoSetTips.DiscardUnknown(m)
}

var xxx_messageInfo_GroupInfoSetTips proto.InternalMessageInfo

func (m *GroupInfoSetTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *GroupInfoSetTips) GetMuteTime() int64 {
	if m != nil {
		return m.MuteTime
	}
	return 0
}

func (m *GroupInfoSetTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

// 	OnJoinGroupApplication()
type JoinGroupApplicationTips struct {
	Group                *GroupInfo      `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	Applicant            *PublicUserInfo `protobuf:"bytes,2,opt,name=applicant" json:"applicant,omitempty"`
	ReqMsg               string          `protobuf:"bytes,3,opt,name=reqMsg" json:"reqMsg,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *JoinGroupApplicationTips) Reset()         { *m = JoinGroupApplicationTips{} }
func (m *JoinGroupApplicationTips) String() string { return proto.CompactTextString(m) }
func (*JoinGroupApplicationTips) ProtoMessage()    {}
func (*JoinGroupApplicationTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{27}
}
func (m *JoinGroupApplicationTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_JoinGroupApplicationTips.Unmarshal(m, b)
}
func (m *JoinGroupApplicationTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_JoinGroupApplicationTips.Marshal(b, m, deterministic)
}
func (dst *JoinGroupApplicationTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_JoinGroupApplicationTips.Merge(dst, src)
}
func (m *JoinGroupApplicationTips) XXX_Size() int {
	return xxx_messageInfo_JoinGroupApplicationTips.Size(m)
}
func (m *JoinGroupApplicationTips) XXX_DiscardUnknown() {
	xxx_messageInfo_JoinGroupApplicationTips.DiscardUnknown(m)
}

var xxx_messageInfo_JoinGroupApplicationTips proto.InternalMessageInfo

func (m *JoinGroupApplicationTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *JoinGroupApplicationTips) GetApplicant() *PublicUserInfo {
	if m != nil {
		return m.Applicant
	}
	return nil
}

func (m *JoinGroupApplicationTips) GetReqMsg() string {
	if m != nil {
		return m.ReqMsg
	}
	return ""
}

// 	OnQuitGroup()
// Actively leave the group
type MemberQuitTips struct {
	Group                *GroupInfo           `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	QuitUser             *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=quitUser" json:"quitUser,omitempty"`
	OperationTime        int64                `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *MemberQuitTips) Reset()         { *m = MemberQuitTips{} }
func (m *MemberQuitTips) String() string { return proto.CompactTextString(m) }
func (*MemberQuitTips) ProtoMessage()    {}
func (*MemberQuitTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{28}
}
func (m *MemberQuitTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MemberQuitTips.Unmarshal(m, b)
}
func (m *MemberQuitTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MemberQuitTips.Marshal(b, m, deterministic)
}
func (dst *MemberQuitTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MemberQuitTips.Merge(dst, src)
}
func (m *MemberQuitTips) XXX_Size() int {
	return xxx_messageInfo_MemberQuitTips.Size(m)
}
func (m *MemberQuitTips) XXX_DiscardUnknown() {
	xxx_messageInfo_MemberQuitTips.DiscardUnknown(m)
}

var xxx_messageInfo_MemberQuitTips proto.InternalMessageInfo

func (m *MemberQuitTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *MemberQuitTips) GetQuitUser() *GroupMemberFullInfo {
	if m != nil {
		return m.QuitUser
	}
	return nil
}

func (m *MemberQuitTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

// 	OnApplicationGroupAccepted()
type GroupApplicationAcceptedTips struct {
	Group                *GroupInfo           `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	HandleMsg            string               `protobuf:"bytes,4,opt,name=handleMsg" json:"handleMsg,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GroupApplicationAcceptedTips) Reset()         { *m = GroupApplicationAcceptedTips{} }
func (m *GroupApplicationAcceptedTips) String() string { return proto.CompactTextString(m) }
func (*GroupApplicationAcceptedTips) ProtoMessage()    {}
func (*GroupApplicationAcceptedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{29}
}
func (m *GroupApplicationAcceptedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupApplicationAcceptedTips.Unmarshal(m, b)
}
func (m *GroupApplicationAcceptedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupApplicationAcceptedTips.Marshal(b, m, deterministic)
}
func (dst *GroupApplicationAcceptedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupApplicationAcceptedTips.Merge(dst, src)
}
func (m *GroupApplicationAcceptedTips) XXX_Size() int {
	return xxx_messageInfo_GroupApplicationAcceptedTips.Size(m)
}
func (m *GroupApplicationAcceptedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupApplicationAcceptedTips.DiscardUnknown(m)
}

var xxx_messageInfo_GroupApplicationAcceptedTips proto.InternalMessageInfo

func (m *GroupApplicationAcceptedTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *GroupApplicationAcceptedTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *GroupApplicationAcceptedTips) GetHandleMsg() string {
	if m != nil {
		return m.HandleMsg
	}
	return ""
}

// 	OnApplicationGroupRejected()
type GroupApplicationRejectedTips struct {
	Group                *GroupInfo           `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	HandleMsg            string               `protobuf:"bytes,4,opt,name=handleMsg" json:"handleMsg,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GroupApplicationRejectedTips) Reset()         { *m = GroupApplicationRejectedTips{} }
func (m *GroupApplicationRejectedTips) String() string { return proto.CompactTextString(m) }
func (*GroupApplicationRejectedTips) ProtoMessage()    {}
func (*GroupApplicationRejectedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{30}
}
func (m *GroupApplicationRejectedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupApplicationRejectedTips.Unmarshal(m, b)
}
func (m *GroupApplicationRejectedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupApplicationRejectedTips.Marshal(b, m, deterministic)
}
func (dst *GroupApplicationRejectedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupApplicationRejectedTips.Merge(dst, src)
}
func (m *GroupApplicationRejectedTips) XXX_Size() int {
	return xxx_messageInfo_GroupApplicationRejectedTips.Size(m)
}
func (m *GroupApplicationRejectedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupApplicationRejectedTips.DiscardUnknown(m)
}

var xxx_messageInfo_GroupApplicationRejectedTips proto.InternalMessageInfo

func (m *GroupApplicationRejectedTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *GroupApplicationRejectedTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *GroupApplicationRejectedTips) GetHandleMsg() string {
	if m != nil {
		return m.HandleMsg
	}
	return ""
}

// 	OnTransferGroupOwner()
type GroupOwnerTransferredTips struct {
	Group                *GroupInfo           `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	NewGroupOwner        *GroupMemberFullInfo `protobuf:"bytes,3,opt,name=newGroupOwner" json:"newGroupOwner,omitempty"`
	OperationTime        int64                `protobuf:"varint,4,opt,name=operationTime" json:"operationTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GroupOwnerTransferredTips) Reset()         { *m = GroupOwnerTransferredTips{} }
func (m *GroupOwnerTransferredTips) String() string { return proto.CompactTextString(m) }
func (*GroupOwnerTransferredTips) ProtoMessage()    {}
func (*GroupOwnerTransferredTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{31}
}
func (m *GroupOwnerTransferredTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupOwnerTransferredTips.Unmarshal(m, b)
}
func (m *GroupOwnerTransferredTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupOwnerTransferredTips.Marshal(b, m, deterministic)
}
func (dst *GroupOwnerTransferredTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupOwnerTransferredTips.Merge(dst, src)
}
func (m *GroupOwnerTransferredTips) XXX_Size() int {
	return xxx_messageInfo_GroupOwnerTransferredTips.Size(m)
}
func (m *GroupOwnerTransferredTips) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupOwnerTransferredTips.DiscardUnknown(m)
}

var xxx_messageInfo_GroupOwnerTransferredTips proto.InternalMessageInfo

func (m *GroupOwnerTransferredTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *GroupOwnerTransferredTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *GroupOwnerTransferredTips) GetNewGroupOwner() *GroupMemberFullInfo {
	if m != nil {
		return m.NewGroupOwner
	}
	return nil
}

func (m *GroupOwnerTransferredTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

// 	OnMemberKicked()
type MemberKickedTips struct {
	Group                *GroupInfo             `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo   `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	KickedUserList       []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=kickedUserList" json:"kickedUserList,omitempty"`
	OperationTime        int64                  `protobuf:"varint,4,opt,name=operationTime" json:"operationTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *MemberKickedTips) Reset()         { *m = MemberKickedTips{} }
func (m *MemberKickedTips) String() string { return proto.CompactTextString(m) }
func (*MemberKickedTips) ProtoMessage()    {}
func (*MemberKickedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{32}
}
func (m *MemberKickedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MemberKickedTips.Unmarshal(m, b)
}
func (m *MemberKickedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MemberKickedTips.Marshal(b, m, deterministic)
}
func (dst *MemberKickedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MemberKickedTips.Merge(dst, src)
}
func (m *MemberKickedTips) XXX_Size() int {
	return xxx_messageInfo_MemberKickedTips.Size(m)
}
func (m *MemberKickedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_MemberKickedTips.DiscardUnknown(m)
}

var xxx_messageInfo_MemberKickedTips proto.InternalMessageInfo

func (m *MemberKickedTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *MemberKickedTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *MemberKickedTips) GetKickedUserList() []*GroupMemberFullInfo {
	if m != nil {
		return m.KickedUserList
	}
	return nil
}

func (m *MemberKickedTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

// 	OnMemberInvited()
type MemberInvitedTips struct {
	Group                *GroupInfo             `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo   `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	InvitedUserList      []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=invitedUserList" json:"invitedUserList,omitempty"`
	OperationTime        int64                  `protobuf:"varint,4,opt,name=operationTime" json:"operationTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *MemberInvitedTips) Reset()         { *m = MemberInvitedTips{} }
func (m *MemberInvitedTips) String() string { return proto.CompactTextString(m) }
func (*MemberInvitedTips) ProtoMessage()    {}
func (*MemberInvitedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{33}
}
func (m *MemberInvitedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MemberInvitedTips.Unmarshal(m, b)
}
func (m *MemberInvitedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MemberInvitedTips.Marshal(b, m, deterministic)
}
func (dst *MemberInvitedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MemberInvitedTips.Merge(dst, src)
}
func (m *MemberInvitedTips) XXX_Size() int {
	return xxx_messageInfo_MemberInvitedTips.Size(m)
}
func (m *MemberInvitedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_MemberInvitedTips.DiscardUnknown(m)
}

var xxx_messageInfo_MemberInvitedTips proto.InternalMessageInfo

func (m *MemberInvitedTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *MemberInvitedTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *MemberInvitedTips) GetInvitedUserList() []*GroupMemberFullInfo {
	if m != nil {
		return m.InvitedUserList
	}
	return nil
}

func (m *MemberInvitedTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

// Actively join the group
type MemberEnterTips struct {
	Group                *GroupInfo           `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	EntrantUser          *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=entrantUser" json:"entrantUser,omitempty"`
	OperationTime        int64                `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *MemberEnterTips) Reset()         { *m = MemberEnterTips{} }
func (m *MemberEnterTips) String() string { return proto.CompactTextString(m) }
func (*MemberEnterTips) ProtoMessage()    {}
func (*MemberEnterTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{34}
}
func (m *MemberEnterTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MemberEnterTips.Unmarshal(m, b)
}
func (m *MemberEnterTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MemberEnterTips.Marshal(b, m, deterministic)
}
func (dst *MemberEnterTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MemberEnterTips.Merge(dst, src)
}
func (m *MemberEnterTips) XXX_Size() int {
	return xxx_messageInfo_MemberEnterTips.Size(m)
}
func (m *MemberEnterTips) XXX_DiscardUnknown() {
	xxx_messageInfo_MemberEnterTips.DiscardUnknown(m)
}

var xxx_messageInfo_MemberEnterTips proto.InternalMessageInfo

func (m *MemberEnterTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *MemberEnterTips) GetEntrantUser() *GroupMemberFullInfo {
	if m != nil {
		return m.EntrantUser
	}
	return nil
}

func (m *MemberEnterTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

type GroupDismissedTips struct {
	Group                *GroupInfo           `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	OperationTime        int64                `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GroupDismissedTips) Reset()         { *m = GroupDismissedTips{} }
func (m *GroupDismissedTips) String() string { return proto.CompactTextString(m) }
func (*GroupDismissedTips) ProtoMessage()    {}
func (*GroupDismissedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{35}
}
func (m *GroupDismissedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupDismissedTips.Unmarshal(m, b)
}
func (m *GroupDismissedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupDismissedTips.Marshal(b, m, deterministic)
}
func (dst *GroupDismissedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupDismissedTips.Merge(dst, src)
}
func (m *GroupDismissedTips) XXX_Size() int {
	return xxx_messageInfo_GroupDismissedTips.Size(m)
}
func (m *GroupDismissedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupDismissedTips.DiscardUnknown(m)
}

var xxx_messageInfo_GroupDismissedTips proto.InternalMessageInfo

func (m *GroupDismissedTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *GroupDismissedTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *GroupDismissedTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

type GroupMemberMutedTips struct {
	Group                *GroupInfo           `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	OperationTime        int64                `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"`
	MutedUser            *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser" json:"mutedUser,omitempty"`
	MutedSeconds         uint32               `protobuf:"varint,5,opt,name=mutedSeconds" json:"mutedSeconds,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GroupMemberMutedTips) Reset()         { *m = GroupMemberMutedTips{} }
func (m *GroupMemberMutedTips) String() string { return proto.CompactTextString(m) }
func (*GroupMemberMutedTips) ProtoMessage()    {}
func (*GroupMemberMutedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{36}
}
func (m *GroupMemberMutedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupMemberMutedTips.Unmarshal(m, b)
}
func (m *GroupMemberMutedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupMemberMutedTips.Marshal(b, m, deterministic)
}
func (dst *GroupMemberMutedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupMemberMutedTips.Merge(dst, src)
}
func (m *GroupMemberMutedTips) XXX_Size() int {
	return xxx_messageInfo_GroupMemberMutedTips.Size(m)
}
func (m *GroupMemberMutedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupMemberMutedTips.DiscardUnknown(m)
}

var xxx_messageInfo_GroupMemberMutedTips proto.InternalMessageInfo

func (m *GroupMemberMutedTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *GroupMemberMutedTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *GroupMemberMutedTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

func (m *GroupMemberMutedTips) GetMutedUser() *GroupMemberFullInfo {
	if m != nil {
		return m.MutedUser
	}
	return nil
}

func (m *GroupMemberMutedTips) GetMutedSeconds() uint32 {
	if m != nil {
		return m.MutedSeconds
	}
	return 0
}

type GroupMemberCancelMutedTips struct {
	Group                *GroupInfo           `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	OperationTime        int64                `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"`
	MutedUser            *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser" json:"mutedUser,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GroupMemberCancelMutedTips) Reset()         { *m = GroupMemberCancelMutedTips{} }
func (m *GroupMemberCancelMutedTips) String() string { return proto.CompactTextString(m) }
func (*GroupMemberCancelMutedTips) ProtoMessage()    {}
func (*GroupMemberCancelMutedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{37}
}
func (m *GroupMemberCancelMutedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupMemberCancelMutedTips.Unmarshal(m, b)
}
func (m *GroupMemberCancelMutedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupMemberCancelMutedTips.Marshal(b, m, deterministic)
}
func (dst *GroupMemberCancelMutedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupMemberCancelMutedTips.Merge(dst, src)
}
func (m *GroupMemberCancelMutedTips) XXX_Size() int {
	return xxx_messageInfo_GroupMemberCancelMutedTips.Size(m)
}
func (m *GroupMemberCancelMutedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupMemberCancelMutedTips.DiscardUnknown(m)
}

var xxx_messageInfo_GroupMemberCancelMutedTips proto.InternalMessageInfo

func (m *GroupMemberCancelMutedTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *GroupMemberCancelMutedTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *GroupMemberCancelMutedTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

func (m *GroupMemberCancelMutedTips) GetMutedUser() *GroupMemberFullInfo {
	if m != nil {
		return m.MutedUser
	}
	return nil
}

type GroupMutedTips struct {
	Group                *GroupInfo           `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	OperationTime        int64                `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GroupMutedTips) Reset()         { *m = GroupMutedTips{} }
func (m *GroupMutedTips) String() string { return proto.CompactTextString(m) }
func (*GroupMutedTips) ProtoMessage()    {}
func (*GroupMutedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{38}
}
func (m *GroupMutedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupMutedTips.Unmarshal(m, b)
}
func (m *GroupMutedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupMutedTips.Marshal(b, m, deterministic)
}
func (dst *GroupMutedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupMutedTips.Merge(dst, src)
}
func (m *GroupMutedTips) XXX_Size() int {
	return xxx_messageInfo_GroupMutedTips.Size(m)
}
func (m *GroupMutedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupMutedTips.DiscardUnknown(m)
}

var xxx_messageInfo_GroupMutedTips proto.InternalMessageInfo

func (m *GroupMutedTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *GroupMutedTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *GroupMutedTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

type GroupCancelMutedTips struct {
	Group                *GroupInfo           `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	OperationTime        int64                `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GroupCancelMutedTips) Reset()         { *m = GroupCancelMutedTips{} }
func (m *GroupCancelMutedTips) String() string { return proto.CompactTextString(m) }
func (*GroupCancelMutedTips) ProtoMessage()    {}
func (*GroupCancelMutedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{39}
}
func (m *GroupCancelMutedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupCancelMutedTips.Unmarshal(m, b)
}
func (m *GroupCancelMutedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupCancelMutedTips.Marshal(b, m, deterministic)
}
func (dst *GroupCancelMutedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupCancelMutedTips.Merge(dst, src)
}
func (m *GroupCancelMutedTips) XXX_Size() int {
	return xxx_messageInfo_GroupCancelMutedTips.Size(m)
}
func (m *GroupCancelMutedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupCancelMutedTips.DiscardUnknown(m)
}

var xxx_messageInfo_GroupCancelMutedTips proto.InternalMessageInfo

func (m *GroupCancelMutedTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *GroupCancelMutedTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *GroupCancelMutedTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

type GroupMemberInfoSetTips struct {
	Group                *GroupInfo           `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"`
	OpUser               *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	OperationTime        int64                `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"`
	ChangedUser          *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=changedUser" json:"changedUser,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GroupMemberInfoSetTips) Reset()         { *m = GroupMemberInfoSetTips{} }
func (m *GroupMemberInfoSetTips) String() string { return proto.CompactTextString(m) }
func (*GroupMemberInfoSetTips) ProtoMessage()    {}
func (*GroupMemberInfoSetTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{40}
}
func (m *GroupMemberInfoSetTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupMemberInfoSetTips.Unmarshal(m, b)
}
func (m *GroupMemberInfoSetTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupMemberInfoSetTips.Marshal(b, m, deterministic)
}
func (dst *GroupMemberInfoSetTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupMemberInfoSetTips.Merge(dst, src)
}
func (m *GroupMemberInfoSetTips) XXX_Size() int {
	return xxx_messageInfo_GroupMemberInfoSetTips.Size(m)
}
func (m *GroupMemberInfoSetTips) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupMemberInfoSetTips.DiscardUnknown(m)
}

var xxx_messageInfo_GroupMemberInfoSetTips proto.InternalMessageInfo

func (m *GroupMemberInfoSetTips) GetGroup() *GroupInfo {
	if m != nil {
		return m.Group
	}
	return nil
}

func (m *GroupMemberInfoSetTips) GetOpUser() *GroupMemberFullInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *GroupMemberInfoSetTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

func (m *GroupMemberInfoSetTips) GetChangedUser() *GroupMemberFullInfo {
	if m != nil {
		return m.ChangedUser
	}
	return nil
}

type OrganizationChangedTips struct {
	OpUser               *UserInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"`
	OperationTime        int64     `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *OrganizationChangedTips) Reset()         { *m = OrganizationChangedTips{} }
func (m *OrganizationChangedTips) String() string { return proto.CompactTextString(m) }
func (*OrganizationChangedTips) ProtoMessage()    {}
func (*OrganizationChangedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{41}
}
func (m *OrganizationChangedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OrganizationChangedTips.Unmarshal(m, b)
}
func (m *OrganizationChangedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OrganizationChangedTips.Marshal(b, m, deterministic)
}
func (dst *OrganizationChangedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OrganizationChangedTips.Merge(dst, src)
}
func (m *OrganizationChangedTips) XXX_Size() int {
	return xxx_messageInfo_OrganizationChangedTips.Size(m)
}
func (m *OrganizationChangedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_OrganizationChangedTips.DiscardUnknown(m)
}

var xxx_messageInfo_OrganizationChangedTips proto.InternalMessageInfo

func (m *OrganizationChangedTips) GetOpUser() *UserInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

func (m *OrganizationChangedTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

type FriendApplication struct {
	AddTime              int64    `protobuf:"varint,1,opt,name=addTime" json:"addTime,omitempty"`
	AddSource            string   `protobuf:"bytes,2,opt,name=addSource" json:"addSource,omitempty"`
	AddWording           string   `protobuf:"bytes,3,opt,name=addWording" json:"addWording,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FriendApplication) Reset()         { *m = FriendApplication{} }
func (m *FriendApplication) String() string { return proto.CompactTextString(m) }
func (*FriendApplication) ProtoMessage()    {}
func (*FriendApplication) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{42}
}
func (m *FriendApplication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FriendApplication.Unmarshal(m, b)
}
func (m *FriendApplication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FriendApplication.Marshal(b, m, deterministic)
}
func (dst *FriendApplication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FriendApplication.Merge(dst, src)
}
func (m *FriendApplication) XXX_Size() int {
	return xxx_messageInfo_FriendApplication.Size(m)
}
func (m *FriendApplication) XXX_DiscardUnknown() {
	xxx_messageInfo_FriendApplication.DiscardUnknown(m)
}

var xxx_messageInfo_FriendApplication proto.InternalMessageInfo

func (m *FriendApplication) GetAddTime() int64 {
	if m != nil {
		return m.AddTime
	}
	return 0
}

func (m *FriendApplication) GetAddSource() string {
	if m != nil {
		return m.AddSource
	}
	return ""
}

func (m *FriendApplication) GetAddWording() string {
	if m != nil {
		return m.AddWording
	}
	return ""
}

type FromToUserID struct {
	FromUserID           string   `protobuf:"bytes,1,opt,name=fromUserID" json:"fromUserID,omitempty"`
	ToUserID             string   `protobuf:"bytes,2,opt,name=toUserID" json:"toUserID,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FromToUserID) Reset()         { *m = FromToUserID{} }
func (m *FromToUserID) String() string { return proto.CompactTextString(m) }
func (*FromToUserID) ProtoMessage()    {}
func (*FromToUserID) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{43}
}
func (m *FromToUserID) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FromToUserID.Unmarshal(m, b)
}
func (m *FromToUserID) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FromToUserID.Marshal(b, m, deterministic)
}
func (dst *FromToUserID) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FromToUserID.Merge(dst, src)
}
func (m *FromToUserID) XXX_Size() int {
	return xxx_messageInfo_FromToUserID.Size(m)
}
func (m *FromToUserID) XXX_DiscardUnknown() {
	xxx_messageInfo_FromToUserID.DiscardUnknown(m)
}

var xxx_messageInfo_FromToUserID proto.InternalMessageInfo

func (m *FromToUserID) GetFromUserID() string {
	if m != nil {
		return m.FromUserID
	}
	return ""
}

func (m *FromToUserID) GetToUserID() string {
	if m != nil {
		return m.ToUserID
	}
	return ""
}

// FromUserID apply to add ToUserID
type FriendApplicationTips struct {
	FromToUserID         *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *FriendApplicationTips) Reset()         { *m = FriendApplicationTips{} }
func (m *FriendApplicationTips) String() string { return proto.CompactTextString(m) }
func (*FriendApplicationTips) ProtoMessage()    {}
func (*FriendApplicationTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{44}
}
func (m *FriendApplicationTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FriendApplicationTips.Unmarshal(m, b)
}
func (m *FriendApplicationTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FriendApplicationTips.Marshal(b, m, deterministic)
}
func (dst *FriendApplicationTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FriendApplicationTips.Merge(dst, src)
}
func (m *FriendApplicationTips) XXX_Size() int {
	return xxx_messageInfo_FriendApplicationTips.Size(m)
}
func (m *FriendApplicationTips) XXX_DiscardUnknown() {
	xxx_messageInfo_FriendApplicationTips.DiscardUnknown(m)
}

var xxx_messageInfo_FriendApplicationTips proto.InternalMessageInfo

func (m *FriendApplicationTips) GetFromToUserID() *FromToUserID {
	if m != nil {
		return m.FromToUserID
	}
	return nil
}

// FromUserID accept or reject ToUserID
type FriendApplicationApprovedTips struct {
	FromToUserID         *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"`
	HandleMsg            string        `protobuf:"bytes,2,opt,name=handleMsg" json:"handleMsg,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *FriendApplicationApprovedTips) Reset()         { *m = FriendApplicationApprovedTips{} }
func (m *FriendApplicationApprovedTips) String() string { return proto.CompactTextString(m) }
func (*FriendApplicationApprovedTips) ProtoMessage()    {}
func (*FriendApplicationApprovedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{45}
}
func (m *FriendApplicationApprovedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FriendApplicationApprovedTips.Unmarshal(m, b)
}
func (m *FriendApplicationApprovedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FriendApplicationApprovedTips.Marshal(b, m, deterministic)
}
func (dst *FriendApplicationApprovedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FriendApplicationApprovedTips.Merge(dst, src)
}
func (m *FriendApplicationApprovedTips) XXX_Size() int {
	return xxx_messageInfo_FriendApplicationApprovedTips.Size(m)
}
func (m *FriendApplicationApprovedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_FriendApplicationApprovedTips.DiscardUnknown(m)
}

var xxx_messageInfo_FriendApplicationApprovedTips proto.InternalMessageInfo

func (m *FriendApplicationApprovedTips) GetFromToUserID() *FromToUserID {
	if m != nil {
		return m.FromToUserID
	}
	return nil
}

func (m *FriendApplicationApprovedTips) GetHandleMsg() string {
	if m != nil {
		return m.HandleMsg
	}
	return ""
}

// FromUserID accept or reject ToUserID
type FriendApplicationRejectedTips struct {
	FromToUserID         *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"`
	HandleMsg            string        `protobuf:"bytes,2,opt,name=handleMsg" json:"handleMsg,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *FriendApplicationRejectedTips) Reset()         { *m = FriendApplicationRejectedTips{} }
func (m *FriendApplicationRejectedTips) String() string { return proto.CompactTextString(m) }
func (*FriendApplicationRejectedTips) ProtoMessage()    {}
func (*FriendApplicationRejectedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{46}
}
func (m *FriendApplicationRejectedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FriendApplicationRejectedTips.Unmarshal(m, b)
}
func (m *FriendApplicationRejectedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FriendApplicationRejectedTips.Marshal(b, m, deterministic)
}
func (dst *FriendApplicationRejectedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FriendApplicationRejectedTips.Merge(dst, src)
}
func (m *FriendApplicationRejectedTips) XXX_Size() int {
	return xxx_messageInfo_FriendApplicationRejectedTips.Size(m)
}
func (m *FriendApplicationRejectedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_FriendApplicationRejectedTips.DiscardUnknown(m)
}

var xxx_messageInfo_FriendApplicationRejectedTips proto.InternalMessageInfo

func (m *FriendApplicationRejectedTips) GetFromToUserID() *FromToUserID {
	if m != nil {
		return m.FromToUserID
	}
	return nil
}

func (m *FriendApplicationRejectedTips) GetHandleMsg() string {
	if m != nil {
		return m.HandleMsg
	}
	return ""
}

// FromUserID  Added a friend ToUserID
type FriendAddedTips struct {
	Friend               *FriendInfo     `protobuf:"bytes,1,opt,name=friend" json:"friend,omitempty"`
	OperationTime        int64           `protobuf:"varint,2,opt,name=operationTime" json:"operationTime,omitempty"`
	OpUser               *PublicUserInfo `protobuf:"bytes,3,opt,name=opUser" json:"opUser,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *FriendAddedTips) Reset()         { *m = FriendAddedTips{} }
func (m *FriendAddedTips) String() string { return proto.CompactTextString(m) }
func (*FriendAddedTips) ProtoMessage()    {}
func (*FriendAddedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{47}
}
func (m *FriendAddedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FriendAddedTips.Unmarshal(m, b)
}
func (m *FriendAddedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FriendAddedTips.Marshal(b, m, deterministic)
}
func (dst *FriendAddedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FriendAddedTips.Merge(dst, src)
}
func (m *FriendAddedTips) XXX_Size() int {
	return xxx_messageInfo_FriendAddedTips.Size(m)
}
func (m *FriendAddedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_FriendAddedTips.DiscardUnknown(m)
}

var xxx_messageInfo_FriendAddedTips proto.InternalMessageInfo

func (m *FriendAddedTips) GetFriend() *FriendInfo {
	if m != nil {
		return m.Friend
	}
	return nil
}

func (m *FriendAddedTips) GetOperationTime() int64 {
	if m != nil {
		return m.OperationTime
	}
	return 0
}

func (m *FriendAddedTips) GetOpUser() *PublicUserInfo {
	if m != nil {
		return m.OpUser
	}
	return nil
}

// FromUserID  deleted a friend ToUserID
type FriendDeletedTips struct {
	FromToUserID         *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *FriendDeletedTips) Reset()         { *m = FriendDeletedTips{} }
func (m *FriendDeletedTips) String() string { return proto.CompactTextString(m) }
func (*FriendDeletedTips) ProtoMessage()    {}
func (*FriendDeletedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{48}
}
func (m *FriendDeletedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FriendDeletedTips.Unmarshal(m, b)
}
func (m *FriendDeletedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FriendDeletedTips.Marshal(b, m, deterministic)
}
func (dst *FriendDeletedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FriendDeletedTips.Merge(dst, src)
}
func (m *FriendDeletedTips) XXX_Size() int {
	return xxx_messageInfo_FriendDeletedTips.Size(m)
}
func (m *FriendDeletedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_FriendDeletedTips.DiscardUnknown(m)
}

var xxx_messageInfo_FriendDeletedTips proto.InternalMessageInfo

func (m *FriendDeletedTips) GetFromToUserID() *FromToUserID {
	if m != nil {
		return m.FromToUserID
	}
	return nil
}

type BlackAddedTips struct {
	FromToUserID         *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *BlackAddedTips) Reset()         { *m = BlackAddedTips{} }
func (m *BlackAddedTips) String() string { return proto.CompactTextString(m) }
func (*BlackAddedTips) ProtoMessage()    {}
func (*BlackAddedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{49}
}
func (m *BlackAddedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_BlackAddedTips.Unmarshal(m, b)
}
func (m *BlackAddedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_BlackAddedTips.Marshal(b, m, deterministic)
}
func (dst *BlackAddedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_BlackAddedTips.Merge(dst, src)
}
func (m *BlackAddedTips) XXX_Size() int {
	return xxx_messageInfo_BlackAddedTips.Size(m)
}
func (m *BlackAddedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_BlackAddedTips.DiscardUnknown(m)
}

var xxx_messageInfo_BlackAddedTips proto.InternalMessageInfo

func (m *BlackAddedTips) GetFromToUserID() *FromToUserID {
	if m != nil {
		return m.FromToUserID
	}
	return nil
}

type BlackDeletedTips struct {
	FromToUserID         *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *BlackDeletedTips) Reset()         { *m = BlackDeletedTips{} }
func (m *BlackDeletedTips) String() string { return proto.CompactTextString(m) }
func (*BlackDeletedTips) ProtoMessage()    {}
func (*BlackDeletedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{50}
}
func (m *BlackDeletedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_BlackDeletedTips.Unmarshal(m, b)
}
func (m *BlackDeletedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_BlackDeletedTips.Marshal(b, m, deterministic)
}
func (dst *BlackDeletedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_BlackDeletedTips.Merge(dst, src)
}
func (m *BlackDeletedTips) XXX_Size() int {
	return xxx_messageInfo_BlackDeletedTips.Size(m)
}
func (m *BlackDeletedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_BlackDeletedTips.DiscardUnknown(m)
}

var xxx_messageInfo_BlackDeletedTips proto.InternalMessageInfo

func (m *BlackDeletedTips) GetFromToUserID() *FromToUserID {
	if m != nil {
		return m.FromToUserID
	}
	return nil
}

type FriendInfoChangedTips struct {
	FromToUserID         *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *FriendInfoChangedTips) Reset()         { *m = FriendInfoChangedTips{} }
func (m *FriendInfoChangedTips) String() string { return proto.CompactTextString(m) }
func (*FriendInfoChangedTips) ProtoMessage()    {}
func (*FriendInfoChangedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{51}
}
func (m *FriendInfoChangedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FriendInfoChangedTips.Unmarshal(m, b)
}
func (m *FriendInfoChangedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FriendInfoChangedTips.Marshal(b, m, deterministic)
}
func (dst *FriendInfoChangedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FriendInfoChangedTips.Merge(dst, src)
}
func (m *FriendInfoChangedTips) XXX_Size() int {
	return xxx_messageInfo_FriendInfoChangedTips.Size(m)
}
func (m *FriendInfoChangedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_FriendInfoChangedTips.DiscardUnknown(m)
}

var xxx_messageInfo_FriendInfoChangedTips proto.InternalMessageInfo

func (m *FriendInfoChangedTips) GetFromToUserID() *FromToUserID {
	if m != nil {
		return m.FromToUserID
	}
	return nil
}

// ////////////////////user/////////////////////
type UserInfoUpdatedTips struct {
	UserID               string   `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UserInfoUpdatedTips) Reset()         { *m = UserInfoUpdatedTips{} }
func (m *UserInfoUpdatedTips) String() string { return proto.CompactTextString(m) }
func (*UserInfoUpdatedTips) ProtoMessage()    {}
func (*UserInfoUpdatedTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{52}
}
func (m *UserInfoUpdatedTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UserInfoUpdatedTips.Unmarshal(m, b)
}
func (m *UserInfoUpdatedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UserInfoUpdatedTips.Marshal(b, m, deterministic)
}
func (dst *UserInfoUpdatedTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UserInfoUpdatedTips.Merge(dst, src)
}
func (m *UserInfoUpdatedTips) XXX_Size() int {
	return xxx_messageInfo_UserInfoUpdatedTips.Size(m)
}
func (m *UserInfoUpdatedTips) XXX_DiscardUnknown() {
	xxx_messageInfo_UserInfoUpdatedTips.DiscardUnknown(m)
}

var xxx_messageInfo_UserInfoUpdatedTips proto.InternalMessageInfo

func (m *UserInfoUpdatedTips) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

// ////////////////////conversation/////////////////////
type ConversationUpdateTips struct {
	UserID               string   `protobuf:"bytes,1,opt,name=UserID" json:"UserID,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ConversationUpdateTips) Reset()         { *m = ConversationUpdateTips{} }
func (m *ConversationUpdateTips) String() string { return proto.CompactTextString(m) }
func (*ConversationUpdateTips) ProtoMessage()    {}
func (*ConversationUpdateTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{53}
}
func (m *ConversationUpdateTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ConversationUpdateTips.Unmarshal(m, b)
}
func (m *ConversationUpdateTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ConversationUpdateTips.Marshal(b, m, deterministic)
}
func (dst *ConversationUpdateTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ConversationUpdateTips.Merge(dst, src)
}
func (m *ConversationUpdateTips) XXX_Size() int {
	return xxx_messageInfo_ConversationUpdateTips.Size(m)
}
func (m *ConversationUpdateTips) XXX_DiscardUnknown() {
	xxx_messageInfo_ConversationUpdateTips.DiscardUnknown(m)
}

var xxx_messageInfo_ConversationUpdateTips proto.InternalMessageInfo

func (m *ConversationUpdateTips) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

type ConversationSetPrivateTips struct {
	RecvID               string   `protobuf:"bytes,1,opt,name=recvID" json:"recvID,omitempty"`
	SendID               string   `protobuf:"bytes,2,opt,name=sendID" json:"sendID,omitempty"`
	IsPrivate            bool     `protobuf:"varint,3,opt,name=isPrivate" json:"isPrivate,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ConversationSetPrivateTips) Reset()         { *m = ConversationSetPrivateTips{} }
func (m *ConversationSetPrivateTips) String() string { return proto.CompactTextString(m) }
func (*ConversationSetPrivateTips) ProtoMessage()    {}
func (*ConversationSetPrivateTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{54}
}
func (m *ConversationSetPrivateTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ConversationSetPrivateTips.Unmarshal(m, b)
}
func (m *ConversationSetPrivateTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ConversationSetPrivateTips.Marshal(b, m, deterministic)
}
func (dst *ConversationSetPrivateTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ConversationSetPrivateTips.Merge(dst, src)
}
func (m *ConversationSetPrivateTips) XXX_Size() int {
	return xxx_messageInfo_ConversationSetPrivateTips.Size(m)
}
func (m *ConversationSetPrivateTips) XXX_DiscardUnknown() {
	xxx_messageInfo_ConversationSetPrivateTips.DiscardUnknown(m)
}

var xxx_messageInfo_ConversationSetPrivateTips proto.InternalMessageInfo

func (m *ConversationSetPrivateTips) GetRecvID() string {
	if m != nil {
		return m.RecvID
	}
	return ""
}

func (m *ConversationSetPrivateTips) GetSendID() string {
	if m != nil {
		return m.SendID
	}
	return ""
}

func (m *ConversationSetPrivateTips) GetIsPrivate() bool {
	if m != nil {
		return m.IsPrivate
	}
	return false
}

// //////////////////message///////////////////////
type DeleteMessageTips struct {
	OpUserID             string   `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"`
	UserID               string   `protobuf:"bytes,2,opt,name=userID" json:"userID,omitempty"`
	SeqList              []uint32 `protobuf:"varint,3,rep,packed,name=seqList" json:"seqList,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeleteMessageTips) Reset()         { *m = DeleteMessageTips{} }
func (m *DeleteMessageTips) String() string { return proto.CompactTextString(m) }
func (*DeleteMessageTips) ProtoMessage()    {}
func (*DeleteMessageTips) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{55}
}
func (m *DeleteMessageTips) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteMessageTips.Unmarshal(m, b)
}
func (m *DeleteMessageTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteMessageTips.Marshal(b, m, deterministic)
}
func (dst *DeleteMessageTips) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteMessageTips.Merge(dst, src)
}
func (m *DeleteMessageTips) XXX_Size() int {
	return xxx_messageInfo_DeleteMessageTips.Size(m)
}
func (m *DeleteMessageTips) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteMessageTips.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteMessageTips proto.InternalMessageInfo

func (m *DeleteMessageTips) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *DeleteMessageTips) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

func (m *DeleteMessageTips) GetSeqList() []uint32 {
	if m != nil {
		return m.SeqList
	}
	return nil
}

// /cms
type RequestPagination struct {
	PageNumber           int32    `protobuf:"varint,1,opt,name=pageNumber" json:"pageNumber,omitempty"`
	ShowNumber           int32    `protobuf:"varint,2,opt,name=showNumber" json:"showNumber,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RequestPagination) Reset()         { *m = RequestPagination{} }
func (m *RequestPagination) String() string { return proto.CompactTextString(m) }
func (*RequestPagination) ProtoMessage()    {}
func (*RequestPagination) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{56}
}
func (m *RequestPagination) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RequestPagination.Unmarshal(m, b)
}
func (m *RequestPagination) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RequestPagination.Marshal(b, m, deterministic)
}
func (dst *RequestPagination) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RequestPagination.Merge(dst, src)
}
func (m *RequestPagination) XXX_Size() int {
	return xxx_messageInfo_RequestPagination.Size(m)
}
func (m *RequestPagination) XXX_DiscardUnknown() {
	xxx_messageInfo_RequestPagination.DiscardUnknown(m)
}

var xxx_messageInfo_RequestPagination proto.InternalMessageInfo

func (m *RequestPagination) GetPageNumber() int32 {
	if m != nil {
		return m.PageNumber
	}
	return 0
}

func (m *RequestPagination) GetShowNumber() int32 {
	if m != nil {
		return m.ShowNumber
	}
	return 0
}

type ResponsePagination struct {
	CurrentPage          int32    `protobuf:"varint,5,opt,name=CurrentPage" json:"CurrentPage,omitempty"`
	ShowNumber           int32    `protobuf:"varint,6,opt,name=ShowNumber" json:"ShowNumber,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ResponsePagination) Reset()         { *m = ResponsePagination{} }
func (m *ResponsePagination) String() string { return proto.CompactTextString(m) }
func (*ResponsePagination) ProtoMessage()    {}
func (*ResponsePagination) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{57}
}
func (m *ResponsePagination) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ResponsePagination.Unmarshal(m, b)
}
func (m *ResponsePagination) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ResponsePagination.Marshal(b, m, deterministic)
}
func (dst *ResponsePagination) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ResponsePagination.Merge(dst, src)
}
func (m *ResponsePagination) XXX_Size() int {
	return xxx_messageInfo_ResponsePagination.Size(m)
}
func (m *ResponsePagination) XXX_DiscardUnknown() {
	xxx_messageInfo_ResponsePagination.DiscardUnknown(m)
}

var xxx_messageInfo_ResponsePagination proto.InternalMessageInfo

func (m *ResponsePagination) GetCurrentPage() int32 {
	if m != nil {
		return m.CurrentPage
	}
	return 0
}

func (m *ResponsePagination) GetShowNumber() int32 {
	if m != nil {
		return m.ShowNumber
	}
	return 0
}

// /////////////////signal//////////////
type SignalReq struct {
	// Types that are valid to be assigned to Payload:
	//	*SignalReq_Invite
	//	*SignalReq_InviteInGroup
	//	*SignalReq_Cancel
	//	*SignalReq_Accept
	//	*SignalReq_HungUp
	//	*SignalReq_Reject
	Payload              isSignalReq_Payload `protobuf_oneof:"payload"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (m *SignalReq) Reset()         { *m = SignalReq{} }
func (m *SignalReq) String() string { return proto.CompactTextString(m) }
func (*SignalReq) ProtoMessage()    {}
func (*SignalReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{58}
}
func (m *SignalReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalReq.Unmarshal(m, b)
}
func (m *SignalReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalReq.Marshal(b, m, deterministic)
}
func (dst *SignalReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalReq.Merge(dst, src)
}
func (m *SignalReq) XXX_Size() int {
	return xxx_messageInfo_SignalReq.Size(m)
}
func (m *SignalReq) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalReq.DiscardUnknown(m)
}

var xxx_messageInfo_SignalReq proto.InternalMessageInfo

type isSignalReq_Payload interface {
	isSignalReq_Payload()
}

type SignalReq_Invite struct {
	Invite *SignalInviteReq `protobuf:"bytes,1,opt,name=invite,oneof"`
}
type SignalReq_InviteInGroup struct {
	InviteInGroup *SignalInviteInGroupReq `protobuf:"bytes,2,opt,name=inviteInGroup,oneof"`
}
type SignalReq_Cancel struct {
	Cancel *SignalCancelReq `protobuf:"bytes,3,opt,name=cancel,oneof"`
}
type SignalReq_Accept struct {
	Accept *SignalAcceptReq `protobuf:"bytes,4,opt,name=accept,oneof"`
}
type SignalReq_HungUp struct {
	HungUp *SignalHungUpReq `protobuf:"bytes,5,opt,name=hungUp,oneof"`
}
type SignalReq_Reject struct {
	Reject *SignalRejectReq `protobuf:"bytes,6,opt,name=reject,oneof"`
}

func (*SignalReq_Invite) isSignalReq_Payload()        {}
func (*SignalReq_InviteInGroup) isSignalReq_Payload() {}
func (*SignalReq_Cancel) isSignalReq_Payload()        {}
func (*SignalReq_Accept) isSignalReq_Payload()        {}
func (*SignalReq_HungUp) isSignalReq_Payload()        {}
func (*SignalReq_Reject) isSignalReq_Payload()        {}

func (m *SignalReq) GetPayload() isSignalReq_Payload {
	if m != nil {
		return m.Payload
	}
	return nil
}

func (m *SignalReq) GetInvite() *SignalInviteReq {
	if x, ok := m.GetPayload().(*SignalReq_Invite); ok {
		return x.Invite
	}
	return nil
}

func (m *SignalReq) GetInviteInGroup() *SignalInviteInGroupReq {
	if x, ok := m.GetPayload().(*SignalReq_InviteInGroup); ok {
		return x.InviteInGroup
	}
	return nil
}

func (m *SignalReq) GetCancel() *SignalCancelReq {
	if x, ok := m.GetPayload().(*SignalReq_Cancel); ok {
		return x.Cancel
	}
	return nil
}

func (m *SignalReq) GetAccept() *SignalAcceptReq {
	if x, ok := m.GetPayload().(*SignalReq_Accept); ok {
		return x.Accept
	}
	return nil
}

func (m *SignalReq) GetHungUp() *SignalHungUpReq {
	if x, ok := m.GetPayload().(*SignalReq_HungUp); ok {
		return x.HungUp
	}
	return nil
}

func (m *SignalReq) GetReject() *SignalRejectReq {
	if x, ok := m.GetPayload().(*SignalReq_Reject); ok {
		return x.Reject
	}
	return nil
}

// XXX_OneofFuncs is for the internal use of the proto package.
func (*SignalReq) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
	return _SignalReq_OneofMarshaler, _SignalReq_OneofUnmarshaler, _SignalReq_OneofSizer, []interface{}{
		(*SignalReq_Invite)(nil),
		(*SignalReq_InviteInGroup)(nil),
		(*SignalReq_Cancel)(nil),
		(*SignalReq_Accept)(nil),
		(*SignalReq_HungUp)(nil),
		(*SignalReq_Reject)(nil),
	}
}

func _SignalReq_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
	m := msg.(*SignalReq)
	// payload
	switch x := m.Payload.(type) {
	case *SignalReq_Invite:
		b.EncodeVarint(1<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.Invite); err != nil {
			return err
		}
	case *SignalReq_InviteInGroup:
		b.EncodeVarint(2<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.InviteInGroup); err != nil {
			return err
		}
	case *SignalReq_Cancel:
		b.EncodeVarint(3<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.Cancel); err != nil {
			return err
		}
	case *SignalReq_Accept:
		b.EncodeVarint(4<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.Accept); err != nil {
			return err
		}
	case *SignalReq_HungUp:
		b.EncodeVarint(5<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.HungUp); err != nil {
			return err
		}
	case *SignalReq_Reject:
		b.EncodeVarint(6<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.Reject); err != nil {
			return err
		}
	case nil:
	default:
		return fmt.Errorf("SignalReq.Payload has unexpected type %T", x)
	}
	return nil
}

func _SignalReq_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
	m := msg.(*SignalReq)
	switch tag {
	case 1: // payload.invite
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalInviteReq)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalReq_Invite{msg}
		return true, err
	case 2: // payload.inviteInGroup
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalInviteInGroupReq)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalReq_InviteInGroup{msg}
		return true, err
	case 3: // payload.cancel
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalCancelReq)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalReq_Cancel{msg}
		return true, err
	case 4: // payload.accept
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalAcceptReq)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalReq_Accept{msg}
		return true, err
	case 5: // payload.hungUp
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalHungUpReq)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalReq_HungUp{msg}
		return true, err
	case 6: // payload.reject
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalRejectReq)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalReq_Reject{msg}
		return true, err
	default:
		return false, nil
	}
}

func _SignalReq_OneofSizer(msg proto.Message) (n int) {
	m := msg.(*SignalReq)
	// payload
	switch x := m.Payload.(type) {
	case *SignalReq_Invite:
		s := proto.Size(x.Invite)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *SignalReq_InviteInGroup:
		s := proto.Size(x.InviteInGroup)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *SignalReq_Cancel:
		s := proto.Size(x.Cancel)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *SignalReq_Accept:
		s := proto.Size(x.Accept)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *SignalReq_HungUp:
		s := proto.Size(x.HungUp)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *SignalReq_Reject:
		s := proto.Size(x.Reject)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case nil:
	default:
		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
	}
	return n
}

type SignalResp struct {
	// Types that are valid to be assigned to Payload:
	//	*SignalResp_Invite
	//	*SignalResp_InviteInGroup
	//	*SignalResp_Cancel
	//	*SignalResp_Accept
	//	*SignalResp_HungUp
	//	*SignalResp_Reject
	Payload              isSignalResp_Payload `protobuf_oneof:"payload"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *SignalResp) Reset()         { *m = SignalResp{} }
func (m *SignalResp) String() string { return proto.CompactTextString(m) }
func (*SignalResp) ProtoMessage()    {}
func (*SignalResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{59}
}
func (m *SignalResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalResp.Unmarshal(m, b)
}
func (m *SignalResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalResp.Marshal(b, m, deterministic)
}
func (dst *SignalResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalResp.Merge(dst, src)
}
func (m *SignalResp) XXX_Size() int {
	return xxx_messageInfo_SignalResp.Size(m)
}
func (m *SignalResp) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalResp.DiscardUnknown(m)
}

var xxx_messageInfo_SignalResp proto.InternalMessageInfo

type isSignalResp_Payload interface {
	isSignalResp_Payload()
}

type SignalResp_Invite struct {
	Invite *SignalInviteReply `protobuf:"bytes,1,opt,name=invite,oneof"`
}
type SignalResp_InviteInGroup struct {
	InviteInGroup *SignalInviteInGroupReply `protobuf:"bytes,2,opt,name=inviteInGroup,oneof"`
}
type SignalResp_Cancel struct {
	Cancel *SignalCancelReply `protobuf:"bytes,3,opt,name=cancel,oneof"`
}
type SignalResp_Accept struct {
	Accept *SignalAcceptReply `protobuf:"bytes,4,opt,name=accept,oneof"`
}
type SignalResp_HungUp struct {
	HungUp *SignalHungUpReply `protobuf:"bytes,5,opt,name=hungUp,oneof"`
}
type SignalResp_Reject struct {
	Reject *SignalRejectReply `protobuf:"bytes,6,opt,name=reject,oneof"`
}

func (*SignalResp_Invite) isSignalResp_Payload()        {}
func (*SignalResp_InviteInGroup) isSignalResp_Payload() {}
func (*SignalResp_Cancel) isSignalResp_Payload()        {}
func (*SignalResp_Accept) isSignalResp_Payload()        {}
func (*SignalResp_HungUp) isSignalResp_Payload()        {}
func (*SignalResp_Reject) isSignalResp_Payload()        {}

func (m *SignalResp) GetPayload() isSignalResp_Payload {
	if m != nil {
		return m.Payload
	}
	return nil
}

func (m *SignalResp) GetInvite() *SignalInviteReply {
	if x, ok := m.GetPayload().(*SignalResp_Invite); ok {
		return x.Invite
	}
	return nil
}

func (m *SignalResp) GetInviteInGroup() *SignalInviteInGroupReply {
	if x, ok := m.GetPayload().(*SignalResp_InviteInGroup); ok {
		return x.InviteInGroup
	}
	return nil
}

func (m *SignalResp) GetCancel() *SignalCancelReply {
	if x, ok := m.GetPayload().(*SignalResp_Cancel); ok {
		return x.Cancel
	}
	return nil
}

func (m *SignalResp) GetAccept() *SignalAcceptReply {
	if x, ok := m.GetPayload().(*SignalResp_Accept); ok {
		return x.Accept
	}
	return nil
}

func (m *SignalResp) GetHungUp() *SignalHungUpReply {
	if x, ok := m.GetPayload().(*SignalResp_HungUp); ok {
		return x.HungUp
	}
	return nil
}

func (m *SignalResp) GetReject() *SignalRejectReply {
	if x, ok := m.GetPayload().(*SignalResp_Reject); ok {
		return x.Reject
	}
	return nil
}

// XXX_OneofFuncs is for the internal use of the proto package.
func (*SignalResp) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
	return _SignalResp_OneofMarshaler, _SignalResp_OneofUnmarshaler, _SignalResp_OneofSizer, []interface{}{
		(*SignalResp_Invite)(nil),
		(*SignalResp_InviteInGroup)(nil),
		(*SignalResp_Cancel)(nil),
		(*SignalResp_Accept)(nil),
		(*SignalResp_HungUp)(nil),
		(*SignalResp_Reject)(nil),
	}
}

func _SignalResp_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
	m := msg.(*SignalResp)
	// payload
	switch x := m.Payload.(type) {
	case *SignalResp_Invite:
		b.EncodeVarint(1<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.Invite); err != nil {
			return err
		}
	case *SignalResp_InviteInGroup:
		b.EncodeVarint(2<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.InviteInGroup); err != nil {
			return err
		}
	case *SignalResp_Cancel:
		b.EncodeVarint(3<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.Cancel); err != nil {
			return err
		}
	case *SignalResp_Accept:
		b.EncodeVarint(4<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.Accept); err != nil {
			return err
		}
	case *SignalResp_HungUp:
		b.EncodeVarint(5<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.HungUp); err != nil {
			return err
		}
	case *SignalResp_Reject:
		b.EncodeVarint(6<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.Reject); err != nil {
			return err
		}
	case nil:
	default:
		return fmt.Errorf("SignalResp.Payload has unexpected type %T", x)
	}
	return nil
}

func _SignalResp_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
	m := msg.(*SignalResp)
	switch tag {
	case 1: // payload.invite
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalInviteReply)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalResp_Invite{msg}
		return true, err
	case 2: // payload.inviteInGroup
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalInviteInGroupReply)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalResp_InviteInGroup{msg}
		return true, err
	case 3: // payload.cancel
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalCancelReply)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalResp_Cancel{msg}
		return true, err
	case 4: // payload.accept
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalAcceptReply)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalResp_Accept{msg}
		return true, err
	case 5: // payload.hungUp
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalHungUpReply)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalResp_HungUp{msg}
		return true, err
	case 6: // payload.reject
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(SignalRejectReply)
		err := b.DecodeMessage(msg)
		m.Payload = &SignalResp_Reject{msg}
		return true, err
	default:
		return false, nil
	}
}

func _SignalResp_OneofSizer(msg proto.Message) (n int) {
	m := msg.(*SignalResp)
	// payload
	switch x := m.Payload.(type) {
	case *SignalResp_Invite:
		s := proto.Size(x.Invite)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *SignalResp_InviteInGroup:
		s := proto.Size(x.InviteInGroup)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *SignalResp_Cancel:
		s := proto.Size(x.Cancel)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *SignalResp_Accept:
		s := proto.Size(x.Accept)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *SignalResp_HungUp:
		s := proto.Size(x.HungUp)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *SignalResp_Reject:
		s := proto.Size(x.Reject)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case nil:
	default:
		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
	}
	return n
}

type InvitationInfo struct {
	InviterUserID        string   `protobuf:"bytes,1,opt,name=inviterUserID" json:"inviterUserID,omitempty"`
	InviteeUserIDList    []string `protobuf:"bytes,2,rep,name=inviteeUserIDList" json:"inviteeUserIDList,omitempty"`
	CustomData           string   `protobuf:"bytes,3,opt,name=customData" json:"customData,omitempty"`
	GroupID              string   `protobuf:"bytes,4,opt,name=groupID" json:"groupID,omitempty"`
	RoomID               string   `protobuf:"bytes,5,opt,name=roomID" json:"roomID,omitempty"`
	Timeout              int32    `protobuf:"varint,6,opt,name=timeout" json:"timeout,omitempty"`
	MediaType            string   `protobuf:"bytes,7,opt,name=mediaType" json:"mediaType,omitempty"`
	PlatformID           int32    `protobuf:"varint,8,opt,name=platformID" json:"platformID,omitempty"`
	SessionType          int32    `protobuf:"varint,9,opt,name=sessionType" json:"sessionType,omitempty"`
	InitiateTime         int32    `protobuf:"varint,10,opt,name=initiateTime" json:"initiateTime,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *InvitationInfo) Reset()         { *m = InvitationInfo{} }
func (m *InvitationInfo) String() string { return proto.CompactTextString(m) }
func (*InvitationInfo) ProtoMessage()    {}
func (*InvitationInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{60}
}
func (m *InvitationInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_InvitationInfo.Unmarshal(m, b)
}
func (m *InvitationInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_InvitationInfo.Marshal(b, m, deterministic)
}
func (dst *InvitationInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_InvitationInfo.Merge(dst, src)
}
func (m *InvitationInfo) XXX_Size() int {
	return xxx_messageInfo_InvitationInfo.Size(m)
}
func (m *InvitationInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_InvitationInfo.DiscardUnknown(m)
}

var xxx_messageInfo_InvitationInfo proto.InternalMessageInfo

func (m *InvitationInfo) GetInviterUserID() string {
	if m != nil {
		return m.InviterUserID
	}
	return ""
}

func (m *InvitationInfo) GetInviteeUserIDList() []string {
	if m != nil {
		return m.InviteeUserIDList
	}
	return nil
}

func (m *InvitationInfo) GetCustomData() string {
	if m != nil {
		return m.CustomData
	}
	return ""
}

func (m *InvitationInfo) GetGroupID() string {
	if m != nil {
		return m.GroupID
	}
	return ""
}

func (m *InvitationInfo) GetRoomID() string {
	if m != nil {
		return m.RoomID
	}
	return ""
}

func (m *InvitationInfo) GetTimeout() int32 {
	if m != nil {
		return m.Timeout
	}
	return 0
}

func (m *InvitationInfo) GetMediaType() string {
	if m != nil {
		return m.MediaType
	}
	return ""
}

func (m *InvitationInfo) GetPlatformID() int32 {
	if m != nil {
		return m.PlatformID
	}
	return 0
}

func (m *InvitationInfo) GetSessionType() int32 {
	if m != nil {
		return m.SessionType
	}
	return 0
}

func (m *InvitationInfo) GetInitiateTime() int32 {
	if m != nil {
		return m.InitiateTime
	}
	return 0
}

type ParticipantMetaData struct {
	GroupInfo            *GroupInfo           `protobuf:"bytes,1,opt,name=groupInfo" json:"groupInfo,omitempty"`
	GroupMemberInfo      *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=groupMemberInfo" json:"groupMemberInfo,omitempty"`
	UserInfo             *PublicUserInfo      `protobuf:"bytes,3,opt,name=userInfo" json:"userInfo,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *ParticipantMetaData) Reset()         { *m = ParticipantMetaData{} }
func (m *ParticipantMetaData) String() string { return proto.CompactTextString(m) }
func (*ParticipantMetaData) ProtoMessage()    {}
func (*ParticipantMetaData) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{61}
}
func (m *ParticipantMetaData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ParticipantMetaData.Unmarshal(m, b)
}
func (m *ParticipantMetaData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ParticipantMetaData.Marshal(b, m, deterministic)
}
func (dst *ParticipantMetaData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ParticipantMetaData.Merge(dst, src)
}
func (m *ParticipantMetaData) XXX_Size() int {
	return xxx_messageInfo_ParticipantMetaData.Size(m)
}
func (m *ParticipantMetaData) XXX_DiscardUnknown() {
	xxx_messageInfo_ParticipantMetaData.DiscardUnknown(m)
}

var xxx_messageInfo_ParticipantMetaData proto.InternalMessageInfo

func (m *ParticipantMetaData) GetGroupInfo() *GroupInfo {
	if m != nil {
		return m.GroupInfo
	}
	return nil
}

func (m *ParticipantMetaData) GetGroupMemberInfo() *GroupMemberFullInfo {
	if m != nil {
		return m.GroupMemberInfo
	}
	return nil
}

func (m *ParticipantMetaData) GetUserInfo() *PublicUserInfo {
	if m != nil {
		return m.UserInfo
	}
	return nil
}

type SignalInviteReq struct {
	OpUserID             string               `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"`
	Invitation           *InvitationInfo      `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"`
	OfflinePushInfo      *OfflinePushInfo     `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"`
	Participant          *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *SignalInviteReq) Reset()         { *m = SignalInviteReq{} }
func (m *SignalInviteReq) String() string { return proto.CompactTextString(m) }
func (*SignalInviteReq) ProtoMessage()    {}
func (*SignalInviteReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{62}
}
func (m *SignalInviteReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalInviteReq.Unmarshal(m, b)
}
func (m *SignalInviteReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalInviteReq.Marshal(b, m, deterministic)
}
func (dst *SignalInviteReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalInviteReq.Merge(dst, src)
}
func (m *SignalInviteReq) XXX_Size() int {
	return xxx_messageInfo_SignalInviteReq.Size(m)
}
func (m *SignalInviteReq) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalInviteReq.DiscardUnknown(m)
}

var xxx_messageInfo_SignalInviteReq proto.InternalMessageInfo

func (m *SignalInviteReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalInviteReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalInviteReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

func (m *SignalInviteReq) GetParticipant() *ParticipantMetaData {
	if m != nil {
		return m.Participant
	}
	return nil
}

type SignalInviteReply struct {
	Token                string   `protobuf:"bytes,1,opt,name=token" json:"token,omitempty"`
	RoomID               string   `protobuf:"bytes,2,opt,name=roomID" json:"roomID,omitempty"`
	LiveURL              string   `protobuf:"bytes,3,opt,name=liveURL" json:"liveURL,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SignalInviteReply) Reset()         { *m = SignalInviteReply{} }
func (m *SignalInviteReply) String() string { return proto.CompactTextString(m) }
func (*SignalInviteReply) ProtoMessage()    {}
func (*SignalInviteReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{63}
}
func (m *SignalInviteReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalInviteReply.Unmarshal(m, b)
}
func (m *SignalInviteReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalInviteReply.Marshal(b, m, deterministic)
}
func (dst *SignalInviteReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalInviteReply.Merge(dst, src)
}
func (m *SignalInviteReply) XXX_Size() int {
	return xxx_messageInfo_SignalInviteReply.Size(m)
}
func (m *SignalInviteReply) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalInviteReply.DiscardUnknown(m)
}

var xxx_messageInfo_SignalInviteReply proto.InternalMessageInfo

func (m *SignalInviteReply) GetToken() string {
	if m != nil {
		return m.Token
	}
	return ""
}

func (m *SignalInviteReply) GetRoomID() string {
	if m != nil {
		return m.RoomID
	}
	return ""
}

func (m *SignalInviteReply) GetLiveURL() string {
	if m != nil {
		return m.LiveURL
	}
	return ""
}

type SignalInviteInGroupReq struct {
	OpUserID             string               `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"`
	Invitation           *InvitationInfo      `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"`
	OfflinePushInfo      *OfflinePushInfo     `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"`
	Participant          *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *SignalInviteInGroupReq) Reset()         { *m = SignalInviteInGroupReq{} }
func (m *SignalInviteInGroupReq) String() string { return proto.CompactTextString(m) }
func (*SignalInviteInGroupReq) ProtoMessage()    {}
func (*SignalInviteInGroupReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{64}
}
func (m *SignalInviteInGroupReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalInviteInGroupReq.Unmarshal(m, b)
}
func (m *SignalInviteInGroupReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalInviteInGroupReq.Marshal(b, m, deterministic)
}
func (dst *SignalInviteInGroupReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalInviteInGroupReq.Merge(dst, src)
}
func (m *SignalInviteInGroupReq) XXX_Size() int {
	return xxx_messageInfo_SignalInviteInGroupReq.Size(m)
}
func (m *SignalInviteInGroupReq) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalInviteInGroupReq.DiscardUnknown(m)
}

var xxx_messageInfo_SignalInviteInGroupReq proto.InternalMessageInfo

func (m *SignalInviteInGroupReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalInviteInGroupReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalInviteInGroupReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

func (m *SignalInviteInGroupReq) GetParticipant() *ParticipantMetaData {
	if m != nil {
		return m.Participant
	}
	return nil
}

type SignalInviteInGroupReply struct {
	Token                string   `protobuf:"bytes,1,opt,name=token" json:"token,omitempty"`
	RoomID               string   `protobuf:"bytes,2,opt,name=roomID" json:"roomID,omitempty"`
	LiveURL              string   `protobuf:"bytes,3,opt,name=liveURL" json:"liveURL,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SignalInviteInGroupReply) Reset()         { *m = SignalInviteInGroupReply{} }
func (m *SignalInviteInGroupReply) String() string { return proto.CompactTextString(m) }
func (*SignalInviteInGroupReply) ProtoMessage()    {}
func (*SignalInviteInGroupReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{65}
}
func (m *SignalInviteInGroupReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalInviteInGroupReply.Unmarshal(m, b)
}
func (m *SignalInviteInGroupReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalInviteInGroupReply.Marshal(b, m, deterministic)
}
func (dst *SignalInviteInGroupReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalInviteInGroupReply.Merge(dst, src)
}
func (m *SignalInviteInGroupReply) XXX_Size() int {
	return xxx_messageInfo_SignalInviteInGroupReply.Size(m)
}
func (m *SignalInviteInGroupReply) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalInviteInGroupReply.DiscardUnknown(m)
}

var xxx_messageInfo_SignalInviteInGroupReply proto.InternalMessageInfo

func (m *SignalInviteInGroupReply) GetToken() string {
	if m != nil {
		return m.Token
	}
	return ""
}

func (m *SignalInviteInGroupReply) GetRoomID() string {
	if m != nil {
		return m.RoomID
	}
	return ""
}

func (m *SignalInviteInGroupReply) GetLiveURL() string {
	if m != nil {
		return m.LiveURL
	}
	return ""
}

type SignalCancelReq struct {
	OpUserID             string               `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"`
	Invitation           *InvitationInfo      `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"`
	OfflinePushInfo      *OfflinePushInfo     `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"`
	Participant          *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *SignalCancelReq) Reset()         { *m = SignalCancelReq{} }
func (m *SignalCancelReq) String() string { return proto.CompactTextString(m) }
func (*SignalCancelReq) ProtoMessage()    {}
func (*SignalCancelReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{66}
}
func (m *SignalCancelReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalCancelReq.Unmarshal(m, b)
}
func (m *SignalCancelReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalCancelReq.Marshal(b, m, deterministic)
}
func (dst *SignalCancelReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalCancelReq.Merge(dst, src)
}
func (m *SignalCancelReq) XXX_Size() int {
	return xxx_messageInfo_SignalCancelReq.Size(m)
}
func (m *SignalCancelReq) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalCancelReq.DiscardUnknown(m)
}

var xxx_messageInfo_SignalCancelReq proto.InternalMessageInfo

func (m *SignalCancelReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalCancelReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalCancelReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

func (m *SignalCancelReq) GetParticipant() *ParticipantMetaData {
	if m != nil {
		return m.Participant
	}
	return nil
}

type SignalCancelReply struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SignalCancelReply) Reset()         { *m = SignalCancelReply{} }
func (m *SignalCancelReply) String() string { return proto.CompactTextString(m) }
func (*SignalCancelReply) ProtoMessage()    {}
func (*SignalCancelReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{67}
}
func (m *SignalCancelReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalCancelReply.Unmarshal(m, b)
}
func (m *SignalCancelReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalCancelReply.Marshal(b, m, deterministic)
}
func (dst *SignalCancelReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalCancelReply.Merge(dst, src)
}
func (m *SignalCancelReply) XXX_Size() int {
	return xxx_messageInfo_SignalCancelReply.Size(m)
}
func (m *SignalCancelReply) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalCancelReply.DiscardUnknown(m)
}

var xxx_messageInfo_SignalCancelReply proto.InternalMessageInfo

type SignalAcceptReq struct {
	OpUserID             string               `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"`
	Invitation           *InvitationInfo      `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"`
	OfflinePushInfo      *OfflinePushInfo     `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"`
	Participant          *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"`
	OpUserPlatformID     int32                `protobuf:"varint,5,opt,name=opUserPlatformID" json:"opUserPlatformID,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *SignalAcceptReq) Reset()         { *m = SignalAcceptReq{} }
func (m *SignalAcceptReq) String() string { return proto.CompactTextString(m) }
func (*SignalAcceptReq) ProtoMessage()    {}
func (*SignalAcceptReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{68}
}
func (m *SignalAcceptReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalAcceptReq.Unmarshal(m, b)
}
func (m *SignalAcceptReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalAcceptReq.Marshal(b, m, deterministic)
}
func (dst *SignalAcceptReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalAcceptReq.Merge(dst, src)
}
func (m *SignalAcceptReq) XXX_Size() int {
	return xxx_messageInfo_SignalAcceptReq.Size(m)
}
func (m *SignalAcceptReq) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalAcceptReq.DiscardUnknown(m)
}

var xxx_messageInfo_SignalAcceptReq proto.InternalMessageInfo

func (m *SignalAcceptReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalAcceptReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalAcceptReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

func (m *SignalAcceptReq) GetParticipant() *ParticipantMetaData {
	if m != nil {
		return m.Participant
	}
	return nil
}

func (m *SignalAcceptReq) GetOpUserPlatformID() int32 {
	if m != nil {
		return m.OpUserPlatformID
	}
	return 0
}

type SignalAcceptReply struct {
	Token                string   `protobuf:"bytes,1,opt,name=token" json:"token,omitempty"`
	RoomID               string   `protobuf:"bytes,2,opt,name=roomID" json:"roomID,omitempty"`
	LiveURL              string   `protobuf:"bytes,3,opt,name=liveURL" json:"liveURL,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SignalAcceptReply) Reset()         { *m = SignalAcceptReply{} }
func (m *SignalAcceptReply) String() string { return proto.CompactTextString(m) }
func (*SignalAcceptReply) ProtoMessage()    {}
func (*SignalAcceptReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{69}
}
func (m *SignalAcceptReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalAcceptReply.Unmarshal(m, b)
}
func (m *SignalAcceptReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalAcceptReply.Marshal(b, m, deterministic)
}
func (dst *SignalAcceptReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalAcceptReply.Merge(dst, src)
}
func (m *SignalAcceptReply) XXX_Size() int {
	return xxx_messageInfo_SignalAcceptReply.Size(m)
}
func (m *SignalAcceptReply) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalAcceptReply.DiscardUnknown(m)
}

var xxx_messageInfo_SignalAcceptReply proto.InternalMessageInfo

func (m *SignalAcceptReply) GetToken() string {
	if m != nil {
		return m.Token
	}
	return ""
}

func (m *SignalAcceptReply) GetRoomID() string {
	if m != nil {
		return m.RoomID
	}
	return ""
}

func (m *SignalAcceptReply) GetLiveURL() string {
	if m != nil {
		return m.LiveURL
	}
	return ""
}

type SignalHungUpReq struct {
	OpUserID             string           `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"`
	Invitation           *InvitationInfo  `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"`
	OfflinePushInfo      *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *SignalHungUpReq) Reset()         { *m = SignalHungUpReq{} }
func (m *SignalHungUpReq) String() string { return proto.CompactTextString(m) }
func (*SignalHungUpReq) ProtoMessage()    {}
func (*SignalHungUpReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{70}
}
func (m *SignalHungUpReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalHungUpReq.Unmarshal(m, b)
}
func (m *SignalHungUpReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalHungUpReq.Marshal(b, m, deterministic)
}
func (dst *SignalHungUpReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalHungUpReq.Merge(dst, src)
}
func (m *SignalHungUpReq) XXX_Size() int {
	return xxx_messageInfo_SignalHungUpReq.Size(m)
}
func (m *SignalHungUpReq) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalHungUpReq.DiscardUnknown(m)
}

var xxx_messageInfo_SignalHungUpReq proto.InternalMessageInfo

func (m *SignalHungUpReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalHungUpReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalHungUpReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

type SignalHungUpReply struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SignalHungUpReply) Reset()         { *m = SignalHungUpReply{} }
func (m *SignalHungUpReply) String() string { return proto.CompactTextString(m) }
func (*SignalHungUpReply) ProtoMessage()    {}
func (*SignalHungUpReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{71}
}
func (m *SignalHungUpReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalHungUpReply.Unmarshal(m, b)
}
func (m *SignalHungUpReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalHungUpReply.Marshal(b, m, deterministic)
}
func (dst *SignalHungUpReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalHungUpReply.Merge(dst, src)
}
func (m *SignalHungUpReply) XXX_Size() int {
	return xxx_messageInfo_SignalHungUpReply.Size(m)
}
func (m *SignalHungUpReply) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalHungUpReply.DiscardUnknown(m)
}

var xxx_messageInfo_SignalHungUpReply proto.InternalMessageInfo

type SignalRejectReq struct {
	OpUserID             string               `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"`
	Invitation           *InvitationInfo      `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"`
	OfflinePushInfo      *OfflinePushInfo     `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"`
	Participant          *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"`
	OpUserPlatformID     int32                `protobuf:"varint,5,opt,name=opUserPlatformID" json:"opUserPlatformID,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *SignalRejectReq) Reset()         { *m = SignalRejectReq{} }
func (m *SignalRejectReq) String() string { return proto.CompactTextString(m) }
func (*SignalRejectReq) ProtoMessage()    {}
func (*SignalRejectReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{72}
}
func (m *SignalRejectReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalRejectReq.Unmarshal(m, b)
}
func (m *SignalRejectReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalRejectReq.Marshal(b, m, deterministic)
}
func (dst *SignalRejectReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalRejectReq.Merge(dst, src)
}
func (m *SignalRejectReq) XXX_Size() int {
	return xxx_messageInfo_SignalRejectReq.Size(m)
}
func (m *SignalRejectReq) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalRejectReq.DiscardUnknown(m)
}

var xxx_messageInfo_SignalRejectReq proto.InternalMessageInfo

func (m *SignalRejectReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalRejectReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalRejectReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

func (m *SignalRejectReq) GetParticipant() *ParticipantMetaData {
	if m != nil {
		return m.Participant
	}
	return nil
}

func (m *SignalRejectReq) GetOpUserPlatformID() int32 {
	if m != nil {
		return m.OpUserPlatformID
	}
	return 0
}

type SignalRejectReply struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SignalRejectReply) Reset()         { *m = SignalRejectReply{} }
func (m *SignalRejectReply) String() string { return proto.CompactTextString(m) }
func (*SignalRejectReply) ProtoMessage()    {}
func (*SignalRejectReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{73}
}
func (m *SignalRejectReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalRejectReply.Unmarshal(m, b)
}
func (m *SignalRejectReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalRejectReply.Marshal(b, m, deterministic)
}
func (dst *SignalRejectReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalRejectReply.Merge(dst, src)
}
func (m *SignalRejectReply) XXX_Size() int {
	return xxx_messageInfo_SignalRejectReply.Size(m)
}
func (m *SignalRejectReply) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalRejectReply.DiscardUnknown(m)
}

var xxx_messageInfo_SignalRejectReply proto.InternalMessageInfo

type DelMsgListReq struct {
	OpUserID             string   `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"`
	UserID               string   `protobuf:"bytes,2,opt,name=userID" json:"userID,omitempty"`
	SeqList              []uint32 `protobuf:"varint,3,rep,packed,name=seqList" json:"seqList,omitempty"`
	OperationID          string   `protobuf:"bytes,4,opt,name=operationID" json:"operationID,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DelMsgListReq) Reset()         { *m = DelMsgListReq{} }
func (m *DelMsgListReq) String() string { return proto.CompactTextString(m) }
func (*DelMsgListReq) ProtoMessage()    {}
func (*DelMsgListReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{74}
}
func (m *DelMsgListReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DelMsgListReq.Unmarshal(m, b)
}
func (m *DelMsgListReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DelMsgListReq.Marshal(b, m, deterministic)
}
func (dst *DelMsgListReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DelMsgListReq.Merge(dst, src)
}
func (m *DelMsgListReq) XXX_Size() int {
	return xxx_messageInfo_DelMsgListReq.Size(m)
}
func (m *DelMsgListReq) XXX_DiscardUnknown() {
	xxx_messageInfo_DelMsgListReq.DiscardUnknown(m)
}

var xxx_messageInfo_DelMsgListReq proto.InternalMessageInfo

func (m *DelMsgListReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *DelMsgListReq) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

func (m *DelMsgListReq) GetSeqList() []uint32 {
	if m != nil {
		return m.SeqList
	}
	return nil
}

func (m *DelMsgListReq) GetOperationID() string {
	if m != nil {
		return m.OperationID
	}
	return ""
}

type DelMsgListResp struct {
	ErrCode              int32    `protobuf:"varint,1,opt,name=errCode" json:"errCode,omitempty"`
	ErrMsg               string   `protobuf:"bytes,2,opt,name=errMsg" json:"errMsg,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DelMsgListResp) Reset()         { *m = DelMsgListResp{} }
func (m *DelMsgListResp) String() string { return proto.CompactTextString(m) }
func (*DelMsgListResp) ProtoMessage()    {}
func (*DelMsgListResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_ws_a65b1a9a9ba03d6e, []int{75}
}
func (m *DelMsgListResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DelMsgListResp.Unmarshal(m, b)
}
func (m *DelMsgListResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DelMsgListResp.Marshal(b, m, deterministic)
}
func (dst *DelMsgListResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DelMsgListResp.Merge(dst, src)
}
func (m *DelMsgListResp) XXX_Size() int {
	return xxx_messageInfo_DelMsgListResp.Size(m)
}
func (m *DelMsgListResp) XXX_DiscardUnknown() {
	xxx_messageInfo_DelMsgListResp.DiscardUnknown(m)
}

var xxx_messageInfo_DelMsgListResp proto.InternalMessageInfo

func (m *DelMsgListResp) GetErrCode() int32 {
	if m != nil {
		return m.ErrCode
	}
	return 0
}

func (m *DelMsgListResp) GetErrMsg() string {
	if m != nil {
		return m.ErrMsg
	}
	return ""
}

func init() {
	proto.RegisterType((*GroupInfo)(nil), "server_api_params.GroupInfo")
	proto.RegisterType((*GroupInfoForSet)(nil), "server_api_params.GroupInfoForSet")
	proto.RegisterType((*GroupMemberFullInfo)(nil), "server_api_params.GroupMemberFullInfo")
	proto.RegisterType((*PublicUserInfo)(nil), "server_api_params.PublicUserInfo")
	proto.RegisterType((*UserInfo)(nil), "server_api_params.UserInfo")
	proto.RegisterType((*FriendInfo)(nil), "server_api_params.FriendInfo")
	proto.RegisterType((*BlackInfo)(nil), "server_api_params.BlackInfo")
	proto.RegisterType((*GroupRequest)(nil), "server_api_params.GroupRequest")
	proto.RegisterType((*FriendRequest)(nil), "server_api_params.FriendRequest")
	proto.RegisterType((*Department)(nil), "server_api_params.Department")
	proto.RegisterType((*OrganizationUser)(nil), "server_api_params.OrganizationUser")
	proto.RegisterType((*DepartmentMember)(nil), "server_api_params.DepartmentMember")
	proto.RegisterType((*UserDepartmentMember)(nil), "server_api_params.UserDepartmentMember")
	proto.RegisterType((*UserInDepartment)(nil), "server_api_params.UserInDepartment")
	proto.RegisterType((*PullMessageBySeqListReq)(nil), "server_api_params.PullMessageBySeqListReq")
	proto.RegisterMapType((map[string]*SeqList)(nil), "server_api_params.PullMessageBySeqListReq.GroupSeqListEntry")
	proto.RegisterType((*SeqList)(nil), "server_api_params.seqList")
	proto.RegisterType((*MsgDataList)(nil), "server_api_params.MsgDataList")
	proto.RegisterType((*PullMessageBySeqListResp)(nil), "server_api_params.PullMessageBySeqListResp")
	proto.RegisterMapType((map[string]*MsgDataList)(nil), "server_api_params.PullMessageBySeqListResp.GroupMsgDataListEntry")
	proto.RegisterType((*GetMaxAndMinSeqReq)(nil), "server_api_params.GetMaxAndMinSeqReq")
	proto.RegisterType((*MaxAndMinSeq)(nil), "server_api_params.MaxAndMinSeq")
	proto.RegisterType((*GetMaxAndMinSeqResp)(nil), "server_api_params.GetMaxAndMinSeqResp")
	proto.RegisterMapType((map[string]*MaxAndMinSeq)(nil), "server_api_params.GetMaxAndMinSeqResp.GroupMaxAndMinSeqEntry")
	proto.RegisterType((*UserSendMsgResp)(nil), "server_api_params.UserSendMsgResp")
	proto.RegisterType((*MsgData)(nil), "server_api_params.MsgData")
	proto.RegisterMapType((map[string]bool)(nil), "server_api_params.MsgData.OptionsEntry")
	proto.RegisterType((*OfflinePushInfo)(nil), "server_api_params.OfflinePushInfo")
	proto.RegisterType((*TipsComm)(nil), "server_api_params.TipsComm")
	proto.RegisterType((*GroupCreatedTips)(nil), "server_api_params.GroupCreatedTips")
	proto.RegisterType((*GroupInfoSetTips)(nil), "server_api_params.GroupInfoSetTips")
	proto.RegisterType((*JoinGroupApplicationTips)(nil), "server_api_params.JoinGroupApplicationTips")
	proto.RegisterType((*MemberQuitTips)(nil), "server_api_params.MemberQuitTips")
	proto.RegisterType((*GroupApplicationAcceptedTips)(nil), "server_api_params.GroupApplicationAcceptedTips")
	proto.RegisterType((*GroupApplicationRejectedTips)(nil), "server_api_params.GroupApplicationRejectedTips")
	proto.RegisterType((*GroupOwnerTransferredTips)(nil), "server_api_params.GroupOwnerTransferredTips")
	proto.RegisterType((*MemberKickedTips)(nil), "server_api_params.MemberKickedTips")
	proto.RegisterType((*MemberInvitedTips)(nil), "server_api_params.MemberInvitedTips")
	proto.RegisterType((*MemberEnterTips)(nil), "server_api_params.MemberEnterTips")
	proto.RegisterType((*GroupDismissedTips)(nil), "server_api_params.GroupDismissedTips")
	proto.RegisterType((*GroupMemberMutedTips)(nil), "server_api_params.GroupMemberMutedTips")
	proto.RegisterType((*GroupMemberCancelMutedTips)(nil), "server_api_params.GroupMemberCancelMutedTips")
	proto.RegisterType((*GroupMutedTips)(nil), "server_api_params.GroupMutedTips")
	proto.RegisterType((*GroupCancelMutedTips)(nil), "server_api_params.GroupCancelMutedTips")
	proto.RegisterType((*GroupMemberInfoSetTips)(nil), "server_api_params.GroupMemberInfoSetTips")
	proto.RegisterType((*OrganizationChangedTips)(nil), "server_api_params.OrganizationChangedTips")
	proto.RegisterType((*FriendApplication)(nil), "server_api_params.FriendApplication")
	proto.RegisterType((*FromToUserID)(nil), "server_api_params.FromToUserID")
	proto.RegisterType((*FriendApplicationTips)(nil), "server_api_params.FriendApplicationTips")
	proto.RegisterType((*FriendApplicationApprovedTips)(nil), "server_api_params.FriendApplicationApprovedTips")
	proto.RegisterType((*FriendApplicationRejectedTips)(nil), "server_api_params.FriendApplicationRejectedTips")
	proto.RegisterType((*FriendAddedTips)(nil), "server_api_params.FriendAddedTips")
	proto.RegisterType((*FriendDeletedTips)(nil), "server_api_params.FriendDeletedTips")
	proto.RegisterType((*BlackAddedTips)(nil), "server_api_params.BlackAddedTips")
	proto.RegisterType((*BlackDeletedTips)(nil), "server_api_params.BlackDeletedTips")
	proto.RegisterType((*FriendInfoChangedTips)(nil), "server_api_params.FriendInfoChangedTips")
	proto.RegisterType((*UserInfoUpdatedTips)(nil), "server_api_params.UserInfoUpdatedTips")
	proto.RegisterType((*ConversationUpdateTips)(nil), "server_api_params.ConversationUpdateTips")
	proto.RegisterType((*ConversationSetPrivateTips)(nil), "server_api_params.ConversationSetPrivateTips")
	proto.RegisterType((*DeleteMessageTips)(nil), "server_api_params.DeleteMessageTips")
	proto.RegisterType((*RequestPagination)(nil), "server_api_params.RequestPagination")
	proto.RegisterType((*ResponsePagination)(nil), "server_api_params.ResponsePagination")
	proto.RegisterType((*SignalReq)(nil), "server_api_params.SignalReq")
	proto.RegisterType((*SignalResp)(nil), "server_api_params.SignalResp")
	proto.RegisterType((*InvitationInfo)(nil), "server_api_params.InvitationInfo")
	proto.RegisterType((*ParticipantMetaData)(nil), "server_api_params.ParticipantMetaData")
	proto.RegisterType((*SignalInviteReq)(nil), "server_api_params.SignalInviteReq")
	proto.RegisterType((*SignalInviteReply)(nil), "server_api_params.SignalInviteReply")
	proto.RegisterType((*SignalInviteInGroupReq)(nil), "server_api_params.SignalInviteInGroupReq")
	proto.RegisterType((*SignalInviteInGroupReply)(nil), "server_api_params.SignalInviteInGroupReply")
	proto.RegisterType((*SignalCancelReq)(nil), "server_api_params.SignalCancelReq")
	proto.RegisterType((*SignalCancelReply)(nil), "server_api_params.SignalCancelReply")
	proto.RegisterType((*SignalAcceptReq)(nil), "server_api_params.SignalAcceptReq")
	proto.RegisterType((*SignalAcceptReply)(nil), "server_api_params.SignalAcceptReply")
	proto.RegisterType((*SignalHungUpReq)(nil), "server_api_params.SignalHungUpReq")
	proto.RegisterType((*SignalHungUpReply)(nil), "server_api_params.SignalHungUpReply")
	proto.RegisterType((*SignalRejectReq)(nil), "server_api_params.SignalRejectReq")
	proto.RegisterType((*SignalRejectReply)(nil), "server_api_params.SignalRejectReply")
	proto.RegisterType((*DelMsgListReq)(nil), "server_api_params.DelMsgListReq")
	proto.RegisterType((*DelMsgListResp)(nil), "server_api_params.DelMsgListResp")
}

func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_a65b1a9a9ba03d6e) }

var fileDescriptor_ws_a65b1a9a9ba03d6e = []byte{
	// 3387 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0xcf, 0x6f, 0x24, 0x47,
	0xf5, 0xff, 0x76, 0x8f, 0x67, 0xec, 0x79, 0xe3, 0xb1, 0xc7, 0xbd, 0x1b, 0x67, 0xbe, 0x66, 0xb3,
	0x98, 0xce, 0x2a, 0x09, 0x0b, 0x78, 0xa3, 0x0d, 0x91, 0x20, 0x3f, 0x16, 0xf9, 0x47, 0xbc, 0xbb,
	0xc9, 0x8e, 0xed, 0xf4, 0xec, 0x26, 0x88, 0x20, 0x2d, 0xed, 0xe9, 0xf2, 0xb8, 0xe3, 0x9e, 0xae,
	0x76, 0xff, 0xf0, 0xee, 0x72, 0x41, 0x0a, 0x08, 0x71, 0xe3, 0xc4, 0x85, 0x0b, 0x82, 0x0b, 0x02,
	0x45, 0x11, 0x42, 0x20, 0x71, 0x40, 0x08, 0x21, 0x6e, 0x5c, 0x40, 0xe2, 0x82, 0xb8, 0x71, 0xe6,
	0x1f, 0x40, 0x42, 0x02, 0xd5, 0xab, 0xea, 0xee, 0xaa, 0xee, 0x1e, 0x7b, 0xd6, 0xb2, 0xb2, 0x1b,
	0x2d, 0xb7, 0x79, 0xaf, 0xeb, 0xbd, 0x7a, 0xf5, 0xde, 0xa7, 0xea, 0xbd, 0xfa, 0x31, 0x30, 0x1f,
	0x39, 0x07, 0x77, 0xef, 0x45, 0x57, 0xee, 0x45, 0x2b, 0x41, 0x48, 0x63, 0x6a, 0x2c, 0x44, 0x24,
	0x3c, 0x22, 0xe1, 0x5d, 0x3b, 0x70, 0xef, 0x06, 0x76, 0x68, 0x8f, 0xa2, 0xa5, 0xe7, 0xb7, 0x03,
	0xe2, 0xdf, 0xbd, 0xd9, 0xbb, 0x12, 0x1c, 0x0c, 0xaf, 0x60, 0xab, 0x2b, 0xa9, 0x54, 0x68, 0x07,
	0x01, 0x09, 0x85, 0xac, 0xf9, 0xe3, 0x1a, 0x34, 0xaf, 0x87, 0x34, 0x09, 0x6e, 0xfa, 0x7b, 0xd4,
	0xe8, 0xc2, 0xf4, 0x10, 0x89, 0x8d, 0xae, 0xb6, 0xac, 0xbd, 0xd0, 0xb4, 0x52, 0xd2, 0xb8, 0x00,
	0x4d, 0xfc, 0xb9, 0x65, 0x8f, 0x48, 0x57, 0xc7, 0x6f, 0x39, 0xc3, 0x30, 0x61, 0xd6, 0xa7, 0xb1,
	0xbb, 0xe7, 0x0e, 0xec, 0xd8, 0xa5, 0x7e, 0xb7, 0x86, 0x0d, 0x14, 0x1e, 0x6b, 0xe3, 0xfa, 0x71,
	0x48, 0x9d, 0x64, 0x80, 0x6d, 0xa6, 0x78, 0x1b, 0x99, 0xc7, 0xfa, 0xdf, 0xb3, 0x07, 0xe4, 0x8e,
	0x75, 0xab, 0x5b, 0xe7, 0xfd, 0x0b, 0xd2, 0x58, 0x86, 0x16, 0xbd, 0xe7, 0x93, 0xf0, 0x4e, 0x44,
	0xc2, 0x9b, 0x1b, 0xdd, 0x06, 0x7e, 0x95, 0x59, 0xc6, 0x45, 0x80, 0x41, 0x48, 0xec, 0x98, 0xdc,
	0x76, 0x47, 0xa4, 0x3b, 0xbd, 0xac, 0xbd, 0xd0, 0xb6, 0x24, 0x0e, 0xd3, 0x30, 0x22, 0xa3, 0x5d,
	0x12, 0xae, 0xd3, 0xc4, 0x8f, 0xbb, 0x33, 0xd8, 0x40, 0x66, 0x19, 0x73, 0xa0, 0x93, 0xfb, 0xdd,
	0x26, 0xaa, 0xd6, 0xc9, 0x7d, 0x63, 0x11, 0x1a, 0x51, 0x6c, 0xc7, 0x49, 0xd4, 0x85, 0x65, 0xed,
	0x85, 0xba, 0x25, 0x28, 0xe3, 0x12, 0xb4, 0x51, 0x2f, 0x4d, 0xad, 0x69, 0xa1, 0x88, 0xca, 0xcc,
	0x3c, 0x76, 0xfb, 0x41, 0x40, 0xba, 0xb3, 0xa8, 0x20, 0x67, 0x18, 0x97, 0xa1, 0xe3, 0x13, 0xe2,
	0xbc, 0x43, 0xc2, 0xdc, 0x6b, 0x6d, 0x6c, 0x54, 0xe2, 0x9b, 0xdf, 0xd1, 0x61, 0x3e, 0x8b, 0xd1,
	0x26, 0x0d, 0xfb, 0x24, 0x7e, 0x8c, 0x23, 0xc5, 0xbd, 0xd8, 0xc8, 0xbc, 0x78, 0xbd, 0x62, 0xa4,
	0x2c, 0x3a, 0xad, 0xab, 0x9f, 0x5a, 0x19, 0x52, 0x3a, 0xf4, 0x08, 0x87, 0xe2, 0x6e, 0xb2, 0xb7,
	0x72, 0xd3, 0x8f, 0x5f, 0xba, 0xfa, 0x8e, 0xed, 0x25, 0xa4, 0xc2, 0x0d, 0x7f, 0xd3, 0xe1, 0x1c,
	0xba, 0xa1, 0x87, 0x31, 0xdb, 0x4c, 0x3c, 0xef, 0x04, 0xd0, 0x2e, 0x42, 0x23, 0xe1, 0x11, 0xe2,
	0x7e, 0x10, 0x14, 0x73, 0x51, 0x48, 0x3d, 0x72, 0x8b, 0x1c, 0x11, 0x0f, 0x3d, 0x50, 0xb7, 0x72,
	0x86, 0xb1, 0x04, 0x33, 0xef, 0x53, 0xd7, 0x47, 0x18, 0x4d, 0xe1, 0xc7, 0x8c, 0x66, 0xdf, 0x7c,
	0x77, 0x70, 0xe0, 0x33, 0xdf, 0xf2, 0x71, 0x67, 0xb4, 0xec, 0x92, 0x86, 0xea, 0x92, 0xe7, 0x60,
	0xce, 0x0e, 0x82, 0x9e, 0xed, 0x0f, 0x49, 0xc8, 0x3b, 0x9d, 0x46, 0xbd, 0x05, 0x2e, 0x83, 0x30,
	0xeb, 0xa9, 0x4f, 0x93, 0x70, 0x40, 0x10, 0xa1, 0x75, 0x4b, 0xe2, 0x30, 0x3d, 0x34, 0x20, 0xa1,
	0x84, 0x3c, 0x0e, 0xd6, 0x02, 0x57, 0x84, 0x00, 0xb2, 0x10, 0x30, 0xe8, 0x27, 0x31, 0x79, 0xc3,
	0x77, 0x70, 0x50, 0x2d, 0x01, 0xfd, 0x9c, 0x65, 0x7e, 0x57, 0x83, 0xb9, 0x9d, 0x64, 0xd7, 0x73,
	0x07, 0xa8, 0x82, 0xb9, 0x35, 0x77, 0x9e, 0xa6, 0x38, 0x4f, 0x76, 0x81, 0x3e, 0xde, 0x05, 0x35,
	0xd5, 0x05, 0x8b, 0xd0, 0x18, 0x12, 0xdf, 0x21, 0xa1, 0x70, 0xa9, 0xa0, 0x84, 0xa9, 0xf5, 0xd4,
	0x54, 0xf3, 0x0f, 0x3a, 0xcc, 0x7c, 0xcc, 0x26, 0x2c, 0x43, 0x2b, 0xd8, 0xa7, 0x3e, 0xd9, 0x4a,
	0x18, 0xac, 0x84, 0x2d, 0x32, 0xcb, 0x38, 0x0f, 0xf5, 0x5d, 0x37, 0x8c, 0xf7, 0x31, 0xae, 0x6d,
	0x8b, 0x13, 0x8c, 0x4b, 0x46, 0xb6, 0xcb, 0x83, 0xd9, 0xb4, 0x38, 0x21, 0x06, 0x34, 0x93, 0xf9,
	0x5e, 0x5d, 0x96, 0x9a, 0xa5, 0x65, 0xa9, 0x8c, 0x0d, 0xa8, 0xc4, 0xc6, 0x65, 0xe8, 0x0c, 0x3d,
	0xba, 0x6b, 0x7b, 0x16, 0x19, 0x1c, 0xf5, 0xa2, 0xe1, 0x76, 0x10, 0x63, 0x20, 0xeb, 0x56, 0x89,
	0x6f, 0xfe, 0x4b, 0x03, 0xd8, 0x0c, 0x5d, 0xe2, 0x3b, 0xe8, 0xc6, 0xc2, 0xda, 0xa9, 0x95, 0xd7,
	0xce, 0x45, 0x68, 0x84, 0x64, 0x64, 0x87, 0x07, 0xe9, 0x44, 0xe1, 0x54, 0xc1, 0xf8, 0x5a, 0xc9,
	0xf8, 0x57, 0x01, 0xf6, 0xb0, 0x1f, 0xa6, 0x07, 0xdd, 0xca, 0x66, 0x75, 0x29, 0x1d, 0xad, 0xa4,
	0x11, 0xb5, 0xa4, 0xe6, 0x6c, 0x16, 0xda, 0x8e, 0x23, 0xc0, 0x5e, 0xe7, 0xb3, 0x30, 0x63, 0x54,
	0x60, 0xbd, 0x71, 0x0c, 0xd6, 0xa7, 0x33, 0x00, 0xfd, 0x53, 0x83, 0xe6, 0x9a, 0x67, 0x0f, 0x0e,
	0x26, 0x1c, 0xba, 0x3a, 0x44, 0xbd, 0x34, 0xc4, 0xeb, 0xd0, 0xde, 0x65, 0xea, 0xd2, 0x21, 0xa0,
	0x17, 0x5a, 0x57, 0x3f, 0x53, 0x31, 0x4a, 0x75, 0x02, 0x59, 0xaa, 0x9c, 0x3a, 0xdc, 0xa9, 0x93,
	0x87, 0x5b, 0x3f, 0x66, 0xb8, 0xd9, 0xea, 0x6a, 0xfe, 0x45, 0x87, 0x59, 0x5c, 0x14, 0x2d, 0x72,
	0x98, 0x90, 0x28, 0x36, 0x5e, 0x87, 0x99, 0x24, 0x35, 0x55, 0x9b, 0xd4, 0xd4, 0x4c, 0xc4, 0x78,
	0x45, 0x64, 0x0f, 0x94, 0xd7, 0x51, 0xfe, 0x42, 0x85, 0x7c, 0x96, 0x8e, 0xac, 0xbc, 0x39, 0xcb,
	0x1b, 0xfb, 0xb6, 0xef, 0x78, 0xc4, 0x22, 0x51, 0xe2, 0xc5, 0x62, 0x65, 0x55, 0x78, 0x1c, 0x69,
	0x87, 0xbd, 0x68, 0x28, 0xb2, 0x8a, 0xa0, 0x98, 0x77, 0x78, 0x3b, 0xf6, 0x89, 0x0f, 0x3d, 0x67,
	0xb0, 0x49, 0x1d, 0x92, 0x43, 0x8c, 0x10, 0x9f, 0x82, 0x29, 0x99, 0xf7, 0x29, 0xbc, 0xc6, 0x81,
	0xa0, 0xf0, 0x58, 0x88, 0x39, 0x8d, 0x0a, 0x78, 0xe2, 0x97, 0x38, 0xc5, 0xbc, 0x6f, 0xfe, 0xbd,
	0x06, 0x6d, 0x3e, 0x7d, 0x52, 0xa7, 0x5e, 0x64, 0x38, 0xa7, 0x23, 0x05, 0x45, 0x12, 0x87, 0x59,
	0xc1, 0xa8, 0x2d, 0x75, 0x51, 0x52, 0x78, 0x0c, 0x8a, 0x8c, 0xde, 0x54, 0x16, 0x27, 0x99, 0x95,
	0xf6, 0x72, 0x5d, 0x5e, 0xa4, 0x24, 0x0e, 0x5b, 0xf6, 0x62, 0xaa, 0xa0, 0x23, 0xa3, 0x99, 0x6c,
	0x4c, 0xb3, 0xfe, 0x39, 0x3e, 0x24, 0x0e, 0xf3, 0x6f, 0x4c, 0xd3, 0xbe, 0xb9, 0x93, 0x72, 0x06,
	0xd7, 0x2c, 0xfa, 0xe5, 0x69, 0x27, 0xa3, 0x4b, 0x51, 0x6d, 0x1e, 0x1b, 0x55, 0x50, 0xa2, 0xaa,
	0x4e, 0xae, 0x56, 0x69, 0x72, 0x5d, 0x82, 0x36, 0xd7, 0x93, 0x82, 0x7e, 0x96, 0x57, 0x52, 0x0a,
	0x53, 0xc5, 0x46, 0xbb, 0x88, 0x0d, 0x35, 0xba, 0x73, 0x63, 0xa2, 0x3b, 0x9f, 0x45, 0xf7, 0x97,
	0x3a, 0xc0, 0x06, 0x09, 0xec, 0x30, 0x1e, 0x11, 0x3f, 0x66, 0xc3, 0x73, 0x32, 0x2a, 0x0b, 0xae,
	0xc2, 0x93, 0x73, 0x8a, 0xae, 0xe6, 0x14, 0x03, 0xa6, 0xd0, 0xe1, 0x3c, 0x9a, 0xf8, 0x9b, 0x39,
	0x33, 0xb0, 0x43, 0xae, 0x8d, 0x83, 0x3c, 0xa3, 0x59, 0xce, 0xa0, 0xa1, 0x23, 0xb2, 0x4c, 0xdd,
	0xe2, 0x04, 0x9b, 0xfc, 0x79, 0x7f, 0x58, 0x2f, 0x36, 0x78, 0x0e, 0x50, 0xb9, 0x27, 0x96, 0xb8,
	0x97, 0xa1, 0x13, 0x25, 0xbb, 0xf9, 0xe0, 0xb6, 0x92, 0x91, 0x80, 0x7b, 0x89, 0xcf, 0x9c, 0xca,
	0x6b, 0x5f, 0xd6, 0x88, 0xa7, 0xa5, 0x9c, 0x51, 0xac, 0x20, 0xcc, 0x0f, 0x75, 0xe8, 0x6c, 0x87,
	0x43, 0xdb, 0x77, 0xbf, 0x89, 0xc5, 0x18, 0x2e, 0xe0, 0xa7, 0x49, 0xcf, 0xcb, 0xd0, 0x22, 0xfe,
	0xd0, 0x73, 0xa3, 0xfd, 0xad, 0xdc, 0x6f, 0x32, 0x4b, 0x76, 0xf6, 0xd4, 0xb8, 0x04, 0x5e, 0x57,
	0x12, 0xf8, 0x22, 0x34, 0x46, 0x74, 0xd7, 0xf5, 0x52, 0xdc, 0x0b, 0x0a, 0x31, 0x4f, 0x3c, 0x82,
	0x99, 0x3c, 0xc3, 0x7c, 0xca, 0xc8, 0x93, 0xfa, 0x4c, 0x65, 0x52, 0x6f, 0xca, 0x49, 0x5d, 0x75,
	0x3c, 0x94, 0x1c, 0xcf, 0xdd, 0xd5, 0xca, 0xdc, 0xf5, 0x7b, 0x0d, 0x3a, 0xb9, 0xbb, 0x79, 0xbd,
	0x3a, 0xd6, 0x5d, 0x45, 0x04, 0xea, 0x15, 0x08, 0xcc, 0x70, 0x53, 0x93, 0x71, 0xc3, 0x90, 0x46,
	0x23, 0x57, 0x2a, 0xd2, 0x33, 0x9a, 0xf5, 0xe6, 0x11, 0x5b, 0x72, 0x16, 0xa7, 0xa4, 0x4d, 0x4d,
	0x43, 0xd9, 0xd4, 0x14, 0xf3, 0xe8, 0x6f, 0x34, 0x38, 0xcf, 0xa2, 0x5c, 0x1a, 0xc6, 0x36, 0x74,
	0x68, 0x01, 0x09, 0x22, 0xd1, 0x3c, 0x5b, 0x91, 0x28, 0x8a, 0xa0, 0xb1, 0x4a, 0xc2, 0x4c, 0xa1,
	0x53, 0xe8, 0x44, 0x64, 0x9e, 0x2a, 0x85, 0x45, 0x7b, 0xac, 0x92, 0xb0, 0xf9, 0x5b, 0x0d, 0x3a,
	0x3c, 0xb5, 0x49, 0xf3, 0xfc, 0xcc, 0xcd, 0x7e, 0x17, 0xce, 0x17, 0x7b, 0xbe, 0xe5, 0x46, 0x71,
	0x57, 0x5f, 0xae, 0x4d, 0x6a, 0x7a, 0xa5, 0x02, 0x36, 0xd7, 0x9e, 0xde, 0x49, 0x3c, 0xaf, 0x47,
	0xa2, 0xc8, 0x1e, 0x92, 0xb5, 0x07, 0x7d, 0x72, 0xc8, 0x3e, 0x58, 0xe4, 0x70, 0x2c, 0x86, 0x58,
	0x9d, 0x83, 0x85, 0x82, 0x4b, 0xfd, 0x0c, 0x42, 0x32, 0x8b, 0x4d, 0xab, 0x88, 0xeb, 0xe9, 0xd6,
	0x96, 0x6b, 0x2c, 0x85, 0x0a, 0xd2, 0xf8, 0x06, 0xcc, 0x62, 0x0e, 0x17, 0xdd, 0x74, 0xa7, 0x70,
	0x00, 0xaf, 0x55, 0x56, 0x0d, 0x95, 0x56, 0xf1, 0x6a, 0x40, 0xd0, 0x6f, 0xf8, 0x71, 0xf8, 0xc0,
	0x52, 0x34, 0x2e, 0xbd, 0x07, 0x0b, 0xa5, 0x26, 0x46, 0x07, 0x6a, 0x07, 0xe4, 0x81, 0x18, 0x07,
	0xfb, 0x69, 0xbc, 0x08, 0xf5, 0x23, 0xb6, 0xf7, 0x13, 0xd1, 0x5f, 0xaa, 0xb0, 0x40, 0xd8, 0x6c,
	0xf1, 0x86, 0xaf, 0xe8, 0x5f, 0xd2, 0xcc, 0x67, 0xb3, 0x81, 0xc9, 0x63, 0xd4, 0x94, 0x31, 0x9a,
	0x6f, 0x41, 0xab, 0x17, 0x0d, 0x37, 0xec, 0xd8, 0xc6, 0x86, 0xaf, 0x41, 0x6b, 0x94, 0x93, 0xd8,
	0xb8, 0xba, 0x3f, 0x21, 0x64, 0xc9, 0xcd, 0xcd, 0x3f, 0xeb, 0xd0, 0xad, 0x76, 0x45, 0x14, 0x30,
	0x1b, 0x48, 0x18, 0xae, 0x53, 0x87, 0xe0, 0xd0, 0xea, 0x56, 0x4a, 0xb2, 0xd8, 0x91, 0x30, 0x64,
	0x39, 0x4c, 0x14, 0xd9, 0x9c, 0x32, 0x56, 0x60, 0xca, 0x4b, 0xc3, 0x72, 0xbc, 0x15, 0xd8, 0xce,
	0x18, 0x41, 0x07, 0xbd, 0x2b, 0x0d, 0x48, 0xc4, 0x6c, 0x75, 0xe2, 0x98, 0x45, 0x01, 0x0f, 0x9a,
	0xa4, 0x83, 0x07, 0xae, 0xa4, 0x7a, 0x69, 0x00, 0x4f, 0x55, 0x36, 0xad, 0x08, 0xe0, 0x17, 0xd5,
	0x00, 0x5e, 0x1c, 0x3f, 0x94, 0x62, 0x10, 0x03, 0x30, 0xae, 0x93, 0xb8, 0x67, 0xdf, 0x5f, 0xf5,
	0x9d, 0x9e, 0xeb, 0xf7, 0xc9, 0x21, 0x43, 0xfb, 0x32, 0xb4, 0xc4, 0x56, 0x3e, 0x0b, 0x53, 0xd3,
	0x92, 0x59, 0x63, 0x77, 0xf8, 0x85, 0xf9, 0x50, 0x2b, 0xcd, 0x07, 0xf3, 0x1a, 0xcc, 0xca, 0xdd,
	0x61, 0x12, 0xb1, 0xef, 0xf7, 0xc9, 0x21, 0x0e, 0xa8, 0x6d, 0x09, 0x0a, 0xf9, 0xd8, 0x42, 0xec,
	0x0d, 0x04, 0x65, 0xfe, 0x49, 0x87, 0x73, 0x25, 0x93, 0xa3, 0xe0, 0x61, 0xf5, 0xc8, 0x78, 0xa9,
	0x8d, 0xc3, 0xcb, 0x94, 0x82, 0x97, 0x03, 0x58, 0xe0, 0x41, 0x92, 0xba, 0xee, 0xd6, 0x11, 0x00,
	0xaf, 0x57, 0x95, 0xea, 0x65, 0x23, 0x45, 0xec, 0x25, 0x2e, 0x0f, 0x7e, 0x59, 0xef, 0x12, 0x81,
	0xc5, 0xea, 0xc6, 0x15, 0xe1, 0x7f, 0x59, 0x0d, 0xff, 0xa7, 0xab, 0xc2, 0x2f, 0x5b, 0x22, 0xc5,
	0xff, 0x10, 0xe6, 0xd9, 0xa2, 0xda, 0x27, 0xbe, 0xd3, 0x8b, 0x86, 0xe8, 0xc8, 0x65, 0x68, 0x71,
	0xf9, 0x5e, 0x34, 0xcc, 0xb7, 0x6e, 0x12, 0x8b, 0xb5, 0x18, 0x78, 0x2e, 0x5b, 0x3c, 0xb1, 0x85,
	0x58, 0xf4, 0x24, 0x16, 0x4b, 0x90, 0x11, 0x11, 0xa7, 0x1e, 0xcc, 0xbb, 0x35, 0x2b, 0xa3, 0xcd,
	0x0f, 0x1a, 0x30, 0x2d, 0xd0, 0x88, 0x49, 0x91, 0xed, 0x96, 0xb3, 0x65, 0x95, 0x53, 0xbc, 0xae,
	0x1d, 0x1c, 0xe5, 0xf0, 0xe2, 0x94, 0x7c, 0xe4, 0x54, 0x53, 0x8f, 0x9c, 0x0a, 0x36, 0x4d, 0x95,
	0x6d, 0x2a, 0x8c, 0xab, 0x5e, 0x1e, 0x17, 0x2b, 0xe3, 0xb0, 0xb2, 0xd9, 0xf1, 0xec, 0x78, 0x8f,
	0x86, 0x23, 0xb1, 0xf9, 0xad, 0x5b, 0x25, 0x3e, 0x2b, 0x1d, 0x39, 0x2f, 0xab, 0xfd, 0x79, 0x0a,
	0x2f, 0x70, 0x59, 0xa5, 0xcd, 0x39, 0xe9, 0x1e, 0x80, 0x9f, 0x50, 0xa8, 0x4c, 0x6e, 0x5b, 0x14,
	0xb9, 0xd4, 0xc7, 0x2a, 0x94, 0x97, 0xfa, 0x32, 0x8b, 0x8d, 0x7c, 0x14, 0x0d, 0x37, 0x43, 0x3a,
	0x12, 0xe7, 0x14, 0x29, 0x89, 0x23, 0xa7, 0x7e, 0x9c, 0x56, 0xb0, 0xfc, 0x6c, 0x42, 0x66, 0x31,
	0x59, 0x41, 0x62, 0x9d, 0x3f, 0x6b, 0xa5, 0x24, 0xc3, 0x52, 0x44, 0x0e, 0x45, 0xf1, 0xce, 0x7e,
	0x2a, 0x91, 0x9b, 0x57, 0x23, 0x57, 0xa8, 0xc6, 0x3a, 0xf8, 0x55, 0xae, 0xc6, 0xf2, 0x12, 0x67,
	0x41, 0x29, 0x71, 0x56, 0x61, 0x9a, 0x06, 0x6c, 0xfa, 0x47, 0x5d, 0x03, 0xa7, 0xcb, 0xf3, 0xe3,
	0x17, 0xa8, 0x95, 0x6d, 0xde, 0x92, 0x4f, 0x8c, 0x54, 0xce, 0xb8, 0x05, 0xf3, 0x74, 0x6f, 0xcf,
	0x73, 0x7d, 0xb2, 0x93, 0x44, 0xfb, 0xb8, 0x49, 0x3e, 0x87, 0x60, 0x37, 0xab, 0x8a, 0x08, 0xb5,
	0xa5, 0x55, 0x14, 0x65, 0x95, 0x9f, 0x1d, 0xf3, 0x4d, 0x0e, 0x2e, 0x70, 0xe7, 0x71, 0x81, 0x53,
	0x78, 0x78, 0x76, 0x27, 0x2d, 0xf4, 0x4f, 0xa1, 0xe3, 0x64, 0xd6, 0xd2, 0x2b, 0x30, 0x2b, 0x1b,
	0x5b, 0x31, 0x31, 0xcf, 0xcb, 0x13, 0x73, 0x46, 0x9e, 0x77, 0x3f, 0xd0, 0x60, 0xbe, 0x60, 0x26,
	0x6b, 0x1d, 0xbb, 0xb1, 0x47, 0x84, 0x06, 0x4e, 0xb0, 0x9d, 0x8e, 0x43, 0xa2, 0x81, 0x98, 0x08,
	0xf8, 0x5b, 0xd4, 0x8c, 0xb5, 0xec, 0xac, 0xcb, 0x84, 0x59, 0x77, 0xbb, 0xcf, 0x14, 0xf5, 0x69,
	0xe2, 0x3b, 0xd9, 0xc1, 0xb1, 0xc4, 0x63, 0x40, 0x74, 0xb7, 0xfb, 0x6b, 0xb6, 0x33, 0x24, 0xfc,
	0x20, 0xbe, 0x8e, 0x36, 0xa9, 0x4c, 0xd3, 0x81, 0x99, 0xdb, 0x6e, 0x10, 0xad, 0xd3, 0xd1, 0x88,
	0x85, 0xd3, 0x21, 0x31, 0xab, 0xc9, 0x35, 0x1c, 0xbc, 0xa0, 0x98, 0x67, 0x1c, 0xb2, 0x67, 0x27,
	0x5e, 0xcc, 0x9a, 0xa6, 0xd3, 0x5f, 0x62, 0xe1, 0x79, 0x6a, 0x44, 0xfd, 0x0d, 0x2e, 0xcd, 0xed,
	0x94, 0x38, 0xe6, 0x1f, 0x75, 0xe8, 0xe0, 0xea, 0xb6, 0x8e, 0xe0, 0x71, 0x50, 0xe8, 0x2a, 0xd4,
	0x71, 0x32, 0x8b, 0xea, 0xf0, 0xf8, 0xd3, 0x0f, 0xde, 0xd4, 0xb8, 0x06, 0x0d, 0x1a, 0x60, 0x49,
	0xc9, 0x97, 0xbe, 0xe7, 0xc6, 0x09, 0xa9, 0x47, 0xd7, 0x96, 0x90, 0x32, 0x36, 0x01, 0x46, 0x79,
	0x05, 0xc9, 0x0b, 0x81, 0x49, 0x75, 0x48, 0x92, 0xcc, 0xb9, 0x59, 0x8e, 0xcb, 0xce, 0xaf, 0x6b,
	0x96, 0xca, 0x34, 0xb6, 0x60, 0x0e, 0xcd, 0xde, 0x4e, 0x8f, 0xc1, 0x30, 0x06, 0x93, 0xf7, 0x58,
	0x90, 0x36, 0x7f, 0xa2, 0x09, 0x37, 0xb2, 0xaf, 0x7d, 0xc2, 0x7d, 0x9f, 0xbb, 0x44, 0x3b, 0x95,
	0x4b, 0x96, 0x60, 0x66, 0x94, 0x48, 0xa7, 0x72, 0x35, 0x2b, 0xa3, 0xf3, 0x10, 0xd5, 0x26, 0x0e,
	0x91, 0xf9, 0x53, 0x0d, 0xba, 0x6f, 0x52, 0xd7, 0xc7, 0x0f, 0xab, 0x41, 0xe0, 0x89, 0x6b, 0x85,
	0x53, 0xc7, 0xfc, 0x2b, 0xd0, 0xb4, 0xb9, 0x1a, 0x3f, 0x16, 0x61, 0x9f, 0xe0, 0xa4, 0x2d, 0x97,
	0x91, 0x0e, 0x4d, 0x6a, 0xf2, 0xa1, 0x89, 0xf9, 0x91, 0x06, 0x73, 0xdc, 0x29, 0x6f, 0x27, 0x6e,
	0x7c, 0x6a, 0xfb, 0xd6, 0x60, 0xe6, 0x30, 0x71, 0xe3, 0x53, 0xa0, 0x32, 0x93, 0x2b, 0xe3, 0xa9,
	0x56, 0x81, 0x27, 0xf3, 0x17, 0x1a, 0x5c, 0x28, 0xba, 0x75, 0x75, 0x30, 0x20, 0xc1, 0xa3, 0x9c,
	0x52, 0xca, 0xa1, 0xd1, 0x54, 0xe1, 0xd0, 0xa8, 0xd2, 0x64, 0x8b, 0xbc, 0x4f, 0x06, 0x8f, 0xaf,
	0xc9, 0xdf, 0xd6, 0xe1, 0xff, 0xaf, 0x67, 0x13, 0xef, 0x76, 0x68, 0xfb, 0xd1, 0x1e, 0x09, 0xc3,
	0x47, 0x68, 0xef, 0x2d, 0x68, 0xfb, 0xe4, 0x5e, 0x6e, 0x93, 0x98, 0x8e, 0x93, 0xaa, 0x51, 0x85,
	0x27, 0x5b, 0xbb, 0xcc, 0x7f, 0x6b, 0xd0, 0xe1, 0x7a, 0xde, 0x72, 0x07, 0x07, 0x8f, 0x70, 0xf0,
	0x5b, 0x30, 0x77, 0x80, 0x16, 0x30, 0xea, 0x14, 0xcb, 0x76, 0x41, 0x7a, 0xc2, 0xe1, 0xff, 0x47,
	0x83, 0x05, 0xae, 0xe8, 0xa6, 0x7f, 0xe4, 0x3e, 0x4a, 0xb0, 0xee, 0xc0, 0xbc, 0xcb, 0x4d, 0x38,
	0xa5, 0x03, 0x8a, 0xe2, 0x13, 0x7a, 0xe0, 0xd7, 0x1a, 0xcc, 0x73, 0x4d, 0x6f, 0xf8, 0x31, 0x09,
	0x4f, 0x3d, 0xfe, 0x1b, 0xd0, 0x22, 0x7e, 0x1c, 0xda, 0xfe, 0x69, 0x56, 0x48, 0x59, 0x74, 0xc2,
	0x45, 0xf2, 0x23, 0x0d, 0x0c, 0x54, 0xb5, 0xe1, 0x46, 0x23, 0x37, 0x8a, 0x1e, 0x61, 0xe8, 0x26,
	0x33, 0xf8, 0x87, 0x3a, 0x9c, 0x97, 0xb4, 0xf4, 0x92, 0xf8, 0x71, 0x37, 0xd9, 0xd8, 0x80, 0x26,
	0xab, 0x11, 0xe4, 0xdb, 0xc8, 0x49, 0x3b, 0xca, 0x05, 0x59, 0x15, 0x8b, 0x44, 0x9f, 0x0c, 0xa8,
	0xef, 0x44, 0x58, 0x1c, 0xb5, 0x2d, 0x85, 0xc7, 0x96, 0xa1, 0x25, 0x49, 0xcd, 0xba, 0xed, 0x0f,
	0x88, 0xf7, 0xc4, 0xb8, 0xc8, 0xfc, 0xb9, 0x06, 0x73, 0xbc, 0xc9, 0xe3, 0x3f, 0x64, 0x96, 0xeb,
	0x39, 0x90, 0x3f, 0x31, 0x51, 0x62, 0xf0, 0x5a, 0x94, 0xb4, 0xc8, 0x75, 0xf5, 0xe3, 0x0b, 0xad,
	0x1b, 0xd0, 0x1a, 0xec, 0xdb, 0xfe, 0xf0, 0x54, 0xe0, 0x92, 0x45, 0xcd, 0x18, 0x9e, 0x96, 0x0f,
	0xe0, 0xd7, 0xf9, 0x27, 0x1c, 0xfe, 0x4b, 0x85, 0xa1, 0x1c, 0xfb, 0xda, 0xe0, 0xe1, 0x9c, 0x7e,
	0x00, 0x0b, 0xfc, 0xd6, 0x57, 0xaa, 0x09, 0x8d, 0x2e, 0x4c, 0xdb, 0x0e, 0x3f, 0x86, 0xd0, 0x50,
	0x28, 0x25, 0xd5, 0xfb, 0x7c, 0xf1, 0xce, 0x2a, 0xbf, 0xcf, 0xbf, 0x08, 0x60, 0x3b, 0xce, 0xbb,
	0x34, 0x74, 0x5c, 0x3f, 0x2d, 0xf0, 0x25, 0x8e, 0xf9, 0x26, 0xcc, 0x6e, 0x86, 0x74, 0x74, 0x5b,
	0xba, 0xbf, 0x3d, 0xf6, 0x86, 0x59, 0xbe, 0xfb, 0xd5, 0xd5, 0xbb, 0x5f, 0xf3, 0xeb, 0xf0, 0x54,
	0xc9, 0x70, 0x74, 0xd6, 0x3a, 0xbf, 0x96, 0x4e, 0x3b, 0x11, 0x90, 0xa9, 0x3a, 0x97, 0x93, 0x6d,
	0xb1, 0x14, 0x21, 0xf3, 0x03, 0x0d, 0x9e, 0x29, 0xa9, 0x5f, 0x0d, 0x82, 0x90, 0x1e, 0x89, 0x98,
	0x9c, 0x45, 0x37, 0x6a, 0xf1, 0xab, 0x17, 0x8b, 0xdf, 0x4a, 0x23, 0x94, 0x82, 0xfd, 0x63, 0x30,
	0xe2, 0x67, 0x1a, 0xcc, 0x0b, 0x23, 0x1c, 0x47, 0x74, 0xfb, 0x32, 0x34, 0xf8, 0x93, 0x16, 0xd1,
	0xe1, 0x33, 0x95, 0x1d, 0xa6, 0x4f, 0x71, 0x2c, 0xd1, 0xb8, 0x8c, 0x48, 0xbd, 0x6a, 0x46, 0x7d,
	0x39, 0x03, 0xfb, 0xc4, 0x8f, 0x4e, 0x84, 0x80, 0xf9, 0xd5, 0x14, 0xcc, 0x1b, 0xc4, 0x23, 0x67,
	0xe9, 0x23, 0xf3, 0x0e, 0xcc, 0xe1, 0xfb, 0x9a, 0xdc, 0x07, 0x67, 0xa2, 0xf6, 0x5d, 0xe8, 0xa0,
	0xda, 0x33, 0xb7, 0x37, 0x9b, 0x1d, 0xcc, 0x3f, 0xf2, 0x52, 0x72, 0x26, 0xda, 0xbf, 0x00, 0xe7,
	0x52, 0xdf, 0xdf, 0x09, 0x9c, 0xec, 0x10, 0x69, 0xcc, 0x3d, 0x9d, 0xf9, 0x22, 0x2c, 0xae, 0x53,
	0xff, 0x88, 0x84, 0x11, 0xbf, 0x48, 0x44, 0x91, 0x54, 0x42, 0x99, 0xfc, 0x82, 0x32, 0xdf, 0x87,
	0x25, 0x59, 0xa2, 0x4f, 0xe2, 0x9d, 0xd0, 0x3d, 0x92, 0xa4, 0xc4, 0x01, 0xb5, 0xa6, 0x1c, 0x50,
	0xe7, 0x07, 0xda, 0xba, 0x72, 0xa0, 0x7d, 0x01, 0x9a, 0x6e, 0x24, 0x14, 0x20, 0xa8, 0x66, 0xac,
	0x9c, 0x61, 0xda, 0xb0, 0xc0, 0xdd, 0x2f, 0x2e, 0x8c, 0xb0, 0x8b, 0x25, 0x98, 0xe1, 0x98, 0xca,
	0x3a, 0xc9, 0xe8, 0xb1, 0xd7, 0x2f, 0x63, 0x2f, 0x1b, 0xcd, 0x3e, 0x2c, 0x88, 0x47, 0x35, 0x3b,
	0xf6, 0xd0, 0xf5, 0xf9, 0x22, 0x7b, 0x11, 0x20, 0xb0, 0x87, 0xe9, 0x03, 0x3c, 0x7e, 0x6d, 0x26,
	0x71, 0xd8, 0xf7, 0x68, 0x9f, 0xde, 0x13, 0xdf, 0x75, 0xfe, 0x3d, 0xe7, 0x98, 0xef, 0x80, 0x61,
	0x91, 0x28, 0xa0, 0x7e, 0x44, 0x24, 0xad, 0xcb, 0xd0, 0x5a, 0x4f, 0xc2, 0x90, 0xf8, 0xac, 0xab,
	0xf4, 0x85, 0x99, 0xcc, 0x62, 0x7a, 0xfb, 0xb9, 0x5e, 0x7e, 0xc4, 0x2e, 0x71, 0xcc, 0x1f, 0xd5,
	0xa0, 0xd9, 0x77, 0x87, 0xbe, 0xed, 0x59, 0xe4, 0xd0, 0x78, 0x0d, 0x1a, 0x7c, 0xcb, 0x22, 0x90,
	0x52, 0x75, 0xe4, 0xcb, 0x5b, 0xf3, 0xbd, 0x99, 0x45, 0x0e, 0x6f, 0xfc, 0x9f, 0x25, 0x64, 0x8c,
	0xb7, 0xa1, 0xcd, 0x7f, 0xdd, 0xe4, 0x47, 0x50, 0x22, 0x7f, 0x7d, 0xf6, 0x04, 0x25, 0xa2, 0x35,
	0xd7, 0xa5, 0x6a, 0x60, 0x06, 0x0d, 0xb0, 0xa4, 0x11, 0xcb, 0xc3, 0x78, 0x83, 0x78, 0xe5, 0x23,
	0x0c, 0xe2, 0x32, 0x4c, 0xda, 0xc6, 0x43, 0x1a, 0x91, 0xa9, 0xc7, 0x4b, 0xf3, 0xb3, 0x1c, 0x21,
	0xcd, 0x65, 0x98, 0xf4, 0x7e, 0xe2, 0x0f, 0xef, 0x04, 0xe2, 0xec, 0x70, 0xbc, 0xf4, 0x0d, 0x6c,
	0x26, 0xa4, 0xb9, 0x0c, 0x93, 0x0e, 0x71, 0xf1, 0x46, 0xa7, 0x1f, 0x27, 0xcd, 0xd7, 0x78, 0x21,
	0xcd, 0x65, 0xd6, 0x9a, 0x30, 0x1d, 0xd8, 0x0f, 0x3c, 0x6a, 0x3b, 0xe6, 0x87, 0x35, 0x80, 0xb4,
	0x61, 0x84, 0x85, 0x8e, 0x12, 0xa2, 0x4b, 0x27, 0x86, 0x28, 0xf0, 0x1e, 0x48, 0x41, 0xea, 0x57,
	0x07, 0xe9, 0x73, 0x93, 0x06, 0x89, 0x6b, 0x2b, 0x84, 0xe9, 0x5a, 0x21, 0x4c, 0x97, 0x4e, 0x0c,
	0x93, 0x30, 0x4a, 0x04, 0xea, 0x5a, 0x21, 0x50, 0x97, 0x4e, 0x0c, 0x94, 0x90, 0x17, 0xa1, 0xba,
	0x56, 0x08, 0xd5, 0xa5, 0x13, 0x43, 0x25, 0xe4, 0x45, 0xb0, 0xae, 0x15, 0x82, 0x75, 0xe9, 0xc4,
	0x60, 0x09, 0xf9, 0x72, 0xb8, 0xfe, 0xaa, 0xc3, 0x1c, 0xba, 0x8c, 0xdf, 0xc2, 0xfa, 0x7b, 0x14,
	0xef, 0x03, 0xd0, 0x5d, 0xea, 0x1b, 0x4d, 0x95, 0x69, 0x7c, 0x1e, 0x16, 0x38, 0x83, 0x48, 0xd7,
	0x25, 0x3a, 0x5e, 0x97, 0x94, 0x3f, 0xe0, 0x05, 0x51, 0x12, 0xc5, 0x74, 0xb4, 0x61, 0xc7, 0x76,
	0x5a, 0x7c, 0xe5, 0x1c, 0xf9, 0xfa, 0x6e, 0xaa, 0xf4, 0x62, 0x3c, 0xa4, 0x74, 0x94, 0xdd, 0xcb,
	0x09, 0x8a, 0x49, 0xc4, 0xee, 0x88, 0xd0, 0x24, 0x16, 0xcb, 0x44, 0x4a, 0xf2, 0x77, 0x54, 0x8e,
	0x6b, 0xe3, 0xa5, 0x97, 0x78, 0x64, 0x94, 0x31, 0x70, 0x65, 0xcb, 0x2f, 0xf1, 0xc4, 0x8b, 0xee,
	0x9c, 0x33, 0xc1, 0x85, 0x1b, 0x3e, 0xc6, 0x77, 0x63, 0x57, 0x7e, 0x7c, 0x54, 0xb7, 0x14, 0x9e,
	0xf9, 0x0f, 0x0d, 0xce, 0xed, 0xd8, 0x61, 0xec, 0x0e, 0xdc, 0xc0, 0xf6, 0xe3, 0x1e, 0x89, 0x6d,
	0x1c, 0xa7, 0xf2, 0x98, 0x53, 0x7b, 0xb8, 0xc7, 0x9c, 0x3b, 0x30, 0x3f, 0x54, 0x77, 0x20, 0x0f,
	0xb9, 0x79, 0x28, 0x8a, 0x2b, 0x2f, 0x53, 0x6b, 0x0f, 0xfd, 0x32, 0xd5, 0xfc, 0x9e, 0x0e, 0xf3,
	0x85, 0xe5, 0xf5, 0xd8, 0xdc, 0xb4, 0x0a, 0xe0, 0x66, 0x50, 0x3b, 0xe6, 0x80, 0x5e, 0xc5, 0xa3,
	0x25, 0x09, 0x55, 0xdd, 0xf6, 0xd5, 0x4e, 0x7f, 0xdb, 0x77, 0x03, 0x5a, 0x41, 0x1e, 0xa4, 0x63,
	0xf6, 0x47, 0x15, 0xa1, 0xb4, 0x64, 0x51, 0xf3, 0x3d, 0x58, 0x28, 0xad, 0x62, 0x78, 0x6d, 0x47,
	0x0f, 0x88, 0x9f, 0x5d, 0xdb, 0x31, 0x42, 0x02, 0xb4, 0x5e, 0x04, 0xb4, 0xe7, 0x1e, 0xc9, 0xcf,
	0xe4, 0x05, 0x69, 0x7e, 0x5f, 0x87, 0xc5, 0xea, 0x0c, 0xf4, 0xa4, 0xba, 0x7b, 0x17, 0xba, 0xe3,
	0x56, 0xfb, 0x33, 0xf3, 0x7a, 0x8e, 0xee, 0x2c, 0x57, 0x3f, 0xa9, 0xee, 0x3e, 0x97, 0xa2, 0x5b,
	0x4a, 0x87, 0xe6, 0xaf, 0x32, 0xff, 0x64, 0xd5, 0xc8, 0x13, 0xea, 0x1f, 0xe3, 0x32, 0x74, 0xf8,
	0x30, 0xa5, 0xe7, 0x21, 0xbc, 0xb8, 0x2d, 0xf1, 0xf3, 0x95, 0x42, 0x2a, 0x0d, 0xce, 0x0c, 0xb3,
	0xbf, 0xd3, 0xd2, 0x98, 0x64, 0x35, 0xde, 0x27, 0x2a, 0x26, 0x39, 0xd2, 0xa4, 0xc2, 0x47, 0x42,
	0x5a, 0x56, 0x7b, 0xfe, 0x0f, 0x69, 0x27, 0x23, 0x2d, 0xf3, 0xa5, 0x54, 0x04, 0x9a, 0xdf, 0x82,
	0xf6, 0x06, 0xf1, 0x7a, 0xd1, 0x30, 0x7d, 0xbf, 0x7a, 0xa6, 0x9b, 0xc9, 0xe2, 0x2b, 0xbf, 0xa9,
	0xf2, 0x2b, 0xbf, 0x35, 0x98, 0x93, 0x0d, 0x38, 0xcd, 0xfb, 0xcc, 0xb5, 0x0b, 0x5f, 0x5b, 0x5a,
	0x11, 0xff, 0x9e, 0x7d, 0xb5, 0xe4, 0xc4, 0xdd, 0x06, 0xfe, 0x79, 0xf1, 0xa5, 0xff, 0x06, 0x00,
	0x00, 0xff, 0xff, 0x58, 0x4b, 0xb8, 0x00, 0x96, 0x3b, 0x00, 0x00,
}