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
a811360e
Commit
a811360e
authored
Sep 03, 2019
by
张振华
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add pb.go file
parent
e6a2881c
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
1814 additions
and
0 deletions
+1814
-0
guess.pb.go
plugin/dapp/guess/types/guess.pb.go
+1814
-0
No files found.
plugin/dapp/guess/types/guess.pb.go
0 → 100644
View file @
a811360e
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: guess.proto
/*
Package types is a generated protocol buffer package.
It is generated from these files:
guess.proto
It has these top-level messages:
GuessGame
GuessPlayer
GuessBet
GuessBetStat
GuessBetStatItem
GuessGameAction
GuessGameStart
GuessGameBet
GuessGameStopBet
GuessGameAbort
GuessGamePublish
GuessGameQuery
QueryGuessGameInfo
ReplyGuessGameInfo
QueryGuessGameInfos
ReplyGuessGameInfos
ReceiptGuessGame
UserBet
GuessStartTxReq
GuessBetTxReq
GuessStopBetTxReq
GuessAbortTxReq
GuessPublishTxReq
GuessGameRecord
GuessGameRecords
*/
package
types
import
proto
"github.com/golang/protobuf/proto"
import
fmt
"fmt"
import
math
"math"
import
types2
"github.com/33cn/chain33/types"
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
// GuessGame 竞猜游戏详情
type
GuessGame
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
Status
int32
`protobuf:"varint,2,opt,name=status" json:"status,omitempty"`
PreStatus
int32
`protobuf:"varint,3,opt,name=preStatus" json:"preStatus,omitempty"`
StartTime
int64
`protobuf:"varint,4,opt,name=startTime" json:"startTime,omitempty"`
StartHeight
int64
`protobuf:"varint,5,opt,name=startHeight" json:"startHeight,omitempty"`
StartTxHash
string
`protobuf:"bytes,6,opt,name=startTxHash" json:"startTxHash,omitempty"`
StartIndex
int64
`protobuf:"varint,7,opt,name=startIndex" json:"startIndex,omitempty"`
Topic
string
`protobuf:"bytes,8,opt,name=topic" json:"topic,omitempty"`
Category
string
`protobuf:"bytes,9,opt,name=category" json:"category,omitempty"`
Options
string
`protobuf:"bytes,10,opt,name=options" json:"options,omitempty"`
MaxBetHeight
int64
`protobuf:"varint,11,opt,name=maxBetHeight" json:"maxBetHeight,omitempty"`
MaxBetsOneTime
int64
`protobuf:"varint,12,opt,name=maxBetsOneTime" json:"maxBetsOneTime,omitempty"`
MaxBetsNumber
int64
`protobuf:"varint,13,opt,name=maxBetsNumber" json:"maxBetsNumber,omitempty"`
DevFeeFactor
int64
`protobuf:"varint,14,opt,name=devFeeFactor" json:"devFeeFactor,omitempty"`
DevFeeAddr
string
`protobuf:"bytes,15,opt,name=devFeeAddr" json:"devFeeAddr,omitempty"`
PlatFeeFactor
int64
`protobuf:"varint,16,opt,name=platFeeFactor" json:"platFeeFactor,omitempty"`
PlatFeeAddr
string
`protobuf:"bytes,17,opt,name=platFeeAddr" json:"platFeeAddr,omitempty"`
ExpireHeight
int64
`protobuf:"varint,18,opt,name=expireHeight" json:"expireHeight,omitempty"`
AdminAddr
string
`protobuf:"bytes,19,opt,name=adminAddr" json:"adminAddr,omitempty"`
BetsNumber
int64
`protobuf:"varint,20,opt,name=betsNumber" json:"betsNumber,omitempty"`
Plays
[]
*
GuessPlayer
`protobuf:"bytes,21,rep,name=plays" json:"plays,omitempty"`
Result
string
`protobuf:"bytes,22,opt,name=result" json:"result,omitempty"`
BetStat
*
GuessBetStat
`protobuf:"bytes,23,opt,name=betStat" json:"betStat,omitempty"`
Index
int64
`protobuf:"varint,24,opt,name=index" json:"index,omitempty"`
PreIndex
int64
`protobuf:"varint,25,opt,name=preIndex" json:"preIndex,omitempty"`
DrivenByAdmin
bool
`protobuf:"varint,26,opt,name=drivenByAdmin" json:"drivenByAdmin,omitempty"`
}
func
(
m
*
GuessGame
)
Reset
()
{
*
m
=
GuessGame
{}
}
func
(
m
*
GuessGame
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessGame
)
ProtoMessage
()
{}
func
(
*
GuessGame
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
0
}
}
func
(
m
*
GuessGame
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
GuessGame
)
GetStatus
()
int32
{
if
m
!=
nil
{
return
m
.
Status
}
return
0
}
func
(
m
*
GuessGame
)
GetPreStatus
()
int32
{
if
m
!=
nil
{
return
m
.
PreStatus
}
return
0
}
func
(
m
*
GuessGame
)
GetStartTime
()
int64
{
if
m
!=
nil
{
return
m
.
StartTime
}
return
0
}
func
(
m
*
GuessGame
)
GetStartHeight
()
int64
{
if
m
!=
nil
{
return
m
.
StartHeight
}
return
0
}
func
(
m
*
GuessGame
)
GetStartTxHash
()
string
{
if
m
!=
nil
{
return
m
.
StartTxHash
}
return
""
}
func
(
m
*
GuessGame
)
GetStartIndex
()
int64
{
if
m
!=
nil
{
return
m
.
StartIndex
}
return
0
}
func
(
m
*
GuessGame
)
GetTopic
()
string
{
if
m
!=
nil
{
return
m
.
Topic
}
return
""
}
func
(
m
*
GuessGame
)
GetCategory
()
string
{
if
m
!=
nil
{
return
m
.
Category
}
return
""
}
func
(
m
*
GuessGame
)
GetOptions
()
string
{
if
m
!=
nil
{
return
m
.
Options
}
return
""
}
func
(
m
*
GuessGame
)
GetMaxBetHeight
()
int64
{
if
m
!=
nil
{
return
m
.
MaxBetHeight
}
return
0
}
func
(
m
*
GuessGame
)
GetMaxBetsOneTime
()
int64
{
if
m
!=
nil
{
return
m
.
MaxBetsOneTime
}
return
0
}
func
(
m
*
GuessGame
)
GetMaxBetsNumber
()
int64
{
if
m
!=
nil
{
return
m
.
MaxBetsNumber
}
return
0
}
func
(
m
*
GuessGame
)
GetDevFeeFactor
()
int64
{
if
m
!=
nil
{
return
m
.
DevFeeFactor
}
return
0
}
func
(
m
*
GuessGame
)
GetDevFeeAddr
()
string
{
if
m
!=
nil
{
return
m
.
DevFeeAddr
}
return
""
}
func
(
m
*
GuessGame
)
GetPlatFeeFactor
()
int64
{
if
m
!=
nil
{
return
m
.
PlatFeeFactor
}
return
0
}
func
(
m
*
GuessGame
)
GetPlatFeeAddr
()
string
{
if
m
!=
nil
{
return
m
.
PlatFeeAddr
}
return
""
}
func
(
m
*
GuessGame
)
GetExpireHeight
()
int64
{
if
m
!=
nil
{
return
m
.
ExpireHeight
}
return
0
}
func
(
m
*
GuessGame
)
GetAdminAddr
()
string
{
if
m
!=
nil
{
return
m
.
AdminAddr
}
return
""
}
func
(
m
*
GuessGame
)
GetBetsNumber
()
int64
{
if
m
!=
nil
{
return
m
.
BetsNumber
}
return
0
}
func
(
m
*
GuessGame
)
GetPlays
()
[]
*
GuessPlayer
{
if
m
!=
nil
{
return
m
.
Plays
}
return
nil
}
func
(
m
*
GuessGame
)
GetResult
()
string
{
if
m
!=
nil
{
return
m
.
Result
}
return
""
}
func
(
m
*
GuessGame
)
GetBetStat
()
*
GuessBetStat
{
if
m
!=
nil
{
return
m
.
BetStat
}
return
nil
}
func
(
m
*
GuessGame
)
GetIndex
()
int64
{
if
m
!=
nil
{
return
m
.
Index
}
return
0
}
func
(
m
*
GuessGame
)
GetPreIndex
()
int64
{
if
m
!=
nil
{
return
m
.
PreIndex
}
return
0
}
func
(
m
*
GuessGame
)
GetDrivenByAdmin
()
bool
{
if
m
!=
nil
{
return
m
.
DrivenByAdmin
}
return
false
}
// GuessPlayer 竞猜玩家信息
type
GuessPlayer
struct
{
Addr
string
`protobuf:"bytes,1,opt,name=addr" json:"addr,omitempty"`
Bet
*
GuessBet
`protobuf:"bytes,2,opt,name=bet" json:"bet,omitempty"`
}
func
(
m
*
GuessPlayer
)
Reset
()
{
*
m
=
GuessPlayer
{}
}
func
(
m
*
GuessPlayer
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessPlayer
)
ProtoMessage
()
{}
func
(
*
GuessPlayer
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
1
}
}
func
(
m
*
GuessPlayer
)
GetAddr
()
string
{
if
m
!=
nil
{
return
m
.
Addr
}
return
""
}
func
(
m
*
GuessPlayer
)
GetBet
()
*
GuessBet
{
if
m
!=
nil
{
return
m
.
Bet
}
return
nil
}
// GuessBet 竞猜下注信息
type
GuessBet
struct
{
Option
string
`protobuf:"bytes,1,opt,name=option" json:"option,omitempty"`
BetsNumber
int64
`protobuf:"varint,2,opt,name=betsNumber" json:"betsNumber,omitempty"`
IsWinner
bool
`protobuf:"varint,3,opt,name=isWinner" json:"isWinner,omitempty"`
Profit
int64
`protobuf:"varint,4,opt,name=profit" json:"profit,omitempty"`
Index
int64
`protobuf:"varint,5,opt,name=index" json:"index,omitempty"`
PreIndex
int64
`protobuf:"varint,6,opt,name=preIndex" json:"preIndex,omitempty"`
}
func
(
m
*
GuessBet
)
Reset
()
{
*
m
=
GuessBet
{}
}
func
(
m
*
GuessBet
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessBet
)
ProtoMessage
()
{}
func
(
*
GuessBet
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
2
}
}
func
(
m
*
GuessBet
)
GetOption
()
string
{
if
m
!=
nil
{
return
m
.
Option
}
return
""
}
func
(
m
*
GuessBet
)
GetBetsNumber
()
int64
{
if
m
!=
nil
{
return
m
.
BetsNumber
}
return
0
}
func
(
m
*
GuessBet
)
GetIsWinner
()
bool
{
if
m
!=
nil
{
return
m
.
IsWinner
}
return
false
}
func
(
m
*
GuessBet
)
GetProfit
()
int64
{
if
m
!=
nil
{
return
m
.
Profit
}
return
0
}
func
(
m
*
GuessBet
)
GetIndex
()
int64
{
if
m
!=
nil
{
return
m
.
Index
}
return
0
}
func
(
m
*
GuessBet
)
GetPreIndex
()
int64
{
if
m
!=
nil
{
return
m
.
PreIndex
}
return
0
}
// GuessBetStat 竞猜下注统计信息
type
GuessBetStat
struct
{
TotalBetTimes
int64
`protobuf:"varint,1,opt,name=totalBetTimes" json:"totalBetTimes,omitempty"`
TotalBetsNumber
int64
`protobuf:"varint,2,opt,name=totalBetsNumber" json:"totalBetsNumber,omitempty"`
Items
[]
*
GuessBetStatItem
`protobuf:"bytes,3,rep,name=items" json:"items,omitempty"`
}
func
(
m
*
GuessBetStat
)
Reset
()
{
*
m
=
GuessBetStat
{}
}
func
(
m
*
GuessBetStat
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessBetStat
)
ProtoMessage
()
{}
func
(
*
GuessBetStat
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
3
}
}
func
(
m
*
GuessBetStat
)
GetTotalBetTimes
()
int64
{
if
m
!=
nil
{
return
m
.
TotalBetTimes
}
return
0
}
func
(
m
*
GuessBetStat
)
GetTotalBetsNumber
()
int64
{
if
m
!=
nil
{
return
m
.
TotalBetsNumber
}
return
0
}
func
(
m
*
GuessBetStat
)
GetItems
()
[]
*
GuessBetStatItem
{
if
m
!=
nil
{
return
m
.
Items
}
return
nil
}
// GuessBetStat 竞猜下注子选项统计信息
type
GuessBetStatItem
struct
{
Option
string
`protobuf:"bytes,1,opt,name=option" json:"option,omitempty"`
BetsNumber
int64
`protobuf:"varint,2,opt,name=betsNumber" json:"betsNumber,omitempty"`
BetsTimes
int64
`protobuf:"varint,3,opt,name=betsTimes" json:"betsTimes,omitempty"`
}
func
(
m
*
GuessBetStatItem
)
Reset
()
{
*
m
=
GuessBetStatItem
{}
}
func
(
m
*
GuessBetStatItem
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessBetStatItem
)
ProtoMessage
()
{}
func
(
*
GuessBetStatItem
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
4
}
}
func
(
m
*
GuessBetStatItem
)
GetOption
()
string
{
if
m
!=
nil
{
return
m
.
Option
}
return
""
}
func
(
m
*
GuessBetStatItem
)
GetBetsNumber
()
int64
{
if
m
!=
nil
{
return
m
.
BetsNumber
}
return
0
}
func
(
m
*
GuessBetStatItem
)
GetBetsTimes
()
int64
{
if
m
!=
nil
{
return
m
.
BetsTimes
}
return
0
}
// GuessGameAction 竞猜游戏动作
type
GuessGameAction
struct
{
// Types that are valid to be assigned to Value:
// *GuessGameAction_Start
// *GuessGameAction_Bet
// *GuessGameAction_StopBet
// *GuessGameAction_Abort
// *GuessGameAction_Publish
// *GuessGameAction_Query
Value
isGuessGameAction_Value
`protobuf_oneof:"value"`
Ty
int32
`protobuf:"varint,7,opt,name=ty" json:"ty,omitempty"`
}
func
(
m
*
GuessGameAction
)
Reset
()
{
*
m
=
GuessGameAction
{}
}
func
(
m
*
GuessGameAction
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessGameAction
)
ProtoMessage
()
{}
func
(
*
GuessGameAction
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
5
}
}
type
isGuessGameAction_Value
interface
{
isGuessGameAction_Value
()
}
type
GuessGameAction_Start
struct
{
Start
*
GuessGameStart
`protobuf:"bytes,1,opt,name=start,oneof"`
}
type
GuessGameAction_Bet
struct
{
Bet
*
GuessGameBet
`protobuf:"bytes,2,opt,name=bet,oneof"`
}
type
GuessGameAction_StopBet
struct
{
StopBet
*
GuessGameStopBet
`protobuf:"bytes,3,opt,name=stopBet,oneof"`
}
type
GuessGameAction_Abort
struct
{
Abort
*
GuessGameAbort
`protobuf:"bytes,4,opt,name=abort,oneof"`
}
type
GuessGameAction_Publish
struct
{
Publish
*
GuessGamePublish
`protobuf:"bytes,5,opt,name=publish,oneof"`
}
type
GuessGameAction_Query
struct
{
Query
*
GuessGameQuery
`protobuf:"bytes,6,opt,name=query,oneof"`
}
func
(
*
GuessGameAction_Start
)
isGuessGameAction_Value
()
{}
func
(
*
GuessGameAction_Bet
)
isGuessGameAction_Value
()
{}
func
(
*
GuessGameAction_StopBet
)
isGuessGameAction_Value
()
{}
func
(
*
GuessGameAction_Abort
)
isGuessGameAction_Value
()
{}
func
(
*
GuessGameAction_Publish
)
isGuessGameAction_Value
()
{}
func
(
*
GuessGameAction_Query
)
isGuessGameAction_Value
()
{}
func
(
m
*
GuessGameAction
)
GetValue
()
isGuessGameAction_Value
{
if
m
!=
nil
{
return
m
.
Value
}
return
nil
}
func
(
m
*
GuessGameAction
)
GetStart
()
*
GuessGameStart
{
if
x
,
ok
:=
m
.
GetValue
()
.
(
*
GuessGameAction_Start
);
ok
{
return
x
.
Start
}
return
nil
}
func
(
m
*
GuessGameAction
)
GetBet
()
*
GuessGameBet
{
if
x
,
ok
:=
m
.
GetValue
()
.
(
*
GuessGameAction_Bet
);
ok
{
return
x
.
Bet
}
return
nil
}
func
(
m
*
GuessGameAction
)
GetStopBet
()
*
GuessGameStopBet
{
if
x
,
ok
:=
m
.
GetValue
()
.
(
*
GuessGameAction_StopBet
);
ok
{
return
x
.
StopBet
}
return
nil
}
func
(
m
*
GuessGameAction
)
GetAbort
()
*
GuessGameAbort
{
if
x
,
ok
:=
m
.
GetValue
()
.
(
*
GuessGameAction_Abort
);
ok
{
return
x
.
Abort
}
return
nil
}
func
(
m
*
GuessGameAction
)
GetPublish
()
*
GuessGamePublish
{
if
x
,
ok
:=
m
.
GetValue
()
.
(
*
GuessGameAction_Publish
);
ok
{
return
x
.
Publish
}
return
nil
}
func
(
m
*
GuessGameAction
)
GetQuery
()
*
GuessGameQuery
{
if
x
,
ok
:=
m
.
GetValue
()
.
(
*
GuessGameAction_Query
);
ok
{
return
x
.
Query
}
return
nil
}
func
(
m
*
GuessGameAction
)
GetTy
()
int32
{
if
m
!=
nil
{
return
m
.
Ty
}
return
0
}
// XXX_OneofFuncs is for the internal use of the proto package.
func
(
*
GuessGameAction
)
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
_GuessGameAction_OneofMarshaler
,
_GuessGameAction_OneofUnmarshaler
,
_GuessGameAction_OneofSizer
,
[]
interface
{}{
(
*
GuessGameAction_Start
)(
nil
),
(
*
GuessGameAction_Bet
)(
nil
),
(
*
GuessGameAction_StopBet
)(
nil
),
(
*
GuessGameAction_Abort
)(
nil
),
(
*
GuessGameAction_Publish
)(
nil
),
(
*
GuessGameAction_Query
)(
nil
),
}
}
func
_GuessGameAction_OneofMarshaler
(
msg
proto
.
Message
,
b
*
proto
.
Buffer
)
error
{
m
:=
msg
.
(
*
GuessGameAction
)
// value
switch
x
:=
m
.
Value
.
(
type
)
{
case
*
GuessGameAction_Start
:
b
.
EncodeVarint
(
1
<<
3
|
proto
.
WireBytes
)
if
err
:=
b
.
EncodeMessage
(
x
.
Start
);
err
!=
nil
{
return
err
}
case
*
GuessGameAction_Bet
:
b
.
EncodeVarint
(
2
<<
3
|
proto
.
WireBytes
)
if
err
:=
b
.
EncodeMessage
(
x
.
Bet
);
err
!=
nil
{
return
err
}
case
*
GuessGameAction_StopBet
:
b
.
EncodeVarint
(
3
<<
3
|
proto
.
WireBytes
)
if
err
:=
b
.
EncodeMessage
(
x
.
StopBet
);
err
!=
nil
{
return
err
}
case
*
GuessGameAction_Abort
:
b
.
EncodeVarint
(
4
<<
3
|
proto
.
WireBytes
)
if
err
:=
b
.
EncodeMessage
(
x
.
Abort
);
err
!=
nil
{
return
err
}
case
*
GuessGameAction_Publish
:
b
.
EncodeVarint
(
5
<<
3
|
proto
.
WireBytes
)
if
err
:=
b
.
EncodeMessage
(
x
.
Publish
);
err
!=
nil
{
return
err
}
case
*
GuessGameAction_Query
:
b
.
EncodeVarint
(
6
<<
3
|
proto
.
WireBytes
)
if
err
:=
b
.
EncodeMessage
(
x
.
Query
);
err
!=
nil
{
return
err
}
case
nil
:
default
:
return
fmt
.
Errorf
(
"GuessGameAction.Value has unexpected type %T"
,
x
)
}
return
nil
}
func
_GuessGameAction_OneofUnmarshaler
(
msg
proto
.
Message
,
tag
,
wire
int
,
b
*
proto
.
Buffer
)
(
bool
,
error
)
{
m
:=
msg
.
(
*
GuessGameAction
)
switch
tag
{
case
1
:
// value.start
if
wire
!=
proto
.
WireBytes
{
return
true
,
proto
.
ErrInternalBadWireType
}
msg
:=
new
(
GuessGameStart
)
err
:=
b
.
DecodeMessage
(
msg
)
m
.
Value
=
&
GuessGameAction_Start
{
msg
}
return
true
,
err
case
2
:
// value.bet
if
wire
!=
proto
.
WireBytes
{
return
true
,
proto
.
ErrInternalBadWireType
}
msg
:=
new
(
GuessGameBet
)
err
:=
b
.
DecodeMessage
(
msg
)
m
.
Value
=
&
GuessGameAction_Bet
{
msg
}
return
true
,
err
case
3
:
// value.stopBet
if
wire
!=
proto
.
WireBytes
{
return
true
,
proto
.
ErrInternalBadWireType
}
msg
:=
new
(
GuessGameStopBet
)
err
:=
b
.
DecodeMessage
(
msg
)
m
.
Value
=
&
GuessGameAction_StopBet
{
msg
}
return
true
,
err
case
4
:
// value.abort
if
wire
!=
proto
.
WireBytes
{
return
true
,
proto
.
ErrInternalBadWireType
}
msg
:=
new
(
GuessGameAbort
)
err
:=
b
.
DecodeMessage
(
msg
)
m
.
Value
=
&
GuessGameAction_Abort
{
msg
}
return
true
,
err
case
5
:
// value.publish
if
wire
!=
proto
.
WireBytes
{
return
true
,
proto
.
ErrInternalBadWireType
}
msg
:=
new
(
GuessGamePublish
)
err
:=
b
.
DecodeMessage
(
msg
)
m
.
Value
=
&
GuessGameAction_Publish
{
msg
}
return
true
,
err
case
6
:
// value.query
if
wire
!=
proto
.
WireBytes
{
return
true
,
proto
.
ErrInternalBadWireType
}
msg
:=
new
(
GuessGameQuery
)
err
:=
b
.
DecodeMessage
(
msg
)
m
.
Value
=
&
GuessGameAction_Query
{
msg
}
return
true
,
err
default
:
return
false
,
nil
}
}
func
_GuessGameAction_OneofSizer
(
msg
proto
.
Message
)
(
n
int
)
{
m
:=
msg
.
(
*
GuessGameAction
)
// value
switch
x
:=
m
.
Value
.
(
type
)
{
case
*
GuessGameAction_Start
:
s
:=
proto
.
Size
(
x
.
Start
)
n
+=
proto
.
SizeVarint
(
1
<<
3
|
proto
.
WireBytes
)
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
s
case
*
GuessGameAction_Bet
:
s
:=
proto
.
Size
(
x
.
Bet
)
n
+=
proto
.
SizeVarint
(
2
<<
3
|
proto
.
WireBytes
)
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
s
case
*
GuessGameAction_StopBet
:
s
:=
proto
.
Size
(
x
.
StopBet
)
n
+=
proto
.
SizeVarint
(
3
<<
3
|
proto
.
WireBytes
)
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
s
case
*
GuessGameAction_Abort
:
s
:=
proto
.
Size
(
x
.
Abort
)
n
+=
proto
.
SizeVarint
(
4
<<
3
|
proto
.
WireBytes
)
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
s
case
*
GuessGameAction_Publish
:
s
:=
proto
.
Size
(
x
.
Publish
)
n
+=
proto
.
SizeVarint
(
5
<<
3
|
proto
.
WireBytes
)
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
s
case
*
GuessGameAction_Query
:
s
:=
proto
.
Size
(
x
.
Query
)
n
+=
proto
.
SizeVarint
(
6
<<
3
|
proto
.
WireBytes
)
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
s
case
nil
:
default
:
panic
(
fmt
.
Sprintf
(
"proto: unexpected type %T in oneof"
,
x
))
}
return
n
}
// GuessGameStart 游戏创建
type
GuessGameStart
struct
{
Topic
string
`protobuf:"bytes,1,opt,name=topic" json:"topic,omitempty"`
Options
string
`protobuf:"bytes,2,opt,name=options" json:"options,omitempty"`
Category
string
`protobuf:"bytes,3,opt,name=category" json:"category,omitempty"`
MaxBetHeight
int64
`protobuf:"varint,4,opt,name=maxBetHeight" json:"maxBetHeight,omitempty"`
MaxBetsOneTime
int64
`protobuf:"varint,5,opt,name=maxBetsOneTime" json:"maxBetsOneTime,omitempty"`
MaxBetsNumber
int64
`protobuf:"varint,6,opt,name=maxBetsNumber" json:"maxBetsNumber,omitempty"`
DevFeeFactor
int64
`protobuf:"varint,7,opt,name=devFeeFactor" json:"devFeeFactor,omitempty"`
DevFeeAddr
string
`protobuf:"bytes,8,opt,name=devFeeAddr" json:"devFeeAddr,omitempty"`
PlatFeeFactor
int64
`protobuf:"varint,9,opt,name=platFeeFactor" json:"platFeeFactor,omitempty"`
PlatFeeAddr
string
`protobuf:"bytes,10,opt,name=platFeeAddr" json:"platFeeAddr,omitempty"`
ExpireHeight
int64
`protobuf:"varint,11,opt,name=expireHeight" json:"expireHeight,omitempty"`
DrivenByAdmin
bool
`protobuf:"varint,12,opt,name=drivenByAdmin" json:"drivenByAdmin,omitempty"`
}
func
(
m
*
GuessGameStart
)
Reset
()
{
*
m
=
GuessGameStart
{}
}
func
(
m
*
GuessGameStart
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessGameStart
)
ProtoMessage
()
{}
func
(
*
GuessGameStart
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
6
}
}
func
(
m
*
GuessGameStart
)
GetTopic
()
string
{
if
m
!=
nil
{
return
m
.
Topic
}
return
""
}
func
(
m
*
GuessGameStart
)
GetOptions
()
string
{
if
m
!=
nil
{
return
m
.
Options
}
return
""
}
func
(
m
*
GuessGameStart
)
GetCategory
()
string
{
if
m
!=
nil
{
return
m
.
Category
}
return
""
}
func
(
m
*
GuessGameStart
)
GetMaxBetHeight
()
int64
{
if
m
!=
nil
{
return
m
.
MaxBetHeight
}
return
0
}
func
(
m
*
GuessGameStart
)
GetMaxBetsOneTime
()
int64
{
if
m
!=
nil
{
return
m
.
MaxBetsOneTime
}
return
0
}
func
(
m
*
GuessGameStart
)
GetMaxBetsNumber
()
int64
{
if
m
!=
nil
{
return
m
.
MaxBetsNumber
}
return
0
}
func
(
m
*
GuessGameStart
)
GetDevFeeFactor
()
int64
{
if
m
!=
nil
{
return
m
.
DevFeeFactor
}
return
0
}
func
(
m
*
GuessGameStart
)
GetDevFeeAddr
()
string
{
if
m
!=
nil
{
return
m
.
DevFeeAddr
}
return
""
}
func
(
m
*
GuessGameStart
)
GetPlatFeeFactor
()
int64
{
if
m
!=
nil
{
return
m
.
PlatFeeFactor
}
return
0
}
func
(
m
*
GuessGameStart
)
GetPlatFeeAddr
()
string
{
if
m
!=
nil
{
return
m
.
PlatFeeAddr
}
return
""
}
func
(
m
*
GuessGameStart
)
GetExpireHeight
()
int64
{
if
m
!=
nil
{
return
m
.
ExpireHeight
}
return
0
}
func
(
m
*
GuessGameStart
)
GetDrivenByAdmin
()
bool
{
if
m
!=
nil
{
return
m
.
DrivenByAdmin
}
return
false
}
// GuessGameBet 参与游戏下注
type
GuessGameBet
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
Option
string
`protobuf:"bytes,2,opt,name=option" json:"option,omitempty"`
BetsNum
int64
`protobuf:"varint,3,opt,name=betsNum" json:"betsNum,omitempty"`
}
func
(
m
*
GuessGameBet
)
Reset
()
{
*
m
=
GuessGameBet
{}
}
func
(
m
*
GuessGameBet
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessGameBet
)
ProtoMessage
()
{}
func
(
*
GuessGameBet
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
7
}
}
func
(
m
*
GuessGameBet
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
GuessGameBet
)
GetOption
()
string
{
if
m
!=
nil
{
return
m
.
Option
}
return
""
}
func
(
m
*
GuessGameBet
)
GetBetsNum
()
int64
{
if
m
!=
nil
{
return
m
.
BetsNum
}
return
0
}
// GuessGameStopBet 游戏停止下注
type
GuessGameStopBet
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
}
func
(
m
*
GuessGameStopBet
)
Reset
()
{
*
m
=
GuessGameStopBet
{}
}
func
(
m
*
GuessGameStopBet
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessGameStopBet
)
ProtoMessage
()
{}
func
(
*
GuessGameStopBet
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
8
}
}
func
(
m
*
GuessGameStopBet
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
// GuessGameAbort 游戏异常终止,退还下注
type
GuessGameAbort
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
}
func
(
m
*
GuessGameAbort
)
Reset
()
{
*
m
=
GuessGameAbort
{}
}
func
(
m
*
GuessGameAbort
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessGameAbort
)
ProtoMessage
()
{}
func
(
*
GuessGameAbort
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
9
}
}
func
(
m
*
GuessGameAbort
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
// GuessGamePublish 游戏结果揭晓
type
GuessGamePublish
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
Result
string
`protobuf:"bytes,2,opt,name=result" json:"result,omitempty"`
}
func
(
m
*
GuessGamePublish
)
Reset
()
{
*
m
=
GuessGamePublish
{}
}
func
(
m
*
GuessGamePublish
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessGamePublish
)
ProtoMessage
()
{}
func
(
*
GuessGamePublish
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
10
}
}
func
(
m
*
GuessGamePublish
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
GuessGamePublish
)
GetResult
()
string
{
if
m
!=
nil
{
return
m
.
Result
}
return
""
}
// GuessGameQuery 查询游戏结果
type
GuessGameQuery
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
Ty
uint32
`protobuf:"varint,2,opt,name=ty" json:"ty,omitempty"`
}
func
(
m
*
GuessGameQuery
)
Reset
()
{
*
m
=
GuessGameQuery
{}
}
func
(
m
*
GuessGameQuery
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessGameQuery
)
ProtoMessage
()
{}
func
(
*
GuessGameQuery
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
11
}
}
func
(
m
*
GuessGameQuery
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
GuessGameQuery
)
GetTy
()
uint32
{
if
m
!=
nil
{
return
m
.
Ty
}
return
0
}
// QueryGuessGameInfo 游戏信息查询消息
type
QueryGuessGameInfo
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
Addr
string
`protobuf:"bytes,2,opt,name=addr" json:"addr,omitempty"`
Status
int32
`protobuf:"varint,3,opt,name=status" json:"status,omitempty"`
Index
int64
`protobuf:"varint,4,opt,name=index" json:"index,omitempty"`
AdminAddr
string
`protobuf:"bytes,5,opt,name=adminAddr" json:"adminAddr,omitempty"`
Category
string
`protobuf:"bytes,6,opt,name=category" json:"category,omitempty"`
PrimaryKey
string
`protobuf:"bytes,7,opt,name=primaryKey" json:"primaryKey,omitempty"`
}
func
(
m
*
QueryGuessGameInfo
)
Reset
()
{
*
m
=
QueryGuessGameInfo
{}
}
func
(
m
*
QueryGuessGameInfo
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
QueryGuessGameInfo
)
ProtoMessage
()
{}
func
(
*
QueryGuessGameInfo
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
12
}
}
func
(
m
*
QueryGuessGameInfo
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
QueryGuessGameInfo
)
GetAddr
()
string
{
if
m
!=
nil
{
return
m
.
Addr
}
return
""
}
func
(
m
*
QueryGuessGameInfo
)
GetStatus
()
int32
{
if
m
!=
nil
{
return
m
.
Status
}
return
0
}
func
(
m
*
QueryGuessGameInfo
)
GetIndex
()
int64
{
if
m
!=
nil
{
return
m
.
Index
}
return
0
}
func
(
m
*
QueryGuessGameInfo
)
GetAdminAddr
()
string
{
if
m
!=
nil
{
return
m
.
AdminAddr
}
return
""
}
func
(
m
*
QueryGuessGameInfo
)
GetCategory
()
string
{
if
m
!=
nil
{
return
m
.
Category
}
return
""
}
func
(
m
*
QueryGuessGameInfo
)
GetPrimaryKey
()
string
{
if
m
!=
nil
{
return
m
.
PrimaryKey
}
return
""
}
// ReplyGuessGameInfo 游戏信息查询响应消息
type
ReplyGuessGameInfo
struct
{
Game
*
GuessGame
`protobuf:"bytes,1,opt,name=game" json:"game,omitempty"`
}
func
(
m
*
ReplyGuessGameInfo
)
Reset
()
{
*
m
=
ReplyGuessGameInfo
{}
}
func
(
m
*
ReplyGuessGameInfo
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReplyGuessGameInfo
)
ProtoMessage
()
{}
func
(
*
ReplyGuessGameInfo
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
13
}
}
func
(
m
*
ReplyGuessGameInfo
)
GetGame
()
*
GuessGame
{
if
m
!=
nil
{
return
m
.
Game
}
return
nil
}
// QueryGuessGameInfos 游戏信息列表查询消息
type
QueryGuessGameInfos
struct
{
GameIDs
[]
string
`protobuf:"bytes,1,rep,name=gameIDs" json:"gameIDs,omitempty"`
}
func
(
m
*
QueryGuessGameInfos
)
Reset
()
{
*
m
=
QueryGuessGameInfos
{}
}
func
(
m
*
QueryGuessGameInfos
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
QueryGuessGameInfos
)
ProtoMessage
()
{}
func
(
*
QueryGuessGameInfos
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
14
}
}
func
(
m
*
QueryGuessGameInfos
)
GetGameIDs
()
[]
string
{
if
m
!=
nil
{
return
m
.
GameIDs
}
return
nil
}
// ReplyGuessGameInfos 游戏信息列表查询响应消息
type
ReplyGuessGameInfos
struct
{
Games
[]
*
GuessGame
`protobuf:"bytes,1,rep,name=games" json:"games,omitempty"`
}
func
(
m
*
ReplyGuessGameInfos
)
Reset
()
{
*
m
=
ReplyGuessGameInfos
{}
}
func
(
m
*
ReplyGuessGameInfos
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReplyGuessGameInfos
)
ProtoMessage
()
{}
func
(
*
ReplyGuessGameInfos
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
15
}
}
func
(
m
*
ReplyGuessGameInfos
)
GetGames
()
[]
*
GuessGame
{
if
m
!=
nil
{
return
m
.
Games
}
return
nil
}
// ReceiptGuessGame 竞猜游戏收据信息
type
ReceiptGuessGame
struct
{
StartIndex
int64
`protobuf:"varint,1,opt,name=startIndex" json:"startIndex,omitempty"`
GameID
string
`protobuf:"bytes,2,opt,name=gameID" json:"gameID,omitempty"`
PreStatus
int32
`protobuf:"varint,3,opt,name=preStatus" json:"preStatus,omitempty"`
Status
int32
`protobuf:"varint,4,opt,name=status" json:"status,omitempty"`
Addr
string
`protobuf:"bytes,5,opt,name=addr" json:"addr,omitempty"`
AdminAddr
string
`protobuf:"bytes,6,opt,name=adminAddr" json:"adminAddr,omitempty"`
PreIndex
int64
`protobuf:"varint,7,opt,name=preIndex" json:"preIndex,omitempty"`
Index
int64
`protobuf:"varint,8,opt,name=index" json:"index,omitempty"`
Category
string
`protobuf:"bytes,9,opt,name=category" json:"category,omitempty"`
StatusChange
bool
`protobuf:"varint,10,opt,name=statusChange" json:"statusChange,omitempty"`
Bet
bool
`protobuf:"varint,11,opt,name=bet" json:"bet,omitempty"`
Option
string
`protobuf:"bytes,12,opt,name=option" json:"option,omitempty"`
BetsNumber
int64
`protobuf:"varint,13,opt,name=betsNumber" json:"betsNumber,omitempty"`
Game
*
GuessGame
`protobuf:"bytes,14,opt,name=game" json:"game,omitempty"`
}
func
(
m
*
ReceiptGuessGame
)
Reset
()
{
*
m
=
ReceiptGuessGame
{}
}
func
(
m
*
ReceiptGuessGame
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReceiptGuessGame
)
ProtoMessage
()
{}
func
(
*
ReceiptGuessGame
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
16
}
}
func
(
m
*
ReceiptGuessGame
)
GetStartIndex
()
int64
{
if
m
!=
nil
{
return
m
.
StartIndex
}
return
0
}
func
(
m
*
ReceiptGuessGame
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
ReceiptGuessGame
)
GetPreStatus
()
int32
{
if
m
!=
nil
{
return
m
.
PreStatus
}
return
0
}
func
(
m
*
ReceiptGuessGame
)
GetStatus
()
int32
{
if
m
!=
nil
{
return
m
.
Status
}
return
0
}
func
(
m
*
ReceiptGuessGame
)
GetAddr
()
string
{
if
m
!=
nil
{
return
m
.
Addr
}
return
""
}
func
(
m
*
ReceiptGuessGame
)
GetAdminAddr
()
string
{
if
m
!=
nil
{
return
m
.
AdminAddr
}
return
""
}
func
(
m
*
ReceiptGuessGame
)
GetPreIndex
()
int64
{
if
m
!=
nil
{
return
m
.
PreIndex
}
return
0
}
func
(
m
*
ReceiptGuessGame
)
GetIndex
()
int64
{
if
m
!=
nil
{
return
m
.
Index
}
return
0
}
func
(
m
*
ReceiptGuessGame
)
GetCategory
()
string
{
if
m
!=
nil
{
return
m
.
Category
}
return
""
}
func
(
m
*
ReceiptGuessGame
)
GetStatusChange
()
bool
{
if
m
!=
nil
{
return
m
.
StatusChange
}
return
false
}
func
(
m
*
ReceiptGuessGame
)
GetBet
()
bool
{
if
m
!=
nil
{
return
m
.
Bet
}
return
false
}
func
(
m
*
ReceiptGuessGame
)
GetOption
()
string
{
if
m
!=
nil
{
return
m
.
Option
}
return
""
}
func
(
m
*
ReceiptGuessGame
)
GetBetsNumber
()
int64
{
if
m
!=
nil
{
return
m
.
BetsNumber
}
return
0
}
func
(
m
*
ReceiptGuessGame
)
GetGame
()
*
GuessGame
{
if
m
!=
nil
{
return
m
.
Game
}
return
nil
}
// UserBet 用户下注信息
type
UserBet
struct
{
StartIndex
int64
`protobuf:"varint,1,opt,name=startIndex" json:"startIndex,omitempty"`
Index
int64
`protobuf:"varint,2,opt,name=index" json:"index,omitempty"`
GameID
string
`protobuf:"bytes,3,opt,name=gameID" json:"gameID,omitempty"`
Addr
string
`protobuf:"bytes,4,opt,name=addr" json:"addr,omitempty"`
Option
string
`protobuf:"bytes,5,opt,name=option" json:"option,omitempty"`
BetsNumber
int64
`protobuf:"varint,6,opt,name=betsNumber" json:"betsNumber,omitempty"`
}
func
(
m
*
UserBet
)
Reset
()
{
*
m
=
UserBet
{}
}
func
(
m
*
UserBet
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
UserBet
)
ProtoMessage
()
{}
func
(
*
UserBet
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
17
}
}
func
(
m
*
UserBet
)
GetStartIndex
()
int64
{
if
m
!=
nil
{
return
m
.
StartIndex
}
return
0
}
func
(
m
*
UserBet
)
GetIndex
()
int64
{
if
m
!=
nil
{
return
m
.
Index
}
return
0
}
func
(
m
*
UserBet
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
UserBet
)
GetAddr
()
string
{
if
m
!=
nil
{
return
m
.
Addr
}
return
""
}
func
(
m
*
UserBet
)
GetOption
()
string
{
if
m
!=
nil
{
return
m
.
Option
}
return
""
}
func
(
m
*
UserBet
)
GetBetsNumber
()
int64
{
if
m
!=
nil
{
return
m
.
BetsNumber
}
return
0
}
// GuessStartTxReq 构造start交易的请求
type
GuessStartTxReq
struct
{
Topic
string
`protobuf:"bytes,1,opt,name=topic" json:"topic,omitempty"`
Options
string
`protobuf:"bytes,2,opt,name=options" json:"options,omitempty"`
Category
string
`protobuf:"bytes,3,opt,name=category" json:"category,omitempty"`
MaxHeight
int64
`protobuf:"varint,4,opt,name=maxHeight" json:"maxHeight,omitempty"`
MaxBetHeight
int64
`protobuf:"varint,5,opt,name=maxBetHeight" json:"maxBetHeight,omitempty"`
MaxBetsOneTime
int64
`protobuf:"varint,6,opt,name=maxBetsOneTime" json:"maxBetsOneTime,omitempty"`
MaxBetsNumber
int64
`protobuf:"varint,7,opt,name=maxBetsNumber" json:"maxBetsNumber,omitempty"`
DevFeeFactor
int64
`protobuf:"varint,8,opt,name=devFeeFactor" json:"devFeeFactor,omitempty"`
DevFeeAddr
string
`protobuf:"bytes,9,opt,name=devFeeAddr" json:"devFeeAddr,omitempty"`
PlatFeeFactor
int64
`protobuf:"varint,10,opt,name=platFeeFactor" json:"platFeeFactor,omitempty"`
PlatFeeAddr
string
`protobuf:"bytes,11,opt,name=platFeeAddr" json:"platFeeAddr,omitempty"`
ExpireHeight
int64
`protobuf:"varint,12,opt,name=expireHeight" json:"expireHeight,omitempty"`
Fee
int64
`protobuf:"varint,13,opt,name=fee" json:"fee,omitempty"`
}
func
(
m
*
GuessStartTxReq
)
Reset
()
{
*
m
=
GuessStartTxReq
{}
}
func
(
m
*
GuessStartTxReq
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessStartTxReq
)
ProtoMessage
()
{}
func
(
*
GuessStartTxReq
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
18
}
}
func
(
m
*
GuessStartTxReq
)
GetTopic
()
string
{
if
m
!=
nil
{
return
m
.
Topic
}
return
""
}
func
(
m
*
GuessStartTxReq
)
GetOptions
()
string
{
if
m
!=
nil
{
return
m
.
Options
}
return
""
}
func
(
m
*
GuessStartTxReq
)
GetCategory
()
string
{
if
m
!=
nil
{
return
m
.
Category
}
return
""
}
func
(
m
*
GuessStartTxReq
)
GetMaxHeight
()
int64
{
if
m
!=
nil
{
return
m
.
MaxHeight
}
return
0
}
func
(
m
*
GuessStartTxReq
)
GetMaxBetHeight
()
int64
{
if
m
!=
nil
{
return
m
.
MaxBetHeight
}
return
0
}
func
(
m
*
GuessStartTxReq
)
GetMaxBetsOneTime
()
int64
{
if
m
!=
nil
{
return
m
.
MaxBetsOneTime
}
return
0
}
func
(
m
*
GuessStartTxReq
)
GetMaxBetsNumber
()
int64
{
if
m
!=
nil
{
return
m
.
MaxBetsNumber
}
return
0
}
func
(
m
*
GuessStartTxReq
)
GetDevFeeFactor
()
int64
{
if
m
!=
nil
{
return
m
.
DevFeeFactor
}
return
0
}
func
(
m
*
GuessStartTxReq
)
GetDevFeeAddr
()
string
{
if
m
!=
nil
{
return
m
.
DevFeeAddr
}
return
""
}
func
(
m
*
GuessStartTxReq
)
GetPlatFeeFactor
()
int64
{
if
m
!=
nil
{
return
m
.
PlatFeeFactor
}
return
0
}
func
(
m
*
GuessStartTxReq
)
GetPlatFeeAddr
()
string
{
if
m
!=
nil
{
return
m
.
PlatFeeAddr
}
return
""
}
func
(
m
*
GuessStartTxReq
)
GetExpireHeight
()
int64
{
if
m
!=
nil
{
return
m
.
ExpireHeight
}
return
0
}
func
(
m
*
GuessStartTxReq
)
GetFee
()
int64
{
if
m
!=
nil
{
return
m
.
Fee
}
return
0
}
// GuessBetTxReq 构造bet交易的请求
type
GuessBetTxReq
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
Option
string
`protobuf:"bytes,2,opt,name=option" json:"option,omitempty"`
Bets
int64
`protobuf:"varint,3,opt,name=bets" json:"bets,omitempty"`
Fee
int64
`protobuf:"varint,4,opt,name=fee" json:"fee,omitempty"`
}
func
(
m
*
GuessBetTxReq
)
Reset
()
{
*
m
=
GuessBetTxReq
{}
}
func
(
m
*
GuessBetTxReq
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessBetTxReq
)
ProtoMessage
()
{}
func
(
*
GuessBetTxReq
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
19
}
}
func
(
m
*
GuessBetTxReq
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
GuessBetTxReq
)
GetOption
()
string
{
if
m
!=
nil
{
return
m
.
Option
}
return
""
}
func
(
m
*
GuessBetTxReq
)
GetBets
()
int64
{
if
m
!=
nil
{
return
m
.
Bets
}
return
0
}
func
(
m
*
GuessBetTxReq
)
GetFee
()
int64
{
if
m
!=
nil
{
return
m
.
Fee
}
return
0
}
// GuessStopBetTxReq 构造stopBet交易的请求
type
GuessStopBetTxReq
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
Fee
int64
`protobuf:"varint,2,opt,name=fee" json:"fee,omitempty"`
}
func
(
m
*
GuessStopBetTxReq
)
Reset
()
{
*
m
=
GuessStopBetTxReq
{}
}
func
(
m
*
GuessStopBetTxReq
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessStopBetTxReq
)
ProtoMessage
()
{}
func
(
*
GuessStopBetTxReq
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
20
}
}
func
(
m
*
GuessStopBetTxReq
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
GuessStopBetTxReq
)
GetFee
()
int64
{
if
m
!=
nil
{
return
m
.
Fee
}
return
0
}
// GuessAbortTxReq 构造abort交易的请求
type
GuessAbortTxReq
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
Fee
int64
`protobuf:"varint,2,opt,name=fee" json:"fee,omitempty"`
}
func
(
m
*
GuessAbortTxReq
)
Reset
()
{
*
m
=
GuessAbortTxReq
{}
}
func
(
m
*
GuessAbortTxReq
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessAbortTxReq
)
ProtoMessage
()
{}
func
(
*
GuessAbortTxReq
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
21
}
}
func
(
m
*
GuessAbortTxReq
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
GuessAbortTxReq
)
GetFee
()
int64
{
if
m
!=
nil
{
return
m
.
Fee
}
return
0
}
// GuessPublishTxReq 构造publish交易的请求
type
GuessPublishTxReq
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
Result
string
`protobuf:"bytes,2,opt,name=result" json:"result,omitempty"`
Fee
int64
`protobuf:"varint,3,opt,name=fee" json:"fee,omitempty"`
}
func
(
m
*
GuessPublishTxReq
)
Reset
()
{
*
m
=
GuessPublishTxReq
{}
}
func
(
m
*
GuessPublishTxReq
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessPublishTxReq
)
ProtoMessage
()
{}
func
(
*
GuessPublishTxReq
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
22
}
}
func
(
m
*
GuessPublishTxReq
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
GuessPublishTxReq
)
GetResult
()
string
{
if
m
!=
nil
{
return
m
.
Result
}
return
""
}
func
(
m
*
GuessPublishTxReq
)
GetFee
()
int64
{
if
m
!=
nil
{
return
m
.
Fee
}
return
0
}
// GuessGameRecord game信息查询记录
type
GuessGameRecord
struct
{
GameID
string
`protobuf:"bytes,1,opt,name=gameID" json:"gameID,omitempty"`
StartIndex
int64
`protobuf:"varint,2,opt,name=startIndex" json:"startIndex,omitempty"`
}
func
(
m
*
GuessGameRecord
)
Reset
()
{
*
m
=
GuessGameRecord
{}
}
func
(
m
*
GuessGameRecord
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessGameRecord
)
ProtoMessage
()
{}
func
(
*
GuessGameRecord
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
23
}
}
func
(
m
*
GuessGameRecord
)
GetGameID
()
string
{
if
m
!=
nil
{
return
m
.
GameID
}
return
""
}
func
(
m
*
GuessGameRecord
)
GetStartIndex
()
int64
{
if
m
!=
nil
{
return
m
.
StartIndex
}
return
0
}
// GuessGameRecords game信息查询记录集
type
GuessGameRecords
struct
{
Records
[]
*
GuessGameRecord
`protobuf:"bytes,1,rep,name=records" json:"records,omitempty"`
PrimaryKey
string
`protobuf:"bytes,2,opt,name=primaryKey" json:"primaryKey,omitempty"`
}
func
(
m
*
GuessGameRecords
)
Reset
()
{
*
m
=
GuessGameRecords
{}
}
func
(
m
*
GuessGameRecords
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
GuessGameRecords
)
ProtoMessage
()
{}
func
(
*
GuessGameRecords
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
24
}
}
func
(
m
*
GuessGameRecords
)
GetRecords
()
[]
*
GuessGameRecord
{
if
m
!=
nil
{
return
m
.
Records
}
return
nil
}
func
(
m
*
GuessGameRecords
)
GetPrimaryKey
()
string
{
if
m
!=
nil
{
return
m
.
PrimaryKey
}
return
""
}
func
init
()
{
proto
.
RegisterType
((
*
GuessGame
)(
nil
),
"types.GuessGame"
)
proto
.
RegisterType
((
*
GuessPlayer
)(
nil
),
"types.GuessPlayer"
)
proto
.
RegisterType
((
*
GuessBet
)(
nil
),
"types.GuessBet"
)
proto
.
RegisterType
((
*
GuessBetStat
)(
nil
),
"types.GuessBetStat"
)
proto
.
RegisterType
((
*
GuessBetStatItem
)(
nil
),
"types.GuessBetStatItem"
)
proto
.
RegisterType
((
*
GuessGameAction
)(
nil
),
"types.GuessGameAction"
)
proto
.
RegisterType
((
*
GuessGameStart
)(
nil
),
"types.GuessGameStart"
)
proto
.
RegisterType
((
*
GuessGameBet
)(
nil
),
"types.GuessGameBet"
)
proto
.
RegisterType
((
*
GuessGameStopBet
)(
nil
),
"types.GuessGameStopBet"
)
proto
.
RegisterType
((
*
GuessGameAbort
)(
nil
),
"types.GuessGameAbort"
)
proto
.
RegisterType
((
*
GuessGamePublish
)(
nil
),
"types.GuessGamePublish"
)
proto
.
RegisterType
((
*
GuessGameQuery
)(
nil
),
"types.GuessGameQuery"
)
proto
.
RegisterType
((
*
QueryGuessGameInfo
)(
nil
),
"types.QueryGuessGameInfo"
)
proto
.
RegisterType
((
*
ReplyGuessGameInfo
)(
nil
),
"types.ReplyGuessGameInfo"
)
proto
.
RegisterType
((
*
QueryGuessGameInfos
)(
nil
),
"types.QueryGuessGameInfos"
)
proto
.
RegisterType
((
*
ReplyGuessGameInfos
)(
nil
),
"types.ReplyGuessGameInfos"
)
proto
.
RegisterType
((
*
ReceiptGuessGame
)(
nil
),
"types.ReceiptGuessGame"
)
proto
.
RegisterType
((
*
UserBet
)(
nil
),
"types.UserBet"
)
proto
.
RegisterType
((
*
GuessStartTxReq
)(
nil
),
"types.GuessStartTxReq"
)
proto
.
RegisterType
((
*
GuessBetTxReq
)(
nil
),
"types.GuessBetTxReq"
)
proto
.
RegisterType
((
*
GuessStopBetTxReq
)(
nil
),
"types.GuessStopBetTxReq"
)
proto
.
RegisterType
((
*
GuessAbortTxReq
)(
nil
),
"types.GuessAbortTxReq"
)
proto
.
RegisterType
((
*
GuessPublishTxReq
)(
nil
),
"types.GuessPublishTxReq"
)
proto
.
RegisterType
((
*
GuessGameRecord
)(
nil
),
"types.GuessGameRecord"
)
proto
.
RegisterType
((
*
GuessGameRecords
)(
nil
),
"types.GuessGameRecords"
)
}
// 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 Guess service
type
GuessClient
interface
{
// 游戏开始
GuessStart
(
ctx
context
.
Context
,
in
*
GuessGameStart
,
opts
...
grpc
.
CallOption
)
(
*
types2
.
UnsignTx
,
error
)
// 游戏下注
GuessBet
(
ctx
context
.
Context
,
in
*
GuessGameBet
,
opts
...
grpc
.
CallOption
)
(
*
types2
.
UnsignTx
,
error
)
// 游戏终止下注
GuessStopBet
(
ctx
context
.
Context
,
in
*
GuessGameStopBet
,
opts
...
grpc
.
CallOption
)
(
*
types2
.
UnsignTx
,
error
)
// 游戏异常终止
GuessAbort
(
ctx
context
.
Context
,
in
*
GuessGameAbort
,
opts
...
grpc
.
CallOption
)
(
*
types2
.
UnsignTx
,
error
)
// 游戏结束
GuessPublish
(
ctx
context
.
Context
,
in
*
GuessGamePublish
,
opts
...
grpc
.
CallOption
)
(
*
types2
.
UnsignTx
,
error
)
}
type
guessClient
struct
{
cc
*
grpc
.
ClientConn
}
func
NewGuessClient
(
cc
*
grpc
.
ClientConn
)
GuessClient
{
return
&
guessClient
{
cc
}
}
func
(
c
*
guessClient
)
GuessStart
(
ctx
context
.
Context
,
in
*
GuessGameStart
,
opts
...
grpc
.
CallOption
)
(
*
types2
.
UnsignTx
,
error
)
{
out
:=
new
(
types2
.
UnsignTx
)
err
:=
grpc
.
Invoke
(
ctx
,
"/types.guess/GuessStart"
,
in
,
out
,
c
.
cc
,
opts
...
)
if
err
!=
nil
{
return
nil
,
err
}
return
out
,
nil
}
func
(
c
*
guessClient
)
GuessBet
(
ctx
context
.
Context
,
in
*
GuessGameBet
,
opts
...
grpc
.
CallOption
)
(
*
types2
.
UnsignTx
,
error
)
{
out
:=
new
(
types2
.
UnsignTx
)
err
:=
grpc
.
Invoke
(
ctx
,
"/types.guess/GuessBet"
,
in
,
out
,
c
.
cc
,
opts
...
)
if
err
!=
nil
{
return
nil
,
err
}
return
out
,
nil
}
func
(
c
*
guessClient
)
GuessStopBet
(
ctx
context
.
Context
,
in
*
GuessGameStopBet
,
opts
...
grpc
.
CallOption
)
(
*
types2
.
UnsignTx
,
error
)
{
out
:=
new
(
types2
.
UnsignTx
)
err
:=
grpc
.
Invoke
(
ctx
,
"/types.guess/GuessStopBet"
,
in
,
out
,
c
.
cc
,
opts
...
)
if
err
!=
nil
{
return
nil
,
err
}
return
out
,
nil
}
func
(
c
*
guessClient
)
GuessAbort
(
ctx
context
.
Context
,
in
*
GuessGameAbort
,
opts
...
grpc
.
CallOption
)
(
*
types2
.
UnsignTx
,
error
)
{
out
:=
new
(
types2
.
UnsignTx
)
err
:=
grpc
.
Invoke
(
ctx
,
"/types.guess/GuessAbort"
,
in
,
out
,
c
.
cc
,
opts
...
)
if
err
!=
nil
{
return
nil
,
err
}
return
out
,
nil
}
func
(
c
*
guessClient
)
GuessPublish
(
ctx
context
.
Context
,
in
*
GuessGamePublish
,
opts
...
grpc
.
CallOption
)
(
*
types2
.
UnsignTx
,
error
)
{
out
:=
new
(
types2
.
UnsignTx
)
err
:=
grpc
.
Invoke
(
ctx
,
"/types.guess/GuessPublish"
,
in
,
out
,
c
.
cc
,
opts
...
)
if
err
!=
nil
{
return
nil
,
err
}
return
out
,
nil
}
// Server API for Guess service
type
GuessServer
interface
{
// 游戏开始
GuessStart
(
context
.
Context
,
*
GuessGameStart
)
(
*
types2
.
UnsignTx
,
error
)
// 游戏下注
GuessBet
(
context
.
Context
,
*
GuessGameBet
)
(
*
types2
.
UnsignTx
,
error
)
// 游戏终止下注
GuessStopBet
(
context
.
Context
,
*
GuessGameStopBet
)
(
*
types2
.
UnsignTx
,
error
)
// 游戏异常终止
GuessAbort
(
context
.
Context
,
*
GuessGameAbort
)
(
*
types2
.
UnsignTx
,
error
)
// 游戏结束
GuessPublish
(
context
.
Context
,
*
GuessGamePublish
)
(
*
types2
.
UnsignTx
,
error
)
}
func
RegisterGuessServer
(
s
*
grpc
.
Server
,
srv
GuessServer
)
{
s
.
RegisterService
(
&
_Guess_serviceDesc
,
srv
)
}
func
_Guess_GuessStart_Handler
(
srv
interface
{},
ctx
context
.
Context
,
dec
func
(
interface
{})
error
,
interceptor
grpc
.
UnaryServerInterceptor
)
(
interface
{},
error
)
{
in
:=
new
(
GuessGameStart
)
if
err
:=
dec
(
in
);
err
!=
nil
{
return
nil
,
err
}
if
interceptor
==
nil
{
return
srv
.
(
GuessServer
)
.
GuessStart
(
ctx
,
in
)
}
info
:=
&
grpc
.
UnaryServerInfo
{
Server
:
srv
,
FullMethod
:
"/types.guess/GuessStart"
,
}
handler
:=
func
(
ctx
context
.
Context
,
req
interface
{})
(
interface
{},
error
)
{
return
srv
.
(
GuessServer
)
.
GuessStart
(
ctx
,
req
.
(
*
GuessGameStart
))
}
return
interceptor
(
ctx
,
in
,
info
,
handler
)
}
func
_Guess_GuessBet_Handler
(
srv
interface
{},
ctx
context
.
Context
,
dec
func
(
interface
{})
error
,
interceptor
grpc
.
UnaryServerInterceptor
)
(
interface
{},
error
)
{
in
:=
new
(
GuessGameBet
)
if
err
:=
dec
(
in
);
err
!=
nil
{
return
nil
,
err
}
if
interceptor
==
nil
{
return
srv
.
(
GuessServer
)
.
GuessBet
(
ctx
,
in
)
}
info
:=
&
grpc
.
UnaryServerInfo
{
Server
:
srv
,
FullMethod
:
"/types.guess/GuessBet"
,
}
handler
:=
func
(
ctx
context
.
Context
,
req
interface
{})
(
interface
{},
error
)
{
return
srv
.
(
GuessServer
)
.
GuessBet
(
ctx
,
req
.
(
*
GuessGameBet
))
}
return
interceptor
(
ctx
,
in
,
info
,
handler
)
}
func
_Guess_GuessStopBet_Handler
(
srv
interface
{},
ctx
context
.
Context
,
dec
func
(
interface
{})
error
,
interceptor
grpc
.
UnaryServerInterceptor
)
(
interface
{},
error
)
{
in
:=
new
(
GuessGameStopBet
)
if
err
:=
dec
(
in
);
err
!=
nil
{
return
nil
,
err
}
if
interceptor
==
nil
{
return
srv
.
(
GuessServer
)
.
GuessStopBet
(
ctx
,
in
)
}
info
:=
&
grpc
.
UnaryServerInfo
{
Server
:
srv
,
FullMethod
:
"/types.guess/GuessStopBet"
,
}
handler
:=
func
(
ctx
context
.
Context
,
req
interface
{})
(
interface
{},
error
)
{
return
srv
.
(
GuessServer
)
.
GuessStopBet
(
ctx
,
req
.
(
*
GuessGameStopBet
))
}
return
interceptor
(
ctx
,
in
,
info
,
handler
)
}
func
_Guess_GuessAbort_Handler
(
srv
interface
{},
ctx
context
.
Context
,
dec
func
(
interface
{})
error
,
interceptor
grpc
.
UnaryServerInterceptor
)
(
interface
{},
error
)
{
in
:=
new
(
GuessGameAbort
)
if
err
:=
dec
(
in
);
err
!=
nil
{
return
nil
,
err
}
if
interceptor
==
nil
{
return
srv
.
(
GuessServer
)
.
GuessAbort
(
ctx
,
in
)
}
info
:=
&
grpc
.
UnaryServerInfo
{
Server
:
srv
,
FullMethod
:
"/types.guess/GuessAbort"
,
}
handler
:=
func
(
ctx
context
.
Context
,
req
interface
{})
(
interface
{},
error
)
{
return
srv
.
(
GuessServer
)
.
GuessAbort
(
ctx
,
req
.
(
*
GuessGameAbort
))
}
return
interceptor
(
ctx
,
in
,
info
,
handler
)
}
func
_Guess_GuessPublish_Handler
(
srv
interface
{},
ctx
context
.
Context
,
dec
func
(
interface
{})
error
,
interceptor
grpc
.
UnaryServerInterceptor
)
(
interface
{},
error
)
{
in
:=
new
(
GuessGamePublish
)
if
err
:=
dec
(
in
);
err
!=
nil
{
return
nil
,
err
}
if
interceptor
==
nil
{
return
srv
.
(
GuessServer
)
.
GuessPublish
(
ctx
,
in
)
}
info
:=
&
grpc
.
UnaryServerInfo
{
Server
:
srv
,
FullMethod
:
"/types.guess/GuessPublish"
,
}
handler
:=
func
(
ctx
context
.
Context
,
req
interface
{})
(
interface
{},
error
)
{
return
srv
.
(
GuessServer
)
.
GuessPublish
(
ctx
,
req
.
(
*
GuessGamePublish
))
}
return
interceptor
(
ctx
,
in
,
info
,
handler
)
}
var
_Guess_serviceDesc
=
grpc
.
ServiceDesc
{
ServiceName
:
"types.guess"
,
HandlerType
:
(
*
GuessServer
)(
nil
),
Methods
:
[]
grpc
.
MethodDesc
{
{
MethodName
:
"GuessStart"
,
Handler
:
_Guess_GuessStart_Handler
,
},
{
MethodName
:
"GuessBet"
,
Handler
:
_Guess_GuessBet_Handler
,
},
{
MethodName
:
"GuessStopBet"
,
Handler
:
_Guess_GuessStopBet_Handler
,
},
{
MethodName
:
"GuessAbort"
,
Handler
:
_Guess_GuessAbort_Handler
,
},
{
MethodName
:
"GuessPublish"
,
Handler
:
_Guess_GuessPublish_Handler
,
},
},
Streams
:
[]
grpc
.
StreamDesc
{},
Metadata
:
"guess.proto"
,
}
func
init
()
{
proto
.
RegisterFile
(
"guess.proto"
,
fileDescriptor0
)
}
var
fileDescriptor0
=
[]
byte
{
// 1367 bytes of a gzipped FileDescriptorProto
0x1f
,
0x8b
,
0x08
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x02
,
0xff
,
0xac
,
0x58
,
0xc9
,
0x8e
,
0xdb
,
0x46
,
0x13
,
0x1e
,
0x92
,
0xa2
,
0x96
,
0x92
,
0x66
,
0x46
,
0xee
,
0xf1
,
0xc2
,
0x7f
,
0x60
,
0x18
,
0xfa
,
0x09
,
0xc3
,
0x11
,
0x02
,
0xd8
,
0x09
,
0x64
,
0x20
,
0x08
,
0x1c
,
0xf8
,
0x30
,
0x8a
,
0x61
,
0x7b
,
0x10
,
0x20
,
0x71
,
0x68
,
0x1b
,
0xc9
,
0x95
,
0x92
,
0x7a
,
0x34
,
0x04
,
0x24
,
0x92
,
0x26
,
0x5b
,
0x03
,
0xe9
,
0x21
,
0x72
,
0xcb
,
0x1b
,
0x38
,
0x87
,
0xdc
,
0xf2
,
0x1a
,
0x41
,
0x4e
,
0x79
,
0xa4
,
0xa0
,
0xaa
,
0x9b
,
0x62
,
0x93
,
0xa2
,
0x16
,
0x07
,
0xb9
,
0xb1
,
0x96
,
0xee
,
0xaa
,
0xae
,
0xed
,
0x2b
,
0x09
,
0xda
,
0xd3
,
0x05
,
0x4f
,
0xd3
,
0x27
,
0x71
,
0x12
,
0x89
,
0x88
,
0xd9
,
0x62
,
0x15
,
0xf3
,
0xf4
,
0xfc
,
0x96
,
0x48
,
0xfc
,
0x30
,
0xf5
,
0xc7
,
0x22
,
0x88
,
0x42
,
0x29
,
0x71
,
0xff
,
0xae
,
0x43
,
0xeb
,
0x15
,
0x6a
,
0xbe
,
0xf2
,
0xe7
,
0x9c
,
0xdd
,
0x85
,
0xfa
,
0xd4
,
0x9f
,
0xf3
,
0xcb
,
0x17
,
0x8e
,
0xd1
,
0x33
,
0xfa
,
0x2d
,
0x4f
,
0x51
,
0xc8
,
0x4f
,
0x85
,
0x2f
,
0x16
,
0xa9
,
0x63
,
0xf6
,
0x8c
,
0xbe
,
0xed
,
0x29
,
0x8a
,
0xdd
,
0x87
,
0x56
,
0x9c
,
0xf0
,
0xb7
,
0x52
,
0x64
,
0x91
,
0x28
,
0x67
,
0xa0
,
0x34
,
0x15
,
0x7e
,
0x22
,
0xde
,
0x05
,
0x73
,
0xee
,
0xd4
,
0x7a
,
0x46
,
0xdf
,
0xf2
,
0x72
,
0x06
,
0xeb
,
0x41
,
0x9b
,
0x88
,
0xd7
,
0x3c
,
0x98
,
0x5e
,
0x0b
,
0xc7
,
0x26
,
0xb9
,
0xce
,
0x5a
,
0x6b
,
0xbc
,
0x5b
,
0xbe
,
0xf6
,
0xd3
,
0x6b
,
0xa7
,
0x4e
,
0x2e
,
0xe9
,
0x2c
,
0xf6
,
0x00
,
0x80
,
0xc8
,
0xcb
,
0x70
,
0xc2
,
0x97
,
0x4e
,
0x83
,
0xae
,
0xd0
,
0x38
,
0xec
,
0x36
,
0xd8
,
0x22
,
0x8a
,
0x83
,
0xb1
,
0xd3
,
0xa4
,
0xb3
,
0x92
,
0x60
,
0xe7
,
0xd0
,
0x1c
,
0xfb
,
0x82
,
0x4f
,
0xa3
,
0x64
,
0xe5
,
0xb4
,
0x48
,
0xb0
,
0xa6
,
0x99
,
0x03
,
0x8d
,
0x28
,
0xc6
,
0xf8
,
0xa4
,
0x0e
,
0x90
,
0x28
,
0x23
,
0x99
,
0x0b
,
0x9d
,
0xb9
,
0xbf
,
0x1c
,
0xf2
,
0xcc
,
0xe1
,
0x36
,
0x59
,
0x2b
,
0xf0
,
0xd8
,
0x23
,
0x38
,
0x91
,
0x74
,
0xfa
,
0x43
,
0xc8
,
0xe9
,
0xd9
,
0x1d
,
0xd2
,
0x2a
,
0x71
,
0xd9
,
0x43
,
0x38
,
0x56
,
0x9c
,
0xef
,
0x17
,
0xf3
,
0x11
,
0x4f
,
0x9c
,
0x63
,
0x52
,
0x2b
,
0x32
,
0xd1
,
0xe2
,
0x84
,
0xdf
,
0xbc
,
0xe4
,
0xfc
,
0xa5
,
0x3f
,
0x16
,
0x51
,
0xe2
,
0x9c
,
0x48
,
0x8b
,
0x3a
,
0x0f
,
0x23
,
0x20
,
0xe9
,
0x8b
,
0xc9
,
0x24
,
0x71
,
0x4e
,
0xc9
,
0x65
,
0x8d
,
0x83
,
0x96
,
0xe2
,
0x99
,
0x2f
,
0xf2
,
0x4b
,
0xba
,
0xd2
,
0x52
,
0x81
,
0x89
,
0x91
,
0x56
,
0x0c
,
0xba
,
0xe6
,
0x96
,
0x8c
,
0xb4
,
0xc6
,
0x42
,
0x5f
,
0xf8
,
0x32
,
0x0e
,
0x12
,
0xae
,
0x5e
,
0xcf
,
0xa4
,
0x2f
,
0x3a
,
0x0f
,
0xf3
,
0xed
,
0x4f
,
0xe6
,
0x41
,
0x48
,
0x77
,
0x9c
,
0xd1
,
0x1d
,
0x39
,
0x03
,
0x3d
,
0x1d
,
0xe5
,
0x0f
,
0xbe
,
0x2d
,
0x73
,
0x95
,
0x73
,
0x58
,
0x1f
,
0xec
,
0x78
,
0xe6
,
0xaf
,
0x52
,
0xe7
,
0x4e
,
0xcf
,
0xea
,
0xb7
,
0x07
,
0xec
,
0x09
,
0xd5
,
0xec
,
0x13
,
0x2a
,
0xce
,
0x37
,
0x33
,
0x7f
,
0xc5
,
0x13
,
0x4f
,
0x2a
,
0x60
,
0x35
,
0x26
,
0x3c
,
0x5d
,
0xcc
,
0x84
,
0x73
,
0x57
,
0x56
,
0xa9
,
0xa4
,
0xd8
,
0x63
,
0x68
,
0x8c
,
0xb8
,
0xc0
,
0xe2
,
0x73
,
0xee
,
0xf5
,
0x8c
,
0x7e
,
0x7b
,
0x70
,
0xa6
,
0xdf
,
0x31
,
0x94
,
0x22
,
0x2f
,
0xd3
,
0xc1
,
0xe2
,
0x08
,
0xa8
,
0x6e
,
0x1c
,
0xf2
,
0x45
,
0x12
,
0x58
,
0x1c
,
0x71
,
0xc2
,
0x65
,
0x41
,
0xfd
,
0x8f
,
0x04
,
0x6b
,
0x1a
,
0x83
,
0x39
,
0x49
,
0x82
,
0x1b
,
0x1e
,
0x0e
,
0x57
,
0x17
,
0xf8
,
0x2e
,
0xe7
,
0xbc
,
0x67
,
0xf4
,
0x9b
,
0x5e
,
0x91
,
0xe9
,
0xbe
,
0x80
,
0xb6
,
0xe6
,
0x34
,
0x63
,
0x50
,
0xf3
,
0x31
,
0x20
,
0xb2
,
0xa3
,
0xe8
,
0x9b
,
0xfd
,
0x1f
,
0xac
,
0x11
,
0x17
,
0xd4
,
0x4c
,
0xed
,
0xc1
,
0x69
,
0xc9
,
0x4b
,
0x0f
,
0x65
,
0xee
,
0xef
,
0x06
,
0x34
,
0x33
,
0x0e
,
0xbe
,
0x58
,
0x96
,
0x61
,
0xd6
,
0x97
,
0x92
,
0x2a
,
0xc5
,
0xd4
,
0xdc
,
0x88
,
0xe9
,
0x39
,
0x34
,
0x83
,
0xf4
,
0xa7
,
0x20
,
0x0c
,
0x79
,
0x42
,
0xed
,
0xd9
,
0xf4
,
0xd6
,
0x34
,
0xde
,
0x19
,
0x27
,
0xd1
,
0x55
,
0x20
,
0x54
,
0x6b
,
0x2a
,
0x2a
,
0x0f
,
0x8b
,
0xbd
,
0x2d
,
0x2c
,
0xf5
,
0x62
,
0x58
,
0xdc
,
0x5f
,
0x0c
,
0xe8
,
0xe8
,
0x21
,
0xc6
,
0x38
,
0x89
,
0x48
,
0xf8
,
0xb3
,
0x21
,
0xa7
,
0x56
,
0x4f
,
0xc9
,
0x6b
,
0xcb
,
0x2b
,
0x32
,
0x59
,
0x1f
,
0x4e
,
0x33
,
0x46
,
0xf1
,
0x05
,
0x65
,
0x36
,
0x7b
,
0x0c
,
0x76
,
0x20
,
0xf8
,
0x1c
,
0x47
,
0x0c
,
0x96
,
0xc6
,
0xbd
,
0x8a
,
0xb4
,
0x5e
,
0x0a
,
0x3e
,
0xf7
,
0xa4
,
0x96
,
0x7b
,
0x0d
,
0xdd
,
0xb2
,
0xe8
,
0x5f
,
0x47
,
0xf0
,
0x3e
,
0xb4
,
0x90
,
0x92
,
0xcf
,
0xb0
,
0xe4
,
0x0c
,
0x5b
,
0x33
,
0xdc
,
0xbf
,
0x4c
,
0x38
,
0x5d
,
0x4f
,
0xcf
,
0x0b
,
0x9a
,
0xab
,
0xe8
,
0x2c
,
0x4d
,
0x20
,
0x32
,
0xd4
,
0x1e
,
0xdc
,
0xd1
,
0x9d
,
0x45
,
0xb5
,
0xb7
,
0x34
,
0xe1
,
0x8e
,
0x3c
,
0xa9
,
0xc5
,
0x3e
,
0xd3
,
0x4b
,
0xe1
,
0xac
,
0xac
,
0x8c
,
0xa3
,
0xe5
,
0x88
,
0x0a
,
0x82
,
0x3d
,
0x85
,
0x46
,
0x2a
,
0xa2
,
0x78
,
0xc8
,
0x05
,
0xf9
,
0x51
,
0x0a
,
0x83
,
0xbc
,
0x99
,
0xc4
,
0xaf
,
0x8f
,
0xbc
,
0x4c
,
0x13
,
0x9d
,
0xf1
,
0x47
,
0x51
,
0x22
,
0x73
,
0x5c
,
0xe1
,
0xcc
,
0x05
,
0x0a
,
0xd1
,
0x19
,
0xd2
,
0x42
,
0x1b
,
0xf1
,
0x62
,
0x34
,
0x0b
,
0xd2
,
0x6b
,
0xca
,
0x7e
,
0x85
,
0x8d
,
0x37
,
0x52
,
0x8c
,
0x36
,
0x94
,
0x26
,
0xda
,
0xf8
,
0xb0
,
0xe0
,
0xc9
,
0x8a
,
0xea
,
0xa2
,
0xc2
,
0xc6
,
0x8f
,
0x28
,
0x44
,
0x1b
,
0xa4
,
0xc5
,
0x4e
,
0xc0
,
0x14
,
0x2b
,
0x9a
,
0xd5
,
0xb6
,
0x67
,
0x8a
,
0xd5
,
0xb0
,
0x01
,
0xf6
,
0x8d
,
0x3f
,
0x5b
,
0x70
,
0xf7
,
0x37
,
0x0b
,
0x4e
,
0x8a
,
0x51
,
0xca
,
0xe7
,
0xb7
,
0xa1
,
0xcf
,
0x6f
,
0x6d
,
0x46
,
0x9b
,
0xc5
,
0x19
,
0xad
,
0x4f
,
0x76
,
0xab
,
0x34
,
0xd9
,
0xcb
,
0xf3
,
0xbb
,
0x76
,
0xd0
,
0xfc
,
0xb6
,
0x0f
,
0x9b
,
0xdf
,
0xf5
,
0x43
,
0xe6
,
0x77
,
0x63
,
0xef
,
0xfc
,
0x6e
,
0xee
,
0x9f
,
0xdf
,
0xad
,
0x03
,
0xe6
,
0x37
,
0xec
,
0x9f
,
0xdf
,
0xed
,
0x8a
,
0xf9
,
0xbd
,
0x31
,
0xde
,
0x3a
,
0x55
,
0xe3
,
0xed
,
0x67
,
0xd5
,
0xec
,
0xaa
,
0x3c
,
0x77
,
0xed
,
0x0c
,
0xaa
,
0xe3
,
0xcc
,
0x42
,
0xc7
,
0x39
,
0x34
,
0xa5
,
0x31
,
0x46
,
0xaa
,
0x9f
,
0x32
,
0xd2
,
0xfd
,
0x5c
,
0xf5
,
0xad
,
0x56
,
0xcb
,
0xdb
,
0x6e
,
0x77
,
0xfb
,
0x5a
,
0xad
,
0x50
,
0x11
,
0x6f
,
0xd5
,
0x1c
,
0x6a
,
0xb7
,
0xaa
,
0xea
,
0xdd
,
0xe5
,
0xb3
,
0x42
,
0x16
,
0x53
,
0x47
,
0x16
,
0xf7
,
0x6b
,
0xcd
,
0x1a
,
0x95
,
0xf3
,
0xd6
,
0x1b
,
0x64
,
0x75
,
0xe3
,
0xe9
,
0x63
,
0xac
,
0x6e
,
0xf7
,
0x4f
,
0x03
,
0x18
,
0x9d
,
0x58
,
0x9f
,
0xbf
,
0x0c
,
0xaf
,
0xa2
,
0xad
,
0xc7
,
0x33
,
0xb0
,
0x30
,
0x35
,
0xb0
,
0xc8
,
0x97
,
0x2f
,
0xab
,
0xb0
,
0x7c
,
0xad
,
0x07
,
0x75
,
0x4d
,
0x1f
,
0xd4
,
0x05
,
0x10
,
0xb6
,
0xcb
,
0x20
,
0xac
,
0x37
,
0x48
,
0xbd
,
0xd4
,
0x20
,
0x0f
,
0x00
,
0xe2
,
0x24
,
0x98
,
0xfb
,
0xc9
,
0xea
,
0x3b
,
0x2e
,
0x1b
,
0xb4
,
0xe5
,
0x69
,
0x1c
,
0xf7
,
0x19
,
0x30
,
0x8f
,
0xc7
,
0xb3
,
0xd2
,
0x4b
,
0x1e
,
0x42
,
0x0d
,
0x7d
,
0x57
,
0xd3
,
0xae
,
0x5b
,
0x6e
,
0x7e
,
0x8f
,
0xa4
,
0xee
,
0x17
,
0x70
,
0xb6
,
0x19
,
0x85
,
0x14
,
0x6b
,
0x41
,
0x3e
,
0x1c
,
0x21
,
0xc2
,
0xc2
,
0x4e
,
0x56
,
0xa4
,
0xfb
,
0x1c
,
0xce
,
0x36
,
0x8d
,
0xa5
,
0xec
,
0x11
,
0xd8
,
0xa8
,
0x21
,
0xd5
,
0xab
,
0xcc
,
0x49
,
0xb1
,
0xfb
,
0xab
,
0x05
,
0x5d
,
0x8f
,
0x8f
,
0x79
,
0x10
,
0x8b
,
0x7c
,
0xbb
,
0x2d
,
0x6e
,
0x8b
,
0xc6
,
0xc6
,
0xb6
,
0x98
,
0x27
,
0xc5
,
0x2c
,
0x24
,
0x65
,
0xf7
,
0x96
,
0x9b
,
0xa7
,
0xa7
,
0x56
,
0x48
,
0x4f
,
0x96
,
0x4a
,
0x5b
,
0x4b
,
0x65
,
0x21
,
0x39
,
0xf5
,
0x8a
,
0xe4
,
0xac
,
0x31
,
0xb6
,
0x51
,
0x5a
,
0x3d
,
0xd6
,
0xc9
,
0x6e
,
0x96
,
0x50
,
0x79
,
0xeb
,
0x26
,
0xeb
,
0x42
,
0x47
,
0x7a
,
0xf2
,
0xed
,
0xb5
,
0x1f
,
0x4e
,
0x39
,
0x0d
,
0x85
,
0xa6
,
0x57
,
0xe0
,
0xb1
,
0xae
,
0x04
,
0x9f
,
0x36
,
0x89
,
0x08
,
0x65
,
0xf2
,
0xae
,
0xed
,
0xec
,
0xc0
,
0xc9
,
0xe3
,
0x0d
,
0x9c
,
0xcc
,
0xca
,
0xe0
,
0x64
,
0x67
,
0x19
,
0x7c
,
0x34
,
0xa0
,
0xf1
,
0x3e
,
0xe5
,
0x09
,
0x76
,
0xf6
,
0xbe
,
0x6c
,
0xac
,
0x5f
,
0x6c
,
0xea
,
0x2f
,
0xce
,
0x73
,
0x64
,
0x55
,
0x36
,
0x4e
,
0xad
,
0xd8
,
0x38
,
0xea
,
0x2d
,
0xf6
,
0x8e
,
0xb7
,
0xd4
,
0xcb
,
0x6f
,
0x71
,
0xff
,
0xb0
,
0x14
,
0xaa
,
0xbf
,
0x95
,
0x3f
,
0x35
,
0x3c
,
0xfe
,
0xe1
,
0x3f
,
0x45
,
0xa2
,
0xfb
,
0xd0
,
0x9a
,
0xfb
,
0xcb
,
0x02
,
0x0c
,
0xe5
,
0x8c
,
0x0d
,
0x9c
,
0xb2
,
0x0f
,
0xc2
,
0xa9
,
0xfa
,
0x61
,
0x38
,
0xd5
,
0x38
,
0x04
,
0xa7
,
0x9a
,
0x7b
,
0x71
,
0xaa
,
0xb5
,
0x1f
,
0xa7
,
0xe0
,
0x00
,
0x9c
,
0x6a
,
0xef
,
0xc7
,
0xa9
,
0x4e
,
0x05
,
0x4e
,
0x75
,
0xc1
,
0xba
,
0xe2
,
0x5c
,
0x15
,
0x21
,
0x7e
,
0xba
,
0x1c
,
0x8e
,
0xb3
,
0x8d
,
0x4f
,
0xa6
,
0xeb
,
0x53
,
0x41
,
0x89
,
0x41
,
0x0d
,
0x0b
,
0x40
,
0x21
,
0x12
,
0x7d
,
0x67
,
0x66
,
0x6a
,
0xb9
,
0x99
,
0xe7
,
0x70
,
0x4b
,
0xd5
,
0x05
,
0x81
,
0xd3
,
0x6e
,
0x53
,
0xea
,
0xb8
,
0x99
,
0x1f
,
0xff
,
0x46
,
0x95
,
0x15
,
0xe1
,
0xd5
,
0xa7
,
0x1e
,
0x7e
,
0xaf
,
0x6c
,
0x2b
,
0x08
,
0xdb
,
0xfb
,
0xcc
,
0x2a
,
0x1c
,
0xcb
,
0xae
,
0xb5
,
0xf2
,
0x6b
,
0x2f
,
0xb5
,
0x05
,
0xd6
,
0xe3
,
0xe3
,
0x28
,
0x99
,
0x6c
,
0xbd
,
0xb4
,
0xd8
,
0xb0
,
0x66
,
0xb9
,
0x61
,
0xdd
,
0x89
,
0x06
,
0xb4
,
0xf2
,
0xaa
,
0x94
,
0x7d
,
0x09
,
0x8d
,
0x44
,
0x7e
,
0xaa
,
0x89
,
0x7d
,
0x77
,
0x63
,
0x32
,
0x90
,
0xd8
,
0xcb
,
0xd4
,
0x4a
,
0x28
,
0x64
,
0x96
,
0x51
,
0x68
,
0xf0
,
0xd1
,
0x04
,
0x9b
,
0xfe
,
0xda
,
0x60
,
0x5f
,
0x01
,
0xe4
,
0x5d
,
0xca
,
0xaa
,
0xf7
,
0xec
,
0xf3
,
0xec
,
0xc7
,
0xd5
,
0xfb
,
0x30
,
0x0d
,
0xa6
,
0xe1
,
0xbb
,
0xa5
,
0x7b
,
0xc4
,
0x06
,
0xda
,
0x0f
,
0xab
,
0xaa
,
0x85
,
0xbb
,
0xea
,
0xcc
,
0x33
,
0xb5
,
0xf4
,
0x64
,
0x6b
,
0xc9
,
0xb6
,
0xdd
,
0xbb
,
0xea
,
0x6c
,
0xe6
,
0xa7
,
0x5c
,
0x53
,
0xaa
,
0x57
,
0xf0
,
0x5d
,
0x36
,
0xb3
,
0xa5
,
0x65
,
0xdb
,
0x2e
,
0x5e
,
0x71
,
0x76
,
0x54
,
0xa7
,
0x7f
,
0x77
,
0x9e
,
0xfe
,
0x13
,
0x00
,
0x00
,
0xff
,
0xff
,
0xd2
,
0x0f
,
0x63
,
0x87
,
0x06
,
0x12
,
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