mirror of
https://github.com/status-im/status-go.git
synced 2025-01-14 16:56:44 +00:00
f6c9ec7838
This commit introduces a few changes regarding users accessing communities: While the APIs still exist, community invites should no longer be used, instead communities should merely be "shared". Sharing a community to users allows users to "join" the community, which in reality makes them request access to that community. This means, users have to request access to any community, even if the community has permissions set to NO_MEMBERSHIP Only difference between ON_REQUEST and NO_MEMBERSHIP is that ON_REQUEST communities require manual approval of the owner/admin to access a community. NO_MEMBERSHIP communities accept automatically (as soon as owner/admin receives the request). This also implies that users are no longer optimistically added to the member list of communities, but only after they have been accepted. This introduces a bit of a message ping-pong for users to know that someone is now part of a community
434 lines
16 KiB
Go
434 lines
16 KiB
Go
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// source: command.proto
|
|
|
|
package protobuf
|
|
|
|
import (
|
|
fmt "fmt"
|
|
proto "github.com/golang/protobuf/proto"
|
|
math "math"
|
|
)
|
|
|
|
// 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.ProtoPackageIsVersion3 // please upgrade the proto package
|
|
|
|
type RequestAddressForTransaction struct {
|
|
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
|
|
Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
|
|
Contract string `protobuf:"bytes,3,opt,name=contract,proto3" json:"contract,omitempty"`
|
|
ChatId string `protobuf:"bytes,4,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *RequestAddressForTransaction) Reset() { *m = RequestAddressForTransaction{} }
|
|
func (m *RequestAddressForTransaction) String() string { return proto.CompactTextString(m) }
|
|
func (*RequestAddressForTransaction) ProtoMessage() {}
|
|
func (*RequestAddressForTransaction) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_213c0bb044472049, []int{0}
|
|
}
|
|
|
|
func (m *RequestAddressForTransaction) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_RequestAddressForTransaction.Unmarshal(m, b)
|
|
}
|
|
func (m *RequestAddressForTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_RequestAddressForTransaction.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *RequestAddressForTransaction) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_RequestAddressForTransaction.Merge(m, src)
|
|
}
|
|
func (m *RequestAddressForTransaction) XXX_Size() int {
|
|
return xxx_messageInfo_RequestAddressForTransaction.Size(m)
|
|
}
|
|
func (m *RequestAddressForTransaction) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_RequestAddressForTransaction.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_RequestAddressForTransaction proto.InternalMessageInfo
|
|
|
|
func (m *RequestAddressForTransaction) GetClock() uint64 {
|
|
if m != nil {
|
|
return m.Clock
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *RequestAddressForTransaction) GetValue() string {
|
|
if m != nil {
|
|
return m.Value
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *RequestAddressForTransaction) GetContract() string {
|
|
if m != nil {
|
|
return m.Contract
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *RequestAddressForTransaction) GetChatId() string {
|
|
if m != nil {
|
|
return m.ChatId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type AcceptRequestAddressForTransaction struct {
|
|
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
|
|
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
|
|
Address string `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"`
|
|
ChatId string `protobuf:"bytes,4,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *AcceptRequestAddressForTransaction) Reset() { *m = AcceptRequestAddressForTransaction{} }
|
|
func (m *AcceptRequestAddressForTransaction) String() string { return proto.CompactTextString(m) }
|
|
func (*AcceptRequestAddressForTransaction) ProtoMessage() {}
|
|
func (*AcceptRequestAddressForTransaction) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_213c0bb044472049, []int{1}
|
|
}
|
|
|
|
func (m *AcceptRequestAddressForTransaction) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_AcceptRequestAddressForTransaction.Unmarshal(m, b)
|
|
}
|
|
func (m *AcceptRequestAddressForTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_AcceptRequestAddressForTransaction.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *AcceptRequestAddressForTransaction) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_AcceptRequestAddressForTransaction.Merge(m, src)
|
|
}
|
|
func (m *AcceptRequestAddressForTransaction) XXX_Size() int {
|
|
return xxx_messageInfo_AcceptRequestAddressForTransaction.Size(m)
|
|
}
|
|
func (m *AcceptRequestAddressForTransaction) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_AcceptRequestAddressForTransaction.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_AcceptRequestAddressForTransaction proto.InternalMessageInfo
|
|
|
|
func (m *AcceptRequestAddressForTransaction) GetClock() uint64 {
|
|
if m != nil {
|
|
return m.Clock
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *AcceptRequestAddressForTransaction) GetId() string {
|
|
if m != nil {
|
|
return m.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *AcceptRequestAddressForTransaction) GetAddress() string {
|
|
if m != nil {
|
|
return m.Address
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *AcceptRequestAddressForTransaction) GetChatId() string {
|
|
if m != nil {
|
|
return m.ChatId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type DeclineRequestAddressForTransaction struct {
|
|
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
|
|
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
|
|
ChatId string `protobuf:"bytes,3,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *DeclineRequestAddressForTransaction) Reset() { *m = DeclineRequestAddressForTransaction{} }
|
|
func (m *DeclineRequestAddressForTransaction) String() string { return proto.CompactTextString(m) }
|
|
func (*DeclineRequestAddressForTransaction) ProtoMessage() {}
|
|
func (*DeclineRequestAddressForTransaction) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_213c0bb044472049, []int{2}
|
|
}
|
|
|
|
func (m *DeclineRequestAddressForTransaction) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_DeclineRequestAddressForTransaction.Unmarshal(m, b)
|
|
}
|
|
func (m *DeclineRequestAddressForTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_DeclineRequestAddressForTransaction.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *DeclineRequestAddressForTransaction) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_DeclineRequestAddressForTransaction.Merge(m, src)
|
|
}
|
|
func (m *DeclineRequestAddressForTransaction) XXX_Size() int {
|
|
return xxx_messageInfo_DeclineRequestAddressForTransaction.Size(m)
|
|
}
|
|
func (m *DeclineRequestAddressForTransaction) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_DeclineRequestAddressForTransaction.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_DeclineRequestAddressForTransaction proto.InternalMessageInfo
|
|
|
|
func (m *DeclineRequestAddressForTransaction) GetClock() uint64 {
|
|
if m != nil {
|
|
return m.Clock
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *DeclineRequestAddressForTransaction) GetId() string {
|
|
if m != nil {
|
|
return m.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *DeclineRequestAddressForTransaction) GetChatId() string {
|
|
if m != nil {
|
|
return m.ChatId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type DeclineRequestTransaction struct {
|
|
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
|
|
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
|
|
ChatId string `protobuf:"bytes,3,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *DeclineRequestTransaction) Reset() { *m = DeclineRequestTransaction{} }
|
|
func (m *DeclineRequestTransaction) String() string { return proto.CompactTextString(m) }
|
|
func (*DeclineRequestTransaction) ProtoMessage() {}
|
|
func (*DeclineRequestTransaction) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_213c0bb044472049, []int{3}
|
|
}
|
|
|
|
func (m *DeclineRequestTransaction) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_DeclineRequestTransaction.Unmarshal(m, b)
|
|
}
|
|
func (m *DeclineRequestTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_DeclineRequestTransaction.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *DeclineRequestTransaction) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_DeclineRequestTransaction.Merge(m, src)
|
|
}
|
|
func (m *DeclineRequestTransaction) XXX_Size() int {
|
|
return xxx_messageInfo_DeclineRequestTransaction.Size(m)
|
|
}
|
|
func (m *DeclineRequestTransaction) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_DeclineRequestTransaction.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_DeclineRequestTransaction proto.InternalMessageInfo
|
|
|
|
func (m *DeclineRequestTransaction) GetClock() uint64 {
|
|
if m != nil {
|
|
return m.Clock
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *DeclineRequestTransaction) GetId() string {
|
|
if m != nil {
|
|
return m.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *DeclineRequestTransaction) GetChatId() string {
|
|
if m != nil {
|
|
return m.ChatId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type RequestTransaction struct {
|
|
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
|
|
Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"`
|
|
Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
|
|
Contract string `protobuf:"bytes,4,opt,name=contract,proto3" json:"contract,omitempty"`
|
|
ChatId string `protobuf:"bytes,5,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *RequestTransaction) Reset() { *m = RequestTransaction{} }
|
|
func (m *RequestTransaction) String() string { return proto.CompactTextString(m) }
|
|
func (*RequestTransaction) ProtoMessage() {}
|
|
func (*RequestTransaction) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_213c0bb044472049, []int{4}
|
|
}
|
|
|
|
func (m *RequestTransaction) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_RequestTransaction.Unmarshal(m, b)
|
|
}
|
|
func (m *RequestTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_RequestTransaction.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *RequestTransaction) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_RequestTransaction.Merge(m, src)
|
|
}
|
|
func (m *RequestTransaction) XXX_Size() int {
|
|
return xxx_messageInfo_RequestTransaction.Size(m)
|
|
}
|
|
func (m *RequestTransaction) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_RequestTransaction.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_RequestTransaction proto.InternalMessageInfo
|
|
|
|
func (m *RequestTransaction) GetClock() uint64 {
|
|
if m != nil {
|
|
return m.Clock
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *RequestTransaction) GetAddress() string {
|
|
if m != nil {
|
|
return m.Address
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *RequestTransaction) GetValue() string {
|
|
if m != nil {
|
|
return m.Value
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *RequestTransaction) GetContract() string {
|
|
if m != nil {
|
|
return m.Contract
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *RequestTransaction) GetChatId() string {
|
|
if m != nil {
|
|
return m.ChatId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type SendTransaction struct {
|
|
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
|
|
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
|
|
TransactionHash string `protobuf:"bytes,3,opt,name=transaction_hash,json=transactionHash,proto3" json:"transaction_hash,omitempty"`
|
|
Signature []byte `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"`
|
|
ChatId string `protobuf:"bytes,5,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *SendTransaction) Reset() { *m = SendTransaction{} }
|
|
func (m *SendTransaction) String() string { return proto.CompactTextString(m) }
|
|
func (*SendTransaction) ProtoMessage() {}
|
|
func (*SendTransaction) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_213c0bb044472049, []int{5}
|
|
}
|
|
|
|
func (m *SendTransaction) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_SendTransaction.Unmarshal(m, b)
|
|
}
|
|
func (m *SendTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_SendTransaction.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *SendTransaction) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_SendTransaction.Merge(m, src)
|
|
}
|
|
func (m *SendTransaction) XXX_Size() int {
|
|
return xxx_messageInfo_SendTransaction.Size(m)
|
|
}
|
|
func (m *SendTransaction) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_SendTransaction.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_SendTransaction proto.InternalMessageInfo
|
|
|
|
func (m *SendTransaction) GetClock() uint64 {
|
|
if m != nil {
|
|
return m.Clock
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *SendTransaction) GetId() string {
|
|
if m != nil {
|
|
return m.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *SendTransaction) GetTransactionHash() string {
|
|
if m != nil {
|
|
return m.TransactionHash
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *SendTransaction) GetSignature() []byte {
|
|
if m != nil {
|
|
return m.Signature
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *SendTransaction) GetChatId() string {
|
|
if m != nil {
|
|
return m.ChatId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func init() {
|
|
proto.RegisterType((*RequestAddressForTransaction)(nil), "protobuf.RequestAddressForTransaction")
|
|
proto.RegisterType((*AcceptRequestAddressForTransaction)(nil), "protobuf.AcceptRequestAddressForTransaction")
|
|
proto.RegisterType((*DeclineRequestAddressForTransaction)(nil), "protobuf.DeclineRequestAddressForTransaction")
|
|
proto.RegisterType((*DeclineRequestTransaction)(nil), "protobuf.DeclineRequestTransaction")
|
|
proto.RegisterType((*RequestTransaction)(nil), "protobuf.RequestTransaction")
|
|
proto.RegisterType((*SendTransaction)(nil), "protobuf.SendTransaction")
|
|
}
|
|
|
|
func init() { proto.RegisterFile("command.proto", fileDescriptor_213c0bb044472049) }
|
|
|
|
var fileDescriptor_213c0bb044472049 = []byte{
|
|
// 301 bytes of a gzipped FileDescriptorProto
|
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x92, 0x3d, 0x4f, 0xf3, 0x30,
|
|
0x10, 0xc7, 0x95, 0x97, 0xbe, 0xdd, 0xf3, 0x94, 0x22, 0x0b, 0x89, 0x80, 0x3a, 0x54, 0x61, 0x29,
|
|
0x4b, 0x19, 0x18, 0x99, 0x8a, 0x10, 0x82, 0x35, 0x30, 0x75, 0xa9, 0xdc, 0xb3, 0x21, 0x16, 0xa9,
|
|
0x5d, 0x6c, 0x87, 0x0d, 0xf1, 0x11, 0x98, 0xf9, 0xb6, 0xa8, 0x4e, 0xda, 0x26, 0x43, 0x24, 0x40,
|
|
0x9d, 0xec, 0xff, 0x9d, 0xee, 0xfe, 0x3f, 0xdf, 0x19, 0xfa, 0xa8, 0x96, 0x4b, 0x2a, 0xd9, 0x64,
|
|
0xa5, 0x95, 0x55, 0xa4, 0xeb, 0x8e, 0x45, 0xfe, 0x14, 0x7f, 0xc0, 0x30, 0xe1, 0xaf, 0x39, 0x37,
|
|
0x76, 0xca, 0x98, 0xe6, 0xc6, 0xdc, 0x2a, 0xfd, 0xa8, 0xa9, 0x34, 0x14, 0xad, 0x50, 0x92, 0x1c,
|
|
0x41, 0x0b, 0x33, 0x85, 0x2f, 0x91, 0x37, 0xf2, 0xc6, 0x61, 0x52, 0x88, 0x75, 0xf4, 0x8d, 0x66,
|
|
0x39, 0x8f, 0xfc, 0x91, 0x37, 0xee, 0x25, 0x85, 0x20, 0xa7, 0xd0, 0x45, 0x25, 0xad, 0xa6, 0x68,
|
|
0xa3, 0xc0, 0x25, 0xb6, 0x9a, 0x1c, 0x43, 0x07, 0x53, 0x6a, 0xe7, 0x82, 0x45, 0xa1, 0x4b, 0xb5,
|
|
0xd7, 0xf2, 0x9e, 0xc5, 0xef, 0x10, 0x4f, 0x11, 0xf9, 0xca, 0xfe, 0x01, 0xe3, 0x00, 0x7c, 0xc1,
|
|
0x4a, 0x06, 0x5f, 0x30, 0x12, 0x41, 0x87, 0x16, 0xe5, 0xa5, 0xff, 0x46, 0x36, 0xdb, 0x33, 0x38,
|
|
0xbb, 0xe1, 0x98, 0x09, 0xc9, 0xf7, 0xe0, 0x5f, 0x71, 0x09, 0x6a, 0x2e, 0x33, 0x38, 0xa9, 0xbb,
|
|
0xec, 0xb1, 0xf7, 0xa7, 0x07, 0xe4, 0xc7, 0x5d, 0x2b, 0x13, 0xf2, 0xeb, 0x13, 0xda, 0xae, 0x34,
|
|
0x68, 0x5a, 0x69, 0xd8, 0xbc, 0xd2, 0x56, 0x8d, 0xe8, 0xcb, 0x83, 0xc1, 0x03, 0x97, 0xec, 0xf7,
|
|
0x8f, 0x3c, 0x87, 0x43, 0xbb, 0x2b, 0x9a, 0xa7, 0xd4, 0xa4, 0x25, 0xcf, 0xa0, 0x12, 0xbf, 0xa3,
|
|
0x26, 0x25, 0x43, 0xe8, 0x19, 0xf1, 0x2c, 0xa9, 0xcd, 0x35, 0x77, 0x68, 0xff, 0x93, 0x5d, 0xa0,
|
|
0x91, 0xed, 0xba, 0x3f, 0xfb, 0x37, 0xb9, 0xb8, 0xda, 0x7c, 0xff, 0x45, 0xdb, 0xdd, 0x2e, 0xbf,
|
|
0x03, 0x00, 0x00, 0xff, 0xff, 0x88, 0x09, 0x02, 0x5a, 0x20, 0x03, 0x00, 0x00,
|
|
}
|