From 98cb2d18e98f5c4ddcaa5ef9baacc802f166c946 Mon Sep 17 00:00:00 2001 From: sk <123456@qq.com> Date: Tue, 7 May 2024 09:18:23 +0800 Subject: [PATCH] update --- data/DB_GameItem.dat | Bin 7376 -> 7668 bytes data/DB_GameItem.json | 90 +- data/DB_Game_Drop.dat | 402 ++-- data/DB_Game_Drop.json | 200 ++ data/DB_GiftCard.dat | Bin 57 -> 57 bytes data/DB_PigBank_Diamond.dat | 4 + data/DB_PigBank_Diamond.json | 22 + data/DB_Pigbank_Prop.dat | 4 + data/DB_Pigbank_Prop.json | 19 + data/DB_PropExchange.dat | 6 +- data/DB_Task.dat | Bin 1999 -> 1999 bytes data/DB_VIP.dat | Bin 2114 -> 839 bytes data/DB_VIP.json | 85 - protocol/bag/bag.pb.go | 14 +- protocol/bag/bag.proto | 1 + protocol/player/player.pb.go | 782 ++++---- protocol/player/player.proto | 12 +- protocol/server/pbdata.pb.go | 1279 +++++++----- protocol/server/pbdata.proto | 32 +- protocol/server/server.pb.go | 3331 ++++++++++++++++---------------- protocol/server/server.proto | 10 +- protocol/tienlen/tienlen.pb.go | 582 +++--- protocol/tienlen/tienlen.proto | 8 +- protocol/welfare/welfare.pb.go | 544 +++++- protocol/welfare/welfare.proto | 39 + xlsx/DB_GameItem.xlsx | Bin 42655 -> 42959 bytes xlsx/DB_Game_Drop.xlsx | Bin 18603 -> 18839 bytes xlsx/DB_PigBank_Diamond.xlsx | Bin 0 -> 10532 bytes xlsx/DB_Pigbank_Prop.xlsx | Bin 0 -> 13595 bytes 29 files changed, 4326 insertions(+), 3140 deletions(-) create mode 100644 data/DB_PigBank_Diamond.dat create mode 100644 data/DB_PigBank_Diamond.json create mode 100644 data/DB_Pigbank_Prop.dat create mode 100644 data/DB_Pigbank_Prop.json create mode 100644 xlsx/DB_PigBank_Diamond.xlsx create mode 100644 xlsx/DB_Pigbank_Prop.xlsx diff --git a/data/DB_GameItem.dat b/data/DB_GameItem.dat index a4a78db034a51389ab13bf9eae2f05a0ad721561..0d0b040c16fbd8b082d585c30551da6b9d0cc063 100644 GIT binary patch delta 230 zcmca$`Nev}M=p(cj)zy6g(OQdQ}c3C^Iojm@Vv9<>C6=xhEF&2KbyWyQ;La^QHhy> zVX^?XrCAKeBcNh2EQ*(`gsWuG;5PzlV6Xxa5sV2ElNGr&fLb48)oT0{k5&(`)>w`w QShbqt)4F1_0`~?%0A(;rvH$=8 delta 48 zcmV-00MGyQJJ30>@d_VS2;tNN5)gE0Wo~R`Zs@MC=ZTEvnW!290RbWd0RfX43pulG G42KZ`eG-cR diff --git a/data/DB_GameItem.json b/data/DB_GameItem.json index 55de895..9aa01b8 100644 --- a/data/DB_GameItem.json +++ b/data/DB_GameItem.json @@ -711,14 +711,14 @@ }, { "Id": 60001, - "Name": "tienlen记牌器", + "Name": "tienlen记牌器(1小时)", "ShowLocation": [ 1, 1 ], "Classify": [ - 1, - 1, + 0, + 0, 0 ], "Type": 15, @@ -737,6 +737,90 @@ "Location": "0", "Describe": "tienlen游戏记录打出过的牌" }, + { + "Id": 60002, + "Name": "tienlen记牌器(1天)", + "ShowLocation": [ + 1, + 1 + ], + "Classify": [ + 0, + 0, + 0 + ], + "Type": 15, + "Effect0": [ + 0, + 0, + 0 + ], + "Effect": [ + 0, + 0, + 0 + ], + "CompositionMax": 1, + "Time": 24, + "Location": "0", + "Describe": "tienlen游戏记录打出过的牌" + }, + { + "Id": 60003, + "Name": "tienlen记牌器(3天)", + "ShowLocation": [ + 1, + 1 + ], + "Classify": [ + 0, + 0, + 0 + ], + "Type": 15, + "Effect0": [ + 0, + 0, + 0 + ], + "Effect": [ + 0, + 0, + 0 + ], + "CompositionMax": 1, + "Time": 72, + "Location": "0", + "Describe": "tienlen游戏记录打出过的牌" + }, + { + "Id": 60004, + "Name": "tienlen记牌器(7天)", + "ShowLocation": [ + 1, + 1 + ], + "Classify": [ + 0, + 0, + 0 + ], + "Type": 15, + "Effect0": [ + 0, + 0, + 0 + ], + "Effect": [ + 0, + 0, + 0 + ], + "CompositionMax": 1, + "Time": 168, + "Location": "0", + "Describe": "tienlen游戏记录打出过的牌" + }, { "Id": 100001, "Name": "金币", diff --git a/data/DB_Game_Drop.dat b/data/DB_Game_Drop.dat index dd4cd85..24c00a3 100644 --- a/data/DB_Game_Drop.dat +++ b/data/DB_Game_Drop.dat @@ -1,210 +1,210 @@ -(: -'(: -N(: -u(: -(: -(: -(: -(: - (: - -(: - І(: - ح(: - (: -(: -(: -(: -(: -(: -(: -(: -(: - (: - (: -(: -(: -(: -(: -л(: -(: -!(: -$(: - '(: -!*(: -"-(: -#0(: -$3(: -%6(: -&9(: -'=(: -(z(: +(0N: +'(0N: +N(0N: +u(0N: +(0N: +(0N: +(0N: +(0N: + (0N: + +(0N: + І(0N: + ح(0N: + (0N: +(0N: +(0N: +(0N: +(0N: +(0N: +(0N: +(0N: +(0N: + (0N: + (0N: +(0N: +(0N: +(0N: +(0N: +л(0N: +(0N: +!(0N: +$(0N: + '(0N: +!*(0N: +"-(0N: +#0(0N: +$3(0N: +%6(0N: +&9(0N: +'=(0N: +(z(0N: -)(: +)(0N:  -*(:2 -+Ó(:2K -, (:Kd -- (:d} -.(:} -/(: -0(: -1ʺ(: -2(: -3(: -4'(: -5N(: -6u(: -7(: -8(: -9(: -:(: -;(: -<(: -=І(: ->ح(: -?(: -@(: -A(: -B(: -C(: -D(: -E(: -F(: -G(: -H (: -I (: -J(: -K(: -L(: -M(: -Nл(: -O(: -P!(: -Q$(: -R'(: -S*(: -T-(: -U0(: -V3(: -W6(: -X9(: -Y=(: -Zz(: +*(0N:2 ++Ó(0N:2K +, (0N:Kd +- (0N:d} +.(0N:} +/(0N: +0(0N: +1ʺ(0N: +2(0N: +3(0N: +4'(0N: +5N(0N: +6u(0N: +7(0N: +8(0N: +9(0N: +:(0N: +;(0N: +<(0N: +=І(0N: +>ح(0N: +?(0N: +@(0N: +A(0N: +B(0N: +C(0N: +D(0N: +E(0N: +F(0N: +G(0N: +H (0N: +I (0N: +J(0N: +K(0N: +L(0N: +M(0N: +Nл(0N: +O(0N: +P!(0N: +Q$(0N: +R'(0N: +S*(0N: +T-(0N: +U0(0N: +V3(0N: +W6(0N: +X9(0N: +Y=(0N: +Zz(0N: -[(: +[(0N:  -\(:2 -]Ó(:2K -^ (:Kd -_ (:d} -`(:} -a(: -b(: -cʺ(: -d(: -e(: -f'(: -gN(: -hu(: -i(: -j(: -k(: -l(: -m(: -n(: -oІ(: -pح(: -q(: -r(: -s(: -t(: -u(: -v(: -w(: -x(: -y(: -z (: -{ (: -|(: -}(: -~(: -(: -л(: -(: -!(: -$(: -'(: -*(: --(: -0(: -3(: -6(: -9(: -=(: -z(: +\(0N:2 +]Ó(0N:2K +^ (0N:Kd +_ (0N:d} +`(0N:} +a(0N: +b(0N: +cʺ(0N: +d(0N: +e(0N: +f'(0N: +gN(0N: +hu(0N: +i(0N: +j(0N: +k(0N: +l(0N: +m(0N: +n(0N: +oІ(0N: +pح(0N: +q(0N: +r(0N: +s(0N: +t(0N: +u(0N: +v(0N: +w(0N: +x(0N: +y(0N: +z (0N: +{ (0N: +|(0N: +}(0N: +~(0N: +(0N: +л(0N: +(0N: +!(0N: +$(0N: +'(0N: +*(0N: +-(0N: +0(0N: +3(0N: +6(0N: +9(0N: +=(0N: +z(0N: -(: +(0N:  -(:2 -Ó(:2K - (:Kd - (:d} -(:} -(: -(: -ʺ(: -(: -(: -'(: -N(: -u(: -(: -(: -(: -(: -(: -(: -І(: -ح(: -(: -(: -(: -(: -(: -(: -(: -(: -(: - (: - (: -(: -(: -(: -(: -л(: -(: -!(: -$(: -'(: -*(: --(: -0(: -3(: -6(: -9(: -=(: -z(: +(0N:2 +Ó(0N:2K + (0N:Kd + (0N:d} +(0N:} +(0N: +(0N: +ʺ(0N: +(0N: +(0N: +'(0N: +N(0N: +u(0N: +(0N: +(0N: +(0N: +(0N: +(0N: +(0N: +І(0N: +ح(0N: +(0N: +(0N: +(0N: +(0N: +(0N: +(0N: +(0N: +(0N: +(0N: + (0N: + (0N: +(0N: +(0N: +(0N: +(0N: +л(0N: +(0N: +!(0N: +$(0N: +'(0N: +*(0N: +-(0N: +0(0N: +3(0N: +6(0N: +9(0N: +=(0N: +z(0N: -(: +(0N:  -(:2 -Ó(:2K - (:Kd - (:d} -(:} -(: -(: -ʺ(: -(: \ No newline at end of file +(0N:2 +Ó(0N:2K + (0N:Kd + (0N:d} +(0N:} +(0N: +(0N: +ʺ(0N: +(0N: \ No newline at end of file diff --git a/data/DB_Game_Drop.json b/data/DB_Game_Drop.json index 6a6e23b..c4a5866 100644 --- a/data/DB_Game_Drop.json +++ b/data/DB_Game_Drop.json @@ -5,6 +5,7 @@ "GameId": 207, "Bet": 2000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -15,6 +16,7 @@ "GameId": 207, "Bet": 5000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -25,6 +27,7 @@ "GameId": 207, "Bet": 10000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -35,6 +38,7 @@ "GameId": 207, "Bet": 15000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -45,6 +49,7 @@ "GameId": 207, "Bet": 20000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -55,6 +60,7 @@ "GameId": 207, "Bet": 25000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -65,6 +71,7 @@ "GameId": 207, "Bet": 30000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -75,6 +82,7 @@ "GameId": 207, "Bet": 35000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -85,6 +93,7 @@ "GameId": 207, "Bet": 40000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -95,6 +104,7 @@ "GameId": 207, "Bet": 45000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -105,6 +115,7 @@ "GameId": 207, "Bet": 50000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -115,6 +126,7 @@ "GameId": 207, "Bet": 55000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -125,6 +137,7 @@ "GameId": 207, "Bet": 60000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -135,6 +148,7 @@ "GameId": 207, "Bet": 65000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -145,6 +159,7 @@ "GameId": 207, "Bet": 70000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -155,6 +170,7 @@ "GameId": 207, "Bet": 75000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -165,6 +181,7 @@ "GameId": 207, "Bet": 80000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -175,6 +192,7 @@ "GameId": 207, "Bet": 85000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -185,6 +203,7 @@ "GameId": 207, "Bet": 90000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -195,6 +214,7 @@ "GameId": 207, "Bet": 95000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -205,6 +225,7 @@ "GameId": 207, "Bet": 100000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -215,6 +236,7 @@ "GameId": 207, "Bet": 150000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -225,6 +247,7 @@ "GameId": 207, "Bet": 200000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -235,6 +258,7 @@ "GameId": 207, "Bet": 250000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -245,6 +269,7 @@ "GameId": 207, "Bet": 300000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -255,6 +280,7 @@ "GameId": 207, "Bet": 350000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -265,6 +291,7 @@ "GameId": 207, "Bet": 400000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -275,6 +302,7 @@ "GameId": 207, "Bet": 450000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -285,6 +313,7 @@ "GameId": 207, "Bet": 500000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -295,6 +324,7 @@ "GameId": 207, "Bet": 550000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -305,6 +335,7 @@ "GameId": 207, "Bet": 600000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -315,6 +346,7 @@ "GameId": 207, "Bet": 650000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -325,6 +357,7 @@ "GameId": 207, "Bet": 700000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -335,6 +368,7 @@ "GameId": 207, "Bet": 750000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -345,6 +379,7 @@ "GameId": 207, "Bet": 800000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -355,6 +390,7 @@ "GameId": 207, "Bet": 850000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -365,6 +401,7 @@ "GameId": 207, "Bet": 900000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -375,6 +412,7 @@ "GameId": 207, "Bet": 950000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -385,6 +423,7 @@ "GameId": 207, "Bet": 1000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -395,6 +434,7 @@ "GameId": 207, "Bet": 2000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 5, 10 @@ -405,6 +445,7 @@ "GameId": 207, "Bet": 5000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 10, 25 @@ -415,6 +456,7 @@ "GameId": 207, "Bet": 10000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 25, 50 @@ -425,6 +467,7 @@ "GameId": 207, "Bet": 15000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 50, 75 @@ -435,6 +478,7 @@ "GameId": 207, "Bet": 20000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 75, 100 @@ -445,6 +489,7 @@ "GameId": 207, "Bet": 25000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 100, 125 @@ -455,6 +500,7 @@ "GameId": 207, "Bet": 30000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 125, 150 @@ -465,6 +511,7 @@ "GameId": 207, "Bet": 35000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 150, 175 @@ -475,6 +522,7 @@ "GameId": 207, "Bet": 40000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 175, 200 @@ -485,6 +533,7 @@ "GameId": 207, "Bet": 45000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 200, 225 @@ -495,6 +544,7 @@ "GameId": 207, "Bet": 50000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 225, 250 @@ -505,6 +555,7 @@ "GameId": 208, "Bet": 2000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -515,6 +566,7 @@ "GameId": 208, "Bet": 5000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -525,6 +577,7 @@ "GameId": 208, "Bet": 10000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -535,6 +588,7 @@ "GameId": 208, "Bet": 15000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -545,6 +599,7 @@ "GameId": 208, "Bet": 20000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -555,6 +610,7 @@ "GameId": 208, "Bet": 25000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -565,6 +621,7 @@ "GameId": 208, "Bet": 30000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -575,6 +632,7 @@ "GameId": 208, "Bet": 35000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -585,6 +643,7 @@ "GameId": 208, "Bet": 40000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -595,6 +654,7 @@ "GameId": 208, "Bet": 45000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -605,6 +665,7 @@ "GameId": 208, "Bet": 50000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -615,6 +676,7 @@ "GameId": 208, "Bet": 55000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -625,6 +687,7 @@ "GameId": 208, "Bet": 60000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -635,6 +698,7 @@ "GameId": 208, "Bet": 65000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -645,6 +709,7 @@ "GameId": 208, "Bet": 70000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -655,6 +720,7 @@ "GameId": 208, "Bet": 75000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -665,6 +731,7 @@ "GameId": 208, "Bet": 80000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -675,6 +742,7 @@ "GameId": 208, "Bet": 85000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -685,6 +753,7 @@ "GameId": 208, "Bet": 90000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -695,6 +764,7 @@ "GameId": 208, "Bet": 95000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -705,6 +775,7 @@ "GameId": 208, "Bet": 100000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -715,6 +786,7 @@ "GameId": 208, "Bet": 150000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -725,6 +797,7 @@ "GameId": 208, "Bet": 200000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -735,6 +808,7 @@ "GameId": 208, "Bet": 250000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -745,6 +819,7 @@ "GameId": 208, "Bet": 300000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -755,6 +830,7 @@ "GameId": 208, "Bet": 350000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -765,6 +841,7 @@ "GameId": 208, "Bet": 400000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -775,6 +852,7 @@ "GameId": 208, "Bet": 450000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -785,6 +863,7 @@ "GameId": 208, "Bet": 500000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -795,6 +874,7 @@ "GameId": 208, "Bet": 550000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -805,6 +885,7 @@ "GameId": 208, "Bet": 600000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -815,6 +896,7 @@ "GameId": 208, "Bet": 650000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -825,6 +907,7 @@ "GameId": 208, "Bet": 700000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -835,6 +918,7 @@ "GameId": 208, "Bet": 750000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -845,6 +929,7 @@ "GameId": 208, "Bet": 800000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -855,6 +940,7 @@ "GameId": 208, "Bet": 850000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -865,6 +951,7 @@ "GameId": 208, "Bet": 900000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -875,6 +962,7 @@ "GameId": 208, "Bet": 950000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -885,6 +973,7 @@ "GameId": 208, "Bet": 1000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -895,6 +984,7 @@ "GameId": 208, "Bet": 2000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 5, 10 @@ -905,6 +995,7 @@ "GameId": 208, "Bet": 5000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 10, 25 @@ -915,6 +1006,7 @@ "GameId": 208, "Bet": 10000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 25, 50 @@ -925,6 +1017,7 @@ "GameId": 208, "Bet": 15000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 50, 75 @@ -935,6 +1028,7 @@ "GameId": 208, "Bet": 20000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 75, 100 @@ -945,6 +1039,7 @@ "GameId": 208, "Bet": 25000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 100, 125 @@ -955,6 +1050,7 @@ "GameId": 208, "Bet": 30000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 125, 150 @@ -965,6 +1061,7 @@ "GameId": 208, "Bet": 35000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 150, 175 @@ -975,6 +1072,7 @@ "GameId": 208, "Bet": 40000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 175, 200 @@ -985,6 +1083,7 @@ "GameId": 208, "Bet": 45000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 200, 225 @@ -995,6 +1094,7 @@ "GameId": 208, "Bet": 50000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 225, 250 @@ -1005,6 +1105,7 @@ "GameId": 209, "Bet": 2000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1015,6 +1116,7 @@ "GameId": 209, "Bet": 5000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1025,6 +1127,7 @@ "GameId": 209, "Bet": 10000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1035,6 +1138,7 @@ "GameId": 209, "Bet": 15000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1045,6 +1149,7 @@ "GameId": 209, "Bet": 20000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1055,6 +1160,7 @@ "GameId": 209, "Bet": 25000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1065,6 +1171,7 @@ "GameId": 209, "Bet": 30000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1075,6 +1182,7 @@ "GameId": 209, "Bet": 35000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1085,6 +1193,7 @@ "GameId": 209, "Bet": 40000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1095,6 +1204,7 @@ "GameId": 209, "Bet": 45000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1105,6 +1215,7 @@ "GameId": 209, "Bet": 50000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1115,6 +1226,7 @@ "GameId": 209, "Bet": 55000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1125,6 +1237,7 @@ "GameId": 209, "Bet": 60000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1135,6 +1248,7 @@ "GameId": 209, "Bet": 65000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1145,6 +1259,7 @@ "GameId": 209, "Bet": 70000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1155,6 +1270,7 @@ "GameId": 209, "Bet": 75000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1165,6 +1281,7 @@ "GameId": 209, "Bet": 80000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1175,6 +1292,7 @@ "GameId": 209, "Bet": 85000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1185,6 +1303,7 @@ "GameId": 209, "Bet": 90000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1195,6 +1314,7 @@ "GameId": 209, "Bet": 95000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1205,6 +1325,7 @@ "GameId": 209, "Bet": 100000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1215,6 +1336,7 @@ "GameId": 209, "Bet": 150000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1225,6 +1347,7 @@ "GameId": 209, "Bet": 200000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1235,6 +1358,7 @@ "GameId": 209, "Bet": 250000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1245,6 +1369,7 @@ "GameId": 209, "Bet": 300000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -1255,6 +1380,7 @@ "GameId": 209, "Bet": 350000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -1265,6 +1391,7 @@ "GameId": 209, "Bet": 400000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -1275,6 +1402,7 @@ "GameId": 209, "Bet": 450000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -1285,6 +1413,7 @@ "GameId": 209, "Bet": 500000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -1295,6 +1424,7 @@ "GameId": 209, "Bet": 550000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -1305,6 +1435,7 @@ "GameId": 209, "Bet": 600000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -1315,6 +1446,7 @@ "GameId": 209, "Bet": 650000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -1325,6 +1457,7 @@ "GameId": 209, "Bet": 700000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -1335,6 +1468,7 @@ "GameId": 209, "Bet": 750000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -1345,6 +1479,7 @@ "GameId": 209, "Bet": 800000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -1355,6 +1490,7 @@ "GameId": 209, "Bet": 850000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -1365,6 +1501,7 @@ "GameId": 209, "Bet": 900000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -1375,6 +1512,7 @@ "GameId": 209, "Bet": 950000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -1385,6 +1523,7 @@ "GameId": 209, "Bet": 1000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -1395,6 +1534,7 @@ "GameId": 209, "Bet": 2000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 5, 10 @@ -1405,6 +1545,7 @@ "GameId": 209, "Bet": 5000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 10, 25 @@ -1415,6 +1556,7 @@ "GameId": 209, "Bet": 10000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 25, 50 @@ -1425,6 +1567,7 @@ "GameId": 209, "Bet": 15000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 50, 75 @@ -1435,6 +1578,7 @@ "GameId": 209, "Bet": 20000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 75, 100 @@ -1445,6 +1589,7 @@ "GameId": 209, "Bet": 25000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 100, 125 @@ -1455,6 +1600,7 @@ "GameId": 209, "Bet": 30000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 125, 150 @@ -1465,6 +1611,7 @@ "GameId": 209, "Bet": 35000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 150, 175 @@ -1475,6 +1622,7 @@ "GameId": 209, "Bet": 40000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 175, 200 @@ -1485,6 +1633,7 @@ "GameId": 209, "Bet": 45000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 200, 225 @@ -1495,6 +1644,7 @@ "GameId": 209, "Bet": 50000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 225, 250 @@ -1505,6 +1655,7 @@ "GameId": 210, "Bet": 2000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1515,6 +1666,7 @@ "GameId": 210, "Bet": 5000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1525,6 +1677,7 @@ "GameId": 210, "Bet": 10000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1535,6 +1688,7 @@ "GameId": 210, "Bet": 15000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1545,6 +1699,7 @@ "GameId": 210, "Bet": 20000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1555,6 +1710,7 @@ "GameId": 210, "Bet": 25000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1565,6 +1721,7 @@ "GameId": 210, "Bet": 30000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1575,6 +1732,7 @@ "GameId": 210, "Bet": 35000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1585,6 +1743,7 @@ "GameId": 210, "Bet": 40000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1595,6 +1754,7 @@ "GameId": 210, "Bet": 45000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1605,6 +1765,7 @@ "GameId": 210, "Bet": 50000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1615,6 +1776,7 @@ "GameId": 210, "Bet": 55000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1625,6 +1787,7 @@ "GameId": 210, "Bet": 60000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1635,6 +1798,7 @@ "GameId": 210, "Bet": 65000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1645,6 +1809,7 @@ "GameId": 210, "Bet": 70000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1655,6 +1820,7 @@ "GameId": 210, "Bet": 75000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1665,6 +1831,7 @@ "GameId": 210, "Bet": 80000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1675,6 +1842,7 @@ "GameId": 210, "Bet": 85000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1685,6 +1853,7 @@ "GameId": 210, "Bet": 90000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1695,6 +1864,7 @@ "GameId": 210, "Bet": 95000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1705,6 +1875,7 @@ "GameId": 210, "Bet": 100000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1715,6 +1886,7 @@ "GameId": 210, "Bet": 150000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1725,6 +1897,7 @@ "GameId": 210, "Bet": 200000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1735,6 +1908,7 @@ "GameId": 210, "Bet": 250000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 1 @@ -1745,6 +1919,7 @@ "GameId": 210, "Bet": 300000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -1755,6 +1930,7 @@ "GameId": 210, "Bet": 350000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -1765,6 +1941,7 @@ "GameId": 210, "Bet": 400000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -1775,6 +1952,7 @@ "GameId": 210, "Bet": 450000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 1, 2 @@ -1785,6 +1963,7 @@ "GameId": 210, "Bet": 500000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -1795,6 +1974,7 @@ "GameId": 210, "Bet": 550000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -1805,6 +1985,7 @@ "GameId": 210, "Bet": 600000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -1815,6 +1996,7 @@ "GameId": 210, "Bet": 650000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 3 @@ -1825,6 +2007,7 @@ "GameId": 210, "Bet": 700000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -1835,6 +2018,7 @@ "GameId": 210, "Bet": 750000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -1845,6 +2029,7 @@ "GameId": 210, "Bet": 800000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -1855,6 +2040,7 @@ "GameId": 210, "Bet": 850000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 2, 4 @@ -1865,6 +2051,7 @@ "GameId": 210, "Bet": 900000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -1875,6 +2062,7 @@ "GameId": 210, "Bet": 950000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -1885,6 +2073,7 @@ "GameId": 210, "Bet": 1000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 3, 5 @@ -1895,6 +2084,7 @@ "GameId": 210, "Bet": 2000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 5, 10 @@ -1905,6 +2095,7 @@ "GameId": 210, "Bet": 5000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 10, 25 @@ -1915,6 +2106,7 @@ "GameId": 210, "Bet": 10000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 25, 50 @@ -1925,6 +2117,7 @@ "GameId": 210, "Bet": 15000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 50, 75 @@ -1935,6 +2128,7 @@ "GameId": 210, "Bet": 20000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 75, 100 @@ -1945,6 +2139,7 @@ "GameId": 210, "Bet": 25000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 100, 125 @@ -1955,6 +2150,7 @@ "GameId": 210, "Bet": 30000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 125, 150 @@ -1965,6 +2161,7 @@ "GameId": 210, "Bet": 35000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 150, 175 @@ -1975,6 +2172,7 @@ "GameId": 210, "Bet": 40000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 175, 200 @@ -1985,6 +2183,7 @@ "GameId": 210, "Bet": 45000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 200, 225 @@ -1995,6 +2194,7 @@ "GameId": 210, "Bet": 50000000, "ItemId1": 30001, + "Rate1": 10000, "Amount1": [ 225, 250 diff --git a/data/DB_GiftCard.dat b/data/DB_GiftCard.dat index 96640b07f274cbbbda035ee3e52503c8356a73cb..15600367ff42a73b75826e6378f02a3bde3a8661 100644 GIT binary patch delta 38 pcmcDtoFJjd#&NNYS%6E4lVf2oo4|o-8=15?Aj}q919mG$1^~Z739kSE delta 38 pcmcDtoFJjd$+57PP2j+^jZ8{x92eV|1-P_0AVMv+2JBXh3;@YB39kSE diff --git a/data/DB_PigBank_Diamond.dat b/data/DB_PigBank_Diamond.dat new file mode 100644 index 0000000..75bdd9f --- /dev/null +++ b/data/DB_PigBank_Diamond.dat @@ -0,0 +1,4 @@ + +  + ( + / 2 \ No newline at end of file diff --git a/data/DB_PigBank_Diamond.json b/data/DB_PigBank_Diamond.json new file mode 100644 index 0000000..ab24207 --- /dev/null +++ b/data/DB_PigBank_Diamond.json @@ -0,0 +1,22 @@ +{ + "Arr": [ + { + "Id": 1, + "BuyCountMin": 1, + "BuyCountMax": 1, + "CostDiamond": 30 + }, + { + "Id": 2, + "BuyCountMin": 2, + "BuyCountMax": 2, + "CostDiamond": 40 + }, + { + "Id": 3, + "BuyCountMin": 3, + "BuyCountMax": 99999999, + "CostDiamond": 50 + } + ] +} \ No newline at end of file diff --git a/data/DB_Pigbank_Prop.dat b/data/DB_Pigbank_Prop.dat new file mode 100644 index 0000000..3e9c7d1 --- /dev/null +++ b/data/DB_Pigbank_Prop.dat @@ -0,0 +1,4 @@ + + BankMaxCoinÓ + WinCoinRate + LoseCoinRate diff --git a/data/DB_Pigbank_Prop.json b/data/DB_Pigbank_Prop.json new file mode 100644 index 0000000..dc77318 --- /dev/null +++ b/data/DB_Pigbank_Prop.json @@ -0,0 +1,19 @@ +{ + "Arr": [ + { + "Id": 1, + "PorpName": "BankMaxCoin", + "PropValue": 15000000 + }, + { + "Id": 2, + "PorpName": "WinCoinRate", + "PropValue": 5 + }, + { + "Id": 3, + "PorpName": "LoseCoinRate", + "PropValue": 10 + } + ] +} \ No newline at end of file diff --git a/data/DB_PropExchange.dat b/data/DB_PropExchange.dat index 1b90e94..0ca8146 100644 --- a/data/DB_PropExchange.dat +++ b/data/DB_PropExchange.dat @@ -1,5 +1,5 @@ -6Նֆ׆ӆԆ"= +6ֆ׆ӆԆՆ"= .؆نچۆ"= -WۆՆ׆؆چӆԆֆن"  -]ۆӆԆՆ؆܆ֆ׆نچ" \ No newline at end of file +WՆ؆نچӆԆֆ׆ۆ"  +]ӆՆֆ׆؆Ԇنچۆ܆" \ No newline at end of file diff --git a/data/DB_Task.dat b/data/DB_Task.dat index 8fdc4061386831c4e9120576a186ba8d1b425ae5..4bb461de1b4cc42aff674af6b1f18dc29c65e78f 100644 GIT binary patch delta 183 zcmX@lf1Y1~ONoO~fKh@`fl-6efYFMLV@WTY0IL-T$3h@|p^bT>LbxDAkP9KWv4fu( zD7px!LI?wo%JF%@y*<9OpKFD83iZHv2O$bJ`^z1 delta 161 zcmX@lf1Y1~ONoO~fKh@`fl-6efYFMBV_`3wz=bwuD>jZLKo;vng>XT1L9UG*{LGVG z*aRmRu(D2G%luiHjbjl|v78krSo?wA?TikLTq+z}UNH)YO0X)hXiV^%T*xju`38&4 lkaGZ^aOMN1fIun=9#4;TwF5QXmb%EsMOhz#E7)0q$j%CsZQ8yt}C^MLM5kmR0 o0C@(JPqG+*C^uFhWiPx# literal 2114 zcmcK4O=}ZD7zgmo%Wihlq^XN90|l9bQkYBIw2cb(;z8C+=}899{RCbt5oKv>X#+9Q zLY1v(#G)6g7AozbmJmF6Gk8%%M5PmhLg}F(c=Fkon*9K~hyQcfh5Y!>Gug~l%iP_n zwC}&Xd}&h9dPTV}%Fwja;C$cjGy zIrBnQU%9Biy|STJUHDN|e$<(L(_VX`c5bO{M^*1+t{KRp@M@TK(!7)Q*{Og<*w$ne z#&N>a2KM0sYvp+>FSPw7a~b`YO-Uk^W0r|8kFbRSzAzxPhMRpC${5=@Nh30ew=?zS zQC6GawF#kpduILZ%15M@lw2}2Umj!i2Z%$2=DcRl!wUwjk4rsb(>Pm~4BfYjtTj(K zL}>Nq$*+etvHN8@IXms!XBhmQI0Ux+{#1O@0(_V`izN<$jn9pLI>f16kl6^Hiu0!5FtPz&V2$N<%)J2zzgQ}3VRveum${_) zn?^3+N0_trgK}>Oy;0dj+o4aXeNpx%=l2HwD04o)HMuv0?%X{ player.BillItem 0, // 1: player.SCSavePlayerInfo.OpRetCode:type_name -> player.OpResultCode - 133, // 2: player.PlayerData.RankScore:type_name -> player.PlayerData.RankScoreEntry + 134, // 2: player.PlayerData.RankScore:type_name -> player.PlayerData.RankScoreEntry 9, // 3: player.PlayerData.WeekCard:type_name -> player.WeekInfo 0, // 4: player.SCPlayerData.OpRetCode:type_name -> player.OpResultCode 8, // 5: player.SCPlayerData.Data:type_name -> player.PlayerData 10, // 6: player.SCPlayerData.MiniGameArr:type_name -> player.MiniGameInfo - 134, // 7: player.SCPlayerDataUpdate.RankScore:type_name -> player.SCPlayerDataUpdate.RankScoreEntry + 135, // 7: player.SCPlayerDataUpdate.RankScore:type_name -> player.SCPlayerDataUpdate.RankScoreEntry 8, // 8: player.SCThirdPlayerData.Data:type_name -> player.PlayerData 0, // 9: player.SCChangeNick.OpRetCode:type_name -> player.OpResultCode 0, // 10: player.SCChangePassword.OpRetCode:type_name -> player.OpResultCode @@ -10812,7 +10890,7 @@ var file_player_proto_depIdxs = []int32{ 93, // 41: player.JybInfoAward.ItemId:type_name -> player.ItemInfo 0, // 42: player.SCPlayerSetting.OpRetCode:type_name -> player.OpResultCode 94, // 43: player.SCPlayerSetting.GainItem:type_name -> player.JybInfoAward - 135, // 44: player.SCGameExDropItems.Items:type_name -> player.SCGameExDropItems.ItemsEntry + 136, // 44: player.SCGameExDropItems.Items:type_name -> player.SCGameExDropItems.ItemsEntry 0, // 45: player.SCVIPBuy.OpRetCode:type_name -> player.OpResultCode 0, // 46: player.SCVIPDraw.OpRetCode:type_name -> player.OpResultCode 93, // 47: player.VIPcfg.Item:type_name -> player.ItemInfo @@ -10821,7 +10899,7 @@ var file_player_proto_depIdxs = []int32{ 103, // 50: player.SCVIPInfo.List:type_name -> player.VIPcfg 108, // 51: player.SCPayGoodsInfo.Item:type_name -> player.PayItem 0, // 52: player.SCClientLog.OpRetCode:type_name -> player.OpResultCode - 136, // 53: player.SCBindTelInfo.BindTelReward:type_name -> player.SCBindTelInfo.BindTelRewardEntry + 137, // 53: player.SCBindTelInfo.BindTelReward:type_name -> player.SCBindTelInfo.BindTelRewardEntry 0, // 54: player.SCPlayerSMSCode.Code:type_name -> player.OpResultCode 0, // 55: player.SCBindTel.Code:type_name -> player.OpResultCode 0, // 56: player.SCHttpPass.OpRetCode:type_name -> player.OpResultCode @@ -12414,6 +12492,18 @@ func file_player_proto_init() { return nil } } + file_player_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SCPigBankCoin); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -12421,7 +12511,7 @@ func file_player_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_player_proto_rawDesc, NumEnums: 2, - NumMessages: 135, + NumMessages: 136, NumExtensions: 0, NumServices: 0, }, diff --git a/protocol/player/player.proto b/protocol/player/player.proto index 958569d..5ce93ab 100644 --- a/protocol/player/player.proto +++ b/protocol/player/player.proto @@ -204,7 +204,7 @@ enum PlayerPacketID { PACKET_CSADV = 2821; // 看广告 PACKET_SCADV = 2822; // 看广告 PACKET_SCGetWeekCardAwary = 2823;//领取周卡每日奖励返回 - + PACKET_SCPigBankCoin = 2824;//存钱罐金币数量 } // 账变记录 @@ -1168,4 +1168,12 @@ message SCGetWeekCardAwary{ repeated PayItem Items =2; bool weekCardAward = 3; WeekInfo WeekCard = 4;//周卡 -} \ No newline at end of file +} + +//存钱罐金币数量 +// PACKET_SCPigBankCoin +message SCPigBankCoin { + int64 BankCoin = 1; + int64 BankCoinMax = 2; + int64 AddBankCoin = 3; +} diff --git a/protocol/server/pbdata.pb.go b/protocol/server/pbdata.pb.go index cf49d9f..4ba6722 100644 --- a/protocol/server/pbdata.pb.go +++ b/protocol/server/pbdata.pb.go @@ -7717,6 +7717,234 @@ func (x *DB_PhoneLotteryArray) GetArr() []*DB_PhoneLottery { return nil } +type DB_PigBank_Diamond struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` + BuyCountMin int32 `protobuf:"varint,2,opt,name=BuyCountMin,proto3" json:"BuyCountMin,omitempty"` + BuyCountMax int32 `protobuf:"varint,3,opt,name=BuyCountMax,proto3" json:"BuyCountMax,omitempty"` + CostDiamond int32 `protobuf:"varint,4,opt,name=CostDiamond,proto3" json:"CostDiamond,omitempty"` +} + +func (x *DB_PigBank_Diamond) Reset() { + *x = DB_PigBank_Diamond{} + if protoimpl.UnsafeEnabled { + mi := &file_pbdata_proto_msgTypes[98] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DB_PigBank_Diamond) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DB_PigBank_Diamond) ProtoMessage() {} + +func (x *DB_PigBank_Diamond) ProtoReflect() protoreflect.Message { + mi := &file_pbdata_proto_msgTypes[98] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DB_PigBank_Diamond.ProtoReflect.Descriptor instead. +func (*DB_PigBank_Diamond) Descriptor() ([]byte, []int) { + return file_pbdata_proto_rawDescGZIP(), []int{98} +} + +func (x *DB_PigBank_Diamond) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *DB_PigBank_Diamond) GetBuyCountMin() int32 { + if x != nil { + return x.BuyCountMin + } + return 0 +} + +func (x *DB_PigBank_Diamond) GetBuyCountMax() int32 { + if x != nil { + return x.BuyCountMax + } + return 0 +} + +func (x *DB_PigBank_Diamond) GetCostDiamond() int32 { + if x != nil { + return x.CostDiamond + } + return 0 +} + +type DB_PigBank_DiamondArray struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Arr []*DB_PigBank_Diamond `protobuf:"bytes,1,rep,name=Arr,proto3" json:"Arr,omitempty"` +} + +func (x *DB_PigBank_DiamondArray) Reset() { + *x = DB_PigBank_DiamondArray{} + if protoimpl.UnsafeEnabled { + mi := &file_pbdata_proto_msgTypes[99] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DB_PigBank_DiamondArray) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DB_PigBank_DiamondArray) ProtoMessage() {} + +func (x *DB_PigBank_DiamondArray) ProtoReflect() protoreflect.Message { + mi := &file_pbdata_proto_msgTypes[99] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DB_PigBank_DiamondArray.ProtoReflect.Descriptor instead. +func (*DB_PigBank_DiamondArray) Descriptor() ([]byte, []int) { + return file_pbdata_proto_rawDescGZIP(), []int{99} +} + +func (x *DB_PigBank_DiamondArray) GetArr() []*DB_PigBank_Diamond { + if x != nil { + return x.Arr + } + return nil +} + +type DB_Pigbank_Prop struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` + PorpName string `protobuf:"bytes,2,opt,name=PorpName,proto3" json:"PorpName,omitempty"` + PropValue int32 `protobuf:"varint,3,opt,name=PropValue,proto3" json:"PropValue,omitempty"` +} + +func (x *DB_Pigbank_Prop) Reset() { + *x = DB_Pigbank_Prop{} + if protoimpl.UnsafeEnabled { + mi := &file_pbdata_proto_msgTypes[100] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DB_Pigbank_Prop) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DB_Pigbank_Prop) ProtoMessage() {} + +func (x *DB_Pigbank_Prop) ProtoReflect() protoreflect.Message { + mi := &file_pbdata_proto_msgTypes[100] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DB_Pigbank_Prop.ProtoReflect.Descriptor instead. +func (*DB_Pigbank_Prop) Descriptor() ([]byte, []int) { + return file_pbdata_proto_rawDescGZIP(), []int{100} +} + +func (x *DB_Pigbank_Prop) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *DB_Pigbank_Prop) GetPorpName() string { + if x != nil { + return x.PorpName + } + return "" +} + +func (x *DB_Pigbank_Prop) GetPropValue() int32 { + if x != nil { + return x.PropValue + } + return 0 +} + +type DB_Pigbank_PropArray struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Arr []*DB_Pigbank_Prop `protobuf:"bytes,1,rep,name=Arr,proto3" json:"Arr,omitempty"` +} + +func (x *DB_Pigbank_PropArray) Reset() { + *x = DB_Pigbank_PropArray{} + if protoimpl.UnsafeEnabled { + mi := &file_pbdata_proto_msgTypes[101] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DB_Pigbank_PropArray) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DB_Pigbank_PropArray) ProtoMessage() {} + +func (x *DB_Pigbank_PropArray) ProtoReflect() protoreflect.Message { + mi := &file_pbdata_proto_msgTypes[101] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DB_Pigbank_PropArray.ProtoReflect.Descriptor instead. +func (*DB_Pigbank_PropArray) Descriptor() ([]byte, []int) { + return file_pbdata_proto_rawDescGZIP(), []int{101} +} + +func (x *DB_Pigbank_PropArray) GetArr() []*DB_Pigbank_Prop { + if x != nil { + return x.Arr + } + return nil +} + type DB_PlayerExp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -7729,7 +7957,7 @@ type DB_PlayerExp struct { func (x *DB_PlayerExp) Reset() { *x = DB_PlayerExp{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[98] + mi := &file_pbdata_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7742,7 +7970,7 @@ func (x *DB_PlayerExp) String() string { func (*DB_PlayerExp) ProtoMessage() {} func (x *DB_PlayerExp) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[98] + mi := &file_pbdata_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7755,7 +7983,7 @@ func (x *DB_PlayerExp) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PlayerExp.ProtoReflect.Descriptor instead. func (*DB_PlayerExp) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{98} + return file_pbdata_proto_rawDescGZIP(), []int{102} } func (x *DB_PlayerExp) GetId() int32 { @@ -7783,7 +8011,7 @@ type DB_PlayerExpArray struct { func (x *DB_PlayerExpArray) Reset() { *x = DB_PlayerExpArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[99] + mi := &file_pbdata_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7796,7 +8024,7 @@ func (x *DB_PlayerExpArray) String() string { func (*DB_PlayerExpArray) ProtoMessage() {} func (x *DB_PlayerExpArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[99] + mi := &file_pbdata_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7809,7 +8037,7 @@ func (x *DB_PlayerExpArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PlayerExpArray.ProtoReflect.Descriptor instead. func (*DB_PlayerExpArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{99} + return file_pbdata_proto_rawDescGZIP(), []int{103} } func (x *DB_PlayerExpArray) GetArr() []*DB_PlayerExp { @@ -7834,7 +8062,7 @@ type DB_PlayerInfo struct { func (x *DB_PlayerInfo) Reset() { *x = DB_PlayerInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[100] + mi := &file_pbdata_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7847,7 +8075,7 @@ func (x *DB_PlayerInfo) String() string { func (*DB_PlayerInfo) ProtoMessage() {} func (x *DB_PlayerInfo) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[100] + mi := &file_pbdata_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7860,7 +8088,7 @@ func (x *DB_PlayerInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PlayerInfo.ProtoReflect.Descriptor instead. func (*DB_PlayerInfo) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{100} + return file_pbdata_proto_rawDescGZIP(), []int{104} } func (x *DB_PlayerInfo) GetCity() string { @@ -7909,7 +8137,7 @@ type DB_PlayerInfoArray struct { func (x *DB_PlayerInfoArray) Reset() { *x = DB_PlayerInfoArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[101] + mi := &file_pbdata_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7922,7 +8150,7 @@ func (x *DB_PlayerInfoArray) String() string { func (*DB_PlayerInfoArray) ProtoMessage() {} func (x *DB_PlayerInfoArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[101] + mi := &file_pbdata_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7935,7 +8163,7 @@ func (x *DB_PlayerInfoArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PlayerInfoArray.ProtoReflect.Descriptor instead. func (*DB_PlayerInfoArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{101} + return file_pbdata_proto_rawDescGZIP(), []int{105} } func (x *DB_PlayerInfoArray) GetArr() []*DB_PlayerInfo { @@ -7973,7 +8201,7 @@ type DB_PlayerType struct { func (x *DB_PlayerType) Reset() { *x = DB_PlayerType{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[102] + mi := &file_pbdata_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7986,7 +8214,7 @@ func (x *DB_PlayerType) String() string { func (*DB_PlayerType) ProtoMessage() {} func (x *DB_PlayerType) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[102] + mi := &file_pbdata_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7999,7 +8227,7 @@ func (x *DB_PlayerType) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PlayerType.ProtoReflect.Descriptor instead. func (*DB_PlayerType) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{102} + return file_pbdata_proto_rawDescGZIP(), []int{106} } func (x *DB_PlayerType) GetId() int32 { @@ -8139,7 +8367,7 @@ type DB_PlayerTypeArray struct { func (x *DB_PlayerTypeArray) Reset() { *x = DB_PlayerTypeArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[103] + mi := &file_pbdata_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8152,7 +8380,7 @@ func (x *DB_PlayerTypeArray) String() string { func (*DB_PlayerTypeArray) ProtoMessage() {} func (x *DB_PlayerTypeArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[103] + mi := &file_pbdata_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8165,7 +8393,7 @@ func (x *DB_PlayerTypeArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PlayerTypeArray.ProtoReflect.Descriptor instead. func (*DB_PlayerTypeArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{103} + return file_pbdata_proto_rawDescGZIP(), []int{107} } func (x *DB_PlayerTypeArray) GetArr() []*DB_PlayerType { @@ -8189,7 +8417,7 @@ type DB_PotOdd struct { func (x *DB_PotOdd) Reset() { *x = DB_PotOdd{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[104] + mi := &file_pbdata_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8202,7 +8430,7 @@ func (x *DB_PotOdd) String() string { func (*DB_PotOdd) ProtoMessage() {} func (x *DB_PotOdd) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[104] + mi := &file_pbdata_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8215,7 +8443,7 @@ func (x *DB_PotOdd) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PotOdd.ProtoReflect.Descriptor instead. func (*DB_PotOdd) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{104} + return file_pbdata_proto_rawDescGZIP(), []int{108} } func (x *DB_PotOdd) GetId() int32 { @@ -8257,7 +8485,7 @@ type DB_PotOddArray struct { func (x *DB_PotOddArray) Reset() { *x = DB_PotOddArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[105] + mi := &file_pbdata_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8270,7 +8498,7 @@ func (x *DB_PotOddArray) String() string { func (*DB_PotOddArray) ProtoMessage() {} func (x *DB_PotOddArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[105] + mi := &file_pbdata_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8283,7 +8511,7 @@ func (x *DB_PotOddArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PotOddArray.ProtoReflect.Descriptor instead. func (*DB_PotOddArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{105} + return file_pbdata_proto_rawDescGZIP(), []int{109} } func (x *DB_PotOddArray) GetArr() []*DB_PotOdd { @@ -8307,7 +8535,7 @@ type DB_PropExchange struct { func (x *DB_PropExchange) Reset() { *x = DB_PropExchange{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[106] + mi := &file_pbdata_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8320,7 +8548,7 @@ func (x *DB_PropExchange) String() string { func (*DB_PropExchange) ProtoMessage() {} func (x *DB_PropExchange) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[106] + mi := &file_pbdata_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8333,7 +8561,7 @@ func (x *DB_PropExchange) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PropExchange.ProtoReflect.Descriptor instead. func (*DB_PropExchange) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{106} + return file_pbdata_proto_rawDescGZIP(), []int{110} } func (x *DB_PropExchange) GetId() int32 { @@ -8375,7 +8603,7 @@ type DB_PropExchangeArray struct { func (x *DB_PropExchangeArray) Reset() { *x = DB_PropExchangeArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[107] + mi := &file_pbdata_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8388,7 +8616,7 @@ func (x *DB_PropExchangeArray) String() string { func (*DB_PropExchangeArray) ProtoMessage() {} func (x *DB_PropExchangeArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[107] + mi := &file_pbdata_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8401,7 +8629,7 @@ func (x *DB_PropExchangeArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PropExchangeArray.ProtoReflect.Descriptor instead. func (*DB_PropExchangeArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{107} + return file_pbdata_proto_rawDescGZIP(), []int{111} } func (x *DB_PropExchangeArray) GetArr() []*DB_PropExchange { @@ -8424,7 +8652,7 @@ type DB_RankCycle struct { func (x *DB_RankCycle) Reset() { *x = DB_RankCycle{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[108] + mi := &file_pbdata_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8437,7 +8665,7 @@ func (x *DB_RankCycle) String() string { func (*DB_RankCycle) ProtoMessage() {} func (x *DB_RankCycle) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[108] + mi := &file_pbdata_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8450,7 +8678,7 @@ func (x *DB_RankCycle) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_RankCycle.ProtoReflect.Descriptor instead. func (*DB_RankCycle) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{108} + return file_pbdata_proto_rawDescGZIP(), []int{112} } func (x *DB_RankCycle) GetId() int32 { @@ -8485,7 +8713,7 @@ type DB_RankCycleArray struct { func (x *DB_RankCycleArray) Reset() { *x = DB_RankCycleArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[109] + mi := &file_pbdata_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8498,7 +8726,7 @@ func (x *DB_RankCycleArray) String() string { func (*DB_RankCycleArray) ProtoMessage() {} func (x *DB_RankCycleArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[109] + mi := &file_pbdata_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8511,7 +8739,7 @@ func (x *DB_RankCycleArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_RankCycleArray.ProtoReflect.Descriptor instead. func (*DB_RankCycleArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{109} + return file_pbdata_proto_rawDescGZIP(), []int{113} } func (x *DB_RankCycleArray) GetArr() []*DB_RankCycle { @@ -8536,7 +8764,7 @@ type DB_RankLevel struct { func (x *DB_RankLevel) Reset() { *x = DB_RankLevel{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[110] + mi := &file_pbdata_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8549,7 +8777,7 @@ func (x *DB_RankLevel) String() string { func (*DB_RankLevel) ProtoMessage() {} func (x *DB_RankLevel) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[110] + mi := &file_pbdata_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8562,7 +8790,7 @@ func (x *DB_RankLevel) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_RankLevel.ProtoReflect.Descriptor instead. func (*DB_RankLevel) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{110} + return file_pbdata_proto_rawDescGZIP(), []int{114} } func (x *DB_RankLevel) GetId() int32 { @@ -8611,7 +8839,7 @@ type DB_RankLevelArray struct { func (x *DB_RankLevelArray) Reset() { *x = DB_RankLevelArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[111] + mi := &file_pbdata_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8624,7 +8852,7 @@ func (x *DB_RankLevelArray) String() string { func (*DB_RankLevelArray) ProtoMessage() {} func (x *DB_RankLevelArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[111] + mi := &file_pbdata_proto_msgTypes[115] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8637,7 +8865,7 @@ func (x *DB_RankLevelArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_RankLevelArray.ProtoReflect.Descriptor instead. func (*DB_RankLevelArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{111} + return file_pbdata_proto_rawDescGZIP(), []int{115} } func (x *DB_RankLevelArray) GetArr() []*DB_RankLevel { @@ -8666,7 +8894,7 @@ type DB_RankReward struct { func (x *DB_RankReward) Reset() { *x = DB_RankReward{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[112] + mi := &file_pbdata_proto_msgTypes[116] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8679,7 +8907,7 @@ func (x *DB_RankReward) String() string { func (*DB_RankReward) ProtoMessage() {} func (x *DB_RankReward) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[112] + mi := &file_pbdata_proto_msgTypes[116] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8692,7 +8920,7 @@ func (x *DB_RankReward) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_RankReward.ProtoReflect.Descriptor instead. func (*DB_RankReward) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{112} + return file_pbdata_proto_rawDescGZIP(), []int{116} } func (x *DB_RankReward) GetId() int32 { @@ -8769,7 +8997,7 @@ type DB_RankRewardArray struct { func (x *DB_RankRewardArray) Reset() { *x = DB_RankRewardArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[113] + mi := &file_pbdata_proto_msgTypes[117] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8782,7 +9010,7 @@ func (x *DB_RankRewardArray) String() string { func (*DB_RankRewardArray) ProtoMessage() {} func (x *DB_RankRewardArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[113] + mi := &file_pbdata_proto_msgTypes[117] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8795,7 +9023,7 @@ func (x *DB_RankRewardArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_RankRewardArray.ProtoReflect.Descriptor instead. func (*DB_RankRewardArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{113} + return file_pbdata_proto_rawDescGZIP(), []int{117} } func (x *DB_RankRewardArray) GetArr() []*DB_RankReward { @@ -8817,7 +9045,7 @@ type DB_Sensitive_Words struct { func (x *DB_Sensitive_Words) Reset() { *x = DB_Sensitive_Words{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[114] + mi := &file_pbdata_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8830,7 +9058,7 @@ func (x *DB_Sensitive_Words) String() string { func (*DB_Sensitive_Words) ProtoMessage() {} func (x *DB_Sensitive_Words) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[114] + mi := &file_pbdata_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8843,7 +9071,7 @@ func (x *DB_Sensitive_Words) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_Sensitive_Words.ProtoReflect.Descriptor instead. func (*DB_Sensitive_Words) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{114} + return file_pbdata_proto_rawDescGZIP(), []int{118} } func (x *DB_Sensitive_Words) GetId() int32 { @@ -8871,7 +9099,7 @@ type DB_Sensitive_WordsArray struct { func (x *DB_Sensitive_WordsArray) Reset() { *x = DB_Sensitive_WordsArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[115] + mi := &file_pbdata_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8884,7 +9112,7 @@ func (x *DB_Sensitive_WordsArray) String() string { func (*DB_Sensitive_WordsArray) ProtoMessage() {} func (x *DB_Sensitive_WordsArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[115] + mi := &file_pbdata_proto_msgTypes[119] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8897,7 +9125,7 @@ func (x *DB_Sensitive_WordsArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_Sensitive_WordsArray.ProtoReflect.Descriptor instead. func (*DB_Sensitive_WordsArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{115} + return file_pbdata_proto_rawDescGZIP(), []int{119} } func (x *DB_Sensitive_WordsArray) GetArr() []*DB_Sensitive_Words { @@ -8933,7 +9161,7 @@ type DB_SlotRateWeight struct { func (x *DB_SlotRateWeight) Reset() { *x = DB_SlotRateWeight{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[116] + mi := &file_pbdata_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8946,7 +9174,7 @@ func (x *DB_SlotRateWeight) String() string { func (*DB_SlotRateWeight) ProtoMessage() {} func (x *DB_SlotRateWeight) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[116] + mi := &file_pbdata_proto_msgTypes[120] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8959,7 +9187,7 @@ func (x *DB_SlotRateWeight) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_SlotRateWeight.ProtoReflect.Descriptor instead. func (*DB_SlotRateWeight) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{116} + return file_pbdata_proto_rawDescGZIP(), []int{120} } func (x *DB_SlotRateWeight) GetId() int32 { @@ -9085,7 +9313,7 @@ type DB_SlotRateWeightArray struct { func (x *DB_SlotRateWeightArray) Reset() { *x = DB_SlotRateWeightArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[117] + mi := &file_pbdata_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9098,7 +9326,7 @@ func (x *DB_SlotRateWeightArray) String() string { func (*DB_SlotRateWeightArray) ProtoMessage() {} func (x *DB_SlotRateWeightArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[117] + mi := &file_pbdata_proto_msgTypes[121] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9111,7 +9339,7 @@ func (x *DB_SlotRateWeightArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_SlotRateWeightArray.ProtoReflect.Descriptor instead. func (*DB_SlotRateWeightArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{117} + return file_pbdata_proto_rawDescGZIP(), []int{121} } func (x *DB_SlotRateWeightArray) GetArr() []*DB_SlotRateWeight { @@ -9136,7 +9364,7 @@ type DB_SystemChance struct { func (x *DB_SystemChance) Reset() { *x = DB_SystemChance{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[118] + mi := &file_pbdata_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9149,7 +9377,7 @@ func (x *DB_SystemChance) String() string { func (*DB_SystemChance) ProtoMessage() {} func (x *DB_SystemChance) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[118] + mi := &file_pbdata_proto_msgTypes[122] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9162,7 +9390,7 @@ func (x *DB_SystemChance) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_SystemChance.ProtoReflect.Descriptor instead. func (*DB_SystemChance) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{118} + return file_pbdata_proto_rawDescGZIP(), []int{122} } func (x *DB_SystemChance) GetId() int32 { @@ -9211,7 +9439,7 @@ type DB_SystemChanceArray struct { func (x *DB_SystemChanceArray) Reset() { *x = DB_SystemChanceArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[119] + mi := &file_pbdata_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9224,7 +9452,7 @@ func (x *DB_SystemChanceArray) String() string { func (*DB_SystemChanceArray) ProtoMessage() {} func (x *DB_SystemChanceArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[119] + mi := &file_pbdata_proto_msgTypes[123] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9237,7 +9465,7 @@ func (x *DB_SystemChanceArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_SystemChanceArray.ProtoReflect.Descriptor instead. func (*DB_SystemChanceArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{119} + return file_pbdata_proto_rawDescGZIP(), []int{123} } func (x *DB_SystemChanceArray) GetArr() []*DB_SystemChance { @@ -9266,7 +9494,7 @@ type DB_Task struct { func (x *DB_Task) Reset() { *x = DB_Task{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[120] + mi := &file_pbdata_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9279,7 +9507,7 @@ func (x *DB_Task) String() string { func (*DB_Task) ProtoMessage() {} func (x *DB_Task) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[120] + mi := &file_pbdata_proto_msgTypes[124] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9292,7 +9520,7 @@ func (x *DB_Task) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_Task.ProtoReflect.Descriptor instead. func (*DB_Task) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{120} + return file_pbdata_proto_rawDescGZIP(), []int{124} } func (x *DB_Task) GetId() int32 { @@ -9369,7 +9597,7 @@ type DB_TaskArray struct { func (x *DB_TaskArray) Reset() { *x = DB_TaskArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[121] + mi := &file_pbdata_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9382,7 +9610,7 @@ func (x *DB_TaskArray) String() string { func (*DB_TaskArray) ProtoMessage() {} func (x *DB_TaskArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[121] + mi := &file_pbdata_proto_msgTypes[125] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9395,7 +9623,7 @@ func (x *DB_TaskArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_TaskArray.ProtoReflect.Descriptor instead. func (*DB_TaskArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{121} + return file_pbdata_proto_rawDescGZIP(), []int{125} } func (x *DB_TaskArray) GetArr() []*DB_Task { @@ -9422,7 +9650,7 @@ type DB_ThirdPlatformGameMapping struct { func (x *DB_ThirdPlatformGameMapping) Reset() { *x = DB_ThirdPlatformGameMapping{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[122] + mi := &file_pbdata_proto_msgTypes[126] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9435,7 +9663,7 @@ func (x *DB_ThirdPlatformGameMapping) String() string { func (*DB_ThirdPlatformGameMapping) ProtoMessage() {} func (x *DB_ThirdPlatformGameMapping) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[122] + mi := &file_pbdata_proto_msgTypes[126] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9448,7 +9676,7 @@ func (x *DB_ThirdPlatformGameMapping) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_ThirdPlatformGameMapping.ProtoReflect.Descriptor instead. func (*DB_ThirdPlatformGameMapping) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{122} + return file_pbdata_proto_rawDescGZIP(), []int{126} } func (x *DB_ThirdPlatformGameMapping) GetId() int32 { @@ -9511,7 +9739,7 @@ type DB_ThirdPlatformGameMappingArray struct { func (x *DB_ThirdPlatformGameMappingArray) Reset() { *x = DB_ThirdPlatformGameMappingArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[123] + mi := &file_pbdata_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9524,7 +9752,7 @@ func (x *DB_ThirdPlatformGameMappingArray) String() string { func (*DB_ThirdPlatformGameMappingArray) ProtoMessage() {} func (x *DB_ThirdPlatformGameMappingArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[123] + mi := &file_pbdata_proto_msgTypes[127] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9537,7 +9765,7 @@ func (x *DB_ThirdPlatformGameMappingArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_ThirdPlatformGameMappingArray.ProtoReflect.Descriptor instead. func (*DB_ThirdPlatformGameMappingArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{123} + return file_pbdata_proto_rawDescGZIP(), []int{127} } func (x *DB_ThirdPlatformGameMappingArray) GetArr() []*DB_ThirdPlatformGameMapping { @@ -9560,7 +9788,7 @@ type DB_Tips struct { func (x *DB_Tips) Reset() { *x = DB_Tips{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[124] + mi := &file_pbdata_proto_msgTypes[128] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9573,7 +9801,7 @@ func (x *DB_Tips) String() string { func (*DB_Tips) ProtoMessage() {} func (x *DB_Tips) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[124] + mi := &file_pbdata_proto_msgTypes[128] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9586,7 +9814,7 @@ func (x *DB_Tips) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_Tips.ProtoReflect.Descriptor instead. func (*DB_Tips) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{124} + return file_pbdata_proto_rawDescGZIP(), []int{128} } func (x *DB_Tips) GetId() int32 { @@ -9621,7 +9849,7 @@ type DB_TipsArray struct { func (x *DB_TipsArray) Reset() { *x = DB_TipsArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[125] + mi := &file_pbdata_proto_msgTypes[129] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9634,7 +9862,7 @@ func (x *DB_TipsArray) String() string { func (*DB_TipsArray) ProtoMessage() {} func (x *DB_TipsArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[125] + mi := &file_pbdata_proto_msgTypes[129] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9647,7 +9875,7 @@ func (x *DB_TipsArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_TipsArray.ProtoReflect.Descriptor instead. func (*DB_TipsArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{125} + return file_pbdata_proto_rawDescGZIP(), []int{129} } func (x *DB_TipsArray) GetArr() []*DB_Tips { @@ -9680,13 +9908,12 @@ type DB_VIP struct { Param []int32 `protobuf:"varint,16,rep,packed,name=Param,proto3" json:"Param,omitempty"` RewardOutlineID []int32 `protobuf:"varint,17,rep,packed,name=RewardOutlineID,proto3" json:"RewardOutlineID,omitempty"` Award map[int64]int64 `protobuf:"bytes,18,rep,name=Award,proto3" json:"Award,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - ParamName []string `protobuf:"bytes,19,rep,name=ParamName,proto3" json:"ParamName,omitempty"` } func (x *DB_VIP) Reset() { *x = DB_VIP{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[126] + mi := &file_pbdata_proto_msgTypes[130] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9699,7 +9926,7 @@ func (x *DB_VIP) String() string { func (*DB_VIP) ProtoMessage() {} func (x *DB_VIP) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[126] + mi := &file_pbdata_proto_msgTypes[130] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9712,7 +9939,7 @@ func (x *DB_VIP) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_VIP.ProtoReflect.Descriptor instead. func (*DB_VIP) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{126} + return file_pbdata_proto_rawDescGZIP(), []int{130} } func (x *DB_VIP) GetId() int32 { @@ -9841,13 +10068,6 @@ func (x *DB_VIP) GetAward() map[int64]int64 { return nil } -func (x *DB_VIP) GetParamName() []string { - if x != nil { - return x.ParamName - } - return nil -} - type DB_VIPArray struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -9859,7 +10079,7 @@ type DB_VIPArray struct { func (x *DB_VIPArray) Reset() { *x = DB_VIPArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[127] + mi := &file_pbdata_proto_msgTypes[131] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9872,7 +10092,7 @@ func (x *DB_VIPArray) String() string { func (*DB_VIPArray) ProtoMessage() {} func (x *DB_VIPArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[127] + mi := &file_pbdata_proto_msgTypes[131] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9885,7 +10105,7 @@ func (x *DB_VIPArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_VIPArray.ProtoReflect.Descriptor instead. func (*DB_VIPArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{127} + return file_pbdata_proto_rawDescGZIP(), []int{131} } func (x *DB_VIPArray) GetArr() []*DB_VIP { @@ -10898,303 +11118,324 @@ var file_pbdata_proto_rawDesc = []byte{ 0x4c, 0x6f, 0x74, 0x74, 0x65, 0x72, 0x79, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x29, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4c, 0x6f, 0x74, 0x74, 0x65, - 0x72, 0x79, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x30, 0x0a, 0x0c, 0x44, 0x42, 0x5f, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x45, 0x78, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x45, 0x78, 0x70, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x45, 0x78, 0x70, 0x22, 0x3b, 0x0a, 0x11, 0x44, 0x42, 0x5f, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x78, 0x70, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x26, - 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x78, - 0x70, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x6d, 0x0a, 0x0d, 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x69, 0x74, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x43, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x48, - 0x65, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x48, 0x65, 0x61, 0x64, 0x12, - 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x03, 0x53, 0x65, 0x78, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x3d, 0x0a, 0x12, 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x27, 0x0a, 0x03, 0x41, - 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x03, 0x41, 0x72, 0x72, 0x22, 0xa5, 0x05, 0x0a, 0x0d, 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, - 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, - 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x50, 0x61, - 0x79, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0d, 0x50, 0x61, 0x79, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, - 0x12, 0x24, 0x0a, 0x0d, 0x50, 0x61, 0x79, 0x55, 0x70, 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, - 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x50, 0x61, 0x79, 0x55, 0x70, 0x70, 0x65, - 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x12, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x4c, 0x6f, 0x77, 0x65, - 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x55, 0x70, 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x12, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x55, 0x70, 0x70, 0x65, - 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, - 0x6e, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x11, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x55, - 0x70, 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x11, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x55, 0x70, 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, - 0x69, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x4f, 0x64, 0x64, 0x73, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x4f, 0x64, 0x64, 0x73, - 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x4f, 0x64, - 0x64, 0x73, 0x55, 0x70, 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0e, 0x4f, 0x64, 0x64, 0x73, 0x55, 0x70, 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, - 0x69, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x4c, 0x75, 0x63, 0x6b, 0x79, 0x52, 0x61, 0x74, 0x65, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x4c, 0x75, 0x63, 0x6b, 0x79, 0x52, 0x61, 0x74, 0x65, - 0x12, 0x26, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x61, 0x72, 0x64, 0x52, 0x61, - 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x43, 0x61, 0x72, 0x64, 0x52, 0x61, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x43, 0x61, 0x72, 0x64, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x05, - 0x52, 0x0e, 0x43, 0x61, 0x72, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, - 0x12, 0x24, 0x0a, 0x0d, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0d, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, - 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x45, 0x78, 0x63, 0x6c, 0x75, 0x64, - 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x10, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, 0x45, 0x78, - 0x63, 0x6c, 0x75, 0x64, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x20, 0x0a, 0x0b, 0x43, 0x61, - 0x72, 0x64, 0x4c, 0x69, 0x62, 0x52, 0x61, 0x74, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0b, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x62, 0x52, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, - 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x62, 0x41, 0x72, 0x72, 0x18, 0x12, 0x20, 0x03, 0x28, 0x05, - 0x52, 0x0a, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x62, 0x41, 0x72, 0x72, 0x22, 0x3d, 0x0a, 0x12, - 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x41, 0x72, 0x72, - 0x61, 0x79, 0x12, 0x27, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x5d, 0x0a, 0x09, 0x44, - 0x42, 0x5f, 0x50, 0x6f, 0x74, 0x4f, 0x64, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, - 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x54, 0x69, 0x74, - 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x56, 0x69, 0x70, 0x4f, 0x64, 0x64, 0x18, 0x04, 0x20, 0x03, - 0x28, 0x05, 0x52, 0x06, 0x56, 0x69, 0x70, 0x4f, 0x64, 0x64, 0x22, 0x35, 0x0a, 0x0e, 0x44, 0x42, - 0x5f, 0x50, 0x6f, 0x74, 0x4f, 0x64, 0x64, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x23, 0x0a, 0x03, - 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x6f, 0x74, 0x4f, 0x64, 0x64, 0x52, 0x03, 0x41, 0x72, - 0x72, 0x22, 0x97, 0x02, 0x0a, 0x0f, 0x44, 0x42, 0x5f, 0x50, 0x72, 0x6f, 0x70, 0x45, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x35, 0x0a, 0x04, 0x43, - 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x72, 0x6f, 0x70, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x2e, 0x43, 0x6f, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x43, 0x6f, - 0x73, 0x74, 0x12, 0x35, 0x0a, 0x04, 0x47, 0x61, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x21, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x72, 0x6f, - 0x70, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x47, 0x61, 0x69, 0x6e, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x04, 0x47, 0x61, 0x69, 0x6e, 0x1a, 0x37, 0x0a, 0x09, 0x43, 0x6f, 0x73, - 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x47, 0x61, 0x69, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, - 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, - 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x41, 0x0a, 0x14, 0x44, - 0x42, 0x5f, 0x50, 0x72, 0x6f, 0x70, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x72, - 0x72, 0x61, 0x79, 0x12, 0x29, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x72, 0x6f, - 0x70, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x46, - 0x0a, 0x0c, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x12, 0x0e, - 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x14, - 0x0a, 0x05, 0x53, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x45, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x45, 0x6e, 0x64, 0x22, 0x3b, 0x0a, 0x11, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, - 0x6b, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x26, 0x0a, 0x03, 0x41, - 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x03, - 0x41, 0x72, 0x72, 0x22, 0x7a, 0x0a, 0x0c, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x02, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, - 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, - 0x3b, 0x0a, 0x11, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x41, + 0x72, 0x79, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x8a, 0x01, 0x0a, 0x12, 0x44, 0x42, 0x5f, 0x50, + 0x69, 0x67, 0x42, 0x61, 0x6e, 0x6b, 0x5f, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x12, 0x0e, + 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x20, + 0x0a, 0x0b, 0x42, 0x75, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x69, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0b, 0x42, 0x75, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x69, 0x6e, + 0x12, 0x20, 0x0a, 0x0b, 0x42, 0x75, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x61, 0x78, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x42, 0x75, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x4d, + 0x61, 0x78, 0x12, 0x20, 0x0a, 0x0b, 0x43, 0x6f, 0x73, 0x74, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x43, 0x6f, 0x73, 0x74, 0x44, 0x69, 0x61, + 0x6d, 0x6f, 0x6e, 0x64, 0x22, 0x47, 0x0a, 0x17, 0x44, 0x42, 0x5f, 0x50, 0x69, 0x67, 0x42, 0x61, + 0x6e, 0x6b, 0x5f, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, + 0x2c, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x69, 0x67, 0x42, 0x61, 0x6e, 0x6b, + 0x5f, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x5b, 0x0a, + 0x0f, 0x44, 0x42, 0x5f, 0x50, 0x69, 0x67, 0x62, 0x61, 0x6e, 0x6b, 0x5f, 0x50, 0x72, 0x6f, 0x70, + 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, + 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6f, 0x72, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x50, 0x6f, 0x72, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, + 0x50, 0x72, 0x6f, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x50, 0x72, 0x6f, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x41, 0x0a, 0x14, 0x44, 0x42, + 0x5f, 0x50, 0x69, 0x67, 0x62, 0x61, 0x6e, 0x6b, 0x5f, 0x50, 0x72, 0x6f, 0x70, 0x41, 0x72, 0x72, + 0x61, 0x79, 0x12, 0x29, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x69, 0x67, 0x62, + 0x61, 0x6e, 0x6b, 0x5f, 0x50, 0x72, 0x6f, 0x70, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x30, 0x0a, + 0x0c, 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x78, 0x70, 0x12, 0x0e, 0x0a, + 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x10, 0x0a, + 0x03, 0x45, 0x78, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x45, 0x78, 0x70, 0x22, + 0x3b, 0x0a, 0x11, 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x78, 0x70, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x26, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x52, 0x61, - 0x6e, 0x6b, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0xff, 0x01, 0x0a, - 0x0d, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x0e, - 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x1a, - 0x0a, 0x08, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, - 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x77, 0x61, 0x72, 0x64, 0x31, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x41, 0x77, 0x61, 0x72, 0x64, 0x31, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, - 0x41, 0x77, 0x61, 0x72, 0x64, 0x31, 0x4e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x31, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x77, - 0x61, 0x72, 0x64, 0x32, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x41, 0x77, - 0x61, 0x72, 0x64, 0x32, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x32, - 0x4e, 0x75, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, - 0x32, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x77, 0x61, 0x72, 0x64, 0x33, 0x49, 0x64, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x41, 0x77, 0x61, 0x72, 0x64, 0x33, 0x49, 0x64, - 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x33, 0x4e, 0x75, 0x6d, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x33, 0x4e, 0x75, 0x6d, 0x22, 0x3d, - 0x0a, 0x12, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x41, - 0x72, 0x72, 0x61, 0x79, 0x12, 0x27, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x52, 0x61, - 0x6e, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x4d, 0x0a, - 0x12, 0x44, 0x42, 0x5f, 0x53, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x57, 0x6f, - 0x72, 0x64, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x02, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x53, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x53, 0x65, - 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x22, 0x47, 0x0a, 0x17, - 0x44, 0x42, 0x5f, 0x53, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x57, 0x6f, 0x72, - 0x64, 0x73, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x2c, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, - 0x5f, 0x53, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x57, 0x6f, 0x72, 0x64, 0x73, - 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0xbb, 0x03, 0x0a, 0x11, 0x44, 0x42, 0x5f, 0x53, 0x6c, 0x6f, - 0x74, 0x52, 0x61, 0x74, 0x65, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x47, - 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x50, - 0x6f, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x1a, 0x0a, - 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x31, 0x18, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, - 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x31, 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x6f, 0x72, - 0x6d, 0x43, 0x6f, 0x6c, 0x32, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x4e, 0x6f, 0x72, - 0x6d, 0x43, 0x6f, 0x6c, 0x32, 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, - 0x33, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, - 0x33, 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x34, 0x18, 0x07, 0x20, - 0x03, 0x28, 0x05, 0x52, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x34, 0x12, 0x1a, 0x0a, - 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x35, 0x18, 0x08, 0x20, 0x03, 0x28, 0x05, 0x52, - 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x35, 0x12, 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x65, - 0x65, 0x43, 0x6f, 0x6c, 0x31, 0x18, 0x09, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x46, 0x72, 0x65, - 0x65, 0x43, 0x6f, 0x6c, 0x31, 0x12, 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, - 0x32, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, - 0x32, 0x12, 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x33, 0x18, 0x0b, 0x20, - 0x03, 0x28, 0x05, 0x52, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x33, 0x12, 0x1a, 0x0a, - 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x34, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x05, 0x52, - 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x34, 0x12, 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x65, - 0x65, 0x43, 0x6f, 0x6c, 0x35, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x46, 0x72, 0x65, - 0x65, 0x43, 0x6f, 0x6c, 0x35, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x72, 0x79, 0x4f, 0x75, 0x74, - 0x18, 0x0e, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x72, 0x79, 0x4f, 0x75, 0x74, 0x12, - 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x72, 0x79, 0x4d, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x05, - 0x52, 0x07, 0x4d, 0x61, 0x72, 0x79, 0x4d, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x4a, 0x61, 0x63, - 0x6b, 0x50, 0x6f, 0x74, 0x18, 0x10, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x4a, 0x61, 0x63, 0x6b, - 0x50, 0x6f, 0x74, 0x22, 0x45, 0x0a, 0x16, 0x44, 0x42, 0x5f, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x61, - 0x74, 0x65, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x2b, 0x0a, - 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x61, 0x74, 0x65, 0x57, - 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x7d, 0x0a, 0x0f, 0x44, 0x42, - 0x5f, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x0e, 0x0a, - 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x44, 0x65, 0x73, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x44, 0x65, 0x73, - 0x63, 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x43, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x52, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x52, 0x61, 0x74, 0x65, 0x22, 0x41, 0x0a, 0x14, 0x44, 0x42, 0x5f, - 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x41, 0x72, 0x72, 0x61, - 0x79, 0x12, 0x29, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, - 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x53, 0x79, 0x73, 0x74, 0x65, - 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0xd7, 0x02, 0x0a, - 0x07, 0x44, 0x42, 0x5f, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x4f, 0x72, 0x64, 0x65, - 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x22, - 0x0a, 0x0c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x61, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x54, 0x61, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, - 0x0a, 0x0b, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0b, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x12, 0x20, 0x0a, 0x0b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x12, 0x30, 0x0a, 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, 0x18, 0x07, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x54, 0x61, - 0x73, 0x6b, 0x2e, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x41, - 0x77, 0x61, 0x72, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x03, - 0x28, 0x05, 0x52, 0x08, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x38, 0x0a, 0x0a, - 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x31, 0x0a, 0x0c, 0x44, 0x42, 0x5f, 0x54, 0x61, 0x73, - 0x6b, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x21, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, - 0x54, 0x61, 0x73, 0x6b, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x85, 0x02, 0x0a, 0x1b, 0x44, 0x42, - 0x5f, 0x54, 0x68, 0x69, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x47, 0x61, - 0x6d, 0x65, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x53, 0x79, 0x73, - 0x74, 0x65, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0c, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x44, 0x12, 0x2c, 0x0a, - 0x11, 0x54, 0x68, 0x69, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, - 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x54, 0x68, 0x69, 0x72, 0x64, 0x50, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x54, - 0x68, 0x69, 0x72, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x54, 0x68, 0x69, 0x72, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x44, 0x12, 0x12, 0x0a, - 0x04, 0x44, 0x65, 0x73, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x44, 0x65, 0x73, - 0x63, 0x12, 0x34, 0x0a, 0x15, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x4f, 0x72, 0x69, 0x65, 0x6e, - 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x15, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x54, 0x68, 0x69, 0x72, 0x64, - 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x54, 0x68, 0x69, 0x72, 0x64, 0x49, - 0x44, 0x22, 0x59, 0x0a, 0x20, 0x44, 0x42, 0x5f, 0x54, 0x68, 0x69, 0x72, 0x64, 0x50, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, - 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x35, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x54, - 0x68, 0x69, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x47, 0x61, 0x6d, 0x65, - 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x43, 0x0a, 0x07, - 0x44, 0x42, 0x5f, 0x54, 0x69, 0x70, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, - 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, - 0x10, 0x0a, 0x03, 0x44, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x44, 0x65, - 0x73, 0x22, 0x31, 0x0a, 0x0c, 0x44, 0x42, 0x5f, 0x54, 0x69, 0x70, 0x73, 0x41, 0x72, 0x72, 0x61, - 0x79, 0x12, 0x21, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, - 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x54, 0x69, 0x70, 0x73, 0x52, - 0x03, 0x41, 0x72, 0x72, 0x22, 0xe0, 0x05, 0x0a, 0x06, 0x44, 0x42, 0x5f, 0x56, 0x49, 0x50, 0x12, + 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x45, 0x78, 0x70, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x6d, 0x0a, 0x0d, + 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, + 0x04, 0x43, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x43, 0x69, 0x74, + 0x79, 0x12, 0x12, 0x0a, 0x04, 0x48, 0x65, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x48, 0x65, 0x61, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x65, 0x78, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x53, 0x65, 0x78, 0x12, 0x0e, 0x0a, 0x02, 0x49, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x3d, 0x0a, 0x12, 0x44, + 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x41, 0x72, 0x72, 0x61, + 0x79, 0x12, 0x27, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, + 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0xa5, 0x05, 0x0a, 0x0d, 0x44, + 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, + 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, + 0x12, 0x24, 0x0a, 0x0d, 0x50, 0x61, 0x79, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, + 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x50, 0x61, 0x79, 0x4c, 0x6f, 0x77, 0x65, + 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x50, 0x61, 0x79, 0x55, 0x70, 0x70, + 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x50, + 0x61, 0x79, 0x55, 0x70, 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x2e, 0x0a, 0x12, + 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x2e, 0x0a, 0x12, + 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x55, 0x70, 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x55, 0x70, 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x2c, 0x0a, 0x11, + 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, + 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, + 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x54, 0x6f, + 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x55, 0x70, 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x55, 0x70, + 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x4f, 0x64, 0x64, 0x73, + 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x4f, 0x64, 0x64, 0x73, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, + 0x12, 0x26, 0x0a, 0x0e, 0x4f, 0x64, 0x64, 0x73, 0x55, 0x70, 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x4f, 0x64, 0x64, 0x73, 0x55, 0x70, + 0x70, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x4c, 0x75, 0x63, 0x6b, + 0x79, 0x52, 0x61, 0x74, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x4c, 0x75, 0x63, + 0x6b, 0x79, 0x52, 0x61, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x43, 0x61, 0x72, 0x64, 0x52, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x61, 0x72, 0x64, 0x52, 0x61, 0x74, 0x65, 0x12, 0x26, + 0x0a, 0x0e, 0x43, 0x61, 0x72, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, + 0x18, 0x0e, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0e, 0x43, 0x61, 0x72, 0x64, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, + 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0d, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0c, + 0x45, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x10, 0x20, 0x03, + 0x28, 0x05, 0x52, 0x0c, 0x45, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x12, 0x20, 0x0a, 0x0b, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x62, 0x52, 0x61, 0x74, 0x65, 0x18, + 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x62, 0x52, 0x61, + 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x62, 0x41, 0x72, 0x72, + 0x18, 0x12, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x62, 0x41, + 0x72, 0x72, 0x22, 0x3d, 0x0a, 0x12, 0x44, 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, + 0x79, 0x70, 0x65, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x27, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, + 0x42, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x03, 0x41, 0x72, + 0x72, 0x22, 0x5d, 0x0a, 0x09, 0x44, 0x42, 0x5f, 0x50, 0x6f, 0x74, 0x4f, 0x64, 0x64, 0x12, 0x0e, + 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, + 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x56, 0x69, 0x70, 0x4f, + 0x64, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x56, 0x69, 0x70, 0x4f, 0x64, 0x64, + 0x22, 0x35, 0x0a, 0x0e, 0x44, 0x42, 0x5f, 0x50, 0x6f, 0x74, 0x4f, 0x64, 0x64, 0x41, 0x72, 0x72, + 0x61, 0x79, 0x12, 0x23, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x11, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x6f, 0x74, 0x4f, + 0x64, 0x64, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x97, 0x02, 0x0a, 0x0f, 0x44, 0x42, 0x5f, 0x50, + 0x72, 0x6f, 0x70, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x12, 0x35, 0x0a, 0x04, 0x43, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x21, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x72, 0x6f, 0x70, + 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x43, 0x6f, 0x73, 0x74, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x04, 0x43, 0x6f, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x04, 0x47, 0x61, 0x69, 0x6e, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, + 0x44, 0x42, 0x5f, 0x50, 0x72, 0x6f, 0x70, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, + 0x47, 0x61, 0x69, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x47, 0x61, 0x69, 0x6e, 0x1a, + 0x37, 0x0a, 0x09, 0x43, 0x6f, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x47, 0x61, 0x69, 0x6e, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x22, 0x41, 0x0a, 0x14, 0x44, 0x42, 0x5f, 0x50, 0x72, 0x6f, 0x70, 0x45, 0x78, 0x63, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x29, 0x0a, 0x03, 0x41, 0x72, 0x72, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, + 0x44, 0x42, 0x5f, 0x50, 0x72, 0x6f, 0x70, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, + 0x03, 0x41, 0x72, 0x72, 0x22, 0x46, 0x0a, 0x0c, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x43, + 0x79, 0x63, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x02, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x45, 0x6e, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x45, 0x6e, 0x64, 0x22, 0x3b, 0x0a, 0x11, + 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x41, 0x72, 0x72, 0x61, + 0x79, 0x12, 0x26, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, + 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x43, + 0x79, 0x63, 0x6c, 0x65, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0x7a, 0x0a, 0x0c, 0x44, 0x42, 0x5f, + 0x52, 0x61, 0x6e, 0x6b, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x61, 0x6e, + 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x52, 0x61, 0x6e, + 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x14, 0x0a, 0x05, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, + 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0x3b, 0x0a, 0x11, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, + 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x26, 0x0a, 0x03, 0x41, 0x72, + 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2e, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x03, 0x41, + 0x72, 0x72, 0x22, 0xff, 0x01, 0x0a, 0x0d, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x02, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x77, 0x61, 0x72, 0x64, 0x31, + 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x41, 0x77, 0x61, 0x72, 0x64, 0x31, + 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x31, 0x4e, 0x75, 0x6d, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x31, 0x4e, 0x75, 0x6d, + 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x77, 0x61, 0x72, 0x64, 0x32, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x41, 0x77, 0x61, 0x72, 0x64, 0x32, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, + 0x41, 0x77, 0x61, 0x72, 0x64, 0x32, 0x4e, 0x75, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x32, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x77, + 0x61, 0x72, 0x64, 0x33, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x41, 0x77, + 0x61, 0x72, 0x64, 0x33, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x33, + 0x4e, 0x75, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, + 0x33, 0x4e, 0x75, 0x6d, 0x22, 0x3d, 0x0a, 0x12, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x52, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x27, 0x0a, 0x03, 0x41, 0x72, + 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2e, 0x44, 0x42, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x03, + 0x41, 0x72, 0x72, 0x22, 0x4d, 0x0a, 0x12, 0x44, 0x42, 0x5f, 0x53, 0x65, 0x6e, 0x73, 0x69, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x53, 0x65, 0x6e, + 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x53, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x57, 0x6f, 0x72, + 0x64, 0x73, 0x22, 0x47, 0x0a, 0x17, 0x44, 0x42, 0x5f, 0x53, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x2c, 0x0a, + 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x53, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0xbb, 0x03, 0x0a, 0x11, + 0x44, 0x42, 0x5f, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x61, 0x74, 0x65, 0x57, 0x65, 0x69, 0x67, 0x68, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, + 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, + 0x64, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, + 0x50, 0x6f, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x31, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x31, 0x12, + 0x1a, 0x0a, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x32, 0x18, 0x05, 0x20, 0x03, 0x28, + 0x05, 0x52, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x32, 0x12, 0x1a, 0x0a, 0x08, 0x4e, + 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x33, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x4e, + 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x33, 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, + 0x6f, 0x6c, 0x34, 0x18, 0x07, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, + 0x6f, 0x6c, 0x34, 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x35, 0x18, + 0x08, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x4e, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x35, 0x12, + 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x31, 0x18, 0x09, 0x20, 0x03, 0x28, + 0x05, 0x52, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x31, 0x12, 0x1a, 0x0a, 0x08, 0x46, + 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x32, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x46, + 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x32, 0x12, 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, + 0x6f, 0x6c, 0x33, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, + 0x6f, 0x6c, 0x33, 0x12, 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x34, 0x18, + 0x0c, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x34, 0x12, + 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x35, 0x18, 0x0d, 0x20, 0x03, 0x28, + 0x05, 0x52, 0x08, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x35, 0x12, 0x18, 0x0a, 0x07, 0x4d, + 0x61, 0x72, 0x79, 0x4f, 0x75, 0x74, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, + 0x72, 0x79, 0x4f, 0x75, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x72, 0x79, 0x4d, 0x69, 0x64, + 0x18, 0x0f, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x72, 0x79, 0x4d, 0x69, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x4a, 0x61, 0x63, 0x6b, 0x50, 0x6f, 0x74, 0x18, 0x10, 0x20, 0x03, 0x28, 0x05, + 0x52, 0x07, 0x4a, 0x61, 0x63, 0x6b, 0x50, 0x6f, 0x74, 0x22, 0x45, 0x0a, 0x16, 0x44, 0x42, 0x5f, + 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x61, 0x74, 0x65, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x41, 0x72, + 0x72, 0x61, 0x79, 0x12, 0x2b, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x53, 0x6c, 0x6f, + 0x74, 0x52, 0x61, 0x74, 0x65, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x03, 0x41, 0x72, 0x72, + 0x22, 0x7d, 0x0a, 0x0f, 0x44, 0x42, 0x5f, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x43, 0x68, 0x61, + 0x6e, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x44, 0x65, 0x73, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x44, 0x65, 0x73, 0x63, 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x68, 0x61, 0x6e, 0x63, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x43, 0x68, 0x61, + 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x52, + 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x52, 0x61, 0x74, 0x65, 0x22, + 0x41, 0x0a, 0x14, 0x44, 0x42, 0x5f, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x43, 0x68, 0x61, 0x6e, + 0x63, 0x65, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x29, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, + 0x5f, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x03, 0x41, + 0x72, 0x72, 0x22, 0xd7, 0x02, 0x0a, 0x07, 0x44, 0x42, 0x5f, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x0e, + 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x14, + 0x0a, 0x05, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4f, + 0x72, 0x64, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, + 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x61, 0x73, 0x6b, + 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x54, 0x61, 0x73, 0x6b, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x46, 0x69, 0x6e, + 0x69, 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x05, 0x41, 0x77, 0x61, 0x72, + 0x64, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2e, 0x44, 0x42, 0x5f, 0x54, 0x61, 0x73, 0x6b, 0x2e, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x47, 0x61, + 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x47, 0x61, + 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x1a, 0x38, 0x0a, 0x0a, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x31, 0x0a, 0x0c, + 0x44, 0x42, 0x5f, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x21, 0x0a, 0x03, + 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, + 0x85, 0x02, 0x0a, 0x1b, 0x44, 0x42, 0x5f, 0x54, 0x68, 0x69, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, - 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x05, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x56, 0x69, 0x70, - 0x45, 0x78, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x56, 0x69, 0x70, 0x45, 0x78, - 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x31, 0x18, - 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, - 0x31, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x32, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, - 0x32, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x70, 0x49, 0x64, 0x32, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x53, 0x68, 0x6f, 0x70, 0x49, 0x64, 0x32, 0x12, 0x1e, 0x0a, 0x0a, 0x50, - 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x33, 0x18, 0x08, 0x20, 0x03, 0x28, 0x05, 0x52, - 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x33, 0x12, 0x1e, 0x0a, 0x0a, 0x50, - 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x34, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x34, 0x12, 0x1e, 0x0a, 0x0a, 0x50, - 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x35, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x35, 0x12, 0x1e, 0x0a, 0x0a, 0x50, - 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x36, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x36, 0x12, 0x3e, 0x0a, 0x0a, 0x50, - 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x37, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1e, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x56, 0x49, 0x50, 0x2e, - 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x37, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x37, 0x12, 0x28, 0x0a, 0x0f, 0x50, - 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x37, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x37, - 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x70, 0x49, 0x64, 0x37, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x68, 0x6f, 0x70, 0x49, 0x64, 0x37, 0x12, - 0x1e, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x38, 0x18, 0x0f, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x38, 0x12, - 0x14, 0x0a, 0x05, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x10, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x4f, - 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x44, 0x18, 0x11, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0f, - 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x44, 0x12, - 0x2f, 0x0a, 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, - 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x56, 0x49, 0x50, 0x2e, 0x41, - 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, - 0x12, 0x1c, 0x0a, 0x09, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x13, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x09, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x3d, - 0x0a, 0x0f, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x37, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, - 0x0a, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, - 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x2f, 0x0a, 0x0b, 0x44, 0x42, 0x5f, 0x56, 0x49, - 0x50, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x20, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, - 0x56, 0x49, 0x50, 0x52, 0x03, 0x41, 0x72, 0x72, 0x42, 0x26, 0x5a, 0x24, 0x6d, 0x6f, 0x6e, 0x67, - 0x6f, 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x61, 0x6d, 0x65, - 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x22, 0x0a, 0x0c, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x44, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x47, 0x61, 0x6d, + 0x65, 0x49, 0x44, 0x12, 0x2c, 0x0a, 0x11, 0x54, 0x68, 0x69, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, + 0x54, 0x68, 0x69, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x54, 0x68, 0x69, 0x72, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x44, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x54, 0x68, 0x69, 0x72, 0x64, 0x47, 0x61, 0x6d, + 0x65, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x44, 0x65, 0x73, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x44, 0x65, 0x73, 0x63, 0x12, 0x34, 0x0a, 0x15, 0x53, 0x63, 0x72, 0x65, 0x65, + 0x6e, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x15, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x4f, 0x72, + 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x54, 0x68, 0x69, 0x72, 0x64, 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x54, 0x68, 0x69, 0x72, 0x64, 0x49, 0x44, 0x22, 0x59, 0x0a, 0x20, 0x44, 0x42, 0x5f, 0x54, 0x68, + 0x69, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, + 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x35, 0x0a, 0x03, 0x41, + 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x54, 0x68, 0x69, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x03, 0x41, + 0x72, 0x72, 0x22, 0x43, 0x0a, 0x07, 0x44, 0x42, 0x5f, 0x54, 0x69, 0x70, 0x73, 0x12, 0x0e, 0x0a, + 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x47, + 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x44, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x44, 0x65, 0x73, 0x22, 0x31, 0x0a, 0x0c, 0x44, 0x42, 0x5f, 0x54, 0x69, + 0x70, 0x73, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x21, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, + 0x5f, 0x54, 0x69, 0x70, 0x73, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0xc2, 0x05, 0x0a, 0x06, 0x44, + 0x42, 0x5f, 0x56, 0x49, 0x50, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x16, 0x0a, 0x06, 0x56, 0x69, 0x70, 0x45, 0x78, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x06, 0x56, 0x69, 0x70, 0x45, 0x78, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, + 0x6c, 0x65, 0x67, 0x65, 0x31, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x50, 0x72, 0x69, + 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x31, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, + 0x6c, 0x65, 0x67, 0x65, 0x32, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x50, 0x72, 0x69, + 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x32, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x70, 0x49, + 0x64, 0x32, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x68, 0x6f, 0x70, 0x49, 0x64, + 0x32, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x33, 0x18, + 0x08, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, + 0x33, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x34, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, + 0x34, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x35, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, + 0x35, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x36, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, + 0x36, 0x12, 0x3e, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x37, 0x18, + 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, + 0x42, 0x5f, 0x56, 0x49, 0x50, 0x2e, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x37, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, + 0x37, 0x12, 0x28, 0x0a, 0x0f, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x37, 0x50, + 0x72, 0x69, 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x50, 0x72, 0x69, 0x76, + 0x69, 0x6c, 0x65, 0x67, 0x65, 0x37, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, + 0x68, 0x6f, 0x70, 0x49, 0x64, 0x37, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x68, + 0x6f, 0x70, 0x49, 0x64, 0x37, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, + 0x67, 0x65, 0x38, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x50, 0x72, 0x69, 0x76, 0x69, + 0x6c, 0x65, 0x67, 0x65, 0x38, 0x12, 0x14, 0x0a, 0x05, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x10, + 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x52, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x44, 0x18, 0x11, + 0x20, 0x03, 0x28, 0x05, 0x52, 0x0f, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x4f, 0x75, 0x74, 0x6c, + 0x69, 0x6e, 0x65, 0x49, 0x44, 0x12, 0x2f, 0x0a, 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, 0x18, 0x12, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, + 0x5f, 0x56, 0x49, 0x50, 0x2e, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, 0x1a, 0x3d, 0x0a, 0x0f, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, + 0x65, 0x67, 0x65, 0x37, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x0a, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, + 0x2f, 0x0a, 0x0b, 0x44, 0x42, 0x5f, 0x56, 0x49, 0x50, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x20, + 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x56, 0x49, 0x50, 0x52, 0x03, 0x41, 0x72, 0x72, + 0x42, 0x26, 0x5a, 0x24, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x61, 0x6d, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, + 0x6c, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -11209,7 +11450,7 @@ func file_pbdata_proto_rawDescGZIP() []byte { return file_pbdata_proto_rawDescData } -var file_pbdata_proto_msgTypes = make([]protoimpl.MessageInfo, 137) +var file_pbdata_proto_msgTypes = make([]protoimpl.MessageInfo, 141) var file_pbdata_proto_goTypes = []interface{}{ (*DB_ActSign)(nil), // 0: server.DB_ActSign (*DB_ActSignArray)(nil), // 1: server.DB_ActSignArray @@ -11309,45 +11550,49 @@ var file_pbdata_proto_goTypes = []interface{}{ (*DB_NewPlayerArray)(nil), // 95: server.DB_NewPlayerArray (*DB_PhoneLottery)(nil), // 96: server.DB_PhoneLottery (*DB_PhoneLotteryArray)(nil), // 97: server.DB_PhoneLotteryArray - (*DB_PlayerExp)(nil), // 98: server.DB_PlayerExp - (*DB_PlayerExpArray)(nil), // 99: server.DB_PlayerExpArray - (*DB_PlayerInfo)(nil), // 100: server.DB_PlayerInfo - (*DB_PlayerInfoArray)(nil), // 101: server.DB_PlayerInfoArray - (*DB_PlayerType)(nil), // 102: server.DB_PlayerType - (*DB_PlayerTypeArray)(nil), // 103: server.DB_PlayerTypeArray - (*DB_PotOdd)(nil), // 104: server.DB_PotOdd - (*DB_PotOddArray)(nil), // 105: server.DB_PotOddArray - (*DB_PropExchange)(nil), // 106: server.DB_PropExchange - (*DB_PropExchangeArray)(nil), // 107: server.DB_PropExchangeArray - (*DB_RankCycle)(nil), // 108: server.DB_RankCycle - (*DB_RankCycleArray)(nil), // 109: server.DB_RankCycleArray - (*DB_RankLevel)(nil), // 110: server.DB_RankLevel - (*DB_RankLevelArray)(nil), // 111: server.DB_RankLevelArray - (*DB_RankReward)(nil), // 112: server.DB_RankReward - (*DB_RankRewardArray)(nil), // 113: server.DB_RankRewardArray - (*DB_Sensitive_Words)(nil), // 114: server.DB_Sensitive_Words - (*DB_Sensitive_WordsArray)(nil), // 115: server.DB_Sensitive_WordsArray - (*DB_SlotRateWeight)(nil), // 116: server.DB_SlotRateWeight - (*DB_SlotRateWeightArray)(nil), // 117: server.DB_SlotRateWeightArray - (*DB_SystemChance)(nil), // 118: server.DB_SystemChance - (*DB_SystemChanceArray)(nil), // 119: server.DB_SystemChanceArray - (*DB_Task)(nil), // 120: server.DB_Task - (*DB_TaskArray)(nil), // 121: server.DB_TaskArray - (*DB_ThirdPlatformGameMapping)(nil), // 122: server.DB_ThirdPlatformGameMapping - (*DB_ThirdPlatformGameMappingArray)(nil), // 123: server.DB_ThirdPlatformGameMappingArray - (*DB_Tips)(nil), // 124: server.DB_Tips - (*DB_TipsArray)(nil), // 125: server.DB_TipsArray - (*DB_VIP)(nil), // 126: server.DB_VIP - (*DB_VIPArray)(nil), // 127: server.DB_VIPArray - nil, // 128: server.DB_CollectBox.ItemIDEntry - nil, // 129: server.DB_GiftBox.ItemIDEntry - nil, // 130: server.DB_GiftCard.RewardsEntry - nil, // 131: server.DB_GiftCard.DayRewardsEntry - nil, // 132: server.DB_PropExchange.CostEntry - nil, // 133: server.DB_PropExchange.GainEntry - nil, // 134: server.DB_Task.AwardEntry - nil, // 135: server.DB_VIP.Privilege7Entry - nil, // 136: server.DB_VIP.AwardEntry + (*DB_PigBank_Diamond)(nil), // 98: server.DB_PigBank_Diamond + (*DB_PigBank_DiamondArray)(nil), // 99: server.DB_PigBank_DiamondArray + (*DB_Pigbank_Prop)(nil), // 100: server.DB_Pigbank_Prop + (*DB_Pigbank_PropArray)(nil), // 101: server.DB_Pigbank_PropArray + (*DB_PlayerExp)(nil), // 102: server.DB_PlayerExp + (*DB_PlayerExpArray)(nil), // 103: server.DB_PlayerExpArray + (*DB_PlayerInfo)(nil), // 104: server.DB_PlayerInfo + (*DB_PlayerInfoArray)(nil), // 105: server.DB_PlayerInfoArray + (*DB_PlayerType)(nil), // 106: server.DB_PlayerType + (*DB_PlayerTypeArray)(nil), // 107: server.DB_PlayerTypeArray + (*DB_PotOdd)(nil), // 108: server.DB_PotOdd + (*DB_PotOddArray)(nil), // 109: server.DB_PotOddArray + (*DB_PropExchange)(nil), // 110: server.DB_PropExchange + (*DB_PropExchangeArray)(nil), // 111: server.DB_PropExchangeArray + (*DB_RankCycle)(nil), // 112: server.DB_RankCycle + (*DB_RankCycleArray)(nil), // 113: server.DB_RankCycleArray + (*DB_RankLevel)(nil), // 114: server.DB_RankLevel + (*DB_RankLevelArray)(nil), // 115: server.DB_RankLevelArray + (*DB_RankReward)(nil), // 116: server.DB_RankReward + (*DB_RankRewardArray)(nil), // 117: server.DB_RankRewardArray + (*DB_Sensitive_Words)(nil), // 118: server.DB_Sensitive_Words + (*DB_Sensitive_WordsArray)(nil), // 119: server.DB_Sensitive_WordsArray + (*DB_SlotRateWeight)(nil), // 120: server.DB_SlotRateWeight + (*DB_SlotRateWeightArray)(nil), // 121: server.DB_SlotRateWeightArray + (*DB_SystemChance)(nil), // 122: server.DB_SystemChance + (*DB_SystemChanceArray)(nil), // 123: server.DB_SystemChanceArray + (*DB_Task)(nil), // 124: server.DB_Task + (*DB_TaskArray)(nil), // 125: server.DB_TaskArray + (*DB_ThirdPlatformGameMapping)(nil), // 126: server.DB_ThirdPlatformGameMapping + (*DB_ThirdPlatformGameMappingArray)(nil), // 127: server.DB_ThirdPlatformGameMappingArray + (*DB_Tips)(nil), // 128: server.DB_Tips + (*DB_TipsArray)(nil), // 129: server.DB_TipsArray + (*DB_VIP)(nil), // 130: server.DB_VIP + (*DB_VIPArray)(nil), // 131: server.DB_VIPArray + nil, // 132: server.DB_CollectBox.ItemIDEntry + nil, // 133: server.DB_GiftBox.ItemIDEntry + nil, // 134: server.DB_GiftCard.RewardsEntry + nil, // 135: server.DB_GiftCard.DayRewardsEntry + nil, // 136: server.DB_PropExchange.CostEntry + nil, // 137: server.DB_PropExchange.GainEntry + nil, // 138: server.DB_Task.AwardEntry + nil, // 139: server.DB_VIP.Privilege7Entry + nil, // 140: server.DB_VIP.AwardEntry } var file_pbdata_proto_depIdxs = []int32{ 0, // 0: server.DB_ActSignArray.Arr:type_name -> server.DB_ActSign @@ -11362,7 +11607,7 @@ var file_pbdata_proto_depIdxs = []int32{ 18, // 9: server.DB_ChessMatchRulesArray.Arr:type_name -> server.DB_ChessMatchRules 20, // 10: server.DB_ChessRankArray.Arr:type_name -> server.DB_ChessRank 22, // 11: server.DB_ClientVerArray.Arr:type_name -> server.DB_ClientVer - 128, // 12: server.DB_CollectBox.ItemID:type_name -> server.DB_CollectBox.ItemIDEntry + 132, // 12: server.DB_CollectBox.ItemID:type_name -> server.DB_CollectBox.ItemIDEntry 24, // 13: server.DB_CollectBoxArray.Arr:type_name -> server.DB_CollectBox 26, // 14: server.DB_CollectBoxGainArray.Arr:type_name -> server.DB_CollectBoxGain 28, // 15: server.DB_CrashSearchArray.Arr:type_name -> server.DB_CrashSearch @@ -11387,10 +11632,10 @@ var file_pbdata_proto_depIdxs = []int32{ 66, // 34: server.DB_Game_IntroductionArray.Arr:type_name -> server.DB_Game_Introduction 68, // 35: server.DB_Game_PetArray.Arr:type_name -> server.DB_Game_Pet 70, // 36: server.DB_Game_RoleArray.Arr:type_name -> server.DB_Game_Role - 129, // 37: server.DB_GiftBox.ItemID:type_name -> server.DB_GiftBox.ItemIDEntry + 133, // 37: server.DB_GiftBox.ItemID:type_name -> server.DB_GiftBox.ItemIDEntry 72, // 38: server.DB_GiftBoxArray.Arr:type_name -> server.DB_GiftBox - 130, // 39: server.DB_GiftCard.Rewards:type_name -> server.DB_GiftCard.RewardsEntry - 131, // 40: server.DB_GiftCard.DayRewards:type_name -> server.DB_GiftCard.DayRewardsEntry + 134, // 39: server.DB_GiftCard.Rewards:type_name -> server.DB_GiftCard.RewardsEntry + 135, // 40: server.DB_GiftCard.DayRewards:type_name -> server.DB_GiftCard.DayRewardsEntry 74, // 41: server.DB_GiftCardArray.Arr:type_name -> server.DB_GiftCard 76, // 42: server.DB_IceAgeElementRateArray.Arr:type_name -> server.DB_IceAgeElementRate 78, // 43: server.DB_Legend_OddsArray.Arr:type_name -> server.DB_Legend_Odds @@ -11403,31 +11648,33 @@ var file_pbdata_proto_depIdxs = []int32{ 92, // 50: server.DB_NameGirlArray.Arr:type_name -> server.DB_NameGirl 94, // 51: server.DB_NewPlayerArray.Arr:type_name -> server.DB_NewPlayer 96, // 52: server.DB_PhoneLotteryArray.Arr:type_name -> server.DB_PhoneLottery - 98, // 53: server.DB_PlayerExpArray.Arr:type_name -> server.DB_PlayerExp - 100, // 54: server.DB_PlayerInfoArray.Arr:type_name -> server.DB_PlayerInfo - 102, // 55: server.DB_PlayerTypeArray.Arr:type_name -> server.DB_PlayerType - 104, // 56: server.DB_PotOddArray.Arr:type_name -> server.DB_PotOdd - 132, // 57: server.DB_PropExchange.Cost:type_name -> server.DB_PropExchange.CostEntry - 133, // 58: server.DB_PropExchange.Gain:type_name -> server.DB_PropExchange.GainEntry - 106, // 59: server.DB_PropExchangeArray.Arr:type_name -> server.DB_PropExchange - 108, // 60: server.DB_RankCycleArray.Arr:type_name -> server.DB_RankCycle - 110, // 61: server.DB_RankLevelArray.Arr:type_name -> server.DB_RankLevel - 112, // 62: server.DB_RankRewardArray.Arr:type_name -> server.DB_RankReward - 114, // 63: server.DB_Sensitive_WordsArray.Arr:type_name -> server.DB_Sensitive_Words - 116, // 64: server.DB_SlotRateWeightArray.Arr:type_name -> server.DB_SlotRateWeight - 118, // 65: server.DB_SystemChanceArray.Arr:type_name -> server.DB_SystemChance - 134, // 66: server.DB_Task.Award:type_name -> server.DB_Task.AwardEntry - 120, // 67: server.DB_TaskArray.Arr:type_name -> server.DB_Task - 122, // 68: server.DB_ThirdPlatformGameMappingArray.Arr:type_name -> server.DB_ThirdPlatformGameMapping - 124, // 69: server.DB_TipsArray.Arr:type_name -> server.DB_Tips - 135, // 70: server.DB_VIP.Privilege7:type_name -> server.DB_VIP.Privilege7Entry - 136, // 71: server.DB_VIP.Award:type_name -> server.DB_VIP.AwardEntry - 126, // 72: server.DB_VIPArray.Arr:type_name -> server.DB_VIP - 73, // [73:73] is the sub-list for method output_type - 73, // [73:73] is the sub-list for method input_type - 73, // [73:73] is the sub-list for extension type_name - 73, // [73:73] is the sub-list for extension extendee - 0, // [0:73] is the sub-list for field type_name + 98, // 53: server.DB_PigBank_DiamondArray.Arr:type_name -> server.DB_PigBank_Diamond + 100, // 54: server.DB_Pigbank_PropArray.Arr:type_name -> server.DB_Pigbank_Prop + 102, // 55: server.DB_PlayerExpArray.Arr:type_name -> server.DB_PlayerExp + 104, // 56: server.DB_PlayerInfoArray.Arr:type_name -> server.DB_PlayerInfo + 106, // 57: server.DB_PlayerTypeArray.Arr:type_name -> server.DB_PlayerType + 108, // 58: server.DB_PotOddArray.Arr:type_name -> server.DB_PotOdd + 136, // 59: server.DB_PropExchange.Cost:type_name -> server.DB_PropExchange.CostEntry + 137, // 60: server.DB_PropExchange.Gain:type_name -> server.DB_PropExchange.GainEntry + 110, // 61: server.DB_PropExchangeArray.Arr:type_name -> server.DB_PropExchange + 112, // 62: server.DB_RankCycleArray.Arr:type_name -> server.DB_RankCycle + 114, // 63: server.DB_RankLevelArray.Arr:type_name -> server.DB_RankLevel + 116, // 64: server.DB_RankRewardArray.Arr:type_name -> server.DB_RankReward + 118, // 65: server.DB_Sensitive_WordsArray.Arr:type_name -> server.DB_Sensitive_Words + 120, // 66: server.DB_SlotRateWeightArray.Arr:type_name -> server.DB_SlotRateWeight + 122, // 67: server.DB_SystemChanceArray.Arr:type_name -> server.DB_SystemChance + 138, // 68: server.DB_Task.Award:type_name -> server.DB_Task.AwardEntry + 124, // 69: server.DB_TaskArray.Arr:type_name -> server.DB_Task + 126, // 70: server.DB_ThirdPlatformGameMappingArray.Arr:type_name -> server.DB_ThirdPlatformGameMapping + 128, // 71: server.DB_TipsArray.Arr:type_name -> server.DB_Tips + 139, // 72: server.DB_VIP.Privilege7:type_name -> server.DB_VIP.Privilege7Entry + 140, // 73: server.DB_VIP.Award:type_name -> server.DB_VIP.AwardEntry + 130, // 74: server.DB_VIPArray.Arr:type_name -> server.DB_VIP + 75, // [75:75] is the sub-list for method output_type + 75, // [75:75] is the sub-list for method input_type + 75, // [75:75] is the sub-list for extension type_name + 75, // [75:75] is the sub-list for extension extendee + 0, // [0:75] is the sub-list for field type_name } func init() { file_pbdata_proto_init() } @@ -12613,7 +12860,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PlayerExp); i { + switch v := v.(*DB_PigBank_Diamond); i { case 0: return &v.state case 1: @@ -12625,7 +12872,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PlayerExpArray); i { + switch v := v.(*DB_PigBank_DiamondArray); i { case 0: return &v.state case 1: @@ -12637,7 +12884,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PlayerInfo); i { + switch v := v.(*DB_Pigbank_Prop); i { case 0: return &v.state case 1: @@ -12649,7 +12896,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PlayerInfoArray); i { + switch v := v.(*DB_Pigbank_PropArray); i { case 0: return &v.state case 1: @@ -12661,7 +12908,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PlayerType); i { + switch v := v.(*DB_PlayerExp); i { case 0: return &v.state case 1: @@ -12673,7 +12920,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PlayerTypeArray); i { + switch v := v.(*DB_PlayerExpArray); i { case 0: return &v.state case 1: @@ -12685,7 +12932,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PotOdd); i { + switch v := v.(*DB_PlayerInfo); i { case 0: return &v.state case 1: @@ -12697,7 +12944,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PotOddArray); i { + switch v := v.(*DB_PlayerInfoArray); i { case 0: return &v.state case 1: @@ -12709,7 +12956,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PropExchange); i { + switch v := v.(*DB_PlayerType); i { case 0: return &v.state case 1: @@ -12721,7 +12968,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PropExchangeArray); i { + switch v := v.(*DB_PlayerTypeArray); i { case 0: return &v.state case 1: @@ -12733,7 +12980,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_RankCycle); i { + switch v := v.(*DB_PotOdd); i { case 0: return &v.state case 1: @@ -12745,7 +12992,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_RankCycleArray); i { + switch v := v.(*DB_PotOddArray); i { case 0: return &v.state case 1: @@ -12757,7 +13004,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_RankLevel); i { + switch v := v.(*DB_PropExchange); i { case 0: return &v.state case 1: @@ -12769,7 +13016,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_RankLevelArray); i { + switch v := v.(*DB_PropExchangeArray); i { case 0: return &v.state case 1: @@ -12781,7 +13028,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_RankReward); i { + switch v := v.(*DB_RankCycle); i { case 0: return &v.state case 1: @@ -12793,7 +13040,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_RankRewardArray); i { + switch v := v.(*DB_RankCycleArray); i { case 0: return &v.state case 1: @@ -12805,7 +13052,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_Sensitive_Words); i { + switch v := v.(*DB_RankLevel); i { case 0: return &v.state case 1: @@ -12817,7 +13064,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_Sensitive_WordsArray); i { + switch v := v.(*DB_RankLevelArray); i { case 0: return &v.state case 1: @@ -12829,7 +13076,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_SlotRateWeight); i { + switch v := v.(*DB_RankReward); i { case 0: return &v.state case 1: @@ -12841,7 +13088,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_SlotRateWeightArray); i { + switch v := v.(*DB_RankRewardArray); i { case 0: return &v.state case 1: @@ -12853,7 +13100,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_SystemChance); i { + switch v := v.(*DB_Sensitive_Words); i { case 0: return &v.state case 1: @@ -12865,7 +13112,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_SystemChanceArray); i { + switch v := v.(*DB_Sensitive_WordsArray); i { case 0: return &v.state case 1: @@ -12877,7 +13124,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_Task); i { + switch v := v.(*DB_SlotRateWeight); i { case 0: return &v.state case 1: @@ -12889,7 +13136,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_TaskArray); i { + switch v := v.(*DB_SlotRateWeightArray); i { case 0: return &v.state case 1: @@ -12901,7 +13148,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_ThirdPlatformGameMapping); i { + switch v := v.(*DB_SystemChance); i { case 0: return &v.state case 1: @@ -12913,7 +13160,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_ThirdPlatformGameMappingArray); i { + switch v := v.(*DB_SystemChanceArray); i { case 0: return &v.state case 1: @@ -12925,7 +13172,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_Tips); i { + switch v := v.(*DB_Task); i { case 0: return &v.state case 1: @@ -12937,7 +13184,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_TipsArray); i { + switch v := v.(*DB_TaskArray); i { case 0: return &v.state case 1: @@ -12949,7 +13196,7 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_VIP); i { + switch v := v.(*DB_ThirdPlatformGameMapping); i { case 0: return &v.state case 1: @@ -12961,6 +13208,54 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DB_ThirdPlatformGameMappingArray); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pbdata_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DB_Tips); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pbdata_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DB_TipsArray); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pbdata_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DB_VIP); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pbdata_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_VIPArray); i { case 0: return &v.state @@ -12979,7 +13274,7 @@ func file_pbdata_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pbdata_proto_rawDesc, NumEnums: 0, - NumMessages: 137, + NumMessages: 141, NumExtensions: 0, NumServices: 0, }, diff --git a/protocol/server/pbdata.proto b/protocol/server/pbdata.proto index b70f796..ad5911d 100644 --- a/protocol/server/pbdata.proto +++ b/protocol/server/pbdata.proto @@ -1267,6 +1267,36 @@ message DB_PhoneLotteryArray { repeated DB_PhoneLottery Arr = 1; } +message DB_PigBank_Diamond { + + int32 Id = 1; + + int32 BuyCountMin = 2; + + int32 BuyCountMax = 3; + + int32 CostDiamond = 4; + +} + +message DB_PigBank_DiamondArray { + repeated DB_PigBank_Diamond Arr = 1; +} + +message DB_Pigbank_Prop { + + int32 Id = 1; + + string PorpName = 2; + + int32 PropValue = 3; + +} + +message DB_Pigbank_PropArray { + repeated DB_Pigbank_Prop Arr = 1; +} + message DB_PlayerExp { int32 Id = 1; @@ -1601,8 +1631,6 @@ message DB_VIP { map Award = 18; - repeated string ParamName = 19; - } message DB_VIPArray { diff --git a/protocol/server/server.pb.go b/protocol/server/server.pb.go index 24141c6..7e192c5 100644 --- a/protocol/server/server.pb.go +++ b/protocol/server/server.pb.go @@ -1223,6 +1223,61 @@ func (x *WGGraceDestroyScene) GetIds() []int32 { return nil } +type ItemParam struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ItemNum int64 `protobuf:"varint,1,opt,name=ItemNum,proto3" json:"ItemNum,omitempty"` // 物品数量 + ExpireTime int64 `protobuf:"varint,2,opt,name=ExpireTime,proto3" json:"ExpireTime,omitempty"` //有效期截止时间 +} + +func (x *ItemParam) Reset() { + *x = ItemParam{} + if protoimpl.UnsafeEnabled { + mi := &file_server_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ItemParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ItemParam) ProtoMessage() {} + +func (x *ItemParam) ProtoReflect() protoreflect.Message { + mi := &file_server_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ItemParam.ProtoReflect.Descriptor instead. +func (*ItemParam) Descriptor() ([]byte, []int) { + return file_server_proto_rawDescGZIP(), []int{12} +} + +func (x *ItemParam) GetItemNum() int64 { + if x != nil { + return x.ItemNum + } + return 0 +} + +func (x *ItemParam) GetExpireTime() int64 { + if x != nil { + return x.ExpireTime + } + return 0 +} + type RebateTask struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1235,7 +1290,7 @@ type RebateTask struct { func (x *RebateTask) Reset() { *x = RebateTask{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[12] + mi := &file_server_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1248,7 +1303,7 @@ func (x *RebateTask) String() string { func (*RebateTask) ProtoMessage() {} func (x *RebateTask) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[12] + mi := &file_server_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1261,7 +1316,7 @@ func (x *RebateTask) ProtoReflect() protoreflect.Message { // Deprecated: Use RebateTask.ProtoReflect.Descriptor instead. func (*RebateTask) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{12} + return file_server_proto_rawDescGZIP(), []int{13} } func (x *RebateTask) GetRebateSwitch() bool { @@ -1285,31 +1340,31 @@ type WGPlayerEnter struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Sid int64 `protobuf:"varint,1,opt,name=Sid,proto3" json:"Sid,omitempty"` - GateSid int64 `protobuf:"varint,2,opt,name=GateSid,proto3" json:"GateSid,omitempty"` - SceneId int32 `protobuf:"varint,3,opt,name=SceneId,proto3" json:"SceneId,omitempty"` - PlayerData []byte `protobuf:"bytes,4,opt,name=PlayerData,proto3" json:"PlayerData,omitempty"` - AgentCode string `protobuf:"bytes,5,opt,name=AgentCode,proto3" json:"AgentCode,omitempty"` - TakeCoin int64 `protobuf:"varint,6,opt,name=TakeCoin,proto3" json:"TakeCoin,omitempty"` //携带金币 - IsLoaded bool `protobuf:"varint,7,opt,name=IsLoaded,proto3" json:"IsLoaded,omitempty"` //加载完成 - IsQM bool `protobuf:"varint,8,opt,name=IsQM,proto3" json:"IsQM,omitempty"` //是否是全民推广用户 - ExpectLeaveCoin int64 `protobuf:"varint,9,opt,name=ExpectLeaveCoin,proto3" json:"ExpectLeaveCoin,omitempty"` //期望离场时的金币[机器人用] - ExpectGameTimes int32 `protobuf:"varint,10,opt,name=ExpectGameTimes,proto3" json:"ExpectGameTimes,omitempty"` //期望进行的游戏局数[机器人用] - IParams []*PlayerIParam `protobuf:"bytes,11,rep,name=IParams,proto3" json:"IParams,omitempty"` - SParams []*PlayerSParam `protobuf:"bytes,12,rep,name=SParams,proto3" json:"SParams,omitempty"` - CParams []*PlayerCParam `protobuf:"bytes,13,rep,name=CParams,proto3" json:"CParams,omitempty"` - SnId int32 `protobuf:"varint,14,opt,name=SnId,proto3" json:"SnId,omitempty"` - SingleAdjust []byte `protobuf:"bytes,15,opt,name=SingleAdjust,proto3" json:"SingleAdjust,omitempty"` //单控数据 - Pos int32 `protobuf:"varint,16,opt,name=Pos,proto3" json:"Pos,omitempty"` - Items map[int32]int64 `protobuf:"bytes,17,rep,name=Items,proto3" json:"Items,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - MatchParams []int32 `protobuf:"varint,18,rep,packed,name=MatchParams,proto3" json:"MatchParams,omitempty"` //比赛参数 - RankScore map[int32]int64 `protobuf:"bytes,19,rep,name=RankScore,proto3" json:"RankScore,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 排位积分 + Sid int64 `protobuf:"varint,1,opt,name=Sid,proto3" json:"Sid,omitempty"` + GateSid int64 `protobuf:"varint,2,opt,name=GateSid,proto3" json:"GateSid,omitempty"` + SceneId int32 `protobuf:"varint,3,opt,name=SceneId,proto3" json:"SceneId,omitempty"` + PlayerData []byte `protobuf:"bytes,4,opt,name=PlayerData,proto3" json:"PlayerData,omitempty"` + AgentCode string `protobuf:"bytes,5,opt,name=AgentCode,proto3" json:"AgentCode,omitempty"` + TakeCoin int64 `protobuf:"varint,6,opt,name=TakeCoin,proto3" json:"TakeCoin,omitempty"` //携带金币 + IsLoaded bool `protobuf:"varint,7,opt,name=IsLoaded,proto3" json:"IsLoaded,omitempty"` //加载完成 + IsQM bool `protobuf:"varint,8,opt,name=IsQM,proto3" json:"IsQM,omitempty"` //是否是全民推广用户 + ExpectLeaveCoin int64 `protobuf:"varint,9,opt,name=ExpectLeaveCoin,proto3" json:"ExpectLeaveCoin,omitempty"` //期望离场时的金币[机器人用] + ExpectGameTimes int32 `protobuf:"varint,10,opt,name=ExpectGameTimes,proto3" json:"ExpectGameTimes,omitempty"` //期望进行的游戏局数[机器人用] + IParams []*PlayerIParam `protobuf:"bytes,11,rep,name=IParams,proto3" json:"IParams,omitempty"` + SParams []*PlayerSParam `protobuf:"bytes,12,rep,name=SParams,proto3" json:"SParams,omitempty"` + CParams []*PlayerCParam `protobuf:"bytes,13,rep,name=CParams,proto3" json:"CParams,omitempty"` + SnId int32 `protobuf:"varint,14,opt,name=SnId,proto3" json:"SnId,omitempty"` + SingleAdjust []byte `protobuf:"bytes,15,opt,name=SingleAdjust,proto3" json:"SingleAdjust,omitempty"` //单控数据 + Pos int32 `protobuf:"varint,16,opt,name=Pos,proto3" json:"Pos,omitempty"` + Items map[int32]*ItemParam `protobuf:"bytes,17,rep,name=Items,proto3" json:"Items,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + MatchParams []int32 `protobuf:"varint,18,rep,packed,name=MatchParams,proto3" json:"MatchParams,omitempty"` //比赛参数 + RankScore map[int32]int64 `protobuf:"bytes,19,rep,name=RankScore,proto3" json:"RankScore,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 排位积分 } func (x *WGPlayerEnter) Reset() { *x = WGPlayerEnter{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[13] + mi := &file_server_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1322,7 +1377,7 @@ func (x *WGPlayerEnter) String() string { func (*WGPlayerEnter) ProtoMessage() {} func (x *WGPlayerEnter) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[13] + mi := &file_server_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1335,7 +1390,7 @@ func (x *WGPlayerEnter) ProtoReflect() protoreflect.Message { // Deprecated: Use WGPlayerEnter.ProtoReflect.Descriptor instead. func (*WGPlayerEnter) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{13} + return file_server_proto_rawDescGZIP(), []int{14} } func (x *WGPlayerEnter) GetSid() int64 { @@ -1450,7 +1505,7 @@ func (x *WGPlayerEnter) GetPos() int32 { return 0 } -func (x *WGPlayerEnter) GetItems() map[int32]int64 { +func (x *WGPlayerEnter) GetItems() map[int32]*ItemParam { if x != nil { return x.Items } @@ -1487,7 +1542,7 @@ type WGAudienceSit struct { func (x *WGAudienceSit) Reset() { *x = WGAudienceSit{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[14] + mi := &file_server_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1500,7 +1555,7 @@ func (x *WGAudienceSit) String() string { func (*WGAudienceSit) ProtoMessage() {} func (x *WGAudienceSit) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[14] + mi := &file_server_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1513,7 +1568,7 @@ func (x *WGAudienceSit) ProtoReflect() protoreflect.Message { // Deprecated: Use WGAudienceSit.ProtoReflect.Descriptor instead. func (*WGAudienceSit) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{14} + return file_server_proto_rawDescGZIP(), []int{15} } func (x *WGAudienceSit) GetSnId() int32 { @@ -1559,7 +1614,7 @@ type WGPlayerReturn struct { func (x *WGPlayerReturn) Reset() { *x = WGPlayerReturn{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[15] + mi := &file_server_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1572,7 +1627,7 @@ func (x *WGPlayerReturn) String() string { func (*WGPlayerReturn) ProtoMessage() {} func (x *WGPlayerReturn) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[15] + mi := &file_server_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1585,7 +1640,7 @@ func (x *WGPlayerReturn) ProtoReflect() protoreflect.Message { // Deprecated: Use WGPlayerReturn.ProtoReflect.Descriptor instead. func (*WGPlayerReturn) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{15} + return file_server_proto_rawDescGZIP(), []int{16} } func (x *WGPlayerReturn) GetPlayerId() int32 { @@ -1623,31 +1678,31 @@ type GWPlayerLeave struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RoomId int32 `protobuf:"varint,1,opt,name=RoomId,proto3" json:"RoomId,omitempty"` - PlayerId int32 `protobuf:"varint,2,opt,name=PlayerId,proto3" json:"PlayerId,omitempty"` - Reason int32 `protobuf:"varint,3,opt,name=Reason,proto3" json:"Reason,omitempty"` //原因: 0:主动离开 1:被踢出 2:游戏已经开始 - PlayerData []byte `protobuf:"bytes,4,opt,name=PlayerData,proto3" json:"PlayerData,omitempty"` - ReturnCoin int64 `protobuf:"varint,5,opt,name=ReturnCoin,proto3" json:"ReturnCoin,omitempty"` //退还金币 - ServiceFee int64 `protobuf:"varint,6,opt,name=ServiceFee,proto3" json:"ServiceFee,omitempty"` //服务费|税收 - GameTimes int32 `protobuf:"varint,7,opt,name=GameTimes,proto3" json:"GameTimes,omitempty"` //游戏次数 - GameCoinTs int64 `protobuf:"varint,8,opt,name=GameCoinTs,proto3" json:"GameCoinTs,omitempty"` - SelVip int32 `protobuf:"varint,9,opt,name=SelVip,proto3" json:"SelVip,omitempty"` //VIP鱼炮的选择 - BetCoin int64 `protobuf:"varint,10,opt,name=BetCoin,proto3" json:"BetCoin,omitempty"` //投注金额 - WinTimes int32 `protobuf:"varint,11,opt,name=WinTimes,proto3" json:"WinTimes,omitempty"` //赢局 - LostTimes int32 `protobuf:"varint,12,opt,name=LostTimes,proto3" json:"LostTimes,omitempty"` //输局 - TotalConvertibleFlow int64 `protobuf:"varint,13,opt,name=TotalConvertibleFlow,proto3" json:"TotalConvertibleFlow,omitempty"` //流水 - ValidCacheBetTotal int64 `protobuf:"varint,14,opt,name=ValidCacheBetTotal,proto3" json:"ValidCacheBetTotal,omitempty"` //有效下注缓存 - Items map[int32]int64 `protobuf:"bytes,15,rep,name=Items,proto3" json:"Items,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - MatchId int32 `protobuf:"varint,16,opt,name=MatchId,proto3" json:"MatchId,omitempty"` //比赛场id - CurIsWin int64 `protobuf:"varint,17,opt,name=CurIsWin,proto3" json:"CurIsWin,omitempty"` //本局是否赢 负数:输 0:平局 正数:赢 - MatchRobotGrades map[int32]int32 `protobuf:"bytes,18,rep,name=MatchRobotGrades,proto3" json:"MatchRobotGrades,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //比赛数据 - RankScore map[int32]int64 `protobuf:"bytes,19,rep,name=RankScore,proto3" json:"RankScore,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 排位积分 + RoomId int32 `protobuf:"varint,1,opt,name=RoomId,proto3" json:"RoomId,omitempty"` + PlayerId int32 `protobuf:"varint,2,opt,name=PlayerId,proto3" json:"PlayerId,omitempty"` + Reason int32 `protobuf:"varint,3,opt,name=Reason,proto3" json:"Reason,omitempty"` //原因: 0:主动离开 1:被踢出 2:游戏已经开始 + PlayerData []byte `protobuf:"bytes,4,opt,name=PlayerData,proto3" json:"PlayerData,omitempty"` + ReturnCoin int64 `protobuf:"varint,5,opt,name=ReturnCoin,proto3" json:"ReturnCoin,omitempty"` //退还金币 + ServiceFee int64 `protobuf:"varint,6,opt,name=ServiceFee,proto3" json:"ServiceFee,omitempty"` //服务费|税收 + GameTimes int32 `protobuf:"varint,7,opt,name=GameTimes,proto3" json:"GameTimes,omitempty"` //游戏次数 + GameCoinTs int64 `protobuf:"varint,8,opt,name=GameCoinTs,proto3" json:"GameCoinTs,omitempty"` + SelVip int32 `protobuf:"varint,9,opt,name=SelVip,proto3" json:"SelVip,omitempty"` //VIP鱼炮的选择 + BetCoin int64 `protobuf:"varint,10,opt,name=BetCoin,proto3" json:"BetCoin,omitempty"` //投注金额 + WinTimes int32 `protobuf:"varint,11,opt,name=WinTimes,proto3" json:"WinTimes,omitempty"` //赢局 + LostTimes int32 `protobuf:"varint,12,opt,name=LostTimes,proto3" json:"LostTimes,omitempty"` //输局 + TotalConvertibleFlow int64 `protobuf:"varint,13,opt,name=TotalConvertibleFlow,proto3" json:"TotalConvertibleFlow,omitempty"` //流水 + ValidCacheBetTotal int64 `protobuf:"varint,14,opt,name=ValidCacheBetTotal,proto3" json:"ValidCacheBetTotal,omitempty"` //有效下注缓存 + Items map[int32]*ItemParam `protobuf:"bytes,15,rep,name=Items,proto3" json:"Items,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + MatchId int32 `protobuf:"varint,16,opt,name=MatchId,proto3" json:"MatchId,omitempty"` //比赛场id + CurIsWin int64 `protobuf:"varint,17,opt,name=CurIsWin,proto3" json:"CurIsWin,omitempty"` //本局是否赢 负数:输 0:平局 正数:赢 + MatchRobotGrades map[int32]int32 `protobuf:"bytes,18,rep,name=MatchRobotGrades,proto3" json:"MatchRobotGrades,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //比赛数据 + RankScore map[int32]int64 `protobuf:"bytes,19,rep,name=RankScore,proto3" json:"RankScore,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 排位积分 } func (x *GWPlayerLeave) Reset() { *x = GWPlayerLeave{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[16] + mi := &file_server_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1660,7 +1715,7 @@ func (x *GWPlayerLeave) String() string { func (*GWPlayerLeave) ProtoMessage() {} func (x *GWPlayerLeave) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[16] + mi := &file_server_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1673,7 +1728,7 @@ func (x *GWPlayerLeave) ProtoReflect() protoreflect.Message { // Deprecated: Use GWPlayerLeave.ProtoReflect.Descriptor instead. func (*GWPlayerLeave) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{16} + return file_server_proto_rawDescGZIP(), []int{17} } func (x *GWPlayerLeave) GetRoomId() int32 { @@ -1774,7 +1829,7 @@ func (x *GWPlayerLeave) GetValidCacheBetTotal() int64 { return 0 } -func (x *GWPlayerLeave) GetItems() map[int32]int64 { +func (x *GWPlayerLeave) GetItems() map[int32]*ItemParam { if x != nil { return x.Items } @@ -1822,7 +1877,7 @@ type WGPlayerDropLine struct { func (x *WGPlayerDropLine) Reset() { *x = WGPlayerDropLine{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[17] + mi := &file_server_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1835,7 +1890,7 @@ func (x *WGPlayerDropLine) String() string { func (*WGPlayerDropLine) ProtoMessage() {} func (x *WGPlayerDropLine) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[17] + mi := &file_server_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1848,7 +1903,7 @@ func (x *WGPlayerDropLine) ProtoReflect() protoreflect.Message { // Deprecated: Use WGPlayerDropLine.ProtoReflect.Descriptor instead. func (*WGPlayerDropLine) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{17} + return file_server_proto_rawDescGZIP(), []int{18} } func (x *WGPlayerDropLine) GetId() int32 { @@ -1880,7 +1935,7 @@ type WGPlayerRehold struct { func (x *WGPlayerRehold) Reset() { *x = WGPlayerRehold{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[18] + mi := &file_server_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1893,7 +1948,7 @@ func (x *WGPlayerRehold) String() string { func (*WGPlayerRehold) ProtoMessage() {} func (x *WGPlayerRehold) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[18] + mi := &file_server_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1906,7 +1961,7 @@ func (x *WGPlayerRehold) ProtoReflect() protoreflect.Message { // Deprecated: Use WGPlayerRehold.ProtoReflect.Descriptor instead. func (*WGPlayerRehold) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{18} + return file_server_proto_rawDescGZIP(), []int{19} } func (x *WGPlayerRehold) GetId() int32 { @@ -1950,7 +2005,7 @@ type GWBilledRoomCard struct { func (x *GWBilledRoomCard) Reset() { *x = GWBilledRoomCard{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[19] + mi := &file_server_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1963,7 +2018,7 @@ func (x *GWBilledRoomCard) String() string { func (*GWBilledRoomCard) ProtoMessage() {} func (x *GWBilledRoomCard) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[19] + mi := &file_server_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1976,7 +2031,7 @@ func (x *GWBilledRoomCard) ProtoReflect() protoreflect.Message { // Deprecated: Use GWBilledRoomCard.ProtoReflect.Descriptor instead. func (*GWBilledRoomCard) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{19} + return file_server_proto_rawDescGZIP(), []int{20} } func (x *GWBilledRoomCard) GetRoomId() int32 { @@ -2010,7 +2065,7 @@ type GGPlayerSessionBind struct { func (x *GGPlayerSessionBind) Reset() { *x = GGPlayerSessionBind{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[20] + mi := &file_server_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2023,7 +2078,7 @@ func (x *GGPlayerSessionBind) String() string { func (*GGPlayerSessionBind) ProtoMessage() {} func (x *GGPlayerSessionBind) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[20] + mi := &file_server_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2036,7 +2091,7 @@ func (x *GGPlayerSessionBind) ProtoReflect() protoreflect.Message { // Deprecated: Use GGPlayerSessionBind.ProtoReflect.Descriptor instead. func (*GGPlayerSessionBind) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{20} + return file_server_proto_rawDescGZIP(), []int{21} } func (x *GGPlayerSessionBind) GetSid() int64 { @@ -2093,7 +2148,7 @@ type GGPlayerSessionUnBind struct { func (x *GGPlayerSessionUnBind) Reset() { *x = GGPlayerSessionUnBind{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[21] + mi := &file_server_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2106,7 +2161,7 @@ func (x *GGPlayerSessionUnBind) String() string { func (*GGPlayerSessionUnBind) ProtoMessage() {} func (x *GGPlayerSessionUnBind) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[21] + mi := &file_server_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2119,7 +2174,7 @@ func (x *GGPlayerSessionUnBind) ProtoReflect() protoreflect.Message { // Deprecated: Use GGPlayerSessionUnBind.ProtoReflect.Descriptor instead. func (*GGPlayerSessionUnBind) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{21} + return file_server_proto_rawDescGZIP(), []int{22} } func (x *GGPlayerSessionUnBind) GetSid() int64 { @@ -2144,7 +2199,7 @@ type WGDayTimeChange struct { func (x *WGDayTimeChange) Reset() { *x = WGDayTimeChange{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[22] + mi := &file_server_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2157,7 +2212,7 @@ func (x *WGDayTimeChange) String() string { func (*WGDayTimeChange) ProtoMessage() {} func (x *WGDayTimeChange) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[22] + mi := &file_server_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2170,7 +2225,7 @@ func (x *WGDayTimeChange) ProtoReflect() protoreflect.Message { // Deprecated: Use WGDayTimeChange.ProtoReflect.Descriptor instead. func (*WGDayTimeChange) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{22} + return file_server_proto_rawDescGZIP(), []int{23} } func (x *WGDayTimeChange) GetMinute() int32 { @@ -2226,7 +2281,7 @@ type ReplayPlayerData struct { func (x *ReplayPlayerData) Reset() { *x = ReplayPlayerData{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[23] + mi := &file_server_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2239,7 +2294,7 @@ func (x *ReplayPlayerData) String() string { func (*ReplayPlayerData) ProtoMessage() {} func (x *ReplayPlayerData) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[23] + mi := &file_server_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2252,7 +2307,7 @@ func (x *ReplayPlayerData) ProtoReflect() protoreflect.Message { // Deprecated: Use ReplayPlayerData.ProtoReflect.Descriptor instead. func (*ReplayPlayerData) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{23} + return file_server_proto_rawDescGZIP(), []int{24} } func (x *ReplayPlayerData) GetAccId() string { @@ -2328,7 +2383,7 @@ type ReplayRecord struct { func (x *ReplayRecord) Reset() { *x = ReplayRecord{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[24] + mi := &file_server_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2341,7 +2396,7 @@ func (x *ReplayRecord) String() string { func (*ReplayRecord) ProtoMessage() {} func (x *ReplayRecord) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[24] + mi := &file_server_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2354,7 +2409,7 @@ func (x *ReplayRecord) ProtoReflect() protoreflect.Message { // Deprecated: Use ReplayRecord.ProtoReflect.Descriptor instead. func (*ReplayRecord) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{24} + return file_server_proto_rawDescGZIP(), []int{25} } func (x *ReplayRecord) GetTimeStamp() int64 { @@ -2410,7 +2465,7 @@ type ReplaySequene struct { func (x *ReplaySequene) Reset() { *x = ReplaySequene{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[25] + mi := &file_server_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2423,7 +2478,7 @@ func (x *ReplaySequene) String() string { func (*ReplaySequene) ProtoMessage() {} func (x *ReplaySequene) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[25] + mi := &file_server_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2436,7 +2491,7 @@ func (x *ReplaySequene) ProtoReflect() protoreflect.Message { // Deprecated: Use ReplaySequene.ProtoReflect.Descriptor instead. func (*ReplaySequene) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{25} + return file_server_proto_rawDescGZIP(), []int{26} } func (x *ReplaySequene) GetSequenes() []*ReplayRecord { @@ -2473,7 +2528,7 @@ type GRReplaySequene struct { func (x *GRReplaySequene) Reset() { *x = GRReplaySequene{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[26] + mi := &file_server_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2486,7 +2541,7 @@ func (x *GRReplaySequene) String() string { func (*GRReplaySequene) ProtoMessage() {} func (x *GRReplaySequene) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[26] + mi := &file_server_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2499,7 +2554,7 @@ func (x *GRReplaySequene) ProtoReflect() protoreflect.Message { // Deprecated: Use GRReplaySequene.ProtoReflect.Descriptor instead. func (*GRReplaySequene) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{26} + return file_server_proto_rawDescGZIP(), []int{27} } func (x *GRReplaySequene) GetName() string { @@ -2639,7 +2694,7 @@ type WRLoginRec struct { func (x *WRLoginRec) Reset() { *x = WRLoginRec{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[27] + mi := &file_server_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2652,7 +2707,7 @@ func (x *WRLoginRec) String() string { func (*WRLoginRec) ProtoMessage() {} func (x *WRLoginRec) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[27] + mi := &file_server_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2665,7 +2720,7 @@ func (x *WRLoginRec) ProtoReflect() protoreflect.Message { // Deprecated: Use WRLoginRec.ProtoReflect.Descriptor instead. func (*WRLoginRec) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{27} + return file_server_proto_rawDescGZIP(), []int{28} } func (x *WRLoginRec) GetSnId() int32 { @@ -2729,7 +2784,7 @@ type WRGameDetail struct { func (x *WRGameDetail) Reset() { *x = WRGameDetail{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[28] + mi := &file_server_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2742,7 +2797,7 @@ func (x *WRGameDetail) String() string { func (*WRGameDetail) ProtoMessage() {} func (x *WRGameDetail) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[28] + mi := &file_server_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2755,7 +2810,7 @@ func (x *WRGameDetail) ProtoReflect() protoreflect.Message { // Deprecated: Use WRGameDetail.ProtoReflect.Descriptor instead. func (*WRGameDetail) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{28} + return file_server_proto_rawDescGZIP(), []int{29} } func (x *WRGameDetail) GetGameDetail() []byte { @@ -2778,7 +2833,7 @@ type WRPlayerData struct { func (x *WRPlayerData) Reset() { *x = WRPlayerData{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[29] + mi := &file_server_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2791,7 +2846,7 @@ func (x *WRPlayerData) String() string { func (*WRPlayerData) ProtoMessage() {} func (x *WRPlayerData) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[29] + mi := &file_server_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2804,7 +2859,7 @@ func (x *WRPlayerData) ProtoReflect() protoreflect.Message { // Deprecated: Use WRPlayerData.ProtoReflect.Descriptor instead. func (*WRPlayerData) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{29} + return file_server_proto_rawDescGZIP(), []int{30} } func (x *WRPlayerData) GetSid() int64 { @@ -2834,7 +2889,7 @@ type WTPlayerPay struct { func (x *WTPlayerPay) Reset() { *x = WTPlayerPay{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[30] + mi := &file_server_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2847,7 +2902,7 @@ func (x *WTPlayerPay) String() string { func (*WTPlayerPay) ProtoMessage() {} func (x *WTPlayerPay) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[30] + mi := &file_server_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2860,7 +2915,7 @@ func (x *WTPlayerPay) ProtoReflect() protoreflect.Message { // Deprecated: Use WTPlayerPay.ProtoReflect.Descriptor instead. func (*WTPlayerPay) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{30} + return file_server_proto_rawDescGZIP(), []int{31} } func (x *WTPlayerPay) GetPlayerData() []byte { @@ -2893,7 +2948,7 @@ type PlayerGameRec struct { func (x *PlayerGameRec) Reset() { *x = PlayerGameRec{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[31] + mi := &file_server_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2906,7 +2961,7 @@ func (x *PlayerGameRec) String() string { func (*PlayerGameRec) ProtoMessage() {} func (x *PlayerGameRec) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[31] + mi := &file_server_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2919,7 +2974,7 @@ func (x *PlayerGameRec) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayerGameRec.ProtoReflect.Descriptor instead. func (*PlayerGameRec) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{31} + return file_server_proto_rawDescGZIP(), []int{32} } func (x *PlayerGameRec) GetId() int32 { @@ -2980,7 +3035,7 @@ type GWGameRec struct { func (x *GWGameRec) Reset() { *x = GWGameRec{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[32] + mi := &file_server_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2993,7 +3048,7 @@ func (x *GWGameRec) String() string { func (*GWGameRec) ProtoMessage() {} func (x *GWGameRec) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[32] + mi := &file_server_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3006,7 +3061,7 @@ func (x *GWGameRec) ProtoReflect() protoreflect.Message { // Deprecated: Use GWGameRec.ProtoReflect.Descriptor instead. func (*GWGameRec) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{32} + return file_server_proto_rawDescGZIP(), []int{33} } func (x *GWGameRec) GetRoomId() int32 { @@ -3059,7 +3114,7 @@ type GWSceneStart struct { func (x *GWSceneStart) Reset() { *x = GWSceneStart{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[33] + mi := &file_server_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3072,7 +3127,7 @@ func (x *GWSceneStart) String() string { func (*GWSceneStart) ProtoMessage() {} func (x *GWSceneStart) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[33] + mi := &file_server_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3085,7 +3140,7 @@ func (x *GWSceneStart) ProtoReflect() protoreflect.Message { // Deprecated: Use GWSceneStart.ProtoReflect.Descriptor instead. func (*GWSceneStart) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{33} + return file_server_proto_rawDescGZIP(), []int{34} } func (x *GWSceneStart) GetRoomId() int32 { @@ -3128,7 +3183,7 @@ type PlayerCtx struct { func (x *PlayerCtx) Reset() { *x = PlayerCtx{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[34] + mi := &file_server_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3141,7 +3196,7 @@ func (x *PlayerCtx) String() string { func (*PlayerCtx) ProtoMessage() {} func (x *PlayerCtx) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[34] + mi := &file_server_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3154,7 +3209,7 @@ func (x *PlayerCtx) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayerCtx.ProtoReflect.Descriptor instead. func (*PlayerCtx) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{34} + return file_server_proto_rawDescGZIP(), []int{35} } func (x *PlayerCtx) GetSnId() int32 { @@ -3190,7 +3245,7 @@ type FishRecord struct { func (x *FishRecord) Reset() { *x = FishRecord{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[35] + mi := &file_server_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3203,7 +3258,7 @@ func (x *FishRecord) String() string { func (*FishRecord) ProtoMessage() {} func (x *FishRecord) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[35] + mi := &file_server_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3216,7 +3271,7 @@ func (x *FishRecord) ProtoReflect() protoreflect.Message { // Deprecated: Use FishRecord.ProtoReflect.Descriptor instead. func (*FishRecord) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{35} + return file_server_proto_rawDescGZIP(), []int{36} } func (x *FishRecord) GetFishId() int32 { @@ -3246,7 +3301,7 @@ type GWFishRecord struct { func (x *GWFishRecord) Reset() { *x = GWFishRecord{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[36] + mi := &file_server_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3259,7 +3314,7 @@ func (x *GWFishRecord) String() string { func (*GWFishRecord) ProtoMessage() {} func (x *GWFishRecord) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[36] + mi := &file_server_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3272,7 +3327,7 @@ func (x *GWFishRecord) ProtoReflect() protoreflect.Message { // Deprecated: Use GWFishRecord.ProtoReflect.Descriptor instead. func (*GWFishRecord) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{36} + return file_server_proto_rawDescGZIP(), []int{37} } func (x *GWFishRecord) GetGameFreeId() int32 { @@ -3311,7 +3366,7 @@ type GWSceneState struct { func (x *GWSceneState) Reset() { *x = GWSceneState{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[37] + mi := &file_server_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3324,7 +3379,7 @@ func (x *GWSceneState) String() string { func (*GWSceneState) ProtoMessage() {} func (x *GWSceneState) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[37] + mi := &file_server_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3337,7 +3392,7 @@ func (x *GWSceneState) ProtoReflect() protoreflect.Message { // Deprecated: Use GWSceneState.ProtoReflect.Descriptor instead. func (*GWSceneState) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{37} + return file_server_proto_rawDescGZIP(), []int{38} } func (x *GWSceneState) GetRoomId() int32 { @@ -3378,7 +3433,7 @@ type WRInviteRobot struct { func (x *WRInviteRobot) Reset() { *x = WRInviteRobot{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[38] + mi := &file_server_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3391,7 +3446,7 @@ func (x *WRInviteRobot) String() string { func (*WRInviteRobot) ProtoMessage() {} func (x *WRInviteRobot) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[38] + mi := &file_server_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3404,7 +3459,7 @@ func (x *WRInviteRobot) ProtoReflect() protoreflect.Message { // Deprecated: Use WRInviteRobot.ProtoReflect.Descriptor instead. func (*WRInviteRobot) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{38} + return file_server_proto_rawDescGZIP(), []int{39} } func (x *WRInviteRobot) GetRoomId() int32 { @@ -3462,7 +3517,7 @@ type WRInviteCreateRoom struct { func (x *WRInviteCreateRoom) Reset() { *x = WRInviteCreateRoom{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[39] + mi := &file_server_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3475,7 +3530,7 @@ func (x *WRInviteCreateRoom) String() string { func (*WRInviteCreateRoom) ProtoMessage() {} func (x *WRInviteCreateRoom) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[39] + mi := &file_server_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3488,7 +3543,7 @@ func (x *WRInviteCreateRoom) ProtoReflect() protoreflect.Message { // Deprecated: Use WRInviteCreateRoom.ProtoReflect.Descriptor instead. func (*WRInviteCreateRoom) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{39} + return file_server_proto_rawDescGZIP(), []int{40} } func (x *WRInviteCreateRoom) GetCnt() int32 { @@ -3520,7 +3575,7 @@ type WGAgentKickOutPlayer struct { func (x *WGAgentKickOutPlayer) Reset() { *x = WGAgentKickOutPlayer{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[40] + mi := &file_server_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3533,7 +3588,7 @@ func (x *WGAgentKickOutPlayer) String() string { func (*WGAgentKickOutPlayer) ProtoMessage() {} func (x *WGAgentKickOutPlayer) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[40] + mi := &file_server_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3546,7 +3601,7 @@ func (x *WGAgentKickOutPlayer) ProtoReflect() protoreflect.Message { // Deprecated: Use WGAgentKickOutPlayer.ProtoReflect.Descriptor instead. func (*WGAgentKickOutPlayer) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{40} + return file_server_proto_rawDescGZIP(), []int{41} } func (x *WGAgentKickOutPlayer) GetRoomId() int32 { @@ -3590,7 +3645,7 @@ type WDDataAnalysis struct { func (x *WDDataAnalysis) Reset() { *x = WDDataAnalysis{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[41] + mi := &file_server_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3603,7 +3658,7 @@ func (x *WDDataAnalysis) String() string { func (*WDDataAnalysis) ProtoMessage() {} func (x *WDDataAnalysis) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[41] + mi := &file_server_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3616,7 +3671,7 @@ func (x *WDDataAnalysis) ProtoReflect() protoreflect.Message { // Deprecated: Use WDDataAnalysis.ProtoReflect.Descriptor instead. func (*WDDataAnalysis) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{41} + return file_server_proto_rawDescGZIP(), []int{42} } func (x *WDDataAnalysis) GetDataType() int32 { @@ -3645,7 +3700,7 @@ type PlayerCard struct { func (x *PlayerCard) Reset() { *x = PlayerCard{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[42] + mi := &file_server_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3658,7 +3713,7 @@ func (x *PlayerCard) String() string { func (*PlayerCard) ProtoMessage() {} func (x *PlayerCard) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[42] + mi := &file_server_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3671,7 +3726,7 @@ func (x *PlayerCard) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayerCard.ProtoReflect.Descriptor instead. func (*PlayerCard) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{42} + return file_server_proto_rawDescGZIP(), []int{43} } func (x *PlayerCard) GetPos() int32 { @@ -3701,7 +3756,7 @@ type GNPlayerCards struct { func (x *GNPlayerCards) Reset() { *x = GNPlayerCards{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[43] + mi := &file_server_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3714,7 +3769,7 @@ func (x *GNPlayerCards) String() string { func (*GNPlayerCards) ProtoMessage() {} func (x *GNPlayerCards) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[43] + mi := &file_server_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3727,7 +3782,7 @@ func (x *GNPlayerCards) ProtoReflect() protoreflect.Message { // Deprecated: Use GNPlayerCards.ProtoReflect.Descriptor instead. func (*GNPlayerCards) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{43} + return file_server_proto_rawDescGZIP(), []int{44} } func (x *GNPlayerCards) GetSceneId() int32 { @@ -3766,7 +3821,7 @@ type RobotData struct { func (x *RobotData) Reset() { *x = RobotData{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[44] + mi := &file_server_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3779,7 +3834,7 @@ func (x *RobotData) String() string { func (*RobotData) ProtoMessage() {} func (x *RobotData) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[44] + mi := &file_server_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3792,7 +3847,7 @@ func (x *RobotData) ProtoReflect() protoreflect.Message { // Deprecated: Use RobotData.ProtoReflect.Descriptor instead. func (*RobotData) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{44} + return file_server_proto_rawDescGZIP(), []int{45} } func (x *RobotData) GetTotalIn() int64 { @@ -3842,7 +3897,7 @@ type GNPlayerParam struct { func (x *GNPlayerParam) Reset() { *x = GNPlayerParam{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[45] + mi := &file_server_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3855,7 +3910,7 @@ func (x *GNPlayerParam) String() string { func (*GNPlayerParam) ProtoMessage() {} func (x *GNPlayerParam) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[45] + mi := &file_server_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3868,7 +3923,7 @@ func (x *GNPlayerParam) ProtoReflect() protoreflect.Message { // Deprecated: Use GNPlayerParam.ProtoReflect.Descriptor instead. func (*GNPlayerParam) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{45} + return file_server_proto_rawDescGZIP(), []int{46} } func (x *GNPlayerParam) GetSceneId() int32 { @@ -3899,7 +3954,7 @@ type GWRebuildScene struct { func (x *GWRebuildScene) Reset() { *x = GWRebuildScene{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[46] + mi := &file_server_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3912,7 +3967,7 @@ func (x *GWRebuildScene) String() string { func (*GWRebuildScene) ProtoMessage() {} func (x *GWRebuildScene) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[46] + mi := &file_server_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3925,7 +3980,7 @@ func (x *GWRebuildScene) ProtoReflect() protoreflect.Message { // Deprecated: Use GWRebuildScene.ProtoReflect.Descriptor instead. func (*GWRebuildScene) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{46} + return file_server_proto_rawDescGZIP(), []int{47} } func (x *GWRebuildScene) GetSceneIds() []int32 { @@ -3955,7 +4010,7 @@ type WGRebindPlayerSnId struct { func (x *WGRebindPlayerSnId) Reset() { *x = WGRebindPlayerSnId{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[47] + mi := &file_server_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3968,7 +4023,7 @@ func (x *WGRebindPlayerSnId) String() string { func (*WGRebindPlayerSnId) ProtoMessage() {} func (x *WGRebindPlayerSnId) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[47] + mi := &file_server_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3981,7 +4036,7 @@ func (x *WGRebindPlayerSnId) ProtoReflect() protoreflect.Message { // Deprecated: Use WGRebindPlayerSnId.ProtoReflect.Descriptor instead. func (*WGRebindPlayerSnId) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{47} + return file_server_proto_rawDescGZIP(), []int{48} } func (x *WGRebindPlayerSnId) GetOldSnId() int32 { @@ -4012,7 +4067,7 @@ type GWPlayerFlag struct { func (x *GWPlayerFlag) Reset() { *x = GWPlayerFlag{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[48] + mi := &file_server_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4025,7 +4080,7 @@ func (x *GWPlayerFlag) String() string { func (*GWPlayerFlag) ProtoMessage() {} func (x *GWPlayerFlag) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[48] + mi := &file_server_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4038,7 +4093,7 @@ func (x *GWPlayerFlag) ProtoReflect() protoreflect.Message { // Deprecated: Use GWPlayerFlag.ProtoReflect.Descriptor instead. func (*GWPlayerFlag) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{48} + return file_server_proto_rawDescGZIP(), []int{49} } func (x *GWPlayerFlag) GetSnId() int32 { @@ -4077,7 +4132,7 @@ type WGHundredOp struct { func (x *WGHundredOp) Reset() { *x = WGHundredOp{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[49] + mi := &file_server_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4090,7 +4145,7 @@ func (x *WGHundredOp) String() string { func (*WGHundredOp) ProtoMessage() {} func (x *WGHundredOp) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[49] + mi := &file_server_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4103,7 +4158,7 @@ func (x *WGHundredOp) ProtoReflect() protoreflect.Message { // Deprecated: Use WGHundredOp.ProtoReflect.Descriptor instead. func (*WGHundredOp) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{49} + return file_server_proto_rawDescGZIP(), []int{50} } func (x *WGHundredOp) GetSnid() int32 { @@ -4147,7 +4202,7 @@ type GWNewNotice struct { func (x *GWNewNotice) Reset() { *x = GWNewNotice{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[50] + mi := &file_server_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4160,7 +4215,7 @@ func (x *GWNewNotice) String() string { func (*GWNewNotice) ProtoMessage() {} func (x *GWNewNotice) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[50] + mi := &file_server_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4173,7 +4228,7 @@ func (x *GWNewNotice) ProtoReflect() protoreflect.Message { // Deprecated: Use GWNewNotice.ProtoReflect.Descriptor instead. func (*GWNewNotice) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{50} + return file_server_proto_rawDescGZIP(), []int{51} } func (x *GWNewNotice) GetCh() string { @@ -4258,7 +4313,7 @@ type PlayerStatics struct { func (x *PlayerStatics) Reset() { *x = PlayerStatics{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[51] + mi := &file_server_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4271,7 +4326,7 @@ func (x *PlayerStatics) String() string { func (*PlayerStatics) ProtoMessage() {} func (x *PlayerStatics) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[51] + mi := &file_server_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4284,7 +4339,7 @@ func (x *PlayerStatics) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayerStatics.ProtoReflect.Descriptor instead. func (*PlayerStatics) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{51} + return file_server_proto_rawDescGZIP(), []int{52} } func (x *PlayerStatics) GetSnId() int32 { @@ -4364,7 +4419,7 @@ type GWPlayerStatics struct { func (x *GWPlayerStatics) Reset() { *x = GWPlayerStatics{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[52] + mi := &file_server_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4377,7 +4432,7 @@ func (x *GWPlayerStatics) String() string { func (*GWPlayerStatics) ProtoMessage() {} func (x *GWPlayerStatics) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[52] + mi := &file_server_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4390,7 +4445,7 @@ func (x *GWPlayerStatics) ProtoReflect() protoreflect.Message { // Deprecated: Use GWPlayerStatics.ProtoReflect.Descriptor instead. func (*GWPlayerStatics) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{52} + return file_server_proto_rawDescGZIP(), []int{53} } func (x *GWPlayerStatics) GetRoomId() int32 { @@ -4437,7 +4492,7 @@ type WGResetCoinPool struct { func (x *WGResetCoinPool) Reset() { *x = WGResetCoinPool{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[53] + mi := &file_server_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4450,7 +4505,7 @@ func (x *WGResetCoinPool) String() string { func (*WGResetCoinPool) ProtoMessage() {} func (x *WGResetCoinPool) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[53] + mi := &file_server_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4463,7 +4518,7 @@ func (x *WGResetCoinPool) ProtoReflect() protoreflect.Message { // Deprecated: Use WGResetCoinPool.ProtoReflect.Descriptor instead. func (*WGResetCoinPool) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{53} + return file_server_proto_rawDescGZIP(), []int{54} } func (x *WGResetCoinPool) GetPlatform() string { @@ -4525,7 +4580,7 @@ type WGSetPlayerBlackLevel struct { func (x *WGSetPlayerBlackLevel) Reset() { *x = WGSetPlayerBlackLevel{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[54] + mi := &file_server_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4538,7 +4593,7 @@ func (x *WGSetPlayerBlackLevel) String() string { func (*WGSetPlayerBlackLevel) ProtoMessage() {} func (x *WGSetPlayerBlackLevel) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[54] + mi := &file_server_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4551,7 +4606,7 @@ func (x *WGSetPlayerBlackLevel) ProtoReflect() protoreflect.Message { // Deprecated: Use WGSetPlayerBlackLevel.ProtoReflect.Descriptor instead. func (*WGSetPlayerBlackLevel) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{54} + return file_server_proto_rawDescGZIP(), []int{55} } func (x *WGSetPlayerBlackLevel) GetSnId() int32 { @@ -4614,7 +4669,7 @@ type GWAutoRelieveWBLevel struct { func (x *GWAutoRelieveWBLevel) Reset() { *x = GWAutoRelieveWBLevel{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[55] + mi := &file_server_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4627,7 +4682,7 @@ func (x *GWAutoRelieveWBLevel) String() string { func (*GWAutoRelieveWBLevel) ProtoMessage() {} func (x *GWAutoRelieveWBLevel) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[55] + mi := &file_server_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4640,7 +4695,7 @@ func (x *GWAutoRelieveWBLevel) ProtoReflect() protoreflect.Message { // Deprecated: Use GWAutoRelieveWBLevel.ProtoReflect.Descriptor instead. func (*GWAutoRelieveWBLevel) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{55} + return file_server_proto_rawDescGZIP(), []int{56} } func (x *GWAutoRelieveWBLevel) GetSnId() int32 { @@ -4666,7 +4721,7 @@ type GWScenePlayerLog struct { func (x *GWScenePlayerLog) Reset() { *x = GWScenePlayerLog{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[56] + mi := &file_server_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4679,7 +4734,7 @@ func (x *GWScenePlayerLog) String() string { func (*GWScenePlayerLog) ProtoMessage() {} func (x *GWScenePlayerLog) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[56] + mi := &file_server_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4692,7 +4747,7 @@ func (x *GWScenePlayerLog) ProtoReflect() protoreflect.Message { // Deprecated: Use GWScenePlayerLog.ProtoReflect.Descriptor instead. func (*GWScenePlayerLog) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{56} + return file_server_proto_rawDescGZIP(), []int{57} } func (x *GWScenePlayerLog) GetGameId() int32 { @@ -4738,7 +4793,7 @@ type GWPlayerForceLeave struct { func (x *GWPlayerForceLeave) Reset() { *x = GWPlayerForceLeave{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[57] + mi := &file_server_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4751,7 +4806,7 @@ func (x *GWPlayerForceLeave) String() string { func (*GWPlayerForceLeave) ProtoMessage() {} func (x *GWPlayerForceLeave) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[57] + mi := &file_server_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4764,7 +4819,7 @@ func (x *GWPlayerForceLeave) ProtoReflect() protoreflect.Message { // Deprecated: Use GWPlayerForceLeave.ProtoReflect.Descriptor instead. func (*GWPlayerForceLeave) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{57} + return file_server_proto_rawDescGZIP(), []int{58} } func (x *GWPlayerForceLeave) GetRoomId() int32 { @@ -4814,7 +4869,7 @@ type PlayerData struct { func (x *PlayerData) Reset() { *x = PlayerData{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[58] + mi := &file_server_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4827,7 +4882,7 @@ func (x *PlayerData) String() string { func (*PlayerData) ProtoMessage() {} func (x *PlayerData) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[58] + mi := &file_server_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4840,7 +4895,7 @@ func (x *PlayerData) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayerData.ProtoReflect.Descriptor instead. func (*PlayerData) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{58} + return file_server_proto_rawDescGZIP(), []int{59} } func (x *PlayerData) GetSnId() int32 { @@ -4912,7 +4967,7 @@ type GWPlayerData struct { func (x *GWPlayerData) Reset() { *x = GWPlayerData{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[59] + mi := &file_server_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4925,7 +4980,7 @@ func (x *GWPlayerData) String() string { func (*GWPlayerData) ProtoMessage() {} func (x *GWPlayerData) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[59] + mi := &file_server_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4938,7 +4993,7 @@ func (x *GWPlayerData) ProtoReflect() protoreflect.Message { // Deprecated: Use GWPlayerData.ProtoReflect.Descriptor instead. func (*GWPlayerData) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{59} + return file_server_proto_rawDescGZIP(), []int{60} } func (x *GWPlayerData) GetDatas() []*PlayerData { @@ -4980,7 +5035,7 @@ type PlayerWinScore struct { func (x *PlayerWinScore) Reset() { *x = PlayerWinScore{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[60] + mi := &file_server_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4993,7 +5048,7 @@ func (x *PlayerWinScore) String() string { func (*PlayerWinScore) ProtoMessage() {} func (x *PlayerWinScore) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[60] + mi := &file_server_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5006,7 +5061,7 @@ func (x *PlayerWinScore) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayerWinScore.ProtoReflect.Descriptor instead. func (*PlayerWinScore) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{60} + return file_server_proto_rawDescGZIP(), []int{61} } func (x *PlayerWinScore) GetSnId() int32 { @@ -5073,7 +5128,7 @@ type GWPlayerWinScore struct { func (x *GWPlayerWinScore) Reset() { *x = GWPlayerWinScore{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[61] + mi := &file_server_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5086,7 +5141,7 @@ func (x *GWPlayerWinScore) String() string { func (*GWPlayerWinScore) ProtoMessage() {} func (x *GWPlayerWinScore) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[61] + mi := &file_server_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5099,7 +5154,7 @@ func (x *GWPlayerWinScore) ProtoReflect() protoreflect.Message { // Deprecated: Use GWPlayerWinScore.ProtoReflect.Descriptor instead. func (*GWPlayerWinScore) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{61} + return file_server_proto_rawDescGZIP(), []int{62} } func (x *GWPlayerWinScore) GetGameFreeId() int32 { @@ -5148,7 +5203,7 @@ type WGPayerOnGameCount struct { func (x *WGPayerOnGameCount) Reset() { *x = WGPayerOnGameCount{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[62] + mi := &file_server_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5161,7 +5216,7 @@ func (x *WGPayerOnGameCount) String() string { func (*WGPayerOnGameCount) ProtoMessage() {} func (x *WGPayerOnGameCount) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[62] + mi := &file_server_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5174,7 +5229,7 @@ func (x *WGPayerOnGameCount) ProtoReflect() protoreflect.Message { // Deprecated: Use WGPayerOnGameCount.ProtoReflect.Descriptor instead. func (*WGPayerOnGameCount) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{62} + return file_server_proto_rawDescGZIP(), []int{63} } func (x *WGPayerOnGameCount) GetDTCount() []int32 { @@ -5196,7 +5251,7 @@ type GRGameFreeData struct { func (x *GRGameFreeData) Reset() { *x = GRGameFreeData{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[63] + mi := &file_server_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5209,7 +5264,7 @@ func (x *GRGameFreeData) String() string { func (*GRGameFreeData) ProtoMessage() {} func (x *GRGameFreeData) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[63] + mi := &file_server_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5222,7 +5277,7 @@ func (x *GRGameFreeData) ProtoReflect() protoreflect.Message { // Deprecated: Use GRGameFreeData.ProtoReflect.Descriptor instead. func (*GRGameFreeData) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{63} + return file_server_proto_rawDescGZIP(), []int{64} } func (x *GRGameFreeData) GetRoomId() int32 { @@ -5251,7 +5306,7 @@ type WGSyncPlayerSafeBoxCoin struct { func (x *WGSyncPlayerSafeBoxCoin) Reset() { *x = WGSyncPlayerSafeBoxCoin{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[64] + mi := &file_server_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5264,7 +5319,7 @@ func (x *WGSyncPlayerSafeBoxCoin) String() string { func (*WGSyncPlayerSafeBoxCoin) ProtoMessage() {} func (x *WGSyncPlayerSafeBoxCoin) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[64] + mi := &file_server_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5277,7 +5332,7 @@ func (x *WGSyncPlayerSafeBoxCoin) ProtoReflect() protoreflect.Message { // Deprecated: Use WGSyncPlayerSafeBoxCoin.ProtoReflect.Descriptor instead. func (*WGSyncPlayerSafeBoxCoin) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{64} + return file_server_proto_rawDescGZIP(), []int{65} } func (x *WGSyncPlayerSafeBoxCoin) GetSnId() int32 { @@ -5309,7 +5364,7 @@ type WGClubMessage struct { func (x *WGClubMessage) Reset() { *x = WGClubMessage{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[65] + mi := &file_server_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5322,7 +5377,7 @@ func (x *WGClubMessage) String() string { func (*WGClubMessage) ProtoMessage() {} func (x *WGClubMessage) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[65] + mi := &file_server_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5335,7 +5390,7 @@ func (x *WGClubMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use WGClubMessage.ProtoReflect.Descriptor instead. func (*WGClubMessage) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{65} + return file_server_proto_rawDescGZIP(), []int{66} } func (x *WGClubMessage) GetClubId() int64 { @@ -5382,7 +5437,7 @@ type DWThirdRebateMessage struct { func (x *DWThirdRebateMessage) Reset() { *x = DWThirdRebateMessage{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[66] + mi := &file_server_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5395,7 +5450,7 @@ func (x *DWThirdRebateMessage) String() string { func (*DWThirdRebateMessage) ProtoMessage() {} func (x *DWThirdRebateMessage) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[66] + mi := &file_server_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5408,7 +5463,7 @@ func (x *DWThirdRebateMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use DWThirdRebateMessage.ProtoReflect.Descriptor instead. func (*DWThirdRebateMessage) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{66} + return file_server_proto_rawDescGZIP(), []int{67} } func (x *DWThirdRebateMessage) GetTag() uint64 { @@ -5467,7 +5522,7 @@ type DWThirdRoundMessage struct { func (x *DWThirdRoundMessage) Reset() { *x = DWThirdRoundMessage{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[67] + mi := &file_server_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5480,7 +5535,7 @@ func (x *DWThirdRoundMessage) String() string { func (*DWThirdRoundMessage) ProtoMessage() {} func (x *DWThirdRoundMessage) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[67] + mi := &file_server_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5493,7 +5548,7 @@ func (x *DWThirdRoundMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use DWThirdRoundMessage.ProtoReflect.Descriptor instead. func (*DWThirdRoundMessage) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{67} + return file_server_proto_rawDescGZIP(), []int{68} } func (x *DWThirdRoundMessage) GetTag() uint64 { @@ -5586,7 +5641,7 @@ type WDACKThirdRebateMessage struct { func (x *WDACKThirdRebateMessage) Reset() { *x = WDACKThirdRebateMessage{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[68] + mi := &file_server_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5599,7 +5654,7 @@ func (x *WDACKThirdRebateMessage) String() string { func (*WDACKThirdRebateMessage) ProtoMessage() {} func (x *WDACKThirdRebateMessage) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[68] + mi := &file_server_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5612,7 +5667,7 @@ func (x *WDACKThirdRebateMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use WDACKThirdRebateMessage.ProtoReflect.Descriptor instead. func (*WDACKThirdRebateMessage) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{68} + return file_server_proto_rawDescGZIP(), []int{69} } func (x *WDACKThirdRebateMessage) GetTag() uint64 { @@ -5643,7 +5698,7 @@ type GWGameStateLog struct { func (x *GWGameStateLog) Reset() { *x = GWGameStateLog{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[69] + mi := &file_server_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5656,7 +5711,7 @@ func (x *GWGameStateLog) String() string { func (*GWGameStateLog) ProtoMessage() {} func (x *GWGameStateLog) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[69] + mi := &file_server_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5669,7 +5724,7 @@ func (x *GWGameStateLog) ProtoReflect() protoreflect.Message { // Deprecated: Use GWGameStateLog.ProtoReflect.Descriptor instead. func (*GWGameStateLog) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{69} + return file_server_proto_rawDescGZIP(), []int{70} } func (x *GWGameStateLog) GetSceneId() int32 { @@ -5709,7 +5764,7 @@ type GWGameState struct { func (x *GWGameState) Reset() { *x = GWGameState{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[70] + mi := &file_server_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5722,7 +5777,7 @@ func (x *GWGameState) String() string { func (*GWGameState) ProtoMessage() {} func (x *GWGameState) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[70] + mi := &file_server_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5735,7 +5790,7 @@ func (x *GWGameState) ProtoReflect() protoreflect.Message { // Deprecated: Use GWGameState.ProtoReflect.Descriptor instead. func (*GWGameState) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{70} + return file_server_proto_rawDescGZIP(), []int{71} } func (x *GWGameState) GetSceneId() int32 { @@ -5792,7 +5847,7 @@ type GWGameJackList struct { func (x *GWGameJackList) Reset() { *x = GWGameJackList{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[71] + mi := &file_server_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5805,7 +5860,7 @@ func (x *GWGameJackList) String() string { func (*GWGameJackList) ProtoMessage() {} func (x *GWGameJackList) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[71] + mi := &file_server_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5818,7 +5873,7 @@ func (x *GWGameJackList) ProtoReflect() protoreflect.Message { // Deprecated: Use GWGameJackList.ProtoReflect.Descriptor instead. func (*GWGameJackList) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{71} + return file_server_proto_rawDescGZIP(), []int{72} } func (x *GWGameJackList) GetSnId() int32 { @@ -5890,7 +5945,7 @@ type GWGameJackCoin struct { func (x *GWGameJackCoin) Reset() { *x = GWGameJackCoin{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[72] + mi := &file_server_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5903,7 +5958,7 @@ func (x *GWGameJackCoin) String() string { func (*GWGameJackCoin) ProtoMessage() {} func (x *GWGameJackCoin) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[72] + mi := &file_server_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5916,7 +5971,7 @@ func (x *GWGameJackCoin) ProtoReflect() protoreflect.Message { // Deprecated: Use GWGameJackCoin.ProtoReflect.Descriptor instead. func (*GWGameJackCoin) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{72} + return file_server_proto_rawDescGZIP(), []int{73} } func (x *GWGameJackCoin) GetPlatform() []string { @@ -5946,7 +6001,7 @@ type WGNiceIdRebind struct { func (x *WGNiceIdRebind) Reset() { *x = WGNiceIdRebind{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[73] + mi := &file_server_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5959,7 +6014,7 @@ func (x *WGNiceIdRebind) String() string { func (*WGNiceIdRebind) ProtoMessage() {} func (x *WGNiceIdRebind) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[73] + mi := &file_server_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5972,7 +6027,7 @@ func (x *WGNiceIdRebind) ProtoReflect() protoreflect.Message { // Deprecated: Use WGNiceIdRebind.ProtoReflect.Descriptor instead. func (*WGNiceIdRebind) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{73} + return file_server_proto_rawDescGZIP(), []int{74} } func (x *WGNiceIdRebind) GetUser() int32 { @@ -6002,7 +6057,7 @@ type PLAYERWINCOININFO struct { func (x *PLAYERWINCOININFO) Reset() { *x = PLAYERWINCOININFO{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[74] + mi := &file_server_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6015,7 +6070,7 @@ func (x *PLAYERWINCOININFO) String() string { func (*PLAYERWINCOININFO) ProtoMessage() {} func (x *PLAYERWINCOININFO) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[74] + mi := &file_server_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6028,7 +6083,7 @@ func (x *PLAYERWINCOININFO) ProtoReflect() protoreflect.Message { // Deprecated: Use PLAYERWINCOININFO.ProtoReflect.Descriptor instead. func (*PLAYERWINCOININFO) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{74} + return file_server_proto_rawDescGZIP(), []int{75} } func (x *PLAYERWINCOININFO) GetSnId() int32 { @@ -6064,7 +6119,7 @@ type GWPLAYERWINCOIN struct { func (x *GWPLAYERWINCOIN) Reset() { *x = GWPLAYERWINCOIN{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[75] + mi := &file_server_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6077,7 +6132,7 @@ func (x *GWPLAYERWINCOIN) String() string { func (*GWPLAYERWINCOIN) ProtoMessage() {} func (x *GWPLAYERWINCOIN) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[75] + mi := &file_server_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6090,7 +6145,7 @@ func (x *GWPLAYERWINCOIN) ProtoReflect() protoreflect.Message { // Deprecated: Use GWPLAYERWINCOIN.ProtoReflect.Descriptor instead. func (*GWPLAYERWINCOIN) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{75} + return file_server_proto_rawDescGZIP(), []int{76} } func (x *GWPLAYERWINCOIN) GetPlayer() []*PLAYERWINCOININFO { @@ -6113,7 +6168,7 @@ type GWPlayerAutoMarkTag struct { func (x *GWPlayerAutoMarkTag) Reset() { *x = GWPlayerAutoMarkTag{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[76] + mi := &file_server_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6126,7 +6181,7 @@ func (x *GWPlayerAutoMarkTag) String() string { func (*GWPlayerAutoMarkTag) ProtoMessage() {} func (x *GWPlayerAutoMarkTag) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[76] + mi := &file_server_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6139,7 +6194,7 @@ func (x *GWPlayerAutoMarkTag) ProtoReflect() protoreflect.Message { // Deprecated: Use GWPlayerAutoMarkTag.ProtoReflect.Descriptor instead. func (*GWPlayerAutoMarkTag) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{76} + return file_server_proto_rawDescGZIP(), []int{77} } func (x *GWPlayerAutoMarkTag) GetSnId() int32 { @@ -6170,7 +6225,7 @@ type WGInviteRobEnterCoinSceneQueue struct { func (x *WGInviteRobEnterCoinSceneQueue) Reset() { *x = WGInviteRobEnterCoinSceneQueue{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[77] + mi := &file_server_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6183,7 +6238,7 @@ func (x *WGInviteRobEnterCoinSceneQueue) String() string { func (*WGInviteRobEnterCoinSceneQueue) ProtoMessage() {} func (x *WGInviteRobEnterCoinSceneQueue) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[77] + mi := &file_server_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6196,7 +6251,7 @@ func (x *WGInviteRobEnterCoinSceneQueue) ProtoReflect() protoreflect.Message { // Deprecated: Use WGInviteRobEnterCoinSceneQueue.ProtoReflect.Descriptor instead. func (*WGInviteRobEnterCoinSceneQueue) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{77} + return file_server_proto_rawDescGZIP(), []int{78} } func (x *WGInviteRobEnterCoinSceneQueue) GetPlatform() string { @@ -6232,7 +6287,7 @@ type WGGameForceStart struct { func (x *WGGameForceStart) Reset() { *x = WGGameForceStart{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[78] + mi := &file_server_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6245,7 +6300,7 @@ func (x *WGGameForceStart) String() string { func (*WGGameForceStart) ProtoMessage() {} func (x *WGGameForceStart) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[78] + mi := &file_server_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6258,7 +6313,7 @@ func (x *WGGameForceStart) ProtoReflect() protoreflect.Message { // Deprecated: Use WGGameForceStart.ProtoReflect.Descriptor instead. func (*WGGameForceStart) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{78} + return file_server_proto_rawDescGZIP(), []int{79} } func (x *WGGameForceStart) GetSceneId() int32 { @@ -6283,7 +6338,7 @@ type ProfitControlGameCfg struct { func (x *ProfitControlGameCfg) Reset() { *x = ProfitControlGameCfg{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[79] + mi := &file_server_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6296,7 +6351,7 @@ func (x *ProfitControlGameCfg) String() string { func (*ProfitControlGameCfg) ProtoMessage() {} func (x *ProfitControlGameCfg) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[79] + mi := &file_server_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6309,7 +6364,7 @@ func (x *ProfitControlGameCfg) ProtoReflect() protoreflect.Message { // Deprecated: Use ProfitControlGameCfg.ProtoReflect.Descriptor instead. func (*ProfitControlGameCfg) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{79} + return file_server_proto_rawDescGZIP(), []int{80} } func (x *ProfitControlGameCfg) GetGameFreeId() int32 { @@ -6359,7 +6414,7 @@ type ProfitControlPlatformCfg struct { func (x *ProfitControlPlatformCfg) Reset() { *x = ProfitControlPlatformCfg{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[80] + mi := &file_server_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6372,7 +6427,7 @@ func (x *ProfitControlPlatformCfg) String() string { func (*ProfitControlPlatformCfg) ProtoMessage() {} func (x *ProfitControlPlatformCfg) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[80] + mi := &file_server_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6385,7 +6440,7 @@ func (x *ProfitControlPlatformCfg) ProtoReflect() protoreflect.Message { // Deprecated: Use ProfitControlPlatformCfg.ProtoReflect.Descriptor instead. func (*ProfitControlPlatformCfg) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{80} + return file_server_proto_rawDescGZIP(), []int{81} } func (x *ProfitControlPlatformCfg) GetPlatform() string { @@ -6414,7 +6469,7 @@ type WGProfitControlCorrect struct { func (x *WGProfitControlCorrect) Reset() { *x = WGProfitControlCorrect{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[81] + mi := &file_server_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6427,7 +6482,7 @@ func (x *WGProfitControlCorrect) String() string { func (*WGProfitControlCorrect) ProtoMessage() {} func (x *WGProfitControlCorrect) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[81] + mi := &file_server_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6440,7 +6495,7 @@ func (x *WGProfitControlCorrect) ProtoReflect() protoreflect.Message { // Deprecated: Use WGProfitControlCorrect.ProtoReflect.Descriptor instead. func (*WGProfitControlCorrect) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{81} + return file_server_proto_rawDescGZIP(), []int{82} } func (x *WGProfitControlCorrect) GetCfg() []*ProfitControlPlatformCfg { @@ -6462,7 +6517,7 @@ type GWChangeSceneEvent struct { func (x *GWChangeSceneEvent) Reset() { *x = GWChangeSceneEvent{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[82] + mi := &file_server_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6475,7 +6530,7 @@ func (x *GWChangeSceneEvent) String() string { func (*GWChangeSceneEvent) ProtoMessage() {} func (x *GWChangeSceneEvent) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[82] + mi := &file_server_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6488,7 +6543,7 @@ func (x *GWChangeSceneEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use GWChangeSceneEvent.ProtoReflect.Descriptor instead. func (*GWChangeSceneEvent) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{82} + return file_server_proto_rawDescGZIP(), []int{83} } func (x *GWChangeSceneEvent) GetSceneId() int32 { @@ -6510,7 +6565,7 @@ type PlayerIParam struct { func (x *PlayerIParam) Reset() { *x = PlayerIParam{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[83] + mi := &file_server_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6523,7 +6578,7 @@ func (x *PlayerIParam) String() string { func (*PlayerIParam) ProtoMessage() {} func (x *PlayerIParam) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[83] + mi := &file_server_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6536,7 +6591,7 @@ func (x *PlayerIParam) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayerIParam.ProtoReflect.Descriptor instead. func (*PlayerIParam) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{83} + return file_server_proto_rawDescGZIP(), []int{84} } func (x *PlayerIParam) GetParamId() int32 { @@ -6565,7 +6620,7 @@ type PlayerSParam struct { func (x *PlayerSParam) Reset() { *x = PlayerSParam{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[84] + mi := &file_server_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6578,7 +6633,7 @@ func (x *PlayerSParam) String() string { func (*PlayerSParam) ProtoMessage() {} func (x *PlayerSParam) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[84] + mi := &file_server_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6591,7 +6646,7 @@ func (x *PlayerSParam) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayerSParam.ProtoReflect.Descriptor instead. func (*PlayerSParam) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{84} + return file_server_proto_rawDescGZIP(), []int{85} } func (x *PlayerSParam) GetParamId() int32 { @@ -6620,7 +6675,7 @@ type PlayerCParam struct { func (x *PlayerCParam) Reset() { *x = PlayerCParam{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[85] + mi := &file_server_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6633,7 +6688,7 @@ func (x *PlayerCParam) String() string { func (*PlayerCParam) ProtoMessage() {} func (x *PlayerCParam) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[85] + mi := &file_server_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6646,7 +6701,7 @@ func (x *PlayerCParam) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayerCParam.ProtoReflect.Descriptor instead. func (*PlayerCParam) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{85} + return file_server_proto_rawDescGZIP(), []int{86} } func (x *PlayerCParam) GetStrKey() string { @@ -6675,7 +6730,7 @@ type PlayerMatchCoin struct { func (x *PlayerMatchCoin) Reset() { *x = PlayerMatchCoin{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[86] + mi := &file_server_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6688,7 +6743,7 @@ func (x *PlayerMatchCoin) String() string { func (*PlayerMatchCoin) ProtoMessage() {} func (x *PlayerMatchCoin) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[86] + mi := &file_server_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6701,7 +6756,7 @@ func (x *PlayerMatchCoin) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayerMatchCoin.ProtoReflect.Descriptor instead. func (*PlayerMatchCoin) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{86} + return file_server_proto_rawDescGZIP(), []int{87} } func (x *PlayerMatchCoin) GetSnId() int32 { @@ -6733,7 +6788,7 @@ type GWPlayerMatchBilled struct { func (x *GWPlayerMatchBilled) Reset() { *x = GWPlayerMatchBilled{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[87] + mi := &file_server_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6746,7 +6801,7 @@ func (x *GWPlayerMatchBilled) String() string { func (*GWPlayerMatchBilled) ProtoMessage() {} func (x *GWPlayerMatchBilled) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[87] + mi := &file_server_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6759,7 +6814,7 @@ func (x *GWPlayerMatchBilled) ProtoReflect() protoreflect.Message { // Deprecated: Use GWPlayerMatchBilled.ProtoReflect.Descriptor instead. func (*GWPlayerMatchBilled) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{87} + return file_server_proto_rawDescGZIP(), []int{88} } func (x *GWPlayerMatchBilled) GetSceneId() int32 { @@ -6807,7 +6862,7 @@ type GWPlayerMatchGrade struct { func (x *GWPlayerMatchGrade) Reset() { *x = GWPlayerMatchGrade{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[88] + mi := &file_server_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6820,7 +6875,7 @@ func (x *GWPlayerMatchGrade) String() string { func (*GWPlayerMatchGrade) ProtoMessage() {} func (x *GWPlayerMatchGrade) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[88] + mi := &file_server_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6833,7 +6888,7 @@ func (x *GWPlayerMatchGrade) ProtoReflect() protoreflect.Message { // Deprecated: Use GWPlayerMatchGrade.ProtoReflect.Descriptor instead. func (*GWPlayerMatchGrade) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{88} + return file_server_proto_rawDescGZIP(), []int{89} } func (x *GWPlayerMatchGrade) GetSceneId() int32 { @@ -6893,7 +6948,7 @@ type WGPlayerQuitMatch struct { func (x *WGPlayerQuitMatch) Reset() { *x = WGPlayerQuitMatch{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[89] + mi := &file_server_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6906,7 +6961,7 @@ func (x *WGPlayerQuitMatch) String() string { func (*WGPlayerQuitMatch) ProtoMessage() {} func (x *WGPlayerQuitMatch) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[89] + mi := &file_server_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6919,7 +6974,7 @@ func (x *WGPlayerQuitMatch) ProtoReflect() protoreflect.Message { // Deprecated: Use WGPlayerQuitMatch.ProtoReflect.Descriptor instead. func (*WGPlayerQuitMatch) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{89} + return file_server_proto_rawDescGZIP(), []int{90} } func (x *WGPlayerQuitMatch) GetSnId() int32 { @@ -6960,7 +7015,7 @@ type WGSceneMatchBaseChange struct { func (x *WGSceneMatchBaseChange) Reset() { *x = WGSceneMatchBaseChange{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[90] + mi := &file_server_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6973,7 +7028,7 @@ func (x *WGSceneMatchBaseChange) String() string { func (*WGSceneMatchBaseChange) ProtoMessage() {} func (x *WGSceneMatchBaseChange) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[90] + mi := &file_server_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6986,7 +7041,7 @@ func (x *WGSceneMatchBaseChange) ProtoReflect() protoreflect.Message { // Deprecated: Use WGSceneMatchBaseChange.ProtoReflect.Descriptor instead. func (*WGSceneMatchBaseChange) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{90} + return file_server_proto_rawDescGZIP(), []int{91} } func (x *WGSceneMatchBaseChange) GetSceneIds() []int32 { @@ -7039,7 +7094,7 @@ type SSRedirectToPlayer struct { func (x *SSRedirectToPlayer) Reset() { *x = SSRedirectToPlayer{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[91] + mi := &file_server_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7052,7 +7107,7 @@ func (x *SSRedirectToPlayer) String() string { func (*SSRedirectToPlayer) ProtoMessage() {} func (x *SSRedirectToPlayer) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[91] + mi := &file_server_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7065,7 +7120,7 @@ func (x *SSRedirectToPlayer) ProtoReflect() protoreflect.Message { // Deprecated: Use SSRedirectToPlayer.ProtoReflect.Descriptor instead. func (*SSRedirectToPlayer) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{91} + return file_server_proto_rawDescGZIP(), []int{92} } func (x *SSRedirectToPlayer) GetSnId() int32 { @@ -7112,7 +7167,7 @@ type WGInviteMatchRob struct { func (x *WGInviteMatchRob) Reset() { *x = WGInviteMatchRob{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[92] + mi := &file_server_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7125,7 +7180,7 @@ func (x *WGInviteMatchRob) String() string { func (*WGInviteMatchRob) ProtoMessage() {} func (x *WGInviteMatchRob) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[92] + mi := &file_server_proto_msgTypes[93] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7138,7 +7193,7 @@ func (x *WGInviteMatchRob) ProtoReflect() protoreflect.Message { // Deprecated: Use WGInviteMatchRob.ProtoReflect.Descriptor instead. func (*WGInviteMatchRob) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{92} + return file_server_proto_rawDescGZIP(), []int{93} } func (x *WGInviteMatchRob) GetPlatform() string { @@ -7189,7 +7244,7 @@ type GameInfo struct { func (x *GameInfo) Reset() { *x = GameInfo{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[93] + mi := &file_server_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7202,7 +7257,7 @@ func (x *GameInfo) String() string { func (*GameInfo) ProtoMessage() {} func (x *GameInfo) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[93] + mi := &file_server_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7215,7 +7270,7 @@ func (x *GameInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GameInfo.ProtoReflect.Descriptor instead. func (*GameInfo) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{93} + return file_server_proto_rawDescGZIP(), []int{94} } func (x *GameInfo) GetGameId() int32 { @@ -7254,7 +7309,7 @@ type WGGameJackpot struct { func (x *WGGameJackpot) Reset() { *x = WGGameJackpot{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[94] + mi := &file_server_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7267,7 +7322,7 @@ func (x *WGGameJackpot) String() string { func (*WGGameJackpot) ProtoMessage() {} func (x *WGGameJackpot) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[94] + mi := &file_server_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7280,7 +7335,7 @@ func (x *WGGameJackpot) ProtoReflect() protoreflect.Message { // Deprecated: Use WGGameJackpot.ProtoReflect.Descriptor instead. func (*WGGameJackpot) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{94} + return file_server_proto_rawDescGZIP(), []int{95} } func (x *WGGameJackpot) GetSid() int64 { @@ -7330,7 +7385,7 @@ type BigWinHistoryInfo struct { func (x *BigWinHistoryInfo) Reset() { *x = BigWinHistoryInfo{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[95] + mi := &file_server_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7343,7 +7398,7 @@ func (x *BigWinHistoryInfo) String() string { func (*BigWinHistoryInfo) ProtoMessage() {} func (x *BigWinHistoryInfo) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[95] + mi := &file_server_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7356,7 +7411,7 @@ func (x *BigWinHistoryInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use BigWinHistoryInfo.ProtoReflect.Descriptor instead. func (*BigWinHistoryInfo) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{95} + return file_server_proto_rawDescGZIP(), []int{96} } func (x *BigWinHistoryInfo) GetSpinID() string { @@ -7436,7 +7491,7 @@ type WGPlayerEnterMiniGame struct { func (x *WGPlayerEnterMiniGame) Reset() { *x = WGPlayerEnterMiniGame{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[96] + mi := &file_server_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7449,7 +7504,7 @@ func (x *WGPlayerEnterMiniGame) String() string { func (*WGPlayerEnterMiniGame) ProtoMessage() {} func (x *WGPlayerEnterMiniGame) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[96] + mi := &file_server_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7462,7 +7517,7 @@ func (x *WGPlayerEnterMiniGame) ProtoReflect() protoreflect.Message { // Deprecated: Use WGPlayerEnterMiniGame.ProtoReflect.Descriptor instead. func (*WGPlayerEnterMiniGame) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{96} + return file_server_proto_rawDescGZIP(), []int{97} } func (x *WGPlayerEnterMiniGame) GetSid() int64 { @@ -7550,7 +7605,7 @@ type WGPlayerLeaveMiniGame struct { func (x *WGPlayerLeaveMiniGame) Reset() { *x = WGPlayerLeaveMiniGame{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[97] + mi := &file_server_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7563,7 +7618,7 @@ func (x *WGPlayerLeaveMiniGame) String() string { func (*WGPlayerLeaveMiniGame) ProtoMessage() {} func (x *WGPlayerLeaveMiniGame) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[97] + mi := &file_server_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7576,7 +7631,7 @@ func (x *WGPlayerLeaveMiniGame) ProtoReflect() protoreflect.Message { // Deprecated: Use WGPlayerLeaveMiniGame.ProtoReflect.Descriptor instead. func (*WGPlayerLeaveMiniGame) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{97} + return file_server_proto_rawDescGZIP(), []int{98} } func (x *WGPlayerLeaveMiniGame) GetSid() int64 { @@ -7619,7 +7674,7 @@ type WGPlayerLeave struct { func (x *WGPlayerLeave) Reset() { *x = WGPlayerLeave{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[98] + mi := &file_server_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7632,7 +7687,7 @@ func (x *WGPlayerLeave) String() string { func (*WGPlayerLeave) ProtoMessage() {} func (x *WGPlayerLeave) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[98] + mi := &file_server_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7645,7 +7700,7 @@ func (x *WGPlayerLeave) ProtoReflect() protoreflect.Message { // Deprecated: Use WGPlayerLeave.ProtoReflect.Descriptor instead. func (*WGPlayerLeave) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{98} + return file_server_proto_rawDescGZIP(), []int{99} } func (x *WGPlayerLeave) GetSnId() int32 { @@ -7671,7 +7726,7 @@ type GWPlayerLeaveMiniGame struct { func (x *GWPlayerLeaveMiniGame) Reset() { *x = GWPlayerLeaveMiniGame{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[99] + mi := &file_server_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7684,7 +7739,7 @@ func (x *GWPlayerLeaveMiniGame) String() string { func (*GWPlayerLeaveMiniGame) ProtoMessage() {} func (x *GWPlayerLeaveMiniGame) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[99] + mi := &file_server_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7697,7 +7752,7 @@ func (x *GWPlayerLeaveMiniGame) ProtoReflect() protoreflect.Message { // Deprecated: Use GWPlayerLeaveMiniGame.ProtoReflect.Descriptor instead. func (*GWPlayerLeaveMiniGame) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{99} + return file_server_proto_rawDescGZIP(), []int{100} } func (x *GWPlayerLeaveMiniGame) GetSceneId() int32 { @@ -7747,7 +7802,7 @@ type GWDestroyMiniScene struct { func (x *GWDestroyMiniScene) Reset() { *x = GWDestroyMiniScene{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[100] + mi := &file_server_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7760,7 +7815,7 @@ func (x *GWDestroyMiniScene) String() string { func (*GWDestroyMiniScene) ProtoMessage() {} func (x *GWDestroyMiniScene) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[100] + mi := &file_server_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7773,7 +7828,7 @@ func (x *GWDestroyMiniScene) ProtoReflect() protoreflect.Message { // Deprecated: Use GWDestroyMiniScene.ProtoReflect.Descriptor instead. func (*GWDestroyMiniScene) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{100} + return file_server_proto_rawDescGZIP(), []int{101} } func (x *GWDestroyMiniScene) GetSceneId() int32 { @@ -7795,7 +7850,7 @@ type GRDestroyScene struct { func (x *GRDestroyScene) Reset() { *x = GRDestroyScene{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[101] + mi := &file_server_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7808,7 +7863,7 @@ func (x *GRDestroyScene) String() string { func (*GRDestroyScene) ProtoMessage() {} func (x *GRDestroyScene) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[101] + mi := &file_server_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7821,7 +7876,7 @@ func (x *GRDestroyScene) ProtoReflect() protoreflect.Message { // Deprecated: Use GRDestroyScene.ProtoReflect.Descriptor instead. func (*GRDestroyScene) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{101} + return file_server_proto_rawDescGZIP(), []int{102} } func (x *GRDestroyScene) GetSceneId() int32 { @@ -7843,7 +7898,7 @@ type RWAccountInvalid struct { func (x *RWAccountInvalid) Reset() { *x = RWAccountInvalid{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[102] + mi := &file_server_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7856,7 +7911,7 @@ func (x *RWAccountInvalid) String() string { func (*RWAccountInvalid) ProtoMessage() {} func (x *RWAccountInvalid) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[102] + mi := &file_server_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7869,7 +7924,7 @@ func (x *RWAccountInvalid) ProtoReflect() protoreflect.Message { // Deprecated: Use RWAccountInvalid.ProtoReflect.Descriptor instead. func (*RWAccountInvalid) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{102} + return file_server_proto_rawDescGZIP(), []int{103} } func (x *RWAccountInvalid) GetAcc() string { @@ -7892,7 +7947,7 @@ type WGDTRoomInfo struct { func (x *WGDTRoomInfo) Reset() { *x = WGDTRoomInfo{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[103] + mi := &file_server_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7905,7 +7960,7 @@ func (x *WGDTRoomInfo) String() string { func (*WGDTRoomInfo) ProtoMessage() {} func (x *WGDTRoomInfo) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[103] + mi := &file_server_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7918,7 +7973,7 @@ func (x *WGDTRoomInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use WGDTRoomInfo.ProtoReflect.Descriptor instead. func (*WGDTRoomInfo) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{103} + return file_server_proto_rawDescGZIP(), []int{104} } func (x *WGDTRoomInfo) GetDataKey() string { @@ -7953,7 +8008,7 @@ type PlayerDTCoin struct { func (x *PlayerDTCoin) Reset() { *x = PlayerDTCoin{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[104] + mi := &file_server_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7966,7 +8021,7 @@ func (x *PlayerDTCoin) String() string { func (*PlayerDTCoin) ProtoMessage() {} func (x *PlayerDTCoin) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[104] + mi := &file_server_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7979,7 +8034,7 @@ func (x *PlayerDTCoin) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayerDTCoin.ProtoReflect.Descriptor instead. func (*PlayerDTCoin) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{104} + return file_server_proto_rawDescGZIP(), []int{105} } func (x *PlayerDTCoin) GetNickName() string { @@ -8050,7 +8105,7 @@ type EResult struct { func (x *EResult) Reset() { *x = EResult{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[105] + mi := &file_server_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8063,7 +8118,7 @@ func (x *EResult) String() string { func (*EResult) ProtoMessage() {} func (x *EResult) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[105] + mi := &file_server_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8076,7 +8131,7 @@ func (x *EResult) ProtoReflect() protoreflect.Message { // Deprecated: Use EResult.ProtoReflect.Descriptor instead. func (*EResult) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{105} + return file_server_proto_rawDescGZIP(), []int{106} } func (x *EResult) GetIndex() string { @@ -8118,7 +8173,7 @@ type GWDTRoomInfo struct { func (x *GWDTRoomInfo) Reset() { *x = GWDTRoomInfo{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[106] + mi := &file_server_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8131,7 +8186,7 @@ func (x *GWDTRoomInfo) String() string { func (*GWDTRoomInfo) ProtoMessage() {} func (x *GWDTRoomInfo) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[106] + mi := &file_server_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8144,7 +8199,7 @@ func (x *GWDTRoomInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GWDTRoomInfo.ProtoReflect.Descriptor instead. func (*GWDTRoomInfo) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{106} + return file_server_proto_rawDescGZIP(), []int{107} } func (x *GWDTRoomInfo) GetDataKey() string { @@ -8260,7 +8315,7 @@ type WGRoomResults struct { func (x *WGRoomResults) Reset() { *x = WGRoomResults{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[107] + mi := &file_server_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8273,7 +8328,7 @@ func (x *WGRoomResults) String() string { func (*WGRoomResults) ProtoMessage() {} func (x *WGRoomResults) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[107] + mi := &file_server_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8286,7 +8341,7 @@ func (x *WGRoomResults) ProtoReflect() protoreflect.Message { // Deprecated: Use WGRoomResults.ProtoReflect.Descriptor instead. func (*WGRoomResults) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{107} + return file_server_proto_rawDescGZIP(), []int{108} } func (x *WGRoomResults) GetRoomId() int32 { @@ -8331,7 +8386,7 @@ type GWRoomResults struct { func (x *GWRoomResults) Reset() { *x = GWRoomResults{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[108] + mi := &file_server_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8344,7 +8399,7 @@ func (x *GWRoomResults) String() string { func (*GWRoomResults) ProtoMessage() {} func (x *GWRoomResults) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[108] + mi := &file_server_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8357,7 +8412,7 @@ func (x *GWRoomResults) ProtoReflect() protoreflect.Message { // Deprecated: Use GWRoomResults.ProtoReflect.Descriptor instead. func (*GWRoomResults) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{108} + return file_server_proto_rawDescGZIP(), []int{109} } func (x *GWRoomResults) GetDataKey() string { @@ -8395,7 +8450,7 @@ type GWAddSingleAdjust struct { func (x *GWAddSingleAdjust) Reset() { *x = GWAddSingleAdjust{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[109] + mi := &file_server_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8408,7 +8463,7 @@ func (x *GWAddSingleAdjust) String() string { func (*GWAddSingleAdjust) ProtoMessage() {} func (x *GWAddSingleAdjust) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[109] + mi := &file_server_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8421,7 +8476,7 @@ func (x *GWAddSingleAdjust) ProtoReflect() protoreflect.Message { // Deprecated: Use GWAddSingleAdjust.ProtoReflect.Descriptor instead. func (*GWAddSingleAdjust) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{109} + return file_server_proto_rawDescGZIP(), []int{110} } func (x *GWAddSingleAdjust) GetSnId() int32 { @@ -8459,7 +8514,7 @@ type WGSingleAdjust struct { func (x *WGSingleAdjust) Reset() { *x = WGSingleAdjust{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[110] + mi := &file_server_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8472,7 +8527,7 @@ func (x *WGSingleAdjust) String() string { func (*WGSingleAdjust) ProtoMessage() {} func (x *WGSingleAdjust) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[110] + mi := &file_server_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8485,7 +8540,7 @@ func (x *WGSingleAdjust) ProtoReflect() protoreflect.Message { // Deprecated: Use WGSingleAdjust.ProtoReflect.Descriptor instead. func (*WGSingleAdjust) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{110} + return file_server_proto_rawDescGZIP(), []int{111} } func (x *WGSingleAdjust) GetSceneId() int32 { @@ -8526,7 +8581,7 @@ type WbCtrlCfg struct { func (x *WbCtrlCfg) Reset() { *x = WbCtrlCfg{} if protoimpl.UnsafeEnabled { - mi := &file_server_proto_msgTypes[111] + mi := &file_server_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8539,7 +8594,7 @@ func (x *WbCtrlCfg) String() string { func (*WbCtrlCfg) ProtoMessage() {} func (x *WbCtrlCfg) ProtoReflect() protoreflect.Message { - mi := &file_server_proto_msgTypes[111] + mi := &file_server_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8552,7 +8607,7 @@ func (x *WbCtrlCfg) ProtoReflect() protoreflect.Message { // Deprecated: Use WbCtrlCfg.ProtoReflect.Descriptor instead. func (*WbCtrlCfg) Descriptor() ([]byte, []int) { - return file_server_proto_rawDescGZIP(), []int{111} + return file_server_proto_rawDescGZIP(), []int{112} } func (x *WbCtrlCfg) GetPlatform() string { @@ -8697,1066 +8752,1073 @@ var file_server_proto_rawDesc = []byte{ 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x49, 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0x27, 0x0a, 0x13, 0x57, 0x47, 0x47, 0x72, 0x61, 0x63, 0x65, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x49, 0x64, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x03, 0x49, 0x64, 0x73, 0x22, 0x56, 0x0a, 0x0a, - 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x22, 0x0a, 0x0c, 0x52, 0x65, - 0x62, 0x61, 0x74, 0x65, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0c, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x12, 0x24, - 0x0a, 0x0d, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x66, 0x67, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x47, 0x61, 0x6d, - 0x65, 0x43, 0x66, 0x67, 0x22, 0xa3, 0x06, 0x0a, 0x0d, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x47, 0x61, 0x74, 0x65, - 0x53, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, - 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1c, 0x0a, 0x09, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x61, - 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x54, 0x61, - 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x73, 0x4c, 0x6f, 0x61, 0x64, - 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x49, 0x73, 0x4c, 0x6f, 0x61, 0x64, - 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x49, 0x73, 0x51, 0x4d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x04, 0x49, 0x73, 0x51, 0x4d, 0x12, 0x28, 0x0a, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, - 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x03, 0x49, 0x64, 0x73, 0x22, 0x45, 0x0a, 0x09, + 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x74, 0x65, + 0x6d, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x49, 0x74, 0x65, 0x6d, + 0x4e, 0x75, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x22, 0x56, 0x0a, 0x0a, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x54, 0x61, 0x73, + 0x6b, 0x12, 0x22, 0x0a, 0x0c, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x53, 0x77, 0x69, 0x74, 0x63, + 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x53, + 0x77, 0x69, 0x74, 0x63, 0x68, 0x12, 0x24, 0x0a, 0x0d, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x47, + 0x61, 0x6d, 0x65, 0x43, 0x66, 0x67, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x52, 0x65, + 0x62, 0x61, 0x74, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x66, 0x67, 0x22, 0xb6, 0x06, 0x0a, 0x0d, + 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x10, 0x0a, + 0x03, 0x53, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, + 0x6e, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, + 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, + 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, + 0x61, 0x74, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x64, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x64, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x08, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, + 0x08, 0x49, 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x08, 0x49, 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x49, 0x73, 0x51, + 0x4d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x49, 0x73, 0x51, 0x4d, 0x12, 0x28, 0x0a, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, - 0x12, 0x28, 0x0a, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, - 0x74, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x07, 0x49, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x52, 0x07, 0x49, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x2e, 0x0a, 0x07, 0x53, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x52, 0x07, 0x53, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x2e, 0x0a, 0x07, 0x43, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x52, 0x07, 0x43, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, - 0x49, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x22, - 0x0a, 0x0c, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x41, 0x64, 0x6a, 0x75, - 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x03, 0x50, 0x6f, 0x73, 0x12, 0x36, 0x0a, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x11, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x57, 0x47, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x20, 0x0a, 0x0b, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, - 0x05, 0x52, 0x0b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x42, - 0x0a, 0x09, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x13, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x24, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x57, 0x47, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x1a, 0x38, 0x0a, 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, - 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3c, 0x0a, 0x0e, - 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, - 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, - 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x6b, 0x0a, 0x0d, 0x57, 0x47, - 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x53, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x53, - 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, - 0x1a, 0x0a, 0x08, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x08, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x53, - 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, - 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x22, 0x7a, 0x0a, 0x0e, 0x57, 0x47, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x65, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x49, 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x65, - 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x45, 0x6e, 0x74, - 0x65, 0x72, 0x54, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x45, 0x6e, 0x74, 0x65, - 0x72, 0x54, 0x73, 0x22, 0x91, 0x07, 0x0a, 0x0d, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x4c, 0x65, 0x61, 0x76, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, - 0x08, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x61, - 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, - 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, - 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x43, 0x6f, 0x69, - 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x46, 0x65, 0x65, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x46, 0x65, - 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, - 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x54, 0x73, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x54, 0x73, 0x12, - 0x16, 0x0a, 0x06, 0x53, 0x65, 0x6c, 0x56, 0x69, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x06, 0x53, 0x65, 0x6c, 0x56, 0x69, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x42, 0x65, 0x74, 0x43, 0x6f, - 0x69, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x42, 0x65, 0x74, 0x43, 0x6f, 0x69, - 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x57, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x57, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x1c, 0x0a, - 0x09, 0x4c, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x4c, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x14, 0x54, - 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x46, - 0x6c, 0x6f, 0x77, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, 0x54, 0x6f, 0x74, 0x61, 0x6c, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6c, 0x6f, 0x77, 0x12, - 0x2e, 0x0a, 0x12, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x42, 0x65, 0x74, - 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x56, 0x61, 0x6c, - 0x69, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x42, 0x65, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, - 0x36, 0x0a, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, - 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x4c, 0x65, 0x61, 0x76, 0x65, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x52, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x49, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, - 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x43, 0x75, 0x72, 0x49, 0x73, 0x57, 0x69, 0x6e, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x08, 0x43, 0x75, 0x72, 0x49, 0x73, 0x57, 0x69, 0x6e, 0x12, 0x57, 0x0a, - 0x10, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x47, 0x72, 0x61, 0x64, 0x65, - 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x2e, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x62, 0x6f, 0x74, - 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x09, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, - 0x2e, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x09, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x38, 0x0a, 0x0a, 0x49, 0x74, - 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x4c, 0x65, + 0x61, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, + 0x74, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x12, 0x2e, 0x0a, 0x07, 0x49, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0b, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x49, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x07, 0x49, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x12, 0x2e, 0x0a, 0x07, 0x53, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0c, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x53, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x07, 0x53, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x12, 0x2e, 0x0a, 0x07, 0x43, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0d, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x07, 0x43, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x41, + 0x64, 0x6a, 0x75, 0x73, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x53, 0x69, 0x6e, + 0x67, 0x6c, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, + 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x36, 0x0a, 0x05, 0x49, + 0x74, 0x65, 0x6d, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x2e, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, + 0x72, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x49, 0x74, + 0x65, 0x6d, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x42, 0x0a, 0x09, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, + 0x72, 0x65, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x2e, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x2e, + 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, + 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x4b, 0x0a, 0x0a, 0x49, 0x74, 0x65, + 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3c, 0x0a, 0x0e, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x43, 0x0a, 0x15, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x62, - 0x6f, 0x74, 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, - 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, - 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3c, 0x0a, 0x0e, 0x52, 0x61, 0x6e, - 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, - 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3c, 0x0a, 0x10, 0x57, 0x47, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x44, 0x72, 0x6f, 0x70, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, - 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, - 0x65, 0x6e, 0x65, 0x49, 0x64, 0x22, 0x66, 0x0a, 0x0e, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x52, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, - 0x6e, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, - 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, 0x22, 0x3e, 0x0a, - 0x10, 0x47, 0x57, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x43, 0x61, 0x72, - 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, - 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x22, 0x9d, 0x01, - 0x0a, 0x13, 0x47, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x42, 0x69, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x56, - 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x56, 0x69, 0x70, 0x12, 0x22, 0x0a, - 0x0c, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x61, 0x79, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0c, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x61, 0x79, 0x54, 0x6f, 0x74, 0x61, - 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, - 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x29, 0x0a, - 0x15, 0x47, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x55, 0x6e, 0x42, 0x69, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x22, 0x79, 0x0a, 0x0f, 0x57, 0x47, 0x44, 0x61, - 0x79, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x4d, - 0x69, 0x6e, 0x75, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4d, 0x69, 0x6e, - 0x75, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x48, 0x6f, 0x75, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x04, 0x48, 0x6f, 0x75, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x44, 0x61, 0x79, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x44, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x57, 0x65, 0x65, - 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x57, 0x65, 0x65, 0x6b, 0x12, 0x14, 0x0a, - 0x05, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4d, 0x6f, - 0x6e, 0x74, 0x68, 0x22, 0xb8, 0x01, 0x0a, 0x10, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x41, 0x63, 0x63, 0x49, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x41, 0x63, 0x63, 0x49, 0x64, 0x12, 0x1a, - 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x12, 0x0a, 0x04, - 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, - 0x53, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x48, 0x65, 0x61, 0x64, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x04, 0x48, 0x65, 0x61, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x65, 0x78, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x53, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, - 0x69, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0xae, - 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, - 0x1c, 0x0a, 0x09, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x09, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x10, 0x0a, - 0x03, 0x50, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, - 0x1a, 0x0a, 0x08, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x42, - 0x69, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x42, 0x69, - 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x74, 0x72, 0x44, 0x61, 0x74, 0x61, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x53, 0x74, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, - 0x1e, 0x0a, 0x0a, 0x45, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x6f, 0x73, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0a, 0x45, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x6f, 0x73, 0x22, - 0x41, 0x0a, 0x0d, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x65, - 0x12, 0x30, 0x0a, 0x08, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x70, 0x6c, - 0x61, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x08, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x65, 0x73, 0x22, 0xfe, 0x03, 0x0a, 0x0f, 0x47, 0x52, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, - 0x65, 0x71, 0x75, 0x65, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x03, 0x52, 0x65, - 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x65, 0x52, 0x03, - 0x52, 0x65, 0x63, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, - 0x18, 0x0a, 0x07, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, - 0x6d, 0x6f, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x72, 0x6f, - 0x6d, 0x6f, 0x74, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x43, 0x6c, 0x75, 0x62, 0x49, 0x64, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x43, 0x6c, 0x75, 0x62, 0x49, 0x64, 0x12, 0x1a, 0x0a, - 0x08, 0x43, 0x6c, 0x75, 0x62, 0x52, 0x6f, 0x6f, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x43, 0x6c, 0x75, 0x62, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, - 0x65, 0x46, 0x72, 0x65, 0x65, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, - 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, - 0x6d, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, - 0x64, 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x6f, 0x6f, - 0x6d, 0x4d, 0x6f, 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x52, 0x6f, 0x6f, - 0x6d, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, - 0x6d, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, - 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x50, - 0x6f, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, - 0x50, 0x6f, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x49, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x4c, 0x6f, 0x67, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73, - 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, - 0x52, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x44, 0x61, 0x74, 0x61, 0x73, - 0x56, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x44, 0x61, 0x74, 0x61, 0x73, - 0x56, 0x65, 0x72, 0x22, 0xb2, 0x01, 0x0a, 0x0a, 0x57, 0x52, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, - 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x52, 0x65, 0x63, 0x54, 0x79, 0x70, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x52, 0x65, 0x63, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x52, 0x65, 0x63, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x07, 0x52, 0x65, 0x63, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x73, - 0x42, 0x69, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x49, 0x73, 0x42, 0x69, - 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x43, 0x69, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x4c, 0x6f, 0x67, 0x49, 0x64, 0x22, 0x2e, 0x0a, 0x0c, 0x57, 0x52, 0x47, 0x61, - 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x47, 0x61, - 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x22, 0x40, 0x0a, 0x0c, 0x57, 0x52, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x22, 0x47, 0x0a, 0x0b, 0x57, 0x54, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x61, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x64, 0x64, - 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x41, 0x64, 0x64, 0x43, - 0x6f, 0x69, 0x6e, 0x22, 0x8f, 0x01, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x61, - 0x6d, 0x65, 0x52, 0x65, 0x63, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x48, 0x65, 0x61, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x48, 0x65, 0x61, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69, - 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, - 0x50, 0x6f, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0b, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xac, 0x01, 0x0a, 0x09, 0x47, 0x57, 0x47, 0x61, 0x6d, 0x65, - 0x52, 0x65, 0x63, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x05, 0x44, - 0x61, 0x74, 0x61, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, - 0x63, 0x52, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, - 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4e, 0x75, - 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x47, 0x61, 0x6d, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x47, 0x61, 0x6d, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x43, 0x6f, - 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, - 0x43, 0x6f, 0x64, 0x65, 0x22, 0x76, 0x0a, 0x0c, 0x47, 0x57, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, - 0x43, 0x75, 0x72, 0x72, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x43, 0x75, 0x72, 0x72, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, - 0x61, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x61, 0x78, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x4d, 0x61, 0x78, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x22, 0x33, 0x0a, 0x09, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69, - 0x6e, 0x22, 0x3a, 0x0a, 0x0a, 0x46, 0x69, 0x73, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, - 0x16, 0x0a, 0x06, 0x46, 0x69, 0x73, 0x68, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x06, 0x46, 0x69, 0x73, 0x68, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x78, 0x0a, - 0x0c, 0x47, 0x57, 0x46, 0x69, 0x73, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1e, 0x0a, - 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, - 0x64, 0x12, 0x34, 0x0a, 0x0b, 0x46, 0x69, 0x73, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x46, 0x69, 0x73, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0b, 0x46, 0x69, 0x73, 0x68, - 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x22, 0x5e, 0x0a, 0x0c, 0x47, 0x57, 0x53, 0x63, 0x65, - 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, - 0x1c, 0x0a, 0x09, 0x43, 0x75, 0x72, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x09, 0x43, 0x75, 0x72, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x46, 0x69, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x46, 0x69, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x22, 0xa7, 0x01, 0x0a, 0x0d, 0x57, 0x52, 0x49, 0x6e, - 0x76, 0x69, 0x74, 0x65, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, - 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, - 0x64, 0x12, 0x10, 0x0a, 0x03, 0x43, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, - 0x43, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1a, 0x0a, - 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x73, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x49, 0x73, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x4e, 0x65, 0x65, 0x64, 0x41, 0x77, 0x61, 0x69, 0x74, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x4e, 0x65, 0x65, 0x64, 0x41, 0x77, 0x61, 0x69, - 0x74, 0x22, 0x40, 0x0a, 0x12, 0x57, 0x52, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x43, 0x6e, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x43, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x49, 0x64, 0x22, 0x80, 0x01, 0x0a, 0x14, 0x57, 0x47, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4b, - 0x69, 0x63, 0x6b, 0x4f, 0x75, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, - 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, - 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, - 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x53, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x53, 0x69, 0x64, 0x22, 0x40, 0x0a, 0x0e, 0x57, 0x44, 0x44, 0x61, 0x74, 0x61, - 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x44, 0x61, 0x74, 0x61, - 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x44, 0x61, 0x74, 0x61, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x34, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x22, 0x83, - 0x01, 0x0a, 0x0d, 0x47, 0x4e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x73, - 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x0b, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x12, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x61, 0x72, 0x64, 0x52, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x73, - 0x12, 0x22, 0x0a, 0x0c, 0x4e, 0x6f, 0x77, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x4d, 0x6f, 0x64, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x4e, 0x6f, 0x77, 0x52, 0x6f, 0x62, 0x6f, 0x74, - 0x4d, 0x6f, 0x64, 0x65, 0x22, 0xa5, 0x01, 0x0a, 0x09, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x44, 0x61, - 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x12, 0x1a, 0x0a, 0x08, - 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, - 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x43, 0x6f, 0x69, 0x6e, - 0x50, 0x61, 0x79, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, - 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x61, 0x79, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x2c, 0x0a, 0x11, - 0x43, 0x6f, 0x69, 0x6e, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x6f, 0x74, 0x61, - 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x43, 0x6f, 0x69, 0x6e, 0x45, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, - 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x22, 0x5c, 0x0a, 0x0d, - 0x47, 0x4e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x18, 0x0a, - 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x22, 0x4a, 0x0a, 0x0e, 0x47, 0x57, - 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, - 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x49, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x48, 0x0a, 0x12, 0x57, 0x47, 0x52, 0x65, 0x62, 0x69, - 0x6e, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, - 0x4f, 0x6c, 0x64, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4f, - 0x6c, 0x64, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x4e, 0x65, 0x77, 0x53, 0x6e, 0x49, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4e, 0x65, 0x77, 0x53, 0x6e, 0x49, 0x64, - 0x22, 0x4e, 0x0a, 0x0c, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x46, 0x6c, 0x61, 0x67, - 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, - 0x53, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x46, 0x6c, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x6c, 0x61, 0x67, - 0x22, 0x51, 0x0a, 0x0b, 0x57, 0x47, 0x48, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x64, 0x4f, 0x70, 0x12, - 0x12, 0x0a, 0x04, 0x73, 0x6e, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, - 0x6e, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, 0x06, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x22, 0xe7, 0x01, 0x0a, 0x0b, 0x47, 0x57, 0x4e, 0x65, 0x77, 0x4e, 0x6f, 0x74, - 0x69, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x63, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, - 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, - 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x74, 0x79, 0x70, 0x65, 0x12, - 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, - 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x73, 0x72, 0x6f, 0x62, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x72, 0x6f, 0x62, 0x22, 0xa7, 0x02, - 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x73, 0x12, + 0x3a, 0x02, 0x38, 0x01, 0x22, 0x6b, 0x0a, 0x0d, 0x57, 0x47, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, + 0x63, 0x65, 0x53, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x61, 0x6b, + 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x54, 0x61, 0x6b, + 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, + 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, + 0x73, 0x22, 0x7a, 0x0a, 0x0e, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x74, + 0x75, 0x72, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x1a, 0x0a, 0x08, 0x49, 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x08, 0x49, 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, + 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, + 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x54, 0x73, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x54, 0x73, 0x22, 0xa4, 0x07, + 0x0a, 0x0d, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x52, + 0x65, 0x74, 0x75, 0x72, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x46, 0x65, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x46, 0x65, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x47, + 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, + 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x54, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x47, + 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x54, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x65, 0x6c, + 0x56, 0x69, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x65, 0x6c, 0x56, 0x69, + 0x70, 0x12, 0x18, 0x0a, 0x07, 0x42, 0x65, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x07, 0x42, 0x65, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x57, + 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x57, + 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x4c, 0x6f, 0x73, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x4c, 0x6f, 0x73, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x14, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, + 0x6e, 0x76, 0x65, 0x72, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6c, 0x6f, 0x77, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x14, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, + 0x74, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6c, 0x6f, 0x77, 0x12, 0x2e, 0x0a, 0x12, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x42, 0x65, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x42, 0x65, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x36, 0x0a, 0x05, 0x49, 0x74, 0x65, + 0x6d, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x2e, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x2e, + 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x49, 0x74, 0x65, 0x6d, + 0x73, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x43, + 0x75, 0x72, 0x49, 0x73, 0x57, 0x69, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x43, + 0x75, 0x72, 0x49, 0x73, 0x57, 0x69, 0x6e, 0x12, 0x57, 0x0a, 0x10, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x47, 0x57, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, + 0x62, 0x6f, 0x74, 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, + 0x12, 0x42, 0x0a, 0x09, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x13, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x47, 0x57, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x2e, 0x52, 0x61, 0x6e, 0x6b, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x52, 0x61, 0x6e, 0x6b, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x4b, 0x0a, 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x49, 0x74, 0x65, + 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x1a, 0x43, 0x0a, 0x15, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x47, + 0x72, 0x61, 0x64, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3c, 0x0a, 0x0e, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3c, 0x0a, 0x10, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x44, 0x72, 0x6f, 0x70, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, + 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, + 0x49, 0x64, 0x22, 0x66, 0x0a, 0x0e, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, + 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x02, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, + 0x12, 0x18, 0x0a, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x10, 0x47, 0x57, + 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x12, 0x16, + 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, + 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x22, 0x9d, 0x01, 0x0a, 0x13, 0x47, + 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x69, + 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x03, 0x53, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x56, 0x69, 0x70, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x56, 0x69, 0x70, 0x12, 0x22, 0x0a, 0x0c, 0x43, 0x6f, + 0x69, 0x6e, 0x50, 0x61, 0x79, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0c, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x61, 0x79, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x0e, + 0x0a, 0x02, 0x49, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x70, 0x12, 0x1a, + 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x29, 0x0a, 0x15, 0x47, 0x47, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x6e, 0x42, + 0x69, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x03, 0x53, 0x69, 0x64, 0x22, 0x79, 0x0a, 0x0f, 0x57, 0x47, 0x44, 0x61, 0x79, 0x54, 0x69, + 0x6d, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x4d, 0x69, 0x6e, 0x75, + 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x48, 0x6f, 0x75, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, + 0x48, 0x6f, 0x75, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x44, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x03, 0x44, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x57, 0x65, 0x65, 0x6b, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x57, 0x65, 0x65, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x4d, 0x6f, + 0x6e, 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4d, 0x6f, 0x6e, 0x74, 0x68, + 0x22, 0xb8, 0x01, 0x0a, 0x10, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x41, 0x63, 0x63, 0x49, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x41, 0x63, 0x63, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x48, 0x65, 0x61, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x48, 0x65, 0x61, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x03, 0x53, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0xae, 0x01, 0x0a, 0x0c, + 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1c, 0x0a, 0x09, + 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x09, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x1a, 0x0a, 0x08, + 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x42, 0x69, 0x6e, 0x44, + 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x42, 0x69, 0x6e, 0x44, 0x61, + 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x74, 0x72, 0x44, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x53, 0x74, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, + 0x45, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x6f, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0a, 0x45, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x6f, 0x73, 0x22, 0x41, 0x0a, 0x0d, + 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x65, 0x12, 0x30, 0x0a, + 0x08, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x52, + 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x08, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x65, 0x73, 0x22, + 0xfe, 0x03, 0x0a, 0x0f, 0x47, 0x52, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x03, 0x52, 0x65, 0x63, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, + 0x70, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x65, 0x52, 0x03, 0x52, 0x65, 0x63, + 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x43, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, + 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, + 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x43, 0x6c, 0x75, 0x62, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x06, 0x43, 0x6c, 0x75, 0x62, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x43, 0x6c, + 0x75, 0x62, 0x52, 0x6f, 0x6f, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x43, 0x6c, + 0x75, 0x62, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, + 0x65, 0x65, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, + 0x46, 0x72, 0x65, 0x65, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x16, + 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, + 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x6f, 0x6f, 0x6d, 0x4d, 0x6f, + 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x52, 0x6f, 0x6f, 0x6d, 0x4d, 0x6f, + 0x64, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, + 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x50, 0x6f, 0x73, + 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x49, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x4c, + 0x6f, 0x67, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73, 0x18, 0x10, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x70, + 0x6c, 0x61, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x44, + 0x61, 0x74, 0x61, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x44, 0x61, 0x74, 0x61, 0x73, 0x56, 0x65, 0x72, + 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x44, 0x61, 0x74, 0x61, 0x73, 0x56, 0x65, 0x72, + 0x22, 0xb2, 0x01, 0x0a, 0x0a, 0x57, 0x52, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, - 0x6e, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x12, 0x18, 0x0a, 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x54, - 0x6f, 0x74, 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x54, - 0x6f, 0x74, 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x49, 0x73, 0x46, 0x6f, 0x6f, - 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x49, - 0x73, 0x46, 0x6f, 0x6f, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x4c, - 0x6f, 0x73, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0d, 0x4c, 0x6f, 0x73, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x57, 0x69, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x57, 0x69, 0x6e, 0x47, 0x61, 0x6d, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x79, - 0x73, 0x49, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x54, 0x6f, 0x74, 0x61, 0x6c, - 0x53, 0x79, 0x73, 0x49, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x79, - 0x73, 0x4f, 0x75, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x54, 0x6f, 0x74, 0x61, - 0x6c, 0x53, 0x79, 0x73, 0x4f, 0x75, 0x74, 0x22, 0x94, 0x01, 0x0a, 0x0f, 0x47, 0x57, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x52, - 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, - 0x6d, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x73, 0x52, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73, - 0x12, 0x16, 0x0a, 0x06, 0x43, 0x6c, 0x75, 0x62, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x43, 0x6c, 0x75, 0x62, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x50, 0x75, 0x6d, 0x70, - 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0d, 0x50, 0x75, 0x6d, 0x70, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0xb5, - 0x01, 0x0a, 0x0f, 0x57, 0x47, 0x52, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x6f, - 0x6f, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, - 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x1a, - 0x0a, 0x08, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6f, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x6f, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x14, 0x0a, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xd7, 0x01, 0x0a, 0x15, 0x57, 0x47, 0x53, 0x65, 0x74, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x4c, 0x65, 0x76, 0x65, 0x6c, - 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, - 0x53, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x57, 0x42, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x07, 0x57, 0x42, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x57, 0x42, 0x43, 0x6f, - 0x69, 0x6e, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x57, - 0x42, 0x43, 0x6f, 0x69, 0x6e, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x52, 0x65, - 0x73, 0x65, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, - 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x22, 0x2a, 0x0a, 0x14, 0x47, 0x57, 0x41, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x65, 0x76, - 0x65, 0x57, 0x42, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x22, 0x7e, 0x0a, 0x10, - 0x47, 0x57, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x6f, 0x67, - 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, - 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, - 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x6e, 0x69, 0x64, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x53, 0x6e, 0x69, 0x64, 0x73, 0x12, 0x1c, - 0x0a, 0x09, 0x49, 0x73, 0x47, 0x61, 0x6d, 0x65, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x03, 0x28, - 0x08, 0x52, 0x09, 0x49, 0x73, 0x47, 0x61, 0x6d, 0x65, 0x69, 0x6e, 0x67, 0x22, 0x7a, 0x0a, 0x12, - 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x4c, 0x65, 0x61, - 0x76, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x18, - 0x0a, 0x07, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x54, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x07, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x54, 0x73, 0x22, 0xc0, 0x01, 0x0a, 0x0a, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x42, - 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x42, 0x65, 0x74, 0x12, 0x12, 0x0a, - 0x04, 0x47, 0x61, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x47, 0x61, 0x69, - 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x54, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, - 0x54, 0x61, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x43, - 0x6f, 0x69, 0x6e, 0x54, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x47, 0x61, 0x6d, - 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x54, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x57, 0x42, 0x47, 0x61, 0x69, - 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x57, 0x42, 0x47, 0x61, 0x69, 0x6e, 0x12, - 0x1a, 0x0a, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0x72, 0x0a, 0x0c, 0x47, - 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x28, 0x0a, 0x05, 0x44, - 0x61, 0x74, 0x61, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, - 0x44, 0x61, 0x74, 0x61, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, - 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, - 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x22, - 0xa8, 0x01, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x47, 0x61, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x04, 0x47, 0x61, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x54, 0x61, 0x78, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x03, 0x54, 0x61, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x4c, 0x6f, 0x74, 0x74, - 0x65, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x4c, 0x6f, 0x74, 0x74, 0x65, - 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x4b, 0x69, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x04, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x61, 0x72, 0x64, 0x18, 0x08, - 0x20, 0x03, 0x28, 0x05, 0x52, 0x04, 0x43, 0x61, 0x72, 0x64, 0x22, 0xc2, 0x01, 0x0a, 0x10, 0x47, - 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, - 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, - 0x40, 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, - 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x52, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x47, 0x61, 0x69, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x47, 0x61, 0x69, 0x6e, 0x12, - 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x52, 0x65, 0x63, - 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x52, 0x65, 0x63, 0x49, 0x64, 0x22, - 0x2e, 0x0a, 0x12, 0x57, 0x47, 0x50, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x6e, 0x47, 0x61, 0x6d, 0x65, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x44, 0x54, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x44, 0x54, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, - 0x5d, 0x0a, 0x0e, 0x47, 0x52, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x44, 0x61, 0x74, - 0x61, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x0a, 0x44, 0x42, 0x47, - 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, - 0x65, 0x65, 0x52, 0x0a, 0x44, 0x42, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x22, 0x4f, - 0x0a, 0x17, 0x57, 0x47, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x61, - 0x66, 0x65, 0x42, 0x6f, 0x78, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x20, 0x0a, - 0x0b, 0x53, 0x61, 0x66, 0x65, 0x42, 0x6f, 0x78, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0b, 0x53, 0x61, 0x66, 0x65, 0x42, 0x6f, 0x78, 0x43, 0x6f, 0x69, 0x6e, 0x22, - 0x94, 0x01, 0x0a, 0x0d, 0x57, 0x47, 0x43, 0x6c, 0x75, 0x62, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x12, 0x16, 0x0a, 0x06, 0x43, 0x6c, 0x75, 0x62, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x06, 0x43, 0x6c, 0x75, 0x62, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x63, 0x65, - 0x6e, 0x65, 0x49, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x53, 0x63, 0x65, - 0x6e, 0x65, 0x49, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x75, 0x6d, 0x70, 0x43, 0x6f, 0x69, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x50, 0x75, 0x6d, 0x70, 0x43, 0x6f, 0x69, - 0x6e, 0x12, 0x33, 0x0a, 0x0a, 0x44, 0x42, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, - 0x42, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x52, 0x0a, 0x44, 0x42, 0x47, 0x61, - 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x22, 0x88, 0x01, 0x0a, 0x14, 0x44, 0x57, 0x54, 0x68, 0x69, - 0x72, 0x64, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, - 0x10, 0x0a, 0x03, 0x54, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x54, 0x61, - 0x67, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x04, 0x53, 0x6e, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, - 0x6c, 0x65, 0x42, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x41, 0x76, 0x61, - 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x68, 0x69, - 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x54, 0x68, 0x69, 0x72, 0x64, 0x12, - 0x10, 0x0a, 0x03, 0x50, 0x6c, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6c, - 0x74, 0x22, 0x89, 0x03, 0x0a, 0x13, 0x44, 0x57, 0x54, 0x68, 0x69, 0x72, 0x64, 0x52, 0x6f, 0x75, - 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x54, 0x61, 0x67, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x54, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x53, - 0x6e, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x54, 0x68, 0x69, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x54, 0x68, 0x69, 0x72, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x49, 0x6e, 0x54, 0x68, 0x69, 0x72, 0x64, - 0x47, 0x61, 0x6d, 0x65, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x49, 0x6e, - 0x54, 0x68, 0x69, 0x72, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x49, - 0x6e, 0x54, 0x68, 0x69, 0x72, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x49, 0x6e, 0x54, 0x68, 0x69, 0x72, 0x64, 0x47, 0x61, 0x6d, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x4f, 0x6e, 0x65, 0x72, 0x6f, 0x75, 0x6e, - 0x64, 0x4d, 0x61, 0x78, 0x77, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x4f, - 0x6e, 0x65, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x4d, 0x61, 0x78, 0x77, 0x69, 0x6e, 0x12, 0x28, 0x0a, - 0x0f, 0x41, 0x63, 0x63, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x41, 0x63, 0x63, 0x52, 0x6f, 0x75, 0x6e, 0x64, - 0x73, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x50, 0x72, 0x6f, 0x66, 0x69, - 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x10, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x42, 0x65, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x42, 0x65, 0x74, 0x43, - 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x46, 0x6c, 0x6f, - 0x77, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x43, 0x0a, - 0x17, 0x57, 0x44, 0x41, 0x43, 0x4b, 0x54, 0x68, 0x69, 0x72, 0x64, 0x52, 0x65, 0x62, 0x61, 0x74, - 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x54, 0x61, 0x67, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x54, 0x61, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x22, 0x5c, 0x0a, 0x0e, 0x47, 0x57, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x4c, 0x6f, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x07, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x4c, 0x6f, 0x67, 0x43, - 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4c, 0x6f, 0x67, 0x43, 0x6e, 0x74, - 0x22, 0x85, 0x01, 0x0a, 0x0b, 0x47, 0x57, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x12, 0x0e, 0x0a, 0x02, 0x54, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x54, 0x73, - 0x12, 0x10, 0x0a, 0x03, 0x53, 0x65, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x53, - 0x65, 0x63, 0x12, 0x24, 0x0a, 0x0d, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, - 0x4e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x42, 0x61, 0x6e, 0x6b, 0x65, - 0x72, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x22, 0xce, 0x01, 0x0a, 0x0e, 0x47, 0x57, 0x47, - 0x61, 0x6d, 0x65, 0x4a, 0x61, 0x63, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x53, - 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, - 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x43, - 0x6f, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x4a, - 0x61, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4a, - 0x61, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, - 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, - 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x43, - 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x43, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x40, 0x0a, 0x0e, 0x47, 0x57, 0x47, - 0x61, 0x6d, 0x65, 0x4a, 0x61, 0x63, 0x6b, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x50, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x50, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x3a, 0x0a, 0x0e, 0x57, - 0x47, 0x4e, 0x69, 0x63, 0x65, 0x49, 0x64, 0x52, 0x65, 0x62, 0x69, 0x6e, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x55, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x55, 0x73, 0x65, - 0x72, 0x12, 0x14, 0x0a, 0x05, 0x4e, 0x65, 0x77, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x05, 0x4e, 0x65, 0x77, 0x49, 0x64, 0x22, 0x61, 0x0a, 0x11, 0x50, 0x4c, 0x41, 0x59, 0x45, - 0x52, 0x57, 0x49, 0x4e, 0x43, 0x4f, 0x49, 0x4e, 0x49, 0x4e, 0x46, 0x4f, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x52, 0x65, 0x63, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x52, 0x65, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x52, 0x65, 0x63, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, + 0x52, 0x65, 0x63, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x73, 0x42, 0x69, 0x6e, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x49, 0x73, 0x42, 0x69, 0x6e, 0x64, 0x12, + 0x12, 0x0a, 0x04, 0x43, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x43, + 0x69, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, + 0x14, 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x4c, 0x6f, 0x67, 0x49, 0x64, 0x22, 0x2e, 0x0a, 0x0c, 0x57, 0x52, 0x47, 0x61, 0x6d, 0x65, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x22, 0x40, 0x0a, 0x0c, 0x57, 0x52, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x22, 0x47, 0x0a, 0x0b, 0x57, 0x54, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x50, 0x61, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x69, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x69, 0x6e, + 0x22, 0x8f, 0x01, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x52, + 0x65, 0x63, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, + 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x48, 0x65, 0x61, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x48, 0x65, 0x61, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, + 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x10, + 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, + 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, + 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0b, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x22, 0xac, 0x01, 0x0a, 0x09, 0x47, 0x57, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x63, + 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x05, 0x44, 0x61, 0x74, 0x61, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x63, 0x52, 0x05, + 0x44, 0x61, 0x74, 0x61, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, + 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, + 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x64, + 0x65, 0x22, 0x76, 0x0a, 0x0c, 0x47, 0x57, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x43, 0x75, 0x72, + 0x72, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x43, 0x75, + 0x72, 0x72, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x1a, 0x0a, + 0x08, 0x4d, 0x61, 0x78, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x4d, 0x61, 0x78, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x22, 0x33, 0x0a, 0x09, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x43, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, + 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x3a, + 0x0a, 0x0a, 0x46, 0x69, 0x73, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x16, 0x0a, 0x06, + 0x46, 0x69, 0x73, 0x68, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x46, 0x69, + 0x73, 0x68, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x78, 0x0a, 0x0c, 0x47, 0x57, + 0x46, 0x69, 0x73, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, + 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, + 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, + 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x34, + 0x0a, 0x0b, 0x46, 0x69, 0x73, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x46, 0x69, 0x73, + 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0b, 0x46, 0x69, 0x73, 0x68, 0x52, 0x65, 0x63, + 0x6f, 0x72, 0x64, 0x73, 0x22, 0x5e, 0x0a, 0x0c, 0x47, 0x57, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, + 0x43, 0x75, 0x72, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x43, 0x75, 0x72, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x46, 0x69, + 0x73, 0x68, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x46, 0x69, 0x73, + 0x68, 0x69, 0x6e, 0x67, 0x22, 0xa7, 0x01, 0x0a, 0x0d, 0x57, 0x52, 0x49, 0x6e, 0x76, 0x69, 0x74, + 0x65, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x10, + 0x0a, 0x03, 0x43, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x43, 0x6e, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x73, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x49, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x12, 0x1c, 0x0a, 0x09, 0x4e, 0x65, 0x65, 0x64, 0x41, 0x77, 0x61, 0x69, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x09, 0x4e, 0x65, 0x65, 0x64, 0x41, 0x77, 0x61, 0x69, 0x74, 0x22, 0x40, + 0x0a, 0x12, 0x57, 0x52, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x43, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x03, 0x43, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, + 0x22, 0x80, 0x01, 0x0a, 0x14, 0x57, 0x47, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4b, 0x69, 0x63, 0x6b, + 0x4f, 0x75, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, + 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, + 0x64, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x53, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x53, 0x69, 0x64, 0x22, 0x40, 0x0a, 0x0e, 0x57, 0x44, 0x44, 0x61, 0x74, 0x61, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x34, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, + 0x61, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x22, 0x83, 0x01, 0x0a, 0x0d, + 0x47, 0x4e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x18, 0x0a, + 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, + 0x52, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x22, 0x0a, + 0x0c, 0x4e, 0x6f, 0x77, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0c, 0x4e, 0x6f, 0x77, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x4d, 0x6f, 0x64, + 0x65, 0x22, 0xa5, 0x01, 0x0a, 0x09, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x18, 0x0a, 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x6f, 0x74, + 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x54, 0x6f, 0x74, + 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x61, 0x79, + 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x43, 0x6f, 0x69, + 0x6e, 0x50, 0x61, 0x79, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x43, 0x6f, 0x69, + 0x6e, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x43, 0x6f, 0x69, 0x6e, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x22, 0x5c, 0x0a, 0x0d, 0x47, 0x4e, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, + 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, + 0x6e, 0x65, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x2e, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x22, 0x4a, 0x0a, 0x0e, 0x47, 0x57, 0x52, 0x65, 0x62, + 0x75, 0x69, 0x6c, 0x64, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x63, 0x65, + 0x6e, 0x65, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x53, 0x63, 0x65, + 0x6e, 0x65, 0x49, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, + 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x49, 0x64, 0x73, 0x22, 0x48, 0x0a, 0x12, 0x57, 0x47, 0x52, 0x65, 0x62, 0x69, 0x6e, 0x64, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x4f, 0x6c, 0x64, + 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4f, 0x6c, 0x64, 0x53, + 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x4e, 0x65, 0x77, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4e, 0x65, 0x77, 0x53, 0x6e, 0x49, 0x64, 0x22, 0x4e, 0x0a, + 0x0c, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x12, 0x0a, + 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, + 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x6c, 0x61, + 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x6c, 0x61, 0x67, 0x22, 0x51, 0x0a, + 0x0b, 0x57, 0x47, 0x48, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x64, 0x4f, 0x70, 0x12, 0x12, 0x0a, 0x04, + 0x73, 0x6e, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6e, 0x69, 0x64, + 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x22, 0xe7, 0x01, 0x0a, 0x0b, 0x47, 0x57, 0x4e, 0x65, 0x77, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, + 0x12, 0x0e, 0x0a, 0x02, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x63, 0x68, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, + 0x72, 0x69, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, 0x69, 0x6f, + 0x72, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x73, 0x72, 0x6f, 0x62, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x72, 0x6f, 0x62, 0x22, 0xa7, 0x02, 0x0a, 0x0d, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, - 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x44, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x44, - 0x12, 0x18, 0x0a, 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x44, 0x0a, 0x0f, 0x47, 0x57, - 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x57, 0x49, 0x4e, 0x43, 0x4f, 0x49, 0x4e, 0x12, 0x31, 0x0a, - 0x06, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x57, 0x49, 0x4e, - 0x43, 0x4f, 0x49, 0x4e, 0x49, 0x4e, 0x46, 0x4f, 0x52, 0x06, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x22, 0x3b, 0x0a, 0x13, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x75, 0x74, 0x6f, - 0x4d, 0x61, 0x72, 0x6b, 0x54, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x54, - 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x54, 0x61, 0x67, 0x22, 0x74, 0x0a, - 0x1e, 0x57, 0x47, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x6f, 0x62, 0x45, 0x6e, 0x74, 0x65, - 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, + 0x12, 0x1c, 0x0a, 0x09, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x09, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x18, + 0x0a, 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x6f, 0x74, 0x61, + 0x6c, 0x4f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x54, 0x6f, 0x74, 0x61, + 0x6c, 0x4f, 0x75, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x49, 0x73, 0x46, 0x6f, 0x6f, 0x6c, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x49, 0x73, 0x46, 0x6f, + 0x6f, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x4c, 0x6f, 0x73, 0x65, + 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0d, 0x4c, 0x6f, 0x73, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x22, + 0x0a, 0x0c, 0x57, 0x69, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x57, 0x69, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x79, 0x73, 0x49, 0x6e, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x79, 0x73, + 0x49, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x79, 0x73, 0x4f, 0x75, + 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x79, + 0x73, 0x4f, 0x75, 0x74, 0x22, 0x94, 0x01, 0x0a, 0x0f, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, + 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, + 0x12, 0x2b, 0x0a, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x69, 0x63, 0x73, 0x52, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73, 0x12, 0x16, 0x0a, + 0x06, 0x43, 0x6c, 0x75, 0x62, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x43, + 0x6c, 0x75, 0x62, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x50, 0x75, 0x6d, 0x70, 0x54, 0x6f, 0x74, + 0x61, 0x6c, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x50, 0x75, + 0x6d, 0x70, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0xb5, 0x01, 0x0a, 0x0f, + 0x57, 0x47, 0x52, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, - 0x6f, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x62, - 0x4e, 0x75, 0x6d, 0x22, 0x2c, 0x0a, 0x10, 0x57, 0x47, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x6f, 0x72, - 0x63, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, - 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, - 0x64, 0x22, 0xc8, 0x01, 0x0a, 0x14, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x66, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, - 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, - 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x41, 0x75, - 0x74, 0x6f, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0f, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, - 0x52, 0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x43, 0x6f, - 0x72, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x11, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, - 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x55, 0x73, 0x65, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x55, 0x73, 0x65, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, - 0x12, 0x1a, 0x0a, 0x08, 0x44, 0x6f, 0x77, 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x08, 0x44, 0x6f, 0x77, 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x22, 0x6e, 0x0a, 0x18, - 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x43, 0x66, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x36, 0x0a, 0x07, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x66, 0x67, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, - 0x72, 0x6f, 0x66, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x47, 0x61, 0x6d, 0x65, - 0x43, 0x66, 0x67, 0x52, 0x07, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x66, 0x67, 0x22, 0x4c, 0x0a, 0x16, - 0x57, 0x47, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x43, - 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x32, 0x0a, 0x03, 0x43, 0x66, 0x67, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x43, 0x66, 0x67, 0x52, 0x03, 0x43, 0x66, 0x67, 0x22, 0x2e, 0x0a, 0x12, 0x47, 0x57, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x22, 0x40, 0x0a, 0x0c, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x49, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x22, 0x40, 0x0a, 0x0c, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x18, 0x0a, 0x07, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x72, 0x56, 0x61, 0x6c, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x74, 0x72, 0x56, 0x61, 0x6c, 0x22, 0x3e, - 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x16, - 0x0a, 0x06, 0x53, 0x74, 0x72, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x53, 0x74, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x72, 0x56, 0x61, 0x6c, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x74, 0x72, 0x56, 0x61, 0x6c, 0x22, 0x39, - 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x69, - 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x94, 0x01, 0x0a, 0x13, 0x47, 0x57, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x69, 0x6c, 0x6c, 0x65, - 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x69, 0x6e, 0x52, - 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x57, 0x69, 0x6e, 0x50, - 0x6f, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x57, 0x69, 0x6e, 0x50, 0x6f, 0x73, - 0x22, 0xd5, 0x01, 0x0a, 0x12, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x47, 0x72, 0x61, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, - 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, - 0x64, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x4e, - 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, - 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x70, 0x65, - 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x53, 0x70, - 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x47, 0x61, 0x6d, 0x65, 0x4c, - 0x6f, 0x67, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x47, 0x61, 0x6d, 0x65, - 0x4c, 0x6f, 0x67, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x69, 0x6e, 0x52, - 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0x5b, 0x0a, 0x11, 0x57, 0x47, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x51, 0x75, 0x69, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x12, 0x0a, + 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6f, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x6f, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, + 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x22, 0xd7, 0x01, 0x0a, 0x15, 0x57, 0x47, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x49, 0x64, 0x22, 0xa0, 0x01, 0x0a, 0x16, 0x57, 0x47, 0x53, 0x63, 0x65, 0x6e, - 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x61, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x05, 0x52, 0x08, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, - 0x42, 0x61, 0x73, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x42, 0x61, 0x73, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x75, - 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4f, 0x75, - 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x52, 0x65, 0x73, 0x74, 0x4e, 0x75, - 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x52, 0x65, 0x73, 0x74, 0x4e, 0x75, 0x6d, - 0x12, 0x16, 0x0a, 0x06, 0x4e, 0x65, 0x78, 0x74, 0x54, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x4e, 0x65, 0x78, 0x74, 0x54, 0x73, 0x22, 0x72, 0x0a, 0x12, 0x53, 0x53, 0x52, 0x65, - 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x54, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x12, - 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, - 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, - 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x96, 0x01, 0x0a, - 0x10, 0x57, 0x47, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, - 0x62, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, - 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x62, 0x4e, 0x75, - 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x62, 0x4e, 0x75, 0x6d, 0x12, - 0x1c, 0x0a, 0x09, 0x4e, 0x65, 0x65, 0x64, 0x41, 0x77, 0x61, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x09, 0x4e, 0x65, 0x65, 0x64, 0x41, 0x77, 0x61, 0x69, 0x74, 0x12, 0x16, 0x0a, - 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, - 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x22, 0x5e, 0x0a, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, - 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, - 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x47, 0x61, 0x6d, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x47, 0x61, 0x6d, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x7d, 0x0a, 0x0d, 0x57, 0x47, 0x47, 0x61, 0x6d, 0x65, 0x4a, - 0x61, 0x63, 0x6b, 0x70, 0x6f, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x47, 0x61, 0x74, 0x65, - 0x53, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, - 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x24, - 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, - 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xfb, 0x01, 0x0a, 0x11, 0x42, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x70, - 0x69, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x70, 0x69, 0x6e, - 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x42, 0x61, 0x73, 0x65, 0x42, 0x65, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x42, 0x61, 0x73, 0x65, 0x42, 0x65, 0x74, 0x12, 0x1e, - 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x63, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0a, 0x50, 0x72, 0x69, 0x63, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x49, 0x73, - 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0d, 0x49, 0x73, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x08, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, - 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, - 0x64, 0x73, 0x22, 0xb9, 0x02, 0x0a, 0x15, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, - 0x6e, 0x74, 0x65, 0x72, 0x4d, 0x69, 0x6e, 0x69, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, - 0x53, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, + 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x57, + 0x42, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x57, 0x42, + 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x57, 0x42, 0x43, 0x6f, 0x69, 0x6e, 0x4c, + 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x57, 0x42, 0x43, 0x6f, + 0x69, 0x6e, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x52, 0x65, 0x73, 0x65, 0x74, + 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x69, 0x6e, 0x12, + 0x16, 0x0a, 0x06, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x06, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0x2a, 0x0a, + 0x14, 0x47, 0x57, 0x41, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x65, 0x76, 0x65, 0x57, 0x42, + 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x22, 0x7e, 0x0a, 0x10, 0x47, 0x57, 0x53, + 0x63, 0x65, 0x6e, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x12, 0x16, 0x0a, + 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x47, + 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, + 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, + 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x6e, 0x69, 0x64, 0x73, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x53, 0x6e, 0x69, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x49, + 0x73, 0x47, 0x61, 0x6d, 0x65, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x03, 0x28, 0x08, 0x52, 0x09, + 0x49, 0x73, 0x47, 0x61, 0x6d, 0x65, 0x69, 0x6e, 0x67, 0x22, 0x7a, 0x0a, 0x12, 0x47, 0x57, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x45, + 0x6e, 0x74, 0x65, 0x72, 0x54, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x45, 0x6e, + 0x74, 0x65, 0x72, 0x54, 0x73, 0x22, 0xc0, 0x01, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x44, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x42, 0x65, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x42, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x47, 0x61, + 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x47, 0x61, 0x69, 0x6e, 0x12, 0x10, + 0x0a, 0x03, 0x54, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x54, 0x61, 0x78, + 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, + 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x69, 0x6e, + 0x54, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, + 0x69, 0x6e, 0x54, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x57, 0x42, 0x47, 0x61, 0x69, 0x6e, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x57, 0x42, 0x47, 0x61, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, + 0x57, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x57, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0x72, 0x0a, 0x0c, 0x47, 0x57, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x28, 0x0a, 0x05, 0x44, 0x61, 0x74, 0x61, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x44, 0x61, 0x74, + 0x61, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, + 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x22, 0xa8, 0x01, 0x0a, + 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, + 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x47, 0x61, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x47, + 0x61, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x54, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x03, 0x54, 0x61, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x4c, 0x6f, 0x74, 0x74, 0x65, 0x72, 0x79, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x4c, 0x6f, 0x74, 0x74, 0x65, 0x72, 0x79, 0x12, + 0x12, 0x0a, 0x04, 0x4b, 0x69, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x4b, + 0x69, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x61, 0x72, 0x64, 0x18, 0x08, 0x20, 0x03, 0x28, + 0x05, 0x52, 0x04, 0x43, 0x61, 0x72, 0x64, 0x22, 0xc2, 0x01, 0x0a, 0x10, 0x47, 0x57, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x0f, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x0f, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x1c, + 0x0a, 0x09, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x47, 0x61, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x09, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x47, 0x61, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, - 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x44, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, - 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, - 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x49, 0x73, 0x51, 0x4d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x04, 0x49, 0x73, 0x51, 0x4d, 0x12, 0x28, 0x0a, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, - 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, - 0x12, 0x28, 0x0a, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, - 0x74, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x53, 0x69, - 0x6e, 0x67, 0x6c, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x0c, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x22, 0x71, - 0x0a, 0x15, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x4d, - 0x69, 0x6e, 0x69, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x47, 0x61, 0x74, - 0x65, 0x53, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x47, 0x61, 0x74, 0x65, - 0x53, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, - 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, - 0x64, 0x22, 0x23, 0x0a, 0x0d, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, - 0x76, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x22, 0x9d, 0x01, 0x0a, 0x15, 0x47, 0x57, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x4d, 0x69, 0x6e, 0x69, 0x47, 0x61, 0x6d, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, - 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, - 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, - 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x16, - 0x0a, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, - 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x44, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x22, 0x2e, 0x0a, 0x12, 0x47, 0x57, 0x44, 0x65, 0x73, 0x74, - 0x72, 0x6f, 0x79, 0x4d, 0x69, 0x6e, 0x69, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, - 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x22, 0x2a, 0x0a, 0x0e, 0x47, 0x52, 0x44, 0x65, 0x73, 0x74, - 0x72, 0x6f, 0x79, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, - 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, - 0x49, 0x64, 0x22, 0x24, 0x0a, 0x10, 0x52, 0x57, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x41, 0x63, 0x63, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x41, 0x63, 0x63, 0x22, 0x40, 0x0a, 0x0c, 0x57, 0x47, 0x44, 0x54, - 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x44, 0x61, 0x74, 0x61, - 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, - 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x22, 0xc6, 0x01, 0x0a, 0x0c, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x54, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x4e, - 0x69, 0x63, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4e, - 0x69, 0x63, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x44, - 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x44, 0x43, 0x6f, 0x69, - 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x05, 0x54, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x4e, 0x43, 0x6f, 0x69, 0x6e, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4e, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, - 0x05, 0x54, 0x6f, 0x74, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x54, 0x6f, - 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x44, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x44, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x54, - 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x54, 0x44, 0x43, - 0x6f, 0x69, 0x6e, 0x22, 0x37, 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x49, - 0x6e, 0x64, 0x65, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x9b, 0x03, 0x0a, - 0x0c, 0x47, 0x57, 0x44, 0x54, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, - 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, - 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x54, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x4e, - 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4e, 0x43, 0x6f, 0x69, - 0x6e, 0x12, 0x2e, 0x0a, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x44, 0x54, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x73, 0x12, 0x18, 0x0a, 0x07, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x4c, - 0x65, 0x66, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, - 0x4c, 0x65, 0x66, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x43, 0x6f, 0x69, - 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x43, 0x6f, 0x69, - 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, - 0x6d, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, - 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x4c, 0x6f, 0x6f, 0x70, 0x4e, 0x75, 0x6d, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4c, 0x6f, 0x6f, 0x70, 0x4e, 0x75, 0x6d, 0x12, - 0x29, 0x0a, 0x07, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x52, 0x07, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x44, 0x44, - 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x44, 0x44, 0x43, 0x6f, - 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x54, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x0e, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x54, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x75, 0x0a, 0x0d, 0x57, 0x47, - 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x52, - 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, - 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x57, 0x65, 0x62, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x57, 0x65, 0x62, 0x75, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, - 0x07, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, - 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, - 0x79, 0x22, 0x4f, 0x0a, 0x0d, 0x47, 0x57, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, - 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, - 0x73, 0x67, 0x22, 0x63, 0x0a, 0x11, 0x47, 0x57, 0x41, 0x64, 0x64, 0x53, 0x69, 0x6e, 0x67, 0x6c, - 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, - 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, - 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x22, 0x72, 0x0a, 0x0e, 0x57, 0x47, 0x53, 0x69, 0x6e, - 0x67, 0x6c, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, + 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x52, 0x65, 0x63, 0x49, 0x64, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x52, 0x65, 0x63, 0x49, 0x64, 0x22, 0x2e, 0x0a, 0x12, + 0x57, 0x47, 0x50, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x44, 0x54, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x05, 0x52, 0x07, 0x44, 0x54, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x5d, 0x0a, 0x0e, + 0x47, 0x52, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x16, + 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, + 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x0a, 0x44, 0x42, 0x47, 0x61, 0x6d, 0x65, + 0x46, 0x72, 0x65, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x52, + 0x0a, 0x44, 0x42, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x22, 0x4f, 0x0a, 0x17, 0x57, + 0x47, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x61, 0x66, 0x65, 0x42, + 0x6f, 0x78, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x53, 0x61, + 0x66, 0x65, 0x42, 0x6f, 0x78, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0b, 0x53, 0x61, 0x66, 0x65, 0x42, 0x6f, 0x78, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x94, 0x01, 0x0a, + 0x0d, 0x57, 0x47, 0x43, 0x6c, 0x75, 0x62, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x43, 0x6c, 0x75, 0x62, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, + 0x43, 0x6c, 0x75, 0x62, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, + 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, + 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x75, 0x6d, 0x70, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x50, 0x75, 0x6d, 0x70, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x33, + 0x0a, 0x0a, 0x44, 0x42, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x47, + 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x52, 0x0a, 0x44, 0x42, 0x47, 0x61, 0x6d, 0x65, 0x46, + 0x72, 0x65, 0x65, 0x22, 0x88, 0x01, 0x0a, 0x14, 0x44, 0x57, 0x54, 0x68, 0x69, 0x72, 0x64, 0x52, + 0x65, 0x62, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, + 0x54, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x54, 0x61, 0x67, 0x12, 0x12, + 0x0a, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, + 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x42, + 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, + 0x62, 0x6c, 0x65, 0x42, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x68, 0x69, 0x72, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x54, 0x68, 0x69, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, + 0x50, 0x6c, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6c, 0x74, 0x22, 0x89, + 0x03, 0x0a, 0x13, 0x44, 0x57, 0x54, 0x68, 0x69, 0x72, 0x64, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x54, 0x61, 0x67, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x03, 0x54, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, + 0x54, 0x68, 0x69, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x54, 0x68, 0x69, + 0x72, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x49, 0x6e, 0x54, 0x68, 0x69, 0x72, 0x64, 0x47, 0x61, 0x6d, + 0x65, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x49, 0x6e, 0x54, 0x68, 0x69, + 0x72, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x49, 0x6e, 0x54, 0x68, + 0x69, 0x72, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0f, 0x49, 0x6e, 0x54, 0x68, 0x69, 0x72, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x4f, 0x6e, 0x65, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x4d, 0x61, + 0x78, 0x77, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x4f, 0x6e, 0x65, 0x72, + 0x6f, 0x75, 0x6e, 0x64, 0x4d, 0x61, 0x78, 0x77, 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x41, 0x63, + 0x63, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0f, 0x41, 0x63, 0x63, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x49, 0x6e, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x43, 0x6f, + 0x69, 0x6e, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, + 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x24, 0x0a, 0x0d, 0x42, 0x65, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x54, 0x69, 0x6d, + 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x42, 0x65, 0x74, 0x43, 0x6f, 0x69, 0x6e, + 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, + 0x69, 0x6e, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, + 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x43, 0x0a, 0x17, 0x57, 0x44, + 0x41, 0x43, 0x4b, 0x54, 0x68, 0x69, 0x72, 0x64, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x54, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x03, 0x54, 0x61, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, + 0x5c, 0x0a, 0x0e, 0x47, 0x57, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x4c, 0x6f, + 0x67, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x47, + 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x47, 0x61, + 0x6d, 0x65, 0x4c, 0x6f, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x4c, 0x6f, 0x67, 0x43, 0x6e, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4c, 0x6f, 0x67, 0x43, 0x6e, 0x74, 0x22, 0x85, 0x01, + 0x0a, 0x0b, 0x47, 0x57, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0e, 0x0a, + 0x02, 0x54, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x54, 0x73, 0x12, 0x10, 0x0a, + 0x03, 0x53, 0x65, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x53, 0x65, 0x63, 0x12, + 0x24, 0x0a, 0x0d, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x4c, 0x69, + 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x22, 0xce, 0x01, 0x0a, 0x0e, 0x47, 0x57, 0x47, 0x61, 0x6d, 0x65, + 0x4a, 0x61, 0x63, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, + 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x4a, 0x61, 0x63, 0x6b, + 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4a, 0x61, 0x63, 0x6b, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x43, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x43, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x40, 0x0a, 0x0e, 0x47, 0x57, 0x47, 0x61, 0x6d, 0x65, + 0x4a, 0x61, 0x63, 0x6b, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x3a, 0x0a, 0x0e, 0x57, 0x47, 0x4e, 0x69, + 0x63, 0x65, 0x49, 0x64, 0x52, 0x65, 0x62, 0x69, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x73, + 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x14, + 0x0a, 0x05, 0x4e, 0x65, 0x77, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4e, + 0x65, 0x77, 0x49, 0x64, 0x22, 0x61, 0x0a, 0x11, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x57, 0x49, + 0x4e, 0x43, 0x4f, 0x49, 0x4e, 0x49, 0x4e, 0x46, 0x4f, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x1e, 0x0a, + 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x44, 0x12, 0x18, 0x0a, + 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x44, 0x0a, 0x0f, 0x47, 0x57, 0x50, 0x4c, 0x41, + 0x59, 0x45, 0x52, 0x57, 0x49, 0x4e, 0x43, 0x4f, 0x49, 0x4e, 0x12, 0x31, 0x0a, 0x06, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x2e, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x57, 0x49, 0x4e, 0x43, 0x4f, 0x49, + 0x4e, 0x49, 0x4e, 0x46, 0x4f, 0x52, 0x06, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x22, 0x3b, 0x0a, + 0x13, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x75, 0x74, 0x6f, 0x4d, 0x61, 0x72, + 0x6b, 0x54, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x54, 0x61, 0x67, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x54, 0x61, 0x67, 0x22, 0x74, 0x0a, 0x1e, 0x57, 0x47, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x6f, 0x62, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x43, 0x6f, + 0x69, 0x6e, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, + 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, + 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x62, 0x4e, + 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x62, 0x4e, 0x75, 0x6d, + 0x22, 0x2c, 0x0a, 0x10, 0x57, 0x47, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x53, + 0x74, 0x61, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x22, 0xc8, + 0x01, 0x0a, 0x14, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x47, 0x61, 0x6d, 0x65, 0x43, 0x66, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, + 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, + 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x41, 0x75, 0x74, 0x6f, 0x43, + 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0f, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, + 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x43, 0x6f, 0x72, 0x72, 0x65, + 0x63, 0x74, 0x52, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x4d, 0x61, + 0x6e, 0x75, 0x61, 0x6c, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x65, 0x12, + 0x1c, 0x0a, 0x09, 0x55, 0x73, 0x65, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x09, 0x55, 0x73, 0x65, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x12, 0x1a, 0x0a, + 0x08, 0x44, 0x6f, 0x77, 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x08, 0x44, 0x6f, 0x77, 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x22, 0x6e, 0x0a, 0x18, 0x50, 0x72, 0x6f, + 0x66, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x43, 0x66, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x12, 0x36, 0x0a, 0x07, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x66, 0x67, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x66, + 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x66, 0x67, + 0x52, 0x07, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x66, 0x67, 0x22, 0x4c, 0x0a, 0x16, 0x57, 0x47, 0x50, + 0x72, 0x6f, 0x66, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x43, 0x6f, 0x72, 0x72, + 0x65, 0x63, 0x74, 0x12, 0x32, 0x0a, 0x03, 0x43, 0x66, 0x67, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x20, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x43, + 0x66, 0x67, 0x52, 0x03, 0x43, 0x66, 0x67, 0x22, 0x2e, 0x0a, 0x12, 0x47, 0x57, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, + 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x22, 0x40, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x49, + 0x64, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x06, 0x49, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x22, 0x40, 0x0a, 0x0c, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x53, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x72, 0x56, 0x61, 0x6c, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x74, 0x72, 0x56, 0x61, 0x6c, 0x22, 0x3e, 0x0a, 0x0c, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x53, + 0x74, 0x72, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x74, 0x72, + 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x72, 0x56, 0x61, 0x6c, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x74, 0x72, 0x56, 0x61, 0x6c, 0x22, 0x39, 0x0a, 0x0f, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x12, + 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, + 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x94, 0x01, 0x0a, 0x13, 0x47, 0x57, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x18, + 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x49, 0x64, 0x12, 0x31, 0x0a, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x07, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x57, 0x69, 0x6e, 0x50, 0x6f, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x57, 0x69, 0x6e, 0x50, 0x6f, 0x73, 0x22, 0xd5, 0x01, + 0x0a, 0x12, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, + 0x72, 0x61, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x18, + 0x0a, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x4e, 0x75, 0x6d, 0x4f, + 0x66, 0x47, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x4e, 0x75, 0x6d, + 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x54, + 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x53, 0x70, 0x65, 0x6e, 0x64, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x67, 0x49, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x67, + 0x49, 0x64, 0x12, 0x31, 0x0a, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x07, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0x5b, 0x0a, 0x11, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x51, 0x75, 0x69, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, + 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x18, + 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x49, 0x64, 0x22, 0xa0, 0x01, 0x0a, 0x16, 0x57, 0x47, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x42, 0x61, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, + 0x08, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x42, 0x61, 0x73, + 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x42, 0x61, + 0x73, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x75, 0x74, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4f, 0x75, 0x74, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x52, 0x65, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x52, 0x65, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x12, 0x16, 0x0a, + 0x06, 0x4e, 0x65, 0x78, 0x74, 0x54, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4e, + 0x65, 0x78, 0x74, 0x54, 0x73, 0x22, 0x72, 0x0a, 0x12, 0x53, 0x53, 0x52, 0x65, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x54, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x53, + 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x96, 0x01, 0x0a, 0x10, 0x57, 0x47, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x6f, 0x62, 0x12, 0x1a, + 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, + 0x4e, 0x65, 0x65, 0x64, 0x41, 0x77, 0x61, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x09, 0x4e, 0x65, 0x65, 0x64, 0x41, 0x77, 0x61, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, + 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, + 0x49, 0x64, 0x22, 0x5e, 0x0a, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, + 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, + 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, + 0x65, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, + 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x7d, 0x0a, 0x0d, 0x57, 0x47, 0x47, 0x61, 0x6d, 0x65, 0x4a, 0x61, 0x63, 0x6b, + 0x70, 0x6f, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, 0x12, + 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x24, 0x0a, 0x04, 0x49, + 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x2e, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, + 0x6f, 0x22, 0xfb, 0x01, 0x0a, 0x11, 0x42, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x48, 0x69, 0x73, 0x74, + 0x6f, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x70, 0x69, 0x6e, 0x49, + 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x70, 0x69, 0x6e, 0x49, 0x44, 0x12, + 0x20, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x42, 0x61, 0x73, 0x65, 0x42, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x07, 0x42, 0x61, 0x73, 0x65, 0x42, 0x65, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x50, + 0x72, 0x69, 0x63, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x50, 0x72, 0x69, 0x63, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x49, 0x73, 0x56, 0x69, 0x72, + 0x74, 0x75, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, + 0x49, 0x73, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, + 0x08, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x08, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, + 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x22, + 0xb9, 0x02, 0x0a, 0x15, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, + 0x72, 0x4d, 0x69, 0x6e, 0x69, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x47, + 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x47, 0x61, + 0x74, 0x65, 0x53, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, + 0x6e, 0x65, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, + 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, + 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, + 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, + 0x12, 0x0a, 0x04, 0x49, 0x73, 0x51, 0x4d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x49, + 0x73, 0x51, 0x4d, 0x12, 0x28, 0x0a, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x4c, 0x65, 0x61, + 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x45, 0x78, + 0x70, 0x65, 0x63, 0x74, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x28, 0x0a, + 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x47, 0x61, + 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x53, 0x69, 0x6e, 0x67, 0x6c, + 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x53, + 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x22, 0x71, 0x0a, 0x15, 0x57, + 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x4d, 0x69, 0x6e, 0x69, + 0x47, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x03, 0x53, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x47, 0x61, 0x74, 0x65, 0x53, 0x69, 0x64, + 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, + 0x53, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x22, 0x23, + 0x0a, 0x0d, 0x57, 0x47, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, + 0x6e, 0x49, 0x64, 0x22, 0x9d, 0x01, 0x0a, 0x15, 0x47, 0x57, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x4c, 0x65, 0x61, 0x76, 0x65, 0x4d, 0x69, 0x6e, 0x69, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, + 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, + 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, + 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, + 0x61, 0x74, 0x61, 0x22, 0x2e, 0x0a, 0x12, 0x47, 0x57, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, + 0x4d, 0x69, 0x6e, 0x69, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, - 0x65, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x12, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, - 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x22, 0xaf, 0x01, 0x0a, 0x09, - 0x57, 0x62, 0x43, 0x74, 0x72, 0x6c, 0x43, 0x66, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x65, 0x61, 0x6c, 0x43, 0x74, 0x72, - 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x52, 0x65, 0x61, 0x6c, 0x43, 0x74, 0x72, - 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x4e, 0x6f, 0x76, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x06, 0x4e, 0x6f, 0x76, 0x69, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x57, 0x65, 0x6c, - 0x66, 0x61, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x57, 0x65, 0x6c, 0x66, - 0x61, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x4b, 0x69, 0x6c, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x4b, 0x69, 0x6c, 0x6c, 0x50, 0x6f, 0x69, - 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x73, 0x18, 0x06, - 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x73, 0x2a, 0xaa, 0x16, - 0x0a, 0x0a, 0x53, 0x53, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x12, - 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x5a, 0x45, - 0x52, 0x4f, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, - 0x42, 0x5f, 0x43, 0x55, 0x52, 0x5f, 0x4c, 0x4f, 0x41, 0x44, 0x10, 0xe8, 0x07, 0x12, 0x1b, 0x0a, - 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x42, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, - 0x5f, 0x53, 0x57, 0x49, 0x54, 0x43, 0x48, 0x10, 0xe9, 0x07, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, - 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x47, 0x41, 0x54, 0x45, 0x49, 0x4e, 0x46, 0x4f, - 0x10, 0xea, 0x07, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x53, - 0x5f, 0x44, 0x49, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0xec, 0x07, 0x12, 0x16, 0x0a, - 0x11, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x4d, 0x53, 0x5f, 0x53, 0x52, 0x56, 0x43, 0x54, - 0x52, 0x4c, 0x10, 0xed, 0x07, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, - 0x57, 0x47, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, - 0xf4, 0x07, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x47, 0x5f, - 0x42, 0x49, 0x4e, 0x44, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x54, 0x41, 0x47, 0x10, 0xf5, 0x07, 0x12, - 0x22, 0x0a, 0x1d, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x53, 0x5f, 0x43, 0x55, 0x53, - 0x54, 0x4f, 0x4d, 0x54, 0x41, 0x47, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x43, 0x41, 0x53, 0x54, - 0x10, 0xf6, 0x07, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, - 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0xcd, 0x08, 0x12, - 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x44, 0x45, 0x53, - 0x54, 0x52, 0x4f, 0x59, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0xce, 0x08, 0x12, 0x1a, 0x0a, 0x15, + 0x65, 0x49, 0x64, 0x22, 0x2a, 0x0a, 0x0e, 0x47, 0x52, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, + 0x53, 0x63, 0x65, 0x6e, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, 0x22, + 0x24, 0x0a, 0x10, 0x52, 0x57, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x41, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x41, 0x63, 0x63, 0x22, 0x40, 0x0a, 0x0c, 0x57, 0x47, 0x44, 0x54, 0x52, 0x6f, 0x6f, + 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x12, + 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x22, 0xc6, 0x01, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x44, 0x54, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x69, 0x63, 0x6b, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4e, 0x69, 0x63, 0x6b, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x44, 0x43, 0x6f, 0x69, + 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, + 0x0a, 0x05, 0x54, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x54, + 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x4e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x4e, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x6f, + 0x74, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x54, 0x6f, 0x74, 0x6c, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x44, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x06, 0x44, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x54, 0x44, 0x43, 0x6f, + 0x69, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x54, 0x44, 0x43, 0x6f, 0x69, 0x6e, + 0x22, 0x37, 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x49, + 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x9b, 0x03, 0x0a, 0x0c, 0x47, 0x57, + 0x44, 0x54, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x44, 0x61, + 0x74, 0x61, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x44, 0x61, 0x74, + 0x61, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, + 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x44, 0x43, 0x6f, + 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x54, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x4e, 0x43, 0x6f, 0x69, + 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4e, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x2e, + 0x0a, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x14, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, + 0x54, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x18, + 0x0a, 0x07, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x4c, 0x65, 0x66, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x4c, 0x65, 0x66, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x6f, + 0x6f, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x6f, + 0x6f, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, + 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x4c, 0x6f, 0x6f, 0x70, 0x4e, 0x75, 0x6d, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x07, 0x4c, 0x6f, 0x6f, 0x70, 0x4e, 0x75, 0x6d, 0x12, 0x29, 0x0a, 0x07, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x44, 0x44, 0x43, 0x6f, 0x69, + 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x44, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x12, + 0x16, 0x0a, 0x06, 0x54, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x06, 0x54, 0x44, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x75, 0x0a, 0x0d, 0x57, 0x47, 0x52, 0x6f, 0x6f, + 0x6d, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, + 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, + 0x12, 0x18, 0x0a, 0x07, 0x57, 0x65, 0x62, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x57, 0x65, 0x62, 0x75, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x22, 0x4f, + 0x0a, 0x0d, 0x47, 0x57, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, + 0x18, 0x0a, 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x64, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, + 0x03, 0x4d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, + 0x63, 0x0a, 0x11, 0x47, 0x57, 0x41, 0x64, 0x64, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x41, 0x64, + 0x6a, 0x75, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, + 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, + 0x65, 0x65, 0x49, 0x64, 0x22, 0x72, 0x0a, 0x0e, 0x57, 0x47, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, + 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x49, 0x64, + 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x06, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x12, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x69, 0x6e, 0x67, + 0x6c, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x22, 0xaf, 0x01, 0x0a, 0x09, 0x57, 0x62, 0x43, + 0x74, 0x72, 0x6c, 0x43, 0x66, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x65, 0x61, 0x6c, 0x43, 0x74, 0x72, 0x6c, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x52, 0x65, 0x61, 0x6c, 0x43, 0x74, 0x72, 0x6c, 0x12, 0x16, + 0x0a, 0x06, 0x4e, 0x6f, 0x76, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, + 0x4e, 0x6f, 0x76, 0x69, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x57, 0x65, 0x6c, 0x66, 0x61, 0x72, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x57, 0x65, 0x6c, 0x66, 0x61, 0x72, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x4b, 0x69, 0x6c, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x4b, 0x69, 0x6c, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, + 0x12, 0x18, 0x0a, 0x07, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, + 0x05, 0x52, 0x07, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x73, 0x2a, 0xaa, 0x16, 0x0a, 0x0a, 0x53, + 0x53, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x10, + 0x00, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x42, 0x5f, 0x43, + 0x55, 0x52, 0x5f, 0x4c, 0x4f, 0x41, 0x44, 0x10, 0xe8, 0x07, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x42, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x57, + 0x49, 0x54, 0x43, 0x48, 0x10, 0xe9, 0x07, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, + 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x47, 0x41, 0x54, 0x45, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xea, 0x07, + 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x53, 0x5f, 0x44, 0x49, + 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0xec, 0x07, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x4d, 0x53, 0x5f, 0x53, 0x52, 0x56, 0x43, 0x54, 0x52, 0x4c, 0x10, + 0xed, 0x07, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, + 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, 0xf4, 0x07, 0x12, + 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x47, 0x5f, 0x42, 0x49, 0x4e, + 0x44, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x54, 0x41, 0x47, 0x10, 0xf5, 0x07, 0x12, 0x22, 0x0a, 0x1d, + 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x53, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, + 0x54, 0x41, 0x47, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x43, 0x41, 0x53, 0x54, 0x10, 0xf6, 0x07, + 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x43, 0x52, + 0x45, 0x41, 0x54, 0x45, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0xcd, 0x08, 0x12, 0x1b, 0x0a, 0x16, + 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, + 0x59, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0xce, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x45, 0x4e, 0x54, + 0x45, 0x52, 0x10, 0xcf, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, + 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x10, 0xd0, + 0x08, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x42, + 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x52, 0x4f, 0x4f, 0x4d, 0x43, 0x41, 0x52, 0x44, 0x10, 0xd1, 0x08, + 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x44, 0x45, + 0x53, 0x54, 0x52, 0x4f, 0x59, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0xd2, 0x08, 0x12, 0x1d, 0x0a, + 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, + 0x52, 0x44, 0x52, 0x4f, 0x50, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0xd3, 0x08, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, - 0x45, 0x4e, 0x54, 0x45, 0x52, 0x10, 0xcf, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, - 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4c, 0x45, 0x41, 0x56, - 0x45, 0x10, 0xd0, 0x08, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, - 0x57, 0x5f, 0x42, 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x52, 0x4f, 0x4f, 0x4d, 0x43, 0x41, 0x52, 0x44, - 0x10, 0xd1, 0x08, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, - 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0xd2, 0x08, - 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x4c, - 0x41, 0x59, 0x45, 0x52, 0x44, 0x52, 0x4f, 0x50, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0xd3, 0x08, 0x12, + 0x52, 0x45, 0x48, 0x4f, 0x4c, 0x44, 0x10, 0xd4, 0x08, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x53, 0x45, 0x53, + 0x53, 0x49, 0x4f, 0x4e, 0x42, 0x49, 0x4e, 0x44, 0x10, 0xd5, 0x08, 0x12, 0x22, 0x0a, 0x1d, 0x50, + 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x53, + 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x55, 0x4e, 0x42, 0x49, 0x4e, 0x44, 0x10, 0xd6, 0x08, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x4c, 0x41, - 0x59, 0x45, 0x52, 0x52, 0x45, 0x48, 0x4f, 0x4c, 0x44, 0x10, 0xd4, 0x08, 0x12, 0x20, 0x0a, 0x1b, - 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, - 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x42, 0x49, 0x4e, 0x44, 0x10, 0xd5, 0x08, 0x12, 0x22, - 0x0a, 0x1d, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, - 0x45, 0x52, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x55, 0x4e, 0x42, 0x49, 0x4e, 0x44, 0x10, - 0xd6, 0x08, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, - 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x52, 0x45, 0x54, 0x55, 0x52, 0x4e, 0x10, 0xd7, 0x08, 0x12, - 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x52, 0x5f, 0x52, 0x45, 0x50, - 0x4c, 0x41, 0x59, 0x52, 0x45, 0x43, 0x4f, 0x52, 0x44, 0x10, 0xd8, 0x08, 0x12, 0x16, 0x0a, 0x11, - 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x45, - 0x43, 0x10, 0xd9, 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, - 0x47, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x45, 0x4e, 0x43, 0x45, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x10, - 0xda, 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, - 0x41, 0x55, 0x44, 0x49, 0x45, 0x4e, 0x43, 0x45, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x10, 0xdb, 0x08, - 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x53, 0x43, - 0x45, 0x4e, 0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0xdc, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, - 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x52, - 0x4f, 0x42, 0x4f, 0x54, 0x10, 0xdd, 0x08, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, - 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x4b, 0x49, 0x43, 0x4b, 0x4f, 0x55, - 0x54, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0xde, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, - 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x44, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x4e, 0x41, 0x4c, 0x59, - 0x53, 0x49, 0x53, 0x10, 0xdf, 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, - 0x5f, 0x47, 0x57, 0x5f, 0x43, 0x4c, 0x55, 0x42, 0x42, 0x49, 0x4c, 0x4c, 0x4d, 0x4f, 0x4e, 0x45, - 0x59, 0x10, 0xe1, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, - 0x47, 0x5f, 0x52, 0x45, 0x42, 0x49, 0x4e, 0x44, 0x5f, 0x53, 0x4e, 0x49, 0x44, 0x10, 0xe2, 0x08, - 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x41, 0x55, - 0x44, 0x49, 0x45, 0x4e, 0x43, 0x45, 0x53, 0x49, 0x54, 0x10, 0xe3, 0x08, 0x12, 0x17, 0x0a, 0x12, - 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x52, 0x45, 0x43, 0x48, 0x41, 0x52, - 0x47, 0x45, 0x10, 0xe4, 0x08, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, - 0x47, 0x57, 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, 0xe5, 0x08, - 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x47, 0x52, - 0x41, 0x43, 0x45, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x53, 0x43, 0x45, 0x4e, 0x45, - 0x10, 0xe6, 0x08, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, - 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x45, 0x4e, 0x44, 0x10, 0xe7, 0x08, 0x12, 0x19, 0x0a, 0x14, - 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x46, 0x49, 0x53, 0x48, 0x52, 0x45, - 0x43, 0x4f, 0x52, 0x44, 0x10, 0xe8, 0x08, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, - 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x46, 0x4f, 0x52, 0x43, 0x45, - 0x4c, 0x45, 0x41, 0x56, 0x45, 0x10, 0xe9, 0x08, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, - 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x57, 0x49, 0x4e, 0x53, - 0x4f, 0x43, 0x4f, 0x52, 0x45, 0x10, 0xea, 0x08, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, - 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x44, 0x41, 0x54, 0x41, - 0x10, 0xeb, 0x08, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x44, 0x57, - 0x5f, 0x54, 0x68, 0x69, 0x72, 0x64, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x10, 0xec, 0x08, 0x12, 0x24, 0x0a, 0x1f, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, - 0x5f, 0x57, 0x44, 0x5f, 0x41, 0x43, 0x4b, 0x54, 0x68, 0x69, 0x72, 0x64, 0x52, 0x65, 0x62, 0x61, - 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xed, 0x08, 0x12, 0x20, 0x0a, 0x1b, - 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x44, 0x57, 0x5f, 0x54, 0x68, 0x69, 0x72, 0x64, 0x52, - 0x6f, 0x75, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xee, 0x08, 0x12, 0x1f, - 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, - 0x54, 0x45, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x52, 0x4f, 0x4f, 0x4d, 0x10, 0xef, 0x08, 0x12, - 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x52, 0x5f, 0x4c, 0x6f, 0x67, - 0x69, 0x6e, 0x52, 0x65, 0x63, 0x10, 0xf0, 0x08, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, - 0x45, 0x54, 0x5f, 0x57, 0x52, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x10, 0xf1, 0x08, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x52, - 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0xf2, 0x08, 0x12, 0x1a, - 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x10, 0xf3, 0x08, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, - 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x57, 0x42, 0x43, 0x74, 0x72, 0x6c, 0x43, 0x66, - 0x67, 0x10, 0xf4, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, - 0x4e, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x43, 0x41, 0x52, 0x44, 0x53, 0x10, 0xdc, 0x0b, - 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x52, 0x45, - 0x42, 0x55, 0x49, 0x4c, 0x44, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0xdd, 0x0b, 0x12, 0x1a, 0x0a, - 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, - 0x52, 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, 0xde, 0x0b, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, - 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x4e, 0x45, 0x57, 0x4e, 0x4f, 0x54, 0x49, 0x43, 0x45, - 0x10, 0xdf, 0x0b, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, - 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x53, 0x54, 0x41, 0x54, 0x49, 0x43, 0x10, 0xe0, 0x0b, - 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x43, 0x4f, - 0x49, 0x4e, 0x50, 0x4f, 0x4f, 0x4c, 0x53, 0x45, 0x54, 0x54, 0x49, 0x4e, 0x47, 0x10, 0xe1, 0x0b, - 0x12, 0x22, 0x0a, 0x1d, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x53, 0x45, - 0x54, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x42, 0x4c, 0x41, 0x43, 0x4b, 0x4c, 0x45, 0x56, 0x45, - 0x4c, 0x10, 0xe2, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, - 0x57, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x52, 0x45, 0x4c, 0x49, 0x45, 0x56, 0x45, 0x57, 0x42, 0x4c, - 0x45, 0x56, 0x45, 0x4c, 0x10, 0xe3, 0x0b, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, - 0x54, 0x5f, 0x47, 0x4e, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x50, 0x41, 0x52, 0x41, 0x4d, - 0x10, 0xe4, 0x0b, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, - 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4c, 0x4f, 0x47, 0x10, - 0xe5, 0x0b, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, - 0x53, 0x59, 0x4e, 0x43, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x43, 0x4f, 0x49, 0x4e, 0x10, 0xe6, - 0x0b, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x10, 0xea, 0x0b, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x52, - 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x44, 0x61, 0x74, 0x61, 0x10, 0xeb, 0x0b, - 0x12, 0x24, 0x0a, 0x1f, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x53, 0x79, - 0x6e, 0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x61, 0x66, 0x65, 0x42, 0x6f, 0x78, 0x43, - 0x6f, 0x69, 0x6e, 0x10, 0xec, 0x0b, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, - 0x5f, 0x57, 0x47, 0x5f, 0x52, 0x45, 0x53, 0x45, 0x54, 0x43, 0x4f, 0x49, 0x4e, 0x50, 0x4f, 0x4f, - 0x4c, 0x10, 0xed, 0x0b, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, - 0x47, 0x5f, 0x43, 0x4c, 0x55, 0x42, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x10, 0xee, - 0x0b, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x47, - 0x41, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x54, 0x45, 0x4c, 0x4f, 0x47, 0x10, 0xef, 0x0b, 0x12, 0x18, - 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x47, 0x41, 0x4d, 0x45, - 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, 0xf0, 0x0b, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, - 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x4a, 0x41, 0x43, 0x4b, 0x50, 0x4f, 0x54, 0x4c, 0x49, 0x53, - 0x54, 0x10, 0xf1, 0x0b, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, - 0x57, 0x5f, 0x4a, 0x41, 0x43, 0x4b, 0x50, 0x4f, 0x54, 0x43, 0x4f, 0x49, 0x4e, 0x10, 0xf2, 0x0b, - 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x4e, 0x49, - 0x43, 0x45, 0x49, 0x44, 0x52, 0x45, 0x42, 0x49, 0x4e, 0x44, 0x10, 0xf3, 0x0b, 0x12, 0x1c, 0x0a, - 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, - 0x52, 0x57, 0x49, 0x4e, 0x43, 0x4f, 0x49, 0x4e, 0x10, 0xf4, 0x0b, 0x12, 0x20, 0x0a, 0x1b, 0x50, - 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x41, - 0x55, 0x54, 0x4f, 0x4d, 0x41, 0x52, 0x4b, 0x54, 0x41, 0x47, 0x10, 0xf5, 0x0b, 0x12, 0x2b, 0x0a, - 0x26, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, - 0x45, 0x52, 0x4f, 0x42, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x43, 0x4f, 0x49, 0x4e, 0x53, 0x43, 0x45, - 0x4e, 0x45, 0x51, 0x55, 0x45, 0x55, 0x45, 0x10, 0xf6, 0x0b, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, - 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x46, 0x4f, 0x52, 0x43, - 0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0xf7, 0x0b, 0x12, 0x24, 0x0a, 0x1f, 0x50, 0x41, 0x43, - 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x52, 0x4f, 0x46, 0x49, 0x54, 0x43, 0x4f, 0x4e, - 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x10, 0xf8, 0x0b, 0x12, - 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x43, 0x48, 0x41, - 0x4e, 0x47, 0x45, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0xf9, 0x0b, - 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x54, 0x5f, 0x50, 0x4c, - 0x41, 0x59, 0x45, 0x52, 0x50, 0x41, 0x59, 0x10, 0xfa, 0x0b, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, - 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4d, 0x41, - 0x54, 0x43, 0x48, 0x42, 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0xfb, 0x0b, 0x12, 0x1f, 0x0a, 0x1a, - 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, - 0x4d, 0x41, 0x54, 0x43, 0x48, 0x47, 0x52, 0x41, 0x44, 0x45, 0x10, 0xfc, 0x0b, 0x12, 0x1e, 0x0a, - 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, - 0x52, 0x51, 0x55, 0x49, 0x54, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0xfd, 0x0b, 0x12, 0x23, 0x0a, - 0x1e, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x45, - 0x4d, 0x41, 0x54, 0x43, 0x48, 0x42, 0x41, 0x53, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, - 0xfe, 0x0b, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x53, 0x5f, - 0x52, 0x45, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x54, 0x4f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, - 0x10, 0xff, 0x0b, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, - 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x52, 0x4f, 0x42, 0x10, - 0x80, 0x0c, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, - 0x47, 0x41, 0x4d, 0x45, 0x4a, 0x41, 0x43, 0x4b, 0x50, 0x4f, 0x54, 0x10, 0x83, 0x0c, 0x12, 0x23, - 0x0a, 0x1e, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, - 0x45, 0x52, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x5f, 0x4d, 0x49, 0x4e, 0x49, 0x47, 0x41, 0x4d, 0x45, - 0x10, 0x85, 0x0c, 0x12, 0x23, 0x0a, 0x1e, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, - 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x5f, 0x4d, 0x49, 0x4e, - 0x49, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x86, 0x0c, 0x12, 0x23, 0x0a, 0x1e, 0x50, 0x41, 0x43, 0x4b, - 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4c, 0x45, 0x41, 0x56, - 0x45, 0x5f, 0x4d, 0x49, 0x4e, 0x49, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x87, 0x0c, 0x12, 0x1f, 0x0a, - 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, - 0x4f, 0x59, 0x4d, 0x49, 0x4e, 0x49, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0x88, 0x0c, 0x12, 0x1b, - 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x52, 0x5f, 0x44, 0x45, 0x53, 0x54, - 0x52, 0x4f, 0x59, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0x89, 0x0c, 0x12, 0x19, 0x0a, 0x14, 0x50, - 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x44, 0x54, 0x52, 0x4f, 0x4f, 0x4d, 0x49, - 0x4e, 0x46, 0x4f, 0x10, 0x8a, 0x0c, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, - 0x5f, 0x47, 0x57, 0x5f, 0x44, 0x54, 0x52, 0x4f, 0x4f, 0x4d, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x8b, - 0x0c, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x44, - 0x54, 0x52, 0x4f, 0x4f, 0x4d, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x53, 0x10, 0x8c, 0x0c, 0x12, - 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x44, 0x54, 0x52, - 0x4f, 0x4f, 0x4d, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x53, 0x10, 0x8d, 0x0c, 0x12, 0x1b, 0x0a, - 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x53, 0x49, 0x4e, 0x47, 0x4c, - 0x45, 0x41, 0x44, 0x4a, 0x55, 0x53, 0x54, 0x10, 0x8e, 0x0c, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, - 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x41, 0x44, 0x44, 0x53, 0x49, 0x4e, 0x47, 0x4c, - 0x45, 0x41, 0x44, 0x4a, 0x55, 0x53, 0x54, 0x10, 0x8f, 0x0c, 0x42, 0x26, 0x5a, 0x24, 0x6d, 0x6f, - 0x6e, 0x67, 0x6f, 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x61, - 0x6d, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x59, 0x45, 0x52, 0x52, 0x45, 0x54, 0x55, 0x52, 0x4e, 0x10, 0xd7, 0x08, 0x12, 0x1b, 0x0a, 0x16, + 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x52, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, + 0x52, 0x45, 0x43, 0x4f, 0x52, 0x44, 0x10, 0xd8, 0x08, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x45, 0x43, 0x10, 0xd9, + 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x41, + 0x55, 0x44, 0x49, 0x45, 0x4e, 0x43, 0x45, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x10, 0xda, 0x08, 0x12, + 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x41, 0x55, 0x44, + 0x49, 0x45, 0x4e, 0x43, 0x45, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x10, 0xdb, 0x08, 0x12, 0x19, 0x0a, + 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x45, + 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0xdc, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, + 0x45, 0x54, 0x5f, 0x57, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x52, 0x4f, 0x42, 0x4f, + 0x54, 0x10, 0xdd, 0x08, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, + 0x47, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x4b, 0x49, 0x43, 0x4b, 0x4f, 0x55, 0x54, 0x50, 0x4c, + 0x41, 0x59, 0x45, 0x52, 0x10, 0xde, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, + 0x54, 0x5f, 0x57, 0x44, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x4e, 0x41, 0x4c, 0x59, 0x53, 0x49, 0x53, + 0x10, 0xdf, 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, + 0x5f, 0x43, 0x4c, 0x55, 0x42, 0x42, 0x49, 0x4c, 0x4c, 0x4d, 0x4f, 0x4e, 0x45, 0x59, 0x10, 0xe1, + 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x52, + 0x45, 0x42, 0x49, 0x4e, 0x44, 0x5f, 0x53, 0x4e, 0x49, 0x44, 0x10, 0xe2, 0x08, 0x12, 0x1a, 0x0a, + 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x45, + 0x4e, 0x43, 0x45, 0x53, 0x49, 0x54, 0x10, 0xe3, 0x08, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x52, 0x45, 0x43, 0x48, 0x41, 0x52, 0x47, 0x45, 0x10, + 0xe4, 0x08, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, + 0x53, 0x43, 0x45, 0x4e, 0x45, 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, 0xe5, 0x08, 0x12, 0x21, 0x0a, + 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x47, 0x52, 0x41, 0x43, 0x45, + 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0xe6, 0x08, + 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x53, 0x43, + 0x45, 0x4e, 0x45, 0x45, 0x4e, 0x44, 0x10, 0xe7, 0x08, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x46, 0x49, 0x53, 0x48, 0x52, 0x45, 0x43, 0x4f, 0x52, + 0x44, 0x10, 0xe8, 0x08, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, + 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x46, 0x4f, 0x52, 0x43, 0x45, 0x4c, 0x45, 0x41, + 0x56, 0x45, 0x10, 0xe9, 0x08, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, + 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x57, 0x49, 0x4e, 0x53, 0x4f, 0x43, 0x4f, + 0x52, 0x45, 0x10, 0xea, 0x08, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, + 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x44, 0x41, 0x54, 0x41, 0x10, 0xeb, 0x08, + 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x44, 0x57, 0x5f, 0x54, 0x68, + 0x69, 0x72, 0x64, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x10, 0xec, 0x08, 0x12, 0x24, 0x0a, 0x1f, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x44, + 0x5f, 0x41, 0x43, 0x4b, 0x54, 0x68, 0x69, 0x72, 0x64, 0x52, 0x65, 0x62, 0x61, 0x74, 0x65, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xed, 0x08, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x44, 0x57, 0x5f, 0x54, 0x68, 0x69, 0x72, 0x64, 0x52, 0x6f, 0x75, 0x6e, + 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xee, 0x08, 0x12, 0x1f, 0x0a, 0x1a, 0x50, + 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x43, + 0x52, 0x45, 0x41, 0x54, 0x45, 0x52, 0x4f, 0x4f, 0x4d, 0x10, 0xef, 0x08, 0x12, 0x17, 0x0a, 0x12, + 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x52, 0x5f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, + 0x65, 0x63, 0x10, 0xf0, 0x08, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, + 0x57, 0x52, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x10, 0xf1, 0x08, + 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x52, 0x5f, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0xf2, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, + 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, + 0x45, 0x41, 0x56, 0x45, 0x10, 0xf3, 0x08, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, + 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x57, 0x42, 0x43, 0x74, 0x72, 0x6c, 0x43, 0x66, 0x67, 0x10, 0xf4, + 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x4e, 0x5f, 0x50, + 0x4c, 0x41, 0x59, 0x45, 0x52, 0x43, 0x41, 0x52, 0x44, 0x53, 0x10, 0xdc, 0x0b, 0x12, 0x1b, 0x0a, + 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x52, 0x45, 0x42, 0x55, 0x49, + 0x4c, 0x44, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0xdd, 0x0b, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x53, 0x54, + 0x41, 0x54, 0x45, 0x10, 0xde, 0x0b, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, + 0x5f, 0x47, 0x57, 0x5f, 0x4e, 0x45, 0x57, 0x4e, 0x4f, 0x54, 0x49, 0x43, 0x45, 0x10, 0xdf, 0x0b, + 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, + 0x41, 0x59, 0x45, 0x52, 0x53, 0x54, 0x41, 0x54, 0x49, 0x43, 0x10, 0xe0, 0x0b, 0x12, 0x1e, 0x0a, + 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x43, 0x4f, 0x49, 0x4e, 0x50, + 0x4f, 0x4f, 0x4c, 0x53, 0x45, 0x54, 0x54, 0x49, 0x4e, 0x47, 0x10, 0xe1, 0x0b, 0x12, 0x22, 0x0a, + 0x1d, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x53, 0x45, 0x54, 0x50, 0x4c, + 0x41, 0x59, 0x45, 0x52, 0x42, 0x4c, 0x41, 0x43, 0x4b, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x10, 0xe2, + 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x41, + 0x55, 0x54, 0x4f, 0x52, 0x45, 0x4c, 0x49, 0x45, 0x56, 0x45, 0x57, 0x42, 0x4c, 0x45, 0x56, 0x45, + 0x4c, 0x10, 0xe3, 0x0b, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, + 0x4e, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x10, 0xe4, 0x0b, + 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x53, 0x43, + 0x45, 0x4e, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4c, 0x4f, 0x47, 0x10, 0xe5, 0x0b, 0x12, + 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x53, 0x59, 0x4e, + 0x43, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x43, 0x4f, 0x49, 0x4e, 0x10, 0xe6, 0x0b, 0x12, 0x20, + 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x4f, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xea, 0x0b, + 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x52, 0x5f, 0x47, 0x61, + 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x44, 0x61, 0x74, 0x61, 0x10, 0xeb, 0x0b, 0x12, 0x24, 0x0a, + 0x1f, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x53, 0x79, 0x6e, 0x63, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x61, 0x66, 0x65, 0x42, 0x6f, 0x78, 0x43, 0x6f, 0x69, 0x6e, + 0x10, 0xec, 0x0b, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, + 0x5f, 0x52, 0x45, 0x53, 0x45, 0x54, 0x43, 0x4f, 0x49, 0x4e, 0x50, 0x4f, 0x4f, 0x4c, 0x10, 0xed, + 0x0b, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x43, + 0x4c, 0x55, 0x42, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x10, 0xee, 0x0b, 0x12, 0x1b, + 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x47, 0x41, 0x4d, 0x45, + 0x53, 0x54, 0x41, 0x54, 0x45, 0x4c, 0x4f, 0x47, 0x10, 0xef, 0x0b, 0x12, 0x18, 0x0a, 0x13, 0x50, + 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x53, 0x54, 0x41, + 0x54, 0x45, 0x10, 0xf0, 0x0b, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, + 0x47, 0x57, 0x5f, 0x4a, 0x41, 0x43, 0x4b, 0x50, 0x4f, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x10, 0xf1, + 0x0b, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x4a, + 0x41, 0x43, 0x4b, 0x50, 0x4f, 0x54, 0x43, 0x4f, 0x49, 0x4e, 0x10, 0xf2, 0x0b, 0x12, 0x1b, 0x0a, + 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x4e, 0x49, 0x43, 0x45, 0x49, + 0x44, 0x52, 0x45, 0x42, 0x49, 0x4e, 0x44, 0x10, 0xf3, 0x0b, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x57, 0x49, + 0x4e, 0x43, 0x4f, 0x49, 0x4e, 0x10, 0xf4, 0x0b, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, + 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x41, 0x55, 0x54, 0x4f, + 0x4d, 0x41, 0x52, 0x4b, 0x54, 0x41, 0x47, 0x10, 0xf5, 0x0b, 0x12, 0x2b, 0x0a, 0x26, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x52, 0x4f, + 0x42, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x43, 0x4f, 0x49, 0x4e, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x51, + 0x55, 0x45, 0x55, 0x45, 0x10, 0xf6, 0x0b, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, + 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x46, 0x4f, 0x52, 0x43, 0x45, 0x53, 0x54, + 0x41, 0x52, 0x54, 0x10, 0xf7, 0x0b, 0x12, 0x24, 0x0a, 0x1f, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, + 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x52, 0x4f, 0x46, 0x49, 0x54, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, + 0x4c, 0x5f, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x10, 0xf8, 0x0b, 0x12, 0x1f, 0x0a, 0x1a, + 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, + 0x53, 0x43, 0x45, 0x4e, 0x45, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0xf9, 0x0b, 0x12, 0x18, 0x0a, + 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x54, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, + 0x52, 0x50, 0x41, 0x59, 0x10, 0xfa, 0x0b, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, + 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4d, 0x41, 0x54, 0x43, 0x48, + 0x42, 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0xfb, 0x0b, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4d, 0x41, 0x54, + 0x43, 0x48, 0x47, 0x52, 0x41, 0x44, 0x45, 0x10, 0xfc, 0x0b, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x51, 0x55, + 0x49, 0x54, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0xfd, 0x0b, 0x12, 0x23, 0x0a, 0x1e, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x4d, 0x41, 0x54, + 0x43, 0x48, 0x42, 0x41, 0x53, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0xfe, 0x0b, 0x12, + 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x53, 0x5f, 0x52, 0x45, 0x44, + 0x49, 0x52, 0x45, 0x43, 0x54, 0x54, 0x4f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0xff, 0x0b, + 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x49, 0x4e, + 0x56, 0x49, 0x54, 0x45, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x52, 0x4f, 0x42, 0x10, 0x80, 0x0c, 0x12, + 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x47, 0x41, 0x4d, + 0x45, 0x4a, 0x41, 0x43, 0x4b, 0x50, 0x4f, 0x54, 0x10, 0x83, 0x0c, 0x12, 0x23, 0x0a, 0x1e, 0x50, + 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x45, + 0x4e, 0x54, 0x45, 0x52, 0x5f, 0x4d, 0x49, 0x4e, 0x49, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x85, 0x0c, + 0x12, 0x23, 0x0a, 0x1e, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x50, 0x4c, + 0x41, 0x59, 0x45, 0x52, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x5f, 0x4d, 0x49, 0x4e, 0x49, 0x47, 0x41, + 0x4d, 0x45, 0x10, 0x86, 0x0c, 0x12, 0x23, 0x0a, 0x1e, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, + 0x47, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x5f, 0x4d, + 0x49, 0x4e, 0x49, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x87, 0x0c, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x4d, + 0x49, 0x4e, 0x49, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0x88, 0x0c, 0x12, 0x1b, 0x0a, 0x16, 0x50, + 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x52, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, + 0x53, 0x43, 0x45, 0x4e, 0x45, 0x10, 0x89, 0x0c, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, + 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x44, 0x54, 0x52, 0x4f, 0x4f, 0x4d, 0x49, 0x4e, 0x46, 0x4f, + 0x10, 0x8a, 0x0c, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, + 0x5f, 0x44, 0x54, 0x52, 0x4f, 0x4f, 0x4d, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x8b, 0x0c, 0x12, 0x1c, + 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x44, 0x54, 0x52, 0x4f, + 0x4f, 0x4d, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x53, 0x10, 0x8c, 0x0c, 0x12, 0x1c, 0x0a, 0x17, + 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x44, 0x54, 0x52, 0x4f, 0x4f, 0x4d, + 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x53, 0x10, 0x8d, 0x0c, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x57, 0x47, 0x5f, 0x53, 0x49, 0x4e, 0x47, 0x4c, 0x45, 0x41, 0x44, + 0x4a, 0x55, 0x53, 0x54, 0x10, 0x8e, 0x0c, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, + 0x54, 0x5f, 0x47, 0x57, 0x5f, 0x41, 0x44, 0x44, 0x53, 0x49, 0x4e, 0x47, 0x4c, 0x45, 0x41, 0x44, + 0x4a, 0x55, 0x53, 0x54, 0x10, 0x8f, 0x0c, 0x42, 0x26, 0x5a, 0x24, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, + 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x61, 0x6d, 0x65, 0x2f, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x62, + 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -9772,7 +9834,7 @@ func file_server_proto_rawDescGZIP() []byte { } var file_server_proto_enumTypes = make([]protoimpl.EnumInfo, 2) -var file_server_proto_msgTypes = make([]protoimpl.MessageInfo, 117) +var file_server_proto_msgTypes = make([]protoimpl.MessageInfo, 118) var file_server_proto_goTypes = []interface{}{ (SSPacketID)(0), // 0: server.SSPacketID (SGBindGroupTag_OpCode)(0), // 1: server.SGBindGroupTag.OpCode @@ -9788,150 +9850,153 @@ var file_server_proto_goTypes = []interface{}{ (*WGDestroyScene)(nil), // 11: server.WGDestroyScene (*GWDestroyScene)(nil), // 12: server.GWDestroyScene (*WGGraceDestroyScene)(nil), // 13: server.WGGraceDestroyScene - (*RebateTask)(nil), // 14: server.RebateTask - (*WGPlayerEnter)(nil), // 15: server.WGPlayerEnter - (*WGAudienceSit)(nil), // 16: server.WGAudienceSit - (*WGPlayerReturn)(nil), // 17: server.WGPlayerReturn - (*GWPlayerLeave)(nil), // 18: server.GWPlayerLeave - (*WGPlayerDropLine)(nil), // 19: server.WGPlayerDropLine - (*WGPlayerRehold)(nil), // 20: server.WGPlayerRehold - (*GWBilledRoomCard)(nil), // 21: server.GWBilledRoomCard - (*GGPlayerSessionBind)(nil), // 22: server.GGPlayerSessionBind - (*GGPlayerSessionUnBind)(nil), // 23: server.GGPlayerSessionUnBind - (*WGDayTimeChange)(nil), // 24: server.WGDayTimeChange - (*ReplayPlayerData)(nil), // 25: server.ReplayPlayerData - (*ReplayRecord)(nil), // 26: server.ReplayRecord - (*ReplaySequene)(nil), // 27: server.ReplaySequene - (*GRReplaySequene)(nil), // 28: server.GRReplaySequene - (*WRLoginRec)(nil), // 29: server.WRLoginRec - (*WRGameDetail)(nil), // 30: server.WRGameDetail - (*WRPlayerData)(nil), // 31: server.WRPlayerData - (*WTPlayerPay)(nil), // 32: server.WTPlayerPay - (*PlayerGameRec)(nil), // 33: server.PlayerGameRec - (*GWGameRec)(nil), // 34: server.GWGameRec - (*GWSceneStart)(nil), // 35: server.GWSceneStart - (*PlayerCtx)(nil), // 36: server.PlayerCtx - (*FishRecord)(nil), // 37: server.FishRecord - (*GWFishRecord)(nil), // 38: server.GWFishRecord - (*GWSceneState)(nil), // 39: server.GWSceneState - (*WRInviteRobot)(nil), // 40: server.WRInviteRobot - (*WRInviteCreateRoom)(nil), // 41: server.WRInviteCreateRoom - (*WGAgentKickOutPlayer)(nil), // 42: server.WGAgentKickOutPlayer - (*WDDataAnalysis)(nil), // 43: server.WDDataAnalysis - (*PlayerCard)(nil), // 44: server.PlayerCard - (*GNPlayerCards)(nil), // 45: server.GNPlayerCards - (*RobotData)(nil), // 46: server.RobotData - (*GNPlayerParam)(nil), // 47: server.GNPlayerParam - (*GWRebuildScene)(nil), // 48: server.GWRebuildScene - (*WGRebindPlayerSnId)(nil), // 49: server.WGRebindPlayerSnId - (*GWPlayerFlag)(nil), // 50: server.GWPlayerFlag - (*WGHundredOp)(nil), // 51: server.WGHundredOp - (*GWNewNotice)(nil), // 52: server.GWNewNotice - (*PlayerStatics)(nil), // 53: server.PlayerStatics - (*GWPlayerStatics)(nil), // 54: server.GWPlayerStatics - (*WGResetCoinPool)(nil), // 55: server.WGResetCoinPool - (*WGSetPlayerBlackLevel)(nil), // 56: server.WGSetPlayerBlackLevel - (*GWAutoRelieveWBLevel)(nil), // 57: server.GWAutoRelieveWBLevel - (*GWScenePlayerLog)(nil), // 58: server.GWScenePlayerLog - (*GWPlayerForceLeave)(nil), // 59: server.GWPlayerForceLeave - (*PlayerData)(nil), // 60: server.PlayerData - (*GWPlayerData)(nil), // 61: server.GWPlayerData - (*PlayerWinScore)(nil), // 62: server.PlayerWinScore - (*GWPlayerWinScore)(nil), // 63: server.GWPlayerWinScore - (*WGPayerOnGameCount)(nil), // 64: server.WGPayerOnGameCount - (*GRGameFreeData)(nil), // 65: server.GRGameFreeData - (*WGSyncPlayerSafeBoxCoin)(nil), // 66: server.WGSyncPlayerSafeBoxCoin - (*WGClubMessage)(nil), // 67: server.WGClubMessage - (*DWThirdRebateMessage)(nil), // 68: server.DWThirdRebateMessage - (*DWThirdRoundMessage)(nil), // 69: server.DWThirdRoundMessage - (*WDACKThirdRebateMessage)(nil), // 70: server.WDACKThirdRebateMessage - (*GWGameStateLog)(nil), // 71: server.GWGameStateLog - (*GWGameState)(nil), // 72: server.GWGameState - (*GWGameJackList)(nil), // 73: server.GWGameJackList - (*GWGameJackCoin)(nil), // 74: server.GWGameJackCoin - (*WGNiceIdRebind)(nil), // 75: server.WGNiceIdRebind - (*PLAYERWINCOININFO)(nil), // 76: server.PLAYERWINCOININFO - (*GWPLAYERWINCOIN)(nil), // 77: server.GWPLAYERWINCOIN - (*GWPlayerAutoMarkTag)(nil), // 78: server.GWPlayerAutoMarkTag - (*WGInviteRobEnterCoinSceneQueue)(nil), // 79: server.WGInviteRobEnterCoinSceneQueue - (*WGGameForceStart)(nil), // 80: server.WGGameForceStart - (*ProfitControlGameCfg)(nil), // 81: server.ProfitControlGameCfg - (*ProfitControlPlatformCfg)(nil), // 82: server.ProfitControlPlatformCfg - (*WGProfitControlCorrect)(nil), // 83: server.WGProfitControlCorrect - (*GWChangeSceneEvent)(nil), // 84: server.GWChangeSceneEvent - (*PlayerIParam)(nil), // 85: server.PlayerIParam - (*PlayerSParam)(nil), // 86: server.PlayerSParam - (*PlayerCParam)(nil), // 87: server.PlayerCParam - (*PlayerMatchCoin)(nil), // 88: server.PlayerMatchCoin - (*GWPlayerMatchBilled)(nil), // 89: server.GWPlayerMatchBilled - (*GWPlayerMatchGrade)(nil), // 90: server.GWPlayerMatchGrade - (*WGPlayerQuitMatch)(nil), // 91: server.WGPlayerQuitMatch - (*WGSceneMatchBaseChange)(nil), // 92: server.WGSceneMatchBaseChange - (*SSRedirectToPlayer)(nil), // 93: server.SSRedirectToPlayer - (*WGInviteMatchRob)(nil), // 94: server.WGInviteMatchRob - (*GameInfo)(nil), // 95: server.GameInfo - (*WGGameJackpot)(nil), // 96: server.WGGameJackpot - (*BigWinHistoryInfo)(nil), // 97: server.BigWinHistoryInfo - (*WGPlayerEnterMiniGame)(nil), // 98: server.WGPlayerEnterMiniGame - (*WGPlayerLeaveMiniGame)(nil), // 99: server.WGPlayerLeaveMiniGame - (*WGPlayerLeave)(nil), // 100: server.WGPlayerLeave - (*GWPlayerLeaveMiniGame)(nil), // 101: server.GWPlayerLeaveMiniGame - (*GWDestroyMiniScene)(nil), // 102: server.GWDestroyMiniScene - (*GRDestroyScene)(nil), // 103: server.GRDestroyScene - (*RWAccountInvalid)(nil), // 104: server.RWAccountInvalid - (*WGDTRoomInfo)(nil), // 105: server.WGDTRoomInfo - (*PlayerDTCoin)(nil), // 106: server.PlayerDTCoin - (*EResult)(nil), // 107: server.EResult - (*GWDTRoomInfo)(nil), // 108: server.GWDTRoomInfo - (*WGRoomResults)(nil), // 109: server.WGRoomResults - (*GWRoomResults)(nil), // 110: server.GWRoomResults - (*GWAddSingleAdjust)(nil), // 111: server.GWAddSingleAdjust - (*WGSingleAdjust)(nil), // 112: server.WGSingleAdjust - (*WbCtrlCfg)(nil), // 113: server.WbCtrlCfg - nil, // 114: server.WGPlayerEnter.ItemsEntry - nil, // 115: server.WGPlayerEnter.RankScoreEntry - nil, // 116: server.GWPlayerLeave.ItemsEntry - nil, // 117: server.GWPlayerLeave.MatchRobotGradesEntry - nil, // 118: server.GWPlayerLeave.RankScoreEntry - (*DB_GameFree)(nil), // 119: server.DB_GameFree + (*ItemParam)(nil), // 14: server.ItemParam + (*RebateTask)(nil), // 15: server.RebateTask + (*WGPlayerEnter)(nil), // 16: server.WGPlayerEnter + (*WGAudienceSit)(nil), // 17: server.WGAudienceSit + (*WGPlayerReturn)(nil), // 18: server.WGPlayerReturn + (*GWPlayerLeave)(nil), // 19: server.GWPlayerLeave + (*WGPlayerDropLine)(nil), // 20: server.WGPlayerDropLine + (*WGPlayerRehold)(nil), // 21: server.WGPlayerRehold + (*GWBilledRoomCard)(nil), // 22: server.GWBilledRoomCard + (*GGPlayerSessionBind)(nil), // 23: server.GGPlayerSessionBind + (*GGPlayerSessionUnBind)(nil), // 24: server.GGPlayerSessionUnBind + (*WGDayTimeChange)(nil), // 25: server.WGDayTimeChange + (*ReplayPlayerData)(nil), // 26: server.ReplayPlayerData + (*ReplayRecord)(nil), // 27: server.ReplayRecord + (*ReplaySequene)(nil), // 28: server.ReplaySequene + (*GRReplaySequene)(nil), // 29: server.GRReplaySequene + (*WRLoginRec)(nil), // 30: server.WRLoginRec + (*WRGameDetail)(nil), // 31: server.WRGameDetail + (*WRPlayerData)(nil), // 32: server.WRPlayerData + (*WTPlayerPay)(nil), // 33: server.WTPlayerPay + (*PlayerGameRec)(nil), // 34: server.PlayerGameRec + (*GWGameRec)(nil), // 35: server.GWGameRec + (*GWSceneStart)(nil), // 36: server.GWSceneStart + (*PlayerCtx)(nil), // 37: server.PlayerCtx + (*FishRecord)(nil), // 38: server.FishRecord + (*GWFishRecord)(nil), // 39: server.GWFishRecord + (*GWSceneState)(nil), // 40: server.GWSceneState + (*WRInviteRobot)(nil), // 41: server.WRInviteRobot + (*WRInviteCreateRoom)(nil), // 42: server.WRInviteCreateRoom + (*WGAgentKickOutPlayer)(nil), // 43: server.WGAgentKickOutPlayer + (*WDDataAnalysis)(nil), // 44: server.WDDataAnalysis + (*PlayerCard)(nil), // 45: server.PlayerCard + (*GNPlayerCards)(nil), // 46: server.GNPlayerCards + (*RobotData)(nil), // 47: server.RobotData + (*GNPlayerParam)(nil), // 48: server.GNPlayerParam + (*GWRebuildScene)(nil), // 49: server.GWRebuildScene + (*WGRebindPlayerSnId)(nil), // 50: server.WGRebindPlayerSnId + (*GWPlayerFlag)(nil), // 51: server.GWPlayerFlag + (*WGHundredOp)(nil), // 52: server.WGHundredOp + (*GWNewNotice)(nil), // 53: server.GWNewNotice + (*PlayerStatics)(nil), // 54: server.PlayerStatics + (*GWPlayerStatics)(nil), // 55: server.GWPlayerStatics + (*WGResetCoinPool)(nil), // 56: server.WGResetCoinPool + (*WGSetPlayerBlackLevel)(nil), // 57: server.WGSetPlayerBlackLevel + (*GWAutoRelieveWBLevel)(nil), // 58: server.GWAutoRelieveWBLevel + (*GWScenePlayerLog)(nil), // 59: server.GWScenePlayerLog + (*GWPlayerForceLeave)(nil), // 60: server.GWPlayerForceLeave + (*PlayerData)(nil), // 61: server.PlayerData + (*GWPlayerData)(nil), // 62: server.GWPlayerData + (*PlayerWinScore)(nil), // 63: server.PlayerWinScore + (*GWPlayerWinScore)(nil), // 64: server.GWPlayerWinScore + (*WGPayerOnGameCount)(nil), // 65: server.WGPayerOnGameCount + (*GRGameFreeData)(nil), // 66: server.GRGameFreeData + (*WGSyncPlayerSafeBoxCoin)(nil), // 67: server.WGSyncPlayerSafeBoxCoin + (*WGClubMessage)(nil), // 68: server.WGClubMessage + (*DWThirdRebateMessage)(nil), // 69: server.DWThirdRebateMessage + (*DWThirdRoundMessage)(nil), // 70: server.DWThirdRoundMessage + (*WDACKThirdRebateMessage)(nil), // 71: server.WDACKThirdRebateMessage + (*GWGameStateLog)(nil), // 72: server.GWGameStateLog + (*GWGameState)(nil), // 73: server.GWGameState + (*GWGameJackList)(nil), // 74: server.GWGameJackList + (*GWGameJackCoin)(nil), // 75: server.GWGameJackCoin + (*WGNiceIdRebind)(nil), // 76: server.WGNiceIdRebind + (*PLAYERWINCOININFO)(nil), // 77: server.PLAYERWINCOININFO + (*GWPLAYERWINCOIN)(nil), // 78: server.GWPLAYERWINCOIN + (*GWPlayerAutoMarkTag)(nil), // 79: server.GWPlayerAutoMarkTag + (*WGInviteRobEnterCoinSceneQueue)(nil), // 80: server.WGInviteRobEnterCoinSceneQueue + (*WGGameForceStart)(nil), // 81: server.WGGameForceStart + (*ProfitControlGameCfg)(nil), // 82: server.ProfitControlGameCfg + (*ProfitControlPlatformCfg)(nil), // 83: server.ProfitControlPlatformCfg + (*WGProfitControlCorrect)(nil), // 84: server.WGProfitControlCorrect + (*GWChangeSceneEvent)(nil), // 85: server.GWChangeSceneEvent + (*PlayerIParam)(nil), // 86: server.PlayerIParam + (*PlayerSParam)(nil), // 87: server.PlayerSParam + (*PlayerCParam)(nil), // 88: server.PlayerCParam + (*PlayerMatchCoin)(nil), // 89: server.PlayerMatchCoin + (*GWPlayerMatchBilled)(nil), // 90: server.GWPlayerMatchBilled + (*GWPlayerMatchGrade)(nil), // 91: server.GWPlayerMatchGrade + (*WGPlayerQuitMatch)(nil), // 92: server.WGPlayerQuitMatch + (*WGSceneMatchBaseChange)(nil), // 93: server.WGSceneMatchBaseChange + (*SSRedirectToPlayer)(nil), // 94: server.SSRedirectToPlayer + (*WGInviteMatchRob)(nil), // 95: server.WGInviteMatchRob + (*GameInfo)(nil), // 96: server.GameInfo + (*WGGameJackpot)(nil), // 97: server.WGGameJackpot + (*BigWinHistoryInfo)(nil), // 98: server.BigWinHistoryInfo + (*WGPlayerEnterMiniGame)(nil), // 99: server.WGPlayerEnterMiniGame + (*WGPlayerLeaveMiniGame)(nil), // 100: server.WGPlayerLeaveMiniGame + (*WGPlayerLeave)(nil), // 101: server.WGPlayerLeave + (*GWPlayerLeaveMiniGame)(nil), // 102: server.GWPlayerLeaveMiniGame + (*GWDestroyMiniScene)(nil), // 103: server.GWDestroyMiniScene + (*GRDestroyScene)(nil), // 104: server.GRDestroyScene + (*RWAccountInvalid)(nil), // 105: server.RWAccountInvalid + (*WGDTRoomInfo)(nil), // 106: server.WGDTRoomInfo + (*PlayerDTCoin)(nil), // 107: server.PlayerDTCoin + (*EResult)(nil), // 108: server.EResult + (*GWDTRoomInfo)(nil), // 109: server.GWDTRoomInfo + (*WGRoomResults)(nil), // 110: server.WGRoomResults + (*GWRoomResults)(nil), // 111: server.GWRoomResults + (*GWAddSingleAdjust)(nil), // 112: server.GWAddSingleAdjust + (*WGSingleAdjust)(nil), // 113: server.WGSingleAdjust + (*WbCtrlCfg)(nil), // 114: server.WbCtrlCfg + nil, // 115: server.WGPlayerEnter.ItemsEntry + nil, // 116: server.WGPlayerEnter.RankScoreEntry + nil, // 117: server.GWPlayerLeave.ItemsEntry + nil, // 118: server.GWPlayerLeave.MatchRobotGradesEntry + nil, // 119: server.GWPlayerLeave.RankScoreEntry + (*DB_GameFree)(nil), // 120: server.DB_GameFree } var file_server_proto_depIdxs = []int32{ 1, // 0: server.SGBindGroupTag.Code:type_name -> server.SGBindGroupTag.OpCode 4, // 1: server.ServerCtrl.Params:type_name -> server.OpResultParam - 119, // 2: server.WGCreateScene.DBGameFree:type_name -> server.DB_GameFree - 85, // 3: server.WGPlayerEnter.IParams:type_name -> server.PlayerIParam - 86, // 4: server.WGPlayerEnter.SParams:type_name -> server.PlayerSParam - 87, // 5: server.WGPlayerEnter.CParams:type_name -> server.PlayerCParam - 114, // 6: server.WGPlayerEnter.Items:type_name -> server.WGPlayerEnter.ItemsEntry - 115, // 7: server.WGPlayerEnter.RankScore:type_name -> server.WGPlayerEnter.RankScoreEntry - 116, // 8: server.GWPlayerLeave.Items:type_name -> server.GWPlayerLeave.ItemsEntry - 117, // 9: server.GWPlayerLeave.MatchRobotGrades:type_name -> server.GWPlayerLeave.MatchRobotGradesEntry - 118, // 10: server.GWPlayerLeave.RankScore:type_name -> server.GWPlayerLeave.RankScoreEntry - 26, // 11: server.ReplaySequene.Sequenes:type_name -> server.ReplayRecord - 27, // 12: server.GRReplaySequene.Rec:type_name -> server.ReplaySequene - 25, // 13: server.GRReplaySequene.Datas:type_name -> server.ReplayPlayerData - 33, // 14: server.GWGameRec.Datas:type_name -> server.PlayerGameRec - 37, // 15: server.GWFishRecord.FishRecords:type_name -> server.FishRecord - 44, // 16: server.GNPlayerCards.PlayerCards:type_name -> server.PlayerCard - 46, // 17: server.GNPlayerParam.Playerdata:type_name -> server.RobotData - 53, // 18: server.GWPlayerStatics.Datas:type_name -> server.PlayerStatics - 60, // 19: server.GWPlayerData.Datas:type_name -> server.PlayerData - 62, // 20: server.GWPlayerWinScore.PlayerWinScores:type_name -> server.PlayerWinScore - 119, // 21: server.GRGameFreeData.DBGameFree:type_name -> server.DB_GameFree - 119, // 22: server.WGClubMessage.DBGameFree:type_name -> server.DB_GameFree - 76, // 23: server.GWPLAYERWINCOIN.player:type_name -> server.PLAYERWINCOININFO - 81, // 24: server.ProfitControlPlatformCfg.GameCfg:type_name -> server.ProfitControlGameCfg - 82, // 25: server.WGProfitControlCorrect.Cfg:type_name -> server.ProfitControlPlatformCfg - 88, // 26: server.GWPlayerMatchBilled.Players:type_name -> server.PlayerMatchCoin - 88, // 27: server.GWPlayerMatchGrade.Players:type_name -> server.PlayerMatchCoin - 95, // 28: server.WGGameJackpot.Info:type_name -> server.GameInfo - 106, // 29: server.GWDTRoomInfo.Players:type_name -> server.PlayerDTCoin - 107, // 30: server.GWDTRoomInfo.Results:type_name -> server.EResult - 31, // [31:31] is the sub-list for method output_type - 31, // [31:31] is the sub-list for method input_type - 31, // [31:31] is the sub-list for extension type_name - 31, // [31:31] is the sub-list for extension extendee - 0, // [0:31] is the sub-list for field type_name + 120, // 2: server.WGCreateScene.DBGameFree:type_name -> server.DB_GameFree + 86, // 3: server.WGPlayerEnter.IParams:type_name -> server.PlayerIParam + 87, // 4: server.WGPlayerEnter.SParams:type_name -> server.PlayerSParam + 88, // 5: server.WGPlayerEnter.CParams:type_name -> server.PlayerCParam + 115, // 6: server.WGPlayerEnter.Items:type_name -> server.WGPlayerEnter.ItemsEntry + 116, // 7: server.WGPlayerEnter.RankScore:type_name -> server.WGPlayerEnter.RankScoreEntry + 117, // 8: server.GWPlayerLeave.Items:type_name -> server.GWPlayerLeave.ItemsEntry + 118, // 9: server.GWPlayerLeave.MatchRobotGrades:type_name -> server.GWPlayerLeave.MatchRobotGradesEntry + 119, // 10: server.GWPlayerLeave.RankScore:type_name -> server.GWPlayerLeave.RankScoreEntry + 27, // 11: server.ReplaySequene.Sequenes:type_name -> server.ReplayRecord + 28, // 12: server.GRReplaySequene.Rec:type_name -> server.ReplaySequene + 26, // 13: server.GRReplaySequene.Datas:type_name -> server.ReplayPlayerData + 34, // 14: server.GWGameRec.Datas:type_name -> server.PlayerGameRec + 38, // 15: server.GWFishRecord.FishRecords:type_name -> server.FishRecord + 45, // 16: server.GNPlayerCards.PlayerCards:type_name -> server.PlayerCard + 47, // 17: server.GNPlayerParam.Playerdata:type_name -> server.RobotData + 54, // 18: server.GWPlayerStatics.Datas:type_name -> server.PlayerStatics + 61, // 19: server.GWPlayerData.Datas:type_name -> server.PlayerData + 63, // 20: server.GWPlayerWinScore.PlayerWinScores:type_name -> server.PlayerWinScore + 120, // 21: server.GRGameFreeData.DBGameFree:type_name -> server.DB_GameFree + 120, // 22: server.WGClubMessage.DBGameFree:type_name -> server.DB_GameFree + 77, // 23: server.GWPLAYERWINCOIN.player:type_name -> server.PLAYERWINCOININFO + 82, // 24: server.ProfitControlPlatformCfg.GameCfg:type_name -> server.ProfitControlGameCfg + 83, // 25: server.WGProfitControlCorrect.Cfg:type_name -> server.ProfitControlPlatformCfg + 89, // 26: server.GWPlayerMatchBilled.Players:type_name -> server.PlayerMatchCoin + 89, // 27: server.GWPlayerMatchGrade.Players:type_name -> server.PlayerMatchCoin + 96, // 28: server.WGGameJackpot.Info:type_name -> server.GameInfo + 107, // 29: server.GWDTRoomInfo.Players:type_name -> server.PlayerDTCoin + 108, // 30: server.GWDTRoomInfo.Results:type_name -> server.EResult + 14, // 31: server.WGPlayerEnter.ItemsEntry.value:type_name -> server.ItemParam + 14, // 32: server.GWPlayerLeave.ItemsEntry.value:type_name -> server.ItemParam + 33, // [33:33] is the sub-list for method output_type + 33, // [33:33] is the sub-list for method input_type + 33, // [33:33] is the sub-list for extension type_name + 33, // [33:33] is the sub-list for extension extendee + 0, // [0:33] is the sub-list for field type_name } func init() { file_server_proto_init() } @@ -10086,7 +10151,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RebateTask); i { + switch v := v.(*ItemParam); i { case 0: return &v.state case 1: @@ -10098,7 +10163,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGPlayerEnter); i { + switch v := v.(*RebateTask); i { case 0: return &v.state case 1: @@ -10110,7 +10175,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGAudienceSit); i { + switch v := v.(*WGPlayerEnter); i { case 0: return &v.state case 1: @@ -10122,7 +10187,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGPlayerReturn); i { + switch v := v.(*WGAudienceSit); i { case 0: return &v.state case 1: @@ -10134,7 +10199,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWPlayerLeave); i { + switch v := v.(*WGPlayerReturn); i { case 0: return &v.state case 1: @@ -10146,7 +10211,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGPlayerDropLine); i { + switch v := v.(*GWPlayerLeave); i { case 0: return &v.state case 1: @@ -10158,7 +10223,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGPlayerRehold); i { + switch v := v.(*WGPlayerDropLine); i { case 0: return &v.state case 1: @@ -10170,7 +10235,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWBilledRoomCard); i { + switch v := v.(*WGPlayerRehold); i { case 0: return &v.state case 1: @@ -10182,7 +10247,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GGPlayerSessionBind); i { + switch v := v.(*GWBilledRoomCard); i { case 0: return &v.state case 1: @@ -10194,7 +10259,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GGPlayerSessionUnBind); i { + switch v := v.(*GGPlayerSessionBind); i { case 0: return &v.state case 1: @@ -10206,7 +10271,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGDayTimeChange); i { + switch v := v.(*GGPlayerSessionUnBind); i { case 0: return &v.state case 1: @@ -10218,7 +10283,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReplayPlayerData); i { + switch v := v.(*WGDayTimeChange); i { case 0: return &v.state case 1: @@ -10230,7 +10295,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReplayRecord); i { + switch v := v.(*ReplayPlayerData); i { case 0: return &v.state case 1: @@ -10242,7 +10307,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReplaySequene); i { + switch v := v.(*ReplayRecord); i { case 0: return &v.state case 1: @@ -10254,7 +10319,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GRReplaySequene); i { + switch v := v.(*ReplaySequene); i { case 0: return &v.state case 1: @@ -10266,7 +10331,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WRLoginRec); i { + switch v := v.(*GRReplaySequene); i { case 0: return &v.state case 1: @@ -10278,7 +10343,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WRGameDetail); i { + switch v := v.(*WRLoginRec); i { case 0: return &v.state case 1: @@ -10290,7 +10355,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WRPlayerData); i { + switch v := v.(*WRGameDetail); i { case 0: return &v.state case 1: @@ -10302,7 +10367,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WTPlayerPay); i { + switch v := v.(*WRPlayerData); i { case 0: return &v.state case 1: @@ -10314,7 +10379,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlayerGameRec); i { + switch v := v.(*WTPlayerPay); i { case 0: return &v.state case 1: @@ -10326,7 +10391,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWGameRec); i { + switch v := v.(*PlayerGameRec); i { case 0: return &v.state case 1: @@ -10338,7 +10403,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWSceneStart); i { + switch v := v.(*GWGameRec); i { case 0: return &v.state case 1: @@ -10350,7 +10415,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlayerCtx); i { + switch v := v.(*GWSceneStart); i { case 0: return &v.state case 1: @@ -10362,7 +10427,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FishRecord); i { + switch v := v.(*PlayerCtx); i { case 0: return &v.state case 1: @@ -10374,7 +10439,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWFishRecord); i { + switch v := v.(*FishRecord); i { case 0: return &v.state case 1: @@ -10386,7 +10451,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWSceneState); i { + switch v := v.(*GWFishRecord); i { case 0: return &v.state case 1: @@ -10398,7 +10463,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WRInviteRobot); i { + switch v := v.(*GWSceneState); i { case 0: return &v.state case 1: @@ -10410,7 +10475,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WRInviteCreateRoom); i { + switch v := v.(*WRInviteRobot); i { case 0: return &v.state case 1: @@ -10422,7 +10487,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGAgentKickOutPlayer); i { + switch v := v.(*WRInviteCreateRoom); i { case 0: return &v.state case 1: @@ -10434,7 +10499,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WDDataAnalysis); i { + switch v := v.(*WGAgentKickOutPlayer); i { case 0: return &v.state case 1: @@ -10446,7 +10511,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlayerCard); i { + switch v := v.(*WDDataAnalysis); i { case 0: return &v.state case 1: @@ -10458,7 +10523,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GNPlayerCards); i { + switch v := v.(*PlayerCard); i { case 0: return &v.state case 1: @@ -10470,7 +10535,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RobotData); i { + switch v := v.(*GNPlayerCards); i { case 0: return &v.state case 1: @@ -10482,7 +10547,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GNPlayerParam); i { + switch v := v.(*RobotData); i { case 0: return &v.state case 1: @@ -10494,7 +10559,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWRebuildScene); i { + switch v := v.(*GNPlayerParam); i { case 0: return &v.state case 1: @@ -10506,7 +10571,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGRebindPlayerSnId); i { + switch v := v.(*GWRebuildScene); i { case 0: return &v.state case 1: @@ -10518,7 +10583,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWPlayerFlag); i { + switch v := v.(*WGRebindPlayerSnId); i { case 0: return &v.state case 1: @@ -10530,7 +10595,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGHundredOp); i { + switch v := v.(*GWPlayerFlag); i { case 0: return &v.state case 1: @@ -10542,7 +10607,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWNewNotice); i { + switch v := v.(*WGHundredOp); i { case 0: return &v.state case 1: @@ -10554,7 +10619,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlayerStatics); i { + switch v := v.(*GWNewNotice); i { case 0: return &v.state case 1: @@ -10566,7 +10631,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWPlayerStatics); i { + switch v := v.(*PlayerStatics); i { case 0: return &v.state case 1: @@ -10578,7 +10643,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGResetCoinPool); i { + switch v := v.(*GWPlayerStatics); i { case 0: return &v.state case 1: @@ -10590,7 +10655,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGSetPlayerBlackLevel); i { + switch v := v.(*WGResetCoinPool); i { case 0: return &v.state case 1: @@ -10602,7 +10667,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWAutoRelieveWBLevel); i { + switch v := v.(*WGSetPlayerBlackLevel); i { case 0: return &v.state case 1: @@ -10614,7 +10679,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWScenePlayerLog); i { + switch v := v.(*GWAutoRelieveWBLevel); i { case 0: return &v.state case 1: @@ -10626,7 +10691,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWPlayerForceLeave); i { + switch v := v.(*GWScenePlayerLog); i { case 0: return &v.state case 1: @@ -10638,7 +10703,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlayerData); i { + switch v := v.(*GWPlayerForceLeave); i { case 0: return &v.state case 1: @@ -10650,7 +10715,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWPlayerData); i { + switch v := v.(*PlayerData); i { case 0: return &v.state case 1: @@ -10662,7 +10727,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlayerWinScore); i { + switch v := v.(*GWPlayerData); i { case 0: return &v.state case 1: @@ -10674,7 +10739,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWPlayerWinScore); i { + switch v := v.(*PlayerWinScore); i { case 0: return &v.state case 1: @@ -10686,7 +10751,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGPayerOnGameCount); i { + switch v := v.(*GWPlayerWinScore); i { case 0: return &v.state case 1: @@ -10698,7 +10763,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GRGameFreeData); i { + switch v := v.(*WGPayerOnGameCount); i { case 0: return &v.state case 1: @@ -10710,7 +10775,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGSyncPlayerSafeBoxCoin); i { + switch v := v.(*GRGameFreeData); i { case 0: return &v.state case 1: @@ -10722,7 +10787,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGClubMessage); i { + switch v := v.(*WGSyncPlayerSafeBoxCoin); i { case 0: return &v.state case 1: @@ -10734,7 +10799,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DWThirdRebateMessage); i { + switch v := v.(*WGClubMessage); i { case 0: return &v.state case 1: @@ -10746,7 +10811,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DWThirdRoundMessage); i { + switch v := v.(*DWThirdRebateMessage); i { case 0: return &v.state case 1: @@ -10758,7 +10823,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WDACKThirdRebateMessage); i { + switch v := v.(*DWThirdRoundMessage); i { case 0: return &v.state case 1: @@ -10770,7 +10835,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWGameStateLog); i { + switch v := v.(*WDACKThirdRebateMessage); i { case 0: return &v.state case 1: @@ -10782,7 +10847,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWGameState); i { + switch v := v.(*GWGameStateLog); i { case 0: return &v.state case 1: @@ -10794,7 +10859,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWGameJackList); i { + switch v := v.(*GWGameState); i { case 0: return &v.state case 1: @@ -10806,7 +10871,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWGameJackCoin); i { + switch v := v.(*GWGameJackList); i { case 0: return &v.state case 1: @@ -10818,7 +10883,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGNiceIdRebind); i { + switch v := v.(*GWGameJackCoin); i { case 0: return &v.state case 1: @@ -10830,7 +10895,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PLAYERWINCOININFO); i { + switch v := v.(*WGNiceIdRebind); i { case 0: return &v.state case 1: @@ -10842,7 +10907,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWPLAYERWINCOIN); i { + switch v := v.(*PLAYERWINCOININFO); i { case 0: return &v.state case 1: @@ -10854,7 +10919,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWPlayerAutoMarkTag); i { + switch v := v.(*GWPLAYERWINCOIN); i { case 0: return &v.state case 1: @@ -10866,7 +10931,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGInviteRobEnterCoinSceneQueue); i { + switch v := v.(*GWPlayerAutoMarkTag); i { case 0: return &v.state case 1: @@ -10878,7 +10943,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGGameForceStart); i { + switch v := v.(*WGInviteRobEnterCoinSceneQueue); i { case 0: return &v.state case 1: @@ -10890,7 +10955,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ProfitControlGameCfg); i { + switch v := v.(*WGGameForceStart); i { case 0: return &v.state case 1: @@ -10902,7 +10967,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ProfitControlPlatformCfg); i { + switch v := v.(*ProfitControlGameCfg); i { case 0: return &v.state case 1: @@ -10914,7 +10979,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGProfitControlCorrect); i { + switch v := v.(*ProfitControlPlatformCfg); i { case 0: return &v.state case 1: @@ -10926,7 +10991,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWChangeSceneEvent); i { + switch v := v.(*WGProfitControlCorrect); i { case 0: return &v.state case 1: @@ -10938,7 +11003,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlayerIParam); i { + switch v := v.(*GWChangeSceneEvent); i { case 0: return &v.state case 1: @@ -10950,7 +11015,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlayerSParam); i { + switch v := v.(*PlayerIParam); i { case 0: return &v.state case 1: @@ -10962,7 +11027,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlayerCParam); i { + switch v := v.(*PlayerSParam); i { case 0: return &v.state case 1: @@ -10974,7 +11039,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlayerMatchCoin); i { + switch v := v.(*PlayerCParam); i { case 0: return &v.state case 1: @@ -10986,7 +11051,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWPlayerMatchBilled); i { + switch v := v.(*PlayerMatchCoin); i { case 0: return &v.state case 1: @@ -10998,7 +11063,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWPlayerMatchGrade); i { + switch v := v.(*GWPlayerMatchBilled); i { case 0: return &v.state case 1: @@ -11010,7 +11075,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGPlayerQuitMatch); i { + switch v := v.(*GWPlayerMatchGrade); i { case 0: return &v.state case 1: @@ -11022,7 +11087,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGSceneMatchBaseChange); i { + switch v := v.(*WGPlayerQuitMatch); i { case 0: return &v.state case 1: @@ -11034,7 +11099,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SSRedirectToPlayer); i { + switch v := v.(*WGSceneMatchBaseChange); i { case 0: return &v.state case 1: @@ -11046,7 +11111,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGInviteMatchRob); i { + switch v := v.(*SSRedirectToPlayer); i { case 0: return &v.state case 1: @@ -11058,7 +11123,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GameInfo); i { + switch v := v.(*WGInviteMatchRob); i { case 0: return &v.state case 1: @@ -11070,7 +11135,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGGameJackpot); i { + switch v := v.(*GameInfo); i { case 0: return &v.state case 1: @@ -11082,7 +11147,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BigWinHistoryInfo); i { + switch v := v.(*WGGameJackpot); i { case 0: return &v.state case 1: @@ -11094,7 +11159,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGPlayerEnterMiniGame); i { + switch v := v.(*BigWinHistoryInfo); i { case 0: return &v.state case 1: @@ -11106,7 +11171,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGPlayerLeaveMiniGame); i { + switch v := v.(*WGPlayerEnterMiniGame); i { case 0: return &v.state case 1: @@ -11118,7 +11183,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGPlayerLeave); i { + switch v := v.(*WGPlayerLeaveMiniGame); i { case 0: return &v.state case 1: @@ -11130,7 +11195,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWPlayerLeaveMiniGame); i { + switch v := v.(*WGPlayerLeave); i { case 0: return &v.state case 1: @@ -11142,7 +11207,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWDestroyMiniScene); i { + switch v := v.(*GWPlayerLeaveMiniGame); i { case 0: return &v.state case 1: @@ -11154,7 +11219,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GRDestroyScene); i { + switch v := v.(*GWDestroyMiniScene); i { case 0: return &v.state case 1: @@ -11166,7 +11231,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RWAccountInvalid); i { + switch v := v.(*GRDestroyScene); i { case 0: return &v.state case 1: @@ -11178,7 +11243,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGDTRoomInfo); i { + switch v := v.(*RWAccountInvalid); i { case 0: return &v.state case 1: @@ -11190,7 +11255,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlayerDTCoin); i { + switch v := v.(*WGDTRoomInfo); i { case 0: return &v.state case 1: @@ -11202,7 +11267,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*EResult); i { + switch v := v.(*PlayerDTCoin); i { case 0: return &v.state case 1: @@ -11214,7 +11279,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWDTRoomInfo); i { + switch v := v.(*EResult); i { case 0: return &v.state case 1: @@ -11226,7 +11291,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGRoomResults); i { + switch v := v.(*GWDTRoomInfo); i { case 0: return &v.state case 1: @@ -11238,7 +11303,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWRoomResults); i { + switch v := v.(*WGRoomResults); i { case 0: return &v.state case 1: @@ -11250,7 +11315,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GWAddSingleAdjust); i { + switch v := v.(*GWRoomResults); i { case 0: return &v.state case 1: @@ -11262,7 +11327,7 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WGSingleAdjust); i { + switch v := v.(*GWAddSingleAdjust); i { case 0: return &v.state case 1: @@ -11274,6 +11339,18 @@ func file_server_proto_init() { } } file_server_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WGSingleAdjust); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_server_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*WbCtrlCfg); i { case 0: return &v.state @@ -11292,7 +11369,7 @@ func file_server_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_server_proto_rawDesc, NumEnums: 2, - NumMessages: 117, + NumMessages: 118, NumExtensions: 0, NumServices: 0, }, diff --git a/protocol/server/server.proto b/protocol/server/server.proto index 11fd06e..fe1e5f2 100644 --- a/protocol/server/server.proto +++ b/protocol/server/server.proto @@ -202,6 +202,12 @@ message GWDestroyScene { message WGGraceDestroyScene { repeated int32 Ids = 1; } + +message ItemParam { + int64 ItemNum = 1; // 物品数量 + int64 ExpireTime = 2; //有效期截止时间 +} + message RebateTask { bool RebateSwitch = 1; //返利开关 repeated string RebateGameCfg = 2; //已打开的游戏配置 gameid+gamemode @@ -225,7 +231,7 @@ message WGPlayerEnter { int32 SnId = 14; bytes SingleAdjust = 15;//单控数据 int32 Pos = 16; - map Items = 17; + map Items = 17; repeated int32 MatchParams = 18;//比赛参数 map RankScore = 19;// 排位积分 } @@ -264,7 +270,7 @@ message GWPlayerLeave{ int32 LostTimes = 12; //输局 int64 TotalConvertibleFlow = 13; //流水 int64 ValidCacheBetTotal = 14; //有效下注缓存 - map Items = 15; + map Items = 15; int32 MatchId = 16;//比赛场id int64 CurIsWin = 17;//本局是否赢 负数:输 0:平局 正数:赢 map MatchRobotGrades = 18;//比赛数据 diff --git a/protocol/tienlen/tienlen.pb.go b/protocol/tienlen/tienlen.pb.go index 8a2acf3..39d78f4 100644 --- a/protocol/tienlen/tienlen.pb.go +++ b/protocol/tienlen/tienlen.pb.go @@ -196,6 +196,7 @@ type TienLenPlayerData struct { ThinkLongCnt int32 `protobuf:"varint,26,opt,name=ThinkLongCnt,proto3" json:"ThinkLongCnt,omitempty"` // 长考次数 Level int64 `protobuf:"varint,27,opt,name=Level,proto3" json:"Level,omitempty"` //玩家等级 Exp int64 `protobuf:"varint,28,opt,name=Exp,proto3" json:"Exp,omitempty"` //玩家经验 + PigBankCoin int64 `protobuf:"varint,29,opt,name=PigBankCoin,proto3" json:"PigBankCoin,omitempty"` //存钱罐金币 } func (x *TienLenPlayerData) Reset() { @@ -426,6 +427,13 @@ func (x *TienLenPlayerData) GetExp() int64 { return 0 } +func (x *TienLenPlayerData) GetPigBankCoin() int64 { + if x != nil { + return x.PigBankCoin + } + return 0 +} + type LastDelCard struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -508,6 +516,7 @@ type SCTienLenRoomInfo struct { SceneAdd int32 `protobuf:"varint,28,opt,name=SceneAdd,proto3" json:"SceneAdd,omitempty"` // 场次加成(百分比) RecordId string `protobuf:"bytes,29,opt,name=RecordId,proto3" json:"RecordId,omitempty"` // 牌局ID OutCardRecord []int32 `protobuf:"varint,30,rep,packed,name=OutCardRecord,proto3" json:"OutCardRecord,omitempty"` //已打出去的牌 + IsOutRecord bool `protobuf:"varint,31,opt,name=IsOutRecord,proto3" json:"IsOutRecord,omitempty"` //是否能用记牌器 } func (x *SCTienLenRoomInfo) Reset() { @@ -731,6 +740,13 @@ func (x *SCTienLenRoomInfo) GetOutCardRecord() []int32 { return nil } +func (x *SCTienLenRoomInfo) GetIsOutRecord() bool { + if x != nil { + return x.IsOutRecord + } + return false +} + //房间状态更新 type SCTienLenRoomState struct { state protoimpl.MessageState @@ -1342,7 +1358,8 @@ type SCTienLenCard struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Cards []int32 `protobuf:"varint,1,rep,packed,name=Cards,proto3" json:"Cards,omitempty"` //手牌 + Cards []int32 `protobuf:"varint,1,rep,packed,name=Cards,proto3" json:"Cards,omitempty"` //手牌 + IsOutRecord bool `protobuf:"varint,2,opt,name=IsOutRecord,proto3" json:"IsOutRecord,omitempty"` // 是否有出牌记录 } func (x *SCTienLenCard) Reset() { @@ -1384,6 +1401,13 @@ func (x *SCTienLenCard) GetCards() []int32 { return nil } +func (x *SCTienLenCard) GetIsOutRecord() bool { + if x != nil { + return x.IsOutRecord + } + return false +} + //测试数据 type SCTienLenCardTest struct { state protoimpl.MessageState @@ -2001,7 +2025,7 @@ var File_tienlen_proto protoreflect.FileDescriptor var file_tienlen_proto_rawDesc = []byte{ 0x0a, 0x0d, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, - 0x07, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x22, 0xaa, 0x06, 0x0a, 0x11, 0x54, 0x69, 0x65, + 0x07, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x22, 0xcc, 0x06, 0x0a, 0x11, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, @@ -2048,281 +2072,287 @@ var file_tienlen_proto_rawDesc = []byte{ 0x1a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x4c, 0x6f, 0x6e, 0x67, 0x43, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x45, 0x78, 0x70, - 0x18, 0x1c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x45, 0x78, 0x70, 0x1a, 0x38, 0x0a, 0x0a, 0x49, - 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x23, 0x0a, 0x0b, 0x4c, 0x61, 0x73, 0x74, 0x44, 0x65, 0x6c, - 0x43, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x22, 0xdb, 0x06, 0x0a, 0x11, 0x53, - 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x6f, - 0x6f, 0x6d, 0x4d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x52, 0x6f, - 0x6f, 0x6d, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x1c, - 0x0a, 0x09, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x12, 0x34, 0x0a, 0x07, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x2e, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, - 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, - 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x43, 0x75, 0x72, 0x4f, 0x70, 0x49, 0x64, 0x78, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x43, 0x75, 0x72, 0x4f, 0x70, 0x49, 0x64, 0x78, - 0x12, 0x38, 0x0a, 0x0c, 0x4c, 0x61, 0x73, 0x74, 0x44, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x73, - 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, - 0x2e, 0x4c, 0x61, 0x73, 0x74, 0x44, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x52, 0x0c, 0x4c, 0x61, - 0x73, 0x74, 0x44, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x4e, 0x75, - 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, - 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x54, 0x6f, - 0x74, 0x61, 0x6c, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0c, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1e, - 0x0a, 0x0a, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x12, 0x1c, - 0x0a, 0x09, 0x42, 0x61, 0x73, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x42, 0x61, 0x73, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x22, 0x0a, 0x0c, - 0x4d, 0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18, 0x12, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0c, 0x4d, 0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, - 0x12, 0x1a, 0x0a, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x6e, 0x69, 0x64, 0x73, 0x18, 0x13, 0x20, 0x03, - 0x28, 0x05, 0x52, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x6e, 0x69, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x49, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x49, - 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x18, - 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x22, 0x0a, 0x0c, - 0x43, 0x75, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18, 0x18, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0c, 0x43, 0x75, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, - 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x65, 0x78, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x18, 0x19, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x4e, 0x65, 0x78, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x12, 0x1a, - 0x0a, 0x08, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x63, - 0x65, 0x6e, 0x65, 0x41, 0x64, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x53, 0x63, - 0x65, 0x6e, 0x65, 0x41, 0x64, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, - 0x49, 0x64, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, - 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x4f, 0x75, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x63, - 0x6f, 0x72, 0x64, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0d, 0x4f, 0x75, 0x74, 0x43, 0x61, - 0x72, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x42, 0x0a, 0x12, 0x53, 0x43, 0x54, 0x69, - 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x14, - 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x03, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x45, 0x0a, 0x11, - 0x43, 0x53, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, - 0x70, 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x4f, 0x70, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x4f, 0x70, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x22, 0x8e, 0x01, 0x0a, 0x11, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, - 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70, 0x43, - 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x4f, 0x70, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x03, 0x52, 0x07, 0x4f, 0x70, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x53, - 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, - 0x33, 0x0a, 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x2e, 0x4f, 0x70, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, - 0x43, 0x6f, 0x64, 0x65, 0x22, 0x46, 0x0a, 0x14, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, - 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x04, - 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x74, 0x69, 0x65, - 0x6e, 0x6c, 0x65, 0x6e, 0x2e, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x28, 0x0a, 0x14, - 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, - 0x65, 0x61, 0x76, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x22, 0x6f, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x49, 0x74, 0x65, - 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, - 0x06, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x49, - 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x05, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0xb3, 0x02, 0x0a, 0x17, 0x54, 0x69, 0x65, 0x6e, - 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, - 0x6c, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x18, 0x0a, - 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, - 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x43, - 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x43, - 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x49, 0x73, 0x57, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x05, 0x49, 0x73, 0x57, 0x69, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x57, 0x69, 0x6e, - 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0c, 0x57, 0x69, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1c, 0x0a, - 0x09, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x09, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x41, - 0x64, 0x64, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x41, - 0x64, 0x64, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x41, 0x64, 0x64, 0x49, 0x74, - 0x65, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x74, 0x69, 0x65, 0x6e, - 0x6c, 0x65, 0x6e, 0x2e, 0x41, 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x41, 0x64, 0x64, - 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x54, 0x69, 0x61, 0x6e, 0x48, 0x75, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x54, 0x69, 0x61, 0x6e, 0x48, 0x75, 0x22, 0x4d, 0x0a, - 0x13, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x42, 0x69, - 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x36, 0x0a, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x2e, 0x54, 0x69, - 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x42, - 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x52, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73, 0x22, 0xc4, 0x01, 0x0a, - 0x18, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x47, - 0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x57, 0x69, 0x6e, - 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x57, 0x69, 0x6e, 0x50, 0x6f, - 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x57, 0x69, 0x6e, 0x50, 0x6f, 0x73, 0x43, 0x6f, 0x69, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x57, 0x69, 0x6e, 0x50, 0x6f, 0x73, 0x43, 0x6f, 0x69, - 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x4c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x4c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x4c, - 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0b, 0x4c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x18, 0x0a, - 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, - 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x4c, 0x6f, 0x73, 0x65, 0x43, - 0x6f, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x4c, 0x6f, 0x73, 0x65, 0x43, - 0x6f, 0x69, 0x6e, 0x22, 0x25, 0x0a, 0x0d, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, - 0x43, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x22, 0x88, 0x02, 0x0a, 0x11, 0x53, - 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x43, 0x61, 0x72, 0x64, 0x54, 0x65, 0x73, 0x74, - 0x12, 0x3e, 0x0a, 0x06, 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x26, 0x2e, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x2e, 0x53, 0x43, 0x54, 0x69, 0x65, - 0x6e, 0x4c, 0x65, 0x6e, 0x43, 0x61, 0x72, 0x64, 0x54, 0x65, 0x73, 0x74, 0x2e, 0x47, 0x72, 0x61, - 0x64, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, - 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x69, 0x6e, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x69, 0x6e, 0x12, 0x1a, - 0x0a, 0x08, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x08, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x6f, 0x75, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x4c, 0x6f, - 0x73, 0x65, 0x52, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x4c, 0x6f, - 0x73, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x39, 0x0a, 0x0b, 0x47, 0x72, - 0x61, 0x64, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x7f, 0x0a, 0x11, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, - 0x65, 0x6e, 0x43, 0x75, 0x72, 0x4f, 0x70, 0x50, 0x6f, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x49, 0x73, 0x4e, 0x65, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x49, 0x73, 0x4e, - 0x65, 0x77, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x45, 0x78, 0x44, 0x65, - 0x6c, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x45, 0x78, 0x44, 0x65, 0x6c, - 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x6c, 0x61, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x04, 0x66, 0x6c, 0x61, 0x67, 0x22, 0x3b, 0x0a, 0x19, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, - 0x4c, 0x65, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, - 0x6e, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, - 0x6e, 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x1a, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, - 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, - 0x4e, 0x75, 0x6d, 0x22, 0xcb, 0x07, 0x0a, 0x0f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, - 0x6e, 0x41, 0x49, 0x44, 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x42, 0x6f, 0x6d, 0x62, 0x5f, - 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x42, 0x6f, 0x6d, 0x62, 0x4e, - 0x75, 0x6d, 0x12, 0x2f, 0x0a, 0x14, 0x43, 0x61, 0x72, 0x64, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x5f, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x71, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x11, 0x43, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x53, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x6f, 0x76, 0x65, - 0x5f, 0x30, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x4c, 0x61, 0x73, 0x74, 0x4d, 0x6f, - 0x76, 0x65, 0x30, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x6f, 0x76, 0x65, - 0x5f, 0x31, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x4c, 0x61, 0x73, 0x74, 0x4d, 0x6f, - 0x76, 0x65, 0x31, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x6f, 0x76, 0x65, - 0x5f, 0x32, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x4c, 0x61, 0x73, 0x74, 0x4d, 0x6f, - 0x76, 0x65, 0x32, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x6f, 0x76, 0x65, - 0x5f, 0x33, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x4c, 0x61, 0x73, 0x74, 0x4d, 0x6f, - 0x76, 0x65, 0x33, 0x12, 0x27, 0x0a, 0x10, 0x4e, 0x75, 0x6d, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, - 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x30, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x4e, - 0x75, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x30, 0x12, 0x27, 0x0a, 0x10, - 0x4e, 0x75, 0x6d, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x31, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x4e, 0x75, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x73, - 0x4c, 0x65, 0x66, 0x74, 0x31, 0x12, 0x27, 0x0a, 0x10, 0x4e, 0x75, 0x6d, 0x5f, 0x63, 0x61, 0x72, - 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x32, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0d, 0x4e, 0x75, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x32, 0x12, 0x27, - 0x0a, 0x10, 0x4e, 0x75, 0x6d, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, - 0x5f, 0x33, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x4e, 0x75, 0x6d, 0x43, 0x61, 0x72, - 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x33, 0x12, 0x28, 0x0a, 0x10, 0x4f, 0x74, 0x68, 0x65, 0x72, - 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0e, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x48, 0x61, 0x6e, 0x64, 0x43, 0x61, 0x72, 0x64, - 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, - 0x73, 0x5f, 0x30, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x30, 0x12, 0x24, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x31, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x31, 0x12, 0x24, 0x0a, - 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x32, 0x18, - 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x61, 0x72, - 0x64, 0x73, 0x32, 0x12, 0x24, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x63, 0x61, - 0x72, 0x64, 0x73, 0x5f, 0x33, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x33, 0x12, 0x2a, 0x0a, 0x11, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x10, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x48, 0x61, 0x6e, 0x64, - 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, - 0x0a, 0x0d, 0x49, 0x73, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x59, 0x75, 0x6c, 0x65, 0x18, - 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x49, 0x73, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, - 0x59, 0x75, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x49, 0x73, 0x46, 0x69, 0x72, 0x73, 0x74, 0x48, - 0x61, 0x6e, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x49, 0x73, 0x46, 0x69, 0x72, - 0x73, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x43, 0x61, 0x72, 0x64, 0x73, 0x5f, - 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x30, 0x18, 0x14, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x43, 0x61, - 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x30, 0x12, 0x20, 0x0a, 0x0c, 0x43, 0x61, 0x72, 0x64, - 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x31, 0x18, 0x15, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, - 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x31, 0x12, 0x20, 0x0a, 0x0c, 0x43, 0x61, - 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x32, 0x18, 0x16, 0x20, 0x03, 0x28, 0x05, - 0x52, 0x0a, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x32, 0x12, 0x20, 0x0a, 0x0c, - 0x43, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x33, 0x18, 0x17, 0x20, 0x03, - 0x28, 0x05, 0x52, 0x0a, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x33, 0x12, 0x19, - 0x0a, 0x08, 0x4c, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x49, 0x73, 0x45, - 0x6e, 0x64, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x49, 0x73, 0x45, 0x6e, 0x64, 0x12, - 0x1a, 0x0a, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x6e, 0x69, 0x64, 0x73, 0x18, 0x1a, 0x20, 0x03, 0x28, - 0x05, 0x52, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x6e, 0x69, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x49, - 0x73, 0x57, 0x69, 0x6e, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x49, 0x73, 0x57, 0x69, - 0x6e, 0x22, 0x27, 0x0a, 0x13, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x46, 0x69, - 0x72, 0x73, 0x74, 0x4f, 0x70, 0x50, 0x6f, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x22, 0x41, 0x0a, 0x1b, 0x53, 0x43, - 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x68, 0x69, - 0x6e, 0x6b, 0x4c, 0x6f, 0x6e, 0x67, 0x43, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x54, 0x68, 0x69, - 0x6e, 0x6b, 0x4c, 0x6f, 0x6e, 0x67, 0x43, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0c, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x4c, 0x6f, 0x6e, 0x67, 0x43, 0x6e, 0x74, 0x2a, 0x3e, 0x0a, - 0x0c, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, - 0x0b, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x53, 0x75, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x0e, - 0x0a, 0x0a, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x01, 0x12, 0x0d, - 0x0a, 0x09, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x48, 0x69, 0x6e, 0x74, 0x10, 0x02, 0x2a, 0xb6, 0x04, - 0x0a, 0x0f, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, - 0x44, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x54, 0x69, 0x65, 0x6e, - 0x4c, 0x65, 0x6e, 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, - 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x52, 0x6f, 0x6f, - 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xfa, 0x29, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, - 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x52, 0x6f, 0x6f, 0x6d, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xfb, 0x29, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, - 0x45, 0x54, 0x5f, 0x43, 0x53, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x4f, 0x70, 0x10, 0xfc, 0x29, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, - 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x4f, 0x70, 0x10, 0xfd, 0x29, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, - 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0xfe, 0x29, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, - 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x10, 0xff, 0x29, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, - 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x43, 0x61, - 0x72, 0x64, 0x10, 0x80, 0x2a, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, - 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, - 0x6c, 0x65, 0x64, 0x10, 0x81, 0x2a, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, - 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x43, 0x75, 0x72, 0x4f, 0x70, 0x50, - 0x6f, 0x73, 0x10, 0x82, 0x2a, 0x12, 0x24, 0x0a, 0x1f, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, - 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x47, 0x61, - 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0x83, 0x2a, 0x12, 0x25, 0x0a, 0x20, 0x50, - 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x10, - 0x84, 0x2a, 0x12, 0x26, 0x0a, 0x21, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, + 0x18, 0x1c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x45, 0x78, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x50, + 0x69, 0x67, 0x42, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0b, 0x50, 0x69, 0x67, 0x42, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x69, 0x6e, 0x1a, 0x38, 0x0a, + 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x23, 0x0a, 0x0b, 0x4c, 0x61, 0x73, 0x74, 0x44, + 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x22, 0xfd, 0x06, 0x0a, + 0x11, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, + 0x52, 0x6f, 0x6f, 0x6d, 0x4d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x52, 0x6f, 0x6f, 0x6d, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x12, 0x1c, 0x0a, 0x09, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x12, 0x14, + 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x12, 0x34, + 0x0a, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1a, 0x2e, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x2e, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, + 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, + 0x4e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x65, + 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x43, 0x75, 0x72, 0x4f, 0x70, 0x49, + 0x64, 0x78, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x43, 0x75, 0x72, 0x4f, 0x70, 0x49, + 0x64, 0x78, 0x12, 0x38, 0x0a, 0x0c, 0x4c, 0x61, 0x73, 0x74, 0x44, 0x65, 0x6c, 0x43, 0x61, 0x72, + 0x64, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x69, 0x65, 0x6e, 0x6c, + 0x65, 0x6e, 0x2e, 0x4c, 0x61, 0x73, 0x74, 0x44, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x52, 0x0c, + 0x4c, 0x61, 0x73, 0x74, 0x44, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, + 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, + 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0c, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, + 0x12, 0x1e, 0x0a, 0x0a, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x10, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, + 0x12, 0x1c, 0x0a, 0x09, 0x42, 0x61, 0x73, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x11, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x42, 0x61, 0x73, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x22, + 0x0a, 0x0c, 0x4d, 0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18, 0x12, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x4d, 0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, + 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x6e, 0x69, 0x64, 0x73, 0x18, 0x13, + 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x6e, 0x69, 0x64, 0x73, 0x12, 0x18, + 0x0a, 0x07, 0x49, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x49, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x52, 0x6f, 0x75, 0x6e, + 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x22, + 0x0a, 0x0c, 0x43, 0x75, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18, 0x18, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x43, 0x75, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, + 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x65, 0x78, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x18, 0x19, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4e, 0x65, 0x78, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x12, 0x20, + 0x0a, 0x0b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x18, 0x1a, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, + 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x1b, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x53, 0x63, 0x65, 0x6e, 0x65, 0x41, 0x64, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x53, 0x63, 0x65, 0x6e, 0x65, 0x41, 0x64, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x65, 0x63, 0x6f, + 0x72, 0x64, 0x49, 0x64, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x52, 0x65, 0x63, 0x6f, + 0x72, 0x64, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x4f, 0x75, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, + 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0d, 0x4f, 0x75, 0x74, + 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x49, 0x73, + 0x4f, 0x75, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0b, 0x49, 0x73, 0x4f, 0x75, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x42, 0x0a, 0x12, + 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x22, 0x45, 0x0a, 0x11, 0x43, 0x53, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x4f, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x4f, 0x70, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, + 0x4f, 0x70, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x22, 0x8e, 0x01, 0x0a, 0x11, 0x53, 0x43, 0x54, 0x69, + 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x70, 0x12, 0x16, 0x0a, + 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4f, + 0x70, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x4f, 0x70, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x4f, 0x70, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, + 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, + 0x6e, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, + 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x4f, + 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x46, 0x0a, 0x14, 0x53, 0x43, 0x54, 0x69, + 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, + 0x12, 0x2e, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x2e, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, + 0x22, 0x28, 0x0a, 0x14, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x22, 0x6f, 0x0a, 0x07, 0x41, 0x64, + 0x64, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x06, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x64, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x41, 0x64, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0xb3, 0x02, 0x0a, 0x17, + 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x61, 0x6d, + 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x43, + 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, + 0x73, 0x12, 0x18, 0x0a, 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x47, + 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x47, + 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x49, 0x73, 0x57, 0x69, 0x6e, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x49, 0x73, 0x57, 0x69, 0x6e, 0x12, 0x22, 0x0a, + 0x0c, 0x57, 0x69, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0c, 0x57, 0x69, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x41, 0x64, 0x64, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x08, 0x41, 0x64, 0x64, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x41, + 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, + 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x2e, 0x41, 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x52, + 0x08, 0x41, 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x54, 0x69, 0x61, + 0x6e, 0x48, 0x75, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x54, 0x69, 0x61, 0x6e, 0x48, + 0x75, 0x22, 0x4d, 0x0a, 0x13, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x47, 0x61, + 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x36, 0x0a, 0x05, 0x44, 0x61, 0x74, 0x61, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, + 0x6e, 0x2e, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, + 0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x52, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73, + 0x22, 0xc4, 0x01, 0x0a, 0x18, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x53, 0x6d, + 0x61, 0x6c, 0x6c, 0x47, 0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x57, 0x69, 0x6e, 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x57, + 0x69, 0x6e, 0x50, 0x6f, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x57, 0x69, 0x6e, 0x50, 0x6f, 0x73, 0x43, + 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x57, 0x69, 0x6e, 0x50, 0x6f, + 0x73, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x4c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x12, + 0x20, 0x0a, 0x0b, 0x4c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x4c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x43, 0x6f, 0x69, + 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x4c, + 0x6f, 0x73, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x4c, + 0x6f, 0x73, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x47, 0x0a, 0x0d, 0x53, 0x43, 0x54, 0x69, 0x65, + 0x6e, 0x4c, 0x65, 0x6e, 0x43, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x20, + 0x0a, 0x0b, 0x49, 0x73, 0x4f, 0x75, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0b, 0x49, 0x73, 0x4f, 0x75, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, + 0x22, 0x88, 0x02, 0x0a, 0x11, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x43, 0x61, + 0x72, 0x64, 0x54, 0x65, 0x73, 0x74, 0x12, 0x3e, 0x0a, 0x06, 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, + 0x2e, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x43, 0x61, 0x72, 0x64, 0x54, 0x65, + 0x73, 0x74, 0x2e, 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, + 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x54, 0x6f, + 0x74, 0x61, 0x6c, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x54, 0x6f, 0x74, + 0x61, 0x6c, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x6f, 0x75, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x6f, 0x75, 0x74, + 0x12, 0x1a, 0x0a, 0x08, 0x4c, 0x6f, 0x73, 0x65, 0x52, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x01, 0x52, 0x08, 0x4c, 0x6f, 0x73, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x44, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, + 0x1a, 0x39, 0x0a, 0x0b, 0x47, 0x72, 0x61, 0x64, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, + 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x7f, 0x0a, 0x11, 0x53, + 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x43, 0x75, 0x72, 0x4f, 0x70, 0x50, 0x6f, 0x73, + 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, + 0x6f, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x49, 0x73, 0x4e, 0x65, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x05, 0x49, 0x73, 0x4e, 0x65, 0x77, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, + 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x18, + 0x0a, 0x07, 0x45, 0x78, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x45, 0x78, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x6c, 0x61, 0x67, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x66, 0x6c, 0x61, 0x67, 0x22, 0x3b, 0x0a, 0x19, + 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, + 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x4d, 0x61, 0x73, + 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4d, + 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x1a, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x75, 0x64, 0x69, - 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x10, 0x85, 0x2a, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, - 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x41, 0x49, - 0x10, 0x86, 0x2a, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, - 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x46, 0x69, 0x72, 0x73, 0x74, 0x4f, 0x70, 0x50, 0x6f, - 0x73, 0x10, 0x87, 0x2a, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, - 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x43, 0x61, 0x72, 0x64, 0x54, 0x65, 0x73, 0x74, - 0x10, 0x88, 0x2a, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, - 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x4c, 0x6f, 0x6e, 0x67, - 0x43, 0x6e, 0x74, 0x10, 0x89, 0x2a, 0x42, 0x27, 0x5a, 0x25, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x2e, - 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x61, 0x6d, 0x65, 0x2f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x74, 0x69, 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x62, - 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x65, + 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x41, 0x75, + 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x22, 0xcb, 0x07, 0x0a, 0x0f, 0x53, 0x43, + 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x41, 0x49, 0x44, 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, + 0x08, 0x42, 0x6f, 0x6d, 0x62, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x42, 0x6f, 0x6d, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x2f, 0x0a, 0x14, 0x43, 0x61, 0x72, 0x64, + 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x71, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x43, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x79, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, + 0x74, 0x5f, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x30, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x4c, 0x61, 0x73, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x30, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, + 0x74, 0x5f, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x31, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x4c, 0x61, 0x73, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x31, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, + 0x74, 0x5f, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x32, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x4c, 0x61, 0x73, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x32, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, + 0x74, 0x5f, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x33, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x4c, 0x61, 0x73, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x33, 0x12, 0x27, 0x0a, 0x10, 0x4e, 0x75, 0x6d, + 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x30, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0d, 0x4e, 0x75, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, + 0x74, 0x30, 0x12, 0x27, 0x0a, 0x10, 0x4e, 0x75, 0x6d, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, + 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x31, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x4e, 0x75, + 0x6d, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x31, 0x12, 0x27, 0x0a, 0x10, 0x4e, + 0x75, 0x6d, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x32, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x4e, 0x75, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, + 0x65, 0x66, 0x74, 0x32, 0x12, 0x27, 0x0a, 0x10, 0x4e, 0x75, 0x6d, 0x5f, 0x63, 0x61, 0x72, 0x64, + 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x33, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, + 0x4e, 0x75, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x33, 0x12, 0x28, 0x0a, + 0x10, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, + 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x48, 0x61, + 0x6e, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x30, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x30, 0x12, 0x24, 0x0a, + 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x31, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x61, 0x72, + 0x64, 0x73, 0x31, 0x12, 0x24, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x63, 0x61, + 0x72, 0x64, 0x73, 0x5f, 0x32, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x32, 0x12, 0x24, 0x0a, 0x0e, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x33, 0x18, 0x0f, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x33, 0x12, + 0x2a, 0x0a, 0x11, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x5f, 0x63, + 0x61, 0x72, 0x64, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x48, 0x61, 0x6e, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x49, 0x73, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, + 0x6e, 0x59, 0x75, 0x6c, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x49, 0x73, 0x54, + 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x59, 0x75, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x49, 0x73, + 0x46, 0x69, 0x72, 0x73, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0b, 0x49, 0x73, 0x46, 0x69, 0x72, 0x73, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x12, 0x20, 0x0a, 0x0c, + 0x43, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x30, 0x18, 0x14, 0x20, 0x03, + 0x28, 0x05, 0x52, 0x0a, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x30, 0x12, 0x20, + 0x0a, 0x0c, 0x43, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x31, 0x18, 0x15, + 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x31, + 0x12, 0x20, 0x0a, 0x0c, 0x43, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x32, + 0x18, 0x16, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, + 0x74, 0x32, 0x12, 0x20, 0x0a, 0x0c, 0x43, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, + 0x5f, 0x33, 0x18, 0x17, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, + 0x65, 0x66, 0x74, 0x33, 0x12, 0x19, 0x0a, 0x08, 0x4c, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x73, + 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x12, + 0x14, 0x0a, 0x05, 0x49, 0x73, 0x45, 0x6e, 0x64, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, + 0x49, 0x73, 0x45, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x6e, 0x69, 0x64, + 0x73, 0x18, 0x1a, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x6e, 0x69, 0x64, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x49, 0x73, 0x57, 0x69, 0x6e, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x05, 0x49, 0x73, 0x57, 0x69, 0x6e, 0x22, 0x27, 0x0a, 0x13, 0x53, 0x43, 0x54, 0x69, 0x65, + 0x6e, 0x4c, 0x65, 0x6e, 0x46, 0x69, 0x72, 0x73, 0x74, 0x4f, 0x70, 0x50, 0x6f, 0x73, 0x12, 0x10, + 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, + 0x22, 0x41, 0x0a, 0x1b, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x4c, 0x6f, 0x6e, 0x67, 0x43, 0x6e, 0x74, 0x12, + 0x22, 0x0a, 0x0c, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x4c, 0x6f, 0x6e, 0x67, 0x43, 0x6e, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x4c, 0x6f, 0x6e, 0x67, + 0x43, 0x6e, 0x74, 0x2a, 0x3e, 0x0a, 0x0c, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, + 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x53, 0x75, 0x63, 0x65, + 0x73, 0x73, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x48, 0x69, 0x6e, + 0x74, 0x10, 0x02, 0x2a, 0xb6, 0x04, 0x0a, 0x0f, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x50, + 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, + 0x54, 0x5f, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x00, 0x12, + 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, + 0x4c, 0x65, 0x6e, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xfa, 0x29, 0x12, 0x1e, + 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, + 0x65, 0x6e, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xfb, 0x29, 0x12, 0x1d, + 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x54, 0x69, 0x65, 0x6e, 0x4c, + 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x70, 0x10, 0xfc, 0x29, 0x12, 0x1d, 0x0a, + 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, + 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x70, 0x10, 0xfd, 0x29, 0x12, 0x20, 0x0a, 0x1b, + 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0xfe, 0x29, 0x12, 0x20, + 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, + 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x10, 0xff, 0x29, + 0x12, 0x19, 0x0a, 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, + 0x6e, 0x4c, 0x65, 0x6e, 0x43, 0x61, 0x72, 0x64, 0x10, 0x80, 0x2a, 0x12, 0x1f, 0x0a, 0x1a, 0x50, + 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x47, + 0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0x81, 0x2a, 0x12, 0x1d, 0x0a, 0x18, + 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, + 0x43, 0x75, 0x72, 0x4f, 0x70, 0x50, 0x6f, 0x73, 0x10, 0x82, 0x2a, 0x12, 0x24, 0x0a, 0x1f, 0x50, + 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x53, + 0x6d, 0x61, 0x6c, 0x6c, 0x47, 0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0x83, + 0x2a, 0x12, 0x25, 0x0a, 0x20, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, + 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, + 0x72, 0x53, 0x6e, 0x69, 0x64, 0x10, 0x84, 0x2a, 0x12, 0x26, 0x0a, 0x21, 0x50, 0x41, 0x43, 0x4b, + 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x10, 0x85, 0x2a, + 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, + 0x6e, 0x4c, 0x65, 0x6e, 0x41, 0x49, 0x10, 0x86, 0x2a, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x46, 0x69, 0x72, + 0x73, 0x74, 0x4f, 0x70, 0x50, 0x6f, 0x73, 0x10, 0x87, 0x2a, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x43, 0x61, + 0x72, 0x64, 0x54, 0x65, 0x73, 0x74, 0x10, 0x88, 0x2a, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x54, 0x69, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x54, 0x68, 0x69, + 0x6e, 0x6b, 0x4c, 0x6f, 0x6e, 0x67, 0x43, 0x6e, 0x74, 0x10, 0x89, 0x2a, 0x42, 0x27, 0x5a, 0x25, + 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, + 0x67, 0x61, 0x6d, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x74, 0x69, + 0x65, 0x6e, 0x6c, 0x65, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/protocol/tienlen/tienlen.proto b/protocol/tienlen/tienlen.proto index e8cfed8..ecad4c1 100644 --- a/protocol/tienlen/tienlen.proto +++ b/protocol/tienlen/tienlen.proto @@ -59,8 +59,9 @@ message TienLenPlayerData { int32 CopyRoleId = 24;//比赛场机器人假角色 int64 RankScore = 25; // 排位积分 int32 ThinkLongCnt = 26; // 长考次数 - int64 Level = 27; //玩家等级 - int64 Exp = 28; //玩家经验 + int64 Level = 27; //玩家等级 + int64 Exp = 28; //玩家经验 + int64 PigBankCoin = 29; //存钱罐金币 } message LastDelCard { @@ -99,7 +100,7 @@ message SCTienLenRoomInfo { string RecordId = 29; // 牌局ID repeated int32 OutCardRecord = 30 ;//已打出去的牌 - + bool IsOutRecord = 31;//是否能用记牌器 } //房间状态更新 @@ -168,6 +169,7 @@ message SCTienLenSmallGameBilled { //发牌 message SCTienLenCard { repeated int32 Cards = 1; //手牌 + bool IsOutRecord = 2; // 是否有出牌记录 } //测试数据 diff --git a/protocol/welfare/welfare.pb.go b/protocol/welfare/welfare.pb.go index 36ac51a..54ab5f6 100644 --- a/protocol/welfare/welfare.pb.go +++ b/protocol/welfare/welfare.pb.go @@ -24,40 +24,46 @@ const ( type OpResultCode int32 const ( - OpResultCode_OPRC_Sucess OpResultCode = 0 //成功 - OpResultCode_OPRC_Error OpResultCode = 1 //失败 - OpResultCode_OPRC_NoTimes OpResultCode = 2 //没有领取次数 - OpResultCode_OPRC_CoinTooMore OpResultCode = 3 // 金币过多不符合领取 - OpResultCode_OPRC_ErrCoin OpResultCode = 4 // 钻石不足 - OpResultCode_OPRC_AlreadyBind OpResultCode = 5 // 已经绑定过邀请人 - OpResultCode_OPRC_BindSelf OpResultCode = 6 // 邀请人不能是自己 - OpResultCode_OPRC_MyInvite OpResultCode = 7 // 邀请人不能是我邀请的人 - OpResultCode_OPRC_NotExist OpResultCode = 8 // 邀请人不存在 + OpResultCode_OPRC_Sucess OpResultCode = 0 //成功 + OpResultCode_OPRC_Error OpResultCode = 1 //失败 + OpResultCode_OPRC_NoTimes OpResultCode = 2 //没有领取次数 + OpResultCode_OPRC_CoinTooMore OpResultCode = 3 // 金币过多不符合领取 + OpResultCode_OPRC_ErrCoin OpResultCode = 4 // 钻石不足 + OpResultCode_OPRC_AlreadyBind OpResultCode = 5 // 已经绑定过邀请人 + OpResultCode_OPRC_BindSelf OpResultCode = 6 // 邀请人不能是自己 + OpResultCode_OPRC_MyInvite OpResultCode = 7 // 邀请人不能是我邀请的人 + OpResultCode_OPRC_NotExist OpResultCode = 8 // 邀请人不存在 + OpResultCode_OPRC_DiamondLess OpResultCode = 9 // 钻石不足 + OpResultCode_OPRC_PigbankNotFull OpResultCode = 10 // 存钱罐未满 ) // Enum value maps for OpResultCode. var ( OpResultCode_name = map[int32]string{ - 0: "OPRC_Sucess", - 1: "OPRC_Error", - 2: "OPRC_NoTimes", - 3: "OPRC_CoinTooMore", - 4: "OPRC_ErrCoin", - 5: "OPRC_AlreadyBind", - 6: "OPRC_BindSelf", - 7: "OPRC_MyInvite", - 8: "OPRC_NotExist", + 0: "OPRC_Sucess", + 1: "OPRC_Error", + 2: "OPRC_NoTimes", + 3: "OPRC_CoinTooMore", + 4: "OPRC_ErrCoin", + 5: "OPRC_AlreadyBind", + 6: "OPRC_BindSelf", + 7: "OPRC_MyInvite", + 8: "OPRC_NotExist", + 9: "OPRC_DiamondLess", + 10: "OPRC_PigbankNotFull", } OpResultCode_value = map[string]int32{ - "OPRC_Sucess": 0, - "OPRC_Error": 1, - "OPRC_NoTimes": 2, - "OPRC_CoinTooMore": 3, - "OPRC_ErrCoin": 4, - "OPRC_AlreadyBind": 5, - "OPRC_BindSelf": 6, - "OPRC_MyInvite": 7, - "OPRC_NotExist": 8, + "OPRC_Sucess": 0, + "OPRC_Error": 1, + "OPRC_NoTimes": 2, + "OPRC_CoinTooMore": 3, + "OPRC_ErrCoin": 4, + "OPRC_AlreadyBind": 5, + "OPRC_BindSelf": 6, + "OPRC_MyInvite": 7, + "OPRC_NotExist": 8, + "OPRC_DiamondLess": 9, + "OPRC_PigbankNotFull": 10, } ) @@ -117,10 +123,14 @@ const ( SPacketID_PACKET_CSWelfRelief SPacketID = 2900 //救济金信息 SPacketID_PACKET_SCWelfRelief SPacketID = 2901 //救济金信息 // 邀请活动 - SPacketID_PACKET_CSInviteInfo SPacketID = 2902 //邀请信息 - SPacketID_PACKET_SCInviteInfo SPacketID = 2903 //邀请信息 - SPacketID_PACKET_CSBindInvite SPacketID = 2904 //绑定邀请人 - SPacketID_PACKET_SCBindInvite SPacketID = 2905 //绑定邀请人 + SPacketID_PACKET_CSInviteInfo SPacketID = 2902 //邀请信息 + SPacketID_PACKET_SCInviteInfo SPacketID = 2903 //邀请信息 + SPacketID_PACKET_CSBindInvite SPacketID = 2904 //绑定邀请人 + SPacketID_PACKET_SCBindInvite SPacketID = 2905 //绑定邀请人 + SPacketID_PACKET_CSPigbankGetInfo SPacketID = 2910 // 存钱罐信息获取 + SPacketID_PACKET_SCPigbankGetInfo SPacketID = 2911 // 存钱罐信息获取 + SPacketID_PACKET_CSPigbankTakeCoin SPacketID = 2912 // 存钱罐领取金币 + SPacketID_PACKET_SCPigbankTakeCoin SPacketID = 2913 // 存钱罐领取金币 ) // Enum value maps for SPacketID. @@ -153,6 +163,10 @@ var ( 2903: "PACKET_SCInviteInfo", 2904: "PACKET_CSBindInvite", 2905: "PACKET_SCBindInvite", + 2910: "PACKET_CSPigbankGetInfo", + 2911: "PACKET_SCPigbankGetInfo", + 2912: "PACKET_CSPigbankTakeCoin", + 2913: "PACKET_SCPigbankTakeCoin", } SPacketID_value = map[string]int32{ "PACKET_SHOP_ZERO": 0, @@ -182,6 +196,10 @@ var ( "PACKET_SCInviteInfo": 2903, "PACKET_CSBindInvite": 2904, "PACKET_SCBindInvite": 2905, + "PACKET_CSPigbankGetInfo": 2910, + "PACKET_SCPigbankGetInfo": 2911, + "PACKET_CSPigbankTakeCoin": 2912, + "PACKET_SCPigbankTakeCoin": 2913, } ) @@ -2120,6 +2138,248 @@ func (x *SCBindInvite) GetOpRetCode() OpResultCode { return OpResultCode_OPRC_Sucess } +// 存钱罐信息 +//PACKET_CSPigbankGetInfo +type CSPigbankGetInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *CSPigbankGetInfo) Reset() { + *x = CSPigbankGetInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_welfare_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CSPigbankGetInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CSPigbankGetInfo) ProtoMessage() {} + +func (x *CSPigbankGetInfo) ProtoReflect() protoreflect.Message { + mi := &file_welfare_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CSPigbankGetInfo.ProtoReflect.Descriptor instead. +func (*CSPigbankGetInfo) Descriptor() ([]byte, []int) { + return file_welfare_proto_rawDescGZIP(), []int{32} +} + +// 存钱罐信息 +//PACKET_SCPigbankGetInfo +type SCPigbankGetInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OpRetCode OpResultCode `protobuf:"varint,1,opt,name=OpRetCode,proto3,enum=welfare.OpResultCode" json:"OpRetCode,omitempty"` //结果 + BankCoin int64 `protobuf:"varint,2,opt,name=BankCoin,proto3" json:"BankCoin,omitempty"` // 当前已存金额 + TakeTimes int32 `protobuf:"varint,3,opt,name=TakeTimes,proto3" json:"TakeTimes,omitempty"` // 领取次数 + CostDiamond int64 `protobuf:"varint,4,opt,name=CostDiamond,proto3" json:"CostDiamond,omitempty"` // 耗费钻石 + BankMaxCoin int64 `protobuf:"varint,5,opt,name=BankMaxCoin,proto3" json:"BankMaxCoin,omitempty"` // 存钱罐最储存值 +} + +func (x *SCPigbankGetInfo) Reset() { + *x = SCPigbankGetInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_welfare_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SCPigbankGetInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SCPigbankGetInfo) ProtoMessage() {} + +func (x *SCPigbankGetInfo) ProtoReflect() protoreflect.Message { + mi := &file_welfare_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SCPigbankGetInfo.ProtoReflect.Descriptor instead. +func (*SCPigbankGetInfo) Descriptor() ([]byte, []int) { + return file_welfare_proto_rawDescGZIP(), []int{33} +} + +func (x *SCPigbankGetInfo) GetOpRetCode() OpResultCode { + if x != nil { + return x.OpRetCode + } + return OpResultCode_OPRC_Sucess +} + +func (x *SCPigbankGetInfo) GetBankCoin() int64 { + if x != nil { + return x.BankCoin + } + return 0 +} + +func (x *SCPigbankGetInfo) GetTakeTimes() int32 { + if x != nil { + return x.TakeTimes + } + return 0 +} + +func (x *SCPigbankGetInfo) GetCostDiamond() int64 { + if x != nil { + return x.CostDiamond + } + return 0 +} + +func (x *SCPigbankGetInfo) GetBankMaxCoin() int64 { + if x != nil { + return x.BankMaxCoin + } + return 0 +} + +// 存钱罐领取金币 +//PACKET_CSPigbankTakeCoin +type CSPigbankTakeCoin struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *CSPigbankTakeCoin) Reset() { + *x = CSPigbankTakeCoin{} + if protoimpl.UnsafeEnabled { + mi := &file_welfare_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CSPigbankTakeCoin) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CSPigbankTakeCoin) ProtoMessage() {} + +func (x *CSPigbankTakeCoin) ProtoReflect() protoreflect.Message { + mi := &file_welfare_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CSPigbankTakeCoin.ProtoReflect.Descriptor instead. +func (*CSPigbankTakeCoin) Descriptor() ([]byte, []int) { + return file_welfare_proto_rawDescGZIP(), []int{34} +} + +// 存钱罐领取金币 +//PACKET_SCPigbankTakeCoin +type SCPigbankTakeCoin struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OpRetCode OpResultCode `protobuf:"varint,1,opt,name=OpRetCode,proto3,enum=welfare.OpResultCode" json:"OpRetCode,omitempty"` // 结果 + TakeCoinNum int64 `protobuf:"varint,2,opt,name=TakeCoinNum,proto3" json:"TakeCoinNum,omitempty"` // 领取金币数量 + TakeTimes int32 `protobuf:"varint,3,opt,name=TakeTimes,proto3" json:"TakeTimes,omitempty"` // 领取次数 + CostDiamond int64 `protobuf:"varint,4,opt,name=CostDiamond,proto3" json:"CostDiamond,omitempty"` // 耗费钻石 + BankMaxCoin int64 `protobuf:"varint,5,opt,name=BankMaxCoin,proto3" json:"BankMaxCoin,omitempty"` // 存钱罐最储存值 +} + +func (x *SCPigbankTakeCoin) Reset() { + *x = SCPigbankTakeCoin{} + if protoimpl.UnsafeEnabled { + mi := &file_welfare_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SCPigbankTakeCoin) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SCPigbankTakeCoin) ProtoMessage() {} + +func (x *SCPigbankTakeCoin) ProtoReflect() protoreflect.Message { + mi := &file_welfare_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SCPigbankTakeCoin.ProtoReflect.Descriptor instead. +func (*SCPigbankTakeCoin) Descriptor() ([]byte, []int) { + return file_welfare_proto_rawDescGZIP(), []int{35} +} + +func (x *SCPigbankTakeCoin) GetOpRetCode() OpResultCode { + if x != nil { + return x.OpRetCode + } + return OpResultCode_OPRC_Sucess +} + +func (x *SCPigbankTakeCoin) GetTakeCoinNum() int64 { + if x != nil { + return x.TakeCoinNum + } + return 0 +} + +func (x *SCPigbankTakeCoin) GetTakeTimes() int32 { + if x != nil { + return x.TakeTimes + } + return 0 +} + +func (x *SCPigbankTakeCoin) GetCostDiamond() int64 { + if x != nil { + return x.CostDiamond + } + return 0 +} + +func (x *SCPigbankTakeCoin) GetBankMaxCoin() int64 { + if x != nil { + return x.BankMaxCoin + } + return 0 +} + var File_welfare_proto protoreflect.FileDescriptor var file_welfare_proto_rawDesc = []byte{ @@ -2316,7 +2576,35 @@ var file_welfare_proto_rawDesc = []byte{ 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x77, 0x65, 0x6c, 0x66, 0x61, 0x72, 0x65, 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f, - 0x64, 0x65, 0x2a, 0xb8, 0x01, 0x0a, 0x0c, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, + 0x64, 0x65, 0x22, 0x12, 0x0a, 0x10, 0x43, 0x53, 0x50, 0x69, 0x67, 0x62, 0x61, 0x6e, 0x6b, 0x47, + 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xc5, 0x01, 0x0a, 0x10, 0x53, 0x43, 0x50, 0x69, 0x67, + 0x62, 0x61, 0x6e, 0x6b, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x33, 0x0a, 0x09, 0x4f, + 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, + 0x2e, 0x77, 0x65, 0x6c, 0x66, 0x61, 0x72, 0x65, 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, + 0x12, 0x1a, 0x0a, 0x08, 0x42, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x08, 0x42, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x09, + 0x54, 0x61, 0x6b, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x54, 0x61, 0x6b, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x43, 0x6f, + 0x73, 0x74, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0b, 0x43, 0x6f, 0x73, 0x74, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x12, 0x20, 0x0a, 0x0b, + 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0b, 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x13, + 0x0a, 0x11, 0x43, 0x53, 0x50, 0x69, 0x67, 0x62, 0x61, 0x6e, 0x6b, 0x54, 0x61, 0x6b, 0x65, 0x43, + 0x6f, 0x69, 0x6e, 0x22, 0xcc, 0x01, 0x0a, 0x11, 0x53, 0x43, 0x50, 0x69, 0x67, 0x62, 0x61, 0x6e, + 0x6b, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x33, 0x0a, 0x09, 0x4f, 0x70, 0x52, + 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x77, + 0x65, 0x6c, 0x66, 0x61, 0x72, 0x65, 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, + 0x6f, 0x64, 0x65, 0x52, 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0b, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x4e, 0x75, 0x6d, + 0x12, 0x1c, 0x0a, 0x09, 0x54, 0x61, 0x6b, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x54, 0x61, 0x6b, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x20, + 0x0a, 0x0b, 0x43, 0x6f, 0x73, 0x74, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0b, 0x43, 0x6f, 0x73, 0x74, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, + 0x12, 0x20, 0x0a, 0x0b, 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x69, 0x6e, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x61, 0x78, 0x43, 0x6f, + 0x69, 0x6e, 0x2a, 0xe7, 0x01, 0x0a, 0x0c, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x53, 0x75, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x4e, 0x6f, 0x54, @@ -2327,64 +2615,74 @@ var file_welfare_proto_rawDesc = []byte{ 0x6e, 0x64, 0x10, 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x42, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x6c, 0x66, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x4d, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x50, - 0x52, 0x43, 0x5f, 0x4e, 0x6f, 0x74, 0x45, 0x78, 0x69, 0x73, 0x74, 0x10, 0x08, 0x2a, 0xd3, 0x06, - 0x0a, 0x09, 0x53, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x10, 0x50, - 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x10, - 0x00, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, - 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x52, 0x45, 0x4c, 0x49, 0x45, 0x46, 0x46, 0x55, 0x4e, - 0x44, 0x10, 0x94, 0x14, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, - 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x52, 0x45, 0x4c, 0x49, 0x45, 0x46, - 0x46, 0x55, 0x4e, 0x44, 0x10, 0x95, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, - 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x54, 0x55, 0x52, - 0x4e, 0x50, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x96, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, - 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x54, - 0x55, 0x52, 0x4e, 0x50, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x97, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x50, - 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, - 0x54, 0x41, 0x44, 0x44, 0x55, 0x50, 0x53, 0x49, 0x47, 0x4e, 0x10, 0x98, 0x14, 0x12, 0x20, 0x0a, - 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, - 0x47, 0x45, 0x54, 0x41, 0x44, 0x44, 0x55, 0x50, 0x53, 0x49, 0x47, 0x4e, 0x10, 0x99, 0x14, 0x12, - 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, 0x4c, - 0x46, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x41, 0x52, 0x45, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x9a, 0x14, - 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x57, 0x45, - 0x4c, 0x46, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x41, 0x52, 0x45, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x9b, - 0x14, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, + 0x52, 0x43, 0x5f, 0x4e, 0x6f, 0x74, 0x45, 0x78, 0x69, 0x73, 0x74, 0x10, 0x08, 0x12, 0x14, 0x0a, + 0x10, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x4c, 0x65, 0x73, + 0x73, 0x10, 0x09, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x50, 0x69, 0x67, 0x62, + 0x61, 0x6e, 0x6b, 0x4e, 0x6f, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x10, 0x0a, 0x2a, 0xcd, 0x07, 0x0a, + 0x09, 0x53, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x00, + 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, + 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x52, 0x45, 0x4c, 0x49, 0x45, 0x46, 0x46, 0x55, 0x4e, 0x44, + 0x10, 0x94, 0x14, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, + 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x52, 0x45, 0x4c, 0x49, 0x45, 0x46, 0x46, + 0x55, 0x4e, 0x44, 0x10, 0x95, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, + 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x54, 0x55, 0x52, 0x4e, + 0x50, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x96, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, + 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x54, 0x55, + 0x52, 0x4e, 0x50, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x97, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, + 0x41, 0x44, 0x44, 0x55, 0x50, 0x53, 0x49, 0x47, 0x4e, 0x10, 0x98, 0x14, 0x12, 0x20, 0x0a, 0x1b, + 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, + 0x45, 0x54, 0x41, 0x44, 0x44, 0x55, 0x50, 0x53, 0x49, 0x47, 0x4e, 0x10, 0x99, 0x14, 0x12, 0x1f, + 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, 0x4c, 0x46, + 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x41, 0x52, 0x45, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x9a, 0x14, 0x12, + 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, + 0x46, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x41, 0x52, 0x45, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x9b, 0x14, + 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, + 0x4c, 0x46, 0x5f, 0x42, 0x4c, 0x49, 0x4e, 0x42, 0x4f, 0x58, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x9c, + 0x14, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x42, 0x4c, 0x49, 0x4e, 0x42, 0x4f, 0x58, 0x49, 0x4e, 0x46, 0x4f, 0x10, - 0x9c, 0x14, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, - 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x42, 0x4c, 0x49, 0x4e, 0x42, 0x4f, 0x58, 0x49, 0x4e, 0x46, 0x4f, - 0x10, 0x9d, 0x14, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, - 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x42, 0x4c, 0x49, 0x4e, 0x42, 0x4f, 0x58, - 0x10, 0x9e, 0x14, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, - 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x42, 0x4c, 0x49, 0x4e, 0x42, 0x4f, 0x58, - 0x10, 0x9f, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, - 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x50, 0x41, 0x59, 0x49, 0x4e, - 0x46, 0x4f, 0x10, 0xa0, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, - 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x50, 0x41, 0x59, - 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xa1, 0x14, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, - 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x50, - 0x41, 0x59, 0x10, 0xa2, 0x14, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, - 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x50, 0x41, 0x59, - 0x10, 0xa3, 0x14, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, - 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x49, 0x4e, 0x50, 0x41, 0x59, 0x49, - 0x4e, 0x46, 0x4f, 0x10, 0xa4, 0x14, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, - 0x5f, 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x49, 0x4e, 0x50, - 0x41, 0x59, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xa5, 0x14, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, - 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x43, 0x4f, 0x4e, 0x54, - 0x49, 0x4e, 0x50, 0x41, 0x59, 0x10, 0xa6, 0x14, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, - 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x49, - 0x4e, 0x50, 0x41, 0x59, 0x10, 0xa7, 0x14, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, - 0x54, 0x5f, 0x43, 0x53, 0x57, 0x65, 0x6c, 0x66, 0x52, 0x65, 0x6c, 0x69, 0x65, 0x66, 0x10, 0xd4, - 0x16, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x57, 0x65, - 0x6c, 0x66, 0x52, 0x65, 0x6c, 0x69, 0x65, 0x66, 0x10, 0xd5, 0x16, 0x12, 0x18, 0x0a, 0x13, 0x50, - 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x10, 0xd6, 0x16, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, - 0x53, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xd7, 0x16, 0x12, - 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x42, 0x69, 0x6e, 0x64, - 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0xd8, 0x16, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, - 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x42, 0x69, 0x6e, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, - 0x10, 0xd9, 0x16, 0x42, 0x27, 0x5a, 0x25, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x2e, 0x67, 0x61, 0x6d, - 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x61, 0x6d, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x77, 0x65, 0x6c, 0x66, 0x61, 0x72, 0x65, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, + 0x9d, 0x14, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, + 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x42, 0x4c, 0x49, 0x4e, 0x42, 0x4f, 0x58, 0x10, + 0x9e, 0x14, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, + 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x47, 0x45, 0x54, 0x42, 0x4c, 0x49, 0x4e, 0x42, 0x4f, 0x58, 0x10, + 0x9f, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, + 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x50, 0x41, 0x59, 0x49, 0x4e, 0x46, + 0x4f, 0x10, 0xa0, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, + 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x50, 0x41, 0x59, 0x49, + 0x4e, 0x46, 0x4f, 0x10, 0xa1, 0x14, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, + 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x50, 0x41, + 0x59, 0x10, 0xa2, 0x14, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, + 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x50, 0x41, 0x59, 0x10, + 0xa3, 0x14, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, + 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x49, 0x4e, 0x50, 0x41, 0x59, 0x49, 0x4e, + 0x46, 0x4f, 0x10, 0xa4, 0x14, 0x12, 0x21, 0x0a, 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, + 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x49, 0x4e, 0x50, 0x41, + 0x59, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xa5, 0x14, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, + 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x49, + 0x4e, 0x50, 0x41, 0x59, 0x10, 0xa6, 0x14, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, + 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x57, 0x45, 0x4c, 0x46, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x49, 0x4e, + 0x50, 0x41, 0x59, 0x10, 0xa7, 0x14, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, + 0x5f, 0x43, 0x53, 0x57, 0x65, 0x6c, 0x66, 0x52, 0x65, 0x6c, 0x69, 0x65, 0x66, 0x10, 0xd4, 0x16, + 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x57, 0x65, 0x6c, + 0x66, 0x52, 0x65, 0x6c, 0x69, 0x65, 0x66, 0x10, 0xd5, 0x16, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, + 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x10, 0xd6, 0x16, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, + 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xd7, 0x16, 0x12, 0x18, + 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x42, 0x69, 0x6e, 0x64, 0x49, + 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0xd8, 0x16, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, + 0x45, 0x54, 0x5f, 0x53, 0x43, 0x42, 0x69, 0x6e, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, + 0xd9, 0x16, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x50, + 0x69, 0x67, 0x62, 0x61, 0x6e, 0x6b, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xde, 0x16, + 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x50, 0x69, 0x67, + 0x62, 0x61, 0x6e, 0x6b, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xdf, 0x16, 0x12, 0x1d, + 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x50, 0x69, 0x67, 0x62, 0x61, + 0x6e, 0x6b, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x10, 0xe0, 0x16, 0x12, 0x1d, 0x0a, + 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x50, 0x69, 0x67, 0x62, 0x61, 0x6e, + 0x6b, 0x54, 0x61, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x10, 0xe1, 0x16, 0x42, 0x27, 0x5a, 0x25, + 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, + 0x67, 0x61, 0x6d, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x77, 0x65, + 0x6c, 0x66, 0x61, 0x72, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2400,7 +2698,7 @@ func file_welfare_proto_rawDescGZIP() []byte { } var file_welfare_proto_enumTypes = make([]protoimpl.EnumInfo, 2) -var file_welfare_proto_msgTypes = make([]protoimpl.MessageInfo, 32) +var file_welfare_proto_msgTypes = make([]protoimpl.MessageInfo, 36) var file_welfare_proto_goTypes = []interface{}{ (OpResultCode)(0), // 0: welfare.OpResultCode (SPacketID)(0), // 1: welfare.SPacketID @@ -2436,6 +2734,10 @@ var file_welfare_proto_goTypes = []interface{}{ (*SCInviteInfo)(nil), // 31: welfare.SCInviteInfo (*CSBindInvite)(nil), // 32: welfare.CSBindInvite (*SCBindInvite)(nil), // 33: welfare.SCBindInvite + (*CSPigbankGetInfo)(nil), // 34: welfare.CSPigbankGetInfo + (*SCPigbankGetInfo)(nil), // 35: welfare.SCPigbankGetInfo + (*CSPigbankTakeCoin)(nil), // 36: welfare.CSPigbankTakeCoin + (*SCPigbankTakeCoin)(nil), // 37: welfare.SCPigbankTakeCoin } var file_welfare_proto_depIdxs = []int32{ 0, // 0: welfare.SCGetReliefFund.OpRetCode:type_name -> welfare.OpResultCode @@ -2460,11 +2762,13 @@ var file_welfare_proto_depIdxs = []int32{ 19, // 19: welfare.SCWelfareContinuousPayData.List:type_name -> welfare.WelfareSpree 0, // 20: welfare.SCWelfareContinuousPay.OpRetCode:type_name -> welfare.OpResultCode 0, // 21: welfare.SCBindInvite.OpRetCode:type_name -> welfare.OpResultCode - 22, // [22:22] is the sub-list for method output_type - 22, // [22:22] is the sub-list for method input_type - 22, // [22:22] is the sub-list for extension type_name - 22, // [22:22] is the sub-list for extension extendee - 0, // [0:22] is the sub-list for field type_name + 0, // 22: welfare.SCPigbankGetInfo.OpRetCode:type_name -> welfare.OpResultCode + 0, // 23: welfare.SCPigbankTakeCoin.OpRetCode:type_name -> welfare.OpResultCode + 24, // [24:24] is the sub-list for method output_type + 24, // [24:24] is the sub-list for method input_type + 24, // [24:24] is the sub-list for extension type_name + 24, // [24:24] is the sub-list for extension extendee + 0, // [0:24] is the sub-list for field type_name } func init() { file_welfare_proto_init() } @@ -2857,6 +3161,54 @@ func file_welfare_proto_init() { return nil } } + file_welfare_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CSPigbankGetInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_welfare_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SCPigbankGetInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_welfare_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CSPigbankTakeCoin); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_welfare_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SCPigbankTakeCoin); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -2864,7 +3216,7 @@ func file_welfare_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_welfare_proto_rawDesc, NumEnums: 2, - NumMessages: 32, + NumMessages: 36, NumExtensions: 0, NumServices: 0, }, diff --git a/protocol/welfare/welfare.proto b/protocol/welfare/welfare.proto index cd25574..5566e52 100644 --- a/protocol/welfare/welfare.proto +++ b/protocol/welfare/welfare.proto @@ -12,6 +12,9 @@ enum OpResultCode { OPRC_BindSelf = 6; // 邀请人不能是自己 OPRC_MyInvite = 7; // 邀请人不能是我邀请的人 OPRC_NotExist = 8; // 邀请人不存在 + OPRC_DiamondLess = 9; // 钻石不足 + OPRC_PigbankNotFull = 10; // 存钱罐未满 + } // 福利大厅 enum SPacketID { @@ -45,6 +48,11 @@ enum SPacketID { PACKET_SCInviteInfo = 2903;//邀请信息 PACKET_CSBindInvite = 2904;//绑定邀请人 PACKET_SCBindInvite = 2905;//绑定邀请人 + + PACKET_CSPigbankGetInfo = 2910;// 存钱罐信息获取 + PACKET_SCPigbankGetInfo = 2911;// 存钱罐信息获取 + PACKET_CSPigbankTakeCoin = 2912;// 存钱罐领取金币 + PACKET_SCPigbankTakeCoin = 2913;// 存钱罐领取金币 } //救济金领取 @@ -254,4 +262,35 @@ message CSBindInvite{ // PACKET_SCBindInvite message SCBindInvite{ OpResultCode OpRetCode = 1; //结果 +} + +// 存钱罐信息 +//PACKET_CSPigbankGetInfo +message CSPigbankGetInfo{ +} + +// 存钱罐信息 +//PACKET_SCPigbankGetInfo +message SCPigbankGetInfo{ + OpResultCode OpRetCode = 1; //结果 + int64 BankCoin = 2; // 当前已存金额 + int32 TakeTimes = 3; // 领取次数 + int64 CostDiamond = 4; // 耗费钻石 + int64 BankMaxCoin = 5; // 存钱罐最储存值 +} + + +// 存钱罐领取金币 +//PACKET_CSPigbankTakeCoin +message CSPigbankTakeCoin{ +} + +// 存钱罐领取金币 +//PACKET_SCPigbankTakeCoin +message SCPigbankTakeCoin{ + OpResultCode OpRetCode = 1; // 结果 + int64 TakeCoinNum = 2; // 领取金币数量 + int32 TakeTimes = 3; // 领取次数 + int64 CostDiamond = 4; // 耗费钻石 + int64 BankMaxCoin = 5; // 存钱罐最储存值 } \ No newline at end of file diff --git a/xlsx/DB_GameItem.xlsx b/xlsx/DB_GameItem.xlsx index be7610142d432584d5d05b669fc429e5b8aede62..261d937ae5e1f41742dc9232b43502cf65811da9 100644 GIT binary patch delta 14908 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 GOJVuWP_z2q?6@e@bMyNP)@P(h9UBPjNZ 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 delta 14619 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%0A60*Qu$mDA_QU)o?eK4%cYWx>a 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 LM_tH!Smgf!=IH?h diff --git a/xlsx/DB_Game_Drop.xlsx b/xlsx/DB_Game_Drop.xlsx index fafbb6805fb3bf6f372aa7c50330c0a652ed4912..faf6f0ff2f9a352648ac33a869865212a55569f4 100644 GIT binary patch delta 13205 zcma)@byQS++wWw1zj1 ztj1Xv*QY1f(up(LDP26|2G+@W))J~nk#=guT9G^ZUV@T=ZclD$+oH402FkwK`pL9N zx;on#Gfqmb6MzR*&>JixsrajmwJ)Vgk{b}&#b50$;7=41PbaM;U#KR9r^P=^fv1_q zE@F^tixO@p1RcNM7hk<{xWn1$PugTcnhZ)mm z9cMnfWS4`j%;G8*#(Sfo+&7rSbI$HwHwsN5AfJ0*Ns+w527Qh?J+rN}Up)D)o~8*I z|BeziWJ;MMTFD2V_b|)gapU)7vKY7guTLkB0qLQ~lOKW}M^W6l<7o9XSz_WgzOiRn z{v}7P#`esIPc0KGu5VU|{ZZPgrBk~bxmgFf>5GE^SuHPK8abi~ z`c7?0@LsNI!$WpkSH6X^==M{$wR2MD=QS@rY?tIhYE9AGx^M+mM4y~JV#+~?2d`pKI-$3FilN`__@wtrg zJT)1Rkjy?KA(0~`{g9^wV*WC4p%!uuU7%UK?u4I5maq9qrQ-=G47h(Lq%tmH& zM{fMA)~asPdv!&c)V z-s$-A{N;q%$nL~Y+=}Pb#p%`Z&f4knkGPg1Kc)RzpQgFd%MSmy*JqLT!1+(8l+lzYCwgw3}fdsoXt2b%}$ml<)Raq{)`f$H~Fm zKK{k(>bLdA>>aDfqba)9EwK)fi=yvEkc{P#MQXP6>-Gh}&!^y8?DN9q{`7p$&a(fp zjq$y3%myrfFaN8NkZbM^SNoZ$PUo+FUly)wTE2=xTSYFWZFnBMzUH*p>R2a|Hx9n0 zI{ca%dXSnLtkN>-(ILK7l}&fGel>A5)Y4NX-Fiefx^U&?alM&(`DOSt<4sTS`T|&m zN((S|S>pqwVYZ4u8>Q&7>DI~*uIZp(=NQDHo~`Ew+Y3DHJJ(lS4}RE;>#TlpR{PN5 zUpDxCc(CaN{&caKcM2k=hcVh=zB`a%bCBPolDc?MMee`XQ@_qouy?A1E9T?kyq8}; zdh`C(a{YspF3`aDbS=C{)JfoQL`eLty+$^$;B4i{QPiGqarrs@>U4YPpfUK=D|=yf zy2_)0N=e*k*lsVs?L_5hqowCmDRX*Y^J0TeoUTLktmossNC(X)ZA-%J{B27t?8@G~ z4w{)qk;iJ!r#Qr9df#%yT4Kj`(>6wQ8~b?(K2VT!3D#u{D7Ysnw5VGT0Dtx1pYA`2zl)kf+$YDik;`L{i;HmVS+bsNtrr#m%= zp3c6$&`-eVo=q%-S&UwpdDi^Exk)W`z@2zy=$Y0C0 zI}sW$p6xWO_V#xg_kNiRDuE#NFP(o-1IB0YmOjl0dOfNga4~#&5+IoTh(-Lzg8BXt zJB#?whE?56sQlf%4~)ux;h{U;8DJTG&gb>6M27qH^g#Z}SL5E5xz4i>F87q%%;_4$CbRRifbsL#f@c|v_zCv>QkD19Beb=E{Po2pB1SEUoL4w3QQ`7_^Ft`WI}tE z!%l(bB99^k@F_)or57HhOWY^gY>bJ3-qj2^g&rH=i_%YkYTO1V}pmuu5sg6yoY z6T=Gd(vI9d2OViK!bj@*(dFWv7>JyBm{~iYCKEZ>^C=L^qod=Syt{Jrg&y8!g%K$P zqC0a+NNCMI5zZETRYpW&+JGH8&YmL4kxd9ak-G6HflRq6p>7%oyhcLS8emOpBO-w} zgH}9Xg?52GskWelOLXk9*Ce|1Y@jb9Y^rVQp&`%4qH$sO@khBhCXw}UlntlX@bqY@ zyQ(CJ&SP6vFX?~o^hmDf^6tOS4mOjchU|AvhccdtAI;16yU;b6^Gz`xs|Nh2CCcbJ z1ndR;Ts=)ITXvK6amZC}LfZY#AK?%U{iIUL>}PDoead#|W_Ljc@^TDEaaTZK)cf8} zlotqn%(%jtxjH>bar3>txQ<5z_N=zN4nW4XBE_sf^!)gihfPm6x=AEa7jqw z;mbO~>V<=u2c-9fP{oPr%hVcxQaMb|zQy{YbE|vxanYTwo9-gha{UQu##ID% zHz1i-?zUIAS|He6ga1nFzisUPKWuyuHo%Qczk_{rKlgX~6E6(E@h&wfxu9XYCpMyj zaE3-B!c_*5z<2ZrnQU(1a+#v{d}B}%Waol4`5usPNz{ZPr@Qj~t>leKLHLoGfziq> zd33P#Raqz)ti@f`lz$5j{Bczf-cWUq{Fkp|(3d102JYBva$S0a-0A2WM`0S<3`0XZ zRFvJ3xlwYsMoqq_yyh@;K0$MsQdllAEAD;7n7Qab=gaH{+cow~eu1%vY@fP)h#jt7q7h*-1-uC7Yddm{8qbJMklY>(^Q{ zbxfj|JO)9iP~Al?$^ng7Y;4hOv) zhu5GQa!}8q&rFlF#Dsn{eU5@;wM0-r4(M*+C;c$&7QwC=`n%mNM-?Gew^*U(trl+($-nEDs>(TxF9-$HJffVa15`UuO94UhyZdTBHq5jBC1&W98vY zJ6WS*P1liuFVE);OglSjznr1%*digI97jUgvtVT4};*) zK@~5eP4ys&FzwKGn{COoLn3~)+hDZHxoL-zQkdpms>7(28Pl5GmGs1kl#rqJ`M@ zl3|U6a1scz)5CPjKV|TMROl+7Z)P#V<{Q99R|9XVVUJad#q1I25M2iGV&>-F*I%Uu zXL9D$?7~Jz5D(qOAV`YO3@4P|T@ME&*;%zGzyQ(?<71=M*lW97Y;9J=Z1Q|RmV2Wg zB;{s`6S~$$h7DRaSI^%5g++C2t!gP`3Ixu4Q*u?aL3Z5OQ2>1r{Kgrzwjs{?q$ekd z-1TQ!badKs{OJ?VjR&f5CR-1~#Bx=M8|wKmvuaLjv1LLyynQ~XNe1?8z+&QxKwK*` zu>D;nk7*DJRpY_9P?n3PDjZfb7Hqe_2d34jz!b`^n;U@p4}yw-ec!s+bp+M_379BF z`X^p6NLde3?0gUC`b|rl`ua71K$N=)B&DXIDBP;a(LogVB$3<8RLOS|r+>%$X!+5r-{rR@h)`}UM=4c! z*Z;M|U+zF7mso6UYVB~lKkWaz@rKqvbdCF3{KP;OQ?j|5xi$5ne_D9d#W&MljpdA; z6G%6862#evAIbpRjrA6@K|c==i%XO5G_Psv9@;0<&Q3k1Fm~N8MB95z@gJK8?6H%} z9e8#jV6qRuV(ud7^nu|as2>I*+`mx`NjEztA@_t`KBn!7BgzT@SuGg#4h%|;2ueQu z^cHTlF?!F~;!#jOiu7%5aWyX#TNtbJCZ(OEd9j5yR}KWRAS8hZ^C87`us@8ujbMsB zF_wuSXvt*?kiWqd`E(AJiikae=8m!7ZJ5%DbfCpmSA&BQi;YX25^krchS9l1l? z`MBhzrs$}k^8CrP!87*)k$1{W$!S)=zF^=F_3-^p(UD!<;LrJ_?a>Jx;yeRs905SbxUD4Wxc&WQ47JSjPwNco((59{Ue5c)C-TP##n^LXSSMn<(t_>&xNun=b;GDf*6Ie*bM z^MB^{ulCv80)A6;n@;zyYlXTqi~7z^v;UVrqm}=~UEO^90@WWZgMuXHqo9VbE>fyU zAeJYir<{*)>xZ#1eoBJN(^?%G26=UmnQH=&iqPX8WZDy<2K*k8H0e#PplCOH2Py7$ zPeb$j$G?SuBJ+`R!N^{KQ_cn6ss^~yZn}XT_6Od&w3Tl|eywzLk-w&{KrhG9sp;eW z+ScgNprNp8^Kbvs0RV+C(?t`)7)2~~YjsPuO+m;UWw|j%Trf>jIPCJshRamoH^05v zQ==mxS-EcHR~R{f-N*I3DZRx2IsN1<*hum#&Msuyau|8cGm5(I zK+FfDvPj5EAfp0U(ACg6=;L#>2Joj1U(JJn>c);3R|J=OdQX^hQ=dj186(yQ#_VWz zUF1OA3Pty(wL#oeBxE{m3Ea`023&pQuHe*V53@hu){!AC50D50w3$T=T`W=_2Lup< zdw_@@MnwR;E8|&QKw&+(q(o8>NFjpvW2Mi+?J9@=M)yz-DFO6zO5LT?NyAq}2?Rwl zhhwn9rouTtj1ehjc$Oz$STT`m4 z=DrL&1&svU^RF{wg(|IKhOR=(0YS~wU*;W%R|VrOy~^cxfP zOghq74r*$hB4>S!4QE!KWjL?*x@jm}47?IyRtB04*!Apv?|vSdA6FKRj=jOX6u@di zQ$8k`lOyFI)-z=mtF&0Gj6Zky?NQNF(3z3p4vng6Dj}wf5WcoGHJBJl_$hyAzJPE3 zgTDYUGZ?H@_h)sol%$ayHNmQ&Ztiml$xv?U)mieuo~oo05zXB~BSZMNrHz#jD_}S{ zOf52B;}Labjucz$yEJ@(QQS)NcA6sZwlgj^Fm-uPFm>)FIIlCuHs!crd@v&K>XONE zy|%rxZVJqPQvBGmH&9MgH;U&lfHEeSloFFfleO0@OL_5I>sJzJiHYaaGTlY^UT;C1 zPq@SzN zh6-VwgId&G$@n_oWT>IWGzYJsHzEHOF+~Yj3`i~$3=>;#3trwZTWk{kF~O~xD*bAX zrIw!;|Nd)4E7YkiXGrjM-$v%+nHZLsL_U2U8r)wNES~hAsnwtUtmJLcFKQ9B@=rR8 zff>_OdsBd=5=;Cl^*`cPfc~0=gE#=1%9$5Fm~lGtfh?mEUxH2z!kzbj>IQtwdc zU&59b_}bouyMXVFZOgL{ho*!6AfUg&9%#lA@&g?&Gy~x;13XZrX^q>d>tX33v(eBd z$Vf10IzrJ^vqGi4fLCSEpa=6X!-_bu`_q_ApDb696Ap8|s-+GP6AeIz>)B{wF3J64 z>#Z5ihI`+Z_WK1@BpvYG9M6T*F?Bvd!Leq8ym5%c+%jAp4|^)I+O*X5JR|(GIDIZZ zBP3$~unT(xl>Aexg_Ba!W1qr(;j4QV{;6_yv%RE{lP+#Zo7gW)XWH^Hgf|B%R0xlw ztzYNZsOg)US^?d2njr2mN}w9I#7!CvDQEd4##^}ZSn`0 zKUu;T^IZL0u?Koc5oJz+Wfqh{!;XP=+4SW|%>JQeqKojN95B5PjML#oY=8B|Y)Ee= zW7nfEh(B13r0GS?s?^LCKQTT6G&<7zmm)FaQrF{Hz_R6NGvyCVLyhSW_m6Nd0fgl~ z)|G41ij}T7qRW^G|JCKMVE7`i%i=VS=P$tjokA1-6!MQ=t)N~ipk9Em;W@F_uBR8T z%{~dJ1<>Wi3(>Zw1;ZU7Kir~Qn8%69rt|?^ z@wc-7#JrCZxf$F))T5a6tKj@U(n5z@*l2fMljYBw`qpv!C(qzb(0bm}0x2-;-%){o zsFGsdeWhJjW#dM>vD#U@_seG%YZWx%edpM&aM3Ml>Dd1oJ!yM$j-({WL_)ToD@G~EQ;ua zYcX_{OcDnjIwhrG}TJL-yvZn@V-Mftss zvMS0q{6rZeWBBZ^_eF&oj~FVgLqATatx^JXvLSv;7nVmj{vvME*Q}sZ5!zJ+{rn&- ztB=2{FX+!7ERcxAdSa}{xG0=A@PN3siJ^Nr6|ztr=Lv?V?|#KgsBO)FP>S<;N8HO6 zACiQP{f!QN-l~XdIl*>{>$RQ36%Q0G^XEEll6LB2aQ1YJFVI zviZW$F)aVdDsuKWq`aQ36>+rdBP+MGZD3?d`Rp(;B#E`%4qznL>TqE-puRlWEgS*)d_SDKQR(G! zvCR}LLW&LlzzG|WKXmIH4|`w&al4IEGTF5pg-*XCf%gQG$XukYyrQ6$O!wW_*OXSuCMMJdl&7lvAKfrbCZ9vidVu=ioB!@&l;sk`g9Cy?vy z(S2$-6^jxanyf}NmNUQ~u-m7Z*gZpleP~%NE3i3QP%x%XjnodYzTANQEw#=5c@%pr zT(PAIM5*=i>K^MKV4qZSXx(fHpEeNNL=eYeRBSD%CBmdSGI+w8TC1i(81!TzIQW+o zO85ew=JSxMCoN67G=LG9zcacUg?4yUIo^w>YUS`2amH%ZM>sHLC=XlmQY^tWm=QJ#kjd)Av$is}q&T)}`2GZh9PQo6bj@2d)wJ z0LUc~9k05@D4xUf#M;BIWd~aG>wss;m@?Y(2fqWSH*QtfIB$Pkxy`6W>mcY^ZKb&x zynLuq-E$TIt{j`Fd70o4?SVt|iG_EUYq@X=6W3^!u(f0%=h^e#;Qmce(jag(5sWjY z)2iu16)INk%Qw_!@;qS%EJDg}#e&CsVq@Nl=te@MMS%(GRDb`@aLM#uoFkaZjUtg}H593wHIVDc9w zCXFxm;CoudTlv2pA)_xxcrA4S|OiAkF`2*c$j5fFf4-f6?3+%x&PG+`uI#-wV7~LH?cp zcmv%oyvf^Gurf~m^8KN5QdBwQS486oc^*xW=9Q8}&U314T7J8 zUBu^LHQ_{~Bf4bYx~D7HFMp|PZ~vHP8Pa4Nd=@Psm|#f1(6(=*9y%KxhHieO%t^o> zrqOg{vu}`rn}*W8oCM1LloadkM~PB%hfu`1kTy=y5lC+?OSOD=8MiqnRv7?vl2TTK zC_f?Wv%6uro7&ZT-|0N>SZ!8O+GImiJ~si;k|GD3dWK(Q4liV%iufJ;epq^QOZFNmaYW~t zg-o;O=`5hSRYp(`o<}40`P516Wa9Hl731WY1!R=wnN<%mC?Yy95QYtL5}znZW#|WQ z4z1vs_2aVIfRzeRF@G^jyu%$=vLw*KN=n8 zksngmM~>&77rWcb1AE0RwlNqCO3$_?KVZu$qeXfFmpiL!87uq6XWon-w~YA8{R|1s zvR_fh+5X{osd)^RbDh-8Ua^w1kES1ujAfr$Oefk#Q6XK2eYtdE1`B}La|{)TPqQqv zLc8~h^QRxQ%wK`uUpPLPtMcgBxdLNMpBGIBhtIEjnbCB-5?D_?H|cn~v{_(Vb;Nt3KZ{c#^)4_h;a5HXBm-IUJ-L>i4AV|cMi$Obg?t&zW#~hs21!T8w zsU|CAQsCUpa?7-}Bvj8ez#t>7V^`JH&f6+|32`MOlPQ~TI3MM;StGtiSvMBnc{|{? zMX|a#b~^TM&+Gbw&@o`)WF)#H{E>5LbI!5qei>EdJ-xP+xdtChx6>AZVJWSYGygZ! zj>3+kr9*eMP1>6;C#&oaFNyn`{jK%d(e8O)Hv4`%m(S=m?{Kqr%ece?zj)R4fM$A= z-|u9DhU8p6YtsJsmfAF%ZKV2r_Y8Lxd_jA61HClYjIVJR@}VifoT%;DQTz7it6Qtg zkLRb>GB8D_?RG?RHfnUD1bh0~ri@xv-}*H!J0X?j&3*sOX{RV%Z}_v^fPYU}>Fd`G zyk^VkACEab#tt@X2~84%OupLp$ZDmakl8P0s&=-`;Q6^>_Nf1x_$ zW~j1{yiH)?T`;|+-$m2&#-z>rdG=Sg&p*%NnUHfGtX&=%_vT?(KnMAk&0YCPCoY5-iA<0-Lu=%RTumi&tbQ%cX!y z>W7Gh{qh#oxxut09^ByEEa8Rf5dv*HiMwfbWWyxd_c_1Tav8dyx4$nw?GB0+IpgxK zrMXMXyJ^9l6~r-Tz!h-JS!LCIo9)7Pc?C;OLp04U{v`(na9r@k56-8e8FTc~9?fsM zW=kBD1@*YdD z0t%LS_v?uS7*9E#^U!?eto8~SzxQUUDbZePUx&z&31Bv>yw|iIVpdr$IQ-~Ju{(OD zifQ;U<+twpa=c?k3jE-Ow|Eje61g6fpy!_sBMbo00%3~V5-yoe`Vw!ln7vf3gq4px zTZC5nR zLt#Ejm||p%k>3ERTj%N3p?ay8(w~E(8(h*+7w|k>B3BCIeKy)OF-xU3Dsn7eTWque zfe%ybm@_ecSg*v@O=w0HvZ-&Svpjm^n9fiZV;aEvF#*z|JxA-hEYX(~M1O%s{N1tj zbwpDm`Lmh##pH^;tTwBi>v|(mTW~nJca%f_GrT)_@5!WO;va@YnA7stR)m!EGep|+ zGXzD0zoTY9yJNy|@AN$-S9qtYYOHPp6mCCZCe%$=Oq!f}=}S2DQ0a3?fryA|%7diT z?k9`;qVtwJM|!p)6{x~$L(Z9-uPuD5h#T{XY~=fCT%Vxo)6aC@y({@%UUwE>9HZjy zNp0Jt>sGMw^hQ?~($K*+nUMBaP?a`}4Bo`kHI;+;;NywnNIv8GJG4_x?_E4iQ((c} zTEt?ZO4hsjv6D}wQ@yV@eMFjvnbvoT*m_mczQ^CY2E#SJm*myMN+lue6``f9dJ6t8 zlK3L7Juv3|hIqc)@TYLB)h6NCJo#wf#tU**n@~>@t#eF08UC~~lQYNkPIi#K-I|7O zkpWMP*?`RmZ`dSpZl5ZTbY4a>kKb{WHZ0Wu>;h?T^W?C^rah6^$Gj6qN zTToJQjZQ96bs~1Ceb`_WdcGnC(jCe>Gq2Qh7B^l>;bm#q7Gz0@Qb*z*kXSbft1$CP zj={pz*NBGxO8<12gTE##`)N&rgKT!D_nFn+0gs`WsuknpgChOB9XV`cv3lTBgh@}S zJiDoKy$qgoXkrtFzEsR`Ns8c-D(|$!W5;NujZxMVk;fG>l-;Y|Ob~&H_sJX&@4Z!% zb*vwD2wpM0wKHTBxxAtmg>efqxjLE3>Qh&59k1_C#niW|&-;k81CMB#yQ2+L9tytL zy;}Gh%uu=Bcx=jfFz2KC?hv>*qAj=Z_kqNEI{HAg6YWHQGU*dKtzjCRTkB*)bKUop z{JuB2%*^}c*?U?eNg`D`FONh3Ty{9_r;F~w;nEz zHgmEybbx79CGP74RZzjGi_Xd-%YG?zHofpcWg!kNv4)v3px#chwNK?r_yT@8{zFBc z?ou?5F<(^XcB`qW)Wmqt#6jFOf!dhca~THL>yy2^IbXgVJvF8Tj4CYanD2<8JXg<@ za@|WK>@p7TY>3AiBOx(uPKk;LF~fO*qbwk_cO_(~z_ zOFOaO6!4-WfIr}Z1mM&=>7Tmg;{9`UVto4n!}Di)x00|P^7;N`XwR;q7y7Dj z`szuuOcfVDbjS714pCe8=gzxmCZ74y{8jHlF~4*^Bv|4Z=ZMCO(=&>gxv_J0yW>m@ z+U>sQ3wcj!%3N749H-}*kl9)B!r08-bGZBY6Xc9vmWxQW0ZMr~=KOFBYFlYt8g%2p zv=9v(fc8xo!JA*!lv2Yi-k~*%33gZs8Q)0zFfM|*-xDzCz)1sizmb}TQeZtqydBnm zkJ{=sn$S%uUlIx4-dw$s67rr#)K}Q|ifYQkbmNxrn_Hq!kbL)19(ikuXCWhD&uJG4 z!7ixw;@n>OUGe*QV{s9EJ!}B{h7Q@Hnuo3(c$ z+P3%Q(qy82B$822kg8KGC}k~}n^s-rn2e**6(aweqr`*xZ+mn9mI+BrX|l`W$-Vm4wSe zZX+!#_n1vL0(cnX1muloTVj?N1CLH410=o?-0u6NA?2!H9l4QP{whH6zLqRrh^@S9 z1^I|;S6YeUlF$dz64u*I7HOqo)ZC+9gJj(EI#1G4WNH#A4sqiVen>!7AvLvI z>f4k>lYmV%))o>HHpSl7MH5N)aiEMkiVQ#T z*itdKBJm7iE`0pY~>PWU-f6IEIy!KWbTu znqE?VO?p#*qT==Br zB(YD&7hgc(ENH#V^Wl%U?5gPlr;OF<1JadjROV_I&!%+k1KlEh^BsS!^{+yy5FAABl>7@Qcy4>A%x_)3DB z6fY}|Y@akH%Z0p~ge=F8a$71%NKOv1d?%n@+;QHrEEbf0Dzmjrg>63Qk@KG2! zlCI?VkQI}7mHWw@EwlvMADb!G{(|lN294K;dD#`7{0zDaMWr!tVb7H3e(k delta 12940 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 nv}YOrgN?-WZw8 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