From e3cbc9f58234727bd5f859f86083ad584b66009b Mon Sep 17 00:00:00 2001 From: sk <123456@qq.com> Date: Thu, 27 Jun 2024 13:38:02 +0800 Subject: [PATCH] update --- data/DB_GameItem.dat | Bin 8437 -> 8619 bytes data/DB_GameItem.json | 262 ++++++- data/DB_PetSkill.dat | Bin 88 -> 890 bytes data/DB_PetSkill.json | 121 ++- data/DB_PigBank_Diamond.dat | 6 +- data/DB_PigBank_Diamond.json | 6 +- data/DB_PropExchange.dat | Bin 384 -> 384 bytes data/DB_Task.dat | Bin 2161 -> 2161 bytes protocol/player/player.pb.go | 918 +++++++++++++--------- protocol/player/player.proto | 15 + protocol/server/pbdata.pb.go | 1414 +++++++++++++++------------------- protocol/server/pbdata.proto | 34 +- protocol/webapi/webapi.pb.go | 384 +++++++-- protocol/webapi/webapi.proto | 16 + xlsx/DB_GameItem.xlsx | Bin 23214 -> 23164 bytes xlsx/DB_PetSkill.xlsx | Bin 12417 -> 11082 bytes xlsx/DB_PigBank_Diamond.xlsx | Bin 10818 -> 10788 bytes 17 files changed, 1885 insertions(+), 1291 deletions(-) diff --git a/data/DB_GameItem.dat b/data/DB_GameItem.dat index 8f1263ef62d7f727c10daaf8f8c17d7b3a101114..08348aff54374fb35c99f2e1e6eca2e693d96c37 100644 GIT binary patch literal 8619 zcmchcT}&g_6~`Gc>}BGJ#%-!J50Sbr-M#@)8>z}e+NdpkCss8Vbu?IsJ z2WEMhUG4h(&VSB5_uMo0h#r9ix@}fAHLd1j^1N4e4?o!`2p5|Kq2ZFyX%QNPhHq%k z=Y%fTS6&pZ`nq3j?r3js@3{GbR0_+Jsr$v-cuEB?9UGPli}#D8%3@rdw9~by>|WBz z_lqIwOVe;lSsYi~8`LwW43^Z`rW%=-O8YRs*FPYNBLazq1)EiMY}0(OR!w7#nm;<5 z%5pk2Io%JIqkGoTb;&_!=D8XrvPF~GlhjmV!^L#otV@heu1icnAaRIkQ&%ThI8F1e zll1swZHDMPeY2;o=p4}N()6A{GJh9rmdkW3R!*7*;Zjr0G93g)XulZ}u+nP(Br-f~v3VMF(mAh`U)56q38eo!8%VLitg>L2Zx11p=!BhTiBwpm!v#?2-Vi{&Ke>M6 zwd*%z?-I)f!C(smvUiwy-HN}&-=Yv?*_5*7QCDsOtpB_I8#+G9g6rzAPyb(WLLeJ> zofdUCKwbGmFVvvz0{%4Y0=&>G=D!bhIB0*7O>ZfiQMKPL{)}WH>hm4cF{q>?N^VDw zjU2T<+1SuU2s@rm7|Wkf$zxcO`pXs;L*ulcfH! z3P&o8V0YE}roI8{iAuY>Y{;ihF0kk@T=E0KyG{3|bz@O{lf3V2vRU;CCMSw=X#9{M zLCaxaQ>{Z)dJ4)jmOSQ0d^Bszhu2{*wF|ejoil_v*$eIgdlI`p$6t|0>M$Myb4R z7W=6`P5oXJ&~j9d6~N6_rS+Rb;R~InBM3NrTu8W?4NSZixW#UGGQ;o^(OxJWELfd54O{CmgppQaDwch$@P zA(4*dKl5OIs_pCrPg6^7mepcYW&eXcZUr*{TlfQPShgwXaU+sM8@8#?hK6F|_rLHab|NS@^^=TN zVlTO~Y_YW>+-h=Fb{IOd&tc)v4dTlR&q_DS&ke;sDQ9=-+B^%7l{@&gS^kx(wPP+p z0QF;yI=G7Dq;VwY!M(~^sD0!UP}`LKZK)K+A*9B=%y?&W7WOsr_J+k~quvy@tUTb+ z+S_R*?l41oBdX9lz_-Yem=cSdgX|^00O=#?wIa^-KAOYk;nhy6PAZA3PNxVW@}tCHe;Rs3vesVWN3I@DVdT}&EjQp_kD})k>2Y+y75!J zNj4+0E!eG}f@`HaSr)-mWK$Umm;>%1_W*8D`m?xjGzWQwNL(wMDPWX?AfT-`2i!*} zz-`jrKJyo7(WlO3QNzt)Um=W(#s!?5$(p%xedOIc5Up%EXnsJ+t@2K=G8Mrn?er({ z1)Rjc=B+O+We(j8pGEP@v55U*#ujWv5N-q6s>bJ#%4}oD9BMZSf!ZX8{O0g_NSMF4 z>d2TTv4=!7WIm>Z@I`<2!@U)glsq4qRfmIeD2I>HL%ZxTZK@$?Qw>4CW_qqNNIGFM zDCGxn9VO?|^6H+lA5w2&63*u+7!kfncDU>6i155zH^Oy+yRHrj&&zeQ_zSWN*T!+- IdHELq2h}k8(*OVf literal 8437 zcmchcT})%g700=J?Qr9W)@`aZ50Sbr-M#^76=|Qgin`rODWqsOrP?-aRqaEgYOA71 zS@j76HnstO0ET64gN+Rs2pD4n#@L{w?L*QJHEoi1lfG>B&dj}i+2?+$|M4~U#ii82 zcX_!WxaW8NbLPyMb7y3yMEu=W3!9$NvQfU^;jWQq8YSsslO#1Fh zzxa~W=k0#ArL&`>qqDz9DTMe`;!*w{o=VO`$47W>`B8pMU5;r}Ho6hvt`(j8C?BNW zBn>6hZGDP`k~Hf)U5zi= zZivit{okr7GDqy16ul#n)L$iQ^UHKRT1u7%=~C0N2|5aj)X^W5FvHrw6f#B60&4fO z@dX-i(0PxNUDs0piKG9W4JO!7T3xd7d&9^eI%yNxq2!k7NDdTwFbvT3AK$wDlUujB zXN9E$V6de@?ipbom+C8sG2{X)oltk&+S*-!^}p-y(1|e?*wjY6`hR7=M7A)PR&B&j zo!Mi0uBcO&Xj7nW9GK2dFPeeI69cQan#| zFU;0wSTP6WKJuRM{nbzC`wMzOHlk2WOVy@WdqI9*kh>oT`2#`z`r{z~NsxOU2l>wi z&D#EOZF5{xobL;AX$H+De<;YMyfl~mksyCfkF%NNZBR>8CEbhIVB0Hoxlj6m^eXn(izPFb%`&GK#fuPST^W|q*~ebsG1BguU9=przT3Ve3>j1Z725me7drEww`WVd>ghg*tV65 zdMZ*eC)MWdN_JJr<;t(hFOoQHEhw||_Z(P?dN^h|`SWZ8qsrJa+tveoDT#?3+^I`l)W&@Nv#~CjoeG_uQprT5M*s}o!brF z)u%97lK2{uD&3^m4OH6{Pw&%>1r{1F_1+tE;;XXQQaL3F%nysqp>?DpjUg3}PCw4h z>?0q6*{&Y$DuoC(7A@vs#&eaklW&qYx0PcW}@Jz)E|c?`36}7*@AwHrEEIi4D3zv2C!D~q2Z0; zsqFd8gZB~tTZjg8$JN0&4l?MXIcuRAWnltjk-F6DHzmT&i0~ws7L+fPLGGHR&fWSW z+>8}51#GLfG;5O1UJ@vdeayxDD>S=ghR9wrU1YlBh$qjW2dlTtiaGk*+hRNLhm?GQ z&aKtYY(X&p4rZ&mo96py2I>_lfd3Fcp4{NRA#;HLEGpbdn*_W;{so|g+7{K^8rnwg zF`=%uV0QiuY#U9bXlPR{n2<#+@^$jy-Dc|(*Khsk_D}T&xBiH>VqJa=s)g>QSs1qw z+v>323~Ud12yCl5kjBBE8NeGv5jxpy4%a6bKH70JuziFA+pZiOGGC77z1n;l71|8) z4Z?(A9EI^z+PwMdBX8e_V0Fh%vx918UG#J1n+RN6oppD;fZg>SLDu3v>amM6So~7H z6sU{bOMVTqXkBR`b?jXB>}p>jzX9_p+^g~2p&kb%f0qqKOw;^Zp_%FXfH`rvNm38c z4zSQ0s0wU0iEq&AgX*&egrMYX0p3P84zwkQDM2Pki8Pq)IPyW~f*TX_)b@~B4fTP> zm$5qPUv6y}{yhNOwAegSmu>Bt!F-Vf!EE9|pBc0s5)wn!>?xDv^^kB8n2oAId~?^k zUAN)RA}cPXDpzkjn8AnRu@&{{$_;{k>~p1jUGsnL-IVMQj)!RR9Ovck9of?HOjfS%Hsoz7R(PVlkLyXW0=iicE6>&AUj0qI$>Ut zZm*NpG(F9-z+=&pxo773*(U5st${`^zE-IkBO-$b38JUIoHMk5ItvC%0 L3=9m7b&L!EKbsL@ diff --git a/data/DB_PetSkill.json b/data/DB_PetSkill.json index c47b15c..06f6923 100644 --- a/data/DB_PetSkill.json +++ b/data/DB_PetSkill.json @@ -1,13 +1,124 @@ { "Arr": [ { - "Id": 10001, + "Id": 1, + "SkillId": 10001, "PetId": 1000001, + "SkillLevel": 1, "SkillName": "金鸡守卫", - "SKillDes": "在被炸弹明确攻击时{0}概率完全免疫", - "SKillLevel": 10, - "SKillUnlockType": 1, - "SKillUnlockTakes": "100013,20" + "SkillDes": "在被炸弹明确攻击时{5}概率完全免疫", + "SKillValue": "5", + "ItemConsum": { + "100013": 20 + } + }, + { + "Id": 2, + "SkillId": 10001, + "PetId": 1000001, + "SkillLevel": 2, + "SkillName": "金鸡守卫", + "SkillDes": "在被炸弹明确攻击时{6}概率完全免疫", + "SKillValue": "6", + "ItemConsum": { + "100013": 20 + } + }, + { + "Id": 3, + "SkillId": 10001, + "PetId": 1000001, + "SkillLevel": 3, + "SkillName": "金鸡守卫", + "SkillDes": "在被炸弹明确攻击时{7}概率完全免疫", + "SKillValue": "7", + "ItemConsum": { + "100013": 20 + } + }, + { + "Id": 4, + "SkillId": 10001, + "PetId": 1000001, + "SkillLevel": 4, + "SkillName": "金鸡守卫", + "SkillDes": "在被炸弹明确攻击时{8}概率完全免疫", + "SKillValue": "8", + "ItemConsum": { + "100013": 50 + } + }, + { + "Id": 5, + "SkillId": 10001, + "PetId": 1000001, + "SkillLevel": 5, + "SkillName": "金鸡守卫", + "SkillDes": "在被炸弹明确攻击时{9}概率完全免疫", + "SKillValue": "9", + "ItemConsum": { + "100013": 50 + } + }, + { + "Id": 6, + "SkillId": 10001, + "PetId": 1000001, + "SkillLevel": 6, + "SkillName": "金鸡守卫", + "SkillDes": "在被炸弹明确攻击时{10}概率完全免疫", + "SKillValue": "10", + "ItemConsum": { + "100013": 50 + } + }, + { + "Id": 7, + "SkillId": 10001, + "PetId": 1000001, + "SkillLevel": 7, + "SkillName": "金鸡守卫", + "SkillDes": "在被炸弹明确攻击时{11}概率完全免疫", + "SKillValue": "11", + "ItemConsum": { + "100013": 50 + } + }, + { + "Id": 8, + "SkillId": 10001, + "PetId": 1000001, + "SkillLevel": 8, + "SkillName": "金鸡守卫", + "SkillDes": "在被炸弹明确攻击时{12}概率完全免疫", + "SKillValue": "12", + "ItemConsum": { + "100013": 50 + } + }, + { + "Id": 9, + "SkillId": 10001, + "PetId": 1000001, + "SkillLevel": 9, + "SkillName": "金鸡守卫", + "SkillDes": "在被炸弹明确攻击时{13}概率完全免疫", + "SKillValue": "13", + "ItemConsum": { + "100013": 50 + } + }, + { + "Id": 10, + "SkillId": 10001, + "PetId": 1000001, + "SkillLevel": 10, + "SkillName": "金鸡守卫", + "SkillDes": "在被炸弹明确攻击时{14}概率完全免疫", + "SKillValue": "14", + "ItemConsum": { + "100013": 0 + } } ] } \ No newline at end of file diff --git a/data/DB_PigBank_Diamond.dat b/data/DB_PigBank_Diamond.dat index 4ff07c7..48806c1 100644 --- a/data/DB_PigBank_Diamond.dat +++ b/data/DB_PigBank_Diamond.dat @@ -1,4 +1,4 @@ - (08@dHPc - ((08@dHP -/ 2(08@dHP \ No newline at end of file + (08;@dHPc + ((08;@dHP +/ 2(08;@dHP \ No newline at end of file diff --git a/data/DB_PigBank_Diamond.json b/data/DB_PigBank_Diamond.json index e6d4f7b..550f3a4 100644 --- a/data/DB_PigBank_Diamond.json +++ b/data/DB_PigBank_Diamond.json @@ -7,7 +7,7 @@ "CostDiamond": 30, "MaxGold": 10000000, "MaxDiamond": 150, - "DiamondId": 98001, + "DiamondId": 980001, "CoinPrice": 100, "DiamondPrice": 150, "DiamondNowPrice": 99 @@ -19,7 +19,7 @@ "CostDiamond": 40, "MaxGold": 10000000, "MaxDiamond": 300, - "DiamondId": 98002, + "DiamondId": 980002, "CoinPrice": 100, "DiamondPrice": 300, "DiamondNowPrice": 199 @@ -31,7 +31,7 @@ "CostDiamond": 50, "MaxGold": 10000000, "MaxDiamond": 750, - "DiamondId": 98003, + "DiamondId": 980003, "CoinPrice": 100, "DiamondPrice": 750, "DiamondNowPrice": 499 diff --git a/data/DB_PropExchange.dat b/data/DB_PropExchange.dat index 6359cb097bc98232eb2fe310269d4b0c77224aa8..51b9b3f0ddbd8bcbe4363e26781928c5de160e7c 100644 GIT binary patch literal 384 zcmd-w<6snElw#w!+{O&1uR!UmQ2H8_z7C?5I5-yevI!h$vE|a^U;?YZ0hPZArEfv$ z+i2>;IUwevmE{0`XR Q>>P`L9{s}1#XwsK0A;c~H2?qr diff --git a/data/DB_Task.dat b/data/DB_Task.dat index 7ae1e8df9bc416e978bc2a2335df9e695e0ebe6e..980eddedcc8aacac8a8437fdadd41a7597b04537 100644 GIT binary patch delta 180 zcmew;@KIobu^=1Al3q3e5i1Ukg+O{iFWW{JLB`2j*hMyHGHzuQV&hl@6y~zx1WO;7 zwvlPF0kaiQ7f6^1s_Vckp2^kBc2H4Pm|2J9HlJeN$S4Rk`jDIzL>uem9@Z8tMkun0 aKt-9MMm$(9G}(=!d^Ck1-)!mY#d8~ERl^af{cP}9E*T#Mk~1N<}}6~j6$4X#RsNs zWCE%NsokM) P+MBH&i player.BillItem 0, // 1: player.SCSavePlayerInfo.OpRetCode:type_name -> player.OpResultCode - 137, // 2: player.PlayerData.RankScore:type_name -> player.PlayerData.RankScoreEntry + 140, // 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 - 138, // 7: player.SCPlayerDataUpdate.RankScore:type_name -> player.SCPlayerDataUpdate.RankScoreEntry + 141, // 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 @@ -11086,7 +11249,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 - 139, // 44: player.SCGameExDropItems.Items:type_name -> player.SCGameExDropItems.ItemsEntry + 142, // 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 @@ -11095,7 +11258,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 - 140, // 53: player.SCBindTelInfo.BindTelReward:type_name -> player.SCBindTelInfo.BindTelRewardEntry + 143, // 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 @@ -11104,11 +11267,12 @@ var file_player_proto_depIdxs = []int32{ 108, // 59: player.SCGetWeekCardAwary.Items:type_name -> player.PayItem 9, // 60: player.SCGetWeekCardAwary.WeekCard:type_name -> player.WeekInfo 135, // 61: player.SCExchangeChannel.Datas:type_name -> player.ChannelSwitch - 62, // [62:62] is the sub-list for method output_type - 62, // [62:62] is the sub-list for method input_type - 62, // [62:62] is the sub-list for extension type_name - 62, // [62:62] is the sub-list for extension extendee - 0, // [0:62] is the sub-list for field type_name + 139, // 62: player.SCSMSConfig.Info:type_name -> player.SMSInfo + 63, // [63:63] is the sub-list for method output_type + 63, // [63:63] is the sub-list for method input_type + 63, // [63:63] is the sub-list for extension type_name + 63, // [63:63] is the sub-list for extension extendee + 0, // [0:63] is the sub-list for field type_name } func init() { file_player_proto_init() } @@ -12737,6 +12901,42 @@ func file_player_proto_init() { return nil } } + file_player_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CSSMSConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_player_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SCSMSConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_player_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SMSInfo); 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{ @@ -12744,7 +12944,7 @@ func file_player_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_player_proto_rawDesc, NumEnums: 2, - NumMessages: 139, + NumMessages: 142, NumExtensions: 0, NumServices: 0, }, diff --git a/protocol/player/player.proto b/protocol/player/player.proto index f07f0fd..ccbdfcc 100644 --- a/protocol/player/player.proto +++ b/protocol/player/player.proto @@ -207,6 +207,8 @@ enum PlayerPacketID { PACKET_SCPigBankCoin = 2824;//存钱罐金币数量 PACKET_CSExchangeChannel = 2825; // 开启兑换的渠道 PACKET_SCExchangeChannel = 2826; // 开启兑换的渠道 + PACKET_CSSMSConfig = 2827; //获取运营商配置 + PACKET_SCSMSConfig = 2828; //返回运营商配置 } // 账变记录 @@ -1195,4 +1197,17 @@ message ChannelSwitch { // PACKET_SCExchangeChannel message SCExchangeChannel{ repeated ChannelSwitch Datas = 1; +} + +//请求运营商配置 +//PACKET_CSSMSConfig +message CSSMSConfig{ +} +//PACKET_SCSMSConfig +message SCSMSConfig{ + repeated SMSInfo Info = 1; +} +message SMSInfo{ + int32 Id = 1; + string SmsName = 2; } \ No newline at end of file diff --git a/protocol/server/pbdata.pb.go b/protocol/server/pbdata.pb.go index 1675359..c497de5 100644 --- a/protocol/server/pbdata.pb.go +++ b/protocol/server/pbdata.pb.go @@ -7548,13 +7548,14 @@ type DB_PetSkill struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` - PetId int32 `protobuf:"varint,2,opt,name=PetId,proto3" json:"PetId,omitempty"` - SkillName string `protobuf:"bytes,3,opt,name=SkillName,proto3" json:"SkillName,omitempty"` - SKillDes string `protobuf:"bytes,4,opt,name=SKillDes,proto3" json:"SKillDes,omitempty"` - SKillLevel int32 `protobuf:"varint,5,opt,name=SKillLevel,proto3" json:"SKillLevel,omitempty"` - SKillUnlockType int32 `protobuf:"varint,6,opt,name=SKillUnlockType,proto3" json:"SKillUnlockType,omitempty"` - SKillUnlockTakes string `protobuf:"bytes,7,opt,name=SKillUnlockTakes,proto3" json:"SKillUnlockTakes,omitempty"` + Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` + SkillId int32 `protobuf:"varint,2,opt,name=SkillId,proto3" json:"SkillId,omitempty"` + PetId int32 `protobuf:"varint,3,opt,name=PetId,proto3" json:"PetId,omitempty"` + SkillLevel int32 `protobuf:"varint,4,opt,name=SkillLevel,proto3" json:"SkillLevel,omitempty"` + SkillName string `protobuf:"bytes,5,opt,name=SkillName,proto3" json:"SkillName,omitempty"` + SkillDes string `protobuf:"bytes,6,opt,name=SkillDes,proto3" json:"SkillDes,omitempty"` + SKillValue string `protobuf:"bytes,7,opt,name=SKillValue,proto3" json:"SKillValue,omitempty"` + ItemConsum map[int64]int64 `protobuf:"bytes,8,rep,name=ItemConsum,proto3" json:"ItemConsum,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` } func (x *DB_PetSkill) Reset() { @@ -7596,6 +7597,13 @@ func (x *DB_PetSkill) GetId() int32 { return 0 } +func (x *DB_PetSkill) GetSkillId() int32 { + if x != nil { + return x.SkillId + } + return 0 +} + func (x *DB_PetSkill) GetPetId() int32 { if x != nil { return x.PetId @@ -7603,6 +7611,13 @@ func (x *DB_PetSkill) GetPetId() int32 { return 0 } +func (x *DB_PetSkill) GetSkillLevel() int32 { + if x != nil { + return x.SkillLevel + } + return 0 +} + func (x *DB_PetSkill) GetSkillName() string { if x != nil { return x.SkillName @@ -7610,34 +7625,27 @@ func (x *DB_PetSkill) GetSkillName() string { return "" } -func (x *DB_PetSkill) GetSKillDes() string { +func (x *DB_PetSkill) GetSkillDes() string { if x != nil { - return x.SKillDes + return x.SkillDes } return "" } -func (x *DB_PetSkill) GetSKillLevel() int32 { +func (x *DB_PetSkill) GetSKillValue() string { if x != nil { - return x.SKillLevel - } - return 0 -} - -func (x *DB_PetSkill) GetSKillUnlockType() int32 { - if x != nil { - return x.SKillUnlockType - } - return 0 -} - -func (x *DB_PetSkill) GetSKillUnlockTakes() string { - if x != nil { - return x.SKillUnlockTakes + return x.SKillValue } return "" } +func (x *DB_PetSkill) GetItemConsum() map[int64]int64 { + if x != nil { + return x.ItemConsum + } + return nil +} + type DB_PetSkillArray struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -7685,140 +7693,6 @@ func (x *DB_PetSkillArray) GetArr() []*DB_PetSkill { return nil } -type DB_PetSkillDes struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` - SkillId int32 `protobuf:"varint,2,opt,name=SkillId,proto3" json:"SkillId,omitempty"` - SkillLevel int32 `protobuf:"varint,3,opt,name=SkillLevel,proto3" json:"SkillLevel,omitempty"` - SKillValue string `protobuf:"bytes,4,opt,name=SKillValue,proto3" json:"SKillValue,omitempty"` - Fragment int32 `protobuf:"varint,5,opt,name=Fragment,proto3" json:"Fragment,omitempty"` - Amount int32 `protobuf:"varint,6,opt,name=Amount,proto3" json:"Amount,omitempty"` -} - -func (x *DB_PetSkillDes) Reset() { - *x = DB_PetSkillDes{} - if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[98] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DB_PetSkillDes) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DB_PetSkillDes) ProtoMessage() {} - -func (x *DB_PetSkillDes) 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_PetSkillDes.ProtoReflect.Descriptor instead. -func (*DB_PetSkillDes) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{98} -} - -func (x *DB_PetSkillDes) GetId() int32 { - if x != nil { - return x.Id - } - return 0 -} - -func (x *DB_PetSkillDes) GetSkillId() int32 { - if x != nil { - return x.SkillId - } - return 0 -} - -func (x *DB_PetSkillDes) GetSkillLevel() int32 { - if x != nil { - return x.SkillLevel - } - return 0 -} - -func (x *DB_PetSkillDes) GetSKillValue() string { - if x != nil { - return x.SKillValue - } - return "" -} - -func (x *DB_PetSkillDes) GetFragment() int32 { - if x != nil { - return x.Fragment - } - return 0 -} - -func (x *DB_PetSkillDes) GetAmount() int32 { - if x != nil { - return x.Amount - } - return 0 -} - -type DB_PetSkillDesArray struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Arr []*DB_PetSkillDes `protobuf:"bytes,1,rep,name=Arr,proto3" json:"Arr,omitempty"` -} - -func (x *DB_PetSkillDesArray) Reset() { - *x = DB_PetSkillDesArray{} - if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[99] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DB_PetSkillDesArray) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DB_PetSkillDesArray) ProtoMessage() {} - -func (x *DB_PetSkillDesArray) 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_PetSkillDesArray.ProtoReflect.Descriptor instead. -func (*DB_PetSkillDesArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{99} -} - -func (x *DB_PetSkillDesArray) GetArr() []*DB_PetSkillDes { - if x != nil { - return x.Arr - } - return nil -} - type DB_PhoneLottery struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -7841,7 +7715,7 @@ type DB_PhoneLottery struct { func (x *DB_PhoneLottery) Reset() { *x = DB_PhoneLottery{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[100] + mi := &file_pbdata_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7854,7 +7728,7 @@ func (x *DB_PhoneLottery) String() string { func (*DB_PhoneLottery) ProtoMessage() {} func (x *DB_PhoneLottery) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[100] + mi := &file_pbdata_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7867,7 +7741,7 @@ func (x *DB_PhoneLottery) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PhoneLottery.ProtoReflect.Descriptor instead. func (*DB_PhoneLottery) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{100} + return file_pbdata_proto_rawDescGZIP(), []int{98} } func (x *DB_PhoneLottery) GetId() int32 { @@ -7965,7 +7839,7 @@ type DB_PhoneLotteryArray struct { func (x *DB_PhoneLotteryArray) Reset() { *x = DB_PhoneLotteryArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[101] + mi := &file_pbdata_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7978,7 +7852,7 @@ func (x *DB_PhoneLotteryArray) String() string { func (*DB_PhoneLotteryArray) ProtoMessage() {} func (x *DB_PhoneLotteryArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[101] + mi := &file_pbdata_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7991,7 +7865,7 @@ func (x *DB_PhoneLotteryArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PhoneLotteryArray.ProtoReflect.Descriptor instead. func (*DB_PhoneLotteryArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{101} + return file_pbdata_proto_rawDescGZIP(), []int{99} } func (x *DB_PhoneLotteryArray) GetArr() []*DB_PhoneLottery { @@ -8021,7 +7895,7 @@ type DB_PigBank_Diamond struct { func (x *DB_PigBank_Diamond) Reset() { *x = DB_PigBank_Diamond{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[102] + mi := &file_pbdata_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8034,7 +7908,7 @@ func (x *DB_PigBank_Diamond) String() string { func (*DB_PigBank_Diamond) ProtoMessage() {} func (x *DB_PigBank_Diamond) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[102] + mi := &file_pbdata_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8047,7 +7921,7 @@ func (x *DB_PigBank_Diamond) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PigBank_Diamond.ProtoReflect.Descriptor instead. func (*DB_PigBank_Diamond) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{102} + return file_pbdata_proto_rawDescGZIP(), []int{100} } func (x *DB_PigBank_Diamond) GetId() int32 { @@ -8131,7 +8005,7 @@ type DB_PigBank_DiamondArray struct { func (x *DB_PigBank_DiamondArray) Reset() { *x = DB_PigBank_DiamondArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[103] + mi := &file_pbdata_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8144,7 +8018,7 @@ func (x *DB_PigBank_DiamondArray) String() string { func (*DB_PigBank_DiamondArray) ProtoMessage() {} func (x *DB_PigBank_DiamondArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[103] + mi := &file_pbdata_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8157,7 +8031,7 @@ func (x *DB_PigBank_DiamondArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_PigBank_DiamondArray.ProtoReflect.Descriptor instead. func (*DB_PigBank_DiamondArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{103} + return file_pbdata_proto_rawDescGZIP(), []int{101} } func (x *DB_PigBank_DiamondArray) GetArr() []*DB_PigBank_Diamond { @@ -8180,7 +8054,7 @@ type DB_Pigbank_Prop struct { func (x *DB_Pigbank_Prop) Reset() { *x = DB_Pigbank_Prop{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[104] + mi := &file_pbdata_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8193,7 +8067,7 @@ func (x *DB_Pigbank_Prop) String() string { func (*DB_Pigbank_Prop) ProtoMessage() {} func (x *DB_Pigbank_Prop) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[104] + mi := &file_pbdata_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8206,7 +8080,7 @@ func (x *DB_Pigbank_Prop) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_Pigbank_Prop.ProtoReflect.Descriptor instead. func (*DB_Pigbank_Prop) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{104} + return file_pbdata_proto_rawDescGZIP(), []int{102} } func (x *DB_Pigbank_Prop) GetId() int32 { @@ -8241,7 +8115,7 @@ type DB_Pigbank_PropArray struct { func (x *DB_Pigbank_PropArray) Reset() { *x = DB_Pigbank_PropArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[105] + mi := &file_pbdata_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8254,7 +8128,7 @@ func (x *DB_Pigbank_PropArray) String() string { func (*DB_Pigbank_PropArray) ProtoMessage() {} func (x *DB_Pigbank_PropArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[105] + mi := &file_pbdata_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8267,7 +8141,7 @@ func (x *DB_Pigbank_PropArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DB_Pigbank_PropArray.ProtoReflect.Descriptor instead. func (*DB_Pigbank_PropArray) Descriptor() ([]byte, []int) { - return file_pbdata_proto_rawDescGZIP(), []int{105} + return file_pbdata_proto_rawDescGZIP(), []int{103} } func (x *DB_Pigbank_PropArray) GetArr() []*DB_Pigbank_Prop { @@ -8289,7 +8163,7 @@ type DB_PlayerExp struct { func (x *DB_PlayerExp) Reset() { *x = DB_PlayerExp{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[106] + mi := &file_pbdata_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8302,7 +8176,7 @@ func (x *DB_PlayerExp) String() string { func (*DB_PlayerExp) ProtoMessage() {} func (x *DB_PlayerExp) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[106] + mi := &file_pbdata_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8315,7 +8189,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{106} + return file_pbdata_proto_rawDescGZIP(), []int{104} } func (x *DB_PlayerExp) GetId() int32 { @@ -8343,7 +8217,7 @@ type DB_PlayerExpArray struct { func (x *DB_PlayerExpArray) Reset() { *x = DB_PlayerExpArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[107] + mi := &file_pbdata_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8356,7 +8230,7 @@ func (x *DB_PlayerExpArray) String() string { func (*DB_PlayerExpArray) ProtoMessage() {} func (x *DB_PlayerExpArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[107] + mi := &file_pbdata_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8369,7 +8243,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{107} + return file_pbdata_proto_rawDescGZIP(), []int{105} } func (x *DB_PlayerExpArray) GetArr() []*DB_PlayerExp { @@ -8394,7 +8268,7 @@ type DB_PlayerInfo struct { func (x *DB_PlayerInfo) Reset() { *x = DB_PlayerInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[108] + mi := &file_pbdata_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8407,7 +8281,7 @@ func (x *DB_PlayerInfo) String() string { func (*DB_PlayerInfo) ProtoMessage() {} func (x *DB_PlayerInfo) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[108] + mi := &file_pbdata_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8420,7 +8294,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{108} + return file_pbdata_proto_rawDescGZIP(), []int{106} } func (x *DB_PlayerInfo) GetCity() string { @@ -8469,7 +8343,7 @@ type DB_PlayerInfoArray struct { func (x *DB_PlayerInfoArray) Reset() { *x = DB_PlayerInfoArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[109] + mi := &file_pbdata_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8482,7 +8356,7 @@ func (x *DB_PlayerInfoArray) String() string { func (*DB_PlayerInfoArray) ProtoMessage() {} func (x *DB_PlayerInfoArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[109] + mi := &file_pbdata_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8495,7 +8369,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{109} + return file_pbdata_proto_rawDescGZIP(), []int{107} } func (x *DB_PlayerInfoArray) GetArr() []*DB_PlayerInfo { @@ -8533,7 +8407,7 @@ type DB_PlayerType struct { func (x *DB_PlayerType) Reset() { *x = DB_PlayerType{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[110] + mi := &file_pbdata_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8546,7 +8420,7 @@ func (x *DB_PlayerType) String() string { func (*DB_PlayerType) ProtoMessage() {} func (x *DB_PlayerType) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[110] + mi := &file_pbdata_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8559,7 +8433,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{110} + return file_pbdata_proto_rawDescGZIP(), []int{108} } func (x *DB_PlayerType) GetId() int32 { @@ -8699,7 +8573,7 @@ type DB_PlayerTypeArray struct { func (x *DB_PlayerTypeArray) Reset() { *x = DB_PlayerTypeArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[111] + mi := &file_pbdata_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8712,7 +8586,7 @@ func (x *DB_PlayerTypeArray) String() string { func (*DB_PlayerTypeArray) ProtoMessage() {} func (x *DB_PlayerTypeArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[111] + mi := &file_pbdata_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8725,7 +8599,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{111} + return file_pbdata_proto_rawDescGZIP(), []int{109} } func (x *DB_PlayerTypeArray) GetArr() []*DB_PlayerType { @@ -8749,7 +8623,7 @@ type DB_PotOdd struct { func (x *DB_PotOdd) Reset() { *x = DB_PotOdd{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[112] + mi := &file_pbdata_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8762,7 +8636,7 @@ func (x *DB_PotOdd) String() string { func (*DB_PotOdd) ProtoMessage() {} func (x *DB_PotOdd) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[112] + mi := &file_pbdata_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8775,7 +8649,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{112} + return file_pbdata_proto_rawDescGZIP(), []int{110} } func (x *DB_PotOdd) GetId() int32 { @@ -8817,7 +8691,7 @@ type DB_PotOddArray struct { func (x *DB_PotOddArray) Reset() { *x = DB_PotOddArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[113] + mi := &file_pbdata_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8830,7 +8704,7 @@ func (x *DB_PotOddArray) String() string { func (*DB_PotOddArray) ProtoMessage() {} func (x *DB_PotOddArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[113] + mi := &file_pbdata_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8843,7 +8717,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{113} + return file_pbdata_proto_rawDescGZIP(), []int{111} } func (x *DB_PotOddArray) GetArr() []*DB_PotOdd { @@ -8867,7 +8741,7 @@ type DB_PropExchange struct { func (x *DB_PropExchange) Reset() { *x = DB_PropExchange{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[114] + mi := &file_pbdata_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8880,7 +8754,7 @@ func (x *DB_PropExchange) String() string { func (*DB_PropExchange) ProtoMessage() {} func (x *DB_PropExchange) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[114] + mi := &file_pbdata_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8893,7 +8767,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{114} + return file_pbdata_proto_rawDescGZIP(), []int{112} } func (x *DB_PropExchange) GetId() int32 { @@ -8935,7 +8809,7 @@ type DB_PropExchangeArray struct { func (x *DB_PropExchangeArray) Reset() { *x = DB_PropExchangeArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[115] + mi := &file_pbdata_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8948,7 +8822,7 @@ func (x *DB_PropExchangeArray) String() string { func (*DB_PropExchangeArray) ProtoMessage() {} func (x *DB_PropExchangeArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[115] + mi := &file_pbdata_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8961,7 +8835,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{115} + return file_pbdata_proto_rawDescGZIP(), []int{113} } func (x *DB_PropExchangeArray) GetArr() []*DB_PropExchange { @@ -8984,7 +8858,7 @@ type DB_RankCycle struct { func (x *DB_RankCycle) Reset() { *x = DB_RankCycle{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[116] + mi := &file_pbdata_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8997,7 +8871,7 @@ func (x *DB_RankCycle) String() string { func (*DB_RankCycle) ProtoMessage() {} func (x *DB_RankCycle) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[116] + mi := &file_pbdata_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9010,7 +8884,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{116} + return file_pbdata_proto_rawDescGZIP(), []int{114} } func (x *DB_RankCycle) GetId() int32 { @@ -9045,7 +8919,7 @@ type DB_RankCycleArray struct { func (x *DB_RankCycleArray) Reset() { *x = DB_RankCycleArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[117] + mi := &file_pbdata_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9058,7 +8932,7 @@ func (x *DB_RankCycleArray) String() string { func (*DB_RankCycleArray) ProtoMessage() {} func (x *DB_RankCycleArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[117] + mi := &file_pbdata_proto_msgTypes[115] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9071,7 +8945,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{117} + return file_pbdata_proto_rawDescGZIP(), []int{115} } func (x *DB_RankCycleArray) GetArr() []*DB_RankCycle { @@ -9096,7 +8970,7 @@ type DB_RankLevel struct { func (x *DB_RankLevel) Reset() { *x = DB_RankLevel{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[118] + mi := &file_pbdata_proto_msgTypes[116] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9109,7 +8983,7 @@ func (x *DB_RankLevel) String() string { func (*DB_RankLevel) ProtoMessage() {} func (x *DB_RankLevel) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[118] + mi := &file_pbdata_proto_msgTypes[116] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9122,7 +8996,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{118} + return file_pbdata_proto_rawDescGZIP(), []int{116} } func (x *DB_RankLevel) GetId() int32 { @@ -9171,7 +9045,7 @@ type DB_RankLevelArray struct { func (x *DB_RankLevelArray) Reset() { *x = DB_RankLevelArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[119] + mi := &file_pbdata_proto_msgTypes[117] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9184,7 +9058,7 @@ func (x *DB_RankLevelArray) String() string { func (*DB_RankLevelArray) ProtoMessage() {} func (x *DB_RankLevelArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[119] + mi := &file_pbdata_proto_msgTypes[117] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9197,7 +9071,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{119} + return file_pbdata_proto_rawDescGZIP(), []int{117} } func (x *DB_RankLevelArray) GetArr() []*DB_RankLevel { @@ -9226,7 +9100,7 @@ type DB_RankReward struct { func (x *DB_RankReward) Reset() { *x = DB_RankReward{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[120] + mi := &file_pbdata_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9239,7 +9113,7 @@ func (x *DB_RankReward) String() string { func (*DB_RankReward) ProtoMessage() {} func (x *DB_RankReward) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[120] + mi := &file_pbdata_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9252,7 +9126,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{120} + return file_pbdata_proto_rawDescGZIP(), []int{118} } func (x *DB_RankReward) GetId() int32 { @@ -9329,7 +9203,7 @@ type DB_RankRewardArray struct { func (x *DB_RankRewardArray) Reset() { *x = DB_RankRewardArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[121] + mi := &file_pbdata_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9342,7 +9216,7 @@ func (x *DB_RankRewardArray) String() string { func (*DB_RankRewardArray) ProtoMessage() {} func (x *DB_RankRewardArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[121] + mi := &file_pbdata_proto_msgTypes[119] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9355,7 +9229,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{121} + return file_pbdata_proto_rawDescGZIP(), []int{119} } func (x *DB_RankRewardArray) GetArr() []*DB_RankReward { @@ -9377,7 +9251,7 @@ type DB_Sensitive_Words struct { func (x *DB_Sensitive_Words) Reset() { *x = DB_Sensitive_Words{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[122] + mi := &file_pbdata_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9390,7 +9264,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[122] + mi := &file_pbdata_proto_msgTypes[120] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9403,7 +9277,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{122} + return file_pbdata_proto_rawDescGZIP(), []int{120} } func (x *DB_Sensitive_Words) GetId() int32 { @@ -9431,7 +9305,7 @@ type DB_Sensitive_WordsArray struct { func (x *DB_Sensitive_WordsArray) Reset() { *x = DB_Sensitive_WordsArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[123] + mi := &file_pbdata_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9444,7 +9318,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[123] + mi := &file_pbdata_proto_msgTypes[121] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9457,7 +9331,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{123} + return file_pbdata_proto_rawDescGZIP(), []int{121} } func (x *DB_Sensitive_WordsArray) GetArr() []*DB_Sensitive_Words { @@ -9493,7 +9367,7 @@ type DB_SlotRateWeight struct { func (x *DB_SlotRateWeight) Reset() { *x = DB_SlotRateWeight{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[124] + mi := &file_pbdata_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9506,7 +9380,7 @@ func (x *DB_SlotRateWeight) String() string { func (*DB_SlotRateWeight) ProtoMessage() {} func (x *DB_SlotRateWeight) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[124] + mi := &file_pbdata_proto_msgTypes[122] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9519,7 +9393,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{124} + return file_pbdata_proto_rawDescGZIP(), []int{122} } func (x *DB_SlotRateWeight) GetId() int32 { @@ -9645,7 +9519,7 @@ type DB_SlotRateWeightArray struct { func (x *DB_SlotRateWeightArray) Reset() { *x = DB_SlotRateWeightArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[125] + mi := &file_pbdata_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9658,7 +9532,7 @@ func (x *DB_SlotRateWeightArray) String() string { func (*DB_SlotRateWeightArray) ProtoMessage() {} func (x *DB_SlotRateWeightArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[125] + mi := &file_pbdata_proto_msgTypes[123] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9671,7 +9545,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{125} + return file_pbdata_proto_rawDescGZIP(), []int{123} } func (x *DB_SlotRateWeightArray) GetArr() []*DB_SlotRateWeight { @@ -9696,7 +9570,7 @@ type DB_SystemChance struct { func (x *DB_SystemChance) Reset() { *x = DB_SystemChance{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[126] + mi := &file_pbdata_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9709,7 +9583,7 @@ func (x *DB_SystemChance) String() string { func (*DB_SystemChance) ProtoMessage() {} func (x *DB_SystemChance) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[126] + mi := &file_pbdata_proto_msgTypes[124] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9722,7 +9596,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{126} + return file_pbdata_proto_rawDescGZIP(), []int{124} } func (x *DB_SystemChance) GetId() int32 { @@ -9771,7 +9645,7 @@ type DB_SystemChanceArray struct { func (x *DB_SystemChanceArray) Reset() { *x = DB_SystemChanceArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[127] + mi := &file_pbdata_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9784,7 +9658,7 @@ func (x *DB_SystemChanceArray) String() string { func (*DB_SystemChanceArray) ProtoMessage() {} func (x *DB_SystemChanceArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[127] + mi := &file_pbdata_proto_msgTypes[125] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9797,7 +9671,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{127} + return file_pbdata_proto_rawDescGZIP(), []int{125} } func (x *DB_SystemChanceArray) GetArr() []*DB_SystemChance { @@ -9826,7 +9700,7 @@ type DB_Task struct { func (x *DB_Task) Reset() { *x = DB_Task{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[128] + mi := &file_pbdata_proto_msgTypes[126] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9839,7 +9713,7 @@ func (x *DB_Task) String() string { func (*DB_Task) ProtoMessage() {} func (x *DB_Task) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[128] + mi := &file_pbdata_proto_msgTypes[126] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9852,7 +9726,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{128} + return file_pbdata_proto_rawDescGZIP(), []int{126} } func (x *DB_Task) GetId() int32 { @@ -9929,7 +9803,7 @@ type DB_TaskArray struct { func (x *DB_TaskArray) Reset() { *x = DB_TaskArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[129] + mi := &file_pbdata_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9942,7 +9816,7 @@ func (x *DB_TaskArray) String() string { func (*DB_TaskArray) ProtoMessage() {} func (x *DB_TaskArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[129] + mi := &file_pbdata_proto_msgTypes[127] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9955,7 +9829,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{129} + return file_pbdata_proto_rawDescGZIP(), []int{127} } func (x *DB_TaskArray) GetArr() []*DB_Task { @@ -9982,7 +9856,7 @@ type DB_ThirdPlatformGameMapping struct { func (x *DB_ThirdPlatformGameMapping) Reset() { *x = DB_ThirdPlatformGameMapping{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[130] + mi := &file_pbdata_proto_msgTypes[128] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9995,7 +9869,7 @@ func (x *DB_ThirdPlatformGameMapping) String() string { func (*DB_ThirdPlatformGameMapping) ProtoMessage() {} func (x *DB_ThirdPlatformGameMapping) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[130] + mi := &file_pbdata_proto_msgTypes[128] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10008,7 +9882,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{130} + return file_pbdata_proto_rawDescGZIP(), []int{128} } func (x *DB_ThirdPlatformGameMapping) GetId() int32 { @@ -10071,7 +9945,7 @@ type DB_ThirdPlatformGameMappingArray struct { func (x *DB_ThirdPlatformGameMappingArray) Reset() { *x = DB_ThirdPlatformGameMappingArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[131] + mi := &file_pbdata_proto_msgTypes[129] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10084,7 +9958,7 @@ func (x *DB_ThirdPlatformGameMappingArray) String() string { func (*DB_ThirdPlatformGameMappingArray) ProtoMessage() {} func (x *DB_ThirdPlatformGameMappingArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[131] + mi := &file_pbdata_proto_msgTypes[129] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10097,7 +9971,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{131} + return file_pbdata_proto_rawDescGZIP(), []int{129} } func (x *DB_ThirdPlatformGameMappingArray) GetArr() []*DB_ThirdPlatformGameMapping { @@ -10120,7 +9994,7 @@ type DB_Tips struct { func (x *DB_Tips) Reset() { *x = DB_Tips{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[132] + mi := &file_pbdata_proto_msgTypes[130] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10133,7 +10007,7 @@ func (x *DB_Tips) String() string { func (*DB_Tips) ProtoMessage() {} func (x *DB_Tips) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[132] + mi := &file_pbdata_proto_msgTypes[130] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10146,7 +10020,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{132} + return file_pbdata_proto_rawDescGZIP(), []int{130} } func (x *DB_Tips) GetId() int32 { @@ -10181,7 +10055,7 @@ type DB_TipsArray struct { func (x *DB_TipsArray) Reset() { *x = DB_TipsArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[133] + mi := &file_pbdata_proto_msgTypes[131] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10194,7 +10068,7 @@ func (x *DB_TipsArray) String() string { func (*DB_TipsArray) ProtoMessage() {} func (x *DB_TipsArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[133] + mi := &file_pbdata_proto_msgTypes[131] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10207,7 +10081,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{133} + return file_pbdata_proto_rawDescGZIP(), []int{131} } func (x *DB_TipsArray) GetArr() []*DB_Tips { @@ -10246,7 +10120,7 @@ type DB_VIP struct { func (x *DB_VIP) Reset() { *x = DB_VIP{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[134] + mi := &file_pbdata_proto_msgTypes[132] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10259,7 +10133,7 @@ func (x *DB_VIP) String() string { func (*DB_VIP) ProtoMessage() {} func (x *DB_VIP) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[134] + mi := &file_pbdata_proto_msgTypes[132] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10272,7 +10146,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{134} + return file_pbdata_proto_rawDescGZIP(), []int{132} } func (x *DB_VIP) GetId() int32 { @@ -10419,7 +10293,7 @@ type DB_VIPArray struct { func (x *DB_VIPArray) Reset() { *x = DB_VIPArray{} if protoimpl.UnsafeEnabled { - mi := &file_pbdata_proto_msgTypes[135] + mi := &file_pbdata_proto_msgTypes[133] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10432,7 +10306,7 @@ func (x *DB_VIPArray) String() string { func (*DB_VIPArray) ProtoMessage() {} func (x *DB_VIPArray) ProtoReflect() protoreflect.Message { - mi := &file_pbdata_proto_msgTypes[135] + mi := &file_pbdata_proto_msgTypes[133] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10445,7 +10319,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{135} + return file_pbdata_proto_rawDescGZIP(), []int{133} } func (x *DB_VIPArray) GetArr() []*DB_VIP { @@ -11437,395 +11311,386 @@ var file_pbdata_proto_rawDesc = []byte{ 0x5f, 0x4e, 0x65, 0x77, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 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, 0x4e, 0x65, 0x77, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0xe3, 0x01, 0x0a, 0x0b, 0x44, 0x42, 0x5f, 0x50, + 0x65, 0x72, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0xcb, 0x02, 0x0a, 0x0b, 0x44, 0x42, 0x5f, 0x50, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x50, 0x65, 0x74, 0x49, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x50, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, - 0x09, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x53, - 0x4b, 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x53, - 0x4b, 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x4b, 0x69, 0x6c, 0x6c, - 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x53, 0x4b, 0x69, - 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x28, 0x0a, 0x0f, 0x53, 0x4b, 0x69, 0x6c, 0x6c, - 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0f, 0x53, 0x4b, 0x69, 0x6c, 0x6c, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x53, 0x4b, 0x69, 0x6c, 0x6c, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, - 0x54, 0x61, 0x6b, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x53, 0x4b, 0x69, - 0x6c, 0x6c, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x61, 0x6b, 0x65, 0x73, 0x22, 0x39, 0x0a, - 0x10, 0x44, 0x42, 0x5f, 0x50, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x41, 0x72, 0x72, 0x61, - 0x79, 0x12, 0x25, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, - 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x65, 0x74, 0x53, 0x6b, - 0x69, 0x6c, 0x6c, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0xae, 0x01, 0x0a, 0x0e, 0x44, 0x42, 0x5f, - 0x50, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x49, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, - 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x6b, - 0x69, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, - 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x4b, 0x69, 0x6c, 0x6c, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x53, 0x4b, 0x69, 0x6c, 0x6c, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, - 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, - 0x74, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x3f, 0x0a, 0x13, 0x44, 0x42, 0x5f, - 0x50, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x73, 0x41, 0x72, 0x72, 0x61, 0x79, - 0x12, 0x28, 0x0a, 0x03, 0x41, 0x72, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, 0x42, 0x5f, 0x50, 0x65, 0x74, 0x53, 0x6b, 0x69, - 0x6c, 0x6c, 0x44, 0x65, 0x73, 0x52, 0x03, 0x41, 0x72, 0x72, 0x22, 0xa2, 0x02, 0x0a, 0x0f, 0x44, - 0x42, 0x5f, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4c, 0x6f, 0x74, 0x74, 0x65, 0x72, 0x79, 0x12, 0x0e, - 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x49, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x47, 0x72, 0x61, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, - 0x47, 0x72, 0x61, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4f, 0x64, 0x64, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x03, 0x4f, 0x64, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, - 0x74, 0x65, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, - 0x74, 0x65, 0x31, 0x12, 0x12, 0x0a, 0x04, 0x4f, 0x64, 0x64, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x04, 0x4f, 0x64, 0x64, 0x32, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, - 0x74, 0x65, 0x32, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, - 0x74, 0x65, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x4f, 0x64, 0x64, 0x33, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x04, 0x4f, 0x64, 0x64, 0x33, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, - 0x74, 0x65, 0x33, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, - 0x74, 0x65, 0x33, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, 0x74, 0x65, 0x34, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, 0x74, 0x65, 0x34, 0x22, - 0x41, 0x0a, 0x14, 0x44, 0x42, 0x5f, 0x50, 0x68, 0x6f, 0x6e, 0x65, 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, 0xce, 0x02, 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, 0x12, - 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x78, 0x47, 0x6f, 0x6c, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x4d, 0x61, 0x78, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x4d, 0x61, 0x78, - 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4d, - 0x61, 0x78, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x44, 0x69, 0x61, - 0x6d, 0x6f, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x44, 0x69, - 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x43, 0x6f, 0x69, 0x6e, 0x50, - 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x43, 0x6f, 0x69, 0x6e, - 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, - 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x44, 0x69, 0x61, - 0x6d, 0x6f, 0x6e, 0x64, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x44, 0x69, 0x61, - 0x6d, 0x6f, 0x6e, 0x64, 0x4e, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0f, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x4e, 0x6f, 0x77, 0x50, 0x72, - 0x69, 0x63, 0x65, 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, + 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x6b, 0x69, 0x6c, 0x6c, + 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x50, 0x65, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x50, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, + 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x53, 0x6b, 0x69, + 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x6b, 0x69, 0x6c, 0x6c, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x53, 0x6b, 0x69, 0x6c, + 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x44, 0x65, + 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x44, 0x65, + 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x4b, 0x69, 0x6c, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x53, 0x4b, 0x69, 0x6c, 0x6c, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x18, + 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x44, + 0x42, 0x5f, 0x50, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x43, + 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x49, 0x74, 0x65, 0x6d, + 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x1a, 0x3d, 0x0a, 0x0f, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, + 0x6e, 0x73, 0x75, 0x6d, 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, 0x39, 0x0a, 0x10, 0x44, 0x42, 0x5f, 0x50, 0x65, 0x74, 0x53, + 0x6b, 0x69, 0x6c, 0x6c, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x25, 0x0a, 0x03, 0x41, 0x72, 0x72, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, + 0x44, 0x42, 0x5f, 0x50, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x52, 0x03, 0x41, 0x72, 0x72, + 0x22, 0xa2, 0x02, 0x0a, 0x0f, 0x44, 0x42, 0x5f, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4c, 0x6f, 0x74, + 0x74, 0x65, 0x72, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, + 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x49, + 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x47, 0x72, 0x61, 0x64, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x47, 0x72, 0x61, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4f, + 0x64, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x4f, 0x64, 0x64, 0x12, 0x1a, 0x0a, + 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, 0x74, 0x65, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, 0x74, 0x65, 0x31, 0x12, 0x12, 0x0a, 0x04, 0x4f, 0x64, 0x64, + 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x4f, 0x64, 0x64, 0x32, 0x12, 0x1a, 0x0a, + 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, 0x74, 0x65, 0x32, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, 0x74, 0x65, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x4f, 0x64, 0x64, + 0x33, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x4f, 0x64, 0x64, 0x33, 0x12, 0x1a, 0x0a, + 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, 0x74, 0x65, 0x33, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x4f, 0x64, 0x64, 0x72, 0x61, 0x74, 0x65, 0x33, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x64, 0x64, + 0x72, 0x61, 0x74, 0x65, 0x34, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4f, 0x64, 0x64, + 0x72, 0x61, 0x74, 0x65, 0x34, 0x22, 0x41, 0x0a, 0x14, 0x44, 0x42, 0x5f, 0x50, 0x68, 0x6f, 0x6e, + 0x65, 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, 0xce, 0x02, 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, - 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, 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, + 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, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x61, 0x78, 0x47, 0x6f, 0x6c, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4d, 0x61, 0x78, 0x47, 0x6f, 0x6c, 0x64, 0x12, + 0x1e, 0x0a, 0x0a, 0x4d, 0x61, 0x78, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4d, 0x61, 0x78, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x12, + 0x1c, 0x0a, 0x09, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x09, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x1c, 0x0a, + 0x09, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x44, + 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0c, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, + 0x28, 0x0a, 0x0f, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x4e, 0x6f, 0x77, 0x50, 0x72, 0x69, + 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, + 0x64, 0x4e, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x63, 0x65, 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, + 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, 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, 0xea, 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, 0x12, 0x26, 0x0a, 0x0e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x72, - 0x65, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x46, 0x72, 0x65, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 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, + 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, 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, + 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, 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, + 0xea, 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, 0x12, 0x26, 0x0a, 0x0e, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x46, 0x72, 0x65, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x13, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x72, 0x65, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x73, 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 ( @@ -11840,7 +11705,7 @@ func file_pbdata_proto_rawDescGZIP() []byte { return file_pbdata_proto_rawDescData } -var file_pbdata_proto_msgTypes = make([]protoimpl.MessageInfo, 145) +var file_pbdata_proto_msgTypes = make([]protoimpl.MessageInfo, 144) var file_pbdata_proto_goTypes = []interface{}{ (*DB_ActSign)(nil), // 0: server.DB_ActSign (*DB_ActSignArray)(nil), // 1: server.DB_ActSignArray @@ -11940,53 +11805,52 @@ var file_pbdata_proto_goTypes = []interface{}{ (*DB_NewPlayerArray)(nil), // 95: server.DB_NewPlayerArray (*DB_PetSkill)(nil), // 96: server.DB_PetSkill (*DB_PetSkillArray)(nil), // 97: server.DB_PetSkillArray - (*DB_PetSkillDes)(nil), // 98: server.DB_PetSkillDes - (*DB_PetSkillDesArray)(nil), // 99: server.DB_PetSkillDesArray - (*DB_PhoneLottery)(nil), // 100: server.DB_PhoneLottery - (*DB_PhoneLotteryArray)(nil), // 101: server.DB_PhoneLotteryArray - (*DB_PigBank_Diamond)(nil), // 102: server.DB_PigBank_Diamond - (*DB_PigBank_DiamondArray)(nil), // 103: server.DB_PigBank_DiamondArray - (*DB_Pigbank_Prop)(nil), // 104: server.DB_Pigbank_Prop - (*DB_Pigbank_PropArray)(nil), // 105: server.DB_Pigbank_PropArray - (*DB_PlayerExp)(nil), // 106: server.DB_PlayerExp - (*DB_PlayerExpArray)(nil), // 107: server.DB_PlayerExpArray - (*DB_PlayerInfo)(nil), // 108: server.DB_PlayerInfo - (*DB_PlayerInfoArray)(nil), // 109: server.DB_PlayerInfoArray - (*DB_PlayerType)(nil), // 110: server.DB_PlayerType - (*DB_PlayerTypeArray)(nil), // 111: server.DB_PlayerTypeArray - (*DB_PotOdd)(nil), // 112: server.DB_PotOdd - (*DB_PotOddArray)(nil), // 113: server.DB_PotOddArray - (*DB_PropExchange)(nil), // 114: server.DB_PropExchange - (*DB_PropExchangeArray)(nil), // 115: server.DB_PropExchangeArray - (*DB_RankCycle)(nil), // 116: server.DB_RankCycle - (*DB_RankCycleArray)(nil), // 117: server.DB_RankCycleArray - (*DB_RankLevel)(nil), // 118: server.DB_RankLevel - (*DB_RankLevelArray)(nil), // 119: server.DB_RankLevelArray - (*DB_RankReward)(nil), // 120: server.DB_RankReward - (*DB_RankRewardArray)(nil), // 121: server.DB_RankRewardArray - (*DB_Sensitive_Words)(nil), // 122: server.DB_Sensitive_Words - (*DB_Sensitive_WordsArray)(nil), // 123: server.DB_Sensitive_WordsArray - (*DB_SlotRateWeight)(nil), // 124: server.DB_SlotRateWeight - (*DB_SlotRateWeightArray)(nil), // 125: server.DB_SlotRateWeightArray - (*DB_SystemChance)(nil), // 126: server.DB_SystemChance - (*DB_SystemChanceArray)(nil), // 127: server.DB_SystemChanceArray - (*DB_Task)(nil), // 128: server.DB_Task - (*DB_TaskArray)(nil), // 129: server.DB_TaskArray - (*DB_ThirdPlatformGameMapping)(nil), // 130: server.DB_ThirdPlatformGameMapping - (*DB_ThirdPlatformGameMappingArray)(nil), // 131: server.DB_ThirdPlatformGameMappingArray - (*DB_Tips)(nil), // 132: server.DB_Tips - (*DB_TipsArray)(nil), // 133: server.DB_TipsArray - (*DB_VIP)(nil), // 134: server.DB_VIP - (*DB_VIPArray)(nil), // 135: server.DB_VIPArray - nil, // 136: server.DB_CollectBox.ItemIDEntry - nil, // 137: server.DB_GiftBox.ItemIDEntry - nil, // 138: server.DB_GiftCard.RewardsEntry - nil, // 139: server.DB_GiftCard.DayRewardsEntry - nil, // 140: server.DB_PropExchange.CostEntry - nil, // 141: server.DB_PropExchange.GainEntry - nil, // 142: server.DB_Task.AwardEntry - nil, // 143: server.DB_VIP.Privilege7Entry - nil, // 144: server.DB_VIP.AwardEntry + (*DB_PhoneLottery)(nil), // 98: server.DB_PhoneLottery + (*DB_PhoneLotteryArray)(nil), // 99: server.DB_PhoneLotteryArray + (*DB_PigBank_Diamond)(nil), // 100: server.DB_PigBank_Diamond + (*DB_PigBank_DiamondArray)(nil), // 101: server.DB_PigBank_DiamondArray + (*DB_Pigbank_Prop)(nil), // 102: server.DB_Pigbank_Prop + (*DB_Pigbank_PropArray)(nil), // 103: server.DB_Pigbank_PropArray + (*DB_PlayerExp)(nil), // 104: server.DB_PlayerExp + (*DB_PlayerExpArray)(nil), // 105: server.DB_PlayerExpArray + (*DB_PlayerInfo)(nil), // 106: server.DB_PlayerInfo + (*DB_PlayerInfoArray)(nil), // 107: server.DB_PlayerInfoArray + (*DB_PlayerType)(nil), // 108: server.DB_PlayerType + (*DB_PlayerTypeArray)(nil), // 109: server.DB_PlayerTypeArray + (*DB_PotOdd)(nil), // 110: server.DB_PotOdd + (*DB_PotOddArray)(nil), // 111: server.DB_PotOddArray + (*DB_PropExchange)(nil), // 112: server.DB_PropExchange + (*DB_PropExchangeArray)(nil), // 113: server.DB_PropExchangeArray + (*DB_RankCycle)(nil), // 114: server.DB_RankCycle + (*DB_RankCycleArray)(nil), // 115: server.DB_RankCycleArray + (*DB_RankLevel)(nil), // 116: server.DB_RankLevel + (*DB_RankLevelArray)(nil), // 117: server.DB_RankLevelArray + (*DB_RankReward)(nil), // 118: server.DB_RankReward + (*DB_RankRewardArray)(nil), // 119: server.DB_RankRewardArray + (*DB_Sensitive_Words)(nil), // 120: server.DB_Sensitive_Words + (*DB_Sensitive_WordsArray)(nil), // 121: server.DB_Sensitive_WordsArray + (*DB_SlotRateWeight)(nil), // 122: server.DB_SlotRateWeight + (*DB_SlotRateWeightArray)(nil), // 123: server.DB_SlotRateWeightArray + (*DB_SystemChance)(nil), // 124: server.DB_SystemChance + (*DB_SystemChanceArray)(nil), // 125: server.DB_SystemChanceArray + (*DB_Task)(nil), // 126: server.DB_Task + (*DB_TaskArray)(nil), // 127: server.DB_TaskArray + (*DB_ThirdPlatformGameMapping)(nil), // 128: server.DB_ThirdPlatformGameMapping + (*DB_ThirdPlatformGameMappingArray)(nil), // 129: server.DB_ThirdPlatformGameMappingArray + (*DB_Tips)(nil), // 130: server.DB_Tips + (*DB_TipsArray)(nil), // 131: server.DB_TipsArray + (*DB_VIP)(nil), // 132: server.DB_VIP + (*DB_VIPArray)(nil), // 133: server.DB_VIPArray + nil, // 134: server.DB_CollectBox.ItemIDEntry + nil, // 135: server.DB_GiftBox.ItemIDEntry + nil, // 136: server.DB_GiftCard.RewardsEntry + nil, // 137: server.DB_GiftCard.DayRewardsEntry + nil, // 138: server.DB_PetSkill.ItemConsumEntry + nil, // 139: server.DB_PropExchange.CostEntry + nil, // 140: server.DB_PropExchange.GainEntry + nil, // 141: server.DB_Task.AwardEntry + nil, // 142: server.DB_VIP.Privilege7Entry + nil, // 143: server.DB_VIP.AwardEntry } var file_pbdata_proto_depIdxs = []int32{ 0, // 0: server.DB_ActSignArray.Arr:type_name -> server.DB_ActSign @@ -12001,7 +11865,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 - 136, // 12: server.DB_CollectBox.ItemID:type_name -> server.DB_CollectBox.ItemIDEntry + 134, // 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 @@ -12026,10 +11890,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 - 137, // 37: server.DB_GiftBox.ItemID:type_name -> server.DB_GiftBox.ItemIDEntry + 135, // 37: server.DB_GiftBox.ItemID:type_name -> server.DB_GiftBox.ItemIDEntry 72, // 38: server.DB_GiftBoxArray.Arr:type_name -> server.DB_GiftBox - 138, // 39: server.DB_GiftCard.Rewards:type_name -> server.DB_GiftCard.RewardsEntry - 139, // 40: server.DB_GiftCard.DayRewards:type_name -> server.DB_GiftCard.DayRewardsEntry + 136, // 39: server.DB_GiftCard.Rewards:type_name -> server.DB_GiftCard.RewardsEntry + 137, // 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 @@ -12041,31 +11905,31 @@ var file_pbdata_proto_depIdxs = []int32{ 90, // 49: server.DB_NameBoyArray.Arr:type_name -> server.DB_NameBoy 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_PetSkillArray.Arr:type_name -> server.DB_PetSkill - 98, // 53: server.DB_PetSkillDesArray.Arr:type_name -> server.DB_PetSkillDes - 100, // 54: server.DB_PhoneLotteryArray.Arr:type_name -> server.DB_PhoneLottery - 102, // 55: server.DB_PigBank_DiamondArray.Arr:type_name -> server.DB_PigBank_Diamond - 104, // 56: server.DB_Pigbank_PropArray.Arr:type_name -> server.DB_Pigbank_Prop - 106, // 57: server.DB_PlayerExpArray.Arr:type_name -> server.DB_PlayerExp - 108, // 58: server.DB_PlayerInfoArray.Arr:type_name -> server.DB_PlayerInfo - 110, // 59: server.DB_PlayerTypeArray.Arr:type_name -> server.DB_PlayerType - 112, // 60: server.DB_PotOddArray.Arr:type_name -> server.DB_PotOdd - 140, // 61: server.DB_PropExchange.Cost:type_name -> server.DB_PropExchange.CostEntry - 141, // 62: server.DB_PropExchange.Gain:type_name -> server.DB_PropExchange.GainEntry - 114, // 63: server.DB_PropExchangeArray.Arr:type_name -> server.DB_PropExchange - 116, // 64: server.DB_RankCycleArray.Arr:type_name -> server.DB_RankCycle - 118, // 65: server.DB_RankLevelArray.Arr:type_name -> server.DB_RankLevel - 120, // 66: server.DB_RankRewardArray.Arr:type_name -> server.DB_RankReward - 122, // 67: server.DB_Sensitive_WordsArray.Arr:type_name -> server.DB_Sensitive_Words - 124, // 68: server.DB_SlotRateWeightArray.Arr:type_name -> server.DB_SlotRateWeight - 126, // 69: server.DB_SystemChanceArray.Arr:type_name -> server.DB_SystemChance - 142, // 70: server.DB_Task.Award:type_name -> server.DB_Task.AwardEntry - 128, // 71: server.DB_TaskArray.Arr:type_name -> server.DB_Task - 130, // 72: server.DB_ThirdPlatformGameMappingArray.Arr:type_name -> server.DB_ThirdPlatformGameMapping - 132, // 73: server.DB_TipsArray.Arr:type_name -> server.DB_Tips - 143, // 74: server.DB_VIP.Privilege7:type_name -> server.DB_VIP.Privilege7Entry - 144, // 75: server.DB_VIP.Award:type_name -> server.DB_VIP.AwardEntry - 134, // 76: server.DB_VIPArray.Arr:type_name -> server.DB_VIP + 138, // 52: server.DB_PetSkill.ItemConsum:type_name -> server.DB_PetSkill.ItemConsumEntry + 96, // 53: server.DB_PetSkillArray.Arr:type_name -> server.DB_PetSkill + 98, // 54: server.DB_PhoneLotteryArray.Arr:type_name -> server.DB_PhoneLottery + 100, // 55: server.DB_PigBank_DiamondArray.Arr:type_name -> server.DB_PigBank_Diamond + 102, // 56: server.DB_Pigbank_PropArray.Arr:type_name -> server.DB_Pigbank_Prop + 104, // 57: server.DB_PlayerExpArray.Arr:type_name -> server.DB_PlayerExp + 106, // 58: server.DB_PlayerInfoArray.Arr:type_name -> server.DB_PlayerInfo + 108, // 59: server.DB_PlayerTypeArray.Arr:type_name -> server.DB_PlayerType + 110, // 60: server.DB_PotOddArray.Arr:type_name -> server.DB_PotOdd + 139, // 61: server.DB_PropExchange.Cost:type_name -> server.DB_PropExchange.CostEntry + 140, // 62: server.DB_PropExchange.Gain:type_name -> server.DB_PropExchange.GainEntry + 112, // 63: server.DB_PropExchangeArray.Arr:type_name -> server.DB_PropExchange + 114, // 64: server.DB_RankCycleArray.Arr:type_name -> server.DB_RankCycle + 116, // 65: server.DB_RankLevelArray.Arr:type_name -> server.DB_RankLevel + 118, // 66: server.DB_RankRewardArray.Arr:type_name -> server.DB_RankReward + 120, // 67: server.DB_Sensitive_WordsArray.Arr:type_name -> server.DB_Sensitive_Words + 122, // 68: server.DB_SlotRateWeightArray.Arr:type_name -> server.DB_SlotRateWeight + 124, // 69: server.DB_SystemChanceArray.Arr:type_name -> server.DB_SystemChance + 141, // 70: server.DB_Task.Award:type_name -> server.DB_Task.AwardEntry + 126, // 71: server.DB_TaskArray.Arr:type_name -> server.DB_Task + 128, // 72: server.DB_ThirdPlatformGameMappingArray.Arr:type_name -> server.DB_ThirdPlatformGameMapping + 130, // 73: server.DB_TipsArray.Arr:type_name -> server.DB_Tips + 142, // 74: server.DB_VIP.Privilege7:type_name -> server.DB_VIP.Privilege7Entry + 143, // 75: server.DB_VIP.Award:type_name -> server.DB_VIP.AwardEntry + 132, // 76: server.DB_VIPArray.Arr:type_name -> server.DB_VIP 77, // [77:77] is the sub-list for method output_type 77, // [77:77] is the sub-list for method input_type 77, // [77:77] is the sub-list for extension type_name @@ -13256,30 +13120,6 @@ func file_pbdata_proto_init() { } } file_pbdata_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PetSkillDes); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_pbdata_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DB_PetSkillDesArray); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_pbdata_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PhoneLottery); i { case 0: return &v.state @@ -13291,7 +13131,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PhoneLotteryArray); i { case 0: return &v.state @@ -13303,7 +13143,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PigBank_Diamond); i { case 0: return &v.state @@ -13315,7 +13155,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PigBank_DiamondArray); i { case 0: return &v.state @@ -13327,7 +13167,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_Pigbank_Prop); i { case 0: return &v.state @@ -13339,7 +13179,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_Pigbank_PropArray); i { case 0: return &v.state @@ -13351,7 +13191,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PlayerExp); i { case 0: return &v.state @@ -13363,7 +13203,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PlayerExpArray); i { case 0: return &v.state @@ -13375,7 +13215,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PlayerInfo); i { case 0: return &v.state @@ -13387,7 +13227,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PlayerInfoArray); i { case 0: return &v.state @@ -13399,7 +13239,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PlayerType); i { case 0: return &v.state @@ -13411,7 +13251,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PlayerTypeArray); i { case 0: return &v.state @@ -13423,7 +13263,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PotOdd); i { case 0: return &v.state @@ -13435,7 +13275,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PotOddArray); i { case 0: return &v.state @@ -13447,7 +13287,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PropExchange); i { case 0: return &v.state @@ -13459,7 +13299,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_PropExchangeArray); i { case 0: return &v.state @@ -13471,7 +13311,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_RankCycle); i { case 0: return &v.state @@ -13483,7 +13323,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_RankCycleArray); i { case 0: return &v.state @@ -13495,7 +13335,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_RankLevel); i { case 0: return &v.state @@ -13507,7 +13347,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_RankLevelArray); i { case 0: return &v.state @@ -13519,7 +13359,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_RankReward); i { case 0: return &v.state @@ -13531,7 +13371,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_RankRewardArray); i { case 0: return &v.state @@ -13543,7 +13383,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_Sensitive_Words); i { case 0: return &v.state @@ -13555,7 +13395,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_Sensitive_WordsArray); i { case 0: return &v.state @@ -13567,7 +13407,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_SlotRateWeight); i { case 0: return &v.state @@ -13579,7 +13419,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_SlotRateWeightArray); i { case 0: return &v.state @@ -13591,7 +13431,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_SystemChance); i { case 0: return &v.state @@ -13603,7 +13443,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_SystemChanceArray); i { case 0: return &v.state @@ -13615,7 +13455,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_Task); i { case 0: return &v.state @@ -13627,7 +13467,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_TaskArray); i { case 0: return &v.state @@ -13639,7 +13479,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_ThirdPlatformGameMapping); i { case 0: return &v.state @@ -13651,7 +13491,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_ThirdPlatformGameMappingArray); i { case 0: return &v.state @@ -13663,7 +13503,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_Tips); i { case 0: return &v.state @@ -13675,7 +13515,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_TipsArray); i { case 0: return &v.state @@ -13687,7 +13527,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_VIP); i { case 0: return &v.state @@ -13699,7 +13539,7 @@ func file_pbdata_proto_init() { return nil } } - file_pbdata_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { + file_pbdata_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DB_VIPArray); i { case 0: return &v.state @@ -13718,7 +13558,7 @@ func file_pbdata_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pbdata_proto_rawDesc, NumEnums: 0, - NumMessages: 145, + NumMessages: 144, NumExtensions: 0, NumServices: 0, }, diff --git a/protocol/server/pbdata.proto b/protocol/server/pbdata.proto index 915bff5..ac4ed32 100644 --- a/protocol/server/pbdata.proto +++ b/protocol/server/pbdata.proto @@ -1241,17 +1241,19 @@ message DB_PetSkill { int32 Id = 1; - int32 PetId = 2; + int32 SkillId = 2; - string SkillName = 3; + int32 PetId = 3; - string SKillDes = 4; + int32 SkillLevel = 4; - int32 SKillLevel = 5; + string SkillName = 5; - int32 SKillUnlockType = 6; + string SkillDes = 6; - string SKillUnlockTakes = 7; + string SKillValue = 7; + + map ItemConsum = 8; } @@ -1259,26 +1261,6 @@ message DB_PetSkillArray { repeated DB_PetSkill Arr = 1; } -message DB_PetSkillDes { - - int32 Id = 1; - - int32 SkillId = 2; - - int32 SkillLevel = 3; - - string SKillValue = 4; - - int32 Fragment = 5; - - int32 Amount = 6; - -} - -message DB_PetSkillDesArray { - repeated DB_PetSkillDes Arr = 1; -} - message DB_PhoneLottery { int32 Id = 1; diff --git a/protocol/webapi/webapi.pb.go b/protocol/webapi/webapi.pb.go index 1907457..9f91692 100644 --- a/protocol/webapi/webapi.pb.go +++ b/protocol/webapi/webapi.pb.go @@ -8653,6 +8653,196 @@ func (x *SAAddItemById) GetMsg() string { return "" } +//获取运营商配置[/get_SMSConfig] +type ASSMSConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Platform string `protobuf:"bytes,1,opt,name=Platform,proto3" json:"Platform,omitempty"` // 平台id + SnId int32 `protobuf:"varint,2,opt,name=SnId,proto3" json:"SnId,omitempty"` // 玩家id +} + +func (x *ASSMSConfig) Reset() { + *x = ASSMSConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_webapi_proto_msgTypes[127] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ASSMSConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ASSMSConfig) ProtoMessage() {} + +func (x *ASSMSConfig) ProtoReflect() protoreflect.Message { + mi := &file_webapi_proto_msgTypes[127] + 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 ASSMSConfig.ProtoReflect.Descriptor instead. +func (*ASSMSConfig) Descriptor() ([]byte, []int) { + return file_webapi_proto_rawDescGZIP(), []int{127} +} + +func (x *ASSMSConfig) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *ASSMSConfig) GetSnId() int32 { + if x != nil { + return x.SnId + } + return 0 +} + +type SASMSConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Platform string `protobuf:"bytes,1,opt,name=Platform,proto3" json:"Platform,omitempty"` // 平台id + SnId int32 `protobuf:"varint,2,opt,name=SnId,proto3" json:"SnId,omitempty"` // 玩家id + Info []*SMSInfo `protobuf:"bytes,3,rep,name=Info,proto3" json:"Info,omitempty"` + Tag TagCode `protobuf:"varint,4,opt,name=Tag,proto3,enum=webapi.TagCode" json:"Tag,omitempty"` //错误码 + Msg string `protobuf:"bytes,5,opt,name=Msg,proto3" json:"Msg,omitempty"` //错误信息(选填) +} + +func (x *SASMSConfig) Reset() { + *x = SASMSConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_webapi_proto_msgTypes[128] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SASMSConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SASMSConfig) ProtoMessage() {} + +func (x *SASMSConfig) ProtoReflect() protoreflect.Message { + mi := &file_webapi_proto_msgTypes[128] + 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 SASMSConfig.ProtoReflect.Descriptor instead. +func (*SASMSConfig) Descriptor() ([]byte, []int) { + return file_webapi_proto_rawDescGZIP(), []int{128} +} + +func (x *SASMSConfig) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *SASMSConfig) GetSnId() int32 { + if x != nil { + return x.SnId + } + return 0 +} + +func (x *SASMSConfig) GetInfo() []*SMSInfo { + if x != nil { + return x.Info + } + return nil +} + +func (x *SASMSConfig) GetTag() TagCode { + if x != nil { + return x.Tag + } + return TagCode_UNKNOWN +} + +func (x *SASMSConfig) GetMsg() string { + if x != nil { + return x.Msg + } + return "" +} + +type SMSInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` + SmsName string `protobuf:"bytes,2,opt,name=SmsName,proto3" json:"SmsName,omitempty"` +} + +func (x *SMSInfo) Reset() { + *x = SMSInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_webapi_proto_msgTypes[129] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SMSInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SMSInfo) ProtoMessage() {} + +func (x *SMSInfo) ProtoReflect() protoreflect.Message { + mi := &file_webapi_proto_msgTypes[129] + 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 SMSInfo.ProtoReflect.Descriptor instead. +func (*SMSInfo) Descriptor() ([]byte, []int) { + return file_webapi_proto_rawDescGZIP(), []int{129} +} + +func (x *SMSInfo) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *SMSInfo) GetSmsName() string { + if x != nil { + return x.SmsName + } + return "" +} + var File_webapi_proto protoreflect.FileDescriptor var file_webapi_proto_rawDesc = []byte{ @@ -9588,23 +9778,40 @@ var file_webapi_proto_rawDesc = []byte{ 0x79, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x03, 0x54, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x77, 0x65, 0x62, 0x61, 0x70, 0x69, 0x2e, 0x54, 0x61, 0x67, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x54, 0x61, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x2a, 0xce, 0x01, 0x0a, 0x07, 0x54, 0x61, 0x67, - 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, - 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x0a, - 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x49, - 0x47, 0x4e, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x52, - 0x4f, 0x54, 0x4f, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, - 0x12, 0x12, 0x0a, 0x0e, 0x4a, 0x59, 0x42, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, - 0x4f, 0x52, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x4a, 0x59, 0x42, 0x5f, 0x43, 0x4f, 0x44, 0x45, - 0x5f, 0x45, 0x58, 0x49, 0x53, 0x54, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, - 0x5f, 0x4e, 0x6f, 0x74, 0x45, 0x58, 0x49, 0x53, 0x54, 0x10, 0x07, 0x12, 0x09, 0x0a, 0x05, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x10, 0x08, 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x65, 0x6c, 0x45, 0x78, 0x69, - 0x73, 0x74, 0x10, 0x09, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, - 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x0a, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x65, 0x6c, - 0x4e, 0x6f, 0x74, 0x42, 0x69, 0x6e, 0x64, 0x10, 0x0b, 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, 0x77, 0x65, 0x62, 0x61, 0x70, - 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x3d, 0x0a, 0x0b, 0x41, 0x53, 0x53, 0x4d, + 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 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, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x22, 0x97, 0x01, 0x0a, 0x0b, 0x53, 0x41, 0x53, 0x4d, + 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 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, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x77, 0x65, 0x62, 0x61, 0x70, 0x69, 0x2e, 0x53, + 0x4d, 0x53, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x21, 0x0a, 0x03, + 0x54, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x77, 0x65, 0x62, 0x61, + 0x70, 0x69, 0x2e, 0x54, 0x61, 0x67, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x54, 0x61, 0x67, 0x12, + 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, + 0x67, 0x22, 0x33, 0x0a, 0x07, 0x53, 0x4d, 0x53, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, + 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, + 0x53, 0x6d, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x53, + 0x6d, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x2a, 0xce, 0x01, 0x0a, 0x07, 0x54, 0x61, 0x67, 0x43, 0x6f, + 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, + 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, + 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x49, 0x47, 0x4e, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x52, 0x4f, 0x54, + 0x4f, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, 0x12, 0x12, + 0x0a, 0x0e, 0x4a, 0x59, 0x42, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, + 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x4a, 0x59, 0x42, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x45, + 0x58, 0x49, 0x53, 0x54, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x5f, 0x4e, + 0x6f, 0x74, 0x45, 0x58, 0x49, 0x53, 0x54, 0x10, 0x07, 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x10, 0x08, 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x65, 0x6c, 0x45, 0x78, 0x69, 0x73, 0x74, + 0x10, 0x09, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x74, + 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x0a, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x65, 0x6c, 0x4e, 0x6f, + 0x74, 0x42, 0x69, 0x6e, 0x64, 0x10, 0x0b, 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, 0x77, 0x65, 0x62, 0x61, 0x70, 0x69, 0x62, + 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -9620,7 +9827,7 @@ func file_webapi_proto_rawDescGZIP() []byte { } var file_webapi_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_webapi_proto_msgTypes = make([]protoimpl.MessageInfo, 127) +var file_webapi_proto_msgTypes = make([]protoimpl.MessageInfo, 130) var file_webapi_proto_goTypes = []interface{}{ (TagCode)(0), // 0: webapi.TagCode (*SAPlatformInfo)(nil), // 1: webapi.SAPlatformInfo @@ -9750,92 +9957,95 @@ var file_webapi_proto_goTypes = []interface{}{ (*SAPlayerInviteLink)(nil), // 125: webapi.SAPlayerInviteLink (*ASAddItemById)(nil), // 126: webapi.ASAddItemById (*SAAddItemById)(nil), // 127: webapi.SAAddItemById - (*Platform)(nil), // 128: webapi.Platform - (*PlatformGameConfig)(nil), // 129: webapi.PlatformGameConfig - (*GameConfigGroup)(nil), // 130: webapi.GameConfigGroup - (*GameConfigGlobal)(nil), // 131: webapi.GameConfigGlobal - (*PlatformDbConfig)(nil), // 132: webapi.PlatformDbConfig - (*CoinPoolSetting)(nil), // 133: webapi.CoinPoolSetting - (*RoomInfo)(nil), // 134: webapi.RoomInfo - (*PlayerSingleAdjust)(nil), // 135: webapi.PlayerSingleAdjust - (*PlayerData)(nil), // 136: webapi.PlayerData - (*HorseRaceLamp)(nil), // 137: webapi.HorseRaceLamp - (*MessageInfo)(nil), // 138: webapi.MessageInfo - (*ServerInfo)(nil), // 139: webapi.ServerInfo - (*OnlineReport)(nil), // 140: webapi.OnlineReport - (*ItemInfo)(nil), // 141: webapi.ItemInfo - (*ExchangeShop)(nil), // 142: webapi.ExchangeShop + (*ASSMSConfig)(nil), // 128: webapi.ASSMSConfig + (*SASMSConfig)(nil), // 129: webapi.SASMSConfig + (*SMSInfo)(nil), // 130: webapi.SMSInfo + (*Platform)(nil), // 131: webapi.Platform + (*PlatformGameConfig)(nil), // 132: webapi.PlatformGameConfig + (*GameConfigGroup)(nil), // 133: webapi.GameConfigGroup + (*GameConfigGlobal)(nil), // 134: webapi.GameConfigGlobal + (*PlatformDbConfig)(nil), // 135: webapi.PlatformDbConfig + (*CoinPoolSetting)(nil), // 136: webapi.CoinPoolSetting + (*RoomInfo)(nil), // 137: webapi.RoomInfo + (*PlayerSingleAdjust)(nil), // 138: webapi.PlayerSingleAdjust + (*PlayerData)(nil), // 139: webapi.PlayerData + (*HorseRaceLamp)(nil), // 140: webapi.HorseRaceLamp + (*MessageInfo)(nil), // 141: webapi.MessageInfo + (*ServerInfo)(nil), // 142: webapi.ServerInfo + (*OnlineReport)(nil), // 143: webapi.OnlineReport + (*ItemInfo)(nil), // 144: webapi.ItemInfo + (*ExchangeShop)(nil), // 145: webapi.ExchangeShop } var file_webapi_proto_depIdxs = []int32{ 0, // 0: webapi.ASPlatformInfo.Tag:type_name -> webapi.TagCode - 128, // 1: webapi.ASPlatformInfo.Platforms:type_name -> webapi.Platform + 131, // 1: webapi.ASPlatformInfo.Platforms:type_name -> webapi.Platform 0, // 2: webapi.ASGameConfig.Tag:type_name -> webapi.TagCode - 129, // 3: webapi.ASGameConfig.Configs:type_name -> webapi.PlatformGameConfig + 132, // 3: webapi.ASGameConfig.Configs:type_name -> webapi.PlatformGameConfig 0, // 4: webapi.ASGameConfigGroup.Tag:type_name -> webapi.TagCode - 130, // 5: webapi.ASGameConfigGroup.GameConfigGroup:type_name -> webapi.GameConfigGroup + 133, // 5: webapi.ASGameConfigGroup.GameConfigGroup:type_name -> webapi.GameConfigGroup 0, // 6: webapi.ASGameConfigGlobal.Tag:type_name -> webapi.TagCode - 131, // 7: webapi.ASGameConfigGlobal.GameStatus:type_name -> webapi.GameConfigGlobal + 134, // 7: webapi.ASGameConfigGlobal.GameStatus:type_name -> webapi.GameConfigGlobal 0, // 8: webapi.ASDbConfig.Tag:type_name -> webapi.TagCode - 132, // 9: webapi.ASDbConfig.DbConfigs:type_name -> webapi.PlatformDbConfig - 128, // 10: webapi.ASUpdatePlatform.Platforms:type_name -> webapi.Platform + 135, // 9: webapi.ASDbConfig.DbConfigs:type_name -> webapi.PlatformDbConfig + 131, // 10: webapi.ASUpdatePlatform.Platforms:type_name -> webapi.Platform 0, // 11: webapi.SAUpdatePlatform.Tag:type_name -> webapi.TagCode - 131, // 12: webapi.ASUpdateGameConfigGlobal.GameStatus:type_name -> webapi.GameConfigGlobal + 134, // 12: webapi.ASUpdateGameConfigGlobal.GameStatus:type_name -> webapi.GameConfigGlobal 0, // 13: webapi.SAUpdateGameConfigGlobal.Tag:type_name -> webapi.TagCode - 129, // 14: webapi.ASUpdateGameConfig.Config:type_name -> webapi.PlatformGameConfig + 132, // 14: webapi.ASUpdateGameConfig.Config:type_name -> webapi.PlatformGameConfig 0, // 15: webapi.SAUpdateGameConfig.Tag:type_name -> webapi.TagCode - 130, // 16: webapi.ASUpdateGameConfigGroup.GameConfigGroup:type_name -> webapi.GameConfigGroup + 133, // 16: webapi.ASUpdateGameConfigGroup.GameConfigGroup:type_name -> webapi.GameConfigGroup 0, // 17: webapi.SAUpdateGameConfigGroup.Tag:type_name -> webapi.TagCode 0, // 18: webapi.SAAddCoinById.Tag:type_name -> webapi.TagCode 0, // 19: webapi.SAResetGamePool.Tag:type_name -> webapi.TagCode - 133, // 20: webapi.ASUpdateGamePool.CoinPoolSetting:type_name -> webapi.CoinPoolSetting + 136, // 20: webapi.ASUpdateGamePool.CoinPoolSetting:type_name -> webapi.CoinPoolSetting 0, // 21: webapi.SAUpdateGamePool.Tag:type_name -> webapi.TagCode 0, // 22: webapi.SAQueryGamePoolByGameId.Tag:type_name -> webapi.TagCode - 133, // 23: webapi.SAQueryGamePoolByGameId.CoinPoolSetting:type_name -> webapi.CoinPoolSetting - 133, // 24: webapi.CoinPoolStatesInfo.CoinPoolSetting:type_name -> webapi.CoinPoolSetting + 136, // 23: webapi.SAQueryGamePoolByGameId.CoinPoolSetting:type_name -> webapi.CoinPoolSetting + 136, // 24: webapi.CoinPoolStatesInfo.CoinPoolSetting:type_name -> webapi.CoinPoolSetting 0, // 25: webapi.SAQueryAllGamePool.Tag:type_name -> webapi.TagCode 26, // 26: webapi.SAQueryAllGamePool.CoinPoolStatesInfo:type_name -> webapi.CoinPoolStatesInfo 0, // 27: webapi.SAListRoom.Tag:type_name -> webapi.TagCode - 134, // 28: webapi.SAListRoom.RoomInfo:type_name -> webapi.RoomInfo + 137, // 28: webapi.SAListRoom.RoomInfo:type_name -> webapi.RoomInfo 0, // 29: webapi.SAGetRoom.Tag:type_name -> webapi.TagCode - 134, // 30: webapi.SAGetRoom.RoomInfo:type_name -> webapi.RoomInfo + 137, // 30: webapi.SAGetRoom.RoomInfo:type_name -> webapi.RoomInfo 0, // 31: webapi.SADestroyRoom.Tag:type_name -> webapi.TagCode - 135, // 32: webapi.ASSinglePlayerAdjust.PlayerSingleAdjust:type_name -> webapi.PlayerSingleAdjust + 138, // 32: webapi.ASSinglePlayerAdjust.PlayerSingleAdjust:type_name -> webapi.PlayerSingleAdjust 0, // 33: webapi.SASinglePlayerAdjust.Tag:type_name -> webapi.TagCode - 135, // 34: webapi.SASinglePlayerAdjust.PlayerSingleAdjust:type_name -> webapi.PlayerSingleAdjust + 138, // 34: webapi.SASinglePlayerAdjust.PlayerSingleAdjust:type_name -> webapi.PlayerSingleAdjust 0, // 35: webapi.SAGetPlayerData.Tag:type_name -> webapi.TagCode - 136, // 36: webapi.SAGetPlayerData.PlayerData:type_name -> webapi.PlayerData + 139, // 36: webapi.SAGetPlayerData.PlayerData:type_name -> webapi.PlayerData 0, // 37: webapi.SAMorePlayerData.Tag:type_name -> webapi.TagCode - 136, // 38: webapi.SAMorePlayerData.PlayerData:type_name -> webapi.PlayerData + 139, // 38: webapi.SAMorePlayerData.PlayerData:type_name -> webapi.PlayerData 0, // 39: webapi.SAKickPlayer.Tag:type_name -> webapi.TagCode 42, // 40: webapi.ASUpdatePlayerElement.PlayerEleArgs:type_name -> webapi.PlayerEleArgs 0, // 41: webapi.SAUpdatePlayerElement.Tag:type_name -> webapi.TagCode 0, // 42: webapi.SAWhiteBlackControl.Tag:type_name -> webapi.TagCode 0, // 43: webapi.SAQueryHorseRaceLampList.Tag:type_name -> webapi.TagCode - 137, // 44: webapi.SAQueryHorseRaceLampList.HorseRaceLamp:type_name -> webapi.HorseRaceLamp + 140, // 44: webapi.SAQueryHorseRaceLampList.HorseRaceLamp:type_name -> webapi.HorseRaceLamp 0, // 45: webapi.SACreateHorseRaceLamp.Tag:type_name -> webapi.TagCode 0, // 46: webapi.SAGetHorseRaceLampById.Tag:type_name -> webapi.TagCode - 137, // 47: webapi.SAGetHorseRaceLampById.HorseRaceLamp:type_name -> webapi.HorseRaceLamp - 137, // 48: webapi.ASEditHorseRaceLamp.HorseRaceLamp:type_name -> webapi.HorseRaceLamp + 140, // 47: webapi.SAGetHorseRaceLampById.HorseRaceLamp:type_name -> webapi.HorseRaceLamp + 140, // 48: webapi.ASEditHorseRaceLamp.HorseRaceLamp:type_name -> webapi.HorseRaceLamp 0, // 49: webapi.SAEditHorseRaceLamp.Tag:type_name -> webapi.TagCode 0, // 50: webapi.SARemoveHorseRaceLampById.Tag:type_name -> webapi.TagCode 0, // 51: webapi.SABlackBySnId.Tag:type_name -> webapi.TagCode 0, // 52: webapi.SACreateShortMessage.Tag:type_name -> webapi.TagCode 0, // 53: webapi.SAQueryShortMessageList.Tag:type_name -> webapi.TagCode - 138, // 54: webapi.SAQueryShortMessageList.MessageInfo:type_name -> webapi.MessageInfo + 141, // 54: webapi.SAQueryShortMessageList.MessageInfo:type_name -> webapi.MessageInfo 0, // 55: webapi.SADeleteShortMessage.Tag:type_name -> webapi.TagCode 0, // 56: webapi.SAQueryOnlineReportList.Tag:type_name -> webapi.TagCode - 136, // 57: webapi.SAQueryOnlineReportList.PlayerData:type_name -> webapi.PlayerData + 139, // 57: webapi.SAQueryOnlineReportList.PlayerData:type_name -> webapi.PlayerData 0, // 58: webapi.SASrvCtrlClose.Tag:type_name -> webapi.TagCode 0, // 59: webapi.SASrvCtrlNotice.Tag:type_name -> webapi.TagCode 0, // 60: webapi.SASrvCtrlStartScript.Tag:type_name -> webapi.TagCode 0, // 61: webapi.SAListServerStates.Tag:type_name -> webapi.TagCode - 139, // 62: webapi.SAListServerStates.ServerInfo:type_name -> webapi.ServerInfo + 142, // 62: webapi.SAListServerStates.ServerInfo:type_name -> webapi.ServerInfo 0, // 63: webapi.SAServerStateSwitch.Tag:type_name -> webapi.TagCode 0, // 64: webapi.SAResetEtcdData.Tag:type_name -> webapi.TagCode 0, // 65: webapi.SAOnlineReportTotal.Tag:type_name -> webapi.TagCode - 140, // 66: webapi.SAOnlineReportTotal.OnlineReport:type_name -> webapi.OnlineReport + 143, // 66: webapi.SAOnlineReportTotal.OnlineReport:type_name -> webapi.OnlineReport 0, // 67: webapi.SAAddCoinByIdAndPT.Tag:type_name -> webapi.TagCode - 141, // 68: webapi.JybInfoAward.ItemId:type_name -> webapi.ItemInfo + 144, // 68: webapi.JybInfoAward.ItemId:type_name -> webapi.ItemInfo 83, // 69: webapi.ASCreateJYB.Award:type_name -> webapi.JybInfoAward 0, // 70: webapi.SACreateJYB.Tag:type_name -> webapi.TagCode 0, // 71: webapi.SAUpdateJYB.Tag:type_name -> webapi.TagCode @@ -9847,9 +10057,9 @@ var file_webapi_proto_depIdxs = []int32{ 94, // 77: webapi.SAGetExchangeOrder.OrderList:type_name -> webapi.ExchangeOrderInfo 0, // 78: webapi.SAUpExchangeStatus.Tag:type_name -> webapi.TagCode 0, // 79: webapi.SAGetExchangeShop.Tag:type_name -> webapi.TagCode - 142, // 80: webapi.SAGetExchangeShop.List:type_name -> webapi.ExchangeShop + 145, // 80: webapi.SAGetExchangeShop.List:type_name -> webapi.ExchangeShop 0, // 81: webapi.SAThdUpdatePlayerCoin.Tag:type_name -> webapi.TagCode - 141, // 82: webapi.SACreateOrder.ItemInfo:type_name -> webapi.ItemInfo + 144, // 82: webapi.SACreateOrder.ItemInfo:type_name -> webapi.ItemInfo 0, // 83: webapi.SACallbackPayment.Tag:type_name -> webapi.TagCode 0, // 84: webapi.SAResource.Tag:type_name -> webapi.TagCode 0, // 85: webapi.SASendSms.Tag:type_name -> webapi.TagCode @@ -9858,13 +10068,15 @@ var file_webapi_proto_depIdxs = []int32{ 0, // 88: webapi.SAGetImgVerify.Tag:type_name -> webapi.TagCode 0, // 89: webapi.SAPlayerDelete.Tag:type_name -> webapi.TagCode 0, // 90: webapi.SAPlayerInviteLink.Tag:type_name -> webapi.TagCode - 141, // 91: webapi.ASAddItemById.ItemInfo:type_name -> webapi.ItemInfo + 144, // 91: webapi.ASAddItemById.ItemInfo:type_name -> webapi.ItemInfo 0, // 92: webapi.SAAddItemById.Tag:type_name -> webapi.TagCode - 93, // [93:93] is the sub-list for method output_type - 93, // [93:93] is the sub-list for method input_type - 93, // [93:93] is the sub-list for extension type_name - 93, // [93:93] is the sub-list for extension extendee - 0, // [0:93] is the sub-list for field type_name + 130, // 93: webapi.SASMSConfig.Info:type_name -> webapi.SMSInfo + 0, // 94: webapi.SASMSConfig.Tag:type_name -> webapi.TagCode + 95, // [95:95] is the sub-list for method output_type + 95, // [95:95] is the sub-list for method input_type + 95, // [95:95] is the sub-list for extension type_name + 95, // [95:95] is the sub-list for extension extendee + 0, // [0:95] is the sub-list for field type_name } func init() { file_webapi_proto_init() } @@ -11398,6 +11610,42 @@ func file_webapi_proto_init() { return nil } } + file_webapi_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ASSMSConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_webapi_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SASMSConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_webapi_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SMSInfo); 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{ @@ -11405,7 +11653,7 @@ func file_webapi_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_webapi_proto_rawDesc, NumEnums: 1, - NumMessages: 127, + NumMessages: 130, NumExtensions: 0, NumServices: 0, }, diff --git a/protocol/webapi/webapi.proto b/protocol/webapi/webapi.proto index b4221f2..2dad83d 100644 --- a/protocol/webapi/webapi.proto +++ b/protocol/webapi/webapi.proto @@ -923,3 +923,19 @@ message SAAddItemById{ TagCode Tag = 1; //错误码 string Msg = 2; //错误信息(选填) } +//获取运营商配置[/get_SMSConfig] +message ASSMSConfig{ + string Platform = 1; // 平台id + int32 SnId = 2; // 玩家id +} +message SASMSConfig{ + string Platform = 1; // 平台id + int32 SnId = 2; // 玩家id + repeated SMSInfo Info = 3; + TagCode Tag = 4; //错误码 + string Msg = 5; //错误信息(选填) +} +message SMSInfo{ + int32 Id = 1; + string SmsName = 2; +} diff --git a/xlsx/DB_GameItem.xlsx b/xlsx/DB_GameItem.xlsx index 6dc82a04bc6953d423bfda7f7c46e94174014f6c..a95651b8c8f2a5e40c3fc88b2fea071fb7325454 100644 GIT binary patch delta 14674 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�E*juDP!bU5^dOfW=&U=`NDP44xr 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

m0E25UMD?`B2?a#AjKRSaDR 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 Z@n@@3j)xyw=0J$E(#J+b(7ylH{{!V8iu(Wn diff --git a/xlsx/DB_PetSkill.xlsx b/xlsx/DB_PetSkill.xlsx index 10fa4775d79803d8c2fbf3a980fb919b31a27ca7..b842985b17b4a37480c01b2debac225c73baf757 100644 GIT binary patch delta 6773 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 delta 8048 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 F{2v$)by5HT diff --git a/xlsx/DB_PigBank_Diamond.xlsx b/xlsx/DB_PigBank_Diamond.xlsx index dec1e346485b6201106849963de86944c91850d1..9d17b20942128391e2aea516828bc9b244194dd6 100644 GIT binary patch delta 5150 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 be_18)C=La*O!&wnM!|_Wp;&>ee+mBs+X|Q% delta 5191 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