Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
plugin
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
link33
plugin
Commits
bcc351de
Commit
bcc351de
authored
Feb 12, 2019
by
pengjun
Committed by
vipwzw
Feb 14, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
#302 修复节点时区不一致引起的statehash不同
parent
fe703ac7
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
79 additions
and
105 deletions
+79
-105
pokerbulldb.go
plugin/dapp/pokerbull/executor/pokerbulldb.go
+3
-8
pokerbull.proto
plugin/dapp/pokerbull/proto/pokerbull.proto
+2
-4
pokerbull.pb.go
plugin/dapp/pokerbull/types/pokerbull.pb.go
+74
-93
No files found.
plugin/dapp/pokerbull/executor/pokerbulldb.go
View file @
bcc351de
...
...
@@ -10,7 +10,6 @@ import (
"strconv"
"strings"
"time"
"github.com/33cn/chain33/account"
"github.com/33cn/chain33/common"
...
...
@@ -510,7 +509,7 @@ func (action *Action) newGame(gameID string, start *pkt.PBGameStart) (*pkt.Poker
game
=
&
pkt
.
PokerBull
{
GameId
:
gameID
,
Status
:
pkt
.
PBGameActionStart
,
StartTime
:
time
.
Unix
(
action
.
blocktime
,
0
)
.
Format
(
"2006-01-02 15:04:05"
)
,
StartTime
:
action
.
blocktime
,
StartTxHash
:
gameID
,
Value
:
start
.
GetValue
(),
Poker
:
NewPoker
(),
...
...
@@ -649,7 +648,6 @@ func (action *Action) GameStart(start *pkt.PBGameStart) (*types.Receipt, error)
Address
:
action
.
fromaddr
,
TxHash
:
txrng
,
Ready
:
false
,
MatchTime
:
time
.
Unix
(
action
.
blocktime
,
0
)
.
Format
(
"2006-01-02 15:04:05"
),
})
// 如果人数达标,则发牌计算斗牛结果
...
...
@@ -759,7 +757,6 @@ func (action *Action) GameContinue(pbcontinue *pkt.PBGameContinue) (*types.Recei
}
pbplayer
.
TxHash
=
txrng
pbplayer
.
Ready
=
true
pbplayer
.
MatchTime
=
time
.
Unix
(
action
.
blocktime
,
0
)
.
Format
(
"2006-01-02 15:04:05"
)
if
getReadyPlayerNum
(
game
.
Players
)
==
int
(
game
.
PlayerNum
)
{
logger
.
Info
(
fmt
.
Sprintf
(
"Game starting: %s round: %d"
,
game
.
GameId
,
game
.
Round
))
...
...
@@ -864,7 +861,7 @@ func (action *Action) GameQuit(pbquit *pkt.PBGameQuit) (*types.Receipt, error) {
game
.
Status
=
pkt
.
PBGameActionQuit
game
.
PrevIndex
=
game
.
Index
game
.
Index
=
action
.
getIndex
(
game
)
game
.
QuitTime
=
time
.
Unix
(
action
.
blocktime
,
0
)
.
Format
(
"2006-01-02 15:04:05"
)
game
.
QuitTime
=
action
.
blocktime
game
.
QuitTxHash
=
common
.
ToHex
(
action
.
txhash
)
receiptLog
:=
action
.
GetReceiptLog
(
game
)
...
...
@@ -946,7 +943,6 @@ func (action *Action) GamePlay(pbplay *pkt.PBGamePlay) (*types.Receipt, error) {
// 更新玩家信息
for
i
,
player
:=
range
game
.
Players
{
player
.
TxHash
=
rands
[
i
]
player
.
MatchTime
=
time
.
Unix
(
action
.
blocktime
,
0
)
.
Format
(
"2006-01-02 15:04:05"
)
}
game
.
Round
++
...
...
@@ -974,14 +970,13 @@ func (action *Action) GamePlay(pbplay *pkt.PBGamePlay) (*types.Receipt, error) {
player
:=
&
pkt
.
PBPlayer
{
Address
:
addr
,
TxHash
:
rands
[
i
],
MatchTime
:
time
.
Unix
(
action
.
blocktime
,
0
)
.
Format
(
"2006-01-02 15:04:05"
),
}
game
.
Players
=
append
(
game
.
Players
,
player
)
}
game
.
Status
=
pkt
.
PBGameActionQuit
// 更新游戏状态
game
.
PreStatus
=
pkt
.
PBGameActionStart
game
.
QuitTime
=
time
.
Unix
(
action
.
blocktime
,
0
)
.
Format
(
"2006-01-02 15:04:05"
)
game
.
QuitTime
=
action
.
blocktime
game
.
QuitTxHash
=
common
.
ToHex
(
action
.
txhash
)
}
...
...
plugin/dapp/pokerbull/proto/pokerbull.proto
View file @
bcc351de
...
...
@@ -6,7 +6,7 @@ package types;
message
PokerBull
{
string
gameId
=
1
;
//默认是由创建这局游戏的txHash作为gameId
int32
status
=
2
;
// Start 1 -> Continue 2 -> Quit 3
string
startTime
=
3
;
//开始时间
int64
startTime
=
3
;
//开始时间
string
startTxHash
=
4
;
//游戏启动交易hash
int64
value
=
5
;
//赌注
PBPoker
poker
=
6
;
//扑克牌
...
...
@@ -15,7 +15,7 @@ message PokerBull {
repeated
PBResult
results
=
9
;
//游戏结果集
int64
index
=
10
;
//索引
int64
prevIndex
=
11
;
//上级索引
string
quitTime
=
12
;
//游戏结束时间
int64
quitTime
=
12
;
//游戏结束时间
string
quitTxHash
=
13
;
//游戏结束交易hash
string
dealerAddr
=
14
;
//下局庄家地址
bool
isWaiting
=
15
;
//游戏是否处于等待状态
...
...
@@ -30,7 +30,6 @@ message PBHand {
string
address
=
3
;
//玩家地址
bool
isWin
=
4
;
//是否赢庄家
int32
leverage
=
5
;
//赌注倍数
string
roundTime
=
6
;
//本回合开始时间
}
//玩家
...
...
@@ -39,7 +38,6 @@ message PBPlayer {
string
address
=
2
;
//玩家地址
int64
txHash
=
3
;
//发牌随机数因子txhash的整数格式
bool
ready
=
4
;
//continue状态下,是否ready
string
matchTime
=
5
;
//玩家匹配时间
}
//本局游戏结果
...
...
plugin/dapp/pokerbull/types/pokerbull.pb.go
View file @
bcc351de
...
...
@@ -5,9 +5,8 @@ package types
import
(
fmt
"fmt"
math
"math"
proto
"github.com/golang/protobuf/proto"
math
"math"
)
// Reference imports to suppress errors if they are not otherwise used.
...
...
@@ -25,7 +24,7 @@ const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
type
PokerBull
struct
{
GameId
string
`protobuf:"bytes,1,opt,name=gameId,proto3" json:"gameId,omitempty"`
Status
int32
`protobuf:"varint,2,opt,name=status,proto3" json:"status,omitempty"`
StartTime
string
`protobuf:"bytes
,3,opt,name=startTime,proto3" json:"startTime,omitempty"`
StartTime
int64
`protobuf:"varint
,3,opt,name=startTime,proto3" json:"startTime,omitempty"`
StartTxHash
string
`protobuf:"bytes,4,opt,name=startTxHash,proto3" json:"startTxHash,omitempty"`
Value
int64
`protobuf:"varint,5,opt,name=value,proto3" json:"value,omitempty"`
Poker
*
PBPoker
`protobuf:"bytes,6,opt,name=poker,proto3" json:"poker,omitempty"`
...
...
@@ -34,7 +33,7 @@ type PokerBull struct {
Results
[]
*
PBResult
`protobuf:"bytes,9,rep,name=results,proto3" json:"results,omitempty"`
Index
int64
`protobuf:"varint,10,opt,name=index,proto3" json:"index,omitempty"`
PrevIndex
int64
`protobuf:"varint,11,opt,name=prevIndex,proto3" json:"prevIndex,omitempty"`
QuitTime
string
`protobuf:"bytes
,12,opt,name=quitTime,proto3" json:"quitTime,omitempty"`
QuitTime
int64
`protobuf:"varint
,12,opt,name=quitTime,proto3" json:"quitTime,omitempty"`
QuitTxHash
string
`protobuf:"bytes,13,opt,name=quitTxHash,proto3" json:"quitTxHash,omitempty"`
DealerAddr
string
`protobuf:"bytes,14,opt,name=dealerAddr,proto3" json:"dealerAddr,omitempty"`
IsWaiting
bool
`protobuf:"varint,15,opt,name=isWaiting,proto3" json:"isWaiting,omitempty"`
...
...
@@ -84,11 +83,11 @@ func (m *PokerBull) GetStatus() int32 {
return
0
}
func
(
m
*
PokerBull
)
GetStartTime
()
string
{
func
(
m
*
PokerBull
)
GetStartTime
()
int64
{
if
m
!=
nil
{
return
m
.
StartTime
}
return
""
return
0
}
func
(
m
*
PokerBull
)
GetStartTxHash
()
string
{
...
...
@@ -147,11 +146,11 @@ func (m *PokerBull) GetPrevIndex() int64 {
return
0
}
func
(
m
*
PokerBull
)
GetQuitTime
()
string
{
func
(
m
*
PokerBull
)
GetQuitTime
()
int64
{
if
m
!=
nil
{
return
m
.
QuitTime
}
return
""
return
0
}
func
(
m
*
PokerBull
)
GetQuitTxHash
()
string
{
...
...
@@ -196,7 +195,6 @@ type PBHand struct {
Address
string
`protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"`
IsWin
bool
`protobuf:"varint,4,opt,name=isWin,proto3" json:"isWin,omitempty"`
Leverage
int32
`protobuf:"varint,5,opt,name=leverage,proto3" json:"leverage,omitempty"`
RoundTime
string
`protobuf:"bytes,6,opt,name=roundTime,proto3" json:"roundTime,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
...
...
@@ -262,20 +260,12 @@ func (m *PBHand) GetLeverage() int32 {
return
0
}
func
(
m
*
PBHand
)
GetRoundTime
()
string
{
if
m
!=
nil
{
return
m
.
RoundTime
}
return
""
}
//玩家
type
PBPlayer
struct
{
Hands
[]
*
PBHand
`protobuf:"bytes,1,rep,name=hands,proto3" json:"hands,omitempty"`
Address
string
`protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"`
TxHash
int64
`protobuf:"varint,3,opt,name=txHash,proto3" json:"txHash,omitempty"`
Ready
bool
`protobuf:"varint,4,opt,name=ready,proto3" json:"ready,omitempty"`
MatchTime
string
`protobuf:"bytes,5,opt,name=matchTime,proto3" json:"matchTime,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
...
...
@@ -334,13 +324,6 @@ func (m *PBPlayer) GetReady() bool {
return
false
}
func
(
m
*
PBPlayer
)
GetMatchTime
()
string
{
if
m
!=
nil
{
return
m
.
MatchTime
}
return
""
}
//本局游戏结果
type
PBResult
struct
{
Hands
[]
*
PBHand
`protobuf:"bytes,1,rep,name=hands,proto3" json:"hands,omitempty"`
...
...
@@ -1848,73 +1831,71 @@ func init() {
func
init
()
{
proto
.
RegisterFile
(
"pokerbull.proto"
,
fileDescriptor_8d22e4ee2313e311
)
}
var
fileDescriptor_8d22e4ee2313e311
=
[]
byte
{
// 1081 bytes of a gzipped FileDescriptorProto
0x1f
,
0x8b
,
0x08
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x02
,
0xff
,
0x9c
,
0x57
,
0x4f
,
0x6f
,
0xe3
,
0x44
,
0x14
,
0x5f
,
0xdb
,
0xb1
,
0x93
,
0x3c
,
0x6f
,
0x9b
,
0x76
,
0x80
,
0x6a
,
0x84
,
0x10
,
0x8a
,
0xbc
,
0x65
,
0x37
,
0x20
,
0xe8
,
0x21
,
0x95
,
0x40
,
0x2b
,
0x24
,
0xa4
,
0x86
,
0x03
,
0xa9
,
0xb4
,
0x42
,
0xe9
,
0x74
,
0xa5
,
0x3d
,
0x7b
,
0xe3
,
0xd9
,
0xd6
,
0xac
,
0xe3
,
0xa4
,
0xfe
,
0x53
,
0x36
,
0x5f
,
0x80
,
0x1b
,
0x47
,
0xee
,
0x48
,
0x1c
,
0xf8
,
0x62
,
0x7c
,
0x10
,
0x34
,
0x6f
,
0x66
,
0xec
,
0xb1
,
0x1b
,
0xab
,
0x84
,
0x9b
,
0xdf
,
0x9f
,
0x79
,
0xf3
,
0x7b
,
0x6f
,
0xde
,
0xfc
,
0xde
,
0x18
,
0x46
,
0x9b
,
0xf5
,
0x7b
,
0x9e
,
0xbd
,
0x2d
,
0x93
,
0xe4
,
0x6c
,
0x93
,
0xad
,
0x8b
,
0x35
,
0x71
,
0x8b
,
0xed
,
0x86
,
0xe7
,
0xc1
,
0xef
,
0x3d
,
0x18
,
0x2e
,
0x84
,
0x69
,
0x56
,
0x26
,
0x09
,
0x39
,
0x01
,
0xef
,
0x26
,
0x5c
,
0xf1
,
0xcb
,
0x88
,
0x5a
,
0x63
,
0x6b
,
0x32
,
0x64
,
0x4a
,
0x12
,
0xfa
,
0xbc
,
0x08
,
0x8b
,
0x32
,
0xa7
,
0xf6
,
0xd8
,
0x9a
,
0xb8
,
0x4c
,
0x49
,
0xe4
,
0x33
,
0x18
,
0xe6
,
0x45
,
0x98
,
0x15
,
0xaf
,
0xe3
,
0x15
,
0xa7
,
0x0e
,
0x2e
,
0xa9
,
0x15
,
0x64
,
0x0c
,
0xbe
,
0x14
,
0x3e
,
0xcc
,
0xc3
,
0xfc
,
0x96
,
0xf6
,
0xd0
,
0x6e
,
0xaa
,
0xc8
,
0xc7
,
0xe0
,
0xde
,
0x87
,
0x49
,
0xc9
,
0xa9
,
0x3b
,
0xb6
,
0x26
,
0x0e
,
0x93
,
0x02
,
0x39
,
0x05
,
0x17
,
0xd1
,
0x52
,
0x6f
,
0x6c
,
0x4d
,
0xfc
,
0xe9
,
0xe1
,
0x19
,
0x42
,
0x3d
,
0x5b
,
0xcc
,
0x10
,
0x28
,
0x93
,
0x46
,
0xf2
,
0x25
,
0xf4
,
0x37
,
0x49
,
0xb8
,
0xe5
,
0x59
,
0x4e
,
0xfb
,
0x63
,
0x67
,
0xe2
,
0x4f
,
0x47
,
0xb5
,
0x1f
,
0xea
,
0x99
,
0xb6
,
0x0b
,
0x98
,
0xf2
,
0xf3
,
0xe7
,
0x72
,
0x45
,
0x07
,
0x98
,
0x41
,
0xad
,
0x10
,
0x81
,
0x32
,
0x9e
,
0x97
,
0x49
,
0x91
,
0xd3
,
0x61
,
0x2b
,
0x10
,
0x43
,
0x3d
,
0xd3
,
0x76
,
0x81
,
0x37
,
0x4e
,
0x23
,
0xfe
,
0x81
,
0x82
,
0xc4
,
0x8b
,
0x02
,
0x86
,
0xcf
,
0xf8
,
0xfd
,
0x25
,
0x5a
,
0x7c
,
0xb4
,
0xd4
,
0x0a
,
0xf2
,
0x29
,
0x0c
,
0xee
,
0xca
,
0x58
,
0x96
,
0xe8
,
0x29
,
0x96
,
0xa0
,
0x92
,
0xc9
,
0xe7
,
0x00
,
0xf8
,
0x2d
,
0x0b
,
0x74
,
0x80
,
0x56
,
0x43
,
0x23
,
0xec
,
0x11
,
0x0f
,
0x13
,
0x9e
,
0x5d
,
0x44
,
0x51
,
0x46
,
0x0f
,
0xa5
,
0xbd
,
0xd6
,
0x88
,
0x9d
,
0xe3
,
0xfc
,
0x4d
,
0x18
,
0x17
,
0x71
,
0x7a
,
0x43
,
0x47
,
0x63
,
0x6b
,
0x32
,
0x60
,
0xb5
,
0x42
,
0xe1
,
0xba
,
0x96
,
0x07
,
0x77
,
0xa4
,
0xd2
,
0xd6
,
0x0a
,
0x91
,
0x4b
,
0xb6
,
0x2e
,
0xd3
,
0x88
,
0x1e
,
0xa3
,
0x45
,
0x0a
,
0xc1
,
0x9f
,
0x16
,
0x78
,
0x8b
,
0xd9
,
0x3c
,
0x4c
,
0x23
,
0xe1
,
0xb0
,
0x0c
,
0xb3
,
0x28
,
0xa7
,
0xd6
,
0xd8
,
0x11
,
0x0e
,
0x28
,
0x88
,
0x56
,
0x90
,
0xd5
,
0xd0
,
0xad
,
0x20
,
0x25
,
0x42
,
0xa1
,
0x1f
,
0x46
,
0x51
,
0xc6
,
0xf3
,
0x5c
,
0x35
,
0x82
,
0x16
,
0xb1
,
0x68
,
0xf9
,
0x9b
,
0x38
,
0xc5
,
0x06
,
0x18
,
0x30
,
0x29
,
0x88
,
0xb2
,
0x24
,
0xfc
,
0x9e
,
0x67
,
0xe1
,
0x8d
,
0x3c
,
0x7d
,
0x97
,
0x55
,
0xb2
,
0x00
,
0x8e
,
0x68
,
0xb0
,
0x66
,
0x9e
,
0x6c
,
0xab
,
0x4a
,
0x11
,
0xfc
,
0x61
,
0xc1
,
0x40
,
0x9f
,
0x31
,
0x79
,
0x06
,
0xee
,
0x6d
,
0x98
,
0x2a
,
0x90
,
0xfe
,
0xf4
,
0xa0
,
0x3a
,
0x3a
,
0x91
,
0x02
,
0x93
,
0x36
,
0x13
,
0x9b
,
0xdd
,
0xc4
,
0x76
,
0x02
,
0x5e
,
0x21
,
0x8b
,
0xef
,
0xe0
,
0xb9
,
0x29
,
0x09
,
0x8b
,
0xc3
,
0xc3
,
0x68
,
0xab
,
0x31
,
0xa3
,
0x20
,
0x70
,
0xad
,
0xc2
,
0x62
,
0x79
,
0x8b
,
0xb8
,
0x5c
,
0x89
,
0xab
,
0x52
,
0x04
,
0x7f
,
0x21
,
0x2e
,
0xd9
,
0x32
,
0xff
,
0x0d
,
0xd7
,
0x09
,
0x78
,
0xbf
,
0xc6
,
0x69
,
0xca
,
0x33
,
0x05
,
0x4b
,
0x49
,
0x8d
,
0xda
,
0x38
,
0xad
,
0xda
,
0x9c
,
0x80
,
0x27
,
0x1b
,
0x40
,
0xdd
,
0x27
,
0x25
,
0x91
,
0xe7
,
0x70
,
0x28
,
0xbf
,
0x5e
,
0x35
,
0xab
,
0xda
,
0xd2
,
0x06
,
0x2f
,
0xa1
,
0xaf
,
0x2e
,
0x52
,
0xc7
,
0x01
,
0x53
,
0xe8
,
0x6f
,
0xd6
,
0x71
,
0x5a
,
0x28
,
0x54
,
0x2e
,
0xd3
,
0x62
,
0xf0
,
0x9b
,
0x0d
,
0x4f
,
0x17
,
0xb3
,
0x9f
,
0xc2
,
0x15
,
0xbf
,
0x58
,
0x16
,
0xf1
,
0x3a
,
0x25
,
0x5f
,
0x81
,
0x8b
,
0xb7
,
0x19
,
0xd9
,
0xc2
,
0x9f
,
0x92
,
0x2a
,
0x49
,
0xe1
,
0x73
,
0x2d
,
0x2c
,
0xf3
,
0x27
,
0x4c
,
0xba
,
0x90
,
0x73
,
0x18
,
0x2c
,
0xd7
,
0x69
,
0x11
,
0xa7
,
0x25
,
0xc7
,
0xb8
,
0xfe
,
0xf4
,
0x93
,
0x86
,
0xfb
,
0x8f
,
0xca
,
0x38
,
0x7f
,
0xc2
,
0x2a
,
0x47
,
0xf2
,
0x02
,
0x7a
,
0xe2
,
0x36
,
0x60
,
0x11
,
0xfc
,
0xe9
,
0x71
,
0x63
,
0xc1
,
0x55
,
0x19
,
0x8b
,
0xf0
,
0xe8
,
0x20
,
0x90
,
0xdc
,
0x95
,
0x3c
,
0x93
,
0xe7
,
0xd5
,
0x46
,
0x72
,
0x25
,
0x2c
,
0x02
,
0x09
,
0xba
,
0x88
,
0xa0
,
0xe2
,
0xf2
,
0x63
,
0x7d
,
0xda
,
0x41
,
0x45
,
0x57
,
0x89
,
0xa0
,
0xc2
,
0x81
,
0x1c
,
0x82
,
0x5d
,
0x6c
,
0xf1
,
0xaa
,
0xbb
,
0xcc
,
0x2e
,
0xb6
,
0xb3
,
0xbe
,
0x62
,
0xab
,
0xe0
,
0x02
,
0x7c
,
0x23
,
0xc7
,
0x9a
,
0xc5
,
0x2c
,
0x93
,
0xc5
,
0x1a
,
0xa4
,
0x63
,
0xb7
,
0x48
,
0x27
,
0x98
,
0xc0
,
0x61
,
0x33
,
0xef
,
0x2e
,
0xee
,
0x0d
,
0x4e
,
0x01
,
0xea
,
0x84
,
0x3b
,
0xbd
,
0xbe
,
0xd0
,
0x90
,
0x30
,
0xd9
,
0x4e
,
0xb7
,
0x5f
,
0x74
,
0x30
,
0x91
,
0x68
,
0x27
,
0xdd
,
0x57
,
0xd4
,
0x60
,
0x1b
,
0xd4
,
0x50
,
0xa7
,
0xe9
,
0x98
,
0x69
,
0x1a
,
0x77
,
0xab
,
0x37
,
0x76
,
0x8c
,
0xbb
,
0x15
,
0xdc
,
0xc1
,
0x33
,
0x04
,
0x23
,
0x37
,
0x7c
,
0x15
,
0xe7
,
0xc5
,
0x6c
,
0x2b
,
0xb9
,
0xe7
,
0x22
,
0x8d
,
0x16
,
0x15
,
0xfd
,
0xd6
,
0xb3
,
0xc5
,
0x6a
,
0xcf
,
0x96
,
0xee
,
0xfa
,
0xd5
,
0x4c
,
0xec
,
0x18
,
0x4c
,
0x1c
,
0xbc
,
0xd6
,
0x0d
,
0xca
,
0xf8
,
0x72
,
0x9d
,
0x45
,
0x7b
,
0xcf
,
0xb3
,
0xdd
,
0x51
,
0x2f
,
0xe0
,
0x58
,
0x46
,
0x45
,
0x42
,
0x7f
,
0x24
,
0x74
,
0x15
,
0xc2
,
0x36
,
0x43
,
0xfc
,
0x00
,
0x07
,
0x26
,
0xb0
,
0x9c
,
0x7c
,
0x23
,
0x86
,
0x0e
,
0x7e
,
0x2a
,
0x86
,
0xf8
,
0xa8
,
0xd1
,
0x87
,
0xd2
,
0x8d
,
0x69
,
0x9f
,
0x60
,
0x0e
,
0xe4
,
0x01
,
0x84
,
0x9c
,
0x4c
,
0xdb
,
0x41
,
0x68
,
0x23
,
0x88
,
0xe1
,
0x5b
,
0x47
,
0x7a
,
0x0f
,
0x23
,
0xe3
,
0x54
,
0x2e
,
0xd3
,
0x77
,
0xeb
,
0xce
,
0x54
,
0x08
,
0xf4
,
0xc4
,
0x59
,
0x2a
,
0x72
,
0xc2
,
0x6f
,
0xa3
,
0x72
,
0xce
,
0xee
,
0xca
,
0xf5
,
0xcc
,
0xb4
,
0xcf
,
0xc1
,
0x67
,
0x7c
,
0x93
,
0xa8
,
0xcd
,
0xc8
,
0x29
,
0xf4
,
0x44
,
0x68
,
0x45
,
0x17
,
0x47
,
0x1a
,
0xac
,
0x7e
,
0x7e
,
0x30
,
0xb4
,
0x06
,
0x5f
,
0xc3
,
0x51
,
0x0b
,
0x21
,
0x92
,
0x92
,
0x04
,
0x25
,
0x33
,
0x1d
,
0x32
,
0x2d
,
0x06
,
0x2f
,
0x61
,
0x64
,
0x6c
,
0x21
,
0xba
,
0x8c
,
0x3c
,
0x07
,
0x57
,
0x58
,
0x75
,
0x51
,
0x1e
,
0xee
,
0x23
,
0xcd
,
0xc1
,
0x0c
,
0x88
,
0xb1
,
0xd1
,
0x6c
,
0xcb
,
0xb0
,
0xcd
,
0xf7
,
0xba
,
0x14
,
0xc1
,
0x3f
,
0x16
,
0x10
,
0x63
,
0xff
,
0xc7
,
0x82
,
0x74
,
0x35
,
0xde
,
0x8b
,
0x6a
,
0xaa
,
0x4a
,
0xaa
,
0x7b
,
0xf0
,
0x04
,
0xd1
,
0x63
,
0xb6
,
0x31
,
0xf1
,
0x7b
,
0xed
,
0x89
,
0xbf
,
0xfb
,
0x3d
,
0x65
,
0xbc
,
0x94
,
0xbc
,
0x47
,
0x5e
,
0x4a
,
0x38
,
0xdd
,
0x8b
,
0x32
,
0x4b
,
0x69
,
0x5f
,
0xce
,
0x43
,
0x29
,
0x05
,
0x7f
,
0xdb
,
0x70
,
0xc0
,
0xf8
,
0x92
,
0xc7
,
0x9b
,
0x42
,
0x9d
,
0xe5
,
0xbe
,
0x19
,
0xea
,
0x66
,
0x72
,
0x8c
,
0x66
,
0xda
,
0xd9
,
0x34
,
0xcd
,
0xe7
,
0x94
,
0xdb
,
0x7e
,
0x4e
,
0x35
,
0x68
,
0xc1
,
0xdb
,
0x41
,
0x0b
,
0xb2
,
0x00
,
0xfd
,
0x16
,
0x15
,
0xd7
,
0x45
,
0x1b
,
0xb4
,
0x8b
,
0x46
,
0xeb
,
0xf2
,
0x0c
,
0x65
,
0x6f
,
0x99
,
0xef
,
0xc6
,
0xea
,
0x01
,
0x05
,
0x9d
,
0x0f
,
0x28
,
0xdf
,
0x6c
,
0x08
,
0xa4
,
0xa0
,
0x6b
,
0xf9
,
0xc6
,
0x65
,
0xfc
,
0xee
,
0xff
,
0x0c
,
0x07
,
0x72
,
0x04
,
0xce
,
0x3b
,
0xae
,
0x79
,
0x56
,
0x7c
,
0x06
,
0xdf
,
0xc3
,
0x68
,
0x31
,
0xd3
,
0xa3
,
0x42
,
0x06
,
0xee
,
0x3a
,
0x00
,
0xb5
,
0xd8
,
0xae
,
0x17
,
0x7f
,
0x27
,
0x66
,
0xc3
,
0x15
,
0xbe
,
0x2a
,
0xf7
,
0x5b
,
0xf8
,
0xad
,
0x98
,
0x16
,
0x78
,
0x45
,
0xf6
,
0x5a
,
0xf7
,
0xd6
,
0xc3
,
0x5f
,
0x8c
,
0xf3
,
0x7f
,
0x03
,
0x00
,
0x00
,
0xff
,
0xff
,
0xb4
,
0x58
,
0xec
,
0xbf
,
0x75
,
0x0c
,
0x00
,
0x00
,
// 1054 bytes of a gzipped FileDescriptorProto
0x1f
,
0x8b
,
0x08
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x02
,
0xff
,
0x9c
,
0x17
,
0x4b
,
0x8f
,
0xdb
,
0x44
,
0xb8
,
0xb6
,
0xe3
,
0x3c
,
0x3e
,
0x77
,
0x93
,
0xed
,
0x00
,
0xab
,
0x11
,
0x42
,
0x28
,
0x72
,
0x97
,
0x36
,
0x20
,
0xd8
,
0x43
,
0x56
,
0x02
,
0x55
,
0x48
,
0x48
,
0x09
,
0x07
,
0xb2
,
0x52
,
0x85
,
0xb2
,
0xb3
,
0x95
,
0x7a
,
0x76
,
0xe3
,
0xe9
,
0xd6
,
0xd4
,
0x6b
,
0x67
,
0xfd
,
0xd8
,
0x36
,
0x57
,
0x0e
,
0xdc
,
0xf8
,
0x15
,
0x1c
,
0xf8
,
0x63
,
0xfc
,
0x10
,
0x34
,
0xdf
,
0xcc
,
0xd8
,
0x63
,
0x6f
,
0xac
,
0x25
,
0xdc
,
0xfc
,
0x3d
,
0xe6
,
0x7b
,
0xbf
,
0x0c
,
0x93
,
0x6d
,
0xfa
,
0x9e
,
0x67
,
0x6f
,
0xca
,
0x38
,
0x3e
,
0xdb
,
0x66
,
0x69
,
0x91
,
0x12
,
0xb7
,
0xd8
,
0x6d
,
0x79
,
0xee
,
0xff
,
0xd9
,
0x83
,
0xd1
,
0x5a
,
0x90
,
0x96
,
0x65
,
0x1c
,
0x93
,
0x13
,
0xe8
,
0x5f
,
0x07
,
0x37
,
0xfc
,
0x22
,
0xa4
,
0xd6
,
0xd4
,
0x9a
,
0x8d
,
0x98
,
0x82
,
0x04
,
0x3e
,
0x2f
,
0x82
,
0xa2
,
0xcc
,
0xa9
,
0x3d
,
0xb5
,
0x66
,
0x2e
,
0x53
,
0x10
,
0xf9
,
0x02
,
0x46
,
0x79
,
0x11
,
0x64
,
0xc5
,
0xab
,
0xe8
,
0x86
,
0x53
,
0x67
,
0x6a
,
0xcd
,
0x1c
,
0x56
,
0x23
,
0xc8
,
0x14
,
0x3c
,
0x09
,
0x7c
,
0x5c
,
0x05
,
0xf9
,
0x3b
,
0xda
,
0x43
,
0x91
,
0x26
,
0x8a
,
0x7c
,
0x0a
,
0xee
,
0x5d
,
0x10
,
0x97
,
0x9c
,
0xba
,
0xf8
,
0x56
,
0x02
,
0xe4
,
0x14
,
0x5c
,
0xb4
,
0x96
,
0xf6
,
0xa7
,
0xd6
,
0xcc
,
0x9b
,
0x8f
,
0xcf
,
0xd0
,
0xd4
,
0xb3
,
0xf5
,
0x12
,
0x0d
,
0x65
,
0x92
,
0x48
,
0xbe
,
0x86
,
0xc1
,
0x36
,
0x0e
,
0x76
,
0x3c
,
0xcb
,
0xe9
,
0x60
,
0xea
,
0xcc
,
0xbc
,
0xf9
,
0xa4
,
0xe6
,
0x43
,
0x3c
,
0xd3
,
0x74
,
0x61
,
0xa6
,
0xfc
,
0xfc
,
0xb5
,
0xbc
,
0xa1
,
0x43
,
0xf4
,
0xa0
,
0x46
,
0x08
,
0x41
,
0x19
,
0xcf
,
0xcb
,
0xb8
,
0xc8
,
0xe9
,
0xa8
,
0x25
,
0x88
,
0x21
,
0x9e
,
0x69
,
0xba
,
0xb0
,
0x37
,
0x4a
,
0x42
,
0xfe
,
0x91
,
0x82
,
0xb4
,
0x17
,
0x01
,
0x14
,
0x9f
,
0xf1
,
0xbb
,
0x0b
,
0xa4
,
0x78
,
0x32
,
0x0a
,
0x15
,
0x82
,
0x7c
,
0x0e
,
0xc3
,
0xdb
,
0x32
,
0x92
,
0x21
,
0x7a
,
0x8c
,
0xc4
,
0x0a
,
0x26
,
0x5f
,
0x02
,
0xe0
,
0xb7
,
0x0c
,
0xd0
,
0x11
,
0x06
,
0xc8
,
0xc0
,
0x08
,
0x7a
,
0xc8
,
0x83
,
0x98
,
0x67
,
0x8b
,
0x30
,
0xcc
,
0xe8
,
0x58
,
0xd2
,
0x6b
,
0x8c
,
0xd0
,
0x1c
,
0xe5
,
0xaf
,
0x83
,
0xa8
,
0x88
,
0x92
,
0x6b
,
0x3a
,
0x99
,
0x5a
,
0xb3
,
0x21
,
0xab
,
0x11
,
0xca
,
0xae
,
0x2b
,
0x99
,
0xb8
,
0x63
,
0xe5
,
0xb6
,
0x46
,
0x08
,
0x5f
,
0xb2
,
0xb4
,
0x4c
,
0x42
,
0xfa
,
0x04
,
0x29
,
0x12
,
0xf0
,
0x7f
,
0xb7
,
0xa0
,
0xbf
,
0x5e
,
0xae
,
0x82
,
0x24
,
0x14
,
0x0c
,
0x9b
,
0x20
,
0x0b
,
0x73
,
0x6a
,
0x4d
,
0x1d
,
0xc1
,
0x80
,
0x80
,
0x28
,
0x05
,
0x19
,
0x0d
,
0x5d
,
0x0a
,
0x12
,
0x22
,
0x14
,
0x06
,
0x41
,
0x18
,
0x66
,
0x3c
,
0xcf
,
0xb1
,
0x10
,
0x46
,
0x4c
,
0x83
,
0x18
,
0xb4
,
0xfc
,
0x75
,
0x94
,
0x60
,
0x01
,
0x0c
,
0x99
,
0x04
,
0x44
,
0x58
,
0x62
,
0x7e
,
0xc7
,
0xb3
,
0xe0
,
0x5a
,
0x66
,
0xdf
,
0x65
,
0x15
,
0xec
,
0x7f
,
0x80
,
0xa1
,
0x4e
,
0x22
,
0x79
,
0x0a
,
0xee
,
0xbb
,
0x20
,
0x51
,
0x56
,
0x78
,
0xf3
,
0xa3
,
0x2a
,
0x37
,
0xc2
,
0x46
,
0x26
,
0x69
,
0xa6
,
0x72
,
0xbb
,
0xa9
,
0xfc
,
0x04
,
0xfa
,
0x85
,
0x8c
,
0xae
,
0x2c
,
0x4f
,
0x05
,
0xa1
,
0xf7
,
0x3c
,
0x08
,
0x77
,
0xda
,
0x28
,
0x04
,
0xfc
,
0xbf
,
0x2c
,
0xa1
,
0x59
,
0x66
,
0xfd
,
0xbf
,
0x69
,
0x3e
,
0x81
,
0xfe
,
0x87
,
0x28
,
0x49
,
0x78
,
0xa6
,
0x14
,
0x2b
,
0xa8
,
0xe1
,
0x9e
,
0xd3
,
0x74
,
0x4f
,
0xbc
,
0x91
,
0x39
,
0x54
,
0x2d
,
0xa1
,
0x20
,
0xf2
,
0x0c
,
0xc6
,
0xf2
,
0xeb
,
0x65
,
0x33
,
0x30
,
0x2d
,
0xac
,
0xff
,
0x02
,
0x06
,
0xaa
,
0x17
,
0x3a
,
0x72
,
0x44
,
0x61
,
0xb0
,
0x4d
,
0xa3
,
0xa4
,
0x50
,
0x56
,
0xb9
,
0x4c
,
0x83
,
0xfe
,
0x1f
,
0x36
,
0x3c
,
0x5e
,
0x2f
,
0x7f
,
0x09
,
0x6e
,
0xf8
,
0x62
,
0x53
,
0x44
,
0x69
,
0x42
,
0xbe
,
0x01
,
0x17
,
0x1b
,
0x12
,
0x1b
,
0xde
,
0x9b
,
0x93
,
0xca
,
0x49
,
0xc1
,
0x73
,
0x25
,
0x28
,
0xab
,
0x47
,
0x4c
,
0xb2
,
0x90
,
0x73
,
0x18
,
0x6e
,
0xd2
,
0xa4
,
0x88
,
0x92
,
0x92
,
0xa3
,
0x5c
,
0x6f
,
0xfe
,
0x59
,
0x83
,
0xfd
,
0x67
,
0x45
,
0x5c
,
0x3d
,
0x62
,
0x15
,
0x23
,
0x79
,
0x0e
,
0x3d
,
0x51
,
0xd0
,
0x18
,
0x04
,
0x6f
,
0xfe
,
0xa4
,
0xf1
,
0xe0
,
0xb2
,
0x8c
,
0x84
,
0x78
,
0x64
,
0x10
,
0x96
,
0xdc
,
0x96
,
0x3c
,
0x93
,
0x19
,
0x69
,
0x5b
,
0x72
,
0x29
,
0x28
,
0xc2
,
0x12
,
0x64
,
0x11
,
0x42
,
0x45
,
0xff
,
0x62
,
0x7c
,
0xda
,
0x42
,
0x45
,
0xdd
,
0x08
,
0xa1
,
0x82
,
0x81
,
0x8c
,
0xc1
,
0x2e
,
0x76
,
0xd8
,
0xad
,
0x2e
,
0xb3
,
0x8b
,
0xdd
,
0x72
,
0xa0
,
0x06
,
0x8e
,
0xbf
,
0x00
,
0xcf
,
0xf0
,
0xb1
,
0x1e
,
0x44
,
0x96
,
0x39
,
0x88
,
0x1a
,
0x73
,
0xc3
,
0x6e
,
0xcd
,
0x0d
,
0x7f
,
0x06
,
0xe3
,
0xa6
,
0xdf
,
0x5d
,
0xe3
,
0xd3
,
0x3f
,
0x05
,
0xa8
,
0x1d
,
0xee
,
0xe4
,
0xfa
,
0x4a
,
0x9b
,
0x84
,
0xce
,
0x76
,
0xb2
,
0xfd
,
0xa6
,
0x85
,
0x09
,
0x47
,
0x3b
,
0x27
,
0x76
,
0xd5
,
0xdd
,
0xb6
,
0xd1
,
0xdd
,
0xb5
,
0x9b
,
0x8e
,
0xe9
,
0xa6
,
0xd1
,
0x3d
,
0xbd
,
0xa9
,
0x63
,
0x74
,
0x8f
,
0x7f
,
0x0b
,
0x4f
,
0xd1
,
0x18
,
0xa9
,
0xf0
,
0x65
,
0x94
,
0x17
,
0xcb
,
0x9d
,
0x1c
,
0x1f
,
0x8b
,
0x24
,
0x5c
,
0x57
,
0x13
,
0xb4
,
0x5e
,
0x0f
,
0x56
,
0x7b
,
0x3d
,
0x74
,
0xc7
,
0xaf
,
0x1e
,
0xa6
,
0x8e
,
0x31
,
0x4c
,
0xfd
,
0x57
,
0xba
,
0x40
,
0x19
,
0xdf
,
0xa4
,
0x59
,
0x78
,
0xf0
,
0x4a
,
0xda
,
0x2f
,
0x75
,
0x01
,
0x4f
,
0xa4
,
0x54
,
0x9c
,
0xc9
,
0x0f
,
0x88
,
0xae
,
0x44
,
0xd8
,
0xa6
,
0x88
,
0x9f
,
0xe0
,
0xc8
,
0x34
,
0x2c
,
0x27
,
0xdf
,
0x89
,
0xbd
,
0x81
,
0x9f
,
0x6a
,
0x42
,
0x7c
,
0xd2
,
0xa8
,
0x43
,
0xc9
,
0xc6
,
0x34
,
0x8f
,
0xbf
,
0x02
,
0x72
,
0xcf
,
0x84
,
0x9c
,
0xcc
,
0xdb
,
0x42
,
0x68
,
0x43
,
0x88
,
0xc1
,
0x5b
,
0x4b
,
0x7a
,
0x0f
,
0x13
,
0x23
,
0x2b
,
0x17
,
0xc9
,
0xdb
,
0xb4
,
0xd3
,
0x15
,
0x02
,
0x3d
,
0x91
,
0x4b
,
0x35
,
0x9c
,
0xf0
,
0xdb
,
0x88
,
0x9c
,
0xb3
,
0x3f
,
0x72
,
0x3d
,
0xd3
,
0xed
,
0x73
,
0xf0
,
0x18
,
0xdf
,
0xc6
,
0x4a
,
0x19
,
0x39
,
0x85
,
0x9e
,
0x10
,
0xad
,
0xc6
,
0xc5
,
0xb1
,
0x36
,
0x56
,
0x5f
,
0x10
,
0x0c
,
0xa9
,
0xfe
,
0xb7
,
0x70
,
0xdc
,
0xb2
,
0x10
,
0x87
,
0x92
,
0x34
,
0x4a
,
0x7a
,
0x3a
,
0x62
,
0x1a
,
0xf4
,
0x5f
,
0xc0
,
0xc4
,
0x50
,
0x21
,
0xaa
,
0x8c
,
0x3c
,
0x03
,
0x57
,
0x50
,
0x75
,
0x50
,
0xee
,
0xeb
,
0x91
,
0x64
,
0x7f
,
0x09
,
0xc4
,
0x50
,
0xb4
,
0xdc
,
0x31
,
0x2c
,
0xf3
,
0x83
,
0x9a
,
0xc2
,
0xff
,
0xc7
,
0x02
,
0x62
,
0xe8
,
0x7f
,
0x48
,
0x48
,
0x57
,
0xe1
,
0x3d
,
0xaf
,
0x16
,
0xa3
,
0x1c
,
0x75
,
0xf7
,
0xae
,
0x08
,
0xbd
,
0x29
,
0x1b
,
0x4b
,
0xbb
,
0xd7
,
0x5e
,
0xda
,
0xfb
,
0x4f
,
0x22
,
0xe3
,
0xd8
,
0xe9
,
0x3f
,
0x70
,
0xec
,
0xe0
,
0x82
,
0x2e
,
0xca
,
0x2c
,
0xa1
,
0x03
,
0xb9
,
0xf1
,
0x24
,
0xe4
,
0xff
,
0x6d
,
0xc3
,
0x11
,
0xe3
,
0x1b
,
0x1e
,
0x6d
,
0x0b
,
0x95
,
0xcb
,
0x43
,
0x3d
,
0xd4
,
0xc5
,
0xe4
,
0x18
,
0xc5
,
0xb4
,
0xb7
,
0x68
,
0x9a
,
0x17
,
0x91
,
0xdb
,
0xbe
,
0x88
,
0x1a
,
0x63
,
0xa1
,
0xbf
,
0x67
,
0x2c
,
0xc8
,
0x00
,
0x0c
,
0x5a
,
0xa3
,
0xb8
,
0x0e
,
0xda
,
0xb0
,
0x1d
,
0x34
,
0x5a
,
0x87
,
0x67
,
0x24
,
0x6b
,
0xcb
,
0x3c
,
0xfd
,
0xaa
,
0x1b
,
0x08
,
0x3a
,
0x6f
,
0x20
,
0xcf
,
0x2c
,
0x08
,
0x1c
,
0x41
,
0x57
,
0xf2
,
0x4c
,
0x65
,
0xfc
,
0xf6
,
0xff
,
0x2c
,
0x07
,
0x72
,
0x0c
,
0xce
,
0x5b
,
0xae
,
0xe7
,
0xac
,
0xf8
,
0xf4
,
0x7f
,
0x84
,
0xc9
,
0x7a
,
0xa9
,
0x57
,
0x85
,
0x14
,
0xdc
,
0x95
,
0x00
,
0xf5
,
0xd8
,
0xae
,
0x1f
,
0xff
,
0x20
,
0x76
,
0xc3
,
0x25
,
0x1e
,
0x86
,
0x87
,
0x3d
,
0xfc
,
0x5e
,
0x6c
,
0x0b
,
0x6c
,
0x91
,
0x83
,
0xde
,
0xbd
,
0xe9
,
0xe3
,
0x5f
,
0xc2
,
0xf9
,
0xbf
,
0x01
,
0x00
,
0x00
,
0xff
,
0xff
,
0x22
,
0xb5
,
0x84
,
0x10
,
0x38
,
0x0c
,
0x00
,
0x00
,
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment