You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Open-IM-Server/pkg/proto/auth/auth.pb.go

553 lines
19 KiB

// Code generated by protoc-gen-go. DO NOT EDIT.
// source: auth/auth.proto
package pbAuth // import "./auth"
import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import sdk_ws "Open_IM/pkg/proto/sdk_ws"
import (
context "golang.org/x/net/context"
grpc "google.golang.org/grpc"
)
// 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 CommonResp 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 *CommonResp) Reset() { *m = CommonResp{} }
func (m *CommonResp) String() string { return proto.CompactTextString(m) }
func (*CommonResp) ProtoMessage() {}
func (*CommonResp) Descriptor() ([]byte, []int) {
return fileDescriptor_auth_68293efd650e0000, []int{0}
}
func (m *CommonResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommonResp.Unmarshal(m, b)
}
func (m *CommonResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CommonResp.Marshal(b, m, deterministic)
}
func (dst *CommonResp) XXX_Merge(src proto.Message) {
xxx_messageInfo_CommonResp.Merge(dst, src)
}
func (m *CommonResp) XXX_Size() int {
return xxx_messageInfo_CommonResp.Size(m)
}
func (m *CommonResp) XXX_DiscardUnknown() {
xxx_messageInfo_CommonResp.DiscardUnknown(m)
}
var xxx_messageInfo_CommonResp proto.InternalMessageInfo
func (m *CommonResp) GetErrCode() int32 {
if m != nil {
return m.ErrCode
}
return 0
}
func (m *CommonResp) GetErrMsg() string {
if m != nil {
return m.ErrMsg
}
return ""
}
type UserRegisterReq struct {
UserInfo *sdk_ws.UserInfo `protobuf:"bytes,1,opt,name=UserInfo" json:"UserInfo,omitempty"`
OperationID string `protobuf:"bytes,2,opt,name=OperationID" json:"OperationID,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *UserRegisterReq) Reset() { *m = UserRegisterReq{} }
func (m *UserRegisterReq) String() string { return proto.CompactTextString(m) }
func (*UserRegisterReq) ProtoMessage() {}
func (*UserRegisterReq) Descriptor() ([]byte, []int) {
return fileDescriptor_auth_68293efd650e0000, []int{1}
}
func (m *UserRegisterReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserRegisterReq.Unmarshal(m, b)
}
func (m *UserRegisterReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_UserRegisterReq.Marshal(b, m, deterministic)
}
func (dst *UserRegisterReq) XXX_Merge(src proto.Message) {
xxx_messageInfo_UserRegisterReq.Merge(dst, src)
}
func (m *UserRegisterReq) XXX_Size() int {
return xxx_messageInfo_UserRegisterReq.Size(m)
}
func (m *UserRegisterReq) XXX_DiscardUnknown() {
xxx_messageInfo_UserRegisterReq.DiscardUnknown(m)
}
var xxx_messageInfo_UserRegisterReq proto.InternalMessageInfo
func (m *UserRegisterReq) GetUserInfo() *sdk_ws.UserInfo {
if m != nil {
return m.UserInfo
}
return nil
}
func (m *UserRegisterReq) GetOperationID() string {
if m != nil {
return m.OperationID
}
return ""
}
type UserRegisterResp struct {
CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *UserRegisterResp) Reset() { *m = UserRegisterResp{} }
func (m *UserRegisterResp) String() string { return proto.CompactTextString(m) }
func (*UserRegisterResp) ProtoMessage() {}
func (*UserRegisterResp) Descriptor() ([]byte, []int) {
return fileDescriptor_auth_68293efd650e0000, []int{2}
}
func (m *UserRegisterResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserRegisterResp.Unmarshal(m, b)
}
func (m *UserRegisterResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_UserRegisterResp.Marshal(b, m, deterministic)
}
func (dst *UserRegisterResp) XXX_Merge(src proto.Message) {
xxx_messageInfo_UserRegisterResp.Merge(dst, src)
}
func (m *UserRegisterResp) XXX_Size() int {
return xxx_messageInfo_UserRegisterResp.Size(m)
}
func (m *UserRegisterResp) XXX_DiscardUnknown() {
xxx_messageInfo_UserRegisterResp.DiscardUnknown(m)
}
var xxx_messageInfo_UserRegisterResp proto.InternalMessageInfo
func (m *UserRegisterResp) GetCommonResp() *CommonResp {
if m != nil {
return m.CommonResp
}
return nil
}
type UserTokenReq struct {
Platform int32 `protobuf:"varint,1,opt,name=Platform" json:"Platform,omitempty"`
FromUserID string `protobuf:"bytes,2,opt,name=FromUserID" json:"FromUserID,omitempty"`
OpUserID string `protobuf:"bytes,3,opt,name=OpUserID" json:"OpUserID,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 *UserTokenReq) Reset() { *m = UserTokenReq{} }
func (m *UserTokenReq) String() string { return proto.CompactTextString(m) }
func (*UserTokenReq) ProtoMessage() {}
func (*UserTokenReq) Descriptor() ([]byte, []int) {
return fileDescriptor_auth_68293efd650e0000, []int{3}
}
func (m *UserTokenReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserTokenReq.Unmarshal(m, b)
}
func (m *UserTokenReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_UserTokenReq.Marshal(b, m, deterministic)
}
func (dst *UserTokenReq) XXX_Merge(src proto.Message) {
xxx_messageInfo_UserTokenReq.Merge(dst, src)
}
func (m *UserTokenReq) XXX_Size() int {
return xxx_messageInfo_UserTokenReq.Size(m)
}
func (m *UserTokenReq) XXX_DiscardUnknown() {
xxx_messageInfo_UserTokenReq.DiscardUnknown(m)
}
var xxx_messageInfo_UserTokenReq proto.InternalMessageInfo
func (m *UserTokenReq) GetPlatform() int32 {
if m != nil {
return m.Platform
}
return 0
}
func (m *UserTokenReq) GetFromUserID() string {
if m != nil {
return m.FromUserID
}
return ""
}
func (m *UserTokenReq) GetOpUserID() string {
if m != nil {
return m.OpUserID
}
return ""
}
func (m *UserTokenReq) GetOperationID() string {
if m != nil {
return m.OperationID
}
return ""
}
type UserTokenResp struct {
CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"`
Token string `protobuf:"bytes,2,opt,name=Token" json:"Token,omitempty"`
ExpiredTime int64 `protobuf:"varint,3,opt,name=ExpiredTime" json:"ExpiredTime,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *UserTokenResp) Reset() { *m = UserTokenResp{} }
func (m *UserTokenResp) String() string { return proto.CompactTextString(m) }
func (*UserTokenResp) ProtoMessage() {}
func (*UserTokenResp) Descriptor() ([]byte, []int) {
return fileDescriptor_auth_68293efd650e0000, []int{4}
}
func (m *UserTokenResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserTokenResp.Unmarshal(m, b)
}
func (m *UserTokenResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_UserTokenResp.Marshal(b, m, deterministic)
}
func (dst *UserTokenResp) XXX_Merge(src proto.Message) {
xxx_messageInfo_UserTokenResp.Merge(dst, src)
}
func (m *UserTokenResp) XXX_Size() int {
return xxx_messageInfo_UserTokenResp.Size(m)
}
func (m *UserTokenResp) XXX_DiscardUnknown() {
xxx_messageInfo_UserTokenResp.DiscardUnknown(m)
}
var xxx_messageInfo_UserTokenResp proto.InternalMessageInfo
func (m *UserTokenResp) GetCommonResp() *CommonResp {
if m != nil {
return m.CommonResp
}
return nil
}
func (m *UserTokenResp) GetToken() string {
if m != nil {
return m.Token
}
return ""
}
func (m *UserTokenResp) GetExpiredTime() int64 {
if m != nil {
return m.ExpiredTime
}
return 0
}
type ForceLogoutReq struct {
Platform int32 `protobuf:"varint,1,opt,name=Platform" json:"Platform,omitempty"`
FromUserID string `protobuf:"bytes,2,opt,name=FromUserID" json:"FromUserID,omitempty"`
OpUserID string `protobuf:"bytes,3,opt,name=OpUserID" json:"OpUserID,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 *ForceLogoutReq) Reset() { *m = ForceLogoutReq{} }
func (m *ForceLogoutReq) String() string { return proto.CompactTextString(m) }
func (*ForceLogoutReq) ProtoMessage() {}
func (*ForceLogoutReq) Descriptor() ([]byte, []int) {
return fileDescriptor_auth_68293efd650e0000, []int{5}
}
func (m *ForceLogoutReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ForceLogoutReq.Unmarshal(m, b)
}
func (m *ForceLogoutReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ForceLogoutReq.Marshal(b, m, deterministic)
}
func (dst *ForceLogoutReq) XXX_Merge(src proto.Message) {
xxx_messageInfo_ForceLogoutReq.Merge(dst, src)
}
func (m *ForceLogoutReq) XXX_Size() int {
return xxx_messageInfo_ForceLogoutReq.Size(m)
}
func (m *ForceLogoutReq) XXX_DiscardUnknown() {
xxx_messageInfo_ForceLogoutReq.DiscardUnknown(m)
}
var xxx_messageInfo_ForceLogoutReq proto.InternalMessageInfo
func (m *ForceLogoutReq) GetPlatform() int32 {
if m != nil {
return m.Platform
}
return 0
}
func (m *ForceLogoutReq) GetFromUserID() string {
if m != nil {
return m.FromUserID
}
return ""
}
func (m *ForceLogoutReq) GetOpUserID() string {
if m != nil {
return m.OpUserID
}
return ""
}
func (m *ForceLogoutReq) GetOperationID() string {
if m != nil {
return m.OperationID
}
return ""
}
type ForceLogoutResp struct {
CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ForceLogoutResp) Reset() { *m = ForceLogoutResp{} }
func (m *ForceLogoutResp) String() string { return proto.CompactTextString(m) }
func (*ForceLogoutResp) ProtoMessage() {}
func (*ForceLogoutResp) Descriptor() ([]byte, []int) {
return fileDescriptor_auth_68293efd650e0000, []int{6}
}
func (m *ForceLogoutResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ForceLogoutResp.Unmarshal(m, b)
}
func (m *ForceLogoutResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ForceLogoutResp.Marshal(b, m, deterministic)
}
func (dst *ForceLogoutResp) XXX_Merge(src proto.Message) {
xxx_messageInfo_ForceLogoutResp.Merge(dst, src)
}
func (m *ForceLogoutResp) XXX_Size() int {
return xxx_messageInfo_ForceLogoutResp.Size(m)
}
func (m *ForceLogoutResp) XXX_DiscardUnknown() {
xxx_messageInfo_ForceLogoutResp.DiscardUnknown(m)
}
var xxx_messageInfo_ForceLogoutResp proto.InternalMessageInfo
func (m *ForceLogoutResp) GetCommonResp() *CommonResp {
if m != nil {
return m.CommonResp
}
return nil
}
func init() {
proto.RegisterType((*CommonResp)(nil), "pbAuth.CommonResp")
proto.RegisterType((*UserRegisterReq)(nil), "pbAuth.UserRegisterReq")
proto.RegisterType((*UserRegisterResp)(nil), "pbAuth.UserRegisterResp")
proto.RegisterType((*UserTokenReq)(nil), "pbAuth.UserTokenReq")
proto.RegisterType((*UserTokenResp)(nil), "pbAuth.UserTokenResp")
proto.RegisterType((*ForceLogoutReq)(nil), "pbAuth.ForceLogoutReq")
proto.RegisterType((*ForceLogoutResp)(nil), "pbAuth.ForceLogoutResp")
}
// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4
// Client API for Auth service
type AuthClient interface {
UserRegister(ctx context.Context, in *UserRegisterReq, opts ...grpc.CallOption) (*UserRegisterResp, error)
UserToken(ctx context.Context, in *UserTokenReq, opts ...grpc.CallOption) (*UserTokenResp, error)
ForceLogout(ctx context.Context, in *ForceLogoutReq, opts ...grpc.CallOption) (*ForceLogoutResp, error)
}
type authClient struct {
cc *grpc.ClientConn
}
func NewAuthClient(cc *grpc.ClientConn) AuthClient {
return &authClient{cc}
}
func (c *authClient) UserRegister(ctx context.Context, in *UserRegisterReq, opts ...grpc.CallOption) (*UserRegisterResp, error) {
out := new(UserRegisterResp)
err := grpc.Invoke(ctx, "/pbAuth.Auth/UserRegister", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *authClient) UserToken(ctx context.Context, in *UserTokenReq, opts ...grpc.CallOption) (*UserTokenResp, error) {
out := new(UserTokenResp)
err := grpc.Invoke(ctx, "/pbAuth.Auth/UserToken", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *authClient) ForceLogout(ctx context.Context, in *ForceLogoutReq, opts ...grpc.CallOption) (*ForceLogoutResp, error) {
out := new(ForceLogoutResp)
err := grpc.Invoke(ctx, "/pbAuth.Auth/ForceLogout", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// Server API for Auth service
type AuthServer interface {
UserRegister(context.Context, *UserRegisterReq) (*UserRegisterResp, error)
UserToken(context.Context, *UserTokenReq) (*UserTokenResp, error)
ForceLogout(context.Context, *ForceLogoutReq) (*ForceLogoutResp, error)
}
func RegisterAuthServer(s *grpc.Server, srv AuthServer) {
s.RegisterService(&_Auth_serviceDesc, srv)
}
func _Auth_UserRegister_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UserRegisterReq)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AuthServer).UserRegister(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pbAuth.Auth/UserRegister",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AuthServer).UserRegister(ctx, req.(*UserRegisterReq))
}
return interceptor(ctx, in, info, handler)
}
func _Auth_UserToken_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UserTokenReq)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AuthServer).UserToken(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pbAuth.Auth/UserToken",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AuthServer).UserToken(ctx, req.(*UserTokenReq))
}
return interceptor(ctx, in, info, handler)
}
func _Auth_ForceLogout_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ForceLogoutReq)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AuthServer).ForceLogout(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pbAuth.Auth/ForceLogout",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AuthServer).ForceLogout(ctx, req.(*ForceLogoutReq))
}
return interceptor(ctx, in, info, handler)
}
var _Auth_serviceDesc = grpc.ServiceDesc{
ServiceName: "pbAuth.Auth",
HandlerType: (*AuthServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "UserRegister",
Handler: _Auth_UserRegister_Handler,
},
{
MethodName: "UserToken",
Handler: _Auth_UserToken_Handler,
},
{
MethodName: "ForceLogout",
Handler: _Auth_ForceLogout_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "auth/auth.proto",
}
func init() { proto.RegisterFile("auth/auth.proto", fileDescriptor_auth_68293efd650e0000) }
var fileDescriptor_auth_68293efd650e0000 = []byte{
// 417 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x53, 0x5d, 0x8b, 0xda, 0x40,
0x14, 0x25, 0xf5, 0xa3, 0x7a, 0xad, 0x4d, 0x19, 0xac, 0x86, 0x14, 0x8a, 0xcd, 0x93, 0x4f, 0x09,
0xd8, 0x87, 0x16, 0x0a, 0x82, 0xb5, 0x0a, 0x42, 0xc5, 0x12, 0xec, 0xcb, 0xbe, 0x84, 0xb8, 0x8e,
0x31, 0x68, 0x32, 0xb3, 0x33, 0x71, 0x5d, 0xd8, 0x3f, 0xb0, 0xec, 0xdf, 0xda, 0x3f, 0xb6, 0xcc,
0xe4, 0x63, 0x47, 0xd7, 0x27, 0x5f, 0xf6, 0x25, 0xe1, 0x9e, 0x73, 0x66, 0xee, 0x39, 0x77, 0x66,
0x40, 0xf7, 0xf7, 0xc9, 0xc6, 0x11, 0x1f, 0x9b, 0x32, 0x92, 0x10, 0x54, 0xa5, 0xcb, 0xe1, 0x3e,
0xd9, 0x98, 0xdf, 0xe6, 0x14, 0xc7, 0xde, 0x74, 0xe6, 0xd0, 0x6d, 0xe0, 0x48, 0xca, 0xe1, 0xab,
0xad, 0x77, 0xe0, 0xce, 0x81, 0xa7, 0x52, 0x6b, 0x00, 0x30, 0x22, 0x51, 0x44, 0x62, 0x17, 0x73,
0x8a, 0x0c, 0x78, 0x8f, 0x19, 0x1b, 0x91, 0x15, 0x36, 0xb4, 0xae, 0xd6, 0xab, 0xb8, 0x79, 0x89,
0xda, 0x50, 0xc5, 0x8c, 0xcd, 0x78, 0x60, 0xbc, 0xeb, 0x6a, 0xbd, 0xba, 0x9b, 0x55, 0xd6, 0x0e,
0xf4, 0xff, 0x1c, 0x33, 0x17, 0x07, 0x21, 0x4f, 0xc4, 0xff, 0x06, 0xfd, 0x80, 0x9a, 0x80, 0xa6,
0xf1, 0x9a, 0xc8, 0x5d, 0x1a, 0xfd, 0x2f, 0x36, 0xc7, 0xec, 0x16, 0x33, 0xcf, 0xa7, 0xa1, 0x47,
0x7d, 0xe6, 0x47, 0xdc, 0xce, 0x25, 0x6e, 0x21, 0x46, 0x5d, 0x68, 0xcc, 0x29, 0x66, 0x7e, 0x12,
0x92, 0x78, 0xfa, 0x27, 0x6b, 0xa4, 0x42, 0xd6, 0x04, 0x3e, 0x1d, 0x77, 0xe3, 0x14, 0xf5, 0xd5,
0x04, 0x59, 0x43, 0x64, 0xa7, 0x13, 0xb0, 0x5f, 0x18, 0x57, 0x51, 0x59, 0x0f, 0x1a, 0x7c, 0x10,
0x1b, 0x2d, 0xc8, 0x16, 0xc7, 0xc2, 0xb3, 0x09, 0xb5, 0x7f, 0x3b, 0x3f, 0x59, 0x13, 0x16, 0x65,
0xc9, 0x8b, 0x1a, 0x7d, 0x05, 0x98, 0x30, 0x12, 0x49, 0x9b, 0xb9, 0x2b, 0x05, 0x11, 0x6b, 0xe7,
0x34, 0x63, 0x4b, 0x92, 0x2d, 0xea, 0xd3, 0x48, 0xe5, 0xd7, 0x91, 0xee, 0xa1, 0xa9, 0x38, 0xb9,
0x2c, 0x0f, 0x6a, 0x41, 0x45, 0x6e, 0x90, 0xb9, 0x4b, 0x0b, 0xd1, 0x7c, 0x7c, 0x47, 0x43, 0x86,
0x57, 0x8b, 0x30, 0xc2, 0xd2, 0x5b, 0xc9, 0x55, 0x21, 0xeb, 0x51, 0x83, 0x8f, 0x13, 0xc2, 0xae,
0xf1, 0x5f, 0x12, 0x90, 0x7d, 0xf2, 0xb6, 0x93, 0x18, 0x83, 0x7e, 0xe4, 0xe5, 0xb2, 0x59, 0xf4,
0x9f, 0x34, 0x28, 0x0b, 0x1e, 0x0d, 0xd3, 0x33, 0xce, 0x2f, 0x0b, 0xea, 0xe4, 0x0b, 0x4f, 0x2e,
0xac, 0x69, 0x9c, 0x27, 0x38, 0x45, 0x3f, 0xa1, 0x5e, 0x1c, 0x0e, 0x6a, 0xa9, 0xb2, 0xfc, 0xe6,
0x98, 0x9f, 0xcf, 0xa0, 0x9c, 0xa2, 0x01, 0x34, 0x94, 0x30, 0xa8, 0x9d, 0xab, 0x8e, 0xa7, 0x6d,
0x76, 0xce, 0xe2, 0x9c, 0xfe, 0xd6, 0xaf, 0x9a, 0xb6, 0x7c, 0xd2, 0xbf, 0x52, 0xc1, 0xb2, 0x2a,
0xdf, 0xeb, 0xf7, 0xe7, 0x00, 0x00, 0x00, 0xff, 0xff, 0xed, 0x61, 0xac, 0x2b, 0xed, 0x03, 0x00,
0x00,
}